2023-10-03 11:52:44 -05:00
|
|
|
{
|
2023-10-03 13:18:12 -05:00
|
|
|
flake,
|
|
|
|
inputs,
|
|
|
|
outputs,
|
2023-10-03 11:52:44 -05:00
|
|
|
lib,
|
2023-10-04 13:49:48 -05:00
|
|
|
# config,
|
|
|
|
# pkgs,
|
2023-10-03 11:52:44 -05:00
|
|
|
...
|
|
|
|
}: {
|
2023-10-03 13:18:12 -05:00
|
|
|
networking.hostName = "thinker";
|
2023-10-03 11:52:44 -05:00
|
|
|
|
2024-01-17 09:19:07 -06:00
|
|
|
imports = with outputs.nixosModules; [
|
|
|
|
flake.diskoConfigurations.thinker
|
|
|
|
inputs.hardware.nixosModules.lenovo-thinkpad-t480
|
|
|
|
inputs.hardware.nixosModules.common-pc-laptop-ssd
|
|
|
|
desktop-usage
|
|
|
|
podman
|
|
|
|
gnome
|
|
|
|
postgres
|
|
|
|
wifi
|
|
|
|
];
|
|
|
|
|
|
|
|
boot = {
|
|
|
|
loader = {
|
|
|
|
efi.canTouchEfiVariables = true;
|
|
|
|
systemd-boot.enable = true;
|
|
|
|
};
|
|
|
|
# sudo filefrag -v /swap/swapfile | awk '$1=="0:" {print substr($4, 1, length($4)-2)}'
|
|
|
|
# the above won't work for btrfs, instead you need
|
|
|
|
# btrfs inspect-internal map-swapfile -r /swap/swapfile
|
|
|
|
# https://wiki.archlinux.org/title/Power_management/Suspend_and_hibernate#Hibernation_into_swap_file
|
|
|
|
kernelParams = ["boot.shell_on_fail" "resume_offset=22816000"];
|
|
|
|
initrd.availableKernelModules = ["xhci_pci" "nvme" "ahci"];
|
|
|
|
};
|
|
|
|
hardware.bluetooth.enable = true;
|
|
|
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
|
|
|
services.printing.enable = true; # I own a printer in the year of our Lord 2023
|
|
|
|
|
|
|
|
home-manager.users.daniel = {
|
|
|
|
imports = with outputs.homeManagerModules; [
|
|
|
|
sway
|
|
|
|
pass
|
|
|
|
# sway-laptop
|
|
|
|
# hyprland
|
|
|
|
];
|
|
|
|
|
|
|
|
home = {
|
|
|
|
stateVersion = "24.05";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2023-11-21 10:14:58 -06:00
|
|
|
swapDevices = [
|
|
|
|
# TODO: move this to disko?
|
|
|
|
# sudo btrfs subvolume create /swap
|
|
|
|
# sudo btrfs filesystem mkswapfile --size 32g --uuid clear /swap/swapfile
|
|
|
|
# sudo swapon /swap/swapfile
|
|
|
|
{device = "/swap/swapfile";}
|
|
|
|
];
|
|
|
|
|
|
|
|
# findmnt -no UUID -T /swap/swapfile
|
|
|
|
boot.resumeDevice = "/dev/disk/by-uuid/aacd6814-a5a2-457a-bf65-8d970cb1f03d";
|
|
|
|
|
|
|
|
services.logind = {
|
|
|
|
lidSwitch = "suspend-then-hibernate";
|
|
|
|
extraConfig = ''
|
|
|
|
HandlePowerKey=suspend-then-hibernate
|
|
|
|
IdleAction=suspend-then-hibernate
|
2023-11-21 21:11:09 -06:00
|
|
|
IdleActionSec=10m
|
2023-11-21 10:14:58 -06:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
systemd.sleep.extraConfig = "HibernateDelaySec=30m";
|
|
|
|
|
2023-09-22 12:56:48 -05:00
|
|
|
networking = {
|
|
|
|
firewall = {
|
|
|
|
enable = true;
|
|
|
|
allowPing = true;
|
2023-10-03 11:52:44 -05:00
|
|
|
allowedTCPPorts = [22];
|
|
|
|
allowedUDPPorts = [];
|
2023-09-22 12:56:48 -05:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2023-10-06 20:11:44 -05:00
|
|
|
# networking.networkmanager.enable = false;
|
|
|
|
# systemd.services.NetworkManager-wait-online.enable = lib.mkDefault false;
|
|
|
|
# networking.wireless.iwd.enable = true;
|
|
|
|
|
2023-09-29 16:57:26 -05:00
|
|
|
system.stateVersion = "23.11";
|
2023-09-04 11:40:30 -05:00
|
|
|
}
|