Comments (7)
@Matoking As noted by @gasinvein, a Protontricks flatpak could be included in flathub, so in theory the flatpak setup guide in the README could be simplified to:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --assumeyes flathub com.valvesoftware.Steam com.valvesoftware.Steam.Utility.protontricks
echo "alias protontricks-flat='flatpak run --command=protontricks com.valvesoftware.Steam --no-runtime'" >> ~/.bashrc
I've also found the Protontricks flatpak to be easy to build once the conventions for flatpak-builder are understood.
from protontricks.
I'll look into this later.
I prefer to point people towards a community maintained package rather than maintaining one myself, unless it's trivial to update and test. The Flatpak manifest would have to include winetricks and other related dependencies, and those would need to be updated when needed as well.
from protontricks.
As far as flatpaks go, protontricks should be one of the easier ones to maintain as it doesn't depend on very many components and doesn't tie into numerous subsystems. @gasinvein also put in the upfront work setting up a builder manifest which should save a lot of effort. With the initial manifest created and tested, maintaining it shouldn't be any more involved than updating the tag number and commit hash whenever you create a new release as well as periodically checking to make sure all of the dependency versions (winetricks, p7zip, yasm, and cabextract) are recent.
Here's an example (borrowed from an earlier comment) of updating the protonworks flatpak manifest to 1.3 before building:
flatpak remote-add --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
flatpak install --assumeyes flathub-beta com.valvesoftware.Steam
wget https://raw.githubusercontent.com/gasinvein/flatpak-apps-staging/com.valvesoftware.Steam.Utility.protontricks/master/com.valvesoftware.Steam.Utility.protontricks.yml
wget https://raw.githubusercontent.com/gasinvein/flatpak-apps-staging/com.valvesoftware.Steam.Utility.protontricks/master/com.valvesoftware.Steam.Utility.protontricks.metainfo.xml
sed -i "4ibranch: beta\nruntime-version: beta" com.valvesoftware.Steam.Utility.protontricks.yml
sed -i "s@tag: .*@tag: \"1.3\"@; s@commit: .*@commit: 5bfe33ea8bbe0c72b7c2175dcb4c7bd4f9fc9434@" com.valvesoftware.Steam.Utility.protontricks.yml
flatpak-builder --repo=protontricks --force-clean build-dir com.valvesoftware.Steam.Utility.protontricks.yml
flatpak --user remote-add --no-gpg-verify --if-not-exists protontricks protontricks
flatpak --user --assumeyes install protontricks com.valvesoftware.Steam.Utility.protontricks
echo "alias protontricks-flat='flatpak run --command=protontricks com.valvesoftware.Steam --no-runtime'" >> ~/.bashrc
I think the end goal is to include projects like this on flathub so multiple remotes don't have to be installed, but ideally have them maintained by upstream developers.
from protontricks.
Thanks, I got the build manifest working and tested the environment for a bit.
Executables like ar
, perl
and unrar
are not installed in the manifest, but winetricks either has workarounds for missing executables (ar
and unrar
), or the commands themselves are used so infrequently it's probably not a problem (perl
is used in a single Steam-related verb, which wouldn't make sense to run since there's no need to install a Windows version of Steam inside a Proton prefix).
The new update for Steam was pushed to stable a few hours ago, so I'm guessing the manifest should build without the branch: beta
and runtime-version: beta
options shortly and also be eligible for submission to Flathub.
from protontricks.
@Matoking ar
and unrar
should be easy to add, but perl
may be tricky.
the manifest should build without the
branch: beta
andruntime-version: beta
After flathub/com.valvesoftware.Steam#509, it should be set to stable
instead of beta
.
I'll push and update to the manifest. Feel free to reuse it.
from protontricks.
@Matoking With the latest Protontricks manifest version provided by @gasinvein, it's easier than ever to build Protontricks with extra utilities sans Perl. It's now possible to build it with the stable branch of Steam:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --assumeyes flathub com.valvesoftware.Steam org.freedesktop.Sdk//19.08
wget https://raw.githubusercontent.com/gasinvein/flatpak-apps-staging/com.valvesoftware.Steam.Utility.protontricks/master/com.valvesoftware.Steam.Utility.protontricks.yml
wget https://raw.githubusercontent.com/gasinvein/flatpak-apps-staging/com.valvesoftware.Steam.Utility.protontricks/master/com.valvesoftware.Steam.Utility.protontricks.metainfo.xml
sed -i "s@tag: .*@tag: \"1.3\"@; s@commit: .*@commit: 5bfe33ea8bbe0c72b7c2175dcb4c7bd4f9fc9434@" com.valvesoftware.Steam.Utility.protontricks.yml
flatpak-builder --repo=protontricks --force-clean build-dir com.valvesoftware.Steam.Utility.protontricks.yml
flatpak --user remote-add --no-gpg-verify --if-not-exists protontricks protontricks
flatpak --user --assumeyes install protontricks com.valvesoftware.Steam.Utility.protontricks
echo "alias protontricks-flat='flatpak run --command=protontricks com.valvesoftware.Steam --no-runtime'" >> ~/.bashrc
As for actually packaging Perl, I don't see a dedicated runtime extension or a shared module, although there are some lines for building it in io.github.Hexchat.Plugin.Perl.json. Perhaps these lines could also be used for Protontricks?
from protontricks.
I've submitted the app for inclusion into the Flathub repository:
flathub/flathub#1259
Thanks for the help so far. 👍
from protontricks.
Related Issues (20)
- Better docs please / FUBARed Arkham Asylum HOT 1
- Protontricks closed due to error after attempting to open HOT 5
- Protontricks doesn't open without giving me this error HOT 6
- Proton Experimental not found by protontricks HOT 2
- Error on startup HOT 7
- Invalid file magic number HOT 3
- Unable to open game data, "invalid magic number" HOT 1
- Crashes while open the application HOT 1
- Keyerrors 'name' and 'userconfig' on new package installation HOT 4
- Protontricks will not work HOT 5
- Virtual Desktop enabled games fail to display. HOT 2
- Protontricks crashes if the user does not have permission to access an invalid Steam Library Folder HOT 1
- protontricks error code - help? HOT 3
- protontricks-launch with windows style path HOT 2
- insufficient permissions HOT 2
- PROTONTRICKS_STEAM_RUNTIME not set HOT 2
- Cant get game to load. GBFVSR HOT 3
- Some tests are broken by pytest 8 HOT 1
- protontricks not launching on steam deck HOT 3
- Cannot install Microsoft C++ Runtime 2019 // Stray wont work HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from protontricks.