Page 1 of 3

Enabling Expansions on MacOS with 1.90

Posted: Sat Dec 16, 2023 2:57 pm
by edsel6502
Hi.

I tried playing with Oolite again recently. I used to have a great time with it back at v1.68.

I'm having problems loading the expansions.

I've tried the following

- following the pinned comment to enable the Expansion Manager. But it references a GNUstep folder that I don't seem to have.
- i used OoliteStarter v1.21. Pointed it at my executable. Created the necessary ManagedAddons etc folders. Verified that enabling/disabling moves it out of the expected folders. ie $HOME/Library/Application Support/Oolite/ManagedAddons etc.
- according to OoliteStarter I have no dependancy issues.
- I also took a look at the nightly builds on github. But there does not seem to be an MacOS binaries.

A quick test to see if it loads was me enabling the Intial Lave Shipyard oxz. It should have and Cobra MK I and Adder. But it seems to be missing the Adder and also the Bulletin Board expansion does not seem to be where it should be.

I've noticed that launching my selected save file from OoliteStarter does not actually start Oolite with that save file. I have to manually specify that save file to load. So I suspect that OoliteStarter is downloading/enabling/disabling the oxz's. But is the Oolite 1.90 application looking for the oxz in the correct location?

What am I doing wrong?. Is there away .oxz that I can test with to know for sure that its loaded?.

Thank you.

Re: Enabling Expansions on MacOS with 1.90

Posted: Sat Dec 16, 2023 5:38 pm
by Cholmondely
edsel6502 wrote: Sat Dec 16, 2023 2:57 pm
Hi.

I tried playing with Oolite again recently. I used to have a great time with it back at v1.68.

I'm having problems loading the expansions.

I've tried the following

- following the pinned comment to enable the Expansion Manager. But it references a GNUstep folder that I don't seem to have.
- i used OoliteStarter v1.21. Pointed it at my executable. Created the necessary ManagedAddons etc folders. Verified that enabling/disabling moves it out of the expected folders. ie $HOME/Library/Application Support/Oolite/ManagedAddons etc.
- according to OoliteStarter I have no dependancy issues.
- I also took a look at the nightly builds on github. But there does not seem to be an MacOS binaries.

A quick test to see if it loads was me enabling the Intial Lave Shipyard oxz. It should have and Cobra MK I and Adder. But it seems to be missing the Adder and also the Bulletin Board expansion does not seem to be where it should be.

I've noticed that launching my selected save file from OoliteStarter does not actually start Oolite with that save file. I have to manually specify that save file to load. So I suspect that OoliteStarter is downloading/enabling/disabling the oxz's. But is the Oolite 1.90 application looking for the oxz in the correct location?

What am I doing wrong?. Is there away .oxz that I can test with to know for sure that its loaded?.

Thank you.
Wow! Your first post in 17 years! That must be a record.

I too use an AppleMac, but was lucky enough to have almost everything already downloaded before we lost Oolite.org back in March.

What I now do is this:
You can download the expansions manually from the oolite.space page here: https://www.oolite.space/oxps/?sort=a#oxp

Just click on the icon on the far right end of each oxz and it will download into your downloads folder.

I then manually transfer it to an alias of my Managed AddOns folder which lives on my desktop. There is also an alias of my AddOns folder.

There are now oxp's and oxz's.
- oxps (Oolite eXPansions) you know from 2006. They can go into your AddOns folder just as they did in 2006.
- oxzs (Oolite eXpansions which are Zipped) are a little different. They have to go into your Managed AddOns folder. They are zipped. More importantly they have to have a manifest.plist which identifies them to Oolite, and also tell Oolite if other oxzs are also needed for them to run. These missing oxzs are then listed when you start the game.
It is more complex than this (oxps which have manifest.plists can also go into your Managed AddOns folder, etc).

The stuff listed on the oolite.space page are all oxz's - oxps are listed here: OXP List and here: Guide to Unlisted OXPs

I'm sending you a pm with more information.

And shout out if you have problems finding those folders!

Re: Enabling Expansions on MacOS with 1.90

Posted: Sat Dec 16, 2023 6:36 pm
by hiran
Wouldn't it be easier in the long run to use OoliteStarter?
What is missing?

Re: Enabling Expansions on MacOS with 1.90

Posted: Sat Dec 16, 2023 11:50 pm
by phkb
hiran wrote: Sat Dec 16, 2023 6:36 pm
Wouldn't it be easier in the long run to use OoliteStarter?
What is missing?
It appears it was tried:
edsel6502 wrote: Sat Dec 16, 2023 2:57 pm
i used OoliteStarter v1.21. Pointed it at my executable. Created the necessary ManagedAddons etc folders. Verified that enabling/disabling moves it out of the expected folders. ie $HOME/Library/Application Support/Oolite/ManagedAddons etc.
- according to OoliteStarter I have no dependancy issues.
Cholmondely wrote: Sat Dec 16, 2023 5:38 pm
oxzs (Oolite eXpansions which are Zipped) are a little different. They have to go into your Managed AddOns folder.
Not true. They can go in the AddOns folder, just the same as an OXP. You don't even have to unzip them. They will work from there in their zipped form.

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 12:14 am
by edsel6502
Thanks for the response.

I go back even further. I started playing elite on the Apple }{.

So it looks like I am downloading the oxz via OoliteStarter correctly.

They populate ~/Library/Application Support/Oolite/ManagedAddons

░▒▓   …/Application Support/Oolite/ManagedAddons   07:38 
❯ pwd
/Users/tane/Library/Application Support/Oolite/ManagedAddons

░▒▓   …/Application Support/Oolite/ManagedAddons   16:02 
❯ ls -la
total 864200
drwxr-xr-x 53 tane staff 1696 Dec 16 07:30 .
drwxr-xr-x 7 tane staff 224 Dec 16 05:54 ..
-rw-r--r--@ 1 tane staff 6148 Dec 12 04:30 .DS_Store
-rw-r--r-- 1 tane staff 8428 Dec 16 04:38 [email protected]
-rw-r--r-- 1 tane staff 30687589 Dec 16 05:00 [email protected]
-rw-r--r-- 1 tane staff 15749 Dec 12 04:40 [email protected]
-rw-r--r-- 1 tane staff 245709 Dec 16 04:53 [email protected]
-rw-r--r-- 1 tane staff 512482 Dec 16 04:41 [email protected]

<snip>


Bug I'm pretty sure those are not loading.

So based on what I've read those oxz should be loaded.

I randomly spot checked a few oxz to check for the existance of manifest files and they are there

░▒▓   …/Application Support/Oolite/ManagedAddons   16:06 
❯ unzip -l [email protected]
Archive: [email protected]
Length Date Time Name
--------- ---------- ----- ----
323 07-20-2014 11:30 Config/equipment.plist
16705 11-21-2023 08:49 Config/script.js
427 11-21-2023 08:45 manifest.plist
540 10-11-2023 13:57 navigation_mfd_readme_&_license.txt
--------- -------
17995 4 files

░▒▓   …/Application Support/Oolite/ManagedAddons   16:07 
❯ unzip -l [email protected]
Archive: [email protected]
Length Date Time Name
--------- ---------- ----- ----
39875 12-15-2023 11:16 Config/equipment.plist
3008 12-15-2023 12:07 Config/script.js
381 12-15-2023 11:33 manifest.plist
495 12-13-2023 10:40 Scripts/missilesummary_conditions.js
--------- -------
43759 4 files


As yoou can see those seem to be valid oxz's.

So then my only conclusion is that Oolite 1.90 is not checking ~/Library/Application Support/Oolite/ManagedAddons for expansions. What is the source of your desktop symlink to ManagedAddons?

I also looked at the lastest.log output. And it looks like Oolite is only looking for oxp and not oxz

07:21:51.202 [rendering.opengl.shader.support]: Shaders are supported.
07:21:51.207 [dataCache.rebuild.datesChanged]: Cache is stale (modification dates have changed). Rebuilding from scratch.
07:21:51.207 [searchPaths.dumpAll]: Resource paths:
~/Downloads/oolite-1.90/Oolite.app/Contents/Resources
~/Library/Application Support/Oolite/AddOns
07:21:51.212 [shipData.load.begin]: Loading ship data.
07:21:51.513 [startup.complete]: ========== Loading complete in 0.40 seconds. ==========
07:21:58.140 [exit.context]: Exiting: Exit Game selected on start screen.

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 12:27 am
by edsel6502
phkb wrote: Sat Dec 16, 2023 11:50 pm

Not true. They can go in the AddOns folder, just the same as an OXP. You don't even have to unzip them. They will work from there in their zipped form.
This was what got expansions working for me!.

Based on the above and the lastest.log output. I crerated a symlink from ManagedAddons to AddOns and Oolite saw all the expansions

So now I can use OoliteStarter to manage expansions.

Verified by copying the Lave Initial Shipyard oxz into AddOns.

Looks like the wiki needs updating as it says. oxp is for AddOns and oxz is for ManagedAddons. It might be a mac thing where only AddOns is checked on application start.

Thank you.

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 12:49 am
by phkb
edsel6502 wrote: Sun Dec 17, 2023 12:27 am
This was what got expansions working for me!.
Had you run Oolite at least once before running OoliteStarter?

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 7:20 am
by hiran
Was there some warning about potentially unsafe/dangerous code downloaded from the internet?

Is MacOS preventing Oolite to access files in the user's home?

What version of MacOS are you on?

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 9:02 am
by edsel6502
phkb wrote: Sun Dec 17, 2023 12:49 am
Had you run Oolite at least once before running OoliteStarter?
I believe so. But I was debugging at like 4-5am in the morning. I remember running Oolite. Trying to download expansions with the expansion manager and finding out that error. Google searching, finding the pinned comment about GNUStep. Not being able to find it and then finally running OoliteStarter.

If I didn't run Oolite first perhaps the config files created on 1st run got messed up?

Where are they located? I could nuke them or edit them to add the ManagedAddons to the conf file.

If i ren/del the config file and clear out my Application Support/Oolite folder I can simulate a 1st run.

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 9:05 am
by phkb
Try this document out and see if it helps solve the problem: MacOS Process to update gnustepdefaults file.pdf. You will need to have Xcode installed.

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 9:07 am
by edsel6502
hiran wrote: Sun Dec 17, 2023 7:20 am
Was there some warning about potentially unsafe/dangerous code downloaded from the internet?

Is MacOS preventing Oolite to access files in the user's home?

What version of MacOS are you on?
Yeah the usual and you have the allow Oolite/OoliteStarter in the privacy/security settings.

Nope because it can save to my ~/Documents/Oolite folder and access ~/Library/Application Support/Oolite/AddOns

If there a config file for Oolite where I can tell it to look for resources/expansion?. Or is ~/Library/Application Support/Oolite/AddOns hardcoded into the app?

Sonoma 14.2. M2 Apple Silicon

Re: Enabling Expansions on MacOS with 1.90

Posted: Sun Dec 17, 2023 10:23 am
by edsel6502
phkb wrote: Sun Dec 17, 2023 9:05 am
Try this document out and see if it helps solve the problem: MacOS Process to update gnustepdefaults file.pdf. You will need to have Xcode installed.
No joy. I get the following error from the log

01:59:43.220 [searchPaths.dumpAll]: Resource paths:
/var/folders/9n/tcfg2mqx67gdn1phsrvg_v440000gn/T/AppTranslocation/4B0E0096-756C-47D7-9D86-2C2A842732AA/d/Oolite.app/Contents/Resources
~/Library/Application Support/Oolite/AddOns
01:59:43.227 [shipData.load.begin]: Loading ship data.
01:59:43.507 [startup.complete]: ========== Loading complete in 0.37 seconds. ==========
02:00:18.145 [plist.parse.failed]: Failed to parse /Users/tane/Library/Caches/org.aegidian.oolite/Oolite-download.plist as a property list.
Encountered unknown tag html on line 1
02:00:18.145 [oxz.manager.error]: Downloaded manifest was not a valid plist, has been left in /Users/tane/Library/Caches/org.aegidian.oolite/Oolite-download.plist
02:00:38.664 [plist.parse.failed]: Failed to parse /Users/tane/Library/Caches/org.aegidian.oolite/Oolite-download.plist as a property list.
Encountered unknown tag html on line 1
02:00:38.665 [oxz.manager.error]: Downloaded manifest was not a valid plist, has been left in /Users/tane/Library/Caches/org.aegidian.oolite/Oolite-download.plist


The plist was edited and the key and value pair is there.

░▒▓   ~/Library/Preferences   02:04 
❯ defaults read org.aegidian.oolite.plist
{
"Edsel-humbletrash" = "-3256";
"Jameson-humbletrash" = "-29624";
NSNavLastRootDirectory = "~/Documents/Oolite";
NSNavPanelExpandedSizeForOpenMode = "{800, 448}";
"NSWindow Frame NSNavPanelAutosaveName" = "335 368 800 448 0 0 1470 919 ";
"NSWindow Frame oolite-main-window" = "116 142 1221 760 0 0 1470 919 ";
"NSWindow Frame oolitehelp" = "415 230 640 508 0 0 1470 919 ";
"New item" = "";
SUEnableAutomaticChecks = 1;
SUFeedURL = "http://www.oolite.org/updates/oolite-mac-appcast.xml";
SUHasLaunchedBefore = 1;
SULastCheckTime = "2023-12-16 13:04:25 +0000";
SUSendProfileInfo = 0;
autosave = 1;
"oxz-index-url" = "http://addons.oolite.space/api/1.0/overview";
"save-directory" = "/Users/tane/Documents/Oolite";
"snapshots-directory-name" = "Oolite Screen Shots";
"snapshots-directory-reference" = {
url = "file:///Users/tane/Desktop/Oolite%20Screen%20Shots";
};
"volume_control" = "0.5";
}


I stuck the url in the browser and it seems to be pulling down XML? just fine. Which is weird because when I cat out download.plist file I get the following

░▒▓   …/Library/Caches/org.aegidian.oolite   02:24 
❯ cat Oolite-download.plist
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html>

Re: Enabling Expansions on MacOS with 1.90

Posted: Mon Dec 18, 2023 6:16 am
by phkb
Can I get you to try one more thing for me? Can you open Oolite, go into the "Game Options" menu item, and turn on wireframe graphics. Then shut down Oolite again. Then can you have another look at the org.aegidian.oolite.plist file, and see if you can see the following entry:

Code: Select all

wireframe-graphics                         Boolean        YES

Re: Enabling Expansions on MacOS with 1.90

Posted: Mon Dec 18, 2023 7:45 am
by hiran
edsel6502 wrote: Sun Dec 17, 2023 10:23 am
I stuck the url in the browser and it seems to be pulling down XML? just fine. Which is weird because when I cat out download.plist file I get the following

░▒▓   …/Library/Caches/org.aegidian.oolite   02:24 
❯ cat Oolite-download.plist
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html>
This is not a surprise. We lost the domain oolite.org, someone else took over so the URL that Oolite 1.90 is trying to access responds with the result you see. Hence either you are able to tell Oolite the new URL or you need to use the alternative OoliteStarter to manage expansions.

For me the surprising part is that according to the logs you posted your installation is not even trying to access the expected ManagedAddons location.

Re: Enabling Expansions on MacOS with 1.90

Posted: Mon Dec 18, 2023 7:54 am
by edsel6502
phkb wrote: Mon Dec 18, 2023 6:16 am
Can I get you to try one more thing for me? Can you open Oolite, go into the "Game Options" menu item, and turn on wireframe graphics. Then shut down Oolite again. Then can you have another look at the org.aegidian.oolite.plist file, and see if you can see the following entry:

Code: Select all

wireframe-graphics                         Boolean        YES
Done. Looks like Oolite is locating and using the correct or.aegidian.oolite.plist file

░▒▓   ~/Library/Preferences   23:50 
❯ defaults read org.aegidian.oolite.plist | egrep -i wireframe
"wireframe-graphics" = 1;


As a control. I downloaded oolite 1.90 on my PC and did the following.

1. Clean install
2. Launch game
3. Attempt to download expansion. FAIL
4. Check logs. Verify fail
5. Add the oxz-index-url key/pair to C:\oolite\oolite.app\GNUstep\Defaults\.GNUstepDefaults. Save
6. Launch game, download expansion list. PASS

So why is the oxz-index-url key/pair not working for org.aegidian.oolite.plist? The mind boggles :)