From acecc562295051130161d477ef427f8f2f48f166 Mon Sep 17 00:00:00 2001 From: Jet Pham Date: Wed, 4 Mar 2026 16:55:15 -0800 Subject: [PATCH] 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) --- configuration.nix | 26 +++++++++----------------- flake.nix | 13 ------------- hardware-configuration.nix | 9 +-------- home.nix | 20 ++------------------ 4 files changed, 12 insertions(+), 56 deletions(-) diff --git a/configuration.nix b/configuration.nix index d23e5d6..31d792b 100644 --- a/configuration.nix +++ b/configuration.nix @@ -13,8 +13,6 @@ # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; - boot.kernelParams = [ "usbcore.autosuspend=-1" ]; - # Boot time optimizations boot.loader.timeout = 0; # Boot immediately without waiting for user input @@ -191,6 +189,9 @@ # Framework-specific services # Enable fwupd for BIOS updates (distributed through LVFS) 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 nix.gc = { @@ -199,6 +200,7 @@ options = "--delete-older-than 7d"; }; nix.settings.auto-optimise-store = true; + nix.optimise.automatic = true; # Optimize Nix for RAM - use more memory for builds nix.settings = { @@ -339,11 +341,16 @@ }; # GameCube adapter udev rules for Slippi/Dolphin + # Disable USB autosuspend for Framework's problematic devices (fingerprint reader, USB-C hub) services.udev.extraRules = '' # GameCube adapter USB device (vendor ID 057e, product ID 0337) SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666" # GameCube adapter HID device (needed for Dolphin to access controllers) 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. @@ -360,19 +367,4 @@ # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 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 - ''; - } diff --git a/flake.nix b/flake.nix index a4d2396..beae9c2 100644 --- a/flake.nix +++ b/flake.nix @@ -51,19 +51,6 @@ nixpkgs.overlays = [ inputs.nur.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; - - }) ]; } ]; diff --git a/hardware-configuration.nix b/hardware-configuration.nix index 15c86a4..09d89e5 100644 --- a/hardware-configuration.nix +++ b/hardware-configuration.nix @@ -25,14 +25,7 @@ options = [ "fmask=0077" "dmask=0077" ]; }; - # Add swap file for hibernation support - # This creates a 96GB swap file to match your RAM capacity - swapDevices = [ - { - device = "/swapfile"; - size = 98304; # 96GB in MB - } - ]; + swapDevices = [ ]; # 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 diff --git a/home.nix b/home.nix index 922c84a..b97ad72 100644 --- a/home.nix +++ b/home.nix @@ -5,19 +5,10 @@ home.username = "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 - dconf.settings = let - nixConfigDirectory = "${config.home.homeDirectory}/Documents/nix-config"; - in { + dconf.settings = { "org/gnome/desktop/interface" = { clock-format = "12h"; clock-show-weekday = true; @@ -28,11 +19,6 @@ "org/gnome/system/location" = { 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" = { sleep-inactive-ac-type = "nothing"; }; @@ -103,10 +89,8 @@ nemo-with-extensions file-roller font-manager - antigravity-fhs claude-code kdePackages.kdenlive - zulip vesktop obs-studio