Author Topic: RELEASE: FreeSpace Open Installer, v2.3.5  (Read 377663 times)

0 Members and 1 Guest are viewing this topic.

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
RELEASE: FreeSpace Open Installer, v2.3.5
Announcing version 2.3.5 of the FreeSpace Open Installer!

DOWNLOAD

The Installer requires Java 1.5 or higher, which is supported on all Windows platforms from Win98SE through 10, as well as OSX, Linux, and many other systems.

You can also download a Windows EXE application, created using Launch4J.

Features:
  • Installs FreeSpace 2! *
  • Installs OpenAL, FSO, and the MediaVPs!
  • Installs multiple mods in parallel!
  • Support for multiple languages! **
  • Extracts files from .zip, .7z, .rar, and any format supported by 7zip!
  • Automatic hash validation (MD5, SHA-1, or SHA-256) of downloaded files!
  • Can connect through a proxy!
  • And much, much more!

* To install FS2 using the FSO Installer, you will need the FreeSpace 2 setup package from GOG (i.e. setup_freespace2_2.0.0.8.exe).  (Capability to install from the FS2 CDs may be added in a future version.)  The Installer uses InnoExtract to copy the files from the package to the game directory.  This provides a true cross-platform capability for automatically installing FreeSpace 2.

** Currently supported languages are English, Spanish, Portuguese, German, French, and Hungarian.  Post on this thread if you'd like to contribute an additional translation.


Important Note: The Installer depends on mod authors to add their mods to its repository.  If you don't see your favorite mod listed in the installer, bug the mod author to add it!  Or post in this thread, and maybe some generous soul will help get the mod added.

Important Note 2: If you'd like to return the Installer to "factory default settings" (for example, if you want the Installer to forget about all the mods it's installed), delete the fsoinstaller.properties file in your profile folder.  On Windows, your profile folder is something like C:\Users\<username>.
« Last Edit: March 17, 2023, 10:25:48 pm by Goober5000 »

 

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
Most users will simply run the jar directly, but there are a few command-line options available for power users:

  • Set the maximum number of parallel downloads using the option -DmaxParallelDownloads=X, where X is any number >= 1.  Example: java -DmaxParallelDownloads=2 -jar FreeSpaceOpenInstaller.jar.
  • Set the connection timeout using the option -DconnectionTimeout=Y, where Y is a number of milliseconds >= 0.  Setting to 0 indicates an infinite timeout.  Example: java -DconnectionTimeout=30000 -jar FreeSpaceOpenInstaller.jar.
  • Validate an existing install txt file using the option validate.  Example: java -jar FreeSpaceOpenInstaller.jar validate [file].  If you omit the file on the command line, the Installer will prompt you for it using a standard GUI file dialog.
  • Test an existing install txt file using the option test.  This works just like validation (see previous item) but it runs through the entire installation process.
  • Compute a MD5, SHA-1, or SHA-256 hash of any file using the option hash.  Example: java -jar FreeSpaceOpenInstaller.jar hash [algorithm] [file].  If you omit the file on the command line, the Installer will prompt you for it using a standard GUI file dialog.
    • You can now hash multiple files at once.  Either specify them all on the command-line or keep selecting them using the file dialog (until you click Cancel).
    • Use hash-stdout to print the information to standard output instead of the logger.  This makes for easier automated parsing for build scripts and such.
  • Create a binary diff using the option diff, which can later be used for the PATCH token.  Example: java -jar FreeSpaceOpenInstaller.jar diff [algorithm] [file1] [file2].  If you omit any of the parameters, the Installer will prompt you for them.  Currently implemented algorithms are itadaki_bzip2, java_gzip, and xz.
  • Test patching a file using the option patch.  Example: java -jar FreeSpaceOpenInstaller.jar patch [source file] [diff file].  If you omit any of the parameters, the Installer will prompt you for them.
« Last Edit: September 19, 2017, 12:36:22 pm by Goober5000 »

 

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
File Hosting Options

The Installer can only download files from a host that allows hotlinking, which rules out many of the more famous file hosting options.  (Sites like MediaFire have anti-bot countermeasures which the Installer is unable to overcome.)  The following sites have been generously provided by members of the HLP community for the purposes of supporting mod downloads:

  • FreeSpace Files - Managed by Hunter; PM him for more information.
  • FreeSpaceMods - Managed by achtung; PM him for more information.  At the moment, the vast majority of mod files accessed by the FSO Installer are hosted here.
  • ngld's server - Managed by ngld; PM him for more information.

The Installer will randomly select a mirror from all hosts listed in a MULTIURL tag.  If one host is down, it will try again from the remaining hosts.  Assuming all hosts are running and accessible, the bandwidth load will be evenly spread among them.  Therefore if FSMods is your only mirror, you would be doing achtung a huge favor by adding additional mirrors to lighten his load.
« Last Edit: May 27, 2017, 05:31:59 pm by Goober5000 »

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: RELEASE: FreeSpace Open Installer, v2.1
Is fsoinstaller.com safe and hooked up to this?

 

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
Yup!

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: RELEASE: FreeSpace Open Installer, v2.1
Bah.. I was trying to poke you on IRC for one small change I think you should make.

When hash verification fails, it deletes the file and notifies the user that the failed file was deleted. I was thinking it would be prudent to change that from "failed file deleted" to "failed file deleted, if problem persists please contact the mod creator" or something. One of the BtA Demo files failed hash verification because I wrote it wrong in the installer.txt but didn't realize it until I tested it myself just recently.

EDIT: Used it for the first time on my real install directory instead of a test directory... it correctly ensured that my MediaVPs were up-to-date and installed correctly. It also successfully downloaded and installed some other mods with no problems. In short, it works! This should be highlighted.

Also, it might be a good idea at some point to force sub-installs (options that require parent installation first) to be forced to wait to download until the parent is green-lighted. Being in Google Fiber, I set my max concurrent downloads to 10, which instantly failed all of FSPort because the parent hash was still calculating.
« Last Edit: May 11, 2014, 01:17:48 am by mjn.mixael »
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline headdie

  • i don't use punctuation lol
  • 212
  • Lawful Neutral with a Chaotic outook
    • Minecraft
    • Skype
    • Twitter
    • Headdie on Deviant Art
Re: RELEASE: FreeSpace Open Installer, v2.1
Awesome stuff Goober, FYI posted the great news to Reddit and Facebook
Minister of Interstellar Affairs Sol Union - Retired
quote General Battuta - "FRED is canon!"
Contact me at [email protected]
My Release Thread, Old Release Thread, Celestial Objects Thread, My rubbish attempts at art

 

Offline m!m

  • 211
Re: RELEASE: FreeSpace Open Installer, v2.1
The downloaded bytes status text annoyed me because it was showing the raw byte number so I changed it to display a string which should be easier to read. Patch is attached.

I am also adding strings for a German translation but that could take a while...

EDIT: And done, see attached file

[attachment deleted by an evil time traveler]
« Last Edit: May 11, 2014, 12:42:16 pm by m!m »

 

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
When hash verification fails, it deletes the file and notifies the user that the failed file was deleted. I was thinking it would be prudent to change that from "failed file deleted" to "failed file deleted, if problem persists please contact the mod creator" or something. One of the BtA Demo files failed hash verification because I wrote it wrong in the installer.txt but didn't realize it until I tested it myself just recently.

Okay, I'll add something along these lines.

Quote
EDIT: Used it for the first time on my real install directory instead of a test directory... it correctly ensured that my MediaVPs were up-to-date and installed correctly. It also successfully downloaded and installed some other mods with no problems. In short, it works! This should be highlighted.

Great! :)

Quote
Also, it might be a good idea at some point to force sub-installs (options that require parent installation first) to be forced to wait to download until the parent is green-lighted. Being in Google Fiber, I set my max concurrent downloads to 10, which instantly failed all of FSPort because the parent hash was still calculating.

Child installations already wait for parent installations to finish, so this might be a different problem.  I guess I'll need to see your log files.


The downloaded bytes status text annoyed me because it was showing the raw byte number so I changed it to display a string which should be easier to read. Patch is attached.

I am also adding strings for a German translation but that could take a while...

EDIT: And done, see attached file

Thanks!  I've updated the download sites with the new translation.  I've added the bytes patch to the code, but I'll wait to update the build with that until I address the things MjnMixael noticed.

 

Offline fightermedic

  • 29
  • quite a nice guy, no really, i am
Re: RELEASE: FreeSpace Open Installer, v2.1
very nifity, having this installer in a working shape should benefit this community a lot
>>Fully functional cockpits for Freespace<<
>>Ships created by me<<
Campaigns revised/voice-acted by me:
Lightning Marshal 1-4, The Regulus Campaign, Operation: Savior, Operation: Crucible, Titan Rebellion, Fall of Epsilon Pegasi 1.1Aftermath 2.1,
Pandora's Box 2.2, Deep Blood

Other Campaigns I have participated in:
The Antagonist, Warzone, Phantoms & Echo-Gate

All the stuff I release is free to use or change in any way for everybody who likes to do so; take whatever you need

 

Offline Rodo

  • Custom tittle
  • 212
  • stargazer
    • Minecraft
    • Steam
Re: RELEASE: FreeSpace Open Installer, v2.1
Awesome work Goob!
Now we can direct ppl directly to the installer and be done with the complex installing instructions  :)
el hombre vicio...

 

Offline est1895

  • 28
Re: RELEASE: FreeSpace Open Installer, v2.1
Good Job Goober!  :yes: :yes: :yes:

What if you have Freespace 2 on cd's?  Is it better to buy the gog.com version?

  

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
It's not "better", per se.  But the difference is that InnoExtract provides a cross-platform way to install from GOG files, whereas I am not aware of a cross-platform way to install from the CDs.

 

Offline niffiwan

  • 211
  • Eluder Class
Re: RELEASE: FreeSpace Open Installer, v2.1
I've given the latest version a spin on Linux now. Looking very good, with only a couple of minor issues :)

1) OpenAL says that it's not detected on this computer, but it is installed. I'm not sure if you have OS specific detection routines for this or not, this is a *reasonably* Linux distribution independent way of checking if the library is installed:
Code: [Select]
$ ldconfig -p | grep openal
(any STDOUT means it's installed)

Having said that, building from source requires OpenAL to be installed anyway, so maybe the check could simply be re-worded to say "If you don't build FSO from source, check that you have the OpenAL libraries installed".

2) The .OGG cutscenes are installed correctly, but the "custom install" selection page doesn't detect this. i.e. it's always available as an install option
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
Version 2.1.1 is now up, with the following changes:

  • add m!m's human-readable byte count patch
  • fix a bug where the installer did not properly distinguish between two mods with the same name
  • fix a bug where 7z files smaller than the buffer size of 8192 bytes (of which MV_RadarIcons is the only known example) were not properly extracted
  • add additional help text on hashing, as suggested by MjnMixael


Code: [Select]
$ ldconfig -p | grep openal
libopenal.so.1 (libc6,x86-64) => /usr/lib64/libopenal.so.1
libopenal.so (libc6,x86-64) => /usr/lib64/libopenal.so

Having said that, building from source requires OpenAL to be installed anyway, so maybe the check could simply be re-worded to say "If you don't build FSO from source, check that you have the OpenAL libraries installed".

Hmm.  The test is supposed to be system-agnostic:

Code: [Select]
System.loadLibrary("OpenAL32");
Maybe the library name is different on Linux?

Quote
2) The .OGG cutscenes are installed correctly, but the "custom install" selection page doesn't detect this. i.e. it's always available as an install option

The installer does have the minor problem that mods you've installed without using the installer are not marked as installed in the list.  It's hard to fix that without actually running through the installation procedure for every single mod.
« Last Edit: May 12, 2014, 11:13:04 pm by Goober5000 »

 

Offline niffiwan

  • 211
  • Eluder Class
Re: RELEASE: FreeSpace Open Installer, v2.1
Code: [Select]
$ ldconfig -p | grep openal
libopenal.so.1 (libc6,x86-64) => /usr/lib64/libopenal.so.1
libopenal.so (libc6,x86-64) => /usr/lib64/libopenal.so

Having said that, building from source requires OpenAL to be installed anyway, so maybe the check could simply be re-worded to say "If you don't build FSO from source, check that you have the OpenAL libraries installed".

Hmm.  The test is supposed to be system-agnostic:

Code: [Select]
System.loadLibrary("OpenAL32");
Maybe the library name is different on Linux?

Yeah, I'm pretty sure it's called "libopenal.so" (hopefully that's consistent across distros...) which I believe means you want this call on Linux, and maybe OSX:

Code: [Select]
System.loadLibrary("openal");
Quote
2) The .OGG cutscenes are installed correctly, but the "custom install" selection page doesn't detect this. i.e. it's always available as an install option

The installer does have the minor problem that mods you've installed without using the installer are not marked as installed in the list.  It's hard to fix that without actually running through the installation procedure for every single mod.

That makes sense.  But I did install the movies via the installer (twice!), and it still didn't think that they were installed :) ( I don't know if it actually re-downloaded them, or if it just checked the files that already existed).
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline mjn.mixael

  • Cutscene Master
  • 212
  • Chopped liver
    • Steam
    • Twitter
Re: RELEASE: FreeSpace Open Installer, v2.1.1
Latest install perpetually says it's out-of-date?

EDIT: Downloading from this thread gave me the latest version while the auto-download from the installer did not? I dunno, something weird.

Quote
2) The .OGG cutscenes are installed correctly, but the "custom install" selection page doesn't detect this. i.e. it's always available as an install option

The installer does have the minor problem that mods you've installed without using the installer are not marked as installed in the list.  It's hard to fix that without actually running through the installation procedure for every single mod.

That makes sense.  But I did install the movies via the installer (twice!), and it still didn't think that they were installed :) ( I don't know if it actually re-downloaded them, or if it just checked the files that already existed).

I noticed that too and did both... but I decided it was too minor to worry about.
« Last Edit: May 12, 2014, 01:17:43 am by mjn.mixael »
Cutscene Upgrade Project - Mainhall Remakes - Between the Ashes
Youtube Channel - P3D Model Box
Between the Ashes is looking for committed testers, PM me for details.
Freespace Upgrade Project See what's happening.

 

Offline Goober5000

  • HLP Loremaster
  • 214
    • Goober5000 Productions
Re: RELEASE: FreeSpace Open Installer, v2.1
Yeah, I'm pretty sure it's called "libopenal.so" (hopefully that's consistent across distros...) which I believe means you want this call on Linux, and maybe OSX:

Code: [Select]
System.loadLibrary("openal");

Okay, try this temp build:
http://staff.hard-light.net/goober5000/FreeSpaceOpenInstaller.jar

Quote
That makes sense.  But I did install the movies via the installer (twice!), and it still didn't think that they were installed :) ( I don't know if it actually re-downloaded them, or if it just checked the files that already existed).

Pbthht.  Can you send me your logs directory?


Latest install perpetually says it's out-of-date?

EDIT: Downloading from this thread gave me the latest version while the auto-download from the installer did not? I dunno, something weird.

Guh.  I uploaded to the wrong subdirectory in one of the mirrors.  Fixed.

 

Offline niffiwan

  • 211
  • Eluder Class
Re: RELEASE: FreeSpace Open Installer, v2.1.1
Here's a fresh logs directory: http://www.mediafire.com/download/fht343420zw77aa/fsoi-logs.7z

This was using your new jar linked above.  Unfortunately it still complained about OpenAL32, and I'm not sure if CloudFlare/my ISP is playing funny games with caching content or something since the 1st download via browser was suspiciously fast (I resorted to downloading it with wget --no-cache in the end, which took about the right amount of time but didn't get rid of the OpenAL warning).

Anyway, aside from that this was a fresh/empty FSO dir, I ignored the warning about not finding a FS2 install, then custom downloaded just the movies 3x times. Let me know if you want anything else.
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: RELEASE: FreeSpace Open Installer, v2.1.1
I believe there was some C code for a program that could extract the setup file type used on the FS2 CD media.  I can't recall the type or name of the program though right now but I'll see what I can find.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays