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

nvidia_x11: 390.87 -> 410.66 #48661

Merged
merged 2 commits into from Oct 23, 2018
Merged

nvidia_x11: 390.87 -> 410.66 #48661

merged 2 commits into from Oct 23, 2018

Conversation

baracoder
Copy link
Contributor

@baracoder baracoder commented Oct 18, 2018

Motivation for this change

Nvidia stable branch driver was updated to 410.66. With the work from #45030 this change is simple.

Note: Nvidia dropped support for x86. There are legacy versions present, but the last driver for x86 is 390.87. So maybe I should add it as a separate version like the legacy versions below?

/cc @infinisil, @eadwu, @tenten8401
see also #44461

Things done
  • Added x86 switch for latest supported driver
  • Removed beta
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

@infinisil
Copy link
Member

So maybe I should add it as a separate version like the legacy versions below?

Yeah that sounds like a good idea

@eadwu
Copy link
Member

eadwu commented Oct 18, 2018

Never really did this in my PR since I assumed most people who would use it probably lie on amd64, though the assignment in videoDrivers should probably be checked (at least for nvidia) and defaulted to 3xx for 32bit.

https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/hardware/video/nvidia.nix#L14

@cpages
Copy link
Contributor

cpages commented Oct 19, 2018

I understand that v410 is now considered stable, so I would do 2 things:

  • Choose a different version for the stable attribute depending on the platform (keep 390.87 for x86 users)
  • Remove the beta version, since I understand there's no beta currently (be aware that there are references in the nvidia module and in all-packages)

In this way we keep a working default for both platforms

@baracoder
Copy link
Contributor Author

I have updated the commit:

Some packages reference the default nvidia_x11 package directly.
e.g. https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/all-packages.nix#L921
and https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/all-packages.nix#L11493

So nvidia_x11 should evaluate to the latest stable driver package for the platform I think.

There is currently no beta active
@baracoder
Copy link
Contributor Author

@cpages I have set nvidia_x11_beta to be the same as nvidia_x11 and added a switch for nvidia_x11 depending on host architecture

Copy link
Member

@infinisil infinisil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me. It might be nice to have some people with different graphics cards test this.

Copy link
Contributor

@cpages cpages left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@infinisil I don't think this new version even drops support for any older card, so for me this can be pushed

@jokogr
Copy link
Contributor

jokogr commented Oct 23, 2018

The update works just fine with my 970.

@infinisil infinisil merged commit 6f00276 into NixOS:master Oct 23, 2018
@baracoder baracoder deleted the nvidia-update branch October 23, 2018 11:10
@billksun
Copy link
Contributor

This merge broke my system. I have a 64-bit system with an Nvidia GeForce GTX 560 Ti graphics card, which is only supported in the now legacy 390.x series. According to the changes, because I have a 64-bit system, the 410.x series would be used instead of the 390.x. However, there are no legacy_390 options to choose from, so I am stuck without a proper driver for the moment.

Please see #49679

@ben0x539
Copy link
Contributor

ben0x539 commented Dec 9, 2018

Can we revert this until the 390.x series is packaged separately? Being stuck on an old revision of nixos-unstable is no fun. :(

@jokogr
Copy link
Contributor

jokogr commented Dec 9, 2018

@ben0x539 if I were you, I would test #51294 and try to merge this instead of reverting this one.

@ben0x539
Copy link
Contributor

ben0x539 commented Dec 9, 2018

Hm, that PR hasn't even been reviewed yet, it seems like it getting merged and then making its way to nixos-unstable might be a while off. If I understand correctly, it also depends on #49703 to function as a workaround, which seems stuck. The prospect of all of that needing to land before I can update my system again is somewhat discouraging.

vvvvvvv ah cool thanks for clarifying

@eadwu
Copy link
Member

eadwu commented Dec 9, 2018

#51294 doesn't depend on #49703 though it should still work even if you merge both. Just adding nvidiaLegacy390 to videoDrivers should work just fine after merging #51294. Though I would prefer #49703 over mine.

@billksun
Copy link
Contributor

@eadwu, can you explain why you prefer #49703? It seems that with #49703 you won't get automatic upgrades anymore?

@eadwu
Copy link
Member

eadwu commented Dec 12, 2018

With #51294, every time there needs to be a legacy package, the way most users use it would be through videoDrivers, so someone would have to add it there every single time. Though through #49703, you just need add nvidia to videoDrivers and then set hardware.nvidia.package to the desired package and it should give the same results. Also keeps the nvidia packages in its default.nix since the exposure is through config.boot.kernelPackages instead of searching and matching through videoDrivers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants