home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / FileMover / Dopus5 / zam-opus.lha / OPUS55 / INSTALLOPUS < prev    next >
Encoding:
Text File  |  1980-10-06  |  39.9 KB  |  1,522 lines

  1. ; Script to install Directory Opus version 5.5
  2. ;
  3. ; Directory Opus Install Version $VER: Install-Opus 5.5  (28.08.96)
  4. ; COPYRIGHT ©1996 GP SOFTWARE, AUSTRALIA
  5. ; note uses Opus<Alt-Shift>5
  6. ; now installs new catalogs if they are on the disk.
  7.  
  8.  
  9. (onerror
  10.     (makeassign "DOPUSDEST" (safe))    
  11. )
  12.  
  13. (complete 0)
  14.  
  15. ;
  16. ;check user has Dos 2
  17. ;
  18.  
  19. (set #DOSTYPE (/ (getversion) 65536))
  20. (if
  21.     (NOT (>= #DOSTYPE 37))
  22.      (abort "Directory Opus 5 benötigt AmigaDOS 2.04 oder höher."
  23.         " Bevor Sie Opus 5 benutzen können, müssen Sie auf V2.04 oder höher upgraden.")
  24. )
  25.  
  26.  
  27. (set @default-dest "Work:")
  28.  
  29. (set #Dopus_prog "DOpus5:DirectoryOpus")
  30. (set #Loadwb "C:LoadWb")
  31. (set #Loadwb_old "C:LoadWb_old")
  32. (set #Has_loadwb_old 0)
  33. (set #Has_loaddb 0)
  34. (set #Inst_choice 0)
  35. (set #HB_choice 0)
  36. (set #Changed 0)
  37. (set #Inst_core 0)
  38.  
  39. (set #DName1 "Opus5.5")
  40. (set #DName2 "Opus5.5")
  41. (set #Disk1_Name (cat #DName1 ":"))
  42. (set #Disk2_Name (cat #DName2 ":"))
  43. (set #TLArchive    "MWB_DOpus8c.lha")
  44. (set #CatalogFiles "CatFiles.lha")
  45. (set #Is_update 0)
  46.  
  47. (set #DOpus_Dest (getassign "DOpus5" "a"))
  48. (set #O_DOpus_Dest (getassign "DOpus5" "a"))
  49. (set #Go "Weiter")
  50. (set #Skip "Diesen Teil überspringen")
  51.  
  52.  
  53.  
  54. ;
  55. ; Procedure signal
  56. ; in case Opus is re-installed. The notification on the modules
  57. ; directory can cause problems so signal Opus to turn off notifications
  58.  
  59. (procedure signal_opus
  60.  
  61.     (set #Want_disk 1)
  62.     (get_disk)
  63.     (set #Sigs (tackon #Disk1_Name "dopusmsg"))
  64.     (if (exists #Sigs (noreq))
  65.         (run (cat #Sigs " DOPUS.1 \"command set notify off\""))
  66.     )
  67. )
  68.  
  69.  
  70. ;
  71. ; Procedure get_lhex 
  72. ;
  73.  
  74.  
  75. (procedure get_lhex
  76.  
  77.     (if ( = (exists "ram:lhex" (noreq)) 0)
  78.         (
  79.         (set #Want_disk 1)
  80.         (get_disk)
  81.         (working #Title_msg
  82.             "Lese die Installationsdisk für Directory Opus-Dateien.")
  83.         (copyfiles (source (tackon #Disk1_Name "lhex")) (dest "ram:"))
  84.         )
  85.     )
  86. )
  87.  
  88. ;
  89. ; Procedure get_disk 
  90. ; get the correct disk for a program
  91. ;
  92.  
  93. (procedure get_disk
  94.  
  95.     (if (= #Want_disk 1)
  96.         (set #DiskName #DName1)
  97.         (set #DiskName #DName2)
  98.     )
  99.     (askdisk
  100.         (prompt #Title_msg
  101.             "\nBitte legen Sie die CD \""#DiskName"\" ein.")
  102.         (help "Legen Sie die CD ein, um die Installation fortzusetzen.")
  103.         (assigns)
  104.         (dest #DiskName)
  105.     )
  106.     (set #Current_disk #Want_disk)
  107. )
  108.  
  109. ;
  110. ; Procedure install_arexx  ;
  111. ; From Leo Davidson collection.
  112. ;
  113.  
  114. (procedure install_arexx
  115.  
  116.     (set #Title_msg "Installation des ARexx-Archivs.\n\n")
  117.     (get_lhex)
  118.     (if     (askbool (prompt #Title_msg
  119.                 "Wir haben ein Archiv mit ARexx-Skripten und weiteren Daten für Opus von "
  120.                 "verschiedenen Benutzern beigelegt. Die meisten Skripte erfordern eine "
  121.                 "weitere Installation nach Ablauf dieses Skriptes.\n\n"
  122.                 "Wollen Sie die ARexx-Archive installieren?\n")
  123.             (help "Ja, tun Sie's! Die sind großartig!")
  124.         )
  125.         (
  126.         (set #Changed 1)
  127.         (set #Want_disk 2)
  128.         (get_disk)
  129.         (if    (> (+ (database "total-mem")) 1000000)
  130.             (
  131.             (working #Title_msg
  132.                 "Kopiere Dateien.")
  133.             (copyfiles (source (tackon #Disk2_Name "ARexx.lha")) (dest "ram:"))
  134.             (set #SRC "ram:")
  135.             )
  136.             (set #SRC #Disk2_Name)
  137.         )
  138.         (working #Title_msg
  139.             "Dearchiviere und installiere ARexx-Skripte.\n\n"
  140.             "Ein wenig Geduld...\n\n"
  141.             "Das dauert nicht lang.")
  142.             
  143.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"ARexx.lha"))
  144.         (delete "ram:ARexx.lha" (safe))
  145.         (run "c:protect DOPUSDEST:ARexx/#? +s")
  146.  
  147.         (message #Title_msg
  148.             "Die ARexx-Skripte sind installiert. Lesen Sie bitte "
  149.             "den Anfang der Skriptdateien für Informationen über "
  150.             "deren Funktion und die Benutzung.\n\n"
  151.             "Die Skripte sind in \"DOpus5:Arexx\", weitere Zusatzmodule sind in "
  152.             "\"DOpus5:Storage/Modules\", und einige der Zusätze haben AmigaGuides "
  153.             "die in \"DOpus5:Help\" sind. Es befinden sich außerdem einige neue "
  154.             "Piktogramme in \"DOpus5:Icons\".\n"
  155.             "\nZur Aktivierung der Module müssen Sie diese nach \"DOpus5:Modules\" "
  156.             "verschieben und Opus neustarten."
  157.         )
  158.         )
  159.     )
  160. )
  161.  
  162. ;
  163. ; Procedure install_mwbextras ;
  164. ; MWB_DOpus_8_Install 1.0 (11.8.96)
  165. ; Install originally written by Leo Davidson.
  166. ;
  167.  
  168. (procedure install_mwbextras
  169.  
  170.     (set #Title_msg "MWB_DOpus V8.0 Installation.\n\n")
  171.     (get_lhex)
  172.     ;- Introductory message 
  173.  
  174.     (if    (askbool (prompt #Title_msg
  175.                 "Entwickelt von Trevor Morris and Leo Davidson\n\n"
  176.                 "MagicWorkbench Toolbarpiktogramme und Hintergründe "
  177.                 "für Directory Opus 5.5 (und andere Programme).\n\n"
  178.                 "Diese bieten ein hübsches Set von Bildern für "
  179.                 "Werkzeugleiste und Piktogramme, ob mit oder ohne MagicWorkbench."
  180.                 "\n\nWollen Sie diese in Ihrem System installieren?")
  181.             (help "Ja, tun Sie's! Die sind großartig!")
  182.         )
  183.         (
  184.         (set #Changed 1)
  185.         (set #Want_disk 2)
  186.         (get_disk)
  187.         (if    (> (+ (database "total-mem")) 1000000)
  188.             (
  189.             (working #Title_msg
  190.                 "Kopiere Dateien.")
  191.             (copyfiles (source (tackon #Disk2_Name #TLArchive)) (dest "ram:"))
  192.             (set #SRC "ram:")
  193.             )
  194.             (set #SRC #Disk2_Name)
  195.         )
  196.         (working #Title_msg
  197.             "Entpacke das MWB-Archiv.\n\n"
  198.             "Schon mal ans Schachspielen gedacht?....\n\n"
  199.             "Ähh, wäre ein \"Power\"-Amiga nicht klasse!")
  200.         (run (cat "ram:lhex >NIL: <NIL: -qfw=ram: x "(tackon #SRC #TLArchive)))
  201.         (delete (tackon "ram:" #TLArchive) (safe))
  202.  
  203.         (run "cd ram:MWB8")
  204.  
  205.     ;- Set where to do the install to
  206.  
  207.         (set #Target "DOPUSDEST:")
  208.  
  209.     
  210.     ;- Back-up the old Images drawer (if exists) and copy new images
  211.  
  212.         (if (= (exists "DOPUSDEST:Images" (noreq)) 2) 
  213.             (
  214.             (set #Tmp_msg "\n\nIhr altes Verzeichnis \"Images\" kann vor der Installation der neuen Bilder gesichert werden.")
  215.             (set images_exist 1)
  216.             )
  217.             (
  218.             (set #Tmp_msg " ")
  219.             (set images_exist 0)
  220.             )
  221.         )
  222.  
  223.         (if     (askbool (prompt #Title_msg
  224.                     "Die neuen Werkzeugleistenbilder werden"
  225.                     " ins Verzeichnis \"Dopus5:Images\" kopiert."
  226.                     #Tmp_msg)
  227.                 (choices #Go #Skip)
  228.                 (default 1)
  229.                 (help "Dieser Teil installiert alle Werkzeugleistenbilder.")
  230.             )
  231.             ( ; yes 
  232.             (if images_exist
  233.                 (
  234.                 (set #Bkup 1)
  235.                 (set #New_name (cat "Images" #Bkup))
  236.                 (while     (= (exists (cat "DOPUSDEST:" #New_name) (noreq)) 2)
  237.                     (
  238.                     (set #Bkup (+ #Bkup 1))
  239.                     (set #New_name (cat "Images" #Bkup))
  240.                     )
  241.                 )
  242.                 (if     (askbool (prompt #Title_msg
  243.                         "Wollen Sie Ihr aktuelles Verzeichnis"
  244.                         " \"Images\" sichern oder es mit den"
  245.                         " neuen Bildern überschreiben?\n\n"
  246.                         "Ihr altes Verzeichnis würde gesichert als "#New_name".")
  247.                     (choices "Ja - Sichern" "Nein - Überschreiben")
  248.                     (default 1)
  249.                     (help "Im Zweifelsfall wählen Sie Ja.")
  250.                     )
  251.                     (; backup Images
  252.                     (rename (tackon #Target "Images") (tackon #Target #New_name))
  253.                     )
  254.                 )
  255.                 )
  256.             )
  257.  
  258.             (copyfiles
  259.                 (source "ram:MWB8/Images")
  260.                 (dest (tackon #Target "Images"))
  261.                 (all)
  262.                 (optional force)
  263.                 )
  264.             )
  265.         )
  266.  
  267.     ;- Copy the Colours guide
  268.     
  269.         (if    (askbool (prompt #Title_msg
  270.                     "Wir haben auch einige einfache Abkürzungen"
  271.                     " beigepackt, die Ihnen ein schnelles Einstellen der MagicWorkbench-Farben erlauben.\n\n"
  272.                     "Wollen Sie dieses \"Colours\"-Verzeichnis installieren?")
  273.                 (default 1)
  274.                 (help "Dieser Teil installiert das MWB-Farben-Verzeichnis.")
  275.             )
  276.             (copyfiles
  277.                 (source "ram:MWB8/Colors")
  278.                 (dest (tackon #Target "Colors"))
  279.                 (all)
  280.                 (infos)
  281.                 (optional force)
  282.             )
  283.         )
  284.             
  285.     ;- Copy the new icons (for programs, files, etc)
  286.     
  287.         (if    (askbool (prompt #Title_msg
  288.                     "Die alten DOpus5-Dateipiktogramme werden nun ersetzt "
  289.                     "durch MagicWorkbench-Versionen.\n\n"
  290.                     "Wichtig: Für den Fall, daß Sie einige Tooltypes im "
  291.                     "Hauptpiktogramm von DirectoryOpus geändert haben, bleibt dies ungeändert. "
  292.                     "Sie sollten dies manuell installieren, wie es in der Hilfsdatei "
  293.                     "beschrieben ist, die später noch installiert wird.")
  294.                 (choices #Go #Skip)
  295.                 (default 1)
  296.                 (help "Dieser Teil installiert alle Programm- und Dateipiktogramme.")
  297.             )
  298.             (copyfiles 
  299.                 (source "ram:MWB8/DOpus_Icons")
  300.                 (dest #Target)
  301.                 (all)
  302.                 (optional force)
  303.             )
  304.         )
  305.     
  306.     ;- Copy the Help guide
  307.     
  308.         (if    (askbool (prompt #Title_msg
  309.                     "Eine AmigaGuide-Datei über MWB_DOpus 8, inklusive Tips und Tricks "
  310.                     "wird ins Verzeichnis \"DOpus5:Help\" kopiert.")
  311.                 (choices #Go #Skip)
  312.                 (default 1)
  313.                 (help "Dieser Teil installiert die Hilfsdatei.")
  314.             )
  315.             (copyfiles
  316.                 (source "ram:MWB8/Help/MWB_DOpus8_Help.guide")
  317.                 (dest (tackon #Target "Help"))
  318.                 (infos)
  319.                 (optional force)
  320.             )
  321.         )
  322.     
  323.     ;- Copy the fonts 
  324.     
  325.         (if    (askbool (prompt #Title_msg
  326.                     "Einige Zusatzzeichensätze werden ins Verzeichnis \"Fonts:\" kopiert.\n"
  327.                     "Diese sind zur Nutzung von MWB_DOpus nicht zwingend notwendig.\n\n"
  328.                     "Die Zeichensätze sind:\n"
  329.                     "\"P0T-NOoDLE\",\n"
  330.                     "\"P0T-Prop\",\n"
  331.                     "\"PolarSmall\", and,\n"
  332.                     "\"PolarSmall-Prop\".")
  333.                 (choices #Go #Skip)
  334.                 (default 1)
  335.                 (help "Dieser Teil installiert einige Zusatzzeichensätze.")
  336.             )
  337.             (copyfiles
  338.                 (source "ram:MWB8/Fonts")
  339.                 (dest "Fonts:")
  340.                 (all)
  341.                 (optional force)
  342.             )
  343.         )
  344.     
  345.     ;- Copy the backdrops (ask where first) 
  346.     
  347.         (if    (askbool (prompt #Title_msg
  348.                     "Wollen Sie die Hintergrundbilder installieren?\n")
  349.                 (default 1)
  350.                 (help "Dieser Teil installiert einige Hintergrundbilder.")
  351.             )
  352.             (copyfiles
  353.                 (source "ram:MWB8/Backdrops")
  354.                 (dest (askdir (prompt "Wählen Sie für die Hintergründe einen Installationsort.")
  355.                      (help @askdir-help)
  356.                      (default "Sys:Prefs/Presets")
  357.                     )    
  358.                 )
  359.                 (all)
  360.                 (optional force)
  361.             )
  362.         )
  363.     
  364.     ;- Copy the Index files (ask where first) 
  365.     
  366.         (if    (askbool (prompt #Title_msg
  367.                     "Wollen Sie das Index-Bild installieren?\n\n"
  368.                     "Es erleichtert das Auffinden bestimmter Piktogramme"
  369.                     " in dieser Sammlung.\n\n"
  370.                     "Das Bild wird installiert in \"Dopus5:Help\"")
  371.                 (default 1)
  372.                 (help "Dieser Teil installiert das Index-Bild. Tun Sie's!")
  373.             )
  374.             (copyfiles
  375.                 (source "ram:MWB8/Index")
  376.                 (dest (tackon #Target "Help"))
  377.                 (infos)
  378.                 (all)
  379.                 (optional force)
  380.             )
  381.         )
  382.     
  383.     ;- Copy the Disk icons (ask where first)
  384.     
  385.         (if    (askbool (prompt #Title_msg
  386.                 "Wollen Sie einige Diskpiktogramme installieren?\n"
  387.                 " Sie können mit diesen die bestehenden Diskpiktogramme"
  388.                 " ersetzen, wenn Sie dies wünschen.\n\n"
  389.                 "Sie müssen diese Ersetzungen allerdings selbst mit "
  390.                 "IconEdit (von der Workbench) oder MUIReIcon "
  391.                 "(vom Aminet) durchführen.")
  392.             (default 1)
  393.             (help "Dieser Teil installiert einige Diskpiktogramme.\n"
  394.                 "Ihre bestehenden Piktogramme werden nicht ersetzt.")
  395.             )
  396.             (copyfiles
  397.                 (source "ram:MWB8/Disk_Icons")
  398.                 (dest (askdir (prompt "Wo wollen Sie die Diskpiktogramme "
  399.                          "installieren:")
  400.                      (help @askdir-help)
  401.                      (default "sys:prefs/presets")
  402.                     )    
  403.                 )
  404.                 (all)
  405.                 (optional force)
  406.             )
  407.         )
  408.  
  409.  
  410.         (message #Title_msg
  411.             "Installation durchgeführt!\n\n"
  412.             "Lesen Sie in jedem Fall die Hilfsdatei in"
  413.             " \"DOpus5:Help\" für weitere Informationen. Dort erfahren Sie auch,"
  414.             " wie die MagicWorkbench-Farben eingestellt werden usw.")
  415.  
  416.     ; tidy up
  417.  
  418.         (working #Title_msg
  419.             "Räume auf nach der MWB_DOpus V8.0 Installation")
  420.         (run "cd ram:")
  421.         (run "delete ram:MWB8#? all")
  422.         )
  423.     )
  424. )
  425.  
  426.  
  427. ;
  428. ; Procedure install_support  ;
  429. ; add the extra non-program bits
  430. ;
  431.  
  432. (procedure install_support
  433.  
  434.     (set #Title_msg "Directory Opus 5.5 Supportdateien.\n\n")
  435.     (get_lhex)
  436.         
  437.     (if    (<> #Inst_choice 0)
  438.         (if     (askbool (prompt #Title_msg
  439.                     "Wollen Sie die folgenden Schubladen und dazugehörigen Dateien für DOpus 5.5 installieren:-\n"
  440.                     "\nButtons, Environment, Groups\nIcons, Images, Settings\n Storage und WBStartup.\n\n"
  441.                     "Diese Verzeichnisse enthalten Konfigurationsdetails,\n"
  442.                     "und dazugehörige Dateien, die für eine korrekte Funktion von Opus 5.5"
  443.                     " benötigt werden.")
  444.                 (help "Ja, tun Sie's!")
  445.                 (default 1)
  446.             )
  447.             (set #Doit 1)
  448.             (set #Doit 0)
  449.         )
  450.         (; else tell 'em what we are doing.
  451.         (message #Title_msg
  452.             "Diese Sektion installiert die folgenden Schubladen und dazugehörigen Dateien für DOpus 5.5:-\n"
  453.             "\nButtons, Environment, Groups\nIcons, Images, Settings\n Storage, System und WBStartup.\n\n"
  454.             "Diese Verzeichnisse enthalten Konfigurationsdetails,\n"
  455.             "und dazugehörige Dateien, die für eine korrekte Funktion von Opus 5.5"
  456.             " benötigt werden.")
  457.         )
  458.     )
  459.  
  460.     (if    (OR (= #Inst_choice 0) (= #Doit 1))
  461.         (
  462.         (set #Changed 1)
  463.         (set #Want_disk 1)
  464.         (get_disk)
  465.  
  466.         (if    (> (+ (database "total-mem")) 1000000)
  467.             (
  468.             (working #Title_msg
  469.                 "Installiere Supportdateien.")
  470.             (copyfiles (source (tackon #Disk1_Name "SupportA.lha")) (dest "ram:"))
  471.             (copyfiles (source (tackon #Disk1_Name "SupportB.lha")) (dest "ram:"))
  472.             (set #SRC "ram:")
  473.             )
  474.             (set #SRC #Disk1_Name)
  475.         )
  476.         (working #Title_msg
  477.             "Entpacke und installiere die Haupt-Supportkomponenten.\n\n"
  478.              "Dies dauert nicht allzu lang....")
  479.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"SupportA.lha "))
  480.         (delete "ram:SupportA.lha" (safe))
  481.         (run (cat "ram:lhex >NIL: <NIL: -qfw=ram: x "#SRC"SupportB.lha "))
  482.         (delete "ram:SupportB.lha" (safe))
  483.  
  484.         (complete 70)
  485.         
  486.         (if #Is_update ;if update then give choice
  487.              (if    (askbool (prompt #Title_msg
  488.                     "Wollen Sie Ihre alten Konfigurationen für Knöpfe,"
  489.                     " Werkzeugleisten, Menüs, Umgebung und Einstellungen"
  490.                     " mit den neuen Standardeinstellungen überschreiben?\n\n"
  491.                     "Sie können die zu installierenden Teile später wählen, aber Sie müssen"
  492.                     " Ihre Konfiguration eventuell neu einstellen, wenn Sie diese neuen Teile"
  493.                     " installieren. Alternativ können Sie auch die Datei"
  494.                     " SupportB.lha von der Installations-CD später entpacken und die"
  495.                     " spezifischen Teile manuell installieren.")
  496.                     (help "Dies erlaubt Ihnen die Wahl bestimmter Teile Ihres alten"
  497.                         " Opus-Verzeichnisses zu erneuern oder unverändert zu lassen. Wenn Sie unsicher sind, wählen Sie JA.")
  498.                 )
  499.                 (
  500.                 (copyfiles 
  501.                     (prompt #Title_msg
  502.                         "Wählen Sie die zu installierenden Knöpfe/Menüs usw.")
  503.                     (source "ram:SupportB/Buttons")
  504.                     (dest (tackon #DOpus_Dest "Buttons"))
  505.                     (all)
  506.                     (confirm)
  507.                     (help "Wählen Sie die Dateien, die Sie kopieren möchten. Im Zweifelsfall wählen Sie alle an!")
  508.                 )
  509.                 (copyfiles 
  510.                     (prompt #Title_msg
  511.                     "Wählen Sie die zu installierenden Umgebungsdateien.")
  512.                     (source "ram:SupportB/Environment")
  513.                     (dest (tackon #DOpus_Dest "Environment"))
  514.                     (all)
  515.                     (confirm)
  516.                     (help "Wählen Sie die Dateien, die Sie kopieren möchten. Im Zweifelsfall wählen Sie alle an!")
  517.                 )
  518.                 (copyfiles 
  519.                     (prompt #Title_msg
  520.                     "Wählen Sie die zu installierenden Einstellungsdateien.")
  521.                     (source "ram:SupportB/Settings")
  522.                     (dest (tackon #DOpus_Dest "Settings"))
  523.                     (all)
  524.                     (confirm)
  525.                     (help "Wählen Sie die Dateien, die Sie kopieren möchten. Im Zweifelsfall wählen Sie alle an!")
  526.                 )
  527.                 )
  528.             )
  529.             (copyfiles ; if not update just copy to dest
  530.                 (source "ram:SupportB")
  531.                 (dest #DOpus_Dest)
  532.                 (all)
  533.             )    
  534.         )
  535.  
  536.         (run "delete ram:SupportB#? all") 
  537.         (complete 90)
  538.  
  539.         )
  540.     )
  541.  
  542. )
  543.  
  544. ;
  545. ; Procedure get_dir ;
  546. ; get place to install Opus
  547. ;
  548.  
  549. (procedure get_dir
  550.  
  551.     (if #DOpus_Dest ; if we have a valid destination?
  552.         (if    (askbool (prompt #Title_msg
  553.                     "Opus 5 ist in diesem System schon in dem\n"
  554.                     "Verzeichnis \"" #DOpus_Dest"\" installiert."
  555.                     "\n\nWollen Sie diese Version in dem Verzeichnis installieren?")
  556.                 (help "Der Installer hat entdeckt, daß Sie schon eine Kopie von "
  557.                     "Opus 5 installiert haben. Sollte dies falsch sein oder "
  558.                     "Sie wollen das Update woanders installieren, wählen Sie "
  559.                     "NEIN an, ansonsten JA.")
  560.                 (default 1)
  561.             )
  562.             (set #Is_update 1) ; if user wants in same place
  563.             (set #DOpus_Dest    ; if user wants in different place
  564.                 (tackon    (askdir
  565.                     (prompt "Directory Opus 5 wird in seinem eigenen"
  566.                               " Verzeichnis auf der Festplatte installiert.\n"
  567.                               "Wo soll das Verzeichnis 'Opus 5' erzeugt werden?")
  568.                     (help @askdir-help)
  569.                     (default @default-dest)
  570.                     )
  571.                     "Opus5"
  572.                 )
  573.             )
  574.         )
  575.         (set #DOpus_Dest ; else if not an update, get a location for program
  576.             (tackon
  577.                 (askdir
  578.                     (prompt "Directory Opus 5 wird in seinem eigenen"
  579.                               " Verzeichnis auf der Festplatte installiert.\n"
  580.                               "Wo soll das Verzeichnis 'Opus 5' erzeugt werden?")
  581.                     (help @askdir-help)
  582.                     (default @default-dest)
  583.                 )
  584.                 "Opus5"
  585.             )
  586.         )
  587.     )
  588.     
  589.     
  590.     ; make DOpus drawer & icon if not there
  591.     
  592.     (if     (NOT #Is_update)
  593.             (makedir #DOpus_Dest (infos))
  594.     )
  595.     
  596.     ; at this point we have a valid destination, so we tell installer where
  597.     ; the application will end up so the exit page will be correct -- also,
  598.     ; the installation log file (if any) will be copied to the destination
  599.         
  600.     (set @default-dest #DOpus_Dest)
  601.     (makeassign "DOPUSDEST" #DOpus_Dest (safe))
  602. )
  603.  
  604. ;
  605. ; Procedure backup_old  
  606. ; if an update to same place then backup bits
  607. ; Also handle Catalogs
  608. ; Non-English installations should modify this section
  609. ;
  610.  
  611. (procedure backup_old
  612.     
  613.     ; must have had an old 'Dopus5:' installed to get here so warn.
  614.  
  615.     (message #Title_msg
  616.         "********** WARNUNG *************\n\n"
  617.         "Wenn Sie momentan eine ältere Version von Opus 5 laufen haben,"
  618.         " so kann Ihr System instabil werden, wenn"
  619.         " Sie Opusfunktionen ausführen, während Sie diese neue Version"
  620.         " installieren.\n\n"
  621.         "Wir empfehlen Ihnen, daß Sie entweder Opus 5 verlassen, bevor Sie"
  622.         " diese neue Version installieren, oder Ihren Rechner NEU STARTEN"
  623.         " direkt, nachdem die Installation durchgeführt wurde.")
  624.  
  625.     (if #Is_update 
  626.         (
  627.         (if    (askbool (prompt #Title_msg
  628.                     "Sie haben Directory Opus bereits auf Ihrer Festplatte installiert.\n\n"
  629.                     "Wollen Sie die benutzerkonfigurierten Dateien SICHERN?.\n\n"
  630.                     "Dies schließt die Verzeichnisse Buttons, Environment, FileTypes, Icons,"
  631.                     " Images, Settings, Storage, und System ein.")
  632.                 (help "Zu Ihrer eigenen Sicherhei, wählen Sie Ja.")
  633.                 (default 1)
  634.             )
  635.             (
  636.             (set #Bkup 1)
  637.             (set #New_name (cat "OLD" #Bkup))
  638.             (while     (= (exists (cat "DOPUSDEST:" #New_name) (noreq)) 2)
  639.                 (
  640.                 (set #Bkup (+ #Bkup 1))
  641.                 (set #New_name (cat "OLD" #Bkup))
  642.                 )
  643.             )
  644.             
  645.             (set #Whichfiles 
  646.                 (askoptions
  647.                     (prompt "Sichern alter Dateien nach \""#New_name"\"\n"
  648.                         "Wählen Sie bitte die zu sichernden Verzeichnisse:-")
  649.                     
  650.                     (choices
  651.                         "Buttons"    ;0
  652.                         "Environment"    ;1
  653.                         "FileTypes"    ;2
  654.                         "Icons"        ;3
  655.                         "Images"    ;4
  656.                         "Storage"    ;5
  657.                         "Settings"    ;6
  658.                     )
  659.                     (help "Dies erlaubt Ihnen die Wahl bestimmter Teile Ihres alten"
  660.                         " Opus-Verzeichnisses, die gesichert werden sollen. Wenn Sie unsicher sind, wählen Sie alle an.")
  661.                     (default 127)
  662.                 )
  663.             )
  664.  
  665.             (working "Sichere alte Dateien ins neue Verzeichnis \""#New_name"\"")
  666.             (set #New_name (tackon "DOPUSDEST:" #New_name))
  667.             (makedir #New_name)
  668.  
  669.             (if (AND (= (exists "DOPUSDEST:Buttons" (noreq)) 2) (IN #Whichfiles 0))
  670.                 (copyfiles 
  671.                 (source "DOPUSDEST:Buttons")
  672.                 (dest (tackon #New_name "Buttons"))
  673.                 (all)
  674.                 (optional force)
  675.                 )
  676.             )
  677.             (if (AND (= (exists "DOPUSDEST:Environment" (noreq)) 2) (IN #Whichfiles 1))
  678.                 (copyfiles
  679.                 (source "DOPUSDEST:Environment")
  680.                 (dest (tackon #New_name "Environment"))
  681.                 (all)
  682.                 (optional force)
  683.                 )
  684.             )
  685.             (if (AND (= (exists "DOPUSDEST:FileTypes" (noreq)) 2) (IN #Whichfiles 2))
  686.                 (copyfiles
  687.                 (source "DOPUSDEST:FileTypes")
  688.                 (dest (tackon #New_name "FileTypes"))
  689.                 (all)
  690.                 (optional force)
  691.                 )
  692.             )
  693.             (if (AND (= (exists "DOPUSDEST:Icons" (noreq)) 2) (IN #Whichfiles 3))
  694.                 (copyfiles
  695.                 (source "DOPUSDEST:Icons")
  696.                 (dest (tackon #New_name "Icons"))
  697.                 (all)
  698.                 (optional force)
  699.                 )
  700.             )
  701.             (if (AND (= (exists "DOPUSDEST:Images" (noreq)) 2)  (IN #Whichfiles 4))
  702.                 (copyfiles
  703.                 (source "DOPUSDEST:Images")
  704.                 (dest (tackon #New_name "Images"))
  705.                 (all)
  706.                 (optional force)
  707.                 )
  708.             )
  709.             (if (AND (= (exists "DOPUSDEST:Storage" (noreq)) 2)  (IN #Whichfiles 5))
  710.                 (copyfiles
  711.                 (source "DOPUSDEST:Storage")
  712.                 (dest (tackon #New_name "Storage"))
  713.                 (all)
  714.                 (optional force)
  715.                 )
  716.             )
  717.             (if (AND (= (exists "DOPUSDEST:Settings" (noreq)) 2)  (IN #Whichfiles 6))
  718.                 (copyfiles
  719.                 (source "DOPUSDEST:Settings")
  720.                 (dest (tackon #New_name "Settings"))
  721.                 (all)
  722.                 (optional force)
  723.                 )
  724.             )
  725.             )
  726.         )
  727.         ; and for non-english versions?
  728.     
  729.         (if    (= (exists "DOPUSDEST:Catalogs" (noreq)) 2)
  730.             (
  731.             (set #Bkup 1)
  732.             (set #New_name (cat "Catalogs" #Bkup))
  733.             (while     (= (exists (cat "DOPUSDEST:" #New_name) (noreq)) 2)
  734.                 (
  735.                 (set #Bkup (+ #Bkup 1))
  736.                 (set #New_name (cat "Catalogs" #Bkup))
  737.                 )
  738.             )
  739.  
  740.             (if    (askbool (prompt #Title_msg
  741.                         "Ein Verzeichnis \"Catalogs\" wurde entdeckt!"
  742.                         " Opus 5.5 benötigt neue Sprachdateien,"
  743.                         " wenn es nicht in Englisch genutzt werden soll. Diese"
  744.                         " Installation stellt Ihnen neue deutsche Catalog-Dateien"
  745.                         " zur Verfügung. Weitere Catalog-Dateien in anderen Sprachen"
  746.                               " werden im Aminet oder von lokalen Vertreibern"
  747.                               " angeboten werden.\n"
  748.                         "Ihr aktuelles Verzeichnis \"Catalogs\" kann als "
  749.                         "\""#New_name"\" gesichert werden.\n\n"
  750.                         "Wollen Sie die ALTEN Catalog-Dateien sichern?")
  751.                     (default 1)
  752.                     (help "Im Zweifelsfall wählen Sie Ja.")
  753.                 )
  754.                 (
  755.                 (rename "DOPUSDEST:Catalogs" (tackon "DOPUSDEST:" #New_name))
  756.                 (makedir "DOPUSDEST:Catalogs")
  757.                 )
  758.             )
  759.             )
  760.         )
  761.         )
  762.     )
  763. )
  764.     
  765. ;
  766. ; Procedure install_core
  767. ; install the program files and new bits
  768. ; MUST HAVE A VALID DOPUSDEST ;
  769.  
  770. (procedure install_core
  771.  
  772.     (set #Title_msg "Directory Opus 5.5 Kern-Installation.\n\n")
  773.     (get_lhex)
  774.  
  775.     (if #O_DOpus_Dest (backup_old)) ; Is re-install so give save option
  776.     
  777.     (if    (<> #Inst_choice 0)
  778.         (if    (askbool (prompt #Title_msg 
  779.                     "Wollen Sie die Hauptdateien\n"
  780.                     " von Opus 5.5 installieren?")
  781.                 (help "Ja, tun Sie's!")
  782.             )
  783.             (set #Doit 1)
  784.             (set #Doit 0)
  785.         )
  786.     )
  787.  
  788.     (if    (OR (= #Inst_choice 0) (= #Doit 1))
  789.         (
  790.         (set #Changed 1)
  791.         (set #Inst_core 1)
  792.         (set #Want_disk 1)
  793.         (get_disk)
  794.         (if    (> (+ (database "total-mem")) 1000000)
  795.             (
  796.             (working #Title_msg 
  797.                 "Kopiere Dateien.")
  798.             (copyfiles (source (tackon #Disk1_Name "Core.lha")) (dest "ram:"))
  799.             (set #SRC "ram:")
  800.             )
  801.             (set #SRC #Disk1_Name)
  802.         )
  803.         (working #Title_msg
  804.              "Entpacke und installiere die Hauptkomponenten des Programms.\n\n"
  805.              "Dies dauert so circa eine Minute....")
  806.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"Core.lha "))
  807.         (delete "ram:Core.lha" (safe))
  808.  
  809.     ;
  810.     ; install non-english catalogs
  811.     ;
  812.         (if    (exists (tackon #Disk1_Name #CatalogFiles) (noreq))
  813.             (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#Disk1_Name #CatalogFiles))
  814.         )
  815.  
  816.         (complete 50)
  817.     
  818.     ;
  819.     ; tidyup
  820.     ;
  821.     ; make sure update module is re-initialised
  822.  
  823.         (run "c:delete DOPUSDEST:system/update-history FORCE")
  824.  
  825.         (run "c:protect DOPUSDEST:c/DopusRT5 +p")
  826.         (run "c:protect DOPUSDEST:ARexx/#? +s")
  827.     
  828.     
  829.     ;Install the other bits
  830.         
  831.         (copyfiles 
  832.             (source "Opus5.5:InstallOpus")
  833.             (dest #DOpus_Dest)
  834.             (infos)
  835.             (files)
  836.         )
  837.     
  838.         (copyfiles 
  839.             (source "Opus5.5:LiesMich.55")
  840.             (dest #DOpus_Dest)
  841.             (infos)
  842.             (files)
  843.         )
  844.  
  845.     ; just in case use has installed LoadDB in C:, update it
  846.  
  847.         (if (exists "C:LoadDB" (noreq))
  848.             (copyfiles 
  849.                 (source (tackon #DOpus_Dest "C/LoadDB"))
  850.                 (dest "C:")
  851.                 (files)
  852.             )
  853.         )
  854.         )
  855.     )
  856. )
  857.  
  858.  
  859.  
  860. ;
  861. ; Procedure do_startup  ;
  862. ; modify S:User-Startup
  863. ; set the script for user startup
  864.  
  865.  
  866. (procedure do_startup
  867.     
  868.     (if    (= #Inst_core 1)
  869.         (startup "DirectoryOpus 5"
  870.             (prompt    #Title_msg
  871.                 "Die folgenden Anweisungen werden zu Ihrer "
  872.                 "\"S:User-Startup\" hinzugefügt, so daß Ihr System korrekt "
  873.                 "zur Nutzung von Opus konfiguriert ist.\n\n"
  874.                 "ASSIGN DOpus5: \"" #DOpus_Dest "\"\n"
  875.                 "PATH DOpus5:c Add \n")
  876.             (help "Dies fügt Anweisungen in Ihre S:user-startup-Datei ein, "
  877.                 "damit Directory Opus korrekt funktionieren kann")
  878.             (command "ASSIGN DOpus5: \"" #DOpus_Dest "\"\n")
  879.             (command "PATH DOpus5:c Add \n")
  880.         )
  881.     )
  882. )
  883.     
  884. ;
  885. ; Procedure find_startup ;
  886. ; check what they have installed
  887. ;
  888.  
  889. (procedure find_startup
  890.  
  891.     ;check if they have our load_wb installed
  892.  
  893.     (if (exists #Dopus_prog (noreq))
  894.         (
  895.         (set #Vernum (getversion #Dopus_prog))
  896.         (set #Dop_ver (/ #Vernum 65536))
  897.         (set #Dop_rev (- #Vernum (* #Dop_ver 65536) ) )
  898.         )
  899.     )
  900.     
  901.     (set #Has_loaddb 0)
  902.     (if (exists #Loadwb (noreq))
  903.         ( ; yes
  904.         (set #Vernum (getversion #Loadwb))
  905.         (set #Wb_ver (/ #Vernum 65536))
  906.         (set #Wb_rev (- #Vernum (* #Wb_ver 65536) ) )
  907.         (if (>= #Wb_ver 42) ; should be ours
  908.             (set #Has_loaddb 1) ; yes
  909.             (set #Has_loaddb 0) ; no
  910.         )
  911.         )
  912.     )
  913.     
  914.     (if (exists #Loadwb_old (noreq))
  915.         ( ; yes
  916.         (set #Has_loadwb_old 1)
  917.         (set #Vernum (getversion #Loadwb_old))
  918.         (set #Op_ver (/ #Vernum 65536))
  919.         (set #Op_rev (- #Vernum (* #Op_ver 65536) ) )
  920.         )
  921.         (set #Has_loadwb_old 0) ;no
  922.     )
  923. )
  924.  
  925.  
  926. ;
  927. ; Procedure remove_wb  ;
  928. ;
  929.  
  930. (procedure remove_wb
  931.  
  932.     ; does user have loadwb_old or loaddb already installed 
  933.  
  934.     (if (= #Has_loadwb_old 1) ; if loadwb_old exhists
  935.         (copyfiles
  936.             (source "C:LoadWB_old")
  937.             (dest "C:")
  938.             (newname "LoadWB")
  939.         )
  940.     )
  941. )
  942.  
  943. ;
  944. ; Procedure startup_options ;
  945. ;
  946.  
  947. (procedure startup_options
  948.  
  949.     (set #Title_msg "Directory Opus 5 Startoptionen.\n\n")
  950.     (if #DOpus_Dest
  951.         (
  952.         (find_startup)
  953.     
  954.         (if    ( = #Inst_choice 1)
  955.             (if     (askbool (prompt #Title_msg
  956.                         "Wollen Sie die Startoptionen\n"
  957.                         " von Opus 5.5 ändern?")
  958.                     (help "Im Zweifelsfall wählen Sie \"Ja\"")
  959.                 )
  960.                 (set #Doit 1)
  961.                 (set #Doit 0)
  962.             )
  963.         )
  964.  
  965.         (if    (OR (<> #Inst_choice 1) (= #Doit 1))
  966.             (
  967.             (set #Curr_choice 0)
  968.                 
  969.             ;Get the users startup choices
  970.             (set #Mode (askchoice
  971.                 (prompt #Title_msg
  972.                     "Opus 5 kann automatisch beim Booten Ihres Rechners"
  973.                     " gestartet werden. Welchen Start wünschen Sie?")
  974.                 (help    @askchoice-help    )
  975.                 (choices "Opus 5 als Workbenchersatz!" ;0
  976.                          "Opus 5 beim Booten starten"            ;1
  977.                          "Opus 5 verborgen starten"        ;2
  978.                          "Opus 5 beim Booten nicht starten"  ;3
  979.                          "Keine Änderung")                ;4
  980.                 (default #Curr_choice)
  981.                 )
  982.             )
  983.     
  984.             (if (<> #Mode 4) (set #Changed 1))
  985.  
  986.             ; use as wb replacement
  987.             (if (= #Mode 0)
  988.                 (
  989.                 ; does user have loadwb_old or loaddb already installed 
  990.                 (if (= #Has_loadwb_old 0) ; if loadwb_old not exhist
  991.                     (if (= #Has_loaddb 0) ; then is  loadwb actually loaddb
  992.                         (if (exists #Loadwb (noreq)) ; no. Good then does loadwb exhist?
  993.                             (rename "c:LoadWB" "c:LoadWB_old") ; then rename it
  994.                         )
  995.                     )
  996.                 )
  997.     
  998.                 ; then copy our loaddb as loadWB 
  999.                 (copyfiles
  1000.                     (source (tackon #DOpus_Dest "c/LoadDB"))
  1001.                     (dest "C:")
  1002.                     (newname "LoadWB")
  1003.                 )
  1004.                 ) ;else remove the loadDB
  1005.                 (if (AND (<> #Mode 4) (= #Has_loaddb 1)) (remove_wb))
  1006.  
  1007.             )
  1008.         
  1009.             
  1010.  
  1011.                 
  1012.             ; start on boot normal
  1013.             (if (= #Mode 1)
  1014.                 (
  1015.                 (copyfiles
  1016.                     (source (tackon #DOpus_Dest "wbstartup/Opus5_Startup"))
  1017.                     (dest "SYS:WBStartup")
  1018.                     (infos)
  1019.                 )
  1020.         
  1021.                 (tooltype
  1022.                     (dest "SYS:WBStartup/Opus5_Startup")
  1023.                     (settooltype "CX_POPUP" "YES")
  1024.                 )
  1025.                 )
  1026.             )
  1027.         
  1028.         
  1029.             ; start on iconified normal
  1030.             (if (= #Mode 2)
  1031.                 (
  1032.                 (copyfiles
  1033.                     (source (tackon #DOpus_Dest "wbstartup/Opus5_Startup"))
  1034.                     (dest "SYS:WBStartup")
  1035.                     (infos)
  1036.                 )
  1037.         
  1038.                 (tooltype
  1039.                     (dest "SYS:WBStartup/Opus5_Startup")
  1040.                     (settooltype "CX_POPUP" "NO")
  1041.                 )
  1042.                 )
  1043.             )
  1044.             )
  1045.         )
  1046.         )
  1047.         (message #Title_msg
  1048.             "Hoppla, das geht nicht!\nDirectory Opus ist noch nicht installiert!")
  1049.     )
  1050.  
  1051. )
  1052.  
  1053. ; Procedure install_arcdir
  1054. ; Part of Script to install ArcDir.dopus5 1.0.
  1055. ; Developed by Edmund Vermeulen (edmundv@grafix.xs4all.nl).
  1056. ;
  1057.  
  1058. (procedure install_arcdir
  1059.  
  1060.     (set #Title_msg "ARexx ArcDir Installation.\n\n")
  1061.     (if    (askbool (prompt #Title_msg 
  1062.                 "ArcDir wurde entwickelt von Edmund Vermeulen.\n"
  1063.                 "Es erlaubt Ihnen den einfachsten Umgang mit LHA, LZH,"
  1064.                 " und LZX-Dateien mittels Directory Opus 5\n"
  1065.                 "\n WÄRMSTENS EMPFOHLEN -Installieren Sie es!\n\n"
  1066.                 "Wollen Sie das ARexx ArcDir-Archiv in Ihrem"
  1067.                 " Opus 5-Verzeichnis installieren?\n")
  1068.             (help "Ja, tun Sie's! Es ist großartig!")
  1069.         )
  1070.         (
  1071.         (set #Changed 1)
  1072.         (set #Want_disk 2)
  1073.         (get_disk)
  1074.         (if    (> (+ (database "total-mem")) 1000000)
  1075.             (
  1076.             (working #Title_msg 
  1077.                 "Kopiere Dateien.")
  1078.             (copyfiles (source (tackon #Disk2_Name "ArcDir10.lha")) (dest "ram:"))
  1079.             (set #SRC "ram:")
  1080.             )
  1081.             (set #SRC #Disk2_Name)
  1082.         )
  1083.         (working #Title_msg 
  1084.             "Entpacke die Arcdir-Installation.\n\n"
  1085.             "Das wird schneller sein...")
  1086.         (run (cat "ram:lhex >NIL: <NIL: -qfw=ram: x "#SRC"ArcDir10.lha "))
  1087.         (delete "ram:ArcDir10.lha" (safe))
  1088.  
  1089.         (run "cd ram:arcdir")
  1090.  
  1091.     ; delete old stuff
  1092.  
  1093.     
  1094.         (if    (= (getversion "DOPUSDEST:ARexx/LhADir.dopus5") 65536)
  1095.             (message #Title_msg
  1096.                 "Version 1.0 von LhADir.dopus5 entdeckt!\n\n"
  1097.                 "Bitte beachten Sie, daß ArcDir.dopus5 keinerlei Veränderungen "
  1098.                 "an der Werkzeugleiste oder anderen Knöpfen in Opus benötigt.\n\n"
  1099.                 "Sie sollten alle Verweise auf LhADir.dopus5 entfernen. Dies geschieht "
  1100.                 "üblicherweise durch das Kopieren der Standard-Werkzeugleiste über "
  1101.                 "Ihre alte Werkzeugeleiste."
  1102.               )
  1103.         )
  1104.     
  1105.         (if    (= (exists "DOPUSDEST:ARexx/LhADir.dopus5" (noreq)) 1)
  1106.             (if    (askbool (prompt #Title_msg
  1107.                         "LhADir.dopus5 entdeckt.\n\n"
  1108.                         "LhADir wurde durch ArcDir ersetzt und wird nicht mehr "
  1109.                         "benötigt. Sind Sie damit einverstanden, es zu löschen?")
  1110.                     (help "Wählen Sie 'Ja', um LhADir.dopus5 und dazugehörige Dateien "
  1111.                     "aus Ihrem System zu löschen oder 'Nein', um diese dort zu belassen.")
  1112.                 )
  1113.                 ( ;yes
  1114.                 (delete "DOPUSDEST:ARexx/LhADir.dopus5")
  1115.                 (delete "DOPUSDEST:ARexx/LhADir-handler")
  1116.                 (delete "DOPUSDEST:ARexx/NewLhA.dopus5")
  1117.                 (delete "DOPUSDEST:C/LhADirList")
  1118.                 (delete "Locale:Catalogs/nederlands/LhADir.catalog")
  1119.                 (delete "Locale:Catalogs/deutsch/LhADir.catalog")
  1120.                 (delete "Locale:Catalogs/français/LhADir.catalog")
  1121.                 (delete "Locale:Catalogs/norsk/LhADir.catalog")
  1122.                 (delete "DOPUSDEST:Buttons/LhADir Buttons")
  1123.                 (delete "DOPUSDEST:Buttons/toolbar_LhADir")
  1124.                 )
  1125.             )
  1126.         )
  1127.     
  1128.     ; ask questions first, copy files later
  1129.     
  1130.         (set #Storeold
  1131.             (if    (askbool (prompt #Title_msg
  1132.                         "Alte Dateitypen für LHA and LZX werden überschrieben. "
  1133.                         "Wollen Sie eine sichere Kopie von diesen im Verzeichnis "
  1134.                         "'DOpus5:Storage' anlegen?\n\n"
  1135.                         "Im Falle einer Deinstallation werden diese Dateien reinstalliert.")
  1136.                     (help "Wählen Sie 'Ja', um die Dateien 'LHA archive' und 'LZX archive' "
  1137.                         "aus dem Verzeichnis 'DOpus5:Filetypes' ins Verzeichnis 'DOpus5:Storage' "
  1138.                         "zu kopieren. Wählen Sie 'Nein', um die aktuellen (Standard-) Dateitypen für "
  1139.                         "LHA und LZX im Verzeichnis 'Storage' beizubehalten.\n\n"
  1140.                         "Bei einer Deinstallation werden diese Dateitypen aus dem "
  1141.                         "Verzeichnis 'Storage' ins Verzeichnis 'Filetypes' reinstalliert. "
  1142.                         "Sie können eine Deinstallation durch erneuten Aufruf dieses "
  1143.                         "Installationsskriptes durchführen.")
  1144.                 )
  1145.             )
  1146.         )
  1147.         
  1148.         (set #how
  1149.             (+
  1150.                 (askchoice
  1151.                 (prompt #Title_msg
  1152.                     "Wie wünschen Sie, daß ein Verzeichnis aufgelistet wird, wenn Sie "
  1153.                     "es doppelklicken?")
  1154.                 (help @askchoice-help)
  1155.                 (choices
  1156.                 (cat #proprender "In einen neuen Lister (Browse).")
  1157.                 "Im selben Lister (GetDir)."
  1158.                 )
  1159.                 )
  1160.                 (* 2
  1161.                 (askchoice
  1162.                     (prompt #Title_msg
  1163.                         "Was soll geschehen, wenn Sie ein Archiv in einem anderen "
  1164.                         "Lister ablegen?")
  1165.                     (help @askchoice-help)
  1166.                     (choices
  1167.                         (cat #proprender "Entpacken (mit LhA/LZX).")
  1168.                             "Auflisten (mit ArcDir)."
  1169.                     )
  1170.                 )
  1171.                 )
  1172.             )    
  1173.         )
  1174.  
  1175.         (set #Language
  1176.             (if
  1177.                 (= (exists "ENV:Language" (noreq)) 1)
  1178.                 (getenv "Language")
  1179.                     ""
  1180.                 )
  1181.         )
  1182.  
  1183.         (set #Catalogs
  1184.             (askoptions
  1185.                 (prompt #Title_msg
  1186.                     "Welche Catalog-Dateien wollen Sie installieren?\n"
  1187.                     "(English ist eingebaut.)")
  1188.                 (help @askoptions-help)
  1189.                 (choices (cat #proprender "Nederlands") "Deutsch" "Français" "Norsk")
  1190.                 (default 
  1191.                     (+
  1192.                     (= #Language "nederlands")
  1193.                     (* 2 (= #Language "deutsch"))
  1194.                     (* 4 (= #Language "français"))
  1195.                     (* 8 (= #Language "norsk"))
  1196.                     )
  1197.                 )
  1198.                 )
  1199.         )
  1200.         
  1201.         
  1202.     ; copy the files
  1203.     
  1204.         (copyfiles
  1205.             (source "ram:ArcDir/ARexx")
  1206.             (dest "DOPUSDEST:ARexx")
  1207.             (pattern "#?")
  1208.             (files)
  1209.         )
  1210.         (copyfiles
  1211.             (source "ram:ArcDir/C")
  1212.             (dest "DOPUSDEST:C")
  1213.             (pattern "#?")
  1214.             (files)
  1215.         )
  1216.     
  1217.         (set #Storedir
  1218.             (if (= (exists "DOPUSDEST:Storage/Filetypes" (noreq)) 2)
  1219.                 ("DOPUSDEST:Storage/Filetypes")
  1220.                 ("DOPUSDEST:Storage")
  1221.             )
  1222.         )
  1223.         (set #N 0)
  1224.         (while
  1225.             (set #Arctype (select #N "LHA" "LZX" ""))
  1226.             (
  1227.             (if #Storeold
  1228.                 (copyfiles
  1229.                     (source (cat "DOPUSDEST:Filetypes/" #Arctype " archive"))
  1230.                     (dest #Storedir)
  1231.                 )
  1232.             )
  1233.             (copyfiles
  1234.                 (source    (select    #how
  1235.                     (cat "ram:ArcDir/Filetypes/" #Arctype " archive")
  1236.                     (cat "ram:ArcDir/Storage/Filetypes/" #Arctype " archive_GetDir")
  1237.                     (cat "ram:ArcDir/Storage/Filetypes/" #Arctype " archive_Browse&DnD")
  1238.                     (cat "ram:ArcDir/Storage/Filetypes/" #Arctype " archive_GetDir&DnD")
  1239.                     )
  1240.                 )
  1241.                 (dest "DOPUSDEST:Filetypes")
  1242.                 (newname (cat #Arctype " archive"))
  1243.             )
  1244.             (set #N (+ #N 1))
  1245.             )
  1246.         )
  1247.     
  1248.         (set #N 0)
  1249.         (while
  1250.             (set #Thiscat (select #N "nederlands" "deutsch" "français" "norsk" ""))
  1251.             (
  1252.             (if (in #Catalogs #N)
  1253.                 (copyfiles
  1254.                     (source (cat "ram:ArcDir/Locale/Catalogs/" #Thiscat "/ArcDir.catalog"))
  1255.                     (dest (cat "LOCALE:Catalogs/" #Thiscat))
  1256.                 )
  1257.             )
  1258.             (set #N (+ #N 1))
  1259.             )
  1260.         )
  1261.                 
  1262.     ; Done
  1263.         
  1264.         (message #Title_msg
  1265.             "Installation durchgeführt!\n\n"
  1266.             "Um ArcDir.dopus5 nutzen zu können, muß ARexx aktiviert sein "
  1267.             "durch Start des RexxMast-Programms aus dem Systemverzeichnis.\n\n"
  1268.             "Sie können ArcDir deinstallieren durch Aufruf des Installationskriptes"
  1269.             " aus dem ARCDir-Archiv auf der Opus 5.5-CD."
  1270.         )
  1271.     
  1272.         (run "cd ram:")
  1273.         (run "delete ram:ArcDir#? all")
  1274.         )
  1275.     )
  1276. )
  1277.  
  1278. ;
  1279. ; Procedure install_docs
  1280. ;
  1281.  
  1282. (procedure install_docs
  1283.  
  1284.     (set #Title_msg "Directory Opus 5.5 Handbuch-Installation.\n\n")
  1285.     (get_lhex)
  1286.      (set #HB_choice
  1287.       (askchoice
  1288.         (prompt #Title_msg
  1289.             "Bitte wählen Sie aus:-")
  1290.         (help     "PowerGuide-Handbuch installieren\n"
  1291.               "Installiert das Handbuch im Format von"
  1292.                 " PowerGuide auf Ihrer Festplatte im Verzeichnis"
  1293.                 " von Opus 5.5. Das Handbuch im Format von PowerGuide"
  1294.                 " bietet gegenüber herkömmlichen Guide_Dateien den"
  1295.                 " den Vorteil größerer Übersichtlichkeit durch"
  1296.                 " eingebundene Grafiken und eine Suchfunktion."
  1297.                 " PowerGuide wird automatisch mitinstalliert und"
  1298.                 " befindet sich im Verzeichnis des Handbuchs.\n\n"
  1299.             "AmigaGuide-Handbuch installieren\n"
  1300.               "Installiert das Handbuch im Format von AmigaGuide auf"
  1301.                 " Ihrer Festplatte im Verzeichnis von Opus 5.5. Dieses"
  1302.                 " Handbuch wird mit dem Standardprogramm Multiview"
  1303.                 " dargestellt.\n\n"
  1304.                "Beide Handbücher installieren\n"
  1305.                 "Installiert beide Handbücher in beiden Formaten.\n\n"
  1306.                "Kein Handbuch installieren\n"
  1307.                 "Es wird kein Handbuch installiert. Sie können aber die"
  1308.                 " entpsprechenden Dateien später von Hand entpacken"
  1309.                 " (auch wenn wir Ihnen diese Vorgehensweise nicht"
  1310.                 " empfehlen).")
  1311.         (choices
  1312.             "PowerGuide-Handbuch installieren "    ; 0
  1313.             "AmigaGuide-Handbuch installieren "    ; 1 
  1314.             "Beide Handbücher installieren "    ; 2 
  1315.             "Kein Handbuch installieren ")    ; 3
  1316.         (default 2)
  1317.      )
  1318.     )
  1319.  
  1320.         (set #Changed 1)
  1321.         (set #Want_disk 1)
  1322.         (get_disk)
  1323.  
  1324.      (if (= #HB_choice 0)
  1325.           (
  1326.         (if    (> (+ (database "total-mem")) 1000000)
  1327.             (
  1328.             (working #Title_msg
  1329.                 "Kopiere Dateien.")
  1330.             (copyfiles (source (tackon #Disk1_Name "Bilder.lha")) (dest "ram:"))
  1331.             (copyfiles (source (tackon #Disk1_Name "Handbuch.lha")) (dest "ram:"))
  1332.             (set #SRC "ram:")
  1333.             )
  1334.             (set #SRC #Disk1_Name)
  1335.         )
  1336.         (working #Title_msg
  1337.              "Entpacke und installiere das PowerGuide-Handbuch.\n\n"
  1338.              "Dies dauert ein Momentchen....")
  1339.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"Handbuch.lha "))
  1340.         (delete "ram:Handbuch.lha" (safe))
  1341.          (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST:Handbuch/ x "#SRC"Bilder.lha "))
  1342.         (delete "ram:Bilder.lha" (safe))
  1343.           )
  1344.      )
  1345.  
  1346.      (if (= #HB_choice 1)
  1347.           (
  1348.         (if    (> (+ (database "total-mem")) 1000000)
  1349.             (
  1350.             (working #Title_msg
  1351.                 "Kopiere Dateien.")
  1352.             (copyfiles (source (tackon #Disk1_Name "Bilder.lha")) (dest "ram:"))
  1353.             (copyfiles (source (tackon #Disk1_Name "HandbuchMV.lha")) (dest "ram:"))
  1354.             (set #SRC "ram:")
  1355.             )
  1356.             (set #SRC #Disk1_Name)
  1357.         )
  1358.         (working #Title_msg
  1359.              "Entpacke und installiere das AmigaGuide-Handbuch.\n\n"
  1360.              "Dies dauert ein Momentchen....")
  1361.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"HandbuchMV.lha "))
  1362.         (delete "ram:HandbuchMV.lha" (safe))
  1363.          (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST:Handbuch_MV/ x "#SRC"Bilder.lha "))
  1364.         (delete "ram:Bilder.lha" (safe))
  1365.           )
  1366.      )
  1367.  
  1368.      (if (= #HB_choice 2)
  1369.           (
  1370.         (if    (> (+ (database "total-mem")) 1000000)
  1371.             (
  1372.             (working #Title_msg
  1373.                 "Kopiere Dateien.")
  1374.             (copyfiles (source (tackon #Disk1_Name "Bilder.lha")) (dest "ram:"))
  1375.             (copyfiles (source (tackon #Disk1_Name "Handbuch.lha")) (dest "ram:"))
  1376.             (copyfiles (source (tackon #Disk1_Name "HandbuchMV.lha")) (dest "ram:"))
  1377.             (set #SRC "ram:")
  1378.             )
  1379.             (set #SRC #Disk1_Name)
  1380.         )
  1381.         (working #Title_msg
  1382.              "Entpacke und installiere beide Handbücher.\n\n"
  1383.              "Dies dauert ein Momentchen....")
  1384.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"Handbuch.lha "))
  1385.         (delete "ram:Handbuch.lha" (safe))
  1386.         (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST: x "#SRC"HandbuchMV.lha "))
  1387.         (delete "ram:HandbuchMV.lha" (safe))
  1388.          (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST:Handbuch/ x "#SRC"Bilder.lha "))
  1389.          (run (cat "ram:lhex >NIL: <NIL: -qfw=DOPUSDEST:Handbuch_MV/ x "#SRC"Bilder.lha "))
  1390.         (delete "ram:Bilder.lha" (safe))
  1391.           )
  1392.      )
  1393.  
  1394.      (if (= #HB_choice 3)
  1395.         (message #Title_msg
  1396.             "Sie haben kein Handbuch installiert. Sie können dies aber"
  1397.                " später noch nachholen, indem Sie dieses"
  1398.                " Installationsprogramm erneut starten."
  1399.           )
  1400.      )
  1401.  
  1402. )
  1403.  
  1404. ;
  1405. ; Procedure install_complete ;
  1406. ;
  1407.  
  1408. (procedure install_complete
  1409.  
  1410.     (get_dir)
  1411.     (signal_opus)
  1412.     (install_core)
  1413.     (install_support)
  1414.      (install_docs)
  1415.     (install_arcdir)
  1416.     (install_arexx)    
  1417.     (install_mwbextras)
  1418.     (startup_options)
  1419.     (do_startup)
  1420. )
  1421.  
  1422.  
  1423. ;
  1424. ; Real not procedure at last! ;
  1425. ;
  1426.  
  1427.  
  1428. (while    (
  1429.     (set #Title_msg "Directory Opus 5 Installation.\n\n")
  1430.      (set #Inst_choice
  1431.       (askchoice
  1432.         (prompt #Title_msg
  1433.             "Bitte wählen Sie aus:-")
  1434.         (help     "Opus 5.5 installieren\n"
  1435.               "Installiert oder updated Opus 5.5 auf"
  1436.              " Ihrer Festplatte, einschließlich Programm-"
  1437.              " und Support-Dateien plus Knopfbänke,"
  1438.              " Dateitypen, Umgebung usw. WICHTIG: "
  1439.              "Alle Elemente der alten Konfiguration werden zuerst gesichert.\n\n"
  1440.             "Opus 5.5 installieren - benutzerdefiniert\n"
  1441.               "Installiert Opus 5.5 wie oben, erlaubt Ihnen aber"
  1442.              " die Wahl der zu installierenden Teile.\n\n"
  1443.             "ARexx ArcDir installieren\n "    
  1444.              "Installiert ArcDir\n\n"
  1445.             "MagicWB-Extras installieren\n"    
  1446.              "Installiert das MagicWorkbench-Archive von"
  1447.              " Bildern, Piktogrammen, Knöpfen und anderen Dateien,"
  1448.              " wie von Trevor Morris und Leo Davidson zur Verfügung gestellt.\n\n"
  1449.             "Opus 5.5 Startoptionen ändern"
  1450.              "Erlaubt Ihnen die Änderung der Startoptionen von Opus 5.")
  1451.         (choices
  1452.             "Opus 5.5 installieren oder updaten "    ; 0
  1453.             "Opus 5.5 installieren - benutzerdefiniert "    ; 1 
  1454.             "Opus 5.5 Startoptionen ändern "    ; 2 only if 5.5 installed
  1455.             "Fertig ")                ; 3
  1456.         (default 3)
  1457.      )
  1458.     )
  1459.     (<> #Inst_choice 3)
  1460.     )
  1461.     (select #Inst_choice
  1462.         (install_complete)    ;0
  1463.         (install_complete)    ;1
  1464.         (startup_options)    ;2
  1465.     )
  1466. )
  1467.  
  1468. (if    (= #Inst_core 1)
  1469.     (message #Title_msg
  1470.         "Directory Opus 5 registrieren \n"
  1471.         "-----------------------------\n"
  1472.         "Um Ihre wertvolle Investition in Opus 5 zu schützen und "
  1473.         "die Installation zu komplettieren, sollten Sie"
  1474.         " jetzt Opus mit Ihren persönlichen Daten und der Seriennummer "
  1475.         " der Installations-CD registrieren.\n\n"
  1476.         "Dies wäre auch ein guter Moment, die Registrierkarte"
  1477.         " auszufüllen und an Ihren Vertreiber zurückzusenden."
  1478.         " Technische Unterstützung und Garantie wird nur"
  1479.         " gewährt, wenn eine gültige Registrierung beim Vertrieb"
  1480.         " vorliegt.")
  1481. )
  1482.  
  1483. (if    (= #Changed 1)
  1484.     (message #Title_msg
  1485.         "Directory Opus ist jetzt installiert.\n\n"
  1486.         "Wir empfehlen Ihnen, das Installationsskript bis zum Ende durchzuführen,"
  1487.         " die CD zu entfernen und Ihren Rechner NEU ZU STARTEN.")
  1488. )
  1489.  
  1490. ;
  1491. ;Please please ReadMe 
  1492. ;
  1493.  
  1494. (if    (= #Changed 1)
  1495.     (if    (askbool (prompt #Title_msg
  1496.                 "Alle Dinge ändern sich, einschließlich Software.\n\n"
  1497.                 "Weitere Änderungen sind in der Datei 'LiesMich'"
  1498.                 " auf der Installations-CD festgehalten.\n\n"
  1499.                 "Wollen Sie diese Datei jetzt lesen?\n\n")
  1500.             (help "Na los, lesen Sie sie schon.")
  1501.         )
  1502.         (if (> (run "Sys:Utilities/MultiView DOPUSDEST:LiesMich.55") 0)
  1503.             (if (> (run "Sys:Utilities/AmigaGuide DOPUSDEST:LiesMich.55") 0)
  1504.                 (if (> (run "More DOPUSDEST:LiesMich.55") 0)
  1505.                     (
  1506.                     (set #Want_disk 1)
  1507.                     (get_disk)
  1508.                     (run "Opus5.5:More DOPUSDEST:LiesMich.55")
  1509.                     )
  1510.                 )
  1511.             )
  1512.         )
  1513.     )
  1514. )
  1515.  
  1516. (complete 100)
  1517.  
  1518. (delete "ram:lhex")
  1519. (exit "Directory Opus 5.5 Installation beendet!")
  1520.  
  1521.  
  1522.