reformat and clean stuff up
This commit is contained in:
parent
b03b8f6328
commit
2b110a13c0
8 changed files with 363 additions and 504 deletions
|
@ -11,13 +11,58 @@ in
|
|||
type = types.str;
|
||||
description = "The main user of this PC";
|
||||
};
|
||||
|
||||
battery = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "If this device has a battery";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
# support gay men (and video)
|
||||
services.ezpw.enable = lib.mkDefault true;
|
||||
|
||||
security.pam.services = {
|
||||
swaylock.text = ''
|
||||
auth include login
|
||||
'';
|
||||
};
|
||||
|
||||
services.thermald.enable = lib.mkDefault true;
|
||||
|
||||
# Don't kill the battery
|
||||
services.upower = {
|
||||
enable = lib.mkDefault cfg.battery;
|
||||
percentageLow = 15;
|
||||
percentageCritical = 10;
|
||||
percentageAction = 5;
|
||||
criticalPowerAction = "Hibernate";
|
||||
};
|
||||
|
||||
# Make battery usage sane
|
||||
services.tlp = {
|
||||
enable = lib.mkDefault cfg.battery;
|
||||
extraConfig = ''
|
||||
TLP_ENABLE=1
|
||||
CPU_SCALING_GOVERNOR_ON_BAT=powersave
|
||||
CPU_SCALING_GOVERNOR_ON_AC=ondemand
|
||||
CPU_BOOST_ON_BAT=0
|
||||
CPU_BOOST_ON_AC=1
|
||||
CPU_MIN_PERF_ON_BAT=0
|
||||
CPU_MAX_PERF_ON_BAT=30
|
||||
CPU_MIN_PERF_ON_AC=0
|
||||
CPU_MAX_PERF_ON_AC=100
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT=power
|
||||
CPU_ENERGY_PERF_POLICY_ON_AC=ondemand
|
||||
'';
|
||||
};
|
||||
|
||||
# Video support
|
||||
hardware.opengl = {
|
||||
enable = true;
|
||||
# Fix steam
|
||||
driSupport32Bit = true;
|
||||
# Other drivers
|
||||
extraPackages = with pkgs; [
|
||||
intel-media-driver
|
||||
vaapiIntel
|
||||
|
@ -25,9 +70,12 @@ in
|
|||
libvdpau-va-gl
|
||||
];
|
||||
};
|
||||
hardware.steam-hardware.enable = true;
|
||||
hardware.uinput.enable = true;
|
||||
fonts.fontconfig.cache32Bit = true;
|
||||
|
||||
# Support for steam hardware
|
||||
hardware.steam-hardware.enable = lib.mkDefault true;
|
||||
|
||||
# Needed for lots of controller stuff
|
||||
hardware.uinput.enable = lib.mkDefault true;
|
||||
|
||||
# proton esync
|
||||
systemd.extraConfig = "DefaultLimitNOFILE=1048576";
|
||||
|
@ -58,16 +106,19 @@ in
|
|||
];
|
||||
};
|
||||
|
||||
# fuck alsa
|
||||
nixpkgs.config.pulseaudio = true;
|
||||
|
||||
# brightness
|
||||
programs.light.enable = true;
|
||||
programs.light.enable = lib.mkDefault true;
|
||||
|
||||
# make fonts not fucked up
|
||||
fonts.fontconfig.enable = true;
|
||||
fonts.enableDefaultFonts = true;
|
||||
services.xserver.dpi = lib.mkDefault 96;
|
||||
fonts.fontconfig.enable = lib.mkDefault true;
|
||||
fonts.enableDefaultFonts = lib.mkDefault true;
|
||||
# Important for steam
|
||||
fonts.fontconfig.cache32Bit = lib.mkDefault true;
|
||||
services.xserver = {
|
||||
dpi = lib.mkDefault 96;
|
||||
layout = lib.mkDefault "us";
|
||||
libinput.enable = lib.mkDefault true;
|
||||
};
|
||||
|
||||
# this helps with some compatibility
|
||||
hardware.pulseaudio.daemon.config = {
|
||||
|
@ -86,8 +137,11 @@ in
|
|||
}
|
||||
];
|
||||
|
||||
# Used for upnp or something?
|
||||
networking.firewall.allowedUDPPorts = [ 1900 ];
|
||||
|
||||
# Shit breaks without this lol
|
||||
programs.dconf.enable = true;
|
||||
programs.dconf.enable = lib.mkDefault true;
|
||||
|
||||
# better default swap
|
||||
boot.kernel.sysctl = { "vm.swappiness" = lib.mkDefault 45; };
|
||||
|
@ -98,22 +152,20 @@ in
|
|||
];
|
||||
|
||||
# self explanatory
|
||||
fuckingprint.enable = true;
|
||||
fuckingprint.enable = lib.mkDefault true;
|
||||
|
||||
# Enable sound.
|
||||
sound.enable = lib.mkOverride 1100 true;
|
||||
hardware.pulseaudio.enable = lib.mkOverride 1100 true;
|
||||
# Pulseaudio is off by defaultm but if you want it, make it work right
|
||||
hardware.pulseaudio.support32Bit = lib.mkDefault true;
|
||||
hardware.pulseaudio.zeroconf.discovery.enable = lib.mkDefault true;
|
||||
hardware.pulseaudio.package = pkgs.pulseaudioFull;
|
||||
hardware.pulseaudio.extraModules = [ pkgs.pulseaudio-modules-bt ];
|
||||
hardware.pulseaudio.extraConfig = ''
|
||||
load-module module-dbus-protocol
|
||||
'';
|
||||
|
||||
# bluetooth
|
||||
services.blueman.enable = true;
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.pulseaudio.extraModules = [ pkgs.pulseaudio-modules-bt ];
|
||||
services.blueman.enable = lib.mkDefault true;
|
||||
hardware.bluetooth.enable = lib.mkDefault true;
|
||||
hardware.bluetooth.settings.General.Enable = "Source,Sink,Media,Socket";
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue