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
nixos/gnome3: add realtime-scheduling option #99697
nixos/gnome3: add realtime-scheduling option #99697
Conversation
This adds an option services.gnome3.experimental-features.realtime-scheduling See this comment for the motivation [0]. Having gnome-shell launched with capability seemed harmless at first, but it caused these issues [1] [2] for people who aren't even using the feature. It makes more sense to make this optional. [0]: NixOS#90201 (comment) [1]: NixOS#90201 [2]: NixOS#86730
@@ -68,6 +68,38 @@ in | |||
core-shell.enable = mkEnableOption "GNOME Shell services"; | |||
core-utilities.enable = mkEnableOption "GNOME core utilities"; | |||
games.enable = mkEnableOption "GNOME games"; | |||
|
|||
experimental-features = { |
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.
Style nit: why kebab case rather than camel case? Just mimicking nix
's experimental-features
flag/configuration option?
(Doesn't really matter, but it seems we use camel case everywhere else.)
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.
The options above mimic the element names for GNOME OS from gnome-build-meta. The actual dconf key this setting operates on is /org/gnome/mutter/experimental-features
, and they just throw whatever feature in there. In the future it would be nice to have #54150 to extend with more experimental-feature options. (though I do see how it's named similar to how nix has experimental-features). I just happened to group it in services.gnome3 because that namespace made the most sense.
Though, you're correct we mix casing for options. But for these ones it would be really ugly to read in camel.
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.
Ah, OK, fair enough. Carry on :)
Thanks for writing this. I was going to add the option myself but was busier than expected last week. |
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.
LGTM, should probably be backported too?
Please backport since it is really not obvious that this is why scanners do not work. |
Yep, absolutely. |
backported to 20.09 in 001334b |
This adds an option services.gnome3.experimental-features.realtime-scheduling
See this comment for the motivation 0.
Having gnome-shell launched with capability seemed harmless at first,
but it caused these issues 1 2 for people who aren't even using
the feature. It makes more sense to make this optional.
Motivation for this change
Things done
I built the nixos manual.
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)