Compare commits
No commits in common. "f166ba76d8677b0afce2b65a108603d11934fb64" and "a61a2f79bdd6d93fbdeaa3dbd8fb883d6ae2c8cd" have entirely different histories.
f166ba76d8
...
a61a2f79bd
@ -6,7 +6,6 @@ Configuration files for my personal machine, powered by [[https://nixos.org/][Ni
|
|||||||
|
|
||||||
The configuration is sliced into different files, per category:
|
The configuration is sliced into different files, per category:
|
||||||
|
|
||||||
- ZFS pool configuration: hardware-configuration.nix
|
|
||||||
- Globally installed packages: software.nix
|
- Globally installed packages: software.nix
|
||||||
- Network and VPN configuration: networking.nix
|
- Network and VPN configuration: networking.nix
|
||||||
- Window manager and userland services: gui.nix
|
- Window manager and userland services: gui.nix
|
||||||
@ -14,7 +13,6 @@ The configuration is sliced into different files, per category:
|
|||||||
- Sound and music setup: audio.nix
|
- Sound and music setup: audio.nix
|
||||||
- Development tools: development.nix
|
- Development tools: development.nix
|
||||||
- Printing and scanner client: printing.nix
|
- Printing and scanner client: printing.nix
|
||||||
- Systemd user services and timers: periodic.nix
|
- ZFS pool configuration: hardware-configuration.nix
|
||||||
- Power management: power.nix
|
|
||||||
|
|
||||||
All the modules are imported in *configuration.nix*
|
All the modules are imported in *configuration.nix*
|
||||||
|
@ -32,10 +32,9 @@
|
|||||||
|
|
||||||
# Run Nix garbage collector, while avoiding compiling
|
# Run Nix garbage collector, while avoiding compiling
|
||||||
nix = {
|
nix = {
|
||||||
autoOptimiseStore = true;
|
|
||||||
gc = {
|
gc = {
|
||||||
automatic = true;
|
automatic = true;
|
||||||
options = "--delete-older-than 7d";
|
options = "--delete-older-than 14d";
|
||||||
dates = "14:30";
|
dates = "14:30";
|
||||||
};
|
};
|
||||||
extraOptions = ''
|
extraOptions = ''
|
||||||
@ -66,6 +65,39 @@
|
|||||||
time.timeZone = "Europe/Brussels";
|
time.timeZone = "Europe/Brussels";
|
||||||
services.timesyncd.enable = true;
|
services.timesyncd.enable = true;
|
||||||
|
|
||||||
|
# Enable the TLP daemon
|
||||||
|
services.tlp = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
# Use the new CPU frequency scaling governor
|
||||||
|
CPU_SCALING_GOVERNOR_ON_AC = "schedutil";
|
||||||
|
CPU_SCALING_GOVERNOR_ON_BAT = "schedutil";
|
||||||
|
|
||||||
|
# Adjust CPU frequencies accordingly to the power state
|
||||||
|
CPU_SCALING_MIN_FREQ_ON_AC = 800000;
|
||||||
|
CPU_SCALING_MAX_FREQ_ON_AC = 3000000;
|
||||||
|
CPU_SCALING_MIN_FREQ_ON_BAT = 800000;
|
||||||
|
CPU_SCALING_MAX_FREQ_ON_BAT = 2300000;
|
||||||
|
|
||||||
|
# Enable audio power saving for Intel HDA, AC97 devices (timeout in secs).
|
||||||
|
# A value of 0 disables, >=1 enables power saving (recommended: 1).
|
||||||
|
# Default: 0 (AC), 1 (BAT)
|
||||||
|
SOUND_POWER_SAVE_ON_AC = 0;
|
||||||
|
SOUND_POWER_SAVE_ON_BAT = 1;
|
||||||
|
|
||||||
|
# Runtime Power Management for PCI(e) bus devices: on=disable, auto=enable.
|
||||||
|
# Default: on (AC), auto (BAT)
|
||||||
|
RUNTIME_PM_ON_AC = "on";
|
||||||
|
RUNTIME_PM_ON_BAT = "auto";
|
||||||
|
|
||||||
|
# Battery feature drivers: 0=disable, 1=enable
|
||||||
|
# Default: 1 (all)
|
||||||
|
NATACPI_ENABLE = 1;
|
||||||
|
TPACPI_ENABLE = 1;
|
||||||
|
TPSMAPI_ENABLE = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# NixOS version
|
# NixOS version
|
||||||
system.stateVersion = "20.09";
|
system.stateVersion = "20.09";
|
||||||
|
|
||||||
@ -91,9 +123,15 @@
|
|||||||
dates = "14:00";
|
dates = "14:00";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Suspend to RAM/disk when battery is critical
|
||||||
|
services.upower = {
|
||||||
|
enable = true;
|
||||||
|
percentageAction = 5;
|
||||||
|
criticalPowerAction = "HybridSleep";
|
||||||
|
};
|
||||||
|
|
||||||
# Import other configuration modules
|
# Import other configuration modules
|
||||||
imports = [
|
imports = [
|
||||||
./modules/hardware-configuration.nix
|
|
||||||
./modules/software.nix
|
./modules/software.nix
|
||||||
./modules/networking.nix
|
./modules/networking.nix
|
||||||
./modules/gui.nix
|
./modules/gui.nix
|
||||||
@ -102,7 +140,7 @@
|
|||||||
./modules/development.nix
|
./modules/development.nix
|
||||||
./modules/printing.nix
|
./modules/printing.nix
|
||||||
./modules/periodic.nix
|
./modules/periodic.nix
|
||||||
./modules/power.nix
|
./modules/hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,45 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
# Enable the TLP daemon
|
|
||||||
services.tlp = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
# Use the new CPU frequency scaling governor
|
|
||||||
CPU_SCALING_GOVERNOR_ON_AC = "schedutil";
|
|
||||||
CPU_SCALING_GOVERNOR_ON_BAT = "schedutil";
|
|
||||||
|
|
||||||
# Adjust CPU frequencies accordingly to the power state
|
|
||||||
CPU_SCALING_MIN_FREQ_ON_AC = 800000;
|
|
||||||
CPU_SCALING_MAX_FREQ_ON_AC = 3000000;
|
|
||||||
CPU_SCALING_MIN_FREQ_ON_BAT = 800000;
|
|
||||||
CPU_SCALING_MAX_FREQ_ON_BAT = 2300000;
|
|
||||||
|
|
||||||
# Enable audio power saving for Intel HDA, AC97 devices (timeout in secs).
|
|
||||||
# A value of 0 disables, >=1 enables power saving (recommended: 1).
|
|
||||||
# Default: 0 (AC), 1 (BAT)
|
|
||||||
SOUND_POWER_SAVE_ON_AC = 0;
|
|
||||||
SOUND_POWER_SAVE_ON_BAT = 1;
|
|
||||||
|
|
||||||
# Runtime Power Management for PCI(e) bus devices: on=disable, auto=enable.
|
|
||||||
# Default: on (AC), auto (BAT)
|
|
||||||
RUNTIME_PM_ON_AC = "on";
|
|
||||||
RUNTIME_PM_ON_BAT = "auto";
|
|
||||||
|
|
||||||
# Battery feature drivers: 0=disable, 1=enable
|
|
||||||
# Default: 1 (all)
|
|
||||||
NATACPI_ENABLE = 1;
|
|
||||||
TPACPI_ENABLE = 1;
|
|
||||||
TPSMAPI_ENABLE = 1;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Suspend to RAM/disk when battery is critical
|
|
||||||
services.upower = {
|
|
||||||
enable = true;
|
|
||||||
percentageAction = 5;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Disable touchscreen
|
|
||||||
boot.blacklistedKernelModules = [ "hid_multitouch" ];
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user