
cpuFreqGovernor
with mkOptionDefault
`nixos-generate-config` detects the `cpuFreqGovernor` suited best for my machine, e.g. `powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";`. However the `powerManagement` module sets a sensitive default for `cpuFreqGovernor` using `mkDefault` to avoid breackage with older setups. Since 140ac2f1 the `hardware-configuration.nix` sets the gorvernor with `mkDefault` as well which causes evaluation errors if the powermanagement module is enabled: ``` error: The unique option `powerManagement.cpuFreqGovernor' is defined multiple times, in `/home/ma27/Projects/nixos-config/hardware-configuration.nix' and `/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/nixos/modules/config/power-management.nix'. ``` Using `mkOptionDefault` rather than `mkDefault` in the powermanagement module fixes this issue as it decreases the priority of the module and prefers the value set in `hardware-configuration.nix`. I have confirmed the change using the following VM declaration: ``` { cpuFreq = { lib, ... }: { powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; powerManagement.enable = true; }; } ```
Nixpkgs is a collection of packages for the Nix package manager. It is periodically built and tested by the Hydra build daemon as so-called channels. To get channel information via git, add nixpkgs-channels as a remote:
% git remote add channels git://github.com/NixOS/nixpkgs-channels.git
For stability and maximum binary package support, it is recommended to maintain
custom changes on top of one of the channels, e.g. nixos-17.09
for the latest
release and nixos-unstable
for the latest successful build of master:
% git remote update channels
% git rebase channels/nixos-17.09
For pull-requests, please rebase onto nixpkgs master
.
NixOS Linux distribution source code is located inside
nixos/
folder.
- NixOS installation instructions
- Documentation (Nix Expression Language chapter)
- Manual (How to write packages for Nix)
- Manual (NixOS)
- Community maintained wiki
- Continuous package builds for unstable/master
- Continuous package builds for 17.09 release
- Tests for unstable/master
- Tests for 17.09 release
Communication:
Description
Languages
Nix
96.3%
Shell
1.8%
Python
0.7%
Perl
0.4%
C
0.3%
Other
0.1%