nixos-config

NixOS configs for my systems
Log | Files | Refs

commit e7aa63d71cf5167ee603e165db67a5a9cce6362a
parent e099c0fd35c739f6390bd5579cf8fcb97277450d
Author: vin <vin@vineetk.net>
Date:   Fri, 25 Apr 2025 01:10:31 -0400

itpanu

Diffstat:
Mflake.lock | 49+++++++++++++++++++++++++++++++------------------
Mflake.nix | 4+++-
Mhosts/demiurge/default.nix | 71++++++++++++++++++++++++++++++++++++++---------------------------------
3 files changed, 72 insertions(+), 52 deletions(-)

diff --git a/flake.lock b/flake.lock @@ -163,11 +163,11 @@ ] }, "locked": { - "lastModified": 1743869639, - "narHash": "sha256-Xhe3whfRW/Ay05z9m1EZ1/AkbV1yo0tm1CbgjtCi4rQ=", + "lastModified": 1745425545, + "narHash": "sha256-2DqPoGRDWR6su4klhqLQ4JdqhlWpYEsRJ/FziKzhm+U=", "owner": "nix-community", "repo": "home-manager", - "rev": "d094c6763c6ddb860580e7d3b4201f8f496a6836", + "rev": "59de2dfb0a08ebcbc73e3bb8488d2c23057e6ad8", "type": "github" }, "original": { @@ -184,17 +184,14 @@ ] }, "locked": { - "lastModified": 1743881352, - "narHash": "sha256-YGUvl41PVJ33caO6FA9uN6H2bZgGioDd+vGRPd07v0w=", - "ref": "refs/heads/master", - "rev": "4f6cd70966ac81ed4a64d1fcbd9eb1d4874fc36f", - "revCount": 5054, - "type": "git", - "url": "file:///data/src/clones/llm/llama.cpp_hjc4869" + "lastModified": 1745426077, + "narHash": "sha256-h4P70JXmcLWzPj8z75o/7s82W+j6TDJO5+h2n+OoNsk=", + "path": "/data/src/clones/llm/llama.cpp_hjc4869", + "type": "path" }, "original": { - "type": "git", - "url": "file:///data/src/clones/llm/llama.cpp_hjc4869" + "path": "/data/src/clones/llm/llama.cpp_hjc4869", + "type": "path" } }, "nix-filter": { @@ -214,11 +211,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1743862455, - "narHash": "sha256-I/QXtrqznq1321mYR9TyMPX/zCWb9iAH64hO+pEBY00=", + "lastModified": 1745385072, + "narHash": "sha256-geZyeQp56HeUaMbhPUVpuN58QfJ94s0jLOUoNf/jUlg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "06f3516b0397bd241bde2daefc8538fc886c5467", + "rev": "6722b86722d71dbf45591685d355664645912388", "type": "github" }, "original": { @@ -243,6 +240,21 @@ "type": "indirect" } }, + "nixpkgs-deathraymind": { + "locked": { + "lastModified": 1744873743, + "narHash": "sha256-RmmdC46wMUAnb75NGSWOb5ppuUeUhYORpe+Z222KvNE=", + "owner": "Deathraymind", + "repo": "nixpkgs", + "rev": "5af202742b96118156e0518365e8f52931257ff4", + "type": "github" + }, + "original": { + "owner": "Deathraymind", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-lib": { "locked": { "dir": "lib", @@ -275,11 +287,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1743703532, - "narHash": "sha256-s1KLDALEeqy+ttrvqV3jx9mBZEvmthQErTVOAzbjHZs=", + "lastModified": 1745279238, + "narHash": "sha256-AQ7M9wTa/Pa/kK5pcGTgX/DGqMHyzsyINfN7ktsI7Fo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bdb91860de2f719b57eef819b5617762f7120c70", + "rev": "9684b53175fc6c09581e94cc85f05ab77464c7e3", "type": "github" }, "original": { @@ -296,6 +308,7 @@ "home-manager": "home-manager_2", "llama-cpp": "llama-cpp", "nixpkgs": "nixpkgs", + "nixpkgs-deathraymind": "nixpkgs-deathraymind", "nixpkgs-stable": "nixpkgs-stable", "simple-nixos-mailserver": "simple-nixos-mailserver" } diff --git a/flake.nix b/flake.nix @@ -32,9 +32,11 @@ url = "/data/src/clones/llm/llama.cpp_hjc4869"; inputs.nixpkgs.follows = "nixpkgs"; }; + + nixpkgs-deathraymind.url = "github:Deathraymind/nixpkgs"; }; - outputs = { self, home-manager, nixpkgs, nixpkgs-stable, everblush-gtk, agenix, simple-nixos-mailserver, llama-cpp, ... }@inputs: { + outputs = { self, home-manager, nixpkgs, nixpkgs-stable, nixpkgs-deathraymind, everblush-gtk, agenix, simple-nixos-mailserver, llama-cpp, ... }@inputs: { # TODO: deduplicate this nixosConfigurations = { demiurge = nixpkgs.lib.nixosSystem { diff --git a/hosts/demiurge/default.nix b/hosts/demiurge/default.nix @@ -1,4 +1,4 @@ -{ config, home-manager, lib, pkgs, inputs, llama-cpp, ... }: +{ config, home-manager, lib, pkgs, inputs, llama-cpp, nixpkgs-deathraymind, ... }: { imports = @@ -49,23 +49,16 @@ }) (self: super: { inv-sig-helper = super.inv-sig-helper.overrideAttrs (old: { - version = "0-unstable-2025-03-24"; + version = "0-unstable-2025-04-23"; src = super.fetchFromGitHub { owner = "iv-org"; repo = "inv_sig_helper"; - rev = "318e555b2b08921ec9262ef5b269548f0e806834"; + rev = "5d3c7a4574fafe0bc5fbed9e7e33483889832fd4"; hash = "sha256-NgowxT2EuOQxUvW5niM7rtNkdSkadlsiiOiqb9JDjdE="; }; cargoHash = "sha256-DnJL7kkcVn5dW3AoPCn829WmkaCjpDZtYUXnpiB857Q="; - - patches = old.patches ++ [( - super.fetchpatch { - url = "https://github.com/iv-org/inv_sig_helper/commit/c7be037599a9b547f567cc6ebd710c97ec6a5ba7.patch"; - hash = "sha256-oTq+Tv8PQjjA9Rli+nLQlUSqofTwWW2Cke5uv8gzBSg="; - } - )]; }); }) ]; @@ -148,29 +141,36 @@ nix.settings.experimental-features = [ "nix-command" "flakes" ]; # Define a user account. - users.users.vin = { - isNormalUser = true; - - extraGroups = [ - "input" - "kvm" - "libvirtd" - "transmission" - "wheel" - ]; + users.users = { + vin = { + isNormalUser = true; + + extraGroups = [ + "input" + "kvm" + "libvirtd" + "transmission" + "video" + "wheel" + ]; - shell = pkgs.zsh; + shell = pkgs.zsh; - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEvM0xCLziR+ZT/SYE1aZM6dklbw4fEC17TWqbADIZRH kou@demiurge" - ]; + openssh.authorizedKeys.keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEvM0xCLziR+ZT/SYE1aZM6dklbw4fEC17TWqbADIZRH kou@demiurge" + ]; - packages = with pkgs; [ - distrobox - (llama-cpp.packages.x86_64-linux.rocm.override { useVulkan = true; }) - #(quartus-prime-lite.override { supportedDevices = [ "MAX 10 FPGA" ]; }) - #(vllm.override { cudaSupport = false; rocmSupport = true; gpuTargets = [ "gfx906" "gfx1100" ]; }) - ]; + packages = with pkgs; [ + nixpkgs-deathraymind.legacyPackages.x86_64-linux.adbforwarder + distrobox + (llama-cpp.packages.x86_64-linux.rocm.override { useVulkan = true; }) + #(quartus-prime-lite.override { supportedDevices = [ "MAX 10 FPGA" ]; }) + #(vllm.override { cudaSupport = false; rocmSupport = true; gpuTargets = [ "gfx906" "gfx1100" ]; }) + ]; + }; + + radarr.extraGroups = [ "transmission" ]; + sonarr.extraGroups = [ "transmission" ]; }; # default packages for both me and root @@ -310,10 +310,11 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM user = "vin"; settings = { - download-dir = "/data_wd/torrents/complete/other/"; + download-dir = "/data_wd/torrents/complete/"; incomplete-dir = "/data_wd/torrents/incomplete/"; incomplete-dir-enabled = true; peer-port = 51413; + umask = "002"; }; }; @@ -391,7 +392,7 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM addSSL = true; sslCertificate = "/var/demiurge.epistemia.crt"; sslCertificateKey = "/var/demiurge.epistemia.key"; - locations."/".proxyPass = "http://127.0.0.1:8082"; + locations."/".proxyPass = "http://127.0.0.1:8085"; }; "llm.demiurge.epistemia" = { @@ -468,7 +469,7 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM enable = true; address = "127.0.0.1"; - port = 8082; + port = 8085; settings = { # Instance-specific settings @@ -908,6 +909,10 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM extraRules = '' # ST-Link v2.1 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", MODE:="0666" + + # Oculus Quest 2 + SUBSYSTEM=="usb", ATTR{idVendor}=="2833", ATTR{idProduct}=="0186", MODE="0660", + GROUP="input", SYMLINK+="ocuquest%n" ''; };