Author Topic: GAE Installer  (Read 5818 times)

hailstone

  • Local Moderator
  • Battle Machine
  • ********
  • Posts: 1,568
    • View Profile
GAE Installer
« on: 23 July 2009, 08:45:37 »
There has been interest in using an installer for GAE so I've created this post so I can share my thoughts.

NullSoft (http://nsis.sourceforge.net/Main_Page) or Inno (http://www.jrsoftware.org/isinfo.php) was suggested but these are Windows only. I think it makes sense to use a single installer program for all platforms. I have found http://installjammer.com/ and http://izpack.org/features/ which are multiplatform.

The biggest difference between the two is that the former uses GTK and the latter uses Java. Also installerjammer has a gui to edit options.
Glest Advanced Engine - Admin/Programmer
https://sourceforge.net/projects/glestae/

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #1 on: 23 July 2009, 09:28:24 »
I have no clue about installers for other OS's. Never even knew that linux had a such thing!

It really makes no difference to what you use, but you should focus on just a simple installer that will get the job done. Of course, make sure they are user friendly.

No complaints here.
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

-Archmage-

  • Moderator
  • Dragon
  • ********
  • Posts: 5,887
  • Make it so.
    • View Profile
    • My Website
Re: GAE Installer
« Reply #2 on: 24 July 2009, 13:33:35 »
Quote
It really makes no difference to what you use

Actually it does, as many people on the boards don't use Windows

I'm for the cross-platform installers, don't bother with fancy stuff, just get something that does a good job, which is sort of what Omega said.

Well good luck with the installer! :D
Egypt Remastered!

Proof: Owner of glest@mail.com

modman

  • Guest
Re: GAE Installer
« Reply #3 on: 24 July 2009, 18:36:44 »
Options should be the location on the computer and where to put shortcuts, in my opinion.

-Archmage-

  • Moderator
  • Dragon
  • ********
  • Posts: 5,887
  • Make it so.
    • View Profile
    • My Website
Re: GAE Installer
« Reply #4 on: 24 July 2009, 23:26:34 »
Yah, I agree, don't put all that terms of use crap, no one ever reads that.

Steps:

Ok, you open it and then...
1) Welcome to the GAE installation program, where would you like to install GAE(or where/which Glest file do you want to install GAE to)
    Do you want shortcuts, and where(then you would specify the shortcut locations), click Install(at bottom)

2) Thanks you for installing GAE, ENJOY!
    *Installs GAE*
Egypt Remastered!

Proof: Owner of glest@mail.com

Mark

  • Guest
Re: GAE Installer
« Reply #5 on: 25 July 2009, 00:49:42 »
Yah, I agree, don't put all that terms of use crap, no one ever reads that.

Steps:

Ok, you open it and then...
1) Welcome to the GAE installation program, where would you like to install GAE(or where/which Glest file do you want to install GAE to)
    Do you want shortcuts, and where(then you would specify the shortcut locations), click Install(at bottom)

2) Thanks you for installing GAE, ENJOY!
    *Installs GAE*
That, or you could just use the standard method of installing.   ;)  Though it never helps to be creative.

modman

  • Guest
Re: GAE Installer
« Reply #6 on: 31 July 2009, 02:09:21 »
I'm pretty sure they are legally obligated to include the terms of use text, though.  I was just mentioning options the user should have.

I looked at InstallJammer and IzPack and I think that InstallJammer would be the better option.  IzPack uses Java, and InstallJammer looks a bit more standard (although screenies would be nice :P).  I also see that InstallJammer has a ton of customizable options as well.  A link to some screenshots is below.

http://installjammer.com/screenshots
« Last Edit: 31 July 2009, 02:23:53 by modman »

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #7 on: 1 August 2009, 11:50:23 »
ALWAYS HAVE LEGAL STUFF! All you really have to say is you are not responsible for any damage caused by the use of this software. Otherwise, it's really only a matter of time before some jackass sues you! No, I'm not kidding, it has happened before. People lose their hard drive, and try to blame it on the last program they used. I dunno if they have any success, but it would be bad publicy for someone to go around trying to sue someone (I doubt a freeware game COULD be sued, especially with a volunteer developement team, but who knows, lawyer I am not).

Hmm, I got to learn how to use these installers. It would come in handy for some future projects of mine to use an installer...
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

Mark

  • Guest
Re: GAE Installer
« Reply #8 on: 4 August 2009, 02:04:09 »
(I doubt a freeware game COULD be sued, especially with a volunteer developement team, but who knows, lawyer I am not).
I would think that most virus writers don't sell their viruses.  :D :P

