From 1ee5fd627e224e5ea0e670edcc881a479bcbc950 Mon Sep 17 00:00:00 2001 From: cnst Date: Mon, 4 Nov 2024 19:02:01 +0100 Subject: [PATCH] some scx shenanigans --- flake.lock | 209 +++++++----------- flake.nix | 12 +- hosts/cnix/modules.nix | 5 + modules/default.nix | 1 + modules/home/programs/helix/default.nix | 10 +- modules/home/programs/helix/lang.nix | 11 +- modules/home/programs/misc/default.nix | 1 + modules/nixos/boot/kernel/default.nix | 9 +- .../nixos/hardware/graphics/amd/default.nix | 3 + modules/nixos/programs/misc/default.nix | 1 + modules/nixos/programs/yubikey/default.nix | 6 +- modules/nixos/services/scx/default.nix | 42 ++++ modules/nixos/system/devpkgs/default.nix | 2 +- 13 files changed, 154 insertions(+), 158 deletions(-) create mode 100644 modules/nixos/services/scx/default.nix diff --git a/flake.lock b/flake.lock index c30d8bce..b479db2b 100644 --- a/flake.lock +++ b/flake.lock @@ -82,12 +82,12 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1730390431, - "narHash": "sha256-M+rMhDB69Y35IlhmAMN4ErDige+wKPwhb6HDqpF14Rw=", - "rev": "40388a7427ee32af175c5169ae7587ffd2dec125", - "revCount": 1482, + "lastModified": 1730674629, + "narHash": "sha256-bT4l/nrUvGK5wvUCkq2I5oWphjg3kZXthYcqG7K0uBs=", + "rev": "09f0dcfa6a8932850f2291717a271598d3098aad", + "revCount": 1491, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/chaotic-cx/nyx/0.1.1482%2Brev-40388a7427ee32af175c5169ae7587ffd2dec125/0192e351-c9ed-704d-866b-eb98e24da6a2/source.tar.gz?rev=40388a7427ee32af175c5169ae7587ffd2dec125&revCount=1482" + "url": "https://api.flakehub.com/f/pinned/chaotic-cx/nyx/0.1.1491%2Brev-09f0dcfa6a8932850f2291717a271598d3098aad/0192f447-bd92-7e60-8489-2f917f0d8b69/source.tar.gz?rev=09f0dcfa6a8932850f2291717a271598d3098aad&revCount=1491" }, "original": { "type": "tarball", @@ -111,11 +111,11 @@ }, "crane_2": { "locked": { - "lastModified": 1730060262, - "narHash": "sha256-RMgSVkZ9H03sxC+Vh4jxtLTCzSjPq18UWpiM0gq6shQ=", + "lastModified": 1730652660, + "narHash": "sha256-+XVYfmVXAiYA0FZT7ijHf555dxCe+AoAT5A6RU+6vSo=", "owner": "ipetkov", "repo": "crane", - "rev": "498d9f122c413ee1154e8131ace5a35a80d8fa76", + "rev": "a4ca93905455c07cb7e3aca95d4faf7601cba458", "type": "github" }, "original": { @@ -154,11 +154,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1730442928, - "narHash": "sha256-U1DWb5c3EfkA7pqx5V1H4AWRA+EaE6UJ0lIRvK1RxgM=", + "lastModified": 1730702146, + "narHash": "sha256-a657FU8MS5m0Y4pQvcmQPfvXYOPpxih7u2hU57Bn2i4=", "owner": "nix-community", "repo": "fenix", - "rev": "87b4d20f896c99018dde4702a9c6157b516f2a76", + "rev": "fa3610f841725c8e20fc0fab070ee60609fdd5ee", "type": "github" }, "original": { @@ -168,21 +168,6 @@ } }, "flake-compat": { - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { "flake": false, "locked": { "lastModified": 1696426674, @@ -198,7 +183,7 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_2": { "flake": false, "locked": { "lastModified": 1696426674, @@ -242,11 +227,11 @@ ] }, "locked": { - "lastModified": 1727826117, - "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=", + "lastModified": 1730504689, + "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1", + "rev": "506278e768c2a08bec68eb62932193e341f55c90", "type": "github" }, "original": { @@ -263,11 +248,11 @@ ] }, "locked": { - "lastModified": 1727826117, - "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=", + "lastModified": 1730504689, + "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1", + "rev": "506278e768c2a08bec68eb62932193e341f55c90", "type": "github" }, "original": { @@ -312,26 +297,6 @@ } }, "flake-utils": { - "inputs": { - "systems": [ - "systems" - ] - }, - "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { "inputs": { "systems": "systems_3" }, @@ -395,11 +360,11 @@ }, "hardware": { "locked": { - "lastModified": 1730368399, - "narHash": "sha256-F8vJtG389i9fp3k2/UDYHMed3PLCJYfxCqwiVP7b9ig=", + "lastModified": 1730537918, + "narHash": "sha256-GJB1/aaTnAtt9sso/EQ77TAGJ/rt6uvlP0RqZFnWue8=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "da14839ac5f38ee6adbdb4e6db09b5eef6d6ccdc", + "rev": "f6e0cd5c47d150c4718199084e5764f968f1b560", "type": "github" }, "original": { @@ -411,7 +376,7 @@ "helix-flake": { "inputs": { "crane": "crane", - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils", "nixpkgs": "nixpkgs_4", "rust-overlay": "rust-overlay" }, @@ -436,11 +401,11 @@ ] }, "locked": { - "lastModified": 1730450782, - "narHash": "sha256-0AfApF8aexgB6o34qqLW2cCX4LaWJajBVdU6ddiWZBM=", + "lastModified": 1730633670, + "narHash": "sha256-ZFJqIXpvVKvzOVFKWNRDyIyAo+GYdmEPaYi1bZB6uf0=", "owner": "nix-community", "repo": "home-manager", - "rev": "8ca921e5a806b5b6171add542defe7bdac79d189", + "rev": "8f6ca7855d409aeebe2a582c6fd6b6a8d0bf5661", "type": "github" }, "original": { @@ -478,11 +443,11 @@ ] }, "locked": { - "lastModified": 1730016908, - "narHash": "sha256-bFCxJco7d8IgmjfNExNz9knP8wvwbXU4s/d53KOK6U0=", + "lastModified": 1730633670, + "narHash": "sha256-ZFJqIXpvVKvzOVFKWNRDyIyAo+GYdmEPaYi1bZB6uf0=", "owner": "nix-community", "repo": "home-manager", - "rev": "e83414058edd339148dc142a8437edb9450574c8", + "rev": "8f6ca7855d409aeebe2a582c6fd6b6a8d0bf5661", "type": "github" }, "original": { @@ -540,11 +505,11 @@ ] }, "locked": { - "lastModified": 1729679960, - "narHash": "sha256-RoFKwZsx4RHKUwO8LhEZtmI08VBVrWt3TdzoJgx1HJ0=", + "lastModified": 1730561387, + "narHash": "sha256-esE2L7+9CsmlSjTIHwU9VAhzvsFSMC3kO7EiutCPQpg=", "owner": "hyprwm", "repo": "hypridle", - "rev": "4d2fb9e73eb6b75336ed3eb198e900f94ada24f4", + "rev": "26780ac51f6e7273e3934885036b7a7ed1a5af01", "type": "github" }, "original": { @@ -567,11 +532,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1730466192, - "narHash": "sha256-7O1TwW5neOpfeGRp4SSsbMJinupmBGFGo7yxQD9yk+A=", + "lastModified": 1730652188, + "narHash": "sha256-twMO3MloZ/EDNUiNHjBifnxrj9k/X379cvvv9eUibTk=", "owner": "hyprwm", "repo": "hyprland", - "rev": "3852418d2446555509738bf1486940042107afe7", + "rev": "cd0d0491261728260de3d1aff150e1b6c05f9e86", "type": "github" }, "original": { @@ -675,11 +640,11 @@ ] }, "locked": { - "lastModified": 1730053985, - "narHash": "sha256-jh7PhejwT+XqkkYnpZ6K/Gkqy4tvjN7g/ZBTvlS+Q9Y=", + "lastModified": 1730590959, + "narHash": "sha256-ss3lT96WFdiNxI4mtrmRtV1XsfxIs2BtYLiU9BKu7Uo=", "owner": "hyprwm", "repo": "hyprlock", - "rev": "edbecc87081756b45bdbea16b63e413473659dcd", + "rev": "f225e23e5b275dd5b3f7b2cc007ab4b559d8a9d9", "type": "github" }, "original": { @@ -835,11 +800,11 @@ ] }, "locked": { - "lastModified": 1730248099, - "narHash": "sha256-Fl7BSdpLk0uTXF6ol/MR0q1EB4XQ8tn0ftig0pyYh5Y=", + "lastModified": 1730625581, + "narHash": "sha256-vFxtzNCxtUIrmv8tluquZHjNTwMkCGtT0NCoVuwlqd4=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "c11bab124fc55a37cbd854ed28ea121ed609231f", + "rev": "e6195c6bfc037617e20d6d7d4d6c9cdeee6aba6d", "type": "github" }, "original": { @@ -851,18 +816,18 @@ "lanzaboote": { "inputs": { "crane": "crane_2", - "flake-compat": "flake-compat_3", + "flake-compat": "flake-compat_2", "flake-parts": "flake-parts_3", "nixpkgs": "nixpkgs_6", "pre-commit-hooks-nix": "pre-commit-hooks-nix", "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1730107060, - "narHash": "sha256-EnVVq1oNcimZmQYl6UlLYs0jhC6aLah0bsFMy2syEak=", + "lastModified": 1730739295, + "narHash": "sha256-aYeJ/P/9AuK6Kee63ZdsmDjEwhnksF+gIv/OyGtlBJE=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "0ad4ce46649b390da8bebcc229917f9863c98fe2", + "rev": "cef39a78679c266300874e7a7000b4da066228d4", "type": "github" }, "original": { @@ -900,11 +865,11 @@ "umu": "umu" }, "locked": { - "lastModified": 1730425644, - "narHash": "sha256-dfxO6mkn1KkotGQXV93m/2MoS9ayLUwaIIbR3mReLd0=", + "lastModified": 1730598103, + "narHash": "sha256-o8Lb4oN8MjEUVhoFUT7vEJqSBLs0qhd9YhJzaTkJ9JY=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "bcc7c896b56ccd644ca2daea74dac05c1731f59d", + "rev": "43f595b011c0f7f11807ace038abfde05c73d86b", "type": "github" }, "original": { @@ -1002,11 +967,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1730200266, - "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", "type": "github" }, "original": { @@ -1034,11 +999,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1729413321, - "narHash": "sha256-I4tuhRpZFa6Fu6dcH9Dlo5LlH17peT79vx1y1SpeKt0=", + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1997e4aa514312c1af7e2bda7fad1644e778ff26", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", "type": "github" }, "original": { @@ -1050,11 +1015,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1730025694, - "narHash": "sha256-Isj+5RY86+N+JrotqpaXqi6hUAABcF6pIOlIWy2leC8=", + "lastModified": 1730642263, + "narHash": "sha256-UXqvGZOHUDeAo8Sv5A5oObiQgBPELVgHQi130TU0jMU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "23664a7358c599dd4f975f16cea0865bf423e83d", + "rev": "650fe87347086b30a6dbcc32b55987ce5a23c6ae", "type": "github" }, "original": { @@ -1081,27 +1046,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1730200266, - "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_9": { - "locked": { - "lastModified": 1726755586, - "narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", "type": "github" }, "original": { @@ -1113,7 +1062,7 @@ }, "pre-commit-hooks": { "inputs": { - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat", "gitignore": "gitignore", "nixpkgs": [ "hyprland", @@ -1149,11 +1098,11 @@ "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { - "lastModified": 1729104314, - "narHash": "sha256-pZRZsq5oCdJt3upZIU4aslS9XwFJ+/nVtALHIciX/BI=", + "lastModified": 1730302582, + "narHash": "sha256-W1MIJpADXQCgosJZT8qBYLRuZls2KSiKdpnTVdKBuvU=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "3c3e88f0f544d6bb54329832616af7eb971b6be6", + "rev": "af8a16fe5c264f5e9e18bcee2859b40a656876cf", "type": "github" }, "original": { @@ -1168,9 +1117,7 @@ "anyrun": "anyrun", "chaotic": "chaotic", "fenix": "fenix", - "flake-compat": "flake-compat", "flake-parts": "flake-parts_2", - "flake-utils": "flake-utils", "hardware": "hardware", "helix-flake": "helix-flake", "hm": "hm", @@ -1192,11 +1139,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1730386175, - "narHash": "sha256-0Uq+/B8eu7pw8B8pxuGdFYKjcVLwNMcHfDxU9sXh7rg=", + "lastModified": 1730645367, + "narHash": "sha256-RnmBO+9zmZ3NpU6+NfYUDRg31dsPZ17xUqXVw/ZOKZ8=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "0ba893e1a00d92557ac91efb771d72eee36ca687", + "rev": "e44691a60443f1246a077df659607ca89f2ddc58", "type": "github" }, "original": { @@ -1235,11 +1182,11 @@ ] }, "locked": { - "lastModified": 1729996302, - "narHash": "sha256-QEU1NQq1+7s1na69Chig9K0iDDTKN0O4Zreo9A9rccA=", + "lastModified": 1730601085, + "narHash": "sha256-Sgax33jGuvVHTjl1P78IwzlhAGyOxtx5Q26inKja8S4=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "a1b337569f334ff0a01b57627f17b201d746d24c", + "rev": "8d1b40f8dfd7539aaa3de56e207e22b3cc451825", "type": "github" }, "original": { @@ -1341,7 +1288,9 @@ "tuirun": { "inputs": { "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_9", + "nixpkgs": [ + "nixpkgs" + ], "systems": "systems_6" }, "locked": { @@ -1367,11 +1316,11 @@ }, "locked": { "dir": "packaging/nix", - "lastModified": 1730219667, - "narHash": "sha256-vNvV7p4LTYfPUG46Dt8ubPVJid4l4gEQRqU/ZV/sQR0=", + "lastModified": 1730559589, + "narHash": "sha256-o4NT2Kt7yEA63j38Ic5mrh2U/iQjs3YSNvIbCccIYP0=", "ref": "refs/heads/main", - "rev": "10a406962c27a5a7cf05eab4ae19072cfaa4f165", - "revCount": 829, + "rev": "70645c290dfc6ed10282bf4d2ae38c0bf7b1a3fb", + "revCount": 830, "submodules": true, "type": "git", "url": "https://github.com/Open-Wine-Components/umu-launcher/" @@ -1411,11 +1360,11 @@ ] }, "locked": { - "lastModified": 1728166987, - "narHash": "sha256-w6dVTguAn9zJ+7aPOhBQgDz8bn6YZ7b56cY8Kg5HJRI=", + "lastModified": 1730187742, + "narHash": "sha256-M0umGIIvVFqCwA0fQ5edivMTbRYA0r/5tXK8sr+M7EA=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "fb9c8d665af0588bb087f97d0f673ddf0d501787", + "rev": "998f646762b94fbac61b0271ce66d3e617262858", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 4e287993..affb42b9 100644 --- a/flake.nix +++ b/flake.nix @@ -24,13 +24,6 @@ hardware.url = "github:nixos/nixos-hardware"; lanzaboote.url = "github:nix-community/lanzaboote"; - flake-utils = { - url = "github:numtide/flake-utils"; - inputs.systems.follows = "systems"; - }; - - flake-compat.url = "github:edolstra/flake-compat"; - hm = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; @@ -118,6 +111,9 @@ }; # Custom apps - tuirun.url = "git+https://git.sr.ht/~canasta/tuirun"; + tuirun = { + url = "git+https://git.sr.ht/~canasta/tuirun"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; } diff --git a/hosts/cnix/modules.nix b/hosts/cnix/modules.nix index 5c3c9648..74a11210 100644 --- a/hosts/cnix/modules.nix +++ b/hosts/cnix/modules.nix @@ -188,6 +188,11 @@ samba = { enable = false; }; + scx = { + enable = true; + scheduler = "scx_lavd"; + flags = "--performance --no-core-compaction"; + }; udisks = { enable = true; }; diff --git a/modules/default.nix b/modules/default.nix index a0e8b9f2..54a426c5 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -95,6 +95,7 @@ ./nixos/services/pipewire ./nixos/services/powerd ./nixos/services/samba + ./nixos/services/scx ./nixos/services/udisks ./nixos/services/xserver ./nixos/services/zram diff --git a/modules/home/programs/helix/default.nix b/modules/home/programs/helix/default.nix index 55034d8f..386b92c5 100644 --- a/modules/home/programs/helix/default.nix +++ b/modules/home/programs/helix/default.nix @@ -35,7 +35,10 @@ in { normal = "block"; select = "underline"; }; - indent-guides.render = true; + indent-guides = { + render = true; + character = "┊"; + }; inline-diagnostics = { cursor-line = "hint"; other-lines = "error"; @@ -46,7 +49,7 @@ in { }; gutters = ["diagnostics" "line-numbers" "spacer" "diff"]; statusline = { - separator = "of"; + separator = "/"; left = [ "mode" "selections" @@ -59,8 +62,7 @@ in { right = [ "file-encoding" "file-line-ending" - "position-percentage" - "spacer" + "position" "separator" "total-line-numbers" ]; diff --git a/modules/home/programs/helix/lang.nix b/modules/home/programs/helix/lang.nix index 87cb26c9..7f40d6d8 100644 --- a/modules/home/programs/helix/lang.nix +++ b/modules/home/programs/helix/lang.nix @@ -60,7 +60,7 @@ name = "nix"; auto-format = true; file-types = ["nix"]; - language-servers = ["nil"]; + language-servers = ["nixd"]; formatter = { command = lib.getExe pkgs.alejandra; args = ["-q"]; @@ -115,11 +115,6 @@ ++ prettierLangs langs; language-server = { - gpt = { - command = "helix-gpt"; - args = ["--copilotApiKey" "cat /run/agenix/helix-gpt"]; - }; - bash-language-server = { command = lib.getExe pkgs.bash-language-server; args = ["start"]; @@ -170,6 +165,10 @@ command = lib.getExe pkgs.nil; }; + nixd = { + command = lib.getExe pkgs.nixd; + }; + pyright = { command = "${pkgs.pyright}/bin/pyright-langserver"; args = ["--stdio"]; diff --git a/modules/home/programs/misc/default.nix b/modules/home/programs/misc/default.nix index d626a57d..a787dd06 100644 --- a/modules/home/programs/misc/default.nix +++ b/modules/home/programs/misc/default.nix @@ -22,6 +22,7 @@ in { # a monitor of resources btop = { enable = true; + package = pkgs.btop.override {rocmSupport = true;}; settings = { color_theme = "gruvbox_material_dark"; }; diff --git a/modules/nixos/boot/kernel/default.nix b/modules/nixos/boot/kernel/default.nix index 5f12485c..cff1060d 100644 --- a/modules/nixos/boot/kernel/default.nix +++ b/modules/nixos/boot/kernel/default.nix @@ -71,11 +71,8 @@ in { ++ cfg.extraBlacklistedModules; }; - chaotic = mkIf (cfg.variant == "cachyos") { - scx = { - enable = true; - scheduler = "scx_lavd"; - }; - }; + # chaotic = mkIf (cfg.variant == "cachyos") { + # environment.systemPackages = [pkgs.scx.lavd]; + # }; }; } diff --git a/modules/nixos/hardware/graphics/amd/default.nix b/modules/nixos/hardware/graphics/amd/default.nix index ec6bdd46..264be204 100644 --- a/modules/nixos/hardware/graphics/amd/default.nix +++ b/modules/nixos/hardware/graphics/amd/default.nix @@ -50,6 +50,7 @@ in { vulkan-tools wayland wayland-protocols + rocmPackages.rocm-smi ]; }) @@ -92,6 +93,8 @@ in { vulkanPackages_latest.spirv-cross wayland-protocols_git wayland_git + scx.lavd + rocmPackages.rocm-smi ]; }) ]); diff --git a/modules/nixos/programs/misc/default.nix b/modules/nixos/programs/misc/default.nix index 1fca1b5d..31ef675a 100644 --- a/modules/nixos/programs/misc/default.nix +++ b/modules/nixos/programs/misc/default.nix @@ -28,6 +28,7 @@ in { pkgs.protonup pkgs.winetricks pkgs.wine + pkgs.geekbench ]) ]; }; diff --git a/modules/nixos/programs/yubikey/default.nix b/modules/nixos/programs/yubikey/default.nix index d2aa3cbc..53124c3d 100644 --- a/modules/nixos/programs/yubikey/default.nix +++ b/modules/nixos/programs/yubikey/default.nix @@ -12,11 +12,11 @@ in { }; config = mkIf cfg.enable { environment.systemPackages = [ - pkgs.yubioath-flutter - pkgs.yubikey-manager + # pkgs.yubioath-flutter + # pkgs.yubikey-manager pkgs.yubikey-personalization pkgs.yubikey-personalization-gui - pkgs.pcsc-tools + # pkgs.pcsc-tools ]; }; } diff --git a/modules/nixos/services/scx/default.nix b/modules/nixos/services/scx/default.nix new file mode 100644 index 00000000..8f7d44d3 --- /dev/null +++ b/modules/nixos/services/scx/default.nix @@ -0,0 +1,42 @@ +{ + config, + lib, + ... +}: let + inherit (lib) mkIf mkEnableOption mkOption types; + cfg = config.nixos.services.scx; +in { + options = { + nixos.services.scx = { + enable = mkEnableOption "Enables scx scheduler"; + scheduler = mkOption { + type = types.enum ["scx_lavd" "scx_rusty" "scx_bpfland"]; + description = "Selects the scheduler for scx"; + default = "scx_lavd"; + }; + flags = mkOption { + type = types.str; + description = "Custom flags to be passed to scx scheduler"; + default = ""; + }; + }; + }; + config = mkIf cfg.enable { + systemd.services.scx = { + enable = true; + wantedBy = ["graphical.target"]; + unitConfig = { + Description = "Start scx_scheduler"; + ConditionPathIsDirectory = "/sys/kernel/sched_ext"; + StartLimitIntervalSec = 30; + StartLimitBurst = 2; + }; + serviceConfig = { + Type = "simple"; + Restart = "on-failure"; + StandardError = "journal"; + ExecStart = "/bin/sh -c 'exec /run/current-system/sw/bin/${cfg.scheduler} ${cfg.flags} '"; + }; + }; + }; +} diff --git a/modules/nixos/system/devpkgs/default.nix b/modules/nixos/system/devpkgs/default.nix index fd6b27fa..1cbfa5ea 100644 --- a/modules/nixos/system/devpkgs/default.nix +++ b/modules/nixos/system/devpkgs/default.nix @@ -26,7 +26,7 @@ in { nixd php # php84Packages.php-cs-fixer - phpactor + # phpactor python312Packages.python-lsp-server bash-language-server nil