-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
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
mangohud: init at 0.4.1 #95225
mangohud: init at 0.4.1 #95225
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this @zeratax!
There may be a better approach that I don't know about for combining the two builds, but this seems to work. I've also seen other projects use a later rev to get the build working, so I think it should be fine here. I noticed that you had |
@Metadark right yes that was incorrect and I now checked those boxes. I also have a nur package here that seems to build fine: https://travis-ci.com/github/ZerataX/nur-packages |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Result of nixpkgs-review pr 95225
1
1 package built:
- mangohud
When I try to run something with it I get a bunch of
MANGOHUD: Failed to open 64bit libnvidia-ml.so.1: libnvidia-ml.so.1: cannot open shared object file: No such file or directory
MANGOHUD: Failed to open 64bit libXNVCtrl.so.0: libXNVCtrl.so.0: cannot open shared object file: No such file or directory
though and it doesn't work :/
@Atemu so I imagine you are using an nvidia gpu? also would love to know what you tried to run with it? easiest to test is imo |
Yes it's an nvidia GPU, sorry should've mentioned that. I tried Guild Wars 2 but these messages even appear when I try to run bash. Same story with vkcube. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Aha! Got it to work. A nix-shell isn't enough, mangohud needs to be in your user env.
The missing library messages still show up weirdly but that's a cosmetic issue we can fix later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: |
I was wondering what the current status of this is? Do I just need to rebase this so the commit looks properly (not quite sure how I would go about doing that honestly) or do we wait for #101597 and go for a current release of mangohud? |
You should rebase on top of master or unstable and then squash the remaining two commits. I'd be in favour of merging this as-is and not trying to perfect it by packaging the newest version. We could try would be to patch the new Mangohud to use the v4 loader again that we did manage to get working here but I think that should happen in a separate PR. |
Will you pick this up again @zeratax? |
hmm not sure how to squash that merge and my commit properly Edit: wow I did it! |
|
||
stdenv.mkDerivation rec { | ||
pname = "mangohud${lib.optionalString stdenv.is32bit "_32"}"; | ||
version = "0.4.1"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
newest version is 0.6.1
And rename the commit, if you change the version
Tried it locally, if I manually push the version, the patch doesn't apply.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Versions newer than v4 won't work in Nixpkgs, see #95225 (comment) #101597
Nice! |
Result of 1 package failed to build:
|
Well, this is awkward, running the |
Result of 1 package built:
|
Result of 1 package built:
|
Tested using glxgears from
Then installed it and tested in Steam by adding
That does also work. Also tested with Half-Life 1 (32-bit). |
It looks like the latest version is now 0.6.1, so it would probably be best to update it here. |
yeah we decided to do this in a different pr #95225 (comment) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah we decided to do this in a different pr #95225 (comment)
Oh right thanks, I forgot about that 😅. This looks good to me then, thanks @zeratax!
Motivation for this change
closes #84686
Things done
I tested this with several OpenGL and Vulkan 32/64 bit games.
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)Questions
This is currently a little hackish with the
combined.nix
file, since to use mangohud with 32bit application like a lot of games still are we also need to compile a 32bit version.but if I just try to build the
default.nix
file with:The second derivation fails with:
The
combined.nix
now installs both versions next to each other.I am also not using the exact 0.4.1 version, but am a few commits ahead to fix flightlessmango/MangoHud#231 and also flightlessmango/MangoHud@acf2d88Or should I include all extra commits with the patches option?Edit: resolved with zeratax#1