modman

  • Guest
Re: GAE Installer
« Reply #9 on: 4 August 2009, 02:10:25 »
(I doubt a freeware game COULD be sued, especially with a volunteer developement team, but who knows, lawyer I am not).
I would think that most virus writers don't sell their viruses.  :D :P
Microsoft being the exception; they sell Internet Explorer! :D

Seems I'm the only one that checked out hailstone's links...

-Archmage-

  • Moderator
  • Dragon
  • ********
  • Posts: 5,887
  • Make it so.
    • View Profile
    • My Website
Re: GAE Installer
« Reply #10 on: 4 August 2009, 11:55:36 »
Quote
Quote from: Mark on August 03, 2009, 22:08:57
Quote from: omega on August 01, 2009, 07:55:11
(I doubt a freeware game COULD be sued, especially with a volunteer developement team, but who knows, lawyer I am not).
I would think that most virus writers don't sell their viruses.  Cheesy Tongue
Microsoft being the exception; they sell Internet Explorer! Cheesy

Nice Modman! :D :D :D

Do they really sell IE? :P
Egypt Remastered!

Proof: Owner of glest@mail.com

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,240
    • View Profile
    • http://www.titusgames.de
Re: GAE Installer
« Reply #11 on: 4 August 2009, 11:56:08 »
I would use the "easiest way" to get an installer. Ideally the installer creation is part of the GAE-build process or can be quickly made with a script. By this you will quickly get lots of testers :).
A cross platform one would be very nice too( both you found are ok ).
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #12 on: 12 August 2009, 11:07:47 »
I used InstallJammer to make military's installer. It is a DREAM and is very powerful. While it took me a moment, even for doing something like giving the link on the desktop an icon (since glest, for reasons unknown, does not have an icon on it's exe...) took a moment. However, it is very good, and I think it is the best for glest. I made a very professional looking installer. It also uses the LZMA compression that 7zip uses, so very good filesize (be sure to choose solid compression).

It can also use relative paths to allow you to include it with your source or whatever. Being cross platform, it can do windows, linux, bsd, etc; (didn't see mac on my version, no biggy, since it can also do tarballs and zips). Although I would recommend that you do a separate project for each OS, for simplicity.

If any of you give InstallJammer a shot, I think you'll love it too!
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

hailstone

  • Local Moderator
  • Battle Machine
  • ********
  • Posts: 1,568
    • View Profile
Re: GAE Installer
« Reply #13 on: 18 September 2009, 08:54:30 »
I suggested in another topic that we might be able to use the installer as a tool for downloading mods.

Quote from: InstallJammer documentation
Fetch URL
This action will fetch a given URL from the web and store the result into a file on the local
system. This is useful for downloading pieces of the installer that you don't want to package
up but want to download when the user opts to.
Glest Advanced Engine - Admin/Programmer
https://sourceforge.net/projects/glestae/

daniel.santos

  • Guest
Re: GAE Installer
« Reply #14 on: 18 September 2009, 19:08:52 »
In the end, I think the superior solution would be to have this occur directly from the game.  Take a look at how Battle for Wesnoth manages "addons".  Now don't get me wrong, I look down on the way that add-ons make Wesnoth dog-slow, I'm not into everything they are doing with their architecture.  After you've installed about 10 add-ons, (make sure you get Survival Xtreme) it takes my insanely fast computer about 150 seconds to get through the "reading files and creating cache" (very annoying).  However, I also like the way they abstract out scenarios, campaigns, maps and tech trees (they call them "Eras") and just say that there's "Add-ons" and they may contain any of those components.  In the end, it will require a lot of careful examination and analysis as well as exploration of ideas to do this correctly.

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #15 on: 21 September 2009, 02:58:07 »
I totally agree with daniel. The problem is that all modders use different sites and different methods. This means we would need a direct link to the file, and it would probably have to use a set compression type that glest could handle (ie: zip [ugh]). Sounds complex.

I would consider using installers (I am getting into the habit of using them for all my mods, the few that is ;)). I still stand by using install jammer for the program, as I have some experience with it and it is great.

I never knew about that 'Fetch URL' thing. Must look that up!
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

daniel.santos

  • Guest
Re: GAE Installer
« Reply #16 on: 21 September 2009, 11:58:33 »
Sadly, I don't know much about installers like install Jammer, but it looks quite promising.  Another thing that I would like to do with the next minor version of gae (0.2.13) is include more language support out of the box and maybe even a subset of the most popular maps & tilesets?  I dunno.  Again, I'm starting to think that a centralized repository for installing mods is pretty important to attracting more people to GAE, by making more content available without having to search through forum postings to find them and then find out if they work or not.

As far s the "Fetch URL" thing, if we weren't having to talk about windows, that's as easy as putting "wget http://my.site.com/my/url" in a script.

So as far as being able to download mods from in-game, just get us a nice, XML-configurable GUI setup and the interface to do it wont be too difficult, although there are a lot of steps to perform.  There are 20 gazillion libraries to fetch files off the net (CURL & such).  I'll have to think out how the server end will work, we would probably want to have a simple table in a database that has each mod with the name, version, author(s), filename (on the server), date published, number of downloads, etc. and then a simple php or some such to return a XML document from the web server with that info.  I don't know php, but I know how to do that type of stuff in Java/jsp/servlet, etc. -- which I personally think is a lot of work for just one page.  But we have to work out a scheme for add-ons whereby GAE has some type of registry so it knows what's installed, what version of it is installed, etc.  Then the GAE client can retrieve the list from the server and tell the user what upgrades are available for what is already installed and what add-ons are available to be installed.

I'm personally inclined towards the approach that Wesnoth uses where each add-on has it's own directory and then the directory it has it's maps, tech trees (a.k.a., "Eras"), etc. are added to a search path (ala physfs).  Also, if we do use physfs, we don't even have to unpack the mods, we just keep them in a .zip archive (wont work with tar/gz, tar/bz2, etc., but it does also support .wad, .hog, e.t., a.l.).

I am going to still be focusing most of my time on the networking stuff.  But the GUI needs to be there to make the rest of this feasible, because the current process for creating new GUIs is just too ugly. =(  What I think we need for the new GUI library is a mechanism whereby we generically state (in C++ code) what data fields and operations each GUI interface has.  Then, however the GUI is defined (XML, etc.) it can specify the relationship between the interface code  and the GUI definition, so multiple skins can exist for the same GUI screens and they can be completely different (as long as they still fields for all data and buttons or whatever for all operations).  Sorry for going a bit OT with that, planning out what we want to do and how we're going to do it is important for deciding how much we want the installer to do.  I guess, in the end, I'm not terribly opposed to the installer downloading mods if it's just a matter of downloading them and sticking them in a directory.

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #17 on: 21 September 2009, 22:47:57 »
You know, I COULD probably make a GAE installer for 0.2.12a (the latest, but still no WINDOWS BINARIES) with all the basics (including FPM). I dunno anything about the optional files thing, but I guess I could check how it works. I understand pretty well how InstallJammer works, having made a working installer for military (never released, as its for the final).

I have some experience with PHP and MYSQL, though nothing about programming to get the table values (other than PHP) and my free server doesn't allow me to use MYSQL. :P

I might experiment tonight about installers... Alternatively, I would know how to make a super installer which would have almost all mods included in the download and you could choose which to install, but that would be WAY impractical, since it would be over a gigabyte (perhaps more like 2 or 3?). A basic installer is easy enough. Of course, I dunno about linux. I CAN make installers for linux, but don't know what files to use, and can't test it...

Last problem: all the various things that GAE has. It might be best to see how the fetch URL thing works, and just run a 1 MB program that lets you choose EVERYTHING (including version, OS, languages[?]) and then download that all. Wonder if install jammer can do that? That would DEFINATELY be the best method, and mostly everything needed for GAE is online.
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

hailstone

  • Local Moderator
  • Battle Machine
  • ********
  • Posts: 1,568
    • View Profile
Re: GAE Installer
« Reply #18 on: 22 September 2009, 06:01:29 »
Glest Advanced Engine - Admin/Programmer
https://sourceforge.net/projects/glestae/

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #19 on: 24 September 2009, 16:34:03 »
I took a look at the fetch url. It only gets the ONE file that you look for. It could be very handy as a mass downloader for mods, but even then I'm not sure how well it would be. Especially since It could get ONE archive file, but not extract it...

Old school?
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

hailstone

  • Local Moderator
  • Battle Machine
  • ********
  • Posts: 1,568
    • View Profile
Re: GAE Installer
« Reply #20 on: 25 September 2009, 00:21:25 »
Have a read through the user guide that comes with InstallJammer if you haven't already.

Quote
Unzip File
This action will take a given .zip file that is installed on the target system and unzip it to a
destination directory.

Hopefully should be able to do something like:
1. download repository file
2. add all the mods/urls in the text file to the installer
3. check if mods are already installed
4. user selects mods
5. download mods
6. extract mods
Glest Advanced Engine - Admin/Programmer
https://sourceforge.net/projects/glestae/

Omega

  • MegaGlest Team
  • Dragon
  • ********
  • Posts: 6,167
  • Professional bug writer
    • View Profile
    • Personal site
Re: GAE Installer
« Reply #21 on: 25 September 2009, 22:16:10 »
Heh, I never realized that one! Just what I've needed!

Tested, and I like it. It's also possible to run 7zip from the command line if I included the 7zip with the download (since I must know the link to it). I'll do some experimenting (yay) and see if I can knock off a 0.2.12a installer that can download military optionally.

Known problems: how to present the choices for download?
Ideally, we would have a scroll box with check boxes, but I'm not sure if we can fit in widgets (as they're called) into the message box (which is meant for plain text like liscences). If not, I can make more panes (that is the 'windows' that are advanced to if you click next, etc) that only appear when you specify you want to download other mods. The list at glest.110mb.com/mdc.php should be very handy for the links, and in the future, I want to make the MDC a giant resource that just gets a bunch of XML files for every mod and reads them all, displaying the information for each. The current code is... nasty. Makes it hard to add new ones too.

Of course, if the scrollbars work, then that's all good. Of course, the other problem is that there is so many mods. As well, I'm not sure if there is a way to set a progress bar for fetch file. I never actually tested it on a file from the web. Just a file from a server on my computer, and it was only a few kb, appearing instantly on the desktop where I wanted it. But what about a 400MB file? With no progress bar, it would kind of suck. No way to know if its even working or not... Must look for that too.

EDIT//
It is indeed possible to have a progress bar for downloading via fetch url, though I haven't tried it yet.

ANOTHER EDIT//
I will make the GAE installer for windows for 0.2.12a. The basic installer is done, and I'm trying to think of any new features to add while I wait until I have a chance to upload. I considered having a way to download mods, but they'd have to be in zip format to be properly used, and I can't think of any that are in zip format. Maybe we should start a host for all mods in zip formats so that we could have a 'super downloader' program to download mods and extract them?
« Last Edit: 26 September 2009, 10:33:44 by omega »
Edit the MegaGlest wiki: http://docs.megaglest.org/

My personal projects: http://github.com/KatrinaHoffert

Trappin

  • Ornithopter
  • *****
  • Posts: 447
    • View Profile
    • MegaGlest Map Compendium
Re: GAE Installer
« Reply #22 on: 26 September 2009, 23:08:30 »
Automatic installer and manager of mods for the game S.T.A.L.K.E.R.: Shadow of Chernobyl.

http://www.codeplex.com/SmartModManager

http://sourceforge.net/projects/smart-mod-mgr/

http://www.smart-mod-manager.org/

Can this be adapted for use with Glest? SMM works like a dream with STALKER.

hailstone

  • Local Moderator
  • Battle Machine
  • ********
  • Posts: 1,568
    • View Profile
Re: GAE Installer
« Reply #23 on: 27 September 2009, 01:02:11 »
Any tools should be able to run on at least Linux and Windows. Smart Mod Manager appears to be Windows only. I'm not sure what programming language they're using either.

It looks specific to S.T.A.L.K.E.R. so I don't think it would be easy to adapt.

@Omega: It will be good if we can get the installer working with the build tools so that each time we release it will automatically build the installer too. Can you upload just the InstallerJammer files?
« Last Edit: 27 September 2009, 01:03:49 by hailstone »
Glest Advanced Engine - Admin/Programmer
https://sourceforge.net/projects/glestae/

silnarm

  • Local Moderator
  • Behemoth
  • ********
  • Posts: 1,373
    • View Profile
Re: GAE Installer
« Reply #24 on: 27 September 2009, 01:57:40 »
Any tools should be able to run on at least Linux and Windows. Smart Mod Manager appears to be Windows only. I'm not sure what programming language they're using either.

"Nemerle".  Looks like it tries to be everything to everyone, allows for object oriented, imperative, functional, and meta-programming.  Powerful I'm sure, but what a disgusting mess you would be able to make with this...

I think if we are going to do mod-management, it should have nothing to do with the installer, ideally, it should be built into the game.
Glest Advanced Engine - Code Monkey

Timeline | Downloads