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:
parent
044cc7da4a
commit
acecc56229
4 changed files with 12 additions and 56 deletions
|
|
@ -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
|
|
||||||
'';
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
13
flake.nix
13
flake.nix
|
|
@ -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;
|
|
||||||
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
20
home.nix
20
home.nix
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue