home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / Amiga / Workbench / Patches / Scalos.lha / Scalos / Install.Scalos next >
Text File  |  1998-04-15  |  13KB  |  642 lines

  1. ; Scalos Installation Script (c)1997 fOX! (17.09.1997)
  2.  
  3. (set languages-default 1)
  4.  
  5. ;WICHTIG !!!!!!!!!!!!!!!!!!!
  6. ;APPNAME=Scalos
  7. ;im InstallIcon
  8.  
  9.  
  10. ;===[ ENGLISH ]==============================================================
  11.  
  12. (set language-default 1)
  13.  
  14. (set guides-default 1)
  15.  
  16. (set #bad-kick "You must be using Kickstart 3.0+ to install Scalos")
  17.  
  18. (set #bad-cpu "You require at least a 68020 or higher processor to run Scalos")
  19.  
  20. (set #bad-mui "Requires MUI 3.6+")
  21.  
  22. (set #install-start
  23.     (cat
  24.         "\n\nWelcome to Scalos Installation\n\n"
  25.         "Done by fOX!/ALiENDESiGN\n\n"
  26.     )
  27. )
  28. (set #install-exit
  29.     (cat
  30.         "Thank you for installing Scalos ..."
  31.     )
  32. )
  33.  
  34. (set #where-scalos "Where would you like to install Scalos? (no Scalos directory will be created!)")
  35.  
  36. (set #where-scalos-help
  37.     (cat
  38.         "Scalos will be installed directly into the"
  39.         " desired directory. An assign Scalos: is made"
  40.         " right after the creation of the directory"
  41.     )
  42. )
  43.  
  44. (set #where-scalosprefs "Where is the place for the preferences editors?")
  45.  
  46. (set #where-scalosprefs-help
  47.     (cat
  48.         "This is the destination directory of all Scalos preferences"
  49.         " editors!\n\n Normaly ALL Scalos preferences editors are in Scalos:Prefs !"
  50.     )
  51. )
  52.  
  53. (set #languages-select    "Which languages should be installed?")
  54.  
  55. (set #languages-select-help
  56.     (cat
  57.         "Please select your favourite language that should be"
  58.         " copied to your Locale: directory?"
  59.     )
  60. )
  61.  
  62. (set #guides-select    "Which guides should be installed?")
  63.  
  64. (set #guides-select-help
  65.     (cat
  66.         "Please select your favourite language that should be"
  67.         " copied to the Scalos home directory?"
  68.     )
  69. )
  70.  
  71. (set #moduletype-select "Which Moduletype (see help) should be installed?")
  72.  
  73. (set #moduletype-select-help
  74.     (cat
  75.         "The Moduletype is the kind of userinterface that"
  76.         " you'll see when you for example delete files..."
  77.     )
  78. )
  79.  
  80. (set #plugin-select "Do you want to install some useful tools and plugins for Scalos")
  81.  
  82. (set #plugin-select-help
  83.     (cat
  84.         "One plugin for example might be useful for you if you want"
  85.         " a sorted cleanup of the icons..."
  86.     )
  87. )
  88.  
  89. (set #autostart-select "Do you want to install Scalos as Workbench replacement?")
  90.  
  91. (set #autostart-select-help
  92.     (cat
  93.         "If you select YES this installscript will rename the current"
  94.         " LoadWB to LoadWB.orig and install a tiny replacement to load"
  95.         " Scalos intead of the original Workbench"
  96.     )
  97. )
  98.  
  99. (set #startup-scalos "Scalos: assign is about add to you user-startup")
  100.  
  101. (set #startup-scalos-help
  102.     (cat
  103.         "An Assign Scalos: will be added to your user-startup"
  104.     )
  105. )
  106.  
  107. (set #copy-scalos "Copying Scalos (Mainprogram)...")
  108.  
  109. (set #copy-scalosprefs "Copying Scalos Preferences...")
  110.  
  111. (set #copy-libs1 "Copying Library: iconobject.library ...")
  112. (set #copy-libs2 "Copying Library: mcpgfx.library ...")
  113. (set #copy-libs3 "Copying Library: preferences.library ...")
  114. (set #copy-libs7 "Copying Library: newicon.library ...")
  115.  
  116. (set #copy-libs4 "Copying Datatype: amigaiconobject.datatype ...")
  117. (set #copy-libs5 "Copying Datatype: iconobject.datatype ...")
  118. (set #copy-libs6 "Copying Datatype: newiconobject.datatype ...")
  119.  
  120. (set #copy-muilib "Copying MCPFrame.mcc ...")
  121.  
  122. (set #copy-modules "Copying selected modules...")
  123.  
  124. (set #copy-classes "Copying required datatypes (Classes)...")
  125.  
  126. (set #copy-datatypes "Copying required datatypes (Devs)...")
  127.  
  128. (set #copy-catalog "Copying desired translations...")
  129.  
  130. (set #copy-presets "Copying Presets...")
  131.  
  132. (set #copy-plugins "Copying Plugins...")
  133.  
  134. (set #copy-tools "Copying Tools...")
  135.  
  136. (set #copy-guides "Copying Guides...")
  137.  
  138. (set #copy-loadwb "Copying LoadWB replacement...")
  139.  
  140. (set #rename-loadwborg "Renaming of original LoadWB...")
  141.  
  142. (set #rename-loadwbscalos "Renaming/Installing Scalos-LoadWB...")
  143.  
  144. (set #register-thank
  145.     (cat
  146.         "Thank you for registering Scalos\n\n"
  147.         "I appreciate your support!\n\n"
  148.         "Keep on supporting aMIGa!"
  149.     )
  150. )
  151.  
  152. (set #mypleasure "My Pleasure!")
  153.  
  154. (set #nomui
  155.     (cat
  156.         "The Install-Script couldn't find a installed MUI-Version!\n\n"
  157.         "MUI 3.6 or higher is required to run Scalos(Prefs)\n\n"
  158.         "Would you like to continue the installation?"
  159.     )
  160. )
  161.  
  162. (set #nomui-help
  163.     (cat
  164.         "MUI is an enhanced userinterface! You can get a"
  165.         " Shareware version via Aminet!"
  166.     )
  167. )
  168.  
  169. (set #makedir-scalos "Creating Scalos-Destination...")
  170.  
  171. (set #makedir-scalos "Creating Prefs-Destination...")
  172.  
  173.  
  174. ;===[ GERMAN ]==============================================================
  175. (if (= @language "deutsch")
  176.     (
  177.     (set languages-default 2)
  178.     )
  179. )
  180. (if (= @language "deutsch")
  181.     (
  182.     (set guides-default 2)
  183.     )
  184. )
  185. ;============================== PROGRAM-START================================
  186.  
  187. (set @default-dest "")
  188.  
  189. ;Check Kickstart (>= v3.0) Version.
  190.  
  191. (if (< (/ (getversion) 65536) 39)
  192.     (abort #bad-kick)
  193. )
  194. (set processor (database "cpu"))
  195. (if (< processor "68020")
  196.     (abort #bad-cpu)
  197. )
  198.  
  199. ;(set muilib-path 0)
  200. ;(if (exists "MUI:Libs/muimaster.library" (NOREQ))
  201. ;    (set muilib-path "MUI:Libs/muimaster.library")
  202. ;    (if (exists "Libs:muimaster.library")
  203. ;        (set muilib-path "Libs:muimaster.library")
  204. ;        (if    (NOT
  205. ;                (askbool
  206. ;                    (prompt #nomui)
  207. ;                    (help   #nomui-help)
  208. ;                )
  209. ;            )
  210. ;            (abort #bad-mui)
  211. ;        )
  212. ;    )
  213. ;)
  214.  
  215. ;(if muilib-path
  216. ;    (if (< (/ (getversion "Libs:muimaster.library") 65536) 17)
  217. ;        (abort #bad-mui)
  218. ;    )
  219. ;)
  220.  
  221. (message #install-start)
  222. (welcome)
  223.  
  224. (complete 0)
  225.  
  226. ;===[ select Scalos Destination ]============================================
  227.  
  228. (if (exists "Scalos:" (NOREQ))
  229.  (
  230.      (set firstinstall 0)
  231.      (set scalos-dest "Scalos:")
  232.  )
  233.  (    (set firstinstall 1)
  234.      (set scalos-dest
  235.         (askdir
  236.             (prompt    #where-scalos)
  237.             (help    #where-scalos-help "\n\n" @askdir-help)
  238.             (default "SYS:Scalos")
  239.             (newpath)
  240.         )
  241.     )
  242.     (if (not (exists scalos-dest))
  243.         (makedir scalos-dest
  244.             (prompt #makedir-scalos)
  245.             (help    @makedir-help)
  246.         )
  247.     )
  248.     (makeassign "Scalos" scalos-dest)
  249.  )
  250. )
  251.  
  252.  
  253. (set scalosprefs-dest
  254.     (askdir
  255.         (prompt    #where-scalosprefs)
  256.         (help    #where-scalosprefs-help "\n\n" @askdir-help)
  257.         (default "Scalos:Prefs")
  258.         (newpath)
  259.     )
  260. )
  261.  
  262. (set languages
  263.     (askoptions
  264.         (prompt    #languages-select)
  265.         (help    #languages-select-help "\n\n" @askoptions-help)
  266.         (choices
  267.             "English (built in)"
  268.             "Deutsch"
  269.             "Franτais"
  270.             "├e╙tina"
  271.             "Dansk"
  272.         )
  273.         (default languages-default)
  274.     )
  275. )
  276.  
  277. (set guides
  278.     (askoptions
  279.         (prompt    #guides-select)
  280.         (help    #guides-select-help "\n\n" @askoptions-help)
  281.         (choices
  282.             "English"
  283.             "Deutsch"
  284.             "Italian"
  285.         )
  286.         (default guides-default)
  287.     )
  288. )
  289.  
  290. ;Preparation for MUI-Library
  291. (if (not (exists "MUI:" (noreq)))
  292.     (set mui-dest
  293.         (askdir
  294.             (prompt    #where-muilib)
  295.             (help    #where-muilib-help "\n\n" @askdir-help)
  296.             (default "Libs:MUI")
  297.         )
  298.     )
  299.     (set mui-dest "MUI:Libs/MUI")
  300. )
  301.  
  302. (if (not
  303.     (askchoice
  304.         (prompt    #moduletype-select)
  305.         (help    #moduletype-select-help "\n\n" @askoptions-help)
  306.         (choices
  307.             "MUI"
  308.             "Class Act"
  309.         )
  310.         (default 0)
  311.     )
  312.      )
  313.     (set module-path "Modules_MUI")
  314.     (set module-path "Modules_CA")
  315.  
  316. )
  317.  
  318. (set plugin
  319.     (askbool
  320.         (prompt #plugin-select)
  321.         (help #plugin-select-help)
  322.         (default 1)
  323.     )
  324. )
  325.  
  326. (set autostart 0)
  327. (if (AND (OR (exists "S:Scalos.key" (NOREQ)) (exists "S/Scalos.key" (NOREQ))) (NOT (exists "C:LoadWB.orig" (NOREQ))))
  328.     (set autostart
  329.         (askbool
  330.             (prompt #autostart-select)
  331.             (help #autostart-select-help)
  332.             (default 1)
  333.         )
  334.     )
  335. )
  336.  
  337.  
  338. ;===[ Real Installation ]====================================================
  339.  
  340. ;Create Scalos: Assign
  341. (if firstinstall
  342.  (
  343.     (makedir scalos-dest
  344.         (prompt    #makedir-scalos)
  345.         (help    #makedir-scalos-help "\n\n" @makedir-help)
  346.         (infos)
  347.     )
  348.     (startup @app-name
  349.         (prompt    #startup-scalos)
  350.         (help    #startup-scalos-help "\n\n" @startup-help)
  351.         (command 'Assign Scalos: \"' scalos-dest '\"\n')
  352.     )
  353.  )
  354. )
  355.  
  356. (complete 5)
  357.  
  358. ;Copy Scalos-Mainfile
  359. (copyfiles
  360.     (prompt    #copy-scalos)
  361.     (source    "Scalos")
  362.     (dest    scalos-dest)
  363.     (files)
  364.     (infos)
  365. )
  366.  
  367. (complete 10)
  368.  
  369. ;Copy Prefs
  370. (if (not (exists scalosprefs-dest (NOREQ)))
  371.     (
  372.         (makedir scalosprefs-dest
  373.             (prompt #makedir-prefs)
  374.             (help    @makedir-help)
  375.         )
  376.     )
  377. )
  378.  
  379. (copyfiles
  380.     (prompt    #copy-scalosprefs)
  381.     (source    "Prefs/")
  382.     (dest    scalosprefs-dest)
  383.     (infos)
  384.     (all)
  385. )
  386.  
  387. (complete 20)
  388.  
  389. (copylib
  390.     (prompt    #copy-libs1)
  391.     (source    ("Libs/iconobject.library"))
  392.     (dest    "Libs:")
  393.     (help    @copylib-help)
  394.     (confirm)
  395. )
  396.  
  397. (copylib
  398.     (prompt    #copy-libs2)
  399.     (source    ("Libs/mcpgfx.library"))
  400.     (dest    "Libs:")
  401.     (help    @copylib-help)
  402.     (confirm)
  403. )
  404.  
  405. (copylib
  406.     (prompt    #copy-libs3)
  407.     (source    ("Libs/preferences.library"))
  408.     (dest    "Libs:")
  409.     (help    @copylib-help)
  410.     (confirm)
  411. )
  412.  
  413. (copylib
  414.     (prompt    #copy-libs7)
  415.     (source    ("Libs/newicon.library"))
  416.     (dest    "Libs:")
  417.     (help    @copylib-help)
  418.     (confirm)
  419. )
  420.  
  421. (complete 30)
  422.  
  423. ;Copy MUI Lib:
  424. (copylib
  425.     (prompt    #copy-muilib)
  426.     (source "Libs/MUI/MCPFrame.mcc")
  427.     (dest    mui-dest)
  428.     (help    @copylib-help)
  429.     (confirm)
  430. )
  431.  
  432. (complete 40)
  433.  
  434. ;Copy Required/Selected Modules
  435. (copyfiles
  436.     (prompt    #copy-modules)
  437.     (source    module-path)
  438.     (dest    (tackon scalos-dest "Modules"))
  439.     (all)
  440. )
  441.  
  442. (complete 50)
  443.  
  444. (copylib
  445.     (prompt    #copy-libs4)
  446.     (source    ("Classes/Datatypes/amigaiconobject.datatype"))
  447.     (dest    "SYS:Classes/Datatypes")
  448.     (help    @copylib-help)
  449.     (confirm)
  450. )
  451.  
  452. (copylib
  453.     (prompt    #copy-libs5)
  454.     (source    ("Classes/Datatypes/iconobject.datatype"))
  455.     (dest    "SYS:Classes/Datatypes")
  456.     (help    @copylib-help)
  457.     (confirm)
  458. )
  459.  
  460. (copylib
  461.     (prompt    #copy-libs6)
  462.     (source    ("Classes/Datatypes/newiconobject.datatype"))
  463.     (dest    "SYS:Classes/Datatypes")
  464.     (help    @copylib-help)
  465.     (confirm)
  466. )
  467.  
  468. (complete 60)
  469.  
  470. ;Copy "Devs/Datatypes/#?" To "Devs:Datatypes"
  471. (copyfiles
  472.     (prompt    #copy-datatypes)
  473.     (source    "Devs/Datatypes")
  474.     (dest    "Devs:Datatypes")
  475.     (infos)
  476.     (all)
  477. )
  478.  
  479. (complete 70)
  480.  
  481. ;Copy of the catalog files (with version check)
  482. (if (= (exists "Locale:") 2)
  483.     (
  484.         (set n 0)
  485.         (while
  486.             (set language
  487.                 (select n
  488.                     "English"
  489.                     "Deutsch"
  490.                     "franτais"
  491.                     "├e╙tina"
  492.                     "Dansk"
  493.                     ""
  494.                 )
  495.             )
  496.             (
  497.                 (if (IN languages n)
  498.                     (if (<> 0 n)   ; No catalog for english strings...
  499.                         (
  500.                             (set catalogs (tackon "Locale/Catalogs" (tackon language "Scalos")))
  501.                             (set destination (tackon "Locale:Catalogs" (tackon language "Scalos")))
  502.                             (makedir destination)
  503. ;-------------------------------------------------------------------------------------------
  504.                             (
  505.                                 (set lala 0)
  506.                                 (while
  507.                                     (set scaloscat
  508.                                         (select lala
  509.                                             "Scalos_Delete.catalog"
  510.                                             "Scalos_ECommand.catalog"
  511.                                             "Scalos_NewDrawer.catalog"
  512.                                             "Scalos_OpenLocation.catalog"
  513.                                             "Scalos_Rename.catalog"
  514.                                             "Scalos_ETrashcan.catalog"
  515.                                             "Scalos.catalog"
  516.                                             "ScalosPattern.catalog"
  517.                                             "ScalosPrefs.catalog"
  518.                                             "ScalosPalette.catalog"
  519.                                             "ScalosMenu.catalog"
  520.                                             ""
  521.                                         )
  522.                                     )
  523.                                     (
  524.                                         (if (exists (tackon catalogs scaloscat)) 
  525.                                             (copylib
  526.                                                 (prompt    #copy-catalog)
  527.                                                 (source    (tackon catalogs scaloscat))
  528.                                                 (dest    destination)
  529.                                                 (help    @copylib-help)
  530.                                                 (confirm)
  531.                                             )
  532.                                         )
  533.                                         (set lala (+ lala 1))
  534.                                     )
  535.                                 )
  536.                             )
  537. ;-----------------------------------------------------------------------------------------------
  538.                         )
  539.                     )
  540.                 )
  541.                 (set n (+ n 1))
  542.             )
  543.         )
  544.     )
  545. )
  546.  
  547. ;Copy of the guide files
  548. (
  549.     (set n 0)
  550.         (while
  551.             (set guide
  552.                 (select n
  553.                     "Scalos_eng.guide"
  554.                     "Scalos_ger.guide"
  555.                     "Scalos_ita.guide"
  556.                     ""
  557.                 )
  558.             )
  559.             (
  560.                 (copyfiles
  561.                 (prompt    #copy-guides)
  562.                 (source    guide)
  563.                 (dest    scalos-dest)
  564.                 (files)
  565.                 (infos)
  566.             )
  567.             (set n (+ n 1))
  568.         )
  569.     )
  570. )
  571.  
  572. (complete 80)
  573.  
  574. ;Copy presets
  575. (copyfiles
  576.     (prompt    #copy-presets)
  577.     (source    "Presets")
  578.     (dest    "SYS:Prefs/Presets")
  579.     (infos)
  580.     (all)
  581. )
  582.  
  583. ;Copy Plugin + Tools
  584. (if plugin
  585.     (
  586.         (copyfiles
  587.             (prompt    #copy-plugins)
  588.             (source    "PlugIns")
  589.             (dest    (tackon scalos-dest "Plugins"))
  590.             (infos)
  591.             (all)
  592.         )
  593.         (copyfiles
  594.             (prompt    #copy-tools)
  595.             (source    "Tools")
  596.             (dest    (tackon scalos-dest "Tools"))
  597.             (infos)
  598.             (all)
  599.         )
  600.     )
  601. )
  602.  
  603. (complete 90)
  604.  
  605. ;Installing LoadWB-Replacement
  606. (if autostart
  607.     (
  608.         (copyfiles
  609.             (prompt #copy-loadwb)
  610.             (source    "LoadWB.Scalos")
  611.             (dest    "C:")
  612.         )
  613.         (if    (rename "C:LoadWB" "C:LoadWB.orig"
  614.                 (prompt #rename-loadwborg)
  615.             )
  616.             (rename "C:LoadWB.scalos" "C:LoadWB"
  617.                 (prompt #rename-loadwbscalos)
  618.             )
  619.         )
  620.     )
  621. )
  622.  
  623. (if (exists "S/Scalos.key" (NOREQ))
  624.     (
  625.         (askbool
  626.             (prompt    #register-thank)
  627.             (help    @askbool-help)
  628.             (choices #mypleasure #mypleasure)
  629.         )
  630.         (copyfiles
  631.             (prompt #copy-scaloskey)
  632.             (source    "S/Scalos.key")
  633.             (dest    "S:")
  634.         )
  635.     )
  636. )
  637.  
  638. (complete 100)
  639.  
  640. (EXIT #install-exit)
  641.                                                                                                                                                                                                                                                                                                                                                
  642.