home *** CD-ROM | disk | FTP | other *** search
- ; $VER: AView.install 1.41 (10.11.97)
- ; Install script for AView (Workbench 2.0 or higher)
- ;
- (COMPLETE 0)
- ;(USER 2)
- (SET #ApplicationName "AView")
- (SET #ApplicationDir "sys:tools")
- (SET #ApplicationDir1 "sys:utilities")
- (SET #ApplicationDir2 "work:tools")
- (SET #ApplicationDir3 "tools:")
- (SET #ApplicationDir4 "work:utilities")
- (SET #ArchiveDir "/")
- (SET #Language -1)
- (SET #Documents -1)
- (SET #ApplicationKeyfile (CAT #ApplicationName ".key"))
-
- ;=============================================================================
- ; German strings
-
- (IF (= @language "deutsch")
- (
- (SET default_lang 2)
-
- (SET #bad-kick "Sie benötigen Workbench 2.0 oder größer")
- (SET #bad-installer
- (CAT "Achtung! Es ist eine alte Version des Programmes 'Installer' "
- "auf Ihrem Amiga!\n\nDie Installation benötigt mindestens Installer 42.9.\n\n"
- "Bitte überprüfen Sie Ihre Konfiguration!\n"
- ))
-
- (SET #App-InstallMsg
- (CAT "\n%s Installationsskript.\n\n"
- "Dieses Skript installiert oder deinstalliert\n"
- "%s auf Ihrem Amiga.\n\n"
- "Lesen Sie die Anleitungsdatei für weitere Informationen\n"
- " über den Vertrieb von %s.\n\n"
- "%s © 1995-97 Guido Mersmann\n"
- "Alle Rechte reserviert."
- ))
- (SET #App-MainMode "Wählen Sie den gewüschten Vorgang!")
-
- (SET #App-Where
- (CAT "Wo möchten Sie %s installieren ?\n"
- "(Ein Verzeichnis wird angelegt)"
- ))
-
- (SET #App-Update
- (CAT "\nEin %s-Verzeichnis existiert im ausgewählen"
- " Verzeichnis.\n\n Wenn Sie fortfahren,"
- " bestätigen Sie, daß Sie die alte %s-Installation"
- " mit der neuesten Version überschreiben wollen.\n\n"
- "Verschiedene %s-Dateien (z.B überflüssige Dateien) werden falls nötig überschrieben!"
- ))
-
- (SET #App-Main "Welche Version von %s möchten Sie installieren?")
- (SET #App-Main-help
- (CAT "Die OS2.0+ Version läuft unter allen Systemen ab OS2.0."
- " Die OS2.1+ Version hat den Nutzen, daß sie weniger Resourcen"
- " benutzt, wenn sich %s im Hintergrund befindet. Dazu MUß"
- " die Locale.library eingebunden sein. Für die OS3.0+ gilt das selbe"
- " wie für die OS2.1 Verison. Es werden OS3.0+ Routinen benutzt, die"
- " weiteren Speicher sparen."
- ))
-
- (SET #App-Language "Welche Sprachen sollen installiert werden ?")
-
- (SET #App-Language-help
- (CAT "\nDer Amiga kann in vielen verschiedenen Sprachen"
- " arbeiten. Um Plattenkapazität zu sparen können Sie"
- " nur die Sprachen anwählen, die sie benötigen"
- " Haken Sie also einfach die Sprachen ab, die Sie"
- " Ihrem System zugänglich machen wollen."
- @askoptions-help
- ))
-
- (SET #App-Docs "Welche Anleitungs- und Informationsdateien wollen Sie installieren ?")
-
- (SET #Startup-DefIcons (CAT "\nWollen Sie AVDeficons in die user-startup "
- "eintragen?\n\nAVDeficons ist ein kleines Tool, "
- "das es Ihnen erlaubt Piktogramme für Dateien "
- "zu definieren, die kein eigenes Piktogramm haben. "
- "Sie können für jeden Dateityp, den AView kennt, "
- "ein eigenes Piktogramm zuweisen und vieles mehr!"))
-
- (SET #startup-prompt "\n\nJetzt werden für %s folgende Eintragungen in die S:User-Startup gemacht:\n\n%s")
-
- (SET #App-Exit "\n\n%s installiert!!\n\nSie finden %s im Verzeichnis \"%s\"")
- ;------- DEINSTALL STRINGS
- (SET #App-DeinstallWhere "Wo liegt %s auf Ihrer Platte ?\n")
- (SET #App-Install "%s Installieren")
- (SET #App-DeInstall "%s Deinstallieren")
- (SET #bad-DeInstall "Es gibt keine %s Installation an der angegeben Position")
- (SET #StartupRemove-prompt "\n\nDie zu %s gehörenden Einträge in der User-startup werden gelöscht!")))
- (SET #Deinstall-Done "\n%s ist jetzt deinstalliert!")
- ;=============================================================================
- ; English strings
-
- (IF (<> @language "deutsch")
- (
- (SET default_lang 4)
-
- (SET #bad-kick "You must have at least Workbench 2.0+")
- (SET #bad-installer
- (CAT "You have an old version of the program 'Installer' "
- "on your Amiga!\n\nThe installation procedure needs at least Installer 42.9.\n\n"
- "Please check your configuration!\n"
- ))
-
- (SET #App-InstallMsg
- (CAT "\n\n%s Installation Script.\n\n"
- "This script installs %s on your Amiga.\n\n"
- "Read the guide file for more information\n"
- " on the distribution of %s.\n\n"
- "%s © 1995-97 Guido Mersmann\n"
- "All rights reserved."
- ))
- (SET #App-MainMode "Please choose mode:")
-
- (SET #App-Where
- (CAT "Where would you like to install %s ?\n"
- "(A drawer will be created)"
- ))
-
- (SET #App-Update
- (CAT "\n\nA %s drawer does already exist in the selected "
- " directory.\n\n By selecting \"Proceed\", you"
- " indicate that you want to update the %s"
- " installation with the most recent version.\n\n"
- "Several %s specific files will be overwritten!"
- ))
-
- (SET #App-Main "Which %s version should be installed ?")
- (SET #App-Main-help
- (CAT "The OS2.0+ version should only be used on Systems with OS2."
- " The OS2.1+ and the OS3.0+ version need less Memory. Locale is required!"
- " Special OS3.0+ functions are used to save more memory."
- ))
-
- (SET #App-Language "Which languages should be installed ?")
- (SET #App-Language-help
- (CAT "\nThe Amiga can be operated in many different"
- " languages."
- "To reduce the amount of space consumed by the"
- " language files, you can select to have only the"
- " files of specific languages copied.\n\n"
- "Simply check the boxes of the languages you wish"
- " to have available on your system.\n\n"
- @askoptions-help
- ))
-
- (SET #App-Docs "Which Amiga-guide files should be installed ?")
-
- (SET #Startup-DefIcons (CAT "\nDo you want to install AVDeficons?\n\n"
- "AVDeficons is a little programm that allows to "
- "specify icons for each AView file type."))
-
- (SET #startup-prompt "\n\nSome lines need to be added to S:User-Startup for %s\n\n%s")
-
- (SET #App-Exit "\n\n%s installed !!\n\n%s can be found in your \"%s\" drawer (or partiton).")
- ;--------- DEINSTALLATION STRINGS
- (SET #App-DeInstallWhere "Where is the location of %s ?\n")
- (SET #App-Install "Install")
- (SET #App-DeInstall "Deinstall")
- (SET #bad-DeInstall "There is no %s installation at the specified position!")
- (SET #StartupRemove-prompt "\nRemove %s lines within your user-startup?")
- (SET #Deinstall-Done "\n%s is now deinstalled.")
- ;---------
- ))
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_Requirements
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_Requirements
- ; Workbench 37 or better required
- (IF (< (/ (getversion) 65536) 37)
- (
- (abort #bad-kick)
- )
- )
- ; Installer 42.9 or better required
- (if (< @installer-version 2752521)
- (
- (abort #bad-installer)
- )
- ) ;if
- ) ;PROCDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_DeInstall
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_DeInstall #InstallerMode
-
- (SET #Dummy (ASKCHOICE
- (PROMPT #App-MainMode)
- (HELP @askchoice-help)
- (CHOICES
- (#App-Install #ApplicationName)
- (#App-Deinstall #ApplicationName)
- )
- ;(DEFAULT #Documents)
- )
- )
- ) ;PROCDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; GetApplicationDir
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_GetApplicationDir
- (SET #Dummy #ApplicationDir)
- (if (= (exists (TACKON #ApplicationDir1 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir1))
- (if (= (exists (TACKON #ApplicationDir2 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir2))
- (if (= (exists (TACKON #ApplicationDir3 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir3))
- (if (= (exists (TACKON #ApplicationDir4 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir4))
-
- (SET #ApplicationDir
- (TACKON
- (ASKDIR
- (PROMPT (#App-Where #ApplicationName))
- (HELP @askdir-help)
- (default #Dummy)
- )
- #ApplicationName
- )
- )
- (SET @default-dest #ApplicationDir)
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; GetDeinstallDir
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_GetDeInstallDir
- (SET #Dummy #ApplicationDir)
- (if (= (exists (TACKON #ApplicationDir1 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir1))
- (if (= (exists (TACKON #ApplicationDir2 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir2))
- (if (= (exists (TACKON #ApplicationDir3 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir3))
- (if (= (exists (TACKON #ApplicationDir4 #ApplicationName) (NOREQ)) 2) (SET #Dummy #ApplicationDir4))
-
- (SET #ApplicationDir
- (ASKDIR
- (PROMPT (#App-DeInstallWhere #ApplicationName))
- (HELP @askdir-help)
- (default #Dummy)
- )
- )
- (SET #Dummy (EXISTS (TACKON #Applicationdir #ApplicationName)))
-
- (Select #Dummy
- (abort (#bad-DeInstall #ApplicationName))
- (SET #Applicationdir (TACKON #Applicationdir "/"))
- (SET #Applicationdir (TACKON #Applicationdir #ApplicationName))
- ) ;Select
- (SET @default-dest #ApplicationDir)
-
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Ask for Catalogs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskCatalogs #Language
-
- (SET #Dummy (ASKOPTIONS
- (PROMPT #App-Language)
- (HELP #App-Language-help)
- (CHOICES
- "English"
- "Deutsch"
- "Français")
- (DEFAULT #Language)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy Selected Catalogs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyCatalogs #Language
- (SET n 0)
- (SET #DestinationRoot (TACKON #ApplicationDir "Catalogs"))
- (SET #SourceRoot (TACKON #ArchiveDir "Catalogs"))
- (MAKEDIR #DestinationRoot)
-
- (while (< n 3)
- (SET #Dummy (SELECT n "english" "deutsch" "français"))
- (
- (IF (IN #Language n)
- (
- (MAKEDIR (TACKON #DestinationRoot #Dummy))
- (COPYFILES
- (SOURCE (TACKON #SourceRoot #Dummy))
- (DEST (TACKON #DestinationRoot #Dummy))
- (HELP @copyfiles-help)
- (ALL)
- )
- )
- )
- )
- (SET n (+ n 1))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Ask for docs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskDocs #Documents
- (SET #Dummy (ASKOPTIONS
- (PROMPT #App-Docs)
- (HELP @askoptions-help)
- (CHOICES
- "english"
- "deutsch"
- )
- (DEFAULT #Documents)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy docs
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyDocs #Documents
- (SET n 0)
- (SET #DestinationRoot (TACKON #ApplicationDir "Docs"))
- (SET #SourceRoot (TACKON #ArchiveDir "Docs"))
- (MAKEDIR #DestinationRoot)
-
- (while (< n 2)
- (SET #Dummy (SELECT n
- "english"
- "deutsch"
- )
- )
- (
- (IF (IN #Documents n)
- (
- (MAKEDIR (TACKON #DestinationRoot #Dummy))
- (COPYFILES
- (SOURCE (TACKON #SourceRoot #Dummy))
- (DEST (TACKON #DestinationRoot #Dummy))
- (HELP @copyfiles-help)
- (INFOS)
- (ALL)
- )
- )
- )
- )
- (SET n (+ n 1))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy_Dir (Dir)
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyDir #Dummy
-
- (SET #DestinationRoot (TACKON #ApplicationDir #Dummy))
- (SET #SourceRoot (TACKON #ArchiveDir #Dummy))
- (MAKEDIR #DestinationRoot)
-
- (COPYFILES
- (SOURCE #SourceRoot)
- (DEST #DestinationRoot)
- (HELP @copyfiles-help)
- (OPTIONAL <force>)
- (ALL)
- (INFOS)
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; Copy_File (Name)
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyFile #Dummy
-
- (if (<> (exists (TACKON #ArchiveDir #Dummy) (noreq)) 0)
- (
- (COPYFILES
- (SOURCE (TACKON #ArchiveDir #Dummy))
- (DEST #ApplicationDir)
- (HELP @copyfiles-help)
- (OPTIONAL <force>)
- (ALL)
- (INFOS)
- )
- )
- ) ;If
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_Update
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_Update
- (if (= (exists #ApplicationDir) 2)
- (message (#App-Update #ApplicationName #ApplicationName #ApplicationName))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_AskBinary
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskBinary
- (set #Dummy (/ (getversion) 65536))
-
- (if (= #Dummy 37) (set #Binary 0))
- (if (= #Dummy 38) (set #Binary 1))
- (if (>= #Dummy 39) (set #Binary 2))
-
- (set #Binary (askchoice
- (prompt (#App-Main #ApplicationName))
- (help (#App-Main-help #ApplicationName))
- (choices
- "OS2.0+"
- "OS2.1+"
- "OS3.0+"
- )
- (default #Binary)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_CopyBinary
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyBinary #Dummy
-
- (set #BinaryName (SELECT #Binary #Dummy (CAT "Bin/" #Dummy "_OS21") (CAT "Bin/" #Dummy "_OS30")))
- (copyfiles
- (source (tackon #ArchiveDir #BinaryName) (infos))
- (dest #ApplicationDir)
- (newname #Dummy)
- (help @copyfiles-help)
- (optional <force>)
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_KeyFile
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_KeyFile
-
- (SET #Dummy (tackon (tackon #ArchiveDir "Keyfile") #ApplicationKeyfile))
-
- (if (<> (exists #Dummy (noreq)) 0) ((P_CopyDir "KeyFile"))
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_CopyArchiveIcon
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_CopyArchiveIcon
- (COPYFILES
- (SOURCE (CAT (CAT (TACKON #ArchiveDir "/") #ApplicationName) ".info"))
- (DEST (TACKON #ApplicationDir "/"))
- (HELP @copyfiles-help)
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; P_AskBool
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (PROCEDURE P_AskBool #dummy
- (SET #dummy (ASKBOOL (prompt #dummy)
- (help @askbool-help)
- (default 1)
- )
- )
- ) ;PROCEDURE
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- ; MAIN
- ;----------------------------------------------------------------------------
- ;----------------------------------------------------------------------------
- (P_Requirements)
- (message (#App-installmsg #ApplicationName #ApplicationName #ApplicationName #ApplicationName))
- (SET #InstallerMode (P_DeInstall))
- (welcome)
- ;-----------------------------------------------
- (IF (= #InstallerMode "0")
- (
- ;-----------------------------------------------
- (SET #ApplicationDir (P_GetApplicationDir))
-
- (COMPLETE 1)
- (P_Update)
- (SET #Binary (P_AskBinary))
- (COMPLETE 2)
- (SET #Language (P_AskCatalogs #Language))
- (COMPLETE 3)
- (SET #Documents (P_AskDocs #Documents))
- (COMPLETE 4)
-
- (SET #AVDeficons (P_AskBool #startup-deficons))
-
- ;***** Delete old Data and Prefs
- (MAKEDIR #ApplicationDir)
- (MAKEDIR (TACKON #ApplicationDir "Prefs"))
- (MAKEDIR (TACKON #ApplicationDir "Deficons"))
- (MAKEDIR (TACKON #ApplicationDir "DefIcons/Drawer"))
- (MAKEDIR (TACKON #ApplicationDir "DefIcons/Disk"))
- (MAKEDIR (TACKON #ApplicationDir "DefIcons/File"))
-
- (COMPLETE 10)
- (P_CopyBinary #ApplicationName)
- (COMPLETE 20)
- (P_CopyBinary "AViewPrefs")
- (COMPLETE 30)
- (P_CopyCatalogs #Language)
- (COMPLETE 40)
- (P_CopyDocs #Documents)
- (COMPLETE 60)
- (P_CopyDir "Data")
- (P_CopyDir "libs")
- (P_Keyfile)
- (COMPLETE 70)
- (P_CopyFile "AVDefIcons")
- (P_CopyArchiveIcon)
- (P_CopyFile "AViewPrefs.info")
- (P_CopyFile "Docs.info")
- (P_CopyFile "Warning!!!")
- (P_CopyFile "Warnung!!!")
- (COMPLETE 80)
-
- ;----- User-Startup
- ((SET #dummy (cat "Path add Path " #ApplicationDir))
- (IF (= #AVDeficons 1)
- ((SET #dummy (CAT #dummy "\nAVDeficons")))
- )
- )
- (STARTUP #ApplicationName
- (HELP @startup-help)
- (PROMPT (#startup-prompt #ApplicationName #dummy))
- (COMMAND #dummy)
- )
- ;-----
- (DELETE (TACKON #ApplicationDir "Data.info"))
- (DELETE (TACKON #ApplicationDir "Libs.info"))
- (run "avail Flush")
- (COMPLETE 100)
- (message (#App-exit #ApplicationName #ApplicationName #ApplicationDir))
- (exit (QUIET))
- ;-----------------------------------------------
- )) ;IF #InstallerMode = 0
- ;----------- Deinstallation -------------------
- (IF (= #InstallerMode "1") (
-
- (SET #ApplicationDir (P_GetDeInstallDir))
-
- (SET #dummy (cat "Path REMOVE Path " #ApplicationDir))
- (run #dummy)
- (COMPLETE 30)
-
- (STARTUP #ApplicationName
- (HELP @startup-help)
- (PROMPT (#startupRemove-prompt #ApplicationName))
- )
- (COMPLETE 80)
-
- (DELETE #ApplicationDir (optional FORCE) (ALL))
- (DELETE (Cat #ApplicationDir ".info"))
- (COMPLETE 100)
-
- (Message (#Deinstall-Done #ApplicationName))
- (exit (QUIET))
-
- ;-----------------------------------------------
- )) ;IF #InstallerMode = 1
- ;-----------------------------------------------
-
-