summaryrefslogtreecommitdiff
path: root/hosts
diff options
context:
space:
mode:
authorvin <vin@vineetk.net>2025-04-25 01:10:31 -0400
committervin <vin@vineetk.net>2025-04-25 01:10:31 -0400
commite7aa63d71cf5167ee603e165db67a5a9cce6362a (patch)
tree12e807e312aca919908a19f3aadb657386b91938 /hosts
parente099c0fd35c739f6390bd5579cf8fcb97277450d (diff)
itpanu
Diffstat (limited to 'hosts')
-rw-r--r--hosts/demiurge/default.nix71
1 files changed, 38 insertions, 33 deletions
diff --git a/hosts/demiurge/default.nix b/hosts/demiurge/default.nix
index 9af8b84..9b433d1 100644
--- a/hosts/demiurge/default.nix
+++ b/hosts/demiurge/default.nix
@@ -1,4 +1,4 @@
1{ config, home-manager, lib, pkgs, inputs, llama-cpp, ... }: 1{ config, home-manager, lib, pkgs, inputs, llama-cpp, nixpkgs-deathraymind, ... }:
2 2
3{ 3{
4 imports = 4 imports =
@@ -49,23 +49,16 @@
49 }) 49 })
50 (self: super: { 50 (self: super: {
51 inv-sig-helper = super.inv-sig-helper.overrideAttrs (old: { 51 inv-sig-helper = super.inv-sig-helper.overrideAttrs (old: {
52 version = "0-unstable-2025-03-24"; 52 version = "0-unstable-2025-04-23";
53 53
54 src = super.fetchFromGitHub { 54 src = super.fetchFromGitHub {
55 owner = "iv-org"; 55 owner = "iv-org";
56 repo = "inv_sig_helper"; 56 repo = "inv_sig_helper";
57 rev = "318e555b2b08921ec9262ef5b269548f0e806834"; 57 rev = "5d3c7a4574fafe0bc5fbed9e7e33483889832fd4";
58 hash = "sha256-NgowxT2EuOQxUvW5niM7rtNkdSkadlsiiOiqb9JDjdE="; 58 hash = "sha256-NgowxT2EuOQxUvW5niM7rtNkdSkadlsiiOiqb9JDjdE=";
59 }; 59 };
60 60
61 cargoHash = "sha256-DnJL7kkcVn5dW3AoPCn829WmkaCjpDZtYUXnpiB857Q="; 61 cargoHash = "sha256-DnJL7kkcVn5dW3AoPCn829WmkaCjpDZtYUXnpiB857Q=";
62
63 patches = old.patches ++ [(
64 super.fetchpatch {
65 url = "https://github.com/iv-org/inv_sig_helper/commit/c7be037599a9b547f567cc6ebd710c97ec6a5ba7.patch";
66 hash = "sha256-oTq+Tv8PQjjA9Rli+nLQlUSqofTwWW2Cke5uv8gzBSg=";
67 }
68 )];
69 }); 62 });
70 }) 63 })
71 ]; 64 ];
@@ -148,29 +141,36 @@
148 nix.settings.experimental-features = [ "nix-command" "flakes" ]; 141 nix.settings.experimental-features = [ "nix-command" "flakes" ];
149 142
150 # Define a user account. 143 # Define a user account.
151 users.users.vin = { 144 users.users = {
152 isNormalUser = true; 145 vin = {
153 146 isNormalUser = true;
154 extraGroups = [ 147
155 "input" 148 extraGroups = [
156 "kvm" 149 "input"
157 "libvirtd" 150 "kvm"
158 "transmission" 151 "libvirtd"
159 "wheel" 152 "transmission"
160 ]; 153 "video"
154 "wheel"
155 ];
161 156
162 shell = pkgs.zsh; 157 shell = pkgs.zsh;
163 158
164 openssh.authorizedKeys.keys = [ 159 openssh.authorizedKeys.keys = [
165 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEvM0xCLziR+ZT/SYE1aZM6dklbw4fEC17TWqbADIZRH kou@demiurge" 160 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEvM0xCLziR+ZT/SYE1aZM6dklbw4fEC17TWqbADIZRH kou@demiurge"
166 ]; 161 ];
167 162
168 packages = with pkgs; [ 163 packages = with pkgs; [
169 distrobox 164 nixpkgs-deathraymind.legacyPackages.x86_64-linux.adbforwarder
170 (llama-cpp.packages.x86_64-linux.rocm.override { useVulkan = true; }) 165 distrobox
171 #(quartus-prime-lite.override { supportedDevices = [ "MAX 10 FPGA" ]; }) 166 (llama-cpp.packages.x86_64-linux.rocm.override { useVulkan = true; })
172 #(vllm.override { cudaSupport = false; rocmSupport = true; gpuTargets = [ "gfx906" "gfx1100" ]; }) 167 #(quartus-prime-lite.override { supportedDevices = [ "MAX 10 FPGA" ]; })
173 ]; 168 #(vllm.override { cudaSupport = false; rocmSupport = true; gpuTargets = [ "gfx906" "gfx1100" ]; })
169 ];
170 };
171
172 radarr.extraGroups = [ "transmission" ];
173 sonarr.extraGroups = [ "transmission" ];
174 }; 174 };
175 175
176 # default packages for both me and root 176 # default packages for both me and root
@@ -310,10 +310,11 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM
310 user = "vin"; 310 user = "vin";
311 311
312 settings = { 312 settings = {
313 download-dir = "/data_wd/torrents/complete/other/"; 313 download-dir = "/data_wd/torrents/complete/";
314 incomplete-dir = "/data_wd/torrents/incomplete/"; 314 incomplete-dir = "/data_wd/torrents/incomplete/";
315 incomplete-dir-enabled = true; 315 incomplete-dir-enabled = true;
316 peer-port = 51413; 316 peer-port = 51413;
317 umask = "002";
317 }; 318 };
318 }; 319 };
319 320
@@ -391,7 +392,7 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM
391 addSSL = true; 392 addSSL = true;
392 sslCertificate = "/var/demiurge.epistemia.crt"; 393 sslCertificate = "/var/demiurge.epistemia.crt";
393 sslCertificateKey = "/var/demiurge.epistemia.key"; 394 sslCertificateKey = "/var/demiurge.epistemia.key";
394 locations."/".proxyPass = "http://127.0.0.1:8082"; 395 locations."/".proxyPass = "http://127.0.0.1:8085";
395 }; 396 };
396 397
397 "llm.demiurge.epistemia" = { 398 "llm.demiurge.epistemia" = {
@@ -468,7 +469,7 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM
468 enable = true; 469 enable = true;
469 470
470 address = "127.0.0.1"; 471 address = "127.0.0.1";
471 port = 8082; 472 port = 8085;
472 473
473 settings = { 474 settings = {
474 # Instance-specific settings 475 # Instance-specific settings
@@ -908,6 +909,10 @@ FQsOJMjIvhTm2IiOS8xIaZz7EJORxFjtOkLEIGGZBNK6QcnD714/nYbHSrQx4eNM
908 extraRules = '' 909 extraRules = ''
909 # ST-Link v2.1 910 # ST-Link v2.1
910 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", MODE:="0666" 911 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", MODE:="0666"
912
913 # Oculus Quest 2
914 SUBSYSTEM=="usb", ATTR{idVendor}=="2833", ATTR{idProduct}=="0186", MODE="0660",
915 GROUP="input", SYMLINK+="ocuquest%n"
911 ''; 916 '';
912 }; 917 };
913 918