Author Topic: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux  (Read 39258 times)

0 Members and 1 Guest are viewing this topic.

Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Can't included that, non 4/3 resolutions maybe are not looking best but they work, interface is stretched but 3D is not. I'm using one myself. I don't see a reason why user couldn't select that.
I just started it, saw the bad interface, and remembered I read somewhere non-4/3 resolutions were broken. Never really tried to start a mission. It seems the HUD is also distorsioned but everything else works fine. I will remove it.


About the patch it was never meant to run fs2_open in an unix matter (data in shared, binary in bin) because I actually never though that someone is packaging fs2_open in such manner. You're the second person pointing me such solution during last week. Definitely will patch it one way or another to support such solution.
Actually setting up the dir structure like that is something I didn't think would work yet.  That's interesting if it does already.
It works if:
- You start fs2_open being in /usr/share/fs2_open
Not pretty. But users are supposed to start it from a menu entry (or a launcher) anyway, not from console. And the .desktop format of menu entries allows to specify the PWD ("Path" entry from http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s05.html)
- You make a even uglier patch to fs2_open itself so it calls chdir(DATADIR) at start.

 

Offline Iss Mneur

  • 210
  • TODO:
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Actually setting up the dir structure like that is something I didn't think would work yet.  That's interesting if it does already.

You know, I had another user that pointed me to a structure where data dir (main fs2_open files) are in a completely different dir then some mods. Didn't sit to it yet but I hope i will soon testing what can work and what can't and update yal accordingly to support all those solutions.

fs2_open honours the current working directory on linux and OSX so splitting the binary and the game data is trivial to do. 

Unfortunately, windows binaries force the current working directory to be the directory that the binary itself is in.  As such, splitting the binary and game data on windows is currently impossible. 

Specifically why this is done only on windows, I have no idea, though I assume it was a work around for badly setup shortcuts or the launcher not changing working directories. That is, the shortcut on windows did not set the working directory (which it doesn't by default) to the location of the binary, but instead set the working directory to the directory that the shortcut is in (this is default behaviour if the shortcut does not specify "Start in:" in the shortcut properties window).  It could also a result of the windows launcher not changing the working directory correctly when launching fs2_open (ie. it is the launcher's shortcut that was messed up (because fs doesn't have a shortcut by default)).

As a side note, fred2_open is also affected by this, and a believe that the windows launcher is does the same thing (uses the location of the binary as the place to look for the fs2_open binary to run).

This is a "feature" that I plan on fixing as part of my patchsets for fs2_open interoperability with wxLauncher.

Because this was posted while I was writing:
- You make a even uglier patch to fs2_open itself so it calls chdir(DATADIR) at start.

This is not actually necessary, as cfile (the fs2_open resource loader) is more than capable of loading from an arbitrary directory it just doesn't, nor is their a way to tell fs2_open where its data dir is.

Also, that "hack" will fail horribly on windows, as cmdline.cpp code is called exactly the same on all platforms.
"I love deadlines. I like the whooshing sound they make as they fly by." -Douglas Adams
wxLauncher 0.9.4 public beta (now with no config file editing for FRED) | wxLauncher 2.0 Request for Comments

 

Offline Havner

  • 26
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
It works if:
- You start fs2_open being in /usr/share/fs2_open
Not pretty. But users are supposed to start it from a menu entry (or a launcher) anyway, not from console. And the .desktop format of menu entries allows to specify the PWD ("Path" entry from http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s05.html)

That I know but wouldn't like to rely on .desktop file here.

Quote
- You make a even uglier patch to fs2_open itself so it calls chdir(DATADIR) at start.

Didn't check the original code of fs2_open here but if it doesn't change pwd itself yal does that:

Code: [Select]
void MainWindow::on_qpbRun_clicked()
{
    on_qpbApply_clicked();

    /* if GAMEDIR is currentPath this does nothing, so its safe */
    System::chDir( FILEPATHS.getGameDir() );
    System::run( SETTINGS.getExeFilePath() );
}
« Last Edit: May 22, 2010, 11:31:54 am by Havner »
Need a linux launcher? Check here.

 
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Is it possible to select multiple mods wit the launcher?

Cuz as it seem i can only select one at a time in the mod section.

 

Offline Havner

  • 26
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Is it possible to select multiple mods wit the launcher?

Cuz as it seem i can only select one at a time in the mod section.

It's not. Is it with the official launcher? I don't think so. It's not difficult to do, but could create problems.

What should be their order? What should be the order of primary and secondary lists of them? I don't think such situation is defined by fs2_open policy in general.
Need a linux launcher? Check here.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Well, as it currently stands, if you select a mod, and that mod has its own Primary/Secondary, those are ignored by the launcher.  So, if you could select multiple mods, simply offer a sortable list to select.  Only load the Primary and Secondary of the top mod, and consider all other selected mods to be in the middle.  Unless in the primary/secondary of the top mod.  Or even still.  That'd be the only really ambiguous part.
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

 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Hi, New here.

Sorry if this is not the correct place to ask this, but here goes...

When trying to run the Linux binary of YAL_0.3-RC2, I get error messages
to the affect that various libraries are the wrong (to the old) versions.
e.g. s2_open_3_6_10: error while loading shared libraries: libdirectfb-1.0.so.0: cannot open shared object file: No such file or directory
CRITICAL: Cannot open flags.lch file.

I tried creating symlinks from my (Kubuntu 10.04 LTS 64bit) system's version-1.2 libraries.
This let's me (at first) step through the subsequent library not found messages until
eventually I am halted by an error complaining of the wrong ELFCLASS.
"yal-0.3-rc2-bin/fs2_launcher/home/me/yal-0.3-rc2-bin/fs2_launcher: error while loading shared libraries: libfusion-1.0.so.0: wrong ELF class: ELFCLASS64"

Yes, I have tried compiling it from the svn... no joy there either.
--------------------------------------------
:~/yal/trunk$ make
make -f Makefile.Release
make[1]: Entering directory `/home/me/yal/trunk'
/usr/bin/uic-qt4 ui/MainWindow.ui -o ui_MainWindow.h
make[1]: /usr/bin/uic-qt4: Command not found
make[1]: *** [ui_MainWindow.h] Error 127
make[1]: Leaving directory `/home/me/yal/trunk'
make: *** [release] Error 2====================
-----------------------------------------

Some sort of missing qt4 development libraries I'm assuming, but which?

Can/will anyone help?
Should I post somewhere else?

TIA,

Lance

 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Compile issue Solved:
OK, kept at it and after installing the qt4, SDL & OpenAL libs
was able to successfully compile!

Uh, one issue remaining, I think.
Under the radio button "Features" is a drop-down menu "Easy setup".
Shouldn't there be something under that drop-down menu?

On mine there isn't.

I'll go hunting for the common/recommended settings to be manually entered in there,
but I would like to get this working too if I can.

Also, there is nothing under Speech. Everything is grayed out.
It says, "Speech API 5.1 not installed in the box, though I have no idea if this is even available for Kubuntu/Linux.

Lance
« Last Edit: June 12, 2010, 02:30:35 pm by Lance »

 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
I've hunted down the command line flags and entered them manually.
However, they are not saved.
After closing and reopening YAL, the flags are gone including the chosen MOD.

What's up with that?

Lance

 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Here's another update.

Everything seems to be working.
Don't know what fixed it, but I'm happy it's fixed.

At first the game wouldn't launch, complaining about not finding those 1.0 libraries.
So, I tried creating symlinks to the existing 2.0 libs and just named the links 1.0.
That worked!

The only issue that I seem to have left is with the joystick.
It works, but it's as though it's not calibrated.
I it is calibrated using the Kubuntu -> System Settings -> Keyboard & Mouse (& other input devices) app.

If anyone has any ideas, or solutions I'd like to hear (read) them.
I'm spending way too much time on this.

Lance


 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Here we are again.

I tried this solution:
http://superuser.com/questions/17959/linux-joystick-seems-mis-calibrated-in-an-sdl-game-freespace-2-open

But, that didn't work for me until I disabled the second monitor in my two display setup,
then restarted the X server.

Now, with only one display(monitor) the joystick works correctly.

OK, I know I have digressed from the launcher issue, so I will take this thread/issue else were.

Thanks for caring.

Lance

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
There were multiple solutions there, which one did you perform?
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

 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
I tried the quickest one. I set the environment variable: SDL_JOYSTICK_DEVICE=/dev/input/js0.
This had no effect. I confirmed that by un-setting the variable after going to one monitor.

All three solutions do essentially the same thing though--force SDL to use /dev/input/js0 instead of, /dev/input/event*.

Lance


 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Assuming that they all actually did work.  But you could try the deletion one (or rename/backup just in case) just to make sure.
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

 

Offline Lance

  • 23
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Assuming that they all actually did work.  But you could try the deletion one (or rename/backup just in case) just to make sure.

Well, I could, but let's see, if I have one monitor (like most people) my joystick works perfectly in FS2_Open.

If I add another monitor to my setup, my joystick acts as though it is not calibrated in FS2_Open.

Therefore you think the problem may be due to which device file SDL is looking for?
However, if I use an environment variable said to point SDL to the correct device file it has no effect (no surprise there).

I think it is quite clear that the SDL device handling is not my problem.
I only tried the SDL environment variable solution because I no other ideas.
When that didn't work I went looking for another cause, and found one--my multi-monitor setup.

If the problem was due to SDL device handling then it would still be there when I use only one monitor.
Note that the referenced post said nothing about a mult-monitor setup.

I do thank you for your interest in my issue though.

Lance


 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Well I wondered if maybe it's a related issue, like the monitor's existence somehow messes with env vars or something else strangely bizarre but still related to the original post's solutions.
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

 

Offline Crakem

  • 20
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Actually setting up the dir structure like that is something I didn't think would work yet.  That's interesting if it does already.

You know, I had another user that pointed me to a structure where data dir (main fs2_open files) are in a completely different dir then some mods (or at least that's the way I understood it). Didn't sit to it yet but I hope i will soon testing what can work and what can't and update yal accordingly to support all those solutions.
We are talking about it here: http://bugs.gentoo.org/show_bug.cgi?id=107081

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
As I'm now the head of the SCP, I find this gentoo bug intriguing.  Especially that they've even created some code patches that I don't believe were ever passed upstream.
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

 
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
Hi,

I am one of the guy on the gentoo bugzilla that is trying to make SCP run on its system by using the ebuilds currently available. I am the one that can't make run the TBP package :(.

Have you ever consider resorting on a file in /etc, /var or /usr/share/fs2_launcher to hold the location of the various "instances" directory of FSO (Freespace Open) on the machine.

I am calling instances, the official FSO SCP and any total conversion.

Example:

Thanks to the package currently available for gentoo, the available instances are currently located in:

/opt/babylon --> The Babylon Project
/opt/freespace2  --> Freespace2 retail version + mediavps

The file we can name /etc/yal.dat could be structured this way:

<fso_instance1>=<location>
<fso_instance2>=<location>

In the above example that would give:

babylon=/opt/babylon
freespace2=/opt/freespace2

It would be then the responsibility of the root user or the packages for the distro to manage that file and update it each time an FSO instance is installed or removed.

YAL, based on that file, could display the list of available instances and search for the mods available for the selected instance. This would allow the launcher to be started from any location and you could have one directory in the home directory of the user with one subdirectory for each instance.

example:

If the user is called kenny:

/home/kenny/
             .fs2_launcher/
                        babylon/
                        freespace2/

What do you thing, did you see any constraint preventing this design from working?
Luke, use the F.O.S.S.!!!

 

Offline Havner

  • 26
Re: [RELEASE] Yet Another Launcher 0.3 RC2, fully functional for windows and linux
There is no reason why you can't put separate TCs in /opt now with multiple personalized YAL builds. The thing is that what you are asking me about right now is feature request to extend YAL to handle multiple instances with one launcher binary outside of game data dir (with some sort of UI to choose it from?). Am I reading this right?

I have some plans for expanding the launcher maybe with similar functionality but I don't think it will happen soon. I'm kinda happy with the functionality it has now. I like to have it personalized for specific TC with different graphics in launcher itself.

Also I don't get what the launcher directories in ~/.fs2_launcher would be used for?
Need a linux launcher? Check here.