2024-11-26 08:13:46 +00:00
|
|
|
{
|
|
|
|
inputs,
|
|
|
|
pkgs,
|
|
|
|
username,
|
|
|
|
...
|
|
|
|
}:
|
2024-09-11 12:00:00 +00:00
|
|
|
|
|
|
|
{
|
2024-09-23 12:17:10 +00:00
|
|
|
imports = [
|
2024-11-26 08:13:46 +00:00
|
|
|
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
|
|
|
inputs.nixos-hardware.nixosModules.common-gpu-intel
|
|
|
|
inputs.nixos-hardware.nixosModules.common-pc-laptop
|
|
|
|
inputs.nixos-hardware.nixosModules.common-pc-laptop-hdd
|
|
|
|
inputs.nixos-hardware.nixosModules.system76
|
|
|
|
|
2024-09-23 12:17:10 +00:00
|
|
|
./hardware-configuration.nix
|
2025-01-01 14:49:00 +00:00
|
|
|
|
|
|
|
../../users/eric
|
2025-01-01 17:58:56 +00:00
|
|
|
../../users/luke
|
2024-09-23 12:17:10 +00:00
|
|
|
];
|
2024-09-11 12:00:00 +00:00
|
|
|
|
2024-11-26 08:13:46 +00:00
|
|
|
nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
|
|
|
|
2024-09-11 12:00:00 +00:00
|
|
|
# Bootloader.
|
2024-11-26 08:13:46 +00:00
|
|
|
boot = {
|
|
|
|
loader = {
|
|
|
|
systemd-boot = {
|
|
|
|
enable = true;
|
2024-12-12 22:23:35 +00:00
|
|
|
configurationLimit = 25;
|
2024-11-26 08:13:46 +00:00
|
|
|
};
|
2024-09-11 12:00:00 +00:00
|
|
|
|
2024-11-26 08:13:46 +00:00
|
|
|
efi = {
|
|
|
|
canTouchEfiVariables = true;
|
|
|
|
efiSysMountPoint = "/boot/efi";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
services.thermald.enable = true;
|
|
|
|
services.power-profiles-daemon.enable = false;
|
|
|
|
|
|
|
|
systemd.extraConfig = ''
|
|
|
|
DefaultTimeoutStopSec=10s
|
|
|
|
'';
|
|
|
|
|
2024-09-11 12:00:00 +00:00
|
|
|
networking.networkmanager.enable = true;
|
|
|
|
|
|
|
|
services.xserver.enable = true;
|
|
|
|
|
|
|
|
services.xserver = {
|
2024-11-26 08:13:46 +00:00
|
|
|
xkb = {
|
|
|
|
layout = "gb";
|
|
|
|
variant = "";
|
|
|
|
};
|
2024-12-26 20:03:43 +00:00
|
|
|
|
2025-01-01 13:01:09 +00:00
|
|
|
displayManager.lightdm.enable = true;
|
|
|
|
desktopManager.cinnamon.enable = true;
|
2024-09-11 12:00:00 +00:00
|
|
|
};
|
|
|
|
|
2024-11-26 08:13:46 +00:00
|
|
|
services.avahi.enable = true;
|
|
|
|
services.avahi.nssmdns4 = true;
|
|
|
|
services.avahi.openFirewall = true;
|
2024-12-30 17:43:49 +00:00
|
|
|
|
2024-09-11 12:00:00 +00:00
|
|
|
services.printing.enable = true;
|
|
|
|
|
|
|
|
hardware.pulseaudio.enable = false;
|
2024-11-26 08:13:46 +00:00
|
|
|
|
|
|
|
hardware.bluetooth.enable = true;
|
|
|
|
|
|
|
|
security = {
|
|
|
|
polkit.enable = true;
|
|
|
|
rtkit.enable = true;
|
|
|
|
};
|
|
|
|
|
2024-09-11 12:00:00 +00:00
|
|
|
services.pipewire = {
|
|
|
|
enable = true;
|
|
|
|
|
2024-11-26 08:13:46 +00:00
|
|
|
alsa = {
|
|
|
|
enable = true;
|
|
|
|
support32Bit = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
pulse.enable = true;
|
2024-09-11 12:00:00 +00:00
|
|
|
};
|
|
|
|
|
2024-11-26 08:13:46 +00:00
|
|
|
services.openssh.enable = true;
|
2024-09-11 12:00:00 +00:00
|
|
|
|
2024-11-26 08:13:46 +00:00
|
|
|
zramSwap.enable = true;
|
|
|
|
|
|
|
|
nix = {
|
|
|
|
gc = {
|
|
|
|
automatic = true;
|
|
|
|
dates = "daily";
|
|
|
|
options = "--delete-older-than 7d";
|
|
|
|
};
|
|
|
|
|
|
|
|
optimise.automatic = true;
|
|
|
|
|
|
|
|
settings = {
|
|
|
|
auto-optimise-store = true;
|
|
|
|
experimental-features = [
|
|
|
|
"nix-command"
|
|
|
|
"flakes"
|
|
|
|
];
|
|
|
|
warn-dirty = false;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
services.gvfs.enable = true;
|
|
|
|
|
|
|
|
programs.gnupg.agent = {
|
|
|
|
enable = true;
|
|
|
|
enableSSHSupport = true;
|
|
|
|
pinentryPackage = pkgs.pinentry-qt;
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.firefox = {
|
|
|
|
enable = true;
|
|
|
|
languagePacks = [ "en-GB" ];
|
|
|
|
preferences = {
|
|
|
|
"intl.accept_languages" = "en-GB, en";
|
|
|
|
"intl.regional_prefs.use_os_locales" = true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
services.blueman.enable = true;
|
|
|
|
|
|
|
|
services.cron = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
systemCronJobs = [ "* * * * * opdavies /home/${username}/.local/bin/notify-battery" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
services.auto-cpufreq.enable = true;
|
|
|
|
|
|
|
|
services.udev = {
|
|
|
|
enable = true;
|
|
|
|
extraRules = ''
|
|
|
|
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
|
|
|
|
'';
|
|
|
|
};
|
2024-12-21 00:46:25 +00:00
|
|
|
|
|
|
|
hardware.sane.enable = true;
|
2024-09-11 12:00:00 +00:00
|
|
|
}
|