Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flatpak #99

Open
mdeguzis opened this issue Apr 7, 2023 · 11 comments
Open

Flatpak #99

mdeguzis opened this issue Apr 7, 2023 · 11 comments
Labels
enhancement New feature or request

Comments

@mdeguzis
Copy link

mdeguzis commented Apr 7, 2023

Can you please add a flatpak to make this much easier for Steam Deck users and not lose access to it after an OS update? I can try to make one, just rusty that's all.

@mdeguzis mdeguzis added the enhancement New feature or request label Apr 7, 2023
@d10sfan
Copy link

d10sfan commented Apr 7, 2023

I run the fork lux-dev (https://github.com/luxtorpeda-dev/luxtorpeda), and not sure what issue you're having on the steam deck. You shouldn't lose access to it after an os update, if you install it the way that's described in the readme. Another option is the protonup-gt app, which makes it easier to install.

@dreamer
Copy link
Owner

dreamer commented Apr 7, 2023

AFAIK it's not possible. SteamOS has steam installed natively, Luxtorpeda must be installed in a directory where steam can find it, and flatpak allows only installation in flatpak directory tree (~/.var/app/).

Luxtorpeda distributed via flatpak would work only with Steam installed via flatpak - last time we discussed it with Flatpak developers this was impossible as well, because Flatpak was not supporting Rust/Cargo - I think this problem is solved now, but I'm not sure.

That's how flatpak is designed 😢.

I have the exact same problem with Boxtron and I'm now looking into various options on how to solve it in user-friendly manner.

@gasinvein Did anything change regarding Flatpak in this area? Is it possible to install software via flatpak outside of ~/.var/app/ or at least create a symbolic link in arbitrary place post-installation?

@d10sfan I have exactly the same issue with Boxtron - installation on SteamOS is done natively via flatpak, but it's impossible to install compact tools this way; I am considering creation of separate app / installer and distributing as flatpak... but at this point I would probably prefer to rewrite Boxtron as a Luxtorpeda feature and have a single installer for both tools. Do you have any other ideas how we could solve this problem? I've seen people do various hacks, but all of them pretty user-unfriendly (like running installers via AppImg, triggering scripts via .desktop files, etc; ProtonUp-QT you mentioned cannot install dependencies, etc... :( ).

@mdeguzis
Copy link
Author

mdeguzis commented Apr 7, 2023

For some reason, sudo steamos-readonly disable is not working, as it doesn't seem to disable readonly on /usr. I am using a simple script to automate this: https://github.com/mdeguzis/SteamOS-Tools/blob/master/utilities/unlock-steam-deck.sh

I guess boxtron is what I can try? I really would like to use this project on the Steam Deck to play around with fixing up Return to Castle Wolfenstein.

@mdeguzis
Copy link
Author

mdeguzis commented Apr 7, 2023

AGH! I Didn't realize ProtonUp-Qt had this! That should solve me issues. I'd recommend adding this to the readme after you test it yourself.

https://flathub.org/apps/details/net.davidotek.pupgui2

@dreamer
Copy link
Owner

dreamer commented Apr 7, 2023

@mdeguzis Boxtron is broken ATM, sorry - Valve changed format of manifests files some time ago and I noticed this only recently. Fix is WIP.

I have exactly the same problem - I want to use Luxtorpeda and Boxtron on my Steam Deck and have the tools update automatically, but flatpak is not good enough to handle this usecase :(

ProtonUp-QT is not good either - it expects users to install dependencies manually via pacman... which requires unlocking the SteamOS... and is pretty user hostile :(

@mdeguzis
Copy link
Author

mdeguzis commented Apr 7, 2023

Interesting, I've had good luck with ProtonUp-Qt on FlatHub and never had to install any odd deps. It really just downloads and extracts to compat tools. Pretty similar to how I did it before: https://github.com/mdeguzis/SteamOS-Tools/blob/master/utilities/get-proton-ge.sh

@dreamer
Copy link
Owner

dreamer commented Apr 7, 2023

I tried it yesteday on SteamDeck and it just failed to find DOSBox Staging and other Boxtron dependencies that were installed via flatpak.

@mdeguzis
Copy link
Author

mdeguzis commented Apr 7, 2023

Oh I only have used it for Proton GE. YMMY then :/

@d10sfan
Copy link

d10sfan commented Apr 7, 2023

@dreamer PrtonUp-QT does have a flatpak, which does seem to work with native non-flatpak steam, so that's one option, but not sure if that makes sense for a full solution. I've only used it to download lux, so not sure how it'd work for other things, like boxtron, that requires your own dosbox. I think it'd make sense to merge boxtron idea into luxtorpeda. I do have dosbox-staging building in lux-dev and some basic tooling around that, but the improvements from boxtron could still be useful. That gets around the issues with outside installs that boxtron currently has

@mdeguzis It is on the readme for luxtorpeda-dev, so that should be good, but let me know if you see improvements there.

@mdeguzis
Copy link
Author

mdeguzis commented Apr 7, 2023

Thank you though for the thoughts and this project! I just used Luxtorpedia via ProtonUp-Qt on the steam deck to launch Return To Castle Woftenstein! wooooo

@dreamer
Copy link
Owner

dreamer commented Apr 7, 2023

I think it'd make sense to merge boxtron idea into luxtorpeda. I do have dosbox-staging building in lux-dev and some basic tooling around that, but the improvements from boxtron could still be useful. That gets around the issues with outside installs that boxtron currently has

Yup; I see mostly benefits for this:

  • Luxtorpeda can handle fetching additional files already, so those features of Boxtron are no longer necessary
  • Luxtorpeda can handle game installation individually, so the whole built-in database of tweaks to DOSBox can be done this way
  • DOSBox Staging has MIDI synth and other fixes built-in, so they no longer need to be implemented as a feature of Boxtron
  • There's no need to have two separate tools with slightly different manifests
  • By using Rust I could bundle dependencies to handle inotify interface - one fewer dependency for users to install
  • Both tools could be distributed together (I still dislike ProtonUp-QT, but if it works for Luxtorpeda-dev now, then it's ok until better solution is found)

The only con is:

  • I need to rewrite half of features of Boxtron from scratch 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants