fix: a ton of different changes

home.nix:
  - Bumped home.stateVersion from "23.05" to "25.05"
  - Removed the nixConfigDirectory let binding and verbose comments,
  simplified to dconf.settings = {
  - Removed org/gnome/desktop/background block (cat.png wallpaper)
  - Removed antigravity-fhs from packages
  - Removed duplicate zulip entry

  configuration.nix:
  - Removed "usbcore.autosuspend=-1" from boot.kernelParams
  - Added targeted udev rules for Framework fingerprint reader (27a6) and
  USB-C hub (32ac) autosuspend
  - Added services.fstrim.enable = true for NVMe/SSD health
  - Added nix.optimise.automatic = true for periodic store deduplication
  - Removed duplicate comment and entire cat.png activation script

  hardware-configuration.nix:
  - Replaced 96GB swapfile config with swapDevices = [ ]

  flake.nix:
  - Removed the antigravity overlay (override + fhs binding)
This commit is contained in:
Jet Pham 2026-03-04 16:55:15 -08:00
parent 044cc7da4a
commit acecc56229
No known key found for this signature in database
4 changed files with 12 additions and 56 deletions

View file

@ -13,8 +13,6 @@
# Bootloader. # Bootloader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
boot.kernelParams = [ "usbcore.autosuspend=-1" ];
# Boot time optimizations # Boot time optimizations
boot.loader.timeout = 0; # Boot immediately without waiting for user input boot.loader.timeout = 0; # Boot immediately without waiting for user input
@ -192,6 +190,9 @@
# Enable fwupd for BIOS updates (distributed through LVFS) # Enable fwupd for BIOS updates (distributed through LVFS)
services.fwupd.enable = true; services.fwupd.enable = true;
# Enable periodic TRIM for NVMe/SSD health
services.fstrim.enable = true;
# Enable automatic garbage collection to prevent old generations from slowing boot # Enable automatic garbage collection to prevent old generations from slowing boot
nix.gc = { nix.gc = {
automatic = true; automatic = true;
@ -199,6 +200,7 @@
options = "--delete-older-than 7d"; options = "--delete-older-than 7d";
}; };
nix.settings.auto-optimise-store = true; nix.settings.auto-optimise-store = true;
nix.optimise.automatic = true;
# Optimize Nix for RAM - use more memory for builds # Optimize Nix for RAM - use more memory for builds
nix.settings = { nix.settings = {
@ -339,11 +341,16 @@
}; };
# GameCube adapter udev rules for Slippi/Dolphin # GameCube adapter udev rules for Slippi/Dolphin
# Disable USB autosuspend for Framework's problematic devices (fingerprint reader, USB-C hub)
services.udev.extraRules = '' services.udev.extraRules = ''
# GameCube adapter USB device (vendor ID 057e, product ID 0337) # GameCube adapter USB device (vendor ID 057e, product ID 0337)
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666" SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666"
# GameCube adapter HID device (needed for Dolphin to access controllers) # GameCube adapter HID device (needed for Dolphin to access controllers)
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666", GROUP="input" KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666", GROUP="input"
# Disable autosuspend for Framework fingerprint reader
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="27a6", ATTR{power/autosuspend}="-1"
# Disable autosuspend for Framework USB-C hub controllers
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="32ac", ATTR{power/autosuspend}="-1"
''; '';
# Open ports in the firewall. # Open ports in the firewall.
@ -360,19 +367,4 @@
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.05"; # Did you read the comment? system.stateVersion = "25.05"; # Did you read the comment?
# Set user profile picture for GNOME
# Set user profile picture for GNOME
system.activationScripts.script.text = ''
mkdir -p /var/lib/AccountsService/{icons,users}
img="/home/jet/Documents/nix-config/cat.png"
if [ -f "$img" ]; then
cp "$img" /var/lib/AccountsService/icons/jet
echo -e "[User]\nIcon=/var/lib/AccountsService/icons/jet\n" > /var/lib/AccountsService/users/jet
chown root:root /var/lib/AccountsService/users/jet
chmod 0600 /var/lib/AccountsService/users/jet
chown root:root /var/lib/AccountsService/icons/jet
chmod 0444 /var/lib/AccountsService/icons/jet
fi
'';
} }

View file

@ -51,19 +51,6 @@
nixpkgs.overlays = [ nixpkgs.overlays = [
inputs.nur.overlays.default inputs.nur.overlays.default
inputs.claude-code-overlay.overlays.default inputs.claude-code-overlay.overlays.default
(final: prev: {
antigravity = prev.antigravity.overrideAttrs (oldAttrs: rec {
version = "1.18.3";
src = prev.fetchurl {
url = "https://edgedl.me.gvt1.com/edgedl/release2/j0qc3/antigravity/stable/1.18.3-4739469533380608/linux-x64/Antigravity.tar.gz";
hash = "sha256:0f4n3i45gjr36hidpvibzn3p2jla2r7wg91ybmf2akafjn6f8zsc";
};
});
antigravity-fhs = final.antigravity.fhs;
})
]; ];
} }
]; ];

View file

@ -25,14 +25,7 @@
options = [ "fmask=0077" "dmask=0077" ]; options = [ "fmask=0077" "dmask=0077" ];
}; };
# Add swap file for hibernation support swapDevices = [ ];
# This creates a 96GB swap file to match your RAM capacity
swapDevices = [
{
device = "/swapfile";
size = 98304; # 96GB in MB
}
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -5,19 +5,10 @@
home.username = "jet"; home.username = "jet";
home.homeDirectory = "/home/jet"; home.homeDirectory = "/home/jet";
home.stateVersion = "23.05"; home.stateVersion = "25.05";
# Define configuration directory
# Note: we can't use config.home.homeDirectory in the let block if we're also defining it in the set
# recursively without strict evaluation issues sometimes, but here it should be fine if we just use the string.
# Safer to just use /home/jet or home.homeDirectory if it was passed in.
# Actually, `config.home.homeDirectory` is safe to use inside simple attribute sets.
# Let's use a let binding for clarity.
# Configure GNOME settings # Configure GNOME settings
dconf.settings = let dconf.settings = {
nixConfigDirectory = "${config.home.homeDirectory}/Documents/nix-config";
in {
"org/gnome/desktop/interface" = { "org/gnome/desktop/interface" = {
clock-format = "12h"; clock-format = "12h";
clock-show-weekday = true; clock-show-weekday = true;
@ -28,11 +19,6 @@
"org/gnome/system/location" = { "org/gnome/system/location" = {
enabled = true; enabled = true;
}; };
"org/gnome/desktop/background" = {
picture-uri = "file://${nixConfigDirectory}/cat.png";
picture-uri-dark = "file://${nixConfigDirectory}/cat.png";
picture-options = "wallpaper";
};
"org/gnome/settings-daemon/plugins/power" = { "org/gnome/settings-daemon/plugins/power" = {
sleep-inactive-ac-type = "nothing"; sleep-inactive-ac-type = "nothing";
}; };
@ -103,10 +89,8 @@
nemo-with-extensions nemo-with-extensions
file-roller file-roller
font-manager font-manager
antigravity-fhs
claude-code claude-code
kdePackages.kdenlive kdePackages.kdenlive
zulip
vesktop vesktop
obs-studio obs-studio