Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
158 user(s) are online (145 user(s) are browsing Forums)

Members: 0
Guests: 158

more...

Support us!

Headlines

 
  Register To Post  

Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
Hi,

Anyone here good at writing installer scripts (either the new Python based one, or the classic installer)?

Hans

Join Kea Campus' Amiga Corner and support Amiga content creation
https://keasigmadelta.com/ - see more of my work
Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@Hans

No, but if i have to do one i always use InstallerGen by Rob

Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@Raziel

I've had a look at InstallerGen, but I don't think it's ready to do what I need yet. I need it to:
- Copy the app to a selected location (nice and easy)
- Download and install/upgrade AmiSSL to the latest version
- Add an entry to the user-startup to start the app on booting (if the user wants)
- Start the app once installed (nice and easy)

Hans

Join Kea Campus' Amiga Corner and support Amiga content creation
https://keasigmadelta.com/ - see more of my work
Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@Hans

Quote:

1) - Copy the app to a selected location (nice and easy)
2) - Download and install/upgrade AmiSSL to the latest version
3) - Add an entry to the user-startup to start the app on booting (if the user wants)
4) - Start the app once installed (nice and easy)


1) Check
2) Check (through an external program/command)
3) Check (with e.g. echo >> user-startup, there is probably a much nicer way, but i never needed to use such kind of functionalitly)
4) Check - done it with the ScummVM installer (just add or remove a checkmark to make the app start or to display the readme or whatever, when the installation has finished)

Try it, it's pretty mature already

Go to top
Re: Anyone here good at writing installer scripts?
Amigans Defender
Amigans Defender


See User information
@Raziel

3) DON'T do it that way. Use the "startup" command.

Go to top
Re: Anyone here good at writing installer scripts?
Just popping in
Just popping in


See User information
@Hans

If you'd like to see how others are doing it, the list in the link below might save you some time:

https://github.com/sodero/InstallerLG/wiki/Test-status

Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@Raziel

Quote:
2) Check (through an external program/command)

Using what external program/command?

EDIT: I could simplify this by including AmiSSL in the archive. Still need a way to check if updating AmiSSL is needed, though...

Quote:
3) Check (with e.g. echo >> user-startup, there is probably a much nicer way, but i never needed to use such kind of functionalitly)

Won't work properly if the installer has been run before (you'll end up with multiple entries.

@sTix

Thanks. Are there any examples in particular which match what I'm trying to do?

@all
I'm actually hoping to find someone who could write the script for me so that I can focus on C/C++ coding. I've tried contacting InstallerGen's author, but haven't heard back yet.

Hans

Join Kea Campus' Amiga Corner and support Amiga content creation
https://keasigmadelta.com/ - see more of my work
Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@Hans

2) How about cURL?
Or something that comes preinstalled with AmigaOS4, though i don't know if there is one such program.

3) As @Chris noted, use the User-Startup Command Step

Quote:

User-Startup Command Step Type

This step type is used to insert an AmigaDOS command into the S:User-Startup file. A prompt can be provided using the Message Text field. If an assign is required in the User-Startup, the User-Startup Assign Step can be used instead.

The Command field contains the full command to insert. A variable can be used here or a constant string. Be sure to use quotes when entering a constant string, for example "SetEnv MyEnvVar 1".

Please note that to include a variable as part of the command, you need to enter a Cat statement, for example:

(cat "SetEnv MyAppEnv " #MyStringVar)

Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@Raziel

Quote:
2) How about cURL?
Or something that comes preinstalled with AmigaOS4, though i don't know if there is one such program.

The installer should only update AmiSSL if necessary. CURL doesn't check if a library exists and has the right version before downloading.

Quote:
3) As @Chris noted, use the User-Startup Command Step

Does InstallerGen handle this?

I really can't stand Installer's scripting language, which is one of the reasons why I'm hoping to find someone who can write the installer for me.

Hans

Join Kea Campus' Amiga Corner and support Amiga content creation
https://keasigmadelta.com/ - see more of my work
Go to top
Re: Anyone here good at writing installer scripts?
Just popping in
Just popping in


See User information
@Hans

The (copylib) function takes care of the version check. (startup) handles the user-startup.

You can have a look at the Vim and InstallerLG installers, they are simple and does what you want to do I think. The InstallerLG installer also compares checksums but you can ignore that.

Go to top
Re: Anyone here good at writing installer scripts?
Home away from home
Home away from home


See User information
@sTix

Quote:
The (copylib) function takes care of the version check. (startup) handles the user-startup.

Not quite. Copylib will copy a library if it's newer. I need to run a separate installer (AmiSSL's) if AmiSSL is too old, or is missing.

@all
I'm serious about finding someone capable to write the installer, and I'm willing to pay for it (a small sum, though). If you're competent and willing, then please contact me privately via email (visit https://keasigmadelta.com/about-us/contact-us/ if you need the address).

Hans

Join Kea Campus' Amiga Corner and support Amiga content creation
https://keasigmadelta.com/ - see more of my work
Go to top
Re: Anyone here good at writing installer scripts?
Just popping in
Just popping in


See User information
@Hans

Ok, then (exists) and (getversion) is what you're looking for. Unfortunately I'm on the road so I can't provide any hands on help.

Go to top
Re: Anyone here good at writing installer scripts?
Just popping in
Just popping in


See User information
@Hans

And running a different installer can probably be done using (run) or (execute)...


Go to top
Re: Anyone here good at writing installer scripts?
Just popping in
Just popping in


See User information
@sTix

Or perhaps even including the other installer as a function...

Go to top
Re: Anyone here good at writing installer scripts?
Quite a regular
Quite a regular


See User information
@Hans

Here is how Digital Universe can automatically install 3DStars if required. This is done after the installation of the main application. I only used the log filename just an case people want to install 3DS manually, and its best to do it afterwards rather than before.

(if (= #install3DS 1)
    
(
      (
set @execute-dir "DU17_Install:3DStars_Install")
      (
run "run >nil: sys:utilities/Installer DU17_Install:3DStars_Install/Install_Me_After_DigitalUniverse APPNAME 3DStars DEFUSER EXPERT" )
      (exit (
quiet))
    )
)


You would use something like:

(set @execute-dir 'path of folder containing the AmiSSL install')
(run "run >nil: sys:utilities/Installer 'name of AmiSSL install file' APPNAME 'AmiSSL programme name' " ) DEFUSER is optional and not necessarily needed.

Go to top

  Register To Post

 




Currently Active Users Viewing This Thread: 1 ( 0 members and 1 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2024 The XOOPS Project