OUTDATED, new release here:
http://www.hard-light.net/forums/index.php?topic=68413.0===========================================================
svn://vega.livecd.pl/yal/trunk
----------------------------------------
Yes, I know there is going to be new portable launcher for 3.7 and I know about old Linux GTK based but it wasn't portable, had less functionality and the download seems to be lost.
In general it drove me crazy that we don't have anything nice for Linux now. So I started to write a new launcher with two assumptions:
- copy look&feel&functionality from the windows one
- make it as much portable as possible
(using QT4, splitting non-portable code to platform specific files, etc), this way maybe one day (if 3.7 will get delayed) we could have one coherent 3.6.x launcher for all platforms with one code base (but still much remains to achieve that).
This is the first public version. For now it works only on Linux (though I think it should run on Mac OS X with minor changes), and only first 3 tabs (Welcome/Features/MOD) are implemented, but still it allows Linux people to select flags/mods in convienient way, no more command line or editing cmdline_fso.cfg by hand.
Enjoy :-) and make sure to read README.
If someone would like to help with its development (f.e rewriting some windows specific things when I'll make GUI for the rest of the tabs) send me a note.
More screenshots:
http://vega.livecd.pl/~havner/yalYet Another Launcher.
FreeSpace 2 portable launcher.
1. Linux
Before you start you need to let the launcher know where your game is
located. This is hardcoded compile time. This way we can have the
launcher anywhere we want, f.e. in some bin/ dir and it will still work.
To do this edit src/unix/FilePaths_unix.cpp and modify GAMEDIR define.
You can uncomment the top most GAMEDIR define as well. In such case the
launcher will behave like windows one, it assumes that game is in its
current run directory and ignore any compile time paths.
If you want to have browser functionality you need to define BROWSERCMD
in src/unix/System_unix.cpp. You can leave as it is now and f.e. make
some browser script like I do and put it inside PATH dir:
#!/bin/sh
exec firefox "@"
Launcher requires QT4. Probably 4.2 or even 4.3 (I think I did use
some 4.2 functions, maybe even 4.3).
If you want to compile launcher for another game edit your yal.pro file
and ucomment _one_ of the CONFIG lines at the top of it.
To compile type:
./autogen.sh
make
If everything went fine you should have fs2_open/btrl_demo/tbp/wcsaga
binary in the current dir. Put it anywhere you want (if you compiled
with hardcoded GAMEDIR). To the game dir, to some bin/ dir included in your
PATH. You can rename it as well.
Make sure you DON'T have GAMEDIR/data/cmdline_fso.cfg file. FS2_open
merges flags from system wide and user wide files so if you do have
one all flags from it will be forced and yal won't reflect this in
features tab. Handling this is in TODO.
3. Windows
Yal for windows is distributed in binary form.
Put the appriopriate launcher to game dir and run from there.
You can put all the dll's to some System32 windows dir or just keep them
in current dir.
If you want to recompile windows version you need MinGW and GPL version
of QT. Basically its done the same way as for Linux: qmake; make;
3. MacOSX
Coming soon...
4. Common
For now launcher uses the following files:
1. ~/.fs2_open/launcher6.ini
2. ~/.fs2_open/data/cmdline_fso.cfg
3. GAMEDIR/MOD/mod.ini
4. TEMPDIR/flags.lch
ad 1. This file is read on start if it exist. If it contains proper
exe_filepath the latter is executed inside temporary dir and flags
are read from flags.lch (ad 4).
ad 2. If launcher6.ini does not exist or does not contain game_flags or
they are empty there is an attempt to read cmdline_fso.cfg to fill
initiall flags.
ad 3. This file is read from inside the active_mod dir or any other dir
selected using GUI. Including game root dir used when actual mod name
is empty.
yal-0.1.3
- windows version of launcher
- better unix/win code separation
- cosmetics
yal-0.1.2
- small bugfixes
- seperate resource files and target names for all launchers
- GAMEDIR can be current dir to behave like windows launcher
- new Select MOD dialog window
yal-0.1.1
- small bugfixes
- project file included
yal-0.1
- Initial release
For full changelog see 'svn log'.