From d6a6f514909c149b602eb38cc1e870907ca36e94 Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 31 May 2025 14:29:12 +0400 Subject: [PATCH 1/5] laptop: link jdks in /opt/java --- hosts/laptop/configuration.nix | 1 + hosts/laptop/home/default.nix | 24 +++++++++++++++--------- hosts/laptop/jdks.nix | 22 ++++++++++++++++++++++ lib/default.nix | 4 +--- 4 files changed, 39 insertions(+), 12 deletions(-) create mode 100644 hosts/laptop/jdks.nix diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index 54b35fa..f417177 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -11,6 +11,7 @@ in { imports = [ ./thinkfan.nix + ./jdks.nix ./mounts.nix ./akkotest.nix ]; diff --git a/hosts/laptop/home/default.nix b/hosts/laptop/home/default.nix index cb55740..b6cfc37 100644 --- a/hosts/laptop/home/default.nix +++ b/hosts/laptop/home/default.nix @@ -97,20 +97,26 @@ # dev # Wrap idea-community to add libraries required for Minecraft Moddev jetbrains.idea-community - (mylib.IDEAappwrapper { - inherit pkgs; - inputpkg = jetbrains.idea-community; - pkgsuffix = "mcdev-jbr17"; - libraries = with pkgs; [libpulseaudio libGL glfw openal stdenv.cc.cc.lib]; - jdk = pkgs.jetbrains.jdk-no-jcef-17; - }) - (mylib.IDEAappwrapper { + (mylib.appwrapper { inherit pkgs; inputpkg = jetbrains.idea-community; pkgsuffix = "mcdev-jbr21"; libraries = with pkgs; [libpulseaudio libGL glfw openal stdenv.cc.cc.lib]; - jdk = pkgs.jetbrains.jdk-no-jcef; }) + # (mylib.IDEAappwrapper { + # inherit pkgs; + # inputpkg = jetbrains.idea-community; + # pkgsuffix = "mcdev-jbr17"; + # libraries = with pkgs; [libpulseaudio libGL glfw openal stdenv.cc.cc.lib]; + # jdk = pkgs.jetbrains.jdk-no-jcef-17; + # }) + # (mylib.IDEAappwrapper { + # inherit pkgs; + # inputpkg = jetbrains.idea-community; + # pkgsuffix = "mcdev-jbr21"; + # libraries = with pkgs; [libpulseaudio libGL glfw openal stdenv.cc.cc.lib]; + # jdk = pkgs.jetbrains.jdk-no-jcef; + # }) packwiz # vscodium # see programs.vscode #nnn # terminal file manager diff --git a/hosts/laptop/jdks.nix b/hosts/laptop/jdks.nix new file mode 100644 index 0000000..368900e --- /dev/null +++ b/hosts/laptop/jdks.nix @@ -0,0 +1,22 @@ +# https://discourse.nixos.org/t/system-wide-installation-of-gradle-and-jdk/11305/4 +{ config, pkgs, ...}: +let + jdkEnv = pkgs.runCommand "jdk-env" { + buildInputs = with pkgs; [ + pkgs.jetbrains.jdk-no-jcef + pkgs.jetbrains.jdk-no-jcef-17 + ]; + } '' + mkdir -p $out/jdks + ln -s ${pkgs.jetbrains.jdk-no-jcef}/lib/openjdk $out/jdks/jdk-no-jcef + ln -s ${pkgs.jetbrains.jdk-no-jcef-17}/lib/openjdk $out/jdks/jdk-no-jcef-17 + ''; +in { + environment.systemPackages = [ + jdkEnv + ]; + systemd.tmpfiles.rules = [ + "d /opt 755 root root -" + "L+ /opt/java - - - - ${jdkEnv}/jdks" + ]; +} \ No newline at end of file diff --git a/lib/default.nix b/lib/default.nix index 356d1d8..21ce51a 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -5,7 +5,6 @@ inputpkg, pkgsuffix, libraries, - extrapathpkgs }: with pkgs; let name = "${inputpkg.pname}-${pkgsuffix}"; in stdenv.mkDerivation { @@ -17,8 +16,7 @@ mkdir -p $out/share/applications cp ${inputpkg}/share/applications/${inputpkg.pname}.desktop $out/share/applications/${name}.desktop makeWrapper ${inputpkg}/bin/${inputpkg.pname} $out/bin/${name} \ - --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libraries}" \ - --prefix PATH : "${lib.makeBinPath extrapathpkgs}" + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libraries}" substituteInPlace $out/share/applications/${name}.desktop \ --replace-fail "=${inputpkg.pname}" "=${name}" sed -i -E "s/^Name=(.*)/Name=\1 (${pkgsuffix})/g" "$out/share/applications/${name}.desktop" From 1fc45dc200c176907ca70f765b1dd3aa1bc03c91 Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 31 May 2025 14:29:27 +0400 Subject: [PATCH 2/5] vps1: fix vscode server --- hosts/vps1/configuration.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/hosts/vps1/configuration.nix b/hosts/vps1/configuration.nix index 5f53599..e04b937 100644 --- a/hosts/vps1/configuration.nix +++ b/hosts/vps1/configuration.nix @@ -51,7 +51,6 @@ in services.vscode-server = { enable = true; - nodejsPackage = pkgs.nodejs_18; installPath = "$HOME/.vscodium-server"; }; From 221e196e41a0339f1ec42add11a8b8aafa5e9aee Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 7 Jun 2025 20:57:00 +0400 Subject: [PATCH 3/5] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'authentik-nix': 'github:nix-community/authentik-nix/f20474660332903be6b47f3c1fdfc531f6f75f1d' (2025-05-16) → 'github:nix-community/authentik-nix/271a38f7c4e2551f0674b894e2adf7cd1ddb8168' (2025-06-05) • Updated input 'authentik-nix/authentik-src': 'github:goauthentik/authentik/ae47624761f05040149d856d5e55a90cd7492740' (2025-05-15) → 'github:goauthentik/authentik/bda30c5ad5838fea36dc0a06f8580cca437f0fc0' (2025-06-04) • Updated input 'authentik-nix/pyproject-build-systems': 'github:pyproject-nix/build-system-pkgs/7dba6dbc73120e15b558754c26024f6c93015dd7' (2025-04-14) → 'github:pyproject-nix/build-system-pkgs/33bd58351957bb52dd1700ea7eeefe34de06a892' (2025-05-29) • Updated input 'authentik-nix/uv2nix': 'github:pyproject-nix/uv2nix/fe540e91c26f378c62bf6da365a97e848434d0cd' (2025-05-07) → 'github:pyproject-nix/uv2nix/a4dd471de62b27928191908f57bfcd702ec2bfc9' (2025-06-03) • Updated input 'flake-parts': 'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5' (2025-04-01) → 'github:hercules-ci/flake-parts/49f0870db23e8c1ca0b5259734a02cd9e1e371a1' (2025-06-01) • Updated input 'flake-parts/nixpkgs-lib': 'github:nix-community/nixpkgs.lib/e4822aea2a6d1cdd36653c134cacfd64c97ff4fa' (2025-03-30) → 'github:nix-community/nixpkgs.lib/656a64127e9d791a334452c6b6606d17539476e2' (2025-06-01) • Updated input 'home-manager': 'github:nix-community/home-manager/ae755329092c87369b9e9a1510a8cf1ce2b1c708' (2025-05-16) → 'github:nix-community/home-manager/2d7d65f65b61fdfce23278e59ca266ddd0ef0a36' (2025-06-06) • Updated input 'lix-module': 'https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc.tar.gz?narHash=sha256-11R4K3iAx4tLXjUs%2BhQ5K90JwDABD/XHhsM9nkeS5N8%3D' (2025-05-10) → 'https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc.tar.gz?narHash=sha256-11R4K3iAx4tLXjUs%2BhQ5K90JwDABD/XHhsM9nkeS5N8%3D&rev=cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc' (2025-05-10) • Updated input 'mailserver': 'gitlab:simple-nixos-mailserver/nixos-mailserver/433520257af7170824ab6e567d49b8e305e776e9' (2025-05-15) → 'gitlab:simple-nixos-mailserver/nixos-mailserver/8b27add0883067e990bff4f847b6f7b6f53324b9' (2025-06-06) • Removed input 'mailserver/nixpkgs-24_11' • Added input 'mailserver/nixpkgs-25_05': 'github:NixOS/nixpkgs/ca49c4304acf0973078db0a9d200fd2bae75676d' (2025-05-18) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/e06158e58f3adee28b139e9c2bcfcc41f8625b46' (2025-05-15) → 'github:NixOS/nixpkgs/d3d2d80a2191a73d1e86456a751b83aa13085d7d' (2025-06-05) • Updated input 'sops-nix': 'github:Mic92/sops-nix/e93ee1d900ad264d65e9701a5c6f895683433386' (2025-05-05) → 'github:Mic92/sops-nix/8d215e1c981be3aa37e47aeabd4e61bb069548fd' (2025-05-18) --- flake.lock | 76 +++++++++++++++++++++++++++--------------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/flake.lock b/flake.lock index bb36dd5..bd5f3a1 100644 --- a/flake.lock +++ b/flake.lock @@ -18,11 +18,11 @@ "uv2nix": "uv2nix" }, "locked": { - "lastModified": 1747386678, - "narHash": "sha256-+4pIDo56iXWUklX1U+biw/cfC8TiSXTMh2N6V/+JMUg=", + "lastModified": 1749129962, + "narHash": "sha256-gc1l5z5dWw9a9DWsrp0ZiD+SSMsNpEwMEiRi8K5sh5c=", "owner": "nix-community", "repo": "authentik-nix", - "rev": "f20474660332903be6b47f3c1fdfc531f6f75f1d", + "rev": "271a38f7c4e2551f0674b894e2adf7cd1ddb8168", "type": "github" }, "original": { @@ -34,16 +34,16 @@ "authentik-src": { "flake": false, "locked": { - "lastModified": 1747329052, - "narHash": "sha256-idShMSYIrf3ViG9VFNGNu6TSjBz3Q+GJMMeCzcJwfG4=", + "lastModified": 1749043670, + "narHash": "sha256-gwHngqb23U8By7jhxFWQZOXy+vPQApJSkvr4gHI5ifQ=", "owner": "goauthentik", "repo": "authentik", - "rev": "ae47624761f05040149d856d5e55a90cd7492740", + "rev": "bda30c5ad5838fea36dc0a06f8580cca437f0fc0", "type": "github" }, "original": { "owner": "goauthentik", - "ref": "version/2025.4.1", + "ref": "version/2025.4.2", "repo": "authentik", "type": "github" } @@ -100,11 +100,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1743550720, - "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", + "lastModified": 1748821116, + "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "c621e8422220273271f52058f618c94e405bb0f5", + "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", "type": "github" }, "original": { @@ -242,11 +242,11 @@ ] }, "locked": { - "lastModified": 1747439237, - "narHash": "sha256-5rCGrnkglKKj4cav1U3HC+SIUNJh08pqOK4spQv9RjA=", + "lastModified": 1749243446, + "narHash": "sha256-P1gumhZN5N9q+39ndePHYrtwOwY1cGx+VoXGl+vTm7A=", "owner": "nix-community", "repo": "home-manager", - "rev": "ae755329092c87369b9e9a1510a8cf1ce2b1c708", + "rev": "2d7d65f65b61fdfce23278e59ca266ddd0ef0a36", "type": "github" }, "original": { @@ -284,7 +284,7 @@ "narHash": "sha256-11R4K3iAx4tLXjUs+hQ5K90JwDABD/XHhsM9nkeS5N8=", "rev": "cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc.tar.gz" + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc.tar.gz?rev=cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc" }, "original": { "type": "tarball", @@ -301,14 +301,14 @@ "nixpkgs": [ "nixpkgs" ], - "nixpkgs-24_11": "nixpkgs-24_11" + "nixpkgs-25_05": "nixpkgs-25_05" }, "locked": { - "lastModified": 1747320434, - "narHash": "sha256-wOW99SCOovRlX5y8+W1cRrS3mEN1QA0XTHMRfr3NMB8=", + "lastModified": 1749244584, + "narHash": "sha256-BGmEptAyP2NrP4gX7VMYWo53h5e8r2iE/uo2+YPMcfo=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "433520257af7170824ab6e567d49b8e305e776e9", + "rev": "8b27add0883067e990bff4f847b6f7b6f53324b9", "type": "gitlab" }, "original": { @@ -361,11 +361,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1747327360, - "narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=", + "lastModified": 1749143949, + "narHash": "sha256-QuUtALJpVrPnPeozlUG/y+oIMSLdptHxb3GK6cpSVhA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46", + "rev": "d3d2d80a2191a73d1e86456a751b83aa13085d7d", "type": "github" }, "original": { @@ -375,29 +375,29 @@ "type": "github" } }, - "nixpkgs-24_11": { + "nixpkgs-25_05": { "locked": { - "lastModified": 1747209494, - "narHash": "sha256-fLise+ys+bpyjuUUkbwqo5W/UyIELvRz9lPBPoB0fbM=", + "lastModified": 1747610100, + "narHash": "sha256-rpR5ZPMkWzcnCcYYo3lScqfuzEw5Uyfh+R0EKZfroAc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5d736263df906c5da72ab0f372427814de2f52f8", + "rev": "ca49c4304acf0973078db0a9d200fd2bae75676d", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.11", + "ref": "nixos-25.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-lib": { "locked": { - "lastModified": 1743296961, - "narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=", + "lastModified": 1748740939, + "narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa", + "rev": "656a64127e9d791a334452c6b6606d17539476e2", "type": "github" }, "original": { @@ -438,11 +438,11 @@ ] }, "locked": { - "lastModified": 1744599653, - "narHash": "sha256-nysSwVVjG4hKoOjhjvE6U5lIKA8sEr1d1QzEfZsannU=", + "lastModified": 1748562898, + "narHash": "sha256-STk4QklrGpM3gliPKNJdBLSQvIrqRuwHI/rnYb/5rh8=", "owner": "pyproject-nix", "repo": "build-system-pkgs", - "rev": "7dba6dbc73120e15b558754c26024f6c93015dd7", + "rev": "33bd58351957bb52dd1700ea7eeefe34de06a892", "type": "github" }, "original": { @@ -496,11 +496,11 @@ ] }, "locked": { - "lastModified": 1746485181, - "narHash": "sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB+qsl9BZUnRvg=", + "lastModified": 1747603214, + "narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=", "owner": "Mic92", "repo": "sops-nix", - "rev": "e93ee1d900ad264d65e9701a5c6f895683433386", + "rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd", "type": "github" }, "original": { @@ -566,11 +566,11 @@ ] }, "locked": { - "lastModified": 1746649034, - "narHash": "sha256-gmv+ZiY3pQnwgI0Gm3Z1tNSux1CnOJ0De+xeDOol1+0=", + "lastModified": 1748916602, + "narHash": "sha256-GiwjjmPIISDFD0uQ1DqQ+/38hZ+2z1lTKVj/TkKaWwQ=", "owner": "pyproject-nix", "repo": "uv2nix", - "rev": "fe540e91c26f378c62bf6da365a97e848434d0cd", + "rev": "a4dd471de62b27928191908f57bfcd702ec2bfc9", "type": "github" }, "original": { From 5f104d82e647b02aa1808eb7d6fe02c6e10e1586 Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Fri, 27 Jun 2025 02:25:08 +0400 Subject: [PATCH 4/5] laptop: enable nvidia power management --- hosts/laptop/configuration.nix | 4 +++- hosts/laptop/hardware-configuration.nix | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index f417177..72c6361 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -129,8 +129,10 @@ in open = false; # Enable the nvidia settings menu nvidiaSettings = true; + powerManagement.enable = true; + powerManagement.finegrained = false; # Optionally, you may need to select the appropriate driver version for your specific GPU. - package = config.boot.kernelPackages.nvidiaPackages.stable; + package = config.boot.kernelPackages.nvidiaPackages.beta; }; # NVIDIA diff --git a/hosts/laptop/hardware-configuration.nix b/hosts/laptop/hardware-configuration.nix index bb94530..5138656 100644 --- a/hosts/laptop/hardware-configuration.nix +++ b/hosts/laptop/hardware-configuration.nix @@ -16,7 +16,7 @@ in boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "ahci" "nvme" "usbhid" "uas" "usb_storage" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ "dm-snapshot" ]; boot.kernelModules = [ "kvm-intel" ]; - boot.kernelParams = [ "i915.enable_psr=0" ]; + boot.kernelParams = [ "i915.enable_psr=0" "nvidia.NVreg_PreserveVideoMemoryAllocations=1" ]; boot.extraModulePackages = with config.boot.kernelPackages; [ acpi_call ]; fileSystems."/" = From 75958b0566666d6047e19836daeea2be4c300bfb Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Fri, 27 Jun 2025 02:25:32 +0400 Subject: [PATCH 5/5] laptop: git: use relative paths for worktrees --- hosts/laptop/home/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hosts/laptop/home/default.nix b/hosts/laptop/home/default.nix index b6cfc37..93797c6 100644 --- a/hosts/laptop/home/default.nix +++ b/hosts/laptop/home/default.nix @@ -231,6 +231,7 @@ init = { defaultBranch = "main"; }; + worktree.useRelativePaths = true; }; };