Metropoli BBS
VIEWER: install MODE: TEXT (LATIN1)
; $VER: FileX install script 2.0 (24.5.94)

; language dependent definitions

(if (= @language "deutsch")
	(
		(set deflang 16)
		(set txt_badkick "Kickstart 37.175 (OS 2.04) wird unbedingt benötigt!")
		(set txt_askdir (cat "In welchem Verzeichnis möchten Sie " @app-name " installieren?"))
		(set txt_askarexxdir (cat "In welchem Verzeichnis möchten Sie die ARexxbeispielscripte installieren?"))
		(set txt_dirhelp
			(cat
				 "Wählen sie das Verzeichnis, in dem " @app-name " mit allen"
				 " notwendigen Dateien und Unterverzeichnissen installiert"
				 " werden soll."
			)
		)
		(set txt_arexxdirhelp
			(cat
				 "Wählen sie das Verzeichnis, in dem die ARexxbeispiele installiert werden sollen."
				 " Normallerweise ist dies `Rexx:'."
			)
		)
		(set txt_language "Welche Sprachen möchen Sie installieren?")
		(set txt_langhelp
			(cat
				 "Die Dokumentation zu " @app-name " steht in deutscher und"
				 " englischer Sprache zu Ihrer Verfügung und sie können nun"
				 " aussuchen, welche Sprache(n) installiert werden sollen.\n\n"
				 "Sofern sie über OS 2.1 (oder besser) verfügen, werden dabei"
				 " auch noch die dazugehörenden Katalogdateien kopiert, damit"
				 " auch die Bedienelemente entsprechend beschriftet werden."
			)
		)
		(set txt_Dutch "Niederländisch")
		(set txt_English "Englisch")
		(set txt_Finnish "Finnisch")
		(set txt_French "Französisch")
		(set txt_German "Deutsch")
		(set txt_Norwegian "Norwegisch")
		(set txt_Swedish "Schwedisch")
		(set txt_which "Welche CPU steckt in ihrem Amiga?")
		(set txt_68000cpu "68000 oder jede andere CPU")
		(set txt_68020cpu "68020 oder besser")
		(set txt_cpuhelp
			(cat
				 "Von " @app-name " gibt es eine Version, die auf sämtlichen"
				 " CPU-Versionen läuft, sowie eine weitere, die ausschließlich"
				 " mit 68020 CPU (oder besser) läuft. Sofern Ihr Rechner über"
				 " eine derartige CPU verfügt, installieren sie bitte die"
				 " 68020-Version, da sie schneller und kleiner ist."
			)
		)
		(set txt_whichicons "Welche Icons möchten Sie installieren?")
		(set txt_magicicons "MagicWB Icons")
		(set txt_standardicons "Standard Icons")
	)
	(
		(set deflang 2)
		(set txt_badkick "Kickstart 37.175 (OS 2.04) required!")
		(set txt_askdir (cat "In what directory do you want " @app-name " to be installed?"))
		(set txt_askarexxdir (cat "In what directory do you want the arexx example scripts to be installed?"))
		(set txt_dirhelp
			(cat
				 "Select the directory where " @app-name " and all requried"
				 " files and subdirectories shall be located."
			)
		)
		(set txt_arexxdirhelp
			(cat
				 "Select the directory where the arexx example script should be"
				 " installed. Normally it's `rexx:'."
			)
		)
		(set txt_language "Which languages do you want to install?")
		(set txt_langhelp
			(cat
				 "The documentation for " @app-name " is available in English"
				 " and in German, and you may now select wich language(s) you"
				 " want to install.\n\nIf you're using OS 2.1 (or better), the"
				 " appropriate catalog files will be copied aswell to label all"
				 " gadgets in the desired language."
			)
		)
		(set txt_Dutch "Dutch")
		(set txt_English "English")
		(set txt_Finnish "Finnish")
		(set txt_French "French")
		(set txt_German "German")
		(set txt_Norwegian "Norwegian")
		(set txt_Swedish "Swedish")
		(set txt_which "What CPU is inside your Amiga?")
		(set txt_68000cpu "68000 or any other CPU")
		(set txt_68020cpu "68020 or better")
		(set txt_cpuhelp
			(cat
				 "There are two versions of " @app-name ". One of them runs on"
				 " all CPU models found in Amiga computers, and one was optimized"
				 " for 68020 CPU's (or better). If your Amiga has such a CPU, use"
				 " the 68020 version, because it is both faster and smaller."
			)
		)
		(set txt_whichicons "Which icons do you want to install?")
		(set txt_magicicons "MagicWB icons")
		(set txt_standardicons "Standard icons")
	)
)

(if (< (/ (getversion "intuition.library" (resident)) 65536) 37)
	(
		(message txt_badkick)
		(exit)
	)
)

; get the destination directory

(set filexdir
	(askdir
		(prompt txt_askdir)
		(help txt_dirhelp)
		(newpath)
		(default "Sys:FileX")
	)
)

(set docdir (tackon filexdir "Docs"))
(if (NOT (exists docdir))
	(makedir docdir (infos))
)

; ask which version to install and copy executable

(set defcpu 0)
(if (>= (database "cpu") "68020")
	(set defcpu 1)
)

(set cpu
	(askchoice
		(prompt txt_which)
		(help txt_cpuhelp)
		(default defcpu)
		(choices
			txt_68000cpu
			txt_68020cpu
		)
	)
)

(set cpupat (select cpu "/FileX" "/FileX.020"))
(copyfiles
	(newname "FileX")
	(source cpupat)
	(dest filexdir)
	(infos)
)
(set filexprogram (tackon filexdir cpupat))

; ask which icons to install

(set icon
	(askchoice
		(prompt txt_whichicons)
		(help @askchoice-help)
		(choices
			txt_standardicons
			txt_magicicons
		)
	)
)

; copy the main icon

(if icon
	(copyfiles
		(source "/MagicWBIcons/filex.info")
		(dest filexdir)
		(newname "FileX.info")
	)
)


; ask which languages to install

(set lang
	(askoptions
		(help txt_langhelp)
		(prompt txt_language)
		(default deflang)
		(choices
			txt_Dutch
			txt_English
			txt_Finnish
			txt_French
			txt_German
			txt_Norwegian
			txt_Swedish
		)
	)
)

(set localized (> (/ (getversion "locale.library" (resident)) 65536) 37))
(if localized
	(
		(set catdir (tackon filexdir "Catalogs"))
		(if (NOT (exists catdir))
			(makedir catdir)
		)
	)
)

(set n 0)
(while (set language (select n "Nederlands" "English" "Suomi" "Français" "Deutsch" "Norsk" "Svenska" ""))
	(
		(if (IN lang n)
			(
				(copyfiles
					(source "/Docs")
					(dest docdir)
					(pattern language)
					(infos)
				)
				(if (<> n 1)
					(if localized
						(copyfiles
							(source "/Catalogs")
							(dest catdir)
							(pattern language)
						)
					)
				)
			)
		)
		(set n (+ 1 n))
	)
)

(if (AND (NOT(IN lang 1)) (NOT(IN lang 4)))
	(copyfiles
		(source "/Docs")
		(dest docdir)
		(pattern "English")
		(infos)
	)
)

; copy the documentation icons

(if icon
	(
	(copyfiles
		(source "/MagicWBIcons/filex_tool.info")
		(dest filexdir)
		(newname "FileX_ToolManagerIcon.info")
	)
	(if (exists (tackon docdir "Deutsch") (noreq))
		(
			(copyfiles
				(source "/MagicWBIcons/drawer.info")
				(dest docdir)
				(newname "Deutsch.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.doc.info")
				(dest docdir)
				(newname "Deutsch/FileX.dok.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.doc.info")
				(dest docdir)
				(newname "Deutsch/FileXARexx.dok.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.guide.info")
				(dest docdir)
				(newname "Deutsch/FileX.guide.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.guide.info")
				(dest docdir)
				(newname "Deutsch/FileXARexx.guide.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.reg.info")
				(dest docdir)
				(newname "Deutsch/FileX.reg.info")
			)
		)
	)
	(if (exists (tackon docdir "English") (noreq))
		(
			(copyfiles
				(source "/MagicWBIcons/drawer.info")
				(dest docdir)
				(newname "English.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.doc.info")
				(dest docdir)
				(newname "English/FileX.doc.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.doc.info")
				(dest docdir)
				(newname "English/FileXARexx.doc.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.guide.info")
				(dest docdir)
				(newname "English/FileX.guide.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.guide.info")
				(dest docdir)
				(newname "English/FileXARexx.guide.info")
			)
			(copyfiles
				(source "/MagicWBIcons/FileX.reg.info")
				(dest docdir)
				(newname "English/FileX.reg.info")
			)
		)
	)
	)
)


; copy catalog archiv

(if localized
	(copyfiles
		(source "/Catalogs")
		(dest catdir)
		(pattern "FileXCats.lha")
	)
)

; get the arexx script directory

(set arexxdir
	(askdir
		(prompt txt_askarexxdir)
		(newpath)
		(help txt_arexxdirhelp)
		(default "rexx:")
	)
)

; copy the arexx scripts

(copyfiles
	(source "/ARexx")
	(dest arexxdir)
	(pattern "#?.filex")
)

(set @default-dest filexdir)

; end of script
[ RETURN TO DIRECTORY ]