Re: I packaged the game as a flatpak
Posted: Mon May 26, 2025 9:04 pm
This looks like your flatpak is broken, I don't think its related to oolite specifically
For information and discussion about Oolite.
https://bb.oolite.space/
Your flatpaksharpenedblade wrote: ↑Mon May 26, 2025 9:04 pmThis looks like your flatpak is broken, I don't think its related to oolite specifically
I get the same result with LinuxMint 20.3. Flatpak is part of Mint's default package management system so if it is broken it would be by the developers of Mint.
Flatpak is not an essential part of LinuxMint. The flatpak package is from Ubuntu. The update manager (mintupdate) can (optionally) update installed Flatpaks (default on), and the software manager will list Flatpaks. Most of the Flatpak gubbins (all bar xdg-desktop-portal) can be removed without issue. On setups which won't need it, I rip it out for one less update.
Code: Select all
Package: flatpak
Architecture: amd64
Version: 1.12.7-1
Priority: optional
Section: universe/admin
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installing stuff works fine with Flatpak on all versions for me too. The issue is with building, not installing. I'd have thought that any issue with Flatpak on LinuxMint would likely not affect three versions spanning several years. Is it possible there's an issue with your source that only manifests on certain systems, or on "not your" setup?Stormrider wrote: ↑Tue May 27, 2025 4:31 pmI've got other flatpaks installed and they seem to work fine.
Code: Select all
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo --user
Cool beans! That got it. Thank you. I'd tried a variant of the remote-add, but IIRC not with '--user'.sharpenedblade wrote: ↑Tue May 27, 2025 9:12 pmThe error on your system is coming from `org.flatpak.builder`, which is a upstream project that should work. I think what happened is that mint does not configure flathub as a user level remote, so you need to run this, then build as a normal user without using sudo.I built it on fedora 42, but it also worked on the ubuntu-latest github runner.Code: Select all
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo --user
These are the instuructions from upstream: https://docs.flatpak.org/en/latest/first-build.html and https://docs.flatpak.org/en/latest/flatpak-builder.html
Code: Select all
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo --user
sudo flatpak install flathub org.flatpak.Builder
git clone --branch add-oolite https://github.com/sharpenedblade/flathub
cd flathub
git submodule update --init
# for 1.91
sed -i "s/0b1ff49a78653669bfe8e153ae09699ba49cc496/dc597d5c51923e7210b39e83375b156cb08dfb01/g" space.oolite.oolite.yml
flatpak run org.flatpak.Builder --force-clean --sandbox --user --install --install-deps-from=flathub --ccache --repo=repo builddir space.oolite.oolite.yml
Code: Select all
flatpak remote-modify --collection-id=org.oolite.Oolite oolite-origin
flatpak remote-modify --collection-id=org.flathub.Stable flathub
flatpak update
flatpak create-usb /tmp/flat space.oolite.oolite
Code: Select all
sudo mkdir -p /.ostree/repos.d
sudo ln -s /tmp/flat/.ostree/repo /.ostree/repos.d/myrepo
flatpak remote-add --user oolite-origin org.oolite.Oolite
flatpak update
flatpak install oolite
Looking for matches…
F: An error was encountered searching remote ‘oolite-origin’ for ‘space.oolite.oolite’: Unable to load summary from remote oolite-origin: GPG verification enabled, but no summary found (check that the configured URL in remote config is correct)
error: No remote refs found for ‘space.oolite.oolite’
The version information comes from the space.oolite.oolite.metainfo.xml, you can edit that to change the version. You can build the debug/test builds by opening up the manifest in a text editor and changing the make command. Upstream published documentation for creating .flatpak files (https://docs.flatpak.org/en/latest/sing ... ndles.html), there are a lot of guides online too.MrFlibble wrote: ↑Wed May 28, 2025 7:41 pmSo far so good.
An issue:
I built 1.91 flatpack on LinuxMint 21.3. It runs as expected, and the window shows 1.91, however the one line of sed to change the build to 1.91 may need enhancing, as the flatpak is listed as 1.90 using "flatpak list"
A request:
Is it trivial to tweak this to build the 'test' and/or debug variants of 1.91?
A road block:
I'm looking for a way to easily test this across different distros without building 'per-host'. If you know a quick and painless way to achieve that from my local build, please let me know. I've tried fudging my way there with flatpak create-usb, but I'm clearly not grokking something.And to install on "other-box", either use a USB stick (as flatpak will search mounts for .ostree, or as I did, make a symlink to the files.Code: Select all
flatpak remote-modify --collection-id=org.oolite.Oolite oolite-origin flatpak remote-modify --collection-id=org.flathub.Stable flathub flatpak update flatpak create-usb /tmp/flat space.oolite.oolite
Code: Select all
sudo mkdir -p /.ostree/repos.d sudo ln -s /tmp/flat/.ostree/repo /.ostree/repos.d/myrepo flatpak remote-add --user oolite-origin org.oolite.Oolite flatpak update flatpak install oolite Looking for matches… F: An error was encountered searching remote ‘oolite-origin’ for ‘space.oolite.oolite’: Unable to load summary from remote oolite-origin: GPG verification enabled, but no summary found (check that the configured URL in remote config is correct) error: No remote refs found for ‘space.oolite.oolite’
Code: Select all
flatpak build-bundle flathub/repo oolite-1.91.flatpak space.oolite.oolite
Code: Select all
flatpak install oolite-1.91.flatpak
I've used the latest prerelease. I tried to make the test version, but I'm in a bit of a rush and don't know the incantations to allow the networking stuff in Flatpak, and I probably guessed the change to the build instructions wrong. Ergo debug may not work.another_commander wrote: ↑Thu May 29, 2025 2:50 pmMay I kindly ask for the 1.91 flatpak file to be uploaded somewhere for additional testing?
Code: Select all
mkdir -p AddOns && rm -rf AddOns/Basic-debug.oxp && cp -rf DebugOXP/Debug.oxp AddOns/Basic-debug.oxp
Code: Select all
Linking objc_program oolite ...
/usr/lib/gcc/x86_64-unknown-linux-gnu/14.2.0/../../../../x86_64-unknown-linux-gnu/bin/ld: ./obj.spk/oolite.obj/OOCheckDemoShipsPListVerifierStage.m.o:(.data.rel.ro+0x10): undefined reference to `__objc_class_name_OOFileHandlingVerifierStage'
/usr/lib/gcc/x86_64-unknown-linux-gnu/14.2.0/../../../../x86_64-unknown-linux-gnu/bin/ld: ./obj.spk/oolite.obj/OOModelVerifierStage.m.o:(.data.rel.ro+0x30): undefined reference to `__objc_class_name_OOTextureHandlingStage'
It copies a fresh copy of the debug oxp to the build's AddOns folder. You need the debug oxp installed to be able to connect to the external debug console.sharpenedblade wrote: ↑Thu May 29, 2025 9:59 pmWhat does the following line do in the Makefile for the test and debug targets? I don't use the AddOns folder after building, the flatpak only copies the oolite.app folder. As far as I can tell everything works fine, is there something subtle that breaks?Code: Select all
mkdir -p AddOns && rm -rf AddOns/Basic-debug.oxp && cp -rf DebugOXP/Debug.oxp AddOns/Basic-debug.oxp