mirror of
https://github.com/alyraffauf/nixcfg.git
synced 2024-11-21 19:53:55 -05:00
Merge branch 'master' into add-river
This commit is contained in:
commit
cc5e4228a5
|
@ -45,6 +45,12 @@
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
settings.PasswordAuthentication = false;
|
settings.PasswordAuthentication = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
udev.extraRules = ''
|
||||||
|
# Disable Fn Lock for ThinkPad Trackpoint USB/Bluetooth Keyboard
|
||||||
|
SUBSYSTEM=="hid", DRIVER=="lenovo", ATTRS{idVendor}=="17ef", ATTRS{idProduct}=="6047|60ee", ATTR{fn_lock}="0"
|
||||||
|
SUBSYSTEM=="input", ATTRS{id/vendor}=="17ef", ATTRS{id/product}=="6048|60e1", TEST=="/sys/$devpath/device/fn_lock", RUN+="/bin/sh -c 'echo 0 > \"/sys/$devpath/device/fn_lock\"'"
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
sound.enable = true;
|
sound.enable = true;
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
gc = {
|
gc = {
|
||||||
automatic = true;
|
automatic = true;
|
||||||
dates = "daily";
|
dates = "daily";
|
||||||
options = "--delete-older-than 3d";
|
options = "--delete-older-than 14d";
|
||||||
persistent = true;
|
persistent = true;
|
||||||
randomizedDelaySec = "60min";
|
randomizedDelaySec = "60min";
|
||||||
};
|
};
|
||||||
|
|
63
flake.lock
63
flake.lock
|
@ -187,11 +187,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726775926,
|
"lastModified": 1728334376,
|
||||||
"narHash": "sha256-5zShvCy9S4tuISFjNSjb+TWpPtORqPbRZ0XwbLbPLho=",
|
"narHash": "sha256-CTKEKPzD/j8FK6H4DO3EjyixZd3HHvgAgfnCwpGFP5c=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "624fd86460e482017ed9c3c3c55a3758c06a4e7f",
|
"rev": "d39ee334984fcdae6244f5a8e6ab857479cbaefe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -354,11 +354,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726592409,
|
"lastModified": 1726989464,
|
||||||
"narHash": "sha256-2Y6CDvD/BD43WLS77PHu6dUHbdUfFhuzkY8oJAecD/U=",
|
"narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "2ab00f89dd3ecf8012f5090e6d7ca1a7ea30f594",
|
"rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -397,11 +397,11 @@
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1721829827,
|
"lastModified": 1727632156,
|
||||||
"narHash": "sha256-9tB29tP3ZQ2tU2c+FrWrGqSm70ZrJP8H9WZKzHx55zI=",
|
"narHash": "sha256-gfH/jcrmI27OEge8OGPe7JpC0jrQJuX7v9hM/ObjjW8=",
|
||||||
"owner": "JeanSchoeller",
|
"owner": "JeanSchoeller",
|
||||||
"repo": "iio-hyprland",
|
"repo": "iio-hyprland",
|
||||||
"rev": "bbf59e10cbf293e64b765864a324e971fcc06125",
|
"rev": "bd6be6b7e0fbc8ca1a5ccbf536602838e52c347e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -437,33 +437,13 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixhw": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1727183733,
|
|
||||||
"narHash": "sha256-JyOFDaIHTTpVp1uO/3M4md6KNIXXhcD8ztDlDST0VL8=",
|
|
||||||
"owner": "alyraffauf",
|
|
||||||
"repo": "nixhw",
|
|
||||||
"rev": "42685325fa3ca92404b73221ffc8fae1e1671154",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "alyraffauf",
|
|
||||||
"repo": "nixhw",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726969270,
|
"lastModified": 1728500571,
|
||||||
"narHash": "sha256-8fnFlXBgM/uSvBlLWjZ0Z0sOdRBesyNdH0+esxqizGc=",
|
"narHash": "sha256-dOymOQ3AfNI4Z337yEwHGohrVQb4yPODCW9MDUyAc4w=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "23cbb250f3bf4f516a2d0bf03c51a30900848075",
|
"rev": "d51c28603def282a24fa034bcb007e2bcb5b5dd0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -491,11 +471,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726463316,
|
"lastModified": 1728492678,
|
||||||
"narHash": "sha256-gI9kkaH0ZjakJOKrdjaI/VbaMEo9qBbSUl93DnU7f4c=",
|
"narHash": "sha256-9UTxR8eukdg+XZeHgxW5hQA9fIKHsKCdOIUycTryeVw=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172",
|
"rev": "5633bcff0c6162b9e4b5f1264264611e950c8ec7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -507,11 +487,11 @@
|
||||||
},
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726811691,
|
"lastModified": 1728626853,
|
||||||
"narHash": "sha256-QjeSsVQo6q7gmWpAreIebQC4fLv4cIgQiPsJjgHmb6E=",
|
"narHash": "sha256-fqL5vpxgPJa8rU8/leTKnhraXFhIytbTgsYd+o0KUgI=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "cf02274315ba8e91aa8c4bc5e336760af35f42e5",
|
"rev": "249b147c8b96ea9bfc873723f82f88f61f685bb0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -554,7 +534,6 @@
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
"iio-hyprland": "iio-hyprland",
|
"iio-hyprland": "iio-hyprland",
|
||||||
"lanzaboote": "lanzaboote",
|
"lanzaboote": "lanzaboote",
|
||||||
"nixhw": "nixhw",
|
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
|
@ -666,11 +645,11 @@
|
||||||
"wallpapers": {
|
"wallpapers": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727132619,
|
"lastModified": 1728177558,
|
||||||
"narHash": "sha256-1V9LK/0GwsLjAwedYcW5uXq1y8l4W86Ce2DvrlseLcA=",
|
"narHash": "sha256-jD8GijFjpcjKb2O0g73utSoNkk/J8XLK4jFqhjboN44=",
|
||||||
"owner": "alyraffauf",
|
"owner": "alyraffauf",
|
||||||
"repo": "wallpapers",
|
"repo": "wallpapers",
|
||||||
"rev": "b86110d079361e785014fdc22eb3684bccf891c9",
|
"rev": "767fa4a1faa166ed2f18297c013aefbd062432b8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
22
flake.nix
22
flake.nix
|
@ -30,11 +30,6 @@
|
||||||
url = "github:nix-community/lanzaboote/v0.4.1";
|
url = "github:nix-community/lanzaboote/v0.4.1";
|
||||||
};
|
};
|
||||||
|
|
||||||
nixhw = {
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
url = "github:alyraffauf/nixhw";
|
|
||||||
};
|
|
||||||
|
|
||||||
nur.url = "github:nix-community/NUR";
|
nur.url = "github:nix-community/NUR";
|
||||||
|
|
||||||
stylix = {
|
stylix = {
|
||||||
|
@ -130,8 +125,7 @@
|
||||||
|
|
||||||
homeManagerModules = {
|
homeManagerModules = {
|
||||||
default = import ./homeManagerModules self;
|
default = import ./homeManagerModules self;
|
||||||
aly = import ./homes/aly/gui.nix self;
|
aly = import ./homes/aly self;
|
||||||
aly-nox = import ./homes/aly/nox.nix self;
|
|
||||||
dustin = import ./homes/dustin self;
|
dustin = import ./homes/dustin self;
|
||||||
morgan = import ./homes/morgan self;
|
morgan = import ./homes/morgan self;
|
||||||
};
|
};
|
||||||
|
@ -147,6 +141,20 @@
|
||||||
common-tailscale = import ./common/tailscale.nix;
|
common-tailscale = import ./common/tailscale.nix;
|
||||||
common-wifi-profiles = import ./common/wifi.nix;
|
common-wifi-profiles = import ./common/wifi.nix;
|
||||||
|
|
||||||
|
hw-common-amd-cpu = import ./hwModules/common/gpu/amd;
|
||||||
|
hw-common-amd-gpu = import ./hwModules/common/cpu/amd;
|
||||||
|
hw-common-bluetooth = import ./hwModules/common/bluetooth;
|
||||||
|
hw-common-intel-cpu = import ./hwModules/common/cpu/intel;
|
||||||
|
hw-common-intel-gpu = import ./hwModules/common/gpu/intel;
|
||||||
|
hw-common-laptop = import ./hwModules/common/laptop;
|
||||||
|
hw-common-laptop-amd-gpu = import ./hwModules/common/laptop/amd-gpu.nix;
|
||||||
|
hw-common-laptop-intel-cpu = import ./hwModules/common/laptop/intel-cpu.nix;
|
||||||
|
hw-common-ssd = import ./hwModules/common/ssd;
|
||||||
|
hw-framework-13-amd-7000 = import ./hwModules/framework/13/amd-7000;
|
||||||
|
hw-framework-13-intel-11th = import ./hwModules/framework/13/intel-11th;
|
||||||
|
hw-lenovo-yoga-9i-intel-13th = import ./hwModules/lenovo/yoga-9i/intel-13th;
|
||||||
|
hw-thinkpad-t440p = import ./hwModules/thinkpad/t440p;
|
||||||
|
|
||||||
nixos = import ./nixosModules self;
|
nixos = import ./nixosModules self;
|
||||||
users = import ./userModules self;
|
users = import ./userModules self;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,9 +1,28 @@
|
||||||
{pkgs, ...}: {
|
self: {pkgs, ...}: {
|
||||||
|
imports = [
|
||||||
|
./firefox
|
||||||
|
./mail
|
||||||
|
./secrets.nix
|
||||||
|
./windowManagers
|
||||||
|
self.homeManagerModules.default
|
||||||
|
self.inputs.agenix.homeManagerModules.default
|
||||||
|
self.inputs.nur.hmModules.nur
|
||||||
|
];
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
homeDirectory = "/home/aly";
|
homeDirectory = "/home/aly";
|
||||||
|
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
|
bitwarden-desktop
|
||||||
curl
|
curl
|
||||||
|
fractal
|
||||||
|
nicotine-plus
|
||||||
|
obsidian
|
||||||
|
picard
|
||||||
|
tauon
|
||||||
|
transmission-remote-gtk
|
||||||
|
tuba
|
||||||
|
vesktop
|
||||||
];
|
];
|
||||||
|
|
||||||
stateVersion = "24.05";
|
stateVersion = "24.05";
|
||||||
|
@ -34,6 +53,7 @@
|
||||||
base_url = "https://passwords.raffauflabs.com";
|
base_url = "https://passwords.raffauflabs.com";
|
||||||
email = "alyraffauf@fastmail.com";
|
email = "alyraffauf@fastmail.com";
|
||||||
lock_timeout = 14400;
|
lock_timeout = 14400;
|
||||||
|
pinentry = pkgs.pinentry-gnome3;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -42,10 +62,17 @@
|
||||||
|
|
||||||
ar.home = {
|
ar.home = {
|
||||||
apps = {
|
apps = {
|
||||||
|
chromium.enable = true;
|
||||||
fastfetch.enable = true;
|
fastfetch.enable = true;
|
||||||
|
firefox.enable = true;
|
||||||
helix.enable = true;
|
helix.enable = true;
|
||||||
|
kitty.enable = true;
|
||||||
shell.enable = true;
|
shell.enable = true;
|
||||||
|
vsCodium.enable = true;
|
||||||
yazi.enable = true;
|
yazi.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
defaultApps.enable = true;
|
||||||
|
theme.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
|
@ -1,55 +0,0 @@
|
||||||
self: {pkgs, ...}: {
|
|
||||||
imports = [
|
|
||||||
./common.nix
|
|
||||||
./firefox
|
|
||||||
./mail
|
|
||||||
./secrets.nix
|
|
||||||
./windowManagers
|
|
||||||
self.homeManagerModules.default
|
|
||||||
self.inputs.agenix.homeManagerModules.default
|
|
||||||
self.inputs.nur.hmModules.nur
|
|
||||||
];
|
|
||||||
|
|
||||||
home = {
|
|
||||||
homeDirectory = "/home/aly";
|
|
||||||
|
|
||||||
packages = with pkgs; [
|
|
||||||
bitwarden-desktop
|
|
||||||
fractal
|
|
||||||
nicotine-plus
|
|
||||||
obsidian
|
|
||||||
picard
|
|
||||||
tauon
|
|
||||||
transmission-remote-gtk
|
|
||||||
tuba
|
|
||||||
vesktop
|
|
||||||
];
|
|
||||||
|
|
||||||
stateVersion = "24.05";
|
|
||||||
username = "aly";
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.rbw.settings.pinentry = pkgs.pinentry-gnome3;
|
|
||||||
systemd.user.startServices = "legacy"; # Needed for auto-mounting agenix secrets.
|
|
||||||
|
|
||||||
ar.home = {
|
|
||||||
apps = {
|
|
||||||
chromium.enable = true;
|
|
||||||
firefox.enable = true;
|
|
||||||
kitty.enable = true;
|
|
||||||
vsCodium.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
defaultApps = {
|
|
||||||
enable = true;
|
|
||||||
fileManager = pkgs.xfce.thunar;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.gammastep.enable = true;
|
|
||||||
|
|
||||||
theme = {
|
|
||||||
enable = true;
|
|
||||||
borders.radius = 0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
self: {pkgs, ...}: {
|
|
||||||
imports = [
|
|
||||||
./common.nix
|
|
||||||
./secrets.nix
|
|
||||||
self.homeManagerModules.default
|
|
||||||
self.inputs.agenix.homeManagerModules.default
|
|
||||||
];
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
helix.defaultEditor = true;
|
|
||||||
rbw.settings.pinentry = pkgs.pinentry-tty;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -10,7 +10,6 @@
|
||||||
./home.nix
|
./home.nix
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
./stylix.nix
|
./stylix.nix
|
||||||
self.inputs.nixhw.nixosModules.framework-13-intel-11th
|
|
||||||
self.nixosModules.common-base
|
self.nixosModules.common-base
|
||||||
self.nixosModules.common-locale
|
self.nixosModules.common-locale
|
||||||
self.nixosModules.common-mauville-share
|
self.nixosModules.common-mauville-share
|
||||||
|
@ -18,6 +17,7 @@
|
||||||
self.nixosModules.common-overlays
|
self.nixosModules.common-overlays
|
||||||
self.nixosModules.common-pkgs
|
self.nixosModules.common-pkgs
|
||||||
self.nixosModules.common-wifi-profiles
|
self.nixosModules.common-wifi-profiles
|
||||||
|
self.nixosModules.hw-framework-13-intel-11th
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
|
|
|
@ -1,13 +1,27 @@
|
||||||
{
|
{self, ...}: {
|
||||||
home-manager.sharedModules = [
|
home-manager = {
|
||||||
|
sharedModules = [
|
||||||
{
|
{
|
||||||
services.easyeffects = {
|
wayland.windowManager.sway.config.output = {"BOE 0x095F Unknown".scale = "1.5";};
|
||||||
|
|
||||||
|
ar.home = {
|
||||||
|
desktop.hyprland.laptopMonitors = ["desc:BOE 0x095F,preferred,auto,1.566667"];
|
||||||
|
|
||||||
|
services = {
|
||||||
|
easyeffects = {
|
||||||
enable = true;
|
enable = true;
|
||||||
preset = "fw13-easy-effects";
|
preset = "fw13-easy-effects";
|
||||||
};
|
};
|
||||||
|
|
||||||
wayland.windowManager.sway.config.output = {"BOE 0x095F Unknown".scale = "1.5";};
|
gammastep.enable = true;
|
||||||
ar.home.desktop.hyprland.laptopMonitors = ["desc:BOE 0x095F,preferred,auto,1.566667"];
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
users = {
|
||||||
|
aly = self.homeManagerModules.aly;
|
||||||
|
dustin = self.homeManagerModules.dustin;
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,15 +6,15 @@ Framework Laptop 13 with AMD 7000 series mainboard. My primary machine used for
|
||||||
|
|
||||||
## Todo
|
## Todo
|
||||||
|
|
||||||
- \[ \] upgrade to [2.8k 120Hz Framework screen](https://frame.work/products/display-kit?v=FRANJF0001).
|
- \[x\] upgrade to [2.8k 120Hz Framework screen](https://frame.work/products/display-kit?v=FRANJF0001).
|
||||||
|
|
||||||
## Specs
|
## Specs
|
||||||
|
|
||||||
| Model | Framework Laptop 13 |
|
| Model | Framework Laptop 13 |
|
||||||
|---------|---------------------------|
|
|---------|---------------------------|
|
||||||
| Display | 13.5" 2256x1504 60Hz |
|
| Display | 13.5" 2880x1920 120Hz |
|
||||||
| CPU | AMD Ryzen 7640U |
|
| CPU | AMD Ryzen 7640U |
|
||||||
| RAM | 32GB 16GBx2) DDR5-5600Mhz |
|
| RAM | 32GB 16GBx2 DDR5-5600Mhz |
|
||||||
| GPU | AMD Radeon 760M |
|
| GPU | AMD Radeon 760M |
|
||||||
| Disks | 1TB Sk hynix P41 |
|
| Disks | 1TB Sk hynix P41 |
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
./stylix.nix
|
./stylix.nix
|
||||||
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/nvme0n1"];})
|
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/nvme0n1"];})
|
||||||
self.inputs.nixhw.nixosModules.framework-13-amd-7000
|
|
||||||
self.nixosModules.common-auto-upgrade
|
self.nixosModules.common-auto-upgrade
|
||||||
self.nixosModules.common-base
|
self.nixosModules.common-base
|
||||||
self.nixosModules.common-locale
|
self.nixosModules.common-locale
|
||||||
|
@ -20,6 +19,7 @@
|
||||||
self.nixosModules.common-pkgs
|
self.nixosModules.common-pkgs
|
||||||
self.nixosModules.common-tailscale
|
self.nixosModules.common-tailscale
|
||||||
self.nixosModules.common-wifi-profiles
|
self.nixosModules.common-wifi-profiles
|
||||||
|
self.nixosModules.hw-framework-13-amd-7000
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{lib, ...}: {
|
{self, ...}: {
|
||||||
home-manager.sharedModules = [
|
home-manager = {
|
||||||
|
sharedModules = [
|
||||||
{
|
{
|
||||||
wayland.windowManager.sway.config.output = {
|
wayland.windowManager.sway.config.output = {
|
||||||
"eDP-1" = {
|
"eDP-1" = {
|
||||||
|
@ -9,19 +10,18 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
ar.home = {
|
ar.home = {
|
||||||
desktop.hyprland.laptopMonitors = ["eDP-1,2880x1920@120, 0x0, 2, vrr, 1"];
|
desktop.hyprland.laptopMonitors = ["eDP-1,2880x1920@60, 0x0, 2, vrr, 0"];
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
easyeffects = {
|
easyeffects = {
|
||||||
enable = true;
|
enable = true;
|
||||||
preset = "fw13-easy-effects";
|
preset = "fw13-easy-effects";
|
||||||
};
|
};
|
||||||
|
|
||||||
gammastep.enable = lib.mkForce false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
theme.borders.radius = lib.mkForce 10;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
users.aly = self.homeManagerModules.aly;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||||
image = "${self.inputs.wallpapers}/wallhaven-mp886k.jpg";
|
image = "${self.inputs.wallpapers}/wallhaven-3lyrvy.png";
|
||||||
imageScalingMode = "fill";
|
imageScalingMode = "fill";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
|
|
||||||
|
|
|
@ -14,10 +14,6 @@ in {
|
||||||
./raffauflabs.nix
|
./raffauflabs.nix
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
./stylix.nix
|
./stylix.nix
|
||||||
self.inputs.nixhw.nixosModules.common-amd-cpu
|
|
||||||
self.inputs.nixhw.nixosModules.common-amd-gpu
|
|
||||||
self.inputs.nixhw.nixosModules.common-bluetooth
|
|
||||||
self.inputs.nixhw.nixosModules.common-ssd
|
|
||||||
self.nixosModules.common-auto-upgrade
|
self.nixosModules.common-auto-upgrade
|
||||||
self.nixosModules.common-base
|
self.nixosModules.common-base
|
||||||
self.nixosModules.common-locale
|
self.nixosModules.common-locale
|
||||||
|
@ -26,6 +22,10 @@ in {
|
||||||
self.nixosModules.common-pkgs
|
self.nixosModules.common-pkgs
|
||||||
self.nixosModules.common-tailscale
|
self.nixosModules.common-tailscale
|
||||||
self.nixosModules.common-wifi-profiles
|
self.nixosModules.common-wifi-profiles
|
||||||
|
self.nixosModules.hw-common-amd-cpu
|
||||||
|
self.nixosModules.hw-common-amd-gpu
|
||||||
|
self.nixosModules.hw-common-bluetooth
|
||||||
|
self.nixosModules.hw-common-ssd
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
|
|
@ -33,7 +33,8 @@
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
users.aly = lib.mkForce ({config, ...}: {
|
users = {
|
||||||
|
aly = {config, ...}: {
|
||||||
imports = [self.homeManagerModules.aly];
|
imports = [self.homeManagerModules.aly];
|
||||||
|
|
||||||
age.secrets = {
|
age.secrets = {
|
||||||
|
@ -96,6 +97,9 @@
|
||||||
orientation = "center";
|
orientation = "center";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
});
|
};
|
||||||
|
|
||||||
|
dustin = self.homeManagerModules.dustin;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
}: {
|
}: {
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-light-hard.yaml";
|
||||||
image = "${self.inputs.wallpapers}/wallhaven-3lyrvy.png";
|
image = "${self.inputs.wallpapers}/wallhaven-3lyrvy.png";
|
||||||
imageScalingMode = "fill";
|
imageScalingMode = "fill";
|
||||||
polarity = "dark";
|
polarity = "light";
|
||||||
|
|
||||||
cursor = {
|
cursor = {
|
||||||
name = "Bibata-Modern-Classic";
|
name = "Bibata-Modern-Classic";
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
./stylix.nix
|
./stylix.nix
|
||||||
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/nvme0n1"];})
|
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/nvme0n1"];})
|
||||||
self.inputs.nixhw.nixosModules.lenovo-yoga-9i-intel-13th
|
|
||||||
self.nixosModules.common-auto-upgrade
|
self.nixosModules.common-auto-upgrade
|
||||||
self.nixosModules.common-base
|
self.nixosModules.common-base
|
||||||
self.nixosModules.common-locale
|
self.nixosModules.common-locale
|
||||||
|
@ -20,6 +19,7 @@
|
||||||
self.nixosModules.common-pkgs
|
self.nixosModules.common-pkgs
|
||||||
self.nixosModules.common-tailscale
|
self.nixosModules.common-tailscale
|
||||||
self.nixosModules.common-wifi-profiles
|
self.nixosModules.common-wifi-profiles
|
||||||
|
self.nixosModules.hw-lenovo-yoga-9i-intel-13th
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
|
|
@ -4,7 +4,8 @@
|
||||||
self,
|
self,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
home-manager.sharedModules = [
|
home-manager = {
|
||||||
|
sharedModules = [
|
||||||
{
|
{
|
||||||
wayland.windowManager = {
|
wayland.windowManager = {
|
||||||
hyprland.settings = {
|
hyprland.settings = {
|
||||||
|
@ -41,7 +42,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
ar.home.desktop.hyprland = {
|
ar.home = {
|
||||||
|
desktop.hyprland = {
|
||||||
laptopMonitors = ["desc:Samsung Display Corp. 0x4152,preferred,auto,2,transform,0"];
|
laptopMonitors = ["desc:Samsung Display Corp. 0x4152,preferred,auto,2,transform,0"];
|
||||||
|
|
||||||
tabletMode = {
|
tabletMode = {
|
||||||
|
@ -49,6 +51,12 @@
|
||||||
switches = ["Lenovo Yoga Tablet Mode Control switch"];
|
switches = ["Lenovo Yoga Tablet Mode Control switch"];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.gammastep.enable = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
users.aly = self.homeManagerModules.aly;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||||
image = "${self.inputs.wallpapers}/wallhaven-jxp18w.jpg";
|
image = "${self.inputs.wallpapers}/wallhaven-3lyrvy.png";
|
||||||
imageScalingMode = "fill";
|
imageScalingMode = "fill";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
./stylix.nix
|
./stylix.nix
|
||||||
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/sda"];})
|
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/sda"];})
|
||||||
self.inputs.nixhw.nixosModules.thinkpad-t440p
|
|
||||||
self.nixosModules.common-auto-upgrade
|
self.nixosModules.common-auto-upgrade
|
||||||
self.nixosModules.common-base
|
self.nixosModules.common-base
|
||||||
self.nixosModules.common-locale
|
self.nixosModules.common-locale
|
||||||
|
@ -20,6 +19,7 @@
|
||||||
self.nixosModules.common-pkgs
|
self.nixosModules.common-pkgs
|
||||||
self.nixosModules.common-tailscale
|
self.nixosModules.common-tailscale
|
||||||
self.nixosModules.common-wifi-profiles
|
self.nixosModules.common-wifi-profiles
|
||||||
|
self.nixosModules.hw-thinkpad-t440p
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
@ -48,10 +48,10 @@
|
||||||
greetd = {
|
greetd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
autologin = "aly";
|
autologin = "aly";
|
||||||
session = lib.getExe config.programs.sway.package;
|
session = lib.getExe config.programs.hyprland.package;
|
||||||
};
|
};
|
||||||
|
|
||||||
sway.enable = true;
|
hyprland.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
laptopMode = true;
|
laptopMode = true;
|
||||||
|
|
|
@ -1,16 +1,24 @@
|
||||||
{
|
{self, ...}: {
|
||||||
home-manager.sharedModules = [
|
home-manager = {
|
||||||
|
sharedModules = [
|
||||||
{
|
{
|
||||||
wayland.windowManager.sway.config.output = {"LG Display 0x0569 Unknown".scale = "1.25";};
|
wayland.windowManager.sway.config.output = {"LG Display 0x0569 Unknown".scale = "1.25";};
|
||||||
|
|
||||||
ar.home = {
|
ar.home = {
|
||||||
desktop.hyprland.laptopMonitors = ["desc:LG Display 0x0569,preferred,auto,1.25"];
|
desktop.hyprland.laptopMonitors = ["desc:LG Display 0x0569,preferred,auto,1.25"];
|
||||||
|
|
||||||
services.easyeffects = {
|
services = {
|
||||||
|
easyeffects = {
|
||||||
enable = true;
|
enable = true;
|
||||||
preset = "LoudnessEqualizer";
|
preset = "LoudnessEqualizer";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
gammastep.enable = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
users.aly = self.homeManagerModules.aly;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,10 +8,6 @@
|
||||||
./raffauflabs.nix
|
./raffauflabs.nix
|
||||||
./secrets.nix
|
./secrets.nix
|
||||||
(import ./../../disko/btrfs-subvolumes.nix {disks = ["/dev/sda"];})
|
(import ./../../disko/btrfs-subvolumes.nix {disks = ["/dev/sda"];})
|
||||||
self.inputs.nixhw.nixosModules.common-bluetooth
|
|
||||||
self.inputs.nixhw.nixosModules.common-intel-cpu
|
|
||||||
self.inputs.nixhw.nixosModules.common-intel-gpu
|
|
||||||
self.inputs.nixhw.nixosModules.common-ssd
|
|
||||||
self.nixosModules.common-auto-upgrade
|
self.nixosModules.common-auto-upgrade
|
||||||
self.nixosModules.common-base
|
self.nixosModules.common-base
|
||||||
self.nixosModules.common-locale
|
self.nixosModules.common-locale
|
||||||
|
@ -21,6 +17,10 @@
|
||||||
self.nixosModules.common-pkgs
|
self.nixosModules.common-pkgs
|
||||||
self.nixosModules.common-tailscale
|
self.nixosModules.common-tailscale
|
||||||
self.nixosModules.common-wifi-profiles
|
self.nixosModules.common-wifi-profiles
|
||||||
|
self.nixosModules.hw-common-bluetooth
|
||||||
|
self.nixosModules.hw-common-intel-cpu
|
||||||
|
self.nixosModules.hw-common-intel-gpu
|
||||||
|
self.nixosModules.hw-common-ssd
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
|
|
@ -3,5 +3,32 @@
|
||||||
self,
|
self,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
home-manager.users.aly = lib.mkForce self.homeManagerModules.aly-nox;
|
home-manager.users.aly = lib.mkForce (
|
||||||
|
{pkgs, ...}: {
|
||||||
|
imports = [self.homeManagerModules.default];
|
||||||
|
|
||||||
|
home = {
|
||||||
|
homeDirectory = "/home/aly";
|
||||||
|
|
||||||
|
packages = with pkgs; [
|
||||||
|
curl
|
||||||
|
];
|
||||||
|
|
||||||
|
stateVersion = "24.05";
|
||||||
|
username = "aly";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
helix.defaultEditor = true;
|
||||||
|
home-manager.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
ar.home.apps = {
|
||||||
|
fastfetch.enable = true;
|
||||||
|
helix.enable = true;
|
||||||
|
shell.enable = true;
|
||||||
|
yazi.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,6 +22,7 @@ in {
|
||||||
"git.${domain}"
|
"git.${domain}"
|
||||||
"music.${domain}"
|
"music.${domain}"
|
||||||
"passwords.${domain}"
|
"passwords.${domain}"
|
||||||
|
"pics.${domain}"
|
||||||
"plex.${domain}"
|
"plex.${domain}"
|
||||||
"podcasts.${domain}"
|
"podcasts.${domain}"
|
||||||
domain
|
domain
|
||||||
|
@ -238,6 +239,26 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
"pics.${domain}" = {
|
||||||
|
enableACME = true;
|
||||||
|
forceSSL = true;
|
||||||
|
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://${ip}:${toString 3001}";
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
client_max_body_size 5000M;
|
||||||
|
proxy_buffering off;
|
||||||
|
proxy_redirect http:// https://;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_set_header Connection "upgrade";
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
"plex.${domain}" = {
|
"plex.${domain}" = {
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
|
|
22
hwModules/common/bluetooth/default.nix
Normal file
22
hwModules/common/bluetooth/default.nix
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
hardware = {
|
||||||
|
bluetooth.enable = true;
|
||||||
|
|
||||||
|
pulseaudio = {
|
||||||
|
enable = lib.mkForce false;
|
||||||
|
package = pkgs.pulseaudioFull; # Use extra Bluetooth codecs like aptX
|
||||||
|
|
||||||
|
extraConfig = ''
|
||||||
|
load-module module-bluetooth-discover
|
||||||
|
load-module module-bluetooth-policy
|
||||||
|
load-module module-switch-on-connect
|
||||||
|
'';
|
||||||
|
|
||||||
|
support32Bit = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
9
hwModules/common/cpu/amd/default.nix
Normal file
9
hwModules/common/cpu/amd/default.nix
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{lib, ...}: {
|
||||||
|
boot = {
|
||||||
|
kernelModules = ["kvm-amd"];
|
||||||
|
kernelParams = ["amd_pstate=active"];
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.cpu.amd.updateMicrocode = true;
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
}
|
5
hwModules/common/cpu/intel/default.nix
Normal file
5
hwModules/common/cpu/intel/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{lib, ...}: {
|
||||||
|
boot.kernelModules = ["kvm-intel"];
|
||||||
|
hardware.cpu.intel.updateMicrocode = true;
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
}
|
14
hwModules/common/gpu/amd/default.nix
Normal file
14
hwModules/common/gpu/amd/default.nix
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{...}: {
|
||||||
|
environment.variables.VDPAU_DRIVER = "radeonsi";
|
||||||
|
|
||||||
|
hardware.amdgpu = {
|
||||||
|
initrd.enable = true;
|
||||||
|
|
||||||
|
amdvlk = {
|
||||||
|
enable = true;
|
||||||
|
support32Bit.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
opencl.enable = true;
|
||||||
|
};
|
||||||
|
}
|
32
hwModules/common/gpu/intel/default.nix
Normal file
32
hwModules/common/gpu/intel/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{pkgs, ...}: {
|
||||||
|
boot.initrd.kernelModules = ["i915"];
|
||||||
|
|
||||||
|
environment.sessionVariables = {
|
||||||
|
LIBVA_DRIVER_NAME = "iHD";
|
||||||
|
VDPAU_DRIVER = "va_gl";
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware = {
|
||||||
|
intel-gpu-tools.enable = true;
|
||||||
|
|
||||||
|
opengl = {
|
||||||
|
enable = true;
|
||||||
|
driSupport = true;
|
||||||
|
driSupport32Bit = true;
|
||||||
|
|
||||||
|
extraPackages = [
|
||||||
|
pkgs.intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
||||||
|
(pkgs.intel-vaapi-driver.override {enableHybridCodec = true;})
|
||||||
|
pkgs.libvdpau-va-gl
|
||||||
|
];
|
||||||
|
|
||||||
|
extraPackages32 = [
|
||||||
|
pkgs.driversi686Linux.intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
||||||
|
(pkgs.driversi686Linux.intel-vaapi-driver.override {enableHybridCodec = true;})
|
||||||
|
pkgs.driversi686Linux.libvdpau-va-gl
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver.videoDrivers = ["modesetting"];
|
||||||
|
}
|
2
hwModules/common/laptop/amd-gpu.nix
Normal file
2
hwModules/common/laptop/amd-gpu.nix
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
{...}: {
|
||||||
|
}
|
27
hwModules/common/laptop/default.nix
Normal file
27
hwModules/common/laptop/default.nix
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services = {
|
||||||
|
pipewire.wireplumber.extraConfig = {
|
||||||
|
# Pipewire eats battery by never disabling the camera.
|
||||||
|
"10-disable-camera" = {
|
||||||
|
"wireplumber.profiles" = {
|
||||||
|
main = {
|
||||||
|
"monitor.libcamera" = "disabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
power-profiles-daemon.enable = lib.mkDefault true;
|
||||||
|
|
||||||
|
udev.extraRules = ''
|
||||||
|
SUBSYSTEM=="power_supply", ATTR{online}=="1", ACTION=="change", RUN+="${lib.getExe pkgs.power-profiles-daemon} set balanced"
|
||||||
|
SUBSYSTEM=="power_supply", ATTR{online}=="0", ACTION=="change", RUN+="${lib.getExe pkgs.power-profiles-daemon} set power-saver"
|
||||||
|
'';
|
||||||
|
|
||||||
|
upower.enable = lib.mkDefault true;
|
||||||
|
};
|
||||||
|
}
|
4
hwModules/common/laptop/intel-cpu.nix
Normal file
4
hwModules/common/laptop/intel-cpu.nix
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{...}: {
|
||||||
|
powerManagement.powertop.enable = true;
|
||||||
|
services.thermald.enable = true;
|
||||||
|
}
|
3
hwModules/common/ssd/default.nix
Normal file
3
hwModules/common/ssd/default.nix
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
{...}: {
|
||||||
|
services.fstrim.enable = true;
|
||||||
|
}
|
30
hwModules/framework/13/amd-7000/default.nix
Normal file
30
hwModules/framework/13/amd-7000/default.nix
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
../../../common/bluetooth
|
||||||
|
../../../common/cpu/amd
|
||||||
|
../../../common/gpu/amd
|
||||||
|
../../../common/laptop
|
||||||
|
../../../common/laptop/amd-gpu.nix
|
||||||
|
../../../common/ssd
|
||||||
|
../../common.nix
|
||||||
|
../common.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
initrd.availableKernelModules = ["nvme" "sd_mod" "thunderbolt" "usb_storage" "xhci_pci"];
|
||||||
|
extraModprobeConfig = ''
|
||||||
|
options snd_hda_intel power_save=1
|
||||||
|
'';
|
||||||
|
kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.networkmanager = {
|
||||||
|
enable = true;
|
||||||
|
wifi.powersave = true;
|
||||||
|
wifi.backend = "iwd";
|
||||||
|
};
|
||||||
|
}
|
2
hwModules/framework/13/common.nix
Normal file
2
hwModules/framework/13/common.nix
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
{...}: {
|
||||||
|
}
|
28
hwModules/framework/13/intel-11th/default.nix
Normal file
28
hwModules/framework/13/intel-11th/default.nix
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
../../../common/bluetooth
|
||||||
|
../../../common/cpu/intel
|
||||||
|
../../../common/gpu/intel
|
||||||
|
../../../common/laptop
|
||||||
|
../../../common/laptop/intel-cpu.nix
|
||||||
|
../../../common/ssd
|
||||||
|
../../common.nix
|
||||||
|
../common.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
blacklistedKernelModules = ["cros-usbpd-charger"];
|
||||||
|
initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"];
|
||||||
|
kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
|
kernelParams = [
|
||||||
|
"nvme.noacpi=1" # https://community.frame.work/t/linux-battery-life-tuning/6665/156
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.acpilight.enable = true;
|
||||||
|
}
|
35
hwModules/framework/common.nix
Normal file
35
hwModules/framework/common.nix
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
boot = {
|
||||||
|
extraModulePackages = with config.boot.kernelPackages; [
|
||||||
|
framework-laptop-kmod
|
||||||
|
];
|
||||||
|
|
||||||
|
kernelModules = [
|
||||||
|
# https://github.com/DHowett/framework-laptop-kmod?tab=readme-ov-file#usage
|
||||||
|
"cros_ec_lpcs"
|
||||||
|
"cros_ec"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [pkgs.framework-tool] ++ lib.optional (pkgs ? "fw-ectool") pkgs.fw-ectool;
|
||||||
|
|
||||||
|
hardware = {
|
||||||
|
enableAllFirmware = true;
|
||||||
|
sensor.iio.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services = {
|
||||||
|
fprintd.enable = true;
|
||||||
|
fwupd.enable = true;
|
||||||
|
|
||||||
|
udev.extraRules = ''
|
||||||
|
# Ethernet expansion card support
|
||||||
|
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="0bda", ATTR{idProduct}=="8156", ATTR{power/autosuspend}="20"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
3
hwModules/lenovo/common.nix
Normal file
3
hwModules/lenovo/common.nix
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
{...}: {
|
||||||
|
hardware.enableAllFirmware = true;
|
||||||
|
}
|
3
hwModules/lenovo/yoga-9i/common.nix
Normal file
3
hwModules/lenovo/yoga-9i/common.nix
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
{...}: {
|
||||||
|
hardware.sensor.iio.enable = true;
|
||||||
|
}
|
21
hwModules/lenovo/yoga-9i/intel-13th/default.nix
Normal file
21
hwModules/lenovo/yoga-9i/intel-13th/default.nix
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
../../../common/bluetooth
|
||||||
|
../../../common/cpu/intel
|
||||||
|
../../../common/gpu/intel
|
||||||
|
../../../common/laptop
|
||||||
|
../../../common/laptop/intel-cpu.nix
|
||||||
|
../../../common/ssd
|
||||||
|
../../common.nix
|
||||||
|
../common.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
initrd.availableKernelModules = ["nvme" "sd_mod" "thunderbolt" "usb_storage" "xhci_pci"];
|
||||||
|
kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;
|
||||||
|
};
|
||||||
|
}
|
10
hwModules/thinkpad/common.nix
Normal file
10
hwModules/thinkpad/common.nix
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{...}: {
|
||||||
|
hardware = {
|
||||||
|
enableAllFirmware = true;
|
||||||
|
|
||||||
|
trackpoint = {
|
||||||
|
enable = true;
|
||||||
|
emulateWheel = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
32
hwModules/thinkpad/t440p/default.nix
Normal file
32
hwModules/thinkpad/t440p/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
../../common/bluetooth
|
||||||
|
../../common/cpu/intel
|
||||||
|
../../common/gpu/intel
|
||||||
|
../../common/laptop
|
||||||
|
../../common/laptop/intel-cpu.nix
|
||||||
|
../../common/ssd
|
||||||
|
../common.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
extraModprobeConfig = ''
|
||||||
|
options bbswitch use_acpi_to_detect_card_state=1
|
||||||
|
options thinkpad_acpi force_load=1 fan_control=1
|
||||||
|
'';
|
||||||
|
|
||||||
|
initrd.availableKernelModules = [
|
||||||
|
"ahci"
|
||||||
|
"ehci_pci"
|
||||||
|
"rtsx_pci_sdmmc"
|
||||||
|
"sd_mod"
|
||||||
|
"sr_mod"
|
||||||
|
"usb_storage"
|
||||||
|
"xhci_pci"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
powerManagement.cpuFreqGovernor = "ondemand";
|
||||||
|
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
}
|
1
secrets/publicKeys/aly_mossdeep.pub
Normal file
1
secrets/publicKeys/aly_mossdeep.pub
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOCrKJ8OtS2JxrPUrTM3ZRPpyo8HX++Fuv/gWIsHoXzO achac@mossdeep
|
|
@ -2,14 +2,11 @@
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
self,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [./syncthing.nix];
|
imports = [./syncthing.nix];
|
||||||
|
|
||||||
config = lib.mkIf config.ar.users.aly.enable {
|
config = lib.mkIf config.ar.users.aly.enable {
|
||||||
home-manager.users.aly = self.homeManagerModules.aly;
|
|
||||||
|
|
||||||
users.users.aly = {
|
users.users.aly = {
|
||||||
description = "Aly Raffauf";
|
description = "Aly Raffauf";
|
||||||
extraGroups = config.ar.users.defaultGroups;
|
extraGroups = config.ar.users.defaultGroups;
|
||||||
|
@ -25,6 +22,7 @@
|
||||||
keyFiles = [
|
keyFiles = [
|
||||||
../../secrets/publicKeys/aly_lavaridge.pub
|
../../secrets/publicKeys/aly_lavaridge.pub
|
||||||
../../secrets/publicKeys/aly_mauville.pub
|
../../secrets/publicKeys/aly_mauville.pub
|
||||||
|
../../secrets/publicKeys/aly_mossdeep.pub
|
||||||
../../secrets/publicKeys/aly_petalburg.pub
|
../../secrets/publicKeys/aly_petalburg.pub
|
||||||
../../secrets/publicKeys/aly_rustboro.pub
|
../../secrets/publicKeys/aly_rustboro.pub
|
||||||
];
|
];
|
||||||
|
|
|
@ -11,6 +11,7 @@ in {
|
||||||
services.syncthing = {
|
services.syncthing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
cert = cfg.certFile;
|
cert = cfg.certFile;
|
||||||
|
configDir = "${config.services.syncthing.dataDir}/.syncthing";
|
||||||
dataDir = "/home/aly";
|
dataDir = "/home/aly";
|
||||||
key = cfg.keyFile;
|
key = cfg.keyFile;
|
||||||
openDefaultPorts = true;
|
openDefaultPorts = true;
|
||||||
|
@ -29,7 +30,7 @@ in {
|
||||||
"iphone12" = {id = "SBQNUXS-H4XDJ3E-RBHJPT5-45WDJJA-2U43M4P-23XGUJ7-E3CNNKZ-BXSGIA3";}; # iPhone 12 Pro Max
|
"iphone12" = {id = "SBQNUXS-H4XDJ3E-RBHJPT5-45WDJJA-2U43M4P-23XGUJ7-E3CNNKZ-BXSGIA3";}; # iPhone 12 Pro Max
|
||||||
"lavaridge" = {id = "TMMSCVA-MDJTDPC-PC47NUA-2VPLAIB-6S6MEU7-KALIGUJ-AWDUOUU-XD73MAY";}; # Framework 13 AMD
|
"lavaridge" = {id = "TMMSCVA-MDJTDPC-PC47NUA-2VPLAIB-6S6MEU7-KALIGUJ-AWDUOUU-XD73MAY";}; # Framework 13 AMD
|
||||||
"mauville" = {id = "52MTCMC-PKEWSAU-HADMTZU-DY5EKFO-B323P7V-OBXLNTQ-EJY7F7Y-EUWFBQX";}; # Desktop/homelab b
|
"mauville" = {id = "52MTCMC-PKEWSAU-HADMTZU-DY5EKFO-B323P7V-OBXLNTQ-EJY7F7Y-EUWFBQX";}; # Desktop/homelab b
|
||||||
"mossdeep" = {id = "XRIGHMT-54OGBWP-UAAGAJS-LGTRHA2-EMKOMEB-EJEWKZN-GJFK6FO-3O6KQQ4";}; # Steam Deck OLED
|
"mossdeep" = {id = "3DODR5S-WU6DTH6-Y35QZX7-7OZEOGG-CYVGGCJ-TJ6AOZX-MFDSRCR-NM727A6";}; # Yoga Slim 7x
|
||||||
"petalburg" = {id = "ECTD3LW-YZTJIXX-HLQYXT7-UGZSGST-3DDKF72-DJPMDHE-SUYDWIT-ASTKTAE";}; # Yoga 9i
|
"petalburg" = {id = "ECTD3LW-YZTJIXX-HLQYXT7-UGZSGST-3DDKF72-DJPMDHE-SUYDWIT-ASTKTAE";}; # Yoga 9i
|
||||||
"rustboro" = {id = "7CXGPQN-7DYDYJN-DKELOR3-RD4HZUW-SSUDGLZ-WVXYFUT-DPT2MGD-6PO5BQF";}; # Thinkpad t440p
|
"rustboro" = {id = "7CXGPQN-7DYDYJN-DKELOR3-RD4HZUW-SSUDGLZ-WVXYFUT-DPT2MGD-6PO5BQF";}; # Thinkpad t440p
|
||||||
"slateport" = {id = "MDJFDUG-UJAXQXI-AMEF2AR-PBMD5QK-Z5ZG6AA-RCJCU3M-GZHQQEA-X2JGOAK";}; # homelab a
|
"slateport" = {id = "MDJFDUG-UJAXQXI-AMEF2AR-PBMD5QK-Z5ZG6AA-RCJCU3M-GZHQQEA-X2JGOAK";}; # homelab a
|
||||||
|
|
|
@ -1,12 +1,9 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
self,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
config = lib.mkIf config.ar.users.dustin.enable {
|
config = lib.mkIf config.ar.users.dustin.enable {
|
||||||
home-manager.users.dustin = self.homeManagerModules.dustin;
|
|
||||||
|
|
||||||
users.users.dustin = {
|
users.users.dustin = {
|
||||||
description = "Dustin Raffauf";
|
description = "Dustin Raffauf";
|
||||||
extraGroups = config.ar.users.defaultGroups;
|
extraGroups = config.ar.users.defaultGroups;
|
||||||
|
|
Loading…
Reference in a new issue