Proof: Oolite Linux 1.91 unresponsive
Moderators: winston, another_commander, Getafix
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Proof: Oolite Linux 1.91 unresponsive
So what I labelled as Oolite Linux potentially unresponsive (stuck, crashed) is actually a completely unresponsive setup - especially for new users.
To run into this pitfall, follow these instructions:
1) Install Ubuntu Linux 22 LTS Desktop on a physical or virtual machine (VirtualBox is sufficient) - just a default installation. No artwork required.
(Hint: If you do not want to reinstall everything, at least make sure the $HOME/.Oolite directory does not exist, as it would on a freshly installed machine)
2) Download the Oolite Trunk 1.91 installer
3) Execute the installer.
4) When searching for the Oolite application, you will see an Oolite-Trunk icon. Click it.
Oolite will not appear.
I tried to cover this with PRs. Just let me know if you see issues of getting them merged:
https://github.com/OoliteProject/oolite/pull/432
https://github.com/OoliteProject/oolite ... ies/pull/2
To run into this pitfall, follow these instructions:
1) Install Ubuntu Linux 22 LTS Desktop on a physical or virtual machine (VirtualBox is sufficient) - just a default installation. No artwork required.
(Hint: If you do not want to reinstall everything, at least make sure the $HOME/.Oolite directory does not exist, as it would on a freshly installed machine)
2) Download the Oolite Trunk 1.91 installer
3) Execute the installer.
4) When searching for the Oolite application, you will see an Oolite-Trunk icon. Click it.
Oolite will not appear.
I tried to cover this with PRs. Just let me know if you see issues of getting them merged:
https://github.com/OoliteProject/oolite/pull/432
https://github.com/OoliteProject/oolite ... ies/pull/2
Last edited by hiran on Tue Jul 11, 2023 9:32 pm, edited 1 time in total.
Sunshine - Moonlight - Good Times - Oolite
Re: Proof: Oolite Linux 1.91 unresponsive
I'm pretty sure that last link is broken.hiran wrote: ↑Tue Jul 11, 2023 8:17 pmI tried to cover this with PRs. Just let me know if you see issues of getting them merged:
https://github.com/OoliteProject/oolite/pull/432
https://github.com/OoliteProject/oolite ... ies/pull/2
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
Fixed...Switeck wrote: ↑Tue Jul 11, 2023 9:13 pmI'm pretty sure that last link is broken.hiran wrote: ↑Tue Jul 11, 2023 8:17 pmI tried to cover this with PRs. Just let me know if you see issues of getting them merged:
https://github.com/OoliteProject/oolite/pull/432
https://github.com/OoliteProject/oolite ... ies/pull/2
Sunshine - Moonlight - Good Times - Oolite
- Stormrider
- Deadly
- Posts: 241
- Joined: Sat Jan 25, 2014 2:35 am
- Location: At work
Re: Proof: Oolite Linux 1.91 unresponsive
I can confirm this behavior on
Mint 20.3
. When I run the sh file in terminal I get this output:
Code: Select all
./oolite.app/oolite: error while loading shared libraries: libgnustep-base.so.1.28: cannot open shared object file: No such file or directory
home/GNUstep/Applications/Oolite/oolite.app
and look at the properties of the oolite
file it claims to be a shared library (application/x-sharedlib) not an executable file.- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
We have two different problems here. Currently I am ignoring the shared library problem. What I am focusing at is the consequence: the user, having started Oolite does not see anything. I believe either he should see the game or an error message.Stormrider wrote: ↑Wed Jul 12, 2023 1:27 pmI can confirm this behavior onMint 20.3
. When I run the sh file in terminal I get this output:When I look inCode: Select all
./oolite.app/oolite: error while loading shared libraries: libgnustep-base.so.1.28: cannot open shared object file: No such file or directory
home/GNUstep/Applications/Oolite/oolite.app
and look at the properties of theoolite
file it claims to be a shared library (application/x-sharedlib) not an executable file.
Did you try to modify the scripts according to my PRs? Do you think it is a valid improvement?
Sunshine - Moonlight - Good Times - Oolite
- Stormrider
- Deadly
- Posts: 241
- Joined: Sat Jan 25, 2014 2:35 am
- Location: At work
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
Thank you for confirmation. Actually there is no need to recompile the project just to modify some scripts. But we can do it differently.
I will soon merge the pull requests, and then the project will get compiled by GitHub automatically.
If after that you can just test again and confirm the behaviour is the intended one I will be happy already.
Sunshine - Moonlight - Good Times - Oolite
-
- ---- E L I T E ----
- Posts: 675
- Joined: Sat Aug 09, 2014 4:16 pm
Re: Proof: Oolite Linux 1.91 unresponsive
I tested, similarly, in a VM on xubuntu 22.04 live iso.
True, no reaction while trying to start it from the GUI.
One notice/correction though, the (original) startup script doesn't remain stuck (together with its shell and cat command) when started from GUI. It seems that the "interactive" section only happens when the startup shell is in a terminal. When either starting the script from a terminal, or checking the "Run in terminal" checkbox for the GUI launch, the script remains stuck in the "Press Ctrl-C [...]" message.
By inserting a just after the then statement in the displays the notification, and also closes the script run.
I didn't try with the double wrapper solution in the PR.
True, no reaction while trying to start it from the GUI.
One notice/correction though, the (original) startup script doesn't remain stuck (together with its shell and cat command) when started from GUI. It seems that the "interactive" section only happens when the startup shell is in a terminal. When either starting the script from a terminal, or checking the "Run in terminal" checkbox for the GUI launch, the script remains stuck in the "Press Ctrl-C [...]" message.
By inserting a
Code: Select all
LD_LIBRARY_PATH= notify-send "Bang!"
Code: Select all
if [ $? != 0 ]
I didn't try with the double wrapper solution in the PR.
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
Yes, that is the issue I'm trying to address.Commander_X wrote: ↑Wed Jul 12, 2023 8:28 pmI tested, similarly, in a VM on xubuntu 22.04 live iso.
True, no reaction while trying to start it from the GUI.
I wonder why since nowhere in the script I see something that would distinguish whether it was started from terminal or GUI.Commander_X wrote: ↑Wed Jul 12, 2023 8:28 pmOne notice/correction though, the (original) startup script doesn't remain stuck (together with its shell and cat command) when started from GUI. It seems that the "interactive" section only happens when the startup shell is in a terminal.
But I see a difference on the first run or any subsequent run. That means, once you tried running the script from GUI you would have to reset your system, otherwise the test is a subsequent one and with that invalid.
Maybe you want to verify the existence of files like
$HOME/.Oolite/.oolite*-run
Where do you get a "Run in terminal" checkbox?Commander_X wrote: ↑Wed Jul 12, 2023 8:28 pmWhen either starting the script from a terminal, or checking the "Run in terminal" checkbox for the GUI launch, the script remains stuck in the "Press Ctrl-C [...]" message.
Interesting. Yes, with such a line the notification also appears on my system. But why would the script terminate if you just added one line and the problematic 'cat' is still there? Finally, what is the script's exit code after it 'banged'?Commander_X wrote: ↑Wed Jul 12, 2023 8:28 pmBy inserting ajust after the then statement in theCode: Select all
LD_LIBRARY_PATH= notify-send "Bang!"
displays the notification, and also closes the script run.Code: Select all
if [ $? != 0 ]
I didn't try with the double wrapper solution in the PR.
Sunshine - Moonlight - Good Times - Oolite
-
- ---- E L I T E ----
- Posts: 675
- Joined: Sat Aug 09, 2014 4:16 pm
Re: Proof: Oolite Linux 1.91 unresponsive
The shell knows when it's interactive or not. From bash manual:hiran wrote: ↑Wed Jul 12, 2023 8:51 pm[...]
I wonder why since nowhere in the script I see something that would distinguish whether it was started from terminal or GUI.
[...]
Where do you get a "Run in terminal" checkbox?
[...]
Interesting. Yes, with such a line the notification also appears on my system. But why would the script terminate if you just added one line and the problematic 'cat' is still there? Finally, what is the script's exit code after it 'banged'?
Code: Select all
An interactive shell is one started without non-option arguments (un‐
less -s is specified) and without the -c option whose standard input
and error are both connected to terminals (as determined by isatty(3)),
or one started with the -i option. PS1 is set and $- includes i if
bash is interactive, allowing a shell script or a startup file to test
this state.
I'd guess the script's exit code is still "!= 0".
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
Ok, the shell knows whether it is interactive. But where/how does this modify the behaviour of the script? After all the script does not accessCommander_X wrote: ↑Wed Jul 12, 2023 9:14 pmThe shell knows when it's interactive or not. From bash manual:hiran wrote: ↑Wed Jul 12, 2023 8:51 pm[...]
I wonder why since nowhere in the script I see something that would distinguish whether it was started from terminal or GUI.
[...]
Where do you get a "Run in terminal" checkbox?
[...]
Interesting. Yes, with such a line the notification also appears on my system. But why would the script terminate if you just added one line and the problematic 'cat' is still there? Finally, what is the script's exit code after it 'banged'?Code: Select all
An interactive shell is one started without non-option arguments (un‐ less -s is specified) and without the -c option whose standard input and error are both connected to terminals (as determined by isatty(3)), or one started with the -i option. PS1 is set and $- includes i if bash is interactive, allowing a shell script or a startup file to test this state.
PS1
or $-
- or does it?Maybe that explains: I am on vanilla Ubuntu, which uses the Gnome desktop. I'm not aware of such a menu there (I do not say it doesn't exist).Commander_X wrote: ↑Wed Jul 12, 2023 9:14 pmAbout the "Run in terminal", XFCE (the main desktop in the xubuntu) has the whisker menu (I'm not using it very often). You can go to the app in the menu, right click, and you'll get the "launcher configuration" dialog you get for regular registered apps with XFCE (see here).
While the oolite (or oolite-trunk) script tries to preserve the exit code, oolite-wrapper does not. It always exits with zero. I'm not sure what exit code would be communicated once it runs cat, which shall be terminated by pressing Ctrl-C. Does that just terminate cat and the rest of the script carries on, or does the rest of the script also terminate with an exit code !=0 ?
After all I want to remove the cat, so that problem should no longer exist in future.
Sunshine - Moonlight - Good Times - Oolite
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
The current build of Oolite Nightly contains my changes.hiran wrote: ↑Wed Jul 12, 2023 4:54 pmThank you for confirmation. Actually there is no need to recompile the project just to modify some scripts. But we can do it differently.
I will soon merge the pull requests, and then the project will get compiled by GitHub automatically.
If after that you can just test again and confirm the behaviour is the intended one I will be happy already.
Could you just perform the test again and let me know whether the process is still stuck silently or gives feedback to the user?
Sunshine - Moonlight - Good Times - Oolite
Re: Proof: Oolite Linux 1.91 unresponsive
I'm getting the exact same error. I've downloaded the most recent Oolite version, 1.91.0.7579-231219-e0738b6. The error message is this:Stormrider wrote: ↑Wed Jul 12, 2023 1:27 pmI can confirm this behavior onMint 20.3
. When I run the sh file in terminal I get this output:When I look inCode: Select all
./oolite.app/oolite: error while loading shared libraries: libgnustep-base.so.1.28: cannot open shared object file: No such file or directory
home/GNUstep/Applications/Oolite/oolite.app
and look at the properties of theoolite
file it claims to be a shared library (application/x-sharedlib) not an executable file.
Code: Select all
/oolite.app/oolite: error while loading shared libraries:
libgnustep-base.so.1.28: cannot open shared object file:
No such file or directory
Erk. It looks like Oolite died with an error. When making an error
report, please copy + paste the log above into the report.
Code: Select all
apt install libgnustep-base-dev
and
Code: Select all
apt install gnustep-make-doc gobjc-multilib gobjc-13-multilib gcc-13-doc gnustep-base-doc
Re: Proof: Oolite Linux 1.91 unresponsive
The problem boils down to me having libgnustep v1.29 installed but Oolite wants 1.28 (1.28.1 resp.). And I cannot use
or
apt tells me that this version is not available (maybe Kali specific).
Code: Select all
apt-get install gnustep=1.28
Code: Select all
apt-get install gnustep=1.28.1
- hiran
- Theorethicist
- Posts: 2403
- Joined: Fri Mar 26, 2021 1:39 pm
- Location: a parallel world I created for myself. Some call it a singularity...
Re: Proof: Oolite Linux 1.91 unresponsive
Your symptom is the same. But I'm afraid this thread never intended to fix the root cause (see https://bb.oolite.space/viewtopic.php?p=290000#p290000). It was intended to fix something in the reporting of the error so the user would be aware. You need to do some other action to really get it resolved.Cas Tell wrote: ↑Fri Dec 22, 2023 11:17 amI'm getting the exact same error. I've downloaded the most recent Oolite version, 1.91.0.7579-231219-e0738b6. The error message is this:
To solve the problem I did this:Code: Select all
/oolite.app/oolite: error while loading shared libraries: libgnustep-base.so.1.28: cannot open shared object file: No such file or directory Erk. It looks like Oolite died with an error. When making an error report, please copy + paste the log above into the report.
Code: Select all
apt install libgnustep-base-dev
and
The latter are the recommended additional libraries of libgnustep. - Nevertheless, the problem did not disappear.Code: Select all
apt install gnustep-make-doc gobjc-multilib gobjc-13-multilib gcc-13-doc gnustep-base-doc
Sunshine - Moonlight - Good Times - Oolite