Compare commits

...

16 Commits

11 changed files with 182 additions and 38 deletions
Generated
+92 -15
View File
@@ -44,11 +44,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776913134, "lastModified": 1778105658,
"narHash": "sha256-/9vfRJTDh9Y4Duo862rzDqBIN7cEFTsAffVZ/UvxVas=", "narHash": "sha256-PxurBCejSjB99wxkpiPTUi4aHSYlfiHzrCwAGuDTRb8=",
"owner": "sadjow", "owner": "sadjow",
"repo": "claude-code-nix", "repo": "claude-code-nix",
"rev": "20e4b82d08d97bf45d78f32c31eb3509db1c2f2a", "rev": "f065f848c6a11f93124b09164fa92e8253a0264d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -182,11 +182,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776964438, "lastModified": 1778144356,
"narHash": "sha256-AF0cby9Xuijr5qaFpYKbm1mExV956Hk233bel6QxpFw=", "narHash": "sha256-dGM+QCstz/DyLB68+JK5GWyMx4QSqmOJEVgZmy63d/g=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "e09259dd2e147d35ef889784b51e89b0a10ffe15", "rev": "e4419d3123b780d5f4c0bceeace450424387638c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -220,6 +220,23 @@
"type": "github" "type": "github"
} }
}, },
"linux-ntfs": {
"flake": false,
"locked": {
"lastModified": 1778111793,
"narHash": "sha256-E+f1utc2Az4ZmqvkZ8lDgHpXsheJobUMbLff1vdpQHE=",
"owner": "Lumpiasty",
"repo": "linux-ntfs",
"rev": "7fbf82056e26d99bfa4d5aab87ce287cd8c8cbef",
"type": "github"
},
"original": {
"owner": "Lumpiasty",
"ref": "main",
"repo": "linux-ntfs",
"type": "github"
}
},
"nix-flatpak": { "nix-flatpak": {
"locked": { "locked": {
"lastModified": 1767983141, "lastModified": 1767983141,
@@ -236,6 +253,26 @@
"type": "github" "type": "github"
} }
}, },
"nix-skills": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1775452536,
"narHash": "sha256-1MjzL/U5OtALBmsel4YHVSK9jr2c/YP4eXfi7lA5C+o=",
"owner": "sudosubin",
"repo": "nix-skills",
"rev": "c2d1958a5cdd7ee83f552c046fbc7cb43e8171e4",
"type": "github"
},
"original": {
"owner": "sudosubin",
"repo": "nix-skills",
"type": "github"
}
},
"nix-sweep": { "nix-sweep": {
"inputs": { "inputs": {
"cf": "cf", "cf": "cf",
@@ -245,11 +282,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1776294562, "lastModified": 1777567981,
"narHash": "sha256-3i0WOmrYlRoAyjPpdyV2jiuUQhL8+NkSBvcdDwHt+ds=", "narHash": "sha256-8ZVUoerhitQdBRtQalX0US1Nmc4c9cRGDhBpfAPH51w=",
"owner": "jzbor", "owner": "jzbor",
"repo": "nix-sweep", "repo": "nix-sweep",
"rev": "908c739dad8ab5c6ab737cf417efcbbec126987a", "rev": "b3f71b38917ec9701a505ae3caa6907ccc6b5380",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -261,11 +298,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1776830795, "lastModified": 1778143761,
"narHash": "sha256-PAfvLwuHc1VOvsLcpk6+HDKgMEibvZjCNvbM1BJOA7o=", "narHash": "sha256-lkesY6x2X2qxlqLM7CT2iM/0rP2JB7fruPN3h8POXmI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "72674a6b5599e844c045ae7449ba91f803d44ebc", "rev": "3bcaa367d4c550d687a17ac792fd5cda214ee871",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -277,11 +314,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1776548001, "lastModified": 1777954456,
"narHash": "sha256-ZSK0NL4a1BwVbbTBoSnWgbJy9HeZFXLYQizjb2DPF24=", "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b12141ef619e0a9c1c84dc8c684040326f27cdcc", "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -291,6 +328,43 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-linuxeol": {
"locked": {
"lastModified": 1776914381,
"narHash": "sha256-F4YjgKNs1kEIfTsinPDusep2Y+GDFK+3R2AujSZQ18M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "162f04bf3dd222187388bc990a8678170d594419",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "162f04bf3dd222187388bc990a8678170d594419",
"type": "github"
}
},
"ntfsplus": {
"inputs": {
"linux-ntfs": "linux-ntfs",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1774317576,
"narHash": "sha256-HSDFaDLvfS/NqJlXbHh9135DEpqH6JrNuWqbu3YPcTg=",
"owner": "cmspam",
"repo": "ntfsplus-flake",
"rev": "e22d1bcbac31b4e6484d32c503396e8184650215",
"type": "github"
},
"original": {
"owner": "cmspam",
"repo": "ntfsplus-flake",
"type": "github"
}
},
"peerix": { "peerix": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_2", "flake-compat": "flake-compat_2",
@@ -366,9 +440,12 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"lanzaboote": "lanzaboote", "lanzaboote": "lanzaboote",
"nix-flatpak": "nix-flatpak", "nix-flatpak": "nix-flatpak",
"nix-skills": "nix-skills",
"nix-sweep": "nix-sweep", "nix-sweep": "nix-sweep",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-linuxeol": "nixpkgs-linuxeol",
"ntfsplus": "ntfsplus",
"peerix": "peerix", "peerix": "peerix",
"plasma-manager": "plasma-manager" "plasma-manager": "plasma-manager"
} }
+10
View File
@@ -3,6 +3,7 @@
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-linuxeol.url = "github:NixOS/nixpkgs/162f04bf3dd222187388bc990a8678170d594419";
nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixos-hardware.url = "github:NixOS/nixos-hardware/master";
home-manager = { home-manager = {
url = "github:nix-community/home-manager/master"; url = "github:nix-community/home-manager/master";
@@ -34,6 +35,15 @@
url = "github:Lumpiasty/acer-wmi-ext/main"; url = "github:Lumpiasty/acer-wmi-ext/main";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
ntfsplus = {
url = "github:cmspam/ntfsplus-flake";
inputs.nixpkgs.follows = "nixpkgs";
inputs.linux-ntfs.url = "github:Lumpiasty/linux-ntfs/main";
};
nix-skills = {
url = "github:sudosubin/nix-skills";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { self, nixos-hardware, ... }@inputs: outputs = { self, nixos-hardware, ... }@inputs:
+37 -10
View File
@@ -21,6 +21,26 @@
pkgs.vscode-extensions.arrterian.nix-env-selector pkgs.vscode-extensions.arrterian.nix-env-selector
pkgs.vscode-extensions.jnoortheen.nix-ide pkgs.vscode-extensions.jnoortheen.nix-ide
]; ];
# profiles.default.userSettings = {
# "claudeCode.claudeProcessWrapper" = "${pkgs.claude-code}/bin/claude-code";
# };
argvSettings = {
# https://github.com/microsoft/vscode/issues/262065#issue-3328712020
disable-hardware-acceleration = osConfig.networking.hostName == "acer";
# If not set, vscode errors out when starting with "argv.json incorrect"
enable-crash-reporter = false;
};
};
# Just a fixed-location executable that launches claude code
# so we can point vscode's extenstion at it, not the nix store path
# remove it once we configure vscode using nix
home.file.".config/claude-code-wrapper" = {
text = ''
#!${pkgs.stdenv.shell}
exec ${pkgs.claude-code}/bin/claude "$@"
'';
executable = true;
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
@@ -46,16 +66,6 @@
nodejs_24 nodejs_24
codex codex
claude-code claude-code
(
# Wrapping opencode to set the OPENCODE_ENABLE_EXA environment variable
runCommand "opencode" {
buildInputs = [ makeWrapper ];
} ''
mkdir -p $out/bin
makeWrapper ${pkgs.opencode}/bin/opencode $out/bin/opencode \
--set OPENCODE_ENABLE_EXA "1"
''
)
winbox4 winbox4
amdgpu_top amdgpu_top
dua dua
@@ -114,5 +124,22 @@
fi fi
'' ''
); );
programs.opencode = {
enable = true;
package = (
# Wrapping opencode to set the OPENCODE_ENABLE_EXA environment variable
pkgs.runCommand "opencode" {
buildInputs = [ pkgs.makeWrapper ];
} ''
mkdir -p $out/bin
makeWrapper ${pkgs.opencode}/bin/opencode $out/bin/opencode \
--set OPENCODE_ENABLE_EXA "1"
''
);
skills = with pkgs.skills; {
caveman = majiayu000."claude-skill-registry".caveman + "/";
};
};
}; };
} }
+10 -1
View File
@@ -6,7 +6,16 @@
config = lib.mkIf (config.lumpiastyHome.enablePcApps && osConfig.lumpiasty.pc) { config = lib.mkIf (config.lumpiastyHome.enablePcApps && osConfig.lumpiasty.pc) {
home.packages = with pkgs; [ home.packages = with pkgs; [
vesktop vesktop
spotify # Manual update, not yet in nixpkgs as for now
(spotify.overrideAttrs (old: rec {
version = "1.2.86.502.g8cd7fb22";
rev = "94";
src = fetchurl {
name = "spotify-${version}-${rev}.snap";
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
hash = "sha256-XhwyaObck6viIvDRXEztlSLja5fsfw5HgHUUQzMehLI=";
};
}))
pass-wayland pass-wayland
teamspeak6-client teamspeak6-client
easyeffects easyeffects
+2 -2
View File
@@ -1,4 +1,4 @@
{ lib, pkgs, ... }: { lib, pkgs, nixpkgs-linuxeol, ... }:
rec { rec {
# Identity # Identity
@@ -23,7 +23,7 @@ rec {
# Kernel # Kernel
# boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; # boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_19; boot.kernelPackages = nixpkgs-linuxeol.legacyPackages."x86_64-linux".linuxKernel.packages.linux_6_19;
boot.zfs.package = pkgs.zfs_unstable; boot.zfs.package = pkgs.zfs_unstable;
# Swap # Swap
+14 -3
View File
@@ -1,4 +1,4 @@
{ lib, pkgs, ... }: { lib, pkgs, nixpkgs-linuxeol, ... }:
{ {
# Identity # Identity
@@ -53,7 +53,7 @@
# Kernel # Kernel
# boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; # boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.kernelPackages = pkgs.linuxKernel.packages.linux_6_19; boot.kernelPackages = nixpkgs-linuxeol.legacyPackages."x86_64-linux".linuxKernel.packages.linux_6_19;
# Swap # Swap
zramSwap = { zramSwap = {
@@ -94,7 +94,7 @@
"/var/games" = "/var/games" =
{ {
device = "/dev/disk/by-uuid/8A3094A230949733"; # "Shared" NTFS partition device = "/dev/disk/by-uuid/8A3094A230949733"; # "Shared" NTFS partition
fsType = "ntfs-3g"; fsType = "ntfs";
options = [ options = [
"uid=1000" "gid=100" # My user account "uid=1000" "gid=100" # My user account
"nofail" # Don't fail boot if failed to mount because windows left it dirty "nofail" # Don't fail boot if failed to mount because windows left it dirty
@@ -102,6 +102,11 @@
}; };
}; };
# Use ntfs-plus instead driver
services.ntfsplus.enable = true;
# Force disable ntfs-3g driver
boot.supportedFilesystems.ntfs = lib.mkForce false;
# Config modules # Config modules
lumpiasty = { lumpiasty = {
pc = true; pc = true;
@@ -124,8 +129,14 @@
}; };
services.transmission.enable = lib.mkForce false; services.transmission.enable = lib.mkForce false;
# programs.steam.enable = true;
# programs.steam.gamescopeSession.enable = true;
nix.settings.system-features = [ "gccarch-haswell" ]; nix.settings.system-features = [ "gccarch-haswell" ];
# Local LLaMA.cpp server
networking.firewall.allowedTCPPorts = [ 8080 ];
# nixpkgs.hostPlatform = { # nixpkgs.hostPlatform = {
# system = "x86_64-linux"; # system = "x86_64-linux";
# gcc.arch = "haswell"; # gcc.arch = "haswell";
+6
View File
@@ -9,6 +9,9 @@
nix-sweep, nix-sweep,
peerix, peerix,
acer-wmi-ext, acer-wmi-ext,
ntfsplus,
nix-skills,
nixpkgs-linuxeol,
... ...
}: }:
hardwareConfig: hostConfig: hardwareConfig: hostConfig:
@@ -19,12 +22,14 @@ nixpkgs.lib.nixosSystem {
inherit nix-flatpak; inherit nix-flatpak;
inherit plasma-manager; inherit plasma-manager;
inherit acer-wmi-ext; inherit acer-wmi-ext;
inherit nixpkgs-linuxeol;
}; };
modules = [ modules = [
{ {
nixpkgs.overlays = [ nixpkgs.overlays = [
claude-code.overlays.default claude-code.overlays.default
acer-wmi-ext.overlays.default acer-wmi-ext.overlays.default
nix-skills.overlays.default
]; ];
nix.settings = { nix.settings = {
substituters = [ "https://claude-code.cachix.org" ]; substituters = [ "https://claude-code.cachix.org" ];
@@ -36,6 +41,7 @@ nixpkgs.lib.nixosSystem {
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
nix-sweep.nixosModules.default nix-sweep.nixosModules.default
peerix.nixosModules.peerix peerix.nixosModules.peerix
ntfsplus.nixosModules.default
../modules ../modules
hostConfig hostConfig
]; ];
+1 -1
View File
@@ -8,7 +8,7 @@
services.xserver.enable = true; services.xserver.enable = true;
# Enable the KDE Plasma Desktop Environment. # Enable the KDE Plasma Desktop Environment.
services.displayManager.sddm.enable = true; services.displayManager.plasma-login-manager.enable = true;
services.desktopManager.plasma6.enable = true; services.desktopManager.plasma6.enable = true;
# Configure keymap in X11 # Configure keymap in X11
+1 -1
View File
@@ -11,6 +11,6 @@
# Ventoy has some blobs making it insecure # Ventoy has some blobs making it insecure
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"ventoy-qt5-1.1.10" "ventoy-qt5-1.1.12"
]; ];
} }
+3 -4
View File
@@ -2,9 +2,8 @@
{ {
config = lib.mkIf config.boot.zfs.enabled { config = lib.mkIf config.boot.zfs.enabled {
# Set ARC max to 5% of physical RAM at boot
systemd.services."zfs-arc-limit" = { systemd.services."zfs-arc-limit" = {
description = "Set ZFS ARC max to 5% of physical RAM"; description = "Set ZFS ARC max to 20% of physical RAM";
# Ensure the module is loaded before we write to /sys # Ensure the module is loaded before we write to /sys
after = [ "systemd-modules-load.service" ]; after = [ "systemd-modules-load.service" ];
# Run early, but its fine if ZFS has already imported; the limit still applies # Run early, but its fine if ZFS has already imported; the limit still applies
@@ -15,8 +14,8 @@
# Total RAM in kB # Total RAM in kB
mem_kb=$(awk '/MemTotal:/ {print $2}' /proc/meminfo) mem_kb=$(awk '/MemTotal:/ {print $2}' /proc/meminfo)
echo "DEBUG: Total RAM: $mem_kb kB" echo "DEBUG: Total RAM: $mem_kb kB"
# 5%, in bytes # 20%, in bytes
arc_max_bytes=$(( mem_kb * 1024 / 100 * 5 )) arc_max_bytes=$(( mem_kb * 1024 / 100 * 20 ))
echo "DEBUG: Setting ZFS ARC max to: $arc_max_bytes bytes" echo "DEBUG: Setting ZFS ARC max to: $arc_max_bytes bytes"
param="/sys/module/zfs/parameters/zfs_arc_max" param="/sys/module/zfs/parameters/zfs_arc_max"
if [ -w "$param" ]; then if [ -w "$param" ]; then
+5
View File
@@ -1,4 +1,9 @@
self: super: self: super:
{ {
opencode-claude-auth = super.callPackage ../pkgs/opencode-claude-auth {}; opencode-claude-auth = super.callPackage ../pkgs/opencode-claude-auth {};
# Build failure 08.05.2026
# https://github.com/NixOS/nixpkgs/issues/513245#issuecomment-4320293674
openldap = super.openldap.overrideAttrs {
doCheck = !super.stdenv.hostPlatform.isi686;
};
} }