; Install-Script for Luminus 1.0

(complete 0)

(set @default-dest
	(askdir
		(prompt "In which directory would you like Luminus installed?\n(A directory called 'Luminus' will be created there.)")
		(help @askdir-help)
		(default @default-dest)
	)
)

(set @default-dest
	(tackon @default-dest "Luminus")
)

(set maindir @default-dest)

; determine cpu type
(set cpu (database "cpu"))

(set defcpu
	(if (OR (= cpu "68000") (= cpu "68010"))
		(set defcpu 0)
		(if (= cpu "68020")
			(set defcpu 1)
			(if (= cpu "68030")
				(set defcpu 2)
				(if (OR (= cpu "68040") (= cpu "68060"))
					(set defcpu 3)
				)
			)
		)
	)
)

(set luminver
	(askchoice
		(prompt "Which executable type of Luminus and LuminusPrefs would you like installed?")
		(help @askchoice-help)
		(choices "68000" "68020" "68030" "68040")
		(default defcpu)
	)
)

(set lprefsdir
	(askdir
		(prompt "In which directory would you like LuminusPrefs installed?")
		(help @askdir-help)
		(default maindir)
		(newpath)
	)
)

(set guidedir
	(askdir
		(prompt "In which directory would you like Luminus' AmigaGuide documentation?")
		(help @askdir-help)
		(default maindir)
		(newpath)
	)
)

; ask about icon types (MagicWB, normal, etc)
(set icontype
	(askchoice
		(prompt "Which style of icons would you like installed?")
		(help @askchoice-help)
		(choices "MagicWB" "Normal")
		(default 0)
	)
)

(set langs 0)

(set libdir
	(askdir
		(prompt "In which directory would you like Luminus' support libraries?")
		(help @askdir-help)
		(default "LIBS:")
		(newpath)
	)
)

(set putfonts
	(askbool
		(prompt "Do you wish to install the accompanying fonts?")
		(help @askbool-help)
		(default 1)
	)
)

(if	(= putfonts 1)
	(set fontdir
		(askdir
			(prompt "In which directory would you like Luminus' fonts?")
			(help @askdir-help)
			(default "FONTS:")
			(newpath)
		)
	)
)

; ***********************
; Main Luminus executable
; ***********************

(makedir @default-dest
	(infos)
)

(select luminver
	; 68000 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/Luminus000")
		(dest maindir)
		(newname "Luminus")
		(infos)
	)

	; 68020 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/Luminus020")
		(dest maindir)
		(newname "Luminus")
		(infos)
	)

	; 68030 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/Luminus030")
		(dest maindir)
		(newname "Luminus")
		(infos)
	)

	; 68040 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/Luminus040")
		(dest maindir)
		(newname "Luminus")
		(infos)
	)
)

(select icontype
	(copyfiles
		(help @copyfiles-help)
		(source "Icons/LuminusMWB.info")
		(dest maindir)
		(newname "Luminus.info")
	)

	(copyfiles
		(help @copyfiles-help)
		(source "Icons/LuminusNormal.info")
		(dest maindir)
		(newname "Luminus.info")
	)
)

(complete 30)

; ***********************
; LuminusPrefs executable
; ***********************

(select luminver
	; 68000 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/LuminusPrefs000")
		(dest lprefsdir)
		(newname "LuminusPrefs")
		(infos)
	)

	; 68020 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/LuminusPrefs020")
		(dest lprefsdir)
		(newname "LuminusPrefs")
		(infos)
	)

	; 68030 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/LuminusPrefs030")
		(dest lprefsdir)
		(newname "LuminusPrefs")
		(infos)
	)

	; 68040 version
	(copyfiles
		(help @copyfiles-help)
		(source "Bin/LuminusPrefs040")
		(dest lprefsdir)
		(newname "LuminusPrefs")
		(infos)
	)
)

(select icontype
	(copyfiles
		(help @copyfiles-help)
		(source "Icons/LuminusPrefsMWB.info")
		(dest lprefsdir)
		(newname "LuminusPrefs.info")
	)

	(copyfiles
		(help @copyfiles-help)
		(source "Icons/LuminusPrefsNormal.info")
		(dest lprefsdir)
		(newname "LuminusPrefs.info")
	)
)

(complete 50)

; ********
; Catalogs
; ********

(copyfiles
	(help @copyfiles-help)
	(source "Catalogs")
	(dest (tackon maindir "Catalogs"))
	(all)
	(infos)
	(optional "nofail" "force")
)

(complete 60)

; *************
; Support files
; *************

(copyfiles
	(help @copyfiles-help)
	(source "Support")
	(dest (tackon maindir "Support"))
	(all)
	(infos)
	(optional "nofail" "force")
)

(complete 65)

; ************************
; AmigaGuide documentation
; ************************

(copyfiles
	(help @copyfiles-help)
	(source "Docs")
	(dest guidedir)
	(choices "Luminus.guide" "LuminusPrefs.guide")
	(infos)
	(optional "nofail")
)

; set HELPFILE tooltype on Luminus/LuminusPrefs
; (tooltype
;	(dest (tackon maindir "Luminus"))
;	(settooltype "HELPFILE" (tackon guidedir "Luminus.guide"))
; )
; (tooltype
;	(dest (tackon maindir "LuminusPrefs.guide"))
;	(settooltype "HELPFILE" (tackon guidedir "LuminusPrefs.guide"))
; )

; .guide file uses AmigaGuide instead of MultiView for OS <= V38
(set ver (/ (getversion) 65536))

(if (> ver 38)
	(
		(tooltype
			(dest (tackon guidedir "Luminus.guide"))
			(setdefaulttool "MultiView")
		)
		(tooltype
			(dest (tackon guidedir "LuminusPrefs.guide"))
			(setdefaulttool "MultiView")
		)
	)

	(
		(tooltype
			(dest (tackon guidedir "Luminus.guide"))
			(setdefaulttool "AmigaGuide")
		)
		(tooltype
			(dest (tackon guidedir "LuminusPrefs.guide"))
			(setdefaulttool "AmigaGuide")
		)
	)
)

(complete 70)

; *****************
; Support libraries
; *****************

(copylib
	(prompt "Installing Luminus' support libraries...\ngtlayout.library")
	(help @copylib-help)
	(source "Libs/gtlayout.library")
	(dest libdir)
	(optional "nofail")
	(confirm)
)

(complete 80)

; *****
; Fonts
; *****

(if	(= putfonts 1)
	(copyfiles
		(help @copyfiles-help)
		(source "Fonts")
		(dest fontdir)
		(all)
		(optional "nofail" "force")
		(infos)
		(fonts)
	)
)

(complete 95)

(run "c:avail flush")
(run "c:avail flush")

(complete 100)

(exit)

