(transcript "Installing DreamTerm...")

(set @default-dest "SYS:")

(set #bad_kick "You must be using KickStart 3.0+ to use DreamTerm!")
(set #bad_lha  "Cannot unarchive files!")
(set #dterm13_msg
(cat "\nConfig file format changed after 1.3 and support for automatic "
     "conversion is removed. You must delete DT_current & DT_config files "
     "and reconfigure everything."
))
(set #ask_default_config
(cat "Do you want to install default config files? This will override "
     "your old settings! However default phonebook and droplist will be "
     "left alone. If you are new user you should answer yes, users "
     "with previous version should answer no and use append in DreamTerm to "
     "add config files if needed."
))

;----------------------------------------------------------------------------

; Running under V39?

(if (< (/ (getversion) 65536) 39)
  (
    (abort #bad_kick)
  )
)

(if (run "LX -ACF x dt_bin.lha >NIL:")
  (
    (abort #bad_lha)
  )
)

; Ask destination for dreamterm

(set destination
  (askdir
    (prompt "Please select a place for the DreamTerm. A sub drawer called \"DreamTerm\" will be created here.")
    (help @askdir-help)
    (default "SYS:")
    (newpath)
  )
)

(set @default-dest (tackon destination "DreamTerm"))

; Create directories

(makedir destination)
(makedir (tackon destination "DreamTerm"))
(makedir (tackon destination "DreamTerm/Buttons"))
(makedir (tackon destination "DreamTerm/Catalogs"))
(makedir (tackon destination "DreamTerm/Catalogs/english"))
(makedir (tackon destination "DreamTerm/Catalogs/suomi"))
(makedir (tackon destination "DreamTerm/Conversion tables"))
(makedir "FONTS:DT_IBM01")
(makedir "FONTS:DT_IBM02")
(makedir "LIBS:compressors")
(complete 1)

; Copy unconditional files

(copyfiles
  (source "BugReport.txt")
  (dest (tackon destination "DreamTerm"))
)
(complete 2)

(copyfiles
  (source "DreamTerm")
  (dest (tackon destination "DreamTerm"))
  (infos)
)
(complete 3)

(copyfiles
  (source "DreamTerm.guide")
  (dest (tackon destination "DreamTerm"))
  (infos)
)
(complete 4)

(copyfiles
  (source "Buttons/Lazy(tm).txt")
  (dest (tackon destination "DreamTerm/Buttons"))
)
(complete 6)

(copyfiles
  (source "PhoneBooks/NewUser.pb")
  (dest (tackon destination "DreamTerm/PhoneBooks"))
)
(complete 7)

(copyfiles
  (source "FONTS/DT_IBM01.font")
  (dest   "FONTS:")
)
(complete 8)

(copyfiles
  (source "FONTS/DT_IBM02.font")
  (dest   "FONTS:")
)
(complete 9)

(copyfiles
  (source "FONTS/DT_IBM01/8")
  (dest   "FONTS:DT_IBM01")
)
(complete 10)

(copyfiles
  (source "FONTS/DT_IBM02/8")
  (dest   "FONTS:DT_IBM02")
)
(complete 11)

(copyfiles
  (source "Conversion tables/ISO->ISO_capture.ct")
  (dest (tackon destination "DreamTerm/Conversion tables"))
)
(complete 12)

(copyfiles
  (source "Conversion tables/ISO->SF7.ct")
  (dest (tackon destination "DreamTerm/Conversion tables"))
)
(complete 13)

(copyfiles
  (source "Conversion tables/ISO->SF8.ct")
  (dest (tackon destination "DreamTerm/Conversion tables"))
)
(complete 14)

(copyfiles
  (source "Conversion tables/NoConversion.ct")
  (dest (tackon destination "DreamTerm/Conversion tables"))
)
(complete 15)

(copyfiles
  (source "Conversion tables/SF8->ISO.ct")
  (dest (tackon destination "DreamTerm/Conversion tables"))
)
(complete 16)

(copyfiles
  (source "Conversion tables/SF8->ISO_capture.ct")
  (dest (tackon destination "DreamTerm/Conversion tables"))
)
(complete 17)

(copyfiles
  (source "Catalogs/create_catalog")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 20)

(copyfiles
  (source "Catalogs/dterm.cd")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 21)

(copyfiles
  (source "Catalogs/english.readme")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 22)

(copyfiles
  (source "Catalogs/english.sd")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 22)

(copyfiles
  (source "Catalogs/FlexCat")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 23)

(copyfiles
  (source "Catalogs/suomi.ct")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 24)

(copyfiles
  (source "Catalogs/suomi.lueminut")
  (dest (tackon destination "DreamTerm/Catalogs"))
)
(complete 25)

(copyfiles
  (source "Catalogs/english/dreamterm.catalog")
  (dest (tackon destination "DreamTerm/Catalogs/english"))
)
(complete 26)

(copyfiles
  (source "Catalogs/suomi/dreamterm.catalog")
  (dest (tackon destination "DreamTerm/Catalogs/suomi"))
)
(complete 27)

; Copy libraries

(foreach "LIBS" "#?.library"
  (copylib
    (prompt "Installing library: " @each-name)
    (source (tackon "LIBS" @each-name))
    (help @copylib-help)
    (dest "LIBS:")
    (confirm)
  )
)
(complete 45)

(foreach "LIBS/compressors" "#?.library"
  (copylib
    (prompt "Installing library: " @each-name)
    (source (tackon "LIBS/compressors" @each-name))
    (help @copylib-help)
    (dest "LIBS:compressors")
    (confirm)
  )
)
(complete 66)

; Copy config files

(if (askbool (help @askbool-help) (prompt #ask_default_config))
  (foreach "" "DT_config.#?"
    (copyfiles
      (prompt "Installing configuration file:" @each-name)
      (source (tackon "" @each-name))
      (help @copyfiles-help)
      (dest (tackon destination "DreamTerm"))
    )
  )
)

(complete 99)

(if (exists (tackon destination "DreamTerm/DT_config")) (message #dterm13_msg) )

(complete 100)

(exit "Done! Just run and fun...")
