(transcript "Installiere AmigaLink V1.4...")

(complete 0)

(set @default-dest "SYS:")

(working "Lege für Installation erforderliche Verzeichnisse in"
         "\"ENV:\" und \"DEVS:\" an."
)

(if (NOT (exists "ENV:Networks"))
    (makedir "ENV:Networks")
)

(if (NOT (exists "DEVS:Networks"))
    (makedir "DEVS:Networks")
)

(complete 5)

(if (NOT (exists "ENVARC:" (noreq)))
    (
      (message "Das Verzeichnis \"ENVARC:\" existiert nicht,"
               "es wird jetzt automatisch angelegt.")

      (makedir "SYS:Env-Archive"
             (prompt "Erzeuge das Verzeichnis \"SYS:Env-Archive\"")
             (help @makedir-help)
             (infos)
             (confirm)
      )

      (complete 6)

      (makeassign "ENVARC" "SYS:Env-Archive")

      (complete 7)

      (startup "Envarc setup"
              (prompt "Füge Befehle für ENVARC: Verzeichnis in \"S:user-startup\" ein.")
              (help "Keine Hilfe vorhanden. Bitte Handbuch bzw. Ergänzungen in der Datei \"Liesmich\" lesen")
              (command "Assign ENVARC: SYS:Env-Archive\nCopy ENVARC: ENV: all quiet\n")
      )
    )
)

(complete 8)

(if (NOT (exists "ENVARC:Networks"))
    (makedir "ENVARC:Networks")
)

(complete 9)

(makedir ("RAM:AmigaLink")
         (safe)
)

(complete 10)

(copyfiles
  (help @copyfiles-help)
  (prompt "Lese \"spidernet.device\" ein.")
  (source "bin/spidernet.device")
  (dest "RAM:AmigaLink/")
  (safe)
)

(complete 15)

(copyfiles
  (help @copyfiles-help)
  (prompt "Installiere spidernet.device")
  (source "RAM:AmigaLink/spidernet.device")
  (dest "DEVS:Networks/")
  (confirm)
)
(delete "RAM:AmigaLink/spidernet.device")

(complete 20)

(copyfiles
  (help @copyfiles-help)
  (prompt "Lese FileSystem Treiber und Befehle")
  (source "bin/")
  (dest "RAM:AmigaLink/")
  (pattern "~(#?.device)")
  (safe)
)

(complete 35)

(copyfiles
  (help @copyfiles-help)
  (prompt "Installiere AmigaLink-FileHandler")
  (source "RAM:AmigaLink/AmigaLink-FileHandler")
  (dest "l:")
  (confirm)
)

(complete 40)

(copyfiles
  (help @copyfiles-help)
  (prompt "Installiere NetMount")
  (source "RAM:AmigaLink/NetMount")
  (dest "c:")
  (confirm)
)

(complete 45)

(copyfiles
  (help @copyfiles-help)
  (prompt "Installiere NetUnmount")
  (source "RAM:AmigaLink/NetUnmount")
  (dest "c:")
  (confirm)
)

(complete 50)

(set export
  (askbool
    (prompt "Soll diese Station Geräte exportieren?")
    (help @askbool-help)
    (default 0)
  )
)

(if export
  (
    (copyfiles
      (help @copyfiles-help)
      (prompt "Installiere AmigaLink-FileServer")
      (source "RAM:AmigaLink/AmigaLink-FileServer")
      (dest "l:")
      (confirm)
    )

    (complete 55)

    (copyfiles
      (help @copyfiles-help)
      (prompt "Installiere StartServer")
      (source "RAM:AmigaLink/StartServer")
      (dest "c:")
      (confirm)
    )

    (complete 60)

    (copyfiles
      (help @copyfiles-help)
      (prompt "Installiere ShutdownServer")
      (source "RAM:AmigaLink/ShutdownServer")
      (dest "c:")
      (confirm)
    )
  )
)

(complete 65)

(working "Räume RAM-Disk auf.")

(foreach "RAM:AmigaLink" "#?"
        (delete (cat "RAM:AmigaLink/" @each-name)
                (optional force)
                (safe)
        )
)

(delete ("RAM:AmigaLink")
        (safe)
)

(complete 70)

(set hostname
  (askstring
    (prompt "Bitte geben Sie einen Namen für diese Station an.\n"
            "ACHTUNG! Der Name muß im ganzen Netz eindeutig sein!")
    (help @askstring-help)
    (default "mysystem")
  )
)

(complete 70)

(set device "networks/amoksana.device")
(if (= @user-level 2)
  (
    (set device
      (askstring
        (prompt "Bitte geben Sie einen SANA-II Gerätetreiber an")
        (help @askstring-help)
        (default device)
      )
    )
  )
)

(complete 73)

(set unit 0)
(if (= @user-level 2)
  (
    (set unit
      (asknumber
        (prompt "Welche Geräteeinheit (Unit-Nummer)?")
        (help @asknumber-help)
        (default unit)
      )
    )
  )
)

(complete 76)

(set spitype 44290)
(if (= @user-level 2)
  (
    (set spitype
      (asknumber
        (prompt "Bitte den Paket-Typ für Datenübertragung eingeben:")
        (help @asknumber-help)
        (default spitype)
      )
    )
  )
)

(complete 78)

(set nsetype 44291)
(if (= @user-level 2)
  (
    (set nsetype
      (asknumber
        (prompt "Bitte den Paket-Typ für Namensresolution eingeben:")
        (help @asknumber-help)
        (default nsetype)
      )
    )
  )
)

(complete 80)

(set timeout 5000)
(if (= @user-level 2)
  (
    (set timeout
      (asknumber
        (prompt "Bitte den Timeout-Wert in Millisekunden eingeben:")
        (help @asknumber-help)
        (default timeout)
      )
    )
  )
)

(complete 83)

(set repeat 700)
(if (= @user-level 2)
  (
    (set repeat
      (asknumber
        (prompt "Bitte das Wiederholungsintervall in Millisekunden eingeben:")
        (help @asknumber-help)
        (default repeat)
      )
    )
  )
)

(complete 86)

(set nameserver 1)
(if (= @user-level 2)
  (
    (set nameserver
      (askbool
        (prompt "Ist dieser Rechner als Namensserver geeignet?")
        (help @askbool-help)
        (default nameserver)
      )
    )
  )
)

(complete 90)

(working "Erzeuge Konfigurationsfile für Netzwerkprotokoll.")

(textfile
  (dest "ENV:NetWorks/SpiderNet.prefs")
  (append "%% SpiderNet.prefs\n"
          "%% configuration file for spidernet.device\n"
          "%% network service protocol interface\n"
          "\n"
          "%% valid keywords are:\n"
          "%%\n"
          "%% DEVICE=<SanaDeviveName>      must always be specified\n"
          "%% HOSTNAME=<HostName>          must always be specified\n"
          "%% UNIT=<SanaDeviceUnitNumber>  default is unit 0\n"
          "%% SPITYPE=<PacketTypeNumber>   default is 0AD02h\n"
          "%% NSETYPE=<PacketTypeNumber>   default is 0AD03h\n"
          "%% TIMEOUT=<MilliSec>           default is 5 seconds\n"
          "%% REPEAT=<MilliSec>            default is 0.7 seconds\n"
          "%% NAMESERVER=<Yes|No>          default is Yes if AvailMem > 500k\n"
          "\n")

  (append "BEGIN AmokNet\n")
  (append (cat "  DEVICE     = \"" device   "\"\n"))
  (append (cat "  HOSTNAME   = \"" hostname "\"\n"))
  (append (cat "  UNIT       = "   unit       "\n"))
  (append (cat "  SPITYPE    = "   spitype    "\n"))
  (append (cat "  NSETYPE    = "   nsetype    "\n"))
  (append (cat "  TIMEOUT    = "   timeout    "\n"))
  (append (cat "  REPEAT     = "   repeat     "\n"))
  (if nameserver
    (
      (append "  NAMESERVER = Yes\n")
    )
    (
      (append "  NAMESERVER = No\n")
    )
  )
  (append "END\n")
)

(complete 95)

(copyfiles
  (source "ENV:Networks/SpiderNet.prefs")
  (dest "ENVARC:Networks/")
)

(complete 100)

(exit)
