feat: lurching towards relative usability

This commit is contained in:
Kat Inskip 2023-01-16 17:31:04 -05:00
parent a0fb7eb402
commit 961ec369ba
Signed by: kat
GPG key ID: 465E64DECEA8CF0F
51 changed files with 1349 additions and 407 deletions

20
nixos/gnome.nix Normal file
View file

@ -0,0 +1,20 @@
{
pkgs,
...
}: {
services.xserver = {
enable = true;
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;
};
environment.systemPackages = with pkgs.gnomeExtensions; [
dash-to-dock
gsconnect
appindicator
];
services.udev.packages = with pkgs.gnome; [
gnome-settings-daemon
];
}

9
nixos/laptop.nix Normal file
View file

@ -0,0 +1,9 @@
{
lib,
...
}: let
inherit (lib.modules) mkDefault;
in {
powerManagement.cpuFreqGovernor = mkDefault "powersave";
programs.light.enable = true;
}

1
nixos/modules/blank.nix Normal file
View file

@ -0,0 +1 @@
_: {}

View file

@ -1,21 +0,0 @@
{ config, lib, pkgs, ... }: let
inherit (lib.modules) mkIf;
in {
config = mkIf config.role.gnome {
services.xserver = {
enable = true;
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;
};
environment.systemPackages = with pkgs.gnomeExtensions; [
dash-to-dock
gsconnect
appindicator
];
services.udev.packages = with pkgs.gnome; [
gnome-settings-daemon
];
};
}

View file

@ -1,14 +0,0 @@
{ config, tree, machine, ... }: {
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
sharedModules = [
tree.home.modules
tree.system.modules
];
extraSpecialArgs = {
inherit tree machine;
nixos = config;
};
};
}

View file

@ -1,8 +0,0 @@
{ config, lib, ... }: let
inherit (lib.modules) mkIf mkDefault;
in {
config = mkIf config.role.laptop {
powerManagement.cpuFreqGovernor = mkDefault "powersave";
programs.light.enable = true;
};
}

View file

@ -1,7 +0,0 @@
{ config, lib, ... }: let
inherit (lib.modules) mkIf;
in {
config = mkIf config.role.personal {
services.fstrim.enable = true;
};
}

View file

@ -1,10 +0,0 @@
{ config, lib, ... }: let
inherit (lib.modules) mkIf;
inherit (lib.attrsets) mapAttrsToList;
in {
config = mkIf config.role.server {
# Prevent services from being automatically killed on log-out
# https://wiki.archlinux.org/title/systemd/User#Automatic_start-up_of_systemd_user_instances
systemd.tmpfiles.rules = mapAttrsToList (username: _: "f /var/lib/systemd/linger/${username}" ) config.users.users;
};
}

3
nixos/personal.nix Normal file
View file

@ -0,0 +1,3 @@
_: {
services.fstrim.enable = true;
}

8
nixos/server.nix Normal file
View file

@ -0,0 +1,8 @@
{
lib,
...
}: let
inherit (lib.attrsets) mapAttrsToList;
in {
systemd.tmpfiles.rules = mapAttrsToList (username: _: "f /var/lib/systemd/linger/${username}") config.users.users;
}

View file

@ -1,51 +0,0 @@
{ config, ... }: {
role = {
laptop = true;
personal = true;
gnome = true;
};
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/a664de0f-9883-420e-acc5-b9602a23e816";
fsType = "xfs";
};
"/boot" = {
device = "/dev/disk/by-uuid/DEBC-8F03";
fsType = "vfat";
};
};
swapDevices = [
{ device = "/dev/disk/by-uuid/0d846453-95b4-46e1-8eaf-b910b4321ef0"; }
];
boot = {
supportedFilesystems = [ "xfs" ];
initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/f0ea08b4-6af7-4d90-a2ad-edd5672a2105";
loader = {
efi = {
canTouchEfiVariables = true;
efiSysMountPoint = "/boot";
};
grub = {
devices = [ "nodev" ];
efiSupport = true;
enable = true;
extraEntries = ''
menuentry "Windows" {
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root DEBC-8F03
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
'';
version = 2;
};
};
};
system.stateVersion = "21.11";
}

View file

@ -1,10 +1,10 @@
{ tree, config, ... }: {
_: {
users.users.kat = {
uid = 1000;
isNormalUser = true;
openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCocjQqiDIvzq+Qu3jkf7FXw5piwtvZ1Mihw9cVjdVcsra3U2c9WYtYrA3rS50N3p00oUqQm9z1KUrvHzdE+03ZCrvaGdrtYVsaeoCuuvw7qxTQRbItTAEsfRcZLQ5c1v/57HNYNEsjVrt8VukMPRXWgl+lmzh37dd9w45cCY1QPi+JXQQ/4i9Vc3aWSe4X6PHOEMSBHxepnxm5VNHm4PObGcVbjBf0OkunMeztd1YYA9sEPyEK3b8IHxDl34e5t6NDLCIDz0N/UgzCxSxoz+YJ0feQuZtud/YLkuQcMxW2dSGvnJ0nYy7SA5DkW1oqcy6CGDndHl5StOlJ1IF9aGh0gGkx5SRrV7HOGvapR60RphKrR5zQbFFka99kvSQgOZqSB3CGDEQGHv8dXKXIFlzX78jjWDOBT67vA/M9BK9FS2iNnBF5x6shJ9SU5IK4ySxq8qvN7Us8emkN3pyO8yqgsSOzzJT1JmWUAx0tZWG/BwKcFBHfceAPQl6pwxx28TM3BTBRYdzPJLTkAy48y6iXW6UYdfAPlShy79IYjQtEThTuIiEzdzgYdros0x3PDniuAP0KOKMgbikr0gRa6zahPjf0qqBnHeLB6nHAfaVzI0aNbhOg2bdOueE1FX0x48sjKqjOpjlIfq4WeZp9REr2YHEsoLFOBfgId5P3BPtpBQ== yubikey5"
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDPsu3vNsvBb/G+wALpstD/DnoRZ3fipAs00jtl8rzDuv96RlS7AJr4aNvG6Pt2D9SYn2wVLaiw+76mz2gOycH9/N+VCvL4/0MN9uqj+7XIcxNRo0gHVOblmi2bOXcmGKh3eRwHj1xyDwRxo9WIuBEP2bPpDPz75OXRtEdlTgvky7siSguQxJu03cb0p9hNAYhUoohNXyWW2CjDCLUQVE1+QRVUzsKq3KkPy0cHYgmZC1gRSMQyKpMt72L5tayLz3Tp/zrshucc+QO5IJeZdqMxsNAcvALsysT1J5EqxZoYH9VpWLRhSgVD6Nvn853pycJAlXQxgOCpSD3/v/JbgUe5NE+ci0o7NMy5IiHUv2gQMRIEhwBHlRGwokUPL9upx0lsjaEiPya5xQqqDKRom87xytM778ANS5CuMdQMWg9qVbpHZUHMjA0QmNkjPgq71pUDXHk5L4mZuS8wVjyjnvlw68yIJuHEc8P7QiLcjvRHFS2L9Ck8NRmPDTQXlQi9kk6LmMyu6fdevR/kZL21b+xO1e2DMyxBbNDTot8luppiiL8adgUDMwptpIne7JCWB1o9NFCbXUVgwuCCYBif6pOGSc6bGo1JTAKMflRlcy6Mi3t5H0mR2lj/sCSTWwTlP5FM4aPIq08NvW6PeuK1bFJY9fIgTwVsUnbAKOhmsMt62w== cardno:12 078 454"
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDPsu3vNsvBb/G+wALpstD/DnoRZ3fipAs00jtl8rzDuv96RlS7AJr4aNvG6Pt2D9SYn2wVLaiw+76mz2gOycH9/N+VCvL4/0MN9uqj+7XIcxNRo0gHVOblmi2bOXcmGKh3eRwHj1xyDwRxo9WIuBEP2bPpDPz75OXRtEdlTgvky7siSguQxJu03cb0p9hNAYhUoohNXyWW2CjDCLUQVE1+QRVUzsKq3KkPy0cHYgmZC1gRSMQyKpMt72L5tayLz3Tp/zrshucc+QO5IJeZdqMxsNAcvALsysT1J5EqxZoYH9VpWLRhSgVD6Nvn853pycJAlXQxgOCpSD3/v/JbgUe5NE+ci0o7NMy5IiHUv2gQMRIEhwBHlRGwokUPL9upx0lsjaEiPya5xQqqDKRom87xytM778ANS5CuMdQMWg9qVbpHZUHMjA0QmNkjPgq71pUDXHk5L4mZuS8wVjyjnvlw68yIJuHEc8P7QiLcjvRHFS2L9Ck8NRmPDTQXlQi9kk6LmMyu6fdevR/kZL21b+xO1e2DMyxBbNDTot8luppiiL8adgUDMwptpIne7JCWB1o9NFCbXUVgwuCCYBif6pOGSc6bGo1JTAKMflRlcy6Mi3t5H0mR2lj/sCSTWwTlP5FM4aPIq08NvW6PeuK1bFJY9fIgTwVsUnbAKOhmsMt62w== cardno:12 078 454"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII74JrgGsDQ6r7tD7+k3ykxXV7DpeeFRscPMxrBsDPhz kat@goliath"
];
shell = pkgs.zsh;