From c4d676c9f91cdbed42a3033ccdc0929645d950da Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 17 Dec 2024 17:26:57 +0100 Subject: [PATCH 01/60] Test new jellyseerr version --- machines/atlas/configuration.nix | 15 ++++- machines/atlas/jellyseerr-module.nix | 76 ++++++++++++++++++++++++ machines/atlas/jellyseerr.nix | 89 ++++++++++++++++++++++++++++ 3 files changed, 179 insertions(+), 1 deletion(-) create mode 100644 machines/atlas/jellyseerr-module.nix create mode 100644 machines/atlas/jellyseerr.nix diff --git a/machines/atlas/configuration.nix b/machines/atlas/configuration.nix index 6b28f8d..eb1dda3 100644 --- a/machines/atlas/configuration.nix +++ b/machines/atlas/configuration.nix @@ -1,4 +1,12 @@ -{config, ...}: { +{ + config, + pkgs, + ... +}: { + imports = [./jellyseerr-module.nix]; + + disabledModules = ["services/misc/jellyseerr.nix"]; + config = { facter.reportPath = ./facter.json; system.stateVersion = "23.05"; @@ -10,5 +18,10 @@ targetUser = "root"; tags = ["server" "kubernetes"]; }; + + services.jellyseerr = { + enable = true; + package = pkgs.callPackage ./jellyseerr.nix {}; + }; }; } diff --git a/machines/atlas/jellyseerr-module.nix b/machines/atlas/jellyseerr-module.nix new file mode 100644 index 0000000..05d5364 --- /dev/null +++ b/machines/atlas/jellyseerr-module.nix @@ -0,0 +1,76 @@ +{ + config, + pkgs, + lib, + ... +}: let + cfg = config.services.jellyseerr; +in { + meta.maintainers = with lib.maintainers; [camillemndn pizzapim]; + + options.services.jellyseerr = { + enable = lib.mkEnableOption ''Jellyseerr, a requests manager for Jellyfin''; + package = lib.mkPackageOption pkgs "jellyseerr" {}; + + openFirewall = lib.mkOption { + type = lib.types.bool; + default = false; + description = ''Open port in the firewall for the Jellyseerr web interface.''; + }; + + port = lib.mkOption { + type = lib.types.port; + default = 5055; + description = ''The port which the Jellyseerr web UI should listen to.''; + }; + + config_directory = lib.mkOption { + description = '' + The directory to save run-time configuration. + ''; + type = lib.types.str; + example = "/jellyseerr"; + default = "/var/lib/jellyseerr"; + }; + }; + + config = lib.mkIf cfg.enable { + systemd.services.jellyseerr = { + description = "Jellyseerr, a requests manager for Jellyfin"; + after = ["network.target"]; + wantedBy = ["multi-user.target"]; + environment = { + PORT = toString cfg.port; + CONFIG_DIRECTORY = cfg.config_directory; + }; + serviceConfig = { + Type = "exec"; + StateDirectory = "jellyseerr"; + # WorkingDirectory = "${cfg.package}/libexec/jellyseerr/deps/jellyseerr"; + DynamicUser = true; + ExecStart = lib.getExe cfg.package; + # BindPaths = ["/var/lib/jellyseerr/:${cfg.package}/libexec/jellyseerr/deps/jellyseerr/config/"]; + Restart = "on-failure"; + ProtectHome = true; + ProtectSystem = "strict"; + PrivateTmp = true; + PrivateDevices = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + NoNewPrivileges = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + RemoveIPC = true; + PrivateMounts = true; + }; + }; + + networking.firewall = lib.mkIf cfg.openFirewall { + allowedTCPPorts = [cfg.port]; + }; + }; +} diff --git a/machines/atlas/jellyseerr.nix b/machines/atlas/jellyseerr.nix new file mode 100644 index 0000000..2b3b52f --- /dev/null +++ b/machines/atlas/jellyseerr.nix @@ -0,0 +1,89 @@ +{ + lib, + fetchFromGitHub, + makeWrapper, + node-pre-gyp, + nodejs, + pnpm_9, + python3, + stdenv, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "jellyseerr"; + version = "2.1.0"; + + src = with finalAttrs; + fetchFromGitHub { + owner = "Fallenbagel"; + repo = "jellyseerr"; + rev = "v${version}"; + hash = "sha256-5kaeqhjUy9Lgx4/uFcGRlAo+ROEOdTWc2m49rq8R8Hs="; + }; + + nativeBuildInputs = [ + nodejs + makeWrapper + pnpm_9.configHook + + # Needed for compiling sqlite3 and bcrypt from source + node-pre-gyp + python3 + ]; + + pnpmDeps = pnpm_9.fetchDeps { + inherit (finalAttrs) pname version src; + hash = "sha256-xu6DeaBArQmnqEnIgjc1DTZujQebSkjuai9tMHeQWCk="; + }; + + buildPhase = '' + runHook preBuild + pnpm build + + # Fixes "SQLite package has not been found installed" at launch + pushd node_modules/sqlite3 + export CPPFLAGS="-I${nodejs}/include/node" + npm run install --build-from-source --nodedir=${nodejs}/include/node + popd + + pushd node_modules/bcrypt + export CPPFLAGS="-I${nodejs}/include/node" + npm run install --build-from-source --nodedir=${nodejs}/include/node + popd + + runHook postBuild + ''; + + preInstall = '' + mkdir $out + cp ./package.json $out + rm -r .next/cache + cp -R ./.next $out + cp -R ./dist $out + cp ./overseerr-api.yml $out + cp -R ./node_modules $out + ''; + + postInstall = '' + makeWrapper '${nodejs}/bin/node' "$out/bin/jellyseerr" \ + --chdir $out \ + --add-flags "$out/dist/index.js" \ + --set NODE_ENV production + ''; + + meta = with lib; { + description = "Fork of overseerr for jellyfin support"; + homepage = "https://github.com/Fallenbagel/jellyseerr"; + longDescription = '' + Jellyseerr is a free and open source software application for managing + requests for your media library. It is a a fork of Overseerr built to + bring support for Jellyfin & Emby media servers! + ''; + license = licenses.mit; + maintainers = with maintainers; [ + camillemndn + pizzapim + ]; + platforms = platforms.linux; + mainProgram = "jellyseerr"; + }; +}) From 8dbfdce095ac2bc5f7b5636bf98b43a9734d6b8e Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 17 Dec 2024 20:43:10 +0100 Subject: [PATCH 02/60] Disable Stylix styling for Neovim --- home-manager/neovim/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/home-manager/neovim/default.nix b/home-manager/neovim/default.nix index 3cb10af..c1aa5a8 100644 --- a/home-manager/neovim/default.nix +++ b/home-manager/neovim/default.nix @@ -9,6 +9,10 @@ in { options.pim.neovim.enable = lib.mkEnableOption "neovim"; config = lib.mkIf cfg.enable { + # Disable Stylix styling of Neovim, + # because we have a plugin for that. + stylix.targets.neovim.enable = false; + programs.neovim = { enable = true; viAlias = true; From eab06380777d7297a5b60f53a4ab6fac50d0f084 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 24 Dec 2024 14:00:54 +0100 Subject: [PATCH 03/60] Update flake inputs --- flake.lock | 185 +++++++++++++++++++++++++------------- machines/sue/pim.home.nix | 4 +- 2 files changed, 126 insertions(+), 63 deletions(-) diff --git a/flake.lock b/flake.lock index 2156f8f..040d1d2 100644 --- a/flake.lock +++ b/flake.lock @@ -123,11 +123,11 @@ "stable": "stable" }, "locked": { - "lastModified": 1731527002, - "narHash": "sha256-dI9I6suECoIAmbS4xcrqF8r2pbmed8WWm5LIF1yWPw8=", + "lastModified": 1734897875, + "narHash": "sha256-LLpiqfOGBippRax9F33kSJ/Imt8gJXb6o0JwSBiNHCk=", "owner": "zhaofengli", "repo": "colmena", - "rev": "e3ad42138015fcdf2524518dd564a13145c72ea1", + "rev": "a6b51f5feae9bfb145daa37fd0220595acb7871e", "type": "github" }, "original": { @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1733168902, - "narHash": "sha256-8dupm9GfK+BowGdQd7EHK5V61nneLfr9xR6sc5vtDi0=", + "lastModified": 1734701201, + "narHash": "sha256-hk0roBX10j/hospoWIJIJj3i2skd7Oml6yKQBx7mTFk=", "owner": "nix-community", "repo": "disko", - "rev": "785c1e02c7e465375df971949b8dcbde9ec362e5", + "rev": "2ee76c861af3b895b3b104bae04777b61397485b", "type": "github" }, "original": { @@ -256,11 +256,11 @@ "flake-compat_5": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "type": "github" }, "original": { @@ -330,11 +330,32 @@ ] }, "locked": { - "lastModified": 1704152458, - "narHash": "sha256-DS+dGw7SKygIWf9w4eNBUZsK+4Ug27NwEWmn2tnbycg=", + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "88a2cd8166694ba0b6cb374700799cec53aef527", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { + "inputs": { + "nixpkgs-lib": [ + "nur", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", "type": "github" }, "original": { @@ -441,11 +462,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1733318908, - "narHash": "sha256-SVQVsbafSM1dJ4fpgyBqLZ+Lft+jcQuMtEL3lQWx2Sk=", + "lastModified": 1734797603, + "narHash": "sha256-ulZN7ps8nBV31SE+dwkDvKIzvN6hroRY8sYOT0w+E28=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "6f4e2a2112050951a314d2733a994fbab94864c6", + "rev": "f0f0dc4920a903c3e08f5bdb9246bb572fcae498", "type": "github" }, "original": { @@ -542,11 +563,11 @@ ] }, "locked": { - "lastModified": 1733050161, - "narHash": "sha256-lYnT+EYE47f5yY3KS/Kd4pJ6CO9fhCqumkYYkQ3TK20=", + "lastModified": 1734366194, + "narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=", "owner": "nix-community", "repo": "home-manager", - "rev": "62d536255879be574ebfe9b87c4ac194febf47c5", + "rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f", "type": "github" }, "original": { @@ -655,11 +676,11 @@ ] }, "locked": { - "lastModified": 1733024876, - "narHash": "sha256-vy9Q41hBE7Zg0yakF79neVgb3i3PQMSMR7uHPpPywFE=", + "lastModified": 1734838217, + "narHash": "sha256-zvMLS8BGn+kMG7tLLT3PJ67/S9yqZ9B7V8hKBa9cRRY=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "6e0b7f81367069589a480b91603a10bcf71f3103", + "rev": "d583b2d142f0428313df099f4a2dcf2a0496aa78", "type": "github" }, "original": { @@ -678,11 +699,11 @@ ] }, "locked": { - "lastModified": 1730022297, - "narHash": "sha256-eVMEONp3yqu0gy0RtOSEpOAueXuQsGQVqac3qCJixMU=", + "lastModified": 1734289443, + "narHash": "sha256-oU3AGvzByR7622kntPUPIHfAreOIktAsJav2ATHuc18=", "owner": "pdtpartners", "repo": "nix-snapshotter", - "rev": "c738f1a16a8612dfc474a4424bacff7e89369ca3", + "rev": "387e220d369dfa0ad093035515e8757f83144be8", "type": "github" }, "original": { @@ -738,11 +759,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1733328873, - "narHash": "sha256-tvy/IE0qwY37JcSZhhqNbhvVi1xdWrMRsLZ6D/+0Eyw=", + "lastModified": 1735004289, + "narHash": "sha256-cJmBhr59xQXwkvF+EZPhKTebgHyqXoei8u2Qq2QJYzE=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "2e87e0f9f40a31396ed94b4a42595662c2eeaf31", + "rev": "b9bfb93c7632a0e007a3a05fe77c0475d05e045a", "type": "github" }, "original": { @@ -753,11 +774,11 @@ }, "nixos-facter-modules": { "locked": { - "lastModified": 1732288619, - "narHash": "sha256-zSQ2cR+NRJfHUVfkv+O6Wi53wXfzX8KHiO8fRfnvc0M=", + "lastModified": 1734596637, + "narHash": "sha256-MRqwVAe3gsb88u4ME1UidmZFVCx+FEnoob0zkpO9DMY=", "owner": "numtide", "repo": "nixos-facter-modules", - "rev": "862648589993a96480c2255197a28feea712f68f", + "rev": "536472754982bf03079b4b4e0261838a760587c0", "type": "github" }, "original": { @@ -768,11 +789,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1733217105, - "narHash": "sha256-fc6jTzIwCIVWTX50FtW6AZpuukuQWSEbPiyg6ZRGWFY=", + "lastModified": 1734954597, + "narHash": "sha256-QIhd8/0x30gEv8XEE1iAnrdMlKuQ0EzthfDR7Hwl+fk=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "cceee0a31d2f01bcc98b2fbd591327c06a4ea4f9", + "rev": "def1d472c832d77885f174089b0d34854b007198", "type": "github" }, "original": { @@ -784,11 +805,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1730785428, - "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=", + "lastModified": 1734119587, + "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7", + "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", "type": "github" }, "original": { @@ -832,11 +853,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1733097829, - "narHash": "sha256-9hbb1rqGelllb4kVUCZ307G2k3/UhmA8PPGBoyuWaSw=", + "lastModified": 1734988233, + "narHash": "sha256-Ucfnxq1rF/GjNP3kTL+uTfgdoE9a3fxDftSfeLIS8mA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2c15aa59df0017ca140d9ba302412298ab4bf22a", + "rev": "de1864217bfa9b5845f465e771e0ecb48b30e02d", "type": "github" }, "original": { @@ -848,11 +869,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1732837521, - "narHash": "sha256-jNRNr49UiuIwaarqijgdTR2qLPifxsVhlJrKzQ8XUIE=", + "lastModified": 1734649271, + "narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "970e93b9f82e2a0f3675757eb0bfc73297cc6370", + "rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507", "type": "github" }, "original": { @@ -864,11 +885,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1733261153, - "narHash": "sha256-eq51hyiaIwtWo19fPEeE0Zr2s83DYMKJoukNLgGGpek=", + "lastModified": 1734875076, + "narHash": "sha256-Pzyb+YNG5u3zP79zoi8HXYMs15Q5dfjDgwCdUI5B0nY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b681065d0919f7eb5309a93cea2cfa84dec9aa88", + "rev": "1807c2b91223227ad5599d7067a61665c52d1295", "type": "github" }, "original": { @@ -879,6 +900,22 @@ } }, "nixpkgs_4": { + "locked": { + "lastModified": 1734649271, + "narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1725194671, "narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=", @@ -894,13 +931,13 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_6": { "locked": { - "lastModified": 1731890469, - "narHash": "sha256-D1FNZ70NmQEwNxpSSdTXCSklBH1z2isPR84J6DQrJGs=", + "lastModified": 1733097829, + "narHash": "sha256-9hbb1rqGelllb4kVUCZ307G2k3/UhmA8PPGBoyuWaSw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5083ec887760adfe12af64830a66807423a859a7", + "rev": "2c15aa59df0017ca140d9ba302412298ab4bf22a", "type": "github" }, "original": { @@ -911,12 +948,17 @@ } }, "nur": { + "inputs": { + "flake-parts": "flake-parts_3", + "nixpkgs": "nixpkgs_4", + "treefmt-nix": "treefmt-nix" + }, "locked": { - "lastModified": 1733327348, - "narHash": "sha256-C9cakd/zcXDhzIeHjjzToBx8bEVqWVB53RUzpUcKboM=", + "lastModified": 1735023107, + "narHash": "sha256-2SGa/zt8L3VnYIOXZ22tyKtyqfrHKp8VvwvBBhipBlY=", "owner": "nix-community", "repo": "NUR", - "rev": "81acc5a20ba2d84d206f61d2784147900965cd9f", + "rev": "93d9e3ea11110b392a313a7568b830570314fe3c", "type": "github" }, "original": { @@ -977,7 +1019,7 @@ "nur": "nur", "sops-nix": "sops-nix", "stylix": "stylix", - "treefmt-nix": "treefmt-nix" + "treefmt-nix": "treefmt-nix_2" } }, "rust-overlay": { @@ -1013,11 +1055,11 @@ ] }, "locked": { - "lastModified": 1732933841, - "narHash": "sha256-dge02pUSe2QeC/B3PriA0R8eAX+EU3aDoXj9FcS3XDw=", + "lastModified": 1734834660, + "narHash": "sha256-bm8V+Cu8rWJA+vKQnc94mXTpSDgvedyoDKxTVi/uJfw=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "c65e91d4a33abc3bc4a892d3c5b5b378bad64ea1", + "rev": "b070e6030118680977bc2388868c4b3963872134", "type": "github" }, "original": { @@ -1033,11 +1075,11 @@ ] }, "locked": { - "lastModified": 1733128155, - "narHash": "sha256-m6/qwJAJYcidGMEdLqjKzRIjapK4nUfMq7rDCTmZajc=", + "lastModified": 1734546875, + "narHash": "sha256-6OvJbqQ6qPpNw3CA+W8Myo5aaLhIJY/nNFDk3zMXLfM=", "owner": "Mic92", "repo": "sops-nix", - "rev": "c6134b6fff6bda95a1ac872a2a9d5f32e3c37856", + "rev": "ed091321f4dd88afc28b5b4456e0a15bd8374b4d", "type": "github" }, "original": { @@ -1075,7 +1117,7 @@ "flake-utils": "flake-utils_4", "gnome-shell": "gnome-shell", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_5", "systems": "systems_4" }, "locked": { @@ -1175,7 +1217,10 @@ }, "treefmt-nix": { "inputs": { - "nixpkgs": "nixpkgs_5" + "nixpkgs": [ + "nur", + "nixpkgs" + ] }, "locked": { "lastModified": 1733222881, @@ -1190,6 +1235,24 @@ "repo": "treefmt-nix", "type": "github" } + }, + "treefmt-nix_2": { + "inputs": { + "nixpkgs": "nixpkgs_6" + }, + "locked": { + "lastModified": 1734982074, + "narHash": "sha256-N7M37KP7cHWoXicuE536GrVvU8nMDT/gpI1kja2hkdg=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "e41e948cf097cbf96ba4dff47a30ea6891af9f33", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } } }, "root": "root", diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index 3664f01..98a5c52 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -32,12 +32,13 @@ (with pkgs; [ jellyfin-media-player virt-manager + bottles-unwrapped + feishin ]) ++ (with pkgs.unstable; [ attic-client dbeaver-bin devenv - bottles-unwrapped gimp hexchat impression @@ -57,7 +58,6 @@ wireshark # nheko # Has insecure olm dependency handbrake - feishin redfishtool ]); }; From 848edc9af2661f569008982ef2d59bd76aa823dd Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 24 Dec 2024 14:30:10 +0100 Subject: [PATCH 04/60] Use Linux 6.12 on Laptop --- machines/sue/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/machines/sue/configuration.nix b/machines/sue/configuration.nix index 70c4391..23e8840 100644 --- a/machines/sue/configuration.nix +++ b/machines/sue/configuration.nix @@ -37,6 +37,7 @@ nix.settings.trusted-users = ["pim"]; system.stateVersion = "23.05"; sops.defaultSopsFile = "${self}/secrets/sue/nixos.yaml"; + boot.kernelPackages = pkgs.unstable.linuxKernel.packages.linux_6_12; environment.systemPackages = with pkgs; [ borgbackup From 85ec47a2b04864010e0169aa61a242f3cd4057a7 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 29 Dec 2024 13:44:49 +0100 Subject: [PATCH 05/60] Configure neovim as manpager --- machines/sue/pim.home.nix | 1 + nixos/default.nix | 4 +--- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index 98a5c52..0c02cdb 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -20,6 +20,7 @@ username = "pim"; homeDirectory = "/home/pim"; stateVersion = "23.05"; + sessionVariables.MANPAGER = "nvim +Man!"; }; sops = { diff --git a/nixos/default.nix b/nixos/default.nix index bce06e6..111d838 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -170,8 +170,6 @@ }; nixpkgs = { - # hostPlatform = lib.mkDefault "x86_64-linux"; - config = { allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ @@ -184,7 +182,7 @@ }; overlays = [ - inputs.nur.overlay + inputs.nur.overlays.default (final: _prev: { unstable = import inputs.nixpkgs-unstable { inherit (pkgs) system; From e286f4d8356e50bfcb0413a9f276541cb40bc42d Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 29 Dec 2024 14:47:37 +0100 Subject: [PATCH 06/60] Use final package of neovim for manpager --- machines/sue/pim.home.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index 0c02cdb..44f9404 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -1,4 +1,5 @@ { + lib, self, pkgs, config, @@ -20,7 +21,7 @@ username = "pim"; homeDirectory = "/home/pim"; stateVersion = "23.05"; - sessionVariables.MANPAGER = "nvim +Man!"; + sessionVariables.MANPAGER = "${lib.getExe config.programs.neovim.finalPackage} +Man!"; }; sops = { From 54f3b5802abeefd5e9d01913a3eec3d4c2697648 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Fri, 10 Jan 2025 17:51:57 +0100 Subject: [PATCH 07/60] Replace neovim config with NVF --- flake.lock | 2310 +++++++++++++++++++++++++++- flake.nix | 5 + home-manager/default.nix | 2 +- home-manager/neovim/bufferline.lua | 13 - home-manager/neovim/cmp.lua | 43 - home-manager/neovim/commentary.lua | 2 - home-manager/neovim/core.lua | 9 - home-manager/neovim/default.nix | 95 -- home-manager/neovim/leap.lua | 4 - home-manager/neovim/lspconfig.lua | 65 - home-manager/neovim/none-ls.lua | 53 - home-manager/neovim/telescope.lua | 17 - home-manager/neovim/treesitter.lua | 9 - machines/sue/pim.home.nix | 120 +- 14 files changed, 2428 insertions(+), 319 deletions(-) delete mode 100644 home-manager/neovim/bufferline.lua delete mode 100644 home-manager/neovim/cmp.lua delete mode 100644 home-manager/neovim/commentary.lua delete mode 100644 home-manager/neovim/core.lua delete mode 100644 home-manager/neovim/default.nix delete mode 100644 home-manager/neovim/leap.lua delete mode 100644 home-manager/neovim/lspconfig.lua delete mode 100644 home-manager/neovim/none-ls.lua delete mode 100644 home-manager/neovim/telescope.lua delete mode 100644 home-manager/neovim/treesitter.lua diff --git a/flake.lock b/flake.lock index 040d1d2..7f9a6fd 100644 --- a/flake.lock +++ b/flake.lock @@ -364,6 +364,24 @@ "type": "github" } }, + "flake-parts_4": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "locked": { "lastModified": 1659877975, @@ -416,6 +434,24 @@ } }, "flake-utils_4": { + "inputs": { + "systems": "systems_4" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_5": { "inputs": { "systems": [ "stylix", @@ -648,6 +684,69 @@ "type": "github" } }, + "mnw": { + "locked": { + "lastModified": 1735150973, + "narHash": "sha256-OJhcCAoaMMXeD6o4qI/hxBCNELJp4dN8D5LJZc8w8XA=", + "owner": "Gerg-L", + "repo": "mnw", + "rev": "40cd0b006cc48dffd0f8698ad7f54cf1d56779a6", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "mnw", + "type": "github" + } + }, + "naersk": { + "inputs": { + "nixpkgs": [ + "nvf", + "rnix-lsp", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1655042882, + "narHash": "sha256-9BX8Fuez5YJlN7cdPO63InoyBy7dm3VlJkkmTt6fS1A=", + "owner": "nix-community", + "repo": "naersk", + "rev": "cddffb5aa211f50c4b8750adbec0bbbdfb26bb9f", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "naersk", + "type": "github" + } + }, + "nil": { + "inputs": { + "flake-utils": [ + "nvf", + "flake-utils" + ], + "nixpkgs": [ + "nvf", + "nixpkgs" + ], + "rust-overlay": "rust-overlay_3" + }, + "locked": { + "lastModified": 1732053863, + "narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=", + "owner": "oxalica", + "repo": "nil", + "rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "nil", + "type": "github" + } + }, "nix-github-actions": { "inputs": { "nixpkgs": [ @@ -819,6 +918,18 @@ "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1733096140, + "narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" + } + }, "nixpkgs-stable": { "locked": { "lastModified": 1730741070, @@ -916,6 +1027,22 @@ } }, "nixpkgs_5": { + "locked": { + "lastModified": 1656753965, + "narHash": "sha256-BCrB3l0qpJokOnIVc3g2lHiGhnjUi0MoXiw6t1o8H1E=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "0ea7a8f1b939d74e5df8af9a8f7342097cdf69eb", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_6": { "locked": { "lastModified": 1725194671, "narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=", @@ -931,7 +1058,7 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_7": { "locked": { "lastModified": 1733097829, "narHash": "sha256-9hbb1rqGelllb4kVUCZ307G2k3/UhmA8PPGBoyuWaSw=", @@ -947,6 +1074,22 @@ "type": "github" } }, + "nmd": { + "flake": false, + "locked": { + "lastModified": 1705050560, + "narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=", + "owner": "~rycee", + "repo": "nmd", + "rev": "66d9334933119c36f91a78d565c152a4fdc8d3d3", + "type": "sourcehut" + }, + "original": { + "owner": "~rycee", + "repo": "nmd", + "type": "sourcehut" + } + }, "nur": { "inputs": { "flake-parts": "flake-parts_3", @@ -967,6 +1110,2075 @@ "type": "github" } }, + "nvf": { + "inputs": { + "flake-parts": "flake-parts_4", + "flake-utils": "flake-utils_4", + "mnw": "mnw", + "nil": "nil", + "nixpkgs": [ + "nixpkgs" + ], + "nmd": "nmd", + "plugin-aerial-nvim": "plugin-aerial-nvim", + "plugin-alpha-nvim": "plugin-alpha-nvim", + "plugin-base16": "plugin-base16", + "plugin-bufdelete-nvim": "plugin-bufdelete-nvim", + "plugin-catppuccin": "plugin-catppuccin", + "plugin-ccc": "plugin-ccc", + "plugin-cellular-automaton": "plugin-cellular-automaton", + "plugin-chatgpt": "plugin-chatgpt", + "plugin-cheatsheet-nvim": "plugin-cheatsheet-nvim", + "plugin-cinnamon-nvim": "plugin-cinnamon-nvim", + "plugin-cmp-buffer": "plugin-cmp-buffer", + "plugin-cmp-luasnip": "plugin-cmp-luasnip", + "plugin-cmp-nvim-lsp": "plugin-cmp-nvim-lsp", + "plugin-cmp-path": "plugin-cmp-path", + "plugin-cmp-treesitter": "plugin-cmp-treesitter", + "plugin-codewindow-nvim": "plugin-codewindow-nvim", + "plugin-comment-nvim": "plugin-comment-nvim", + "plugin-copilot-cmp": "plugin-copilot-cmp", + "plugin-copilot-lua": "plugin-copilot-lua", + "plugin-crates-nvim": "plugin-crates-nvim", + "plugin-csharpls-extended": "plugin-csharpls-extended", + "plugin-dashboard-nvim": "plugin-dashboard-nvim", + "plugin-diffview-nvim": "plugin-diffview-nvim", + "plugin-dracula": "plugin-dracula", + "plugin-dressing-nvim": "plugin-dressing-nvim", + "plugin-elixir-tools": "plugin-elixir-tools", + "plugin-fastaction-nvim": "plugin-fastaction-nvim", + "plugin-fidget-nvim": "plugin-fidget-nvim", + "plugin-flutter-tools": "plugin-flutter-tools", + "plugin-friendly-snippets": "plugin-friendly-snippets", + "plugin-gesture-nvim": "plugin-gesture-nvim", + "plugin-gitsigns-nvim": "plugin-gitsigns-nvim", + "plugin-glow-nvim": "plugin-glow-nvim", + "plugin-gruvbox": "plugin-gruvbox", + "plugin-haskell-tools-nvim": "plugin-haskell-tools-nvim", + "plugin-highlight-undo": "plugin-highlight-undo", + "plugin-hop-nvim": "plugin-hop-nvim", + "plugin-icon-picker-nvim": "plugin-icon-picker-nvim", + "plugin-image-nvim": "plugin-image-nvim", + "plugin-indent-blankline": "plugin-indent-blankline", + "plugin-leap-nvim": "plugin-leap-nvim", + "plugin-lsp-lines": "plugin-lsp-lines", + "plugin-lsp-signature": "plugin-lsp-signature", + "plugin-lspkind": "plugin-lspkind", + "plugin-lspsaga": "plugin-lspsaga", + "plugin-lua-utils-nvim": "plugin-lua-utils-nvim", + "plugin-lualine": "plugin-lualine", + "plugin-luasnip": "plugin-luasnip", + "plugin-lz-n": "plugin-lz-n", + "plugin-lzn-auto-require": "plugin-lzn-auto-require", + "plugin-mind-nvim": "plugin-mind-nvim", + "plugin-minimap-vim": "plugin-minimap-vim", + "plugin-modes-nvim": "plugin-modes-nvim", + "plugin-neo-tree-nvim": "plugin-neo-tree-nvim", + "plugin-neocord": "plugin-neocord", + "plugin-neodev-nvim": "plugin-neodev-nvim", + "plugin-neorg": "plugin-neorg", + "plugin-neorg-telescope": "plugin-neorg-telescope", + "plugin-new-file-template-nvim": "plugin-new-file-template-nvim", + "plugin-noice-nvim": "plugin-noice-nvim", + "plugin-none-ls": "plugin-none-ls", + "plugin-nui-nvim": "plugin-nui-nvim", + "plugin-nvim-autopairs": "plugin-nvim-autopairs", + "plugin-nvim-bufferline-lua": "plugin-nvim-bufferline-lua", + "plugin-nvim-cmp": "plugin-nvim-cmp", + "plugin-nvim-colorizer-lua": "plugin-nvim-colorizer-lua", + "plugin-nvim-cursorline": "plugin-nvim-cursorline", + "plugin-nvim-dap": "plugin-nvim-dap", + "plugin-nvim-dap-go": "plugin-nvim-dap-go", + "plugin-nvim-dap-ui": "plugin-nvim-dap-ui", + "plugin-nvim-docs-view": "plugin-nvim-docs-view", + "plugin-nvim-lightbulb": "plugin-nvim-lightbulb", + "plugin-nvim-lspconfig": "plugin-nvim-lspconfig", + "plugin-nvim-metals": "plugin-nvim-metals", + "plugin-nvim-navbuddy": "plugin-nvim-navbuddy", + "plugin-nvim-navic": "plugin-nvim-navic", + "plugin-nvim-neoclip": "plugin-nvim-neoclip", + "plugin-nvim-nio": "plugin-nvim-nio", + "plugin-nvim-notify": "plugin-nvim-notify", + "plugin-nvim-scrollbar": "plugin-nvim-scrollbar", + "plugin-nvim-session-manager": "plugin-nvim-session-manager", + "plugin-nvim-surround": "plugin-nvim-surround", + "plugin-nvim-tree-lua": "plugin-nvim-tree-lua", + "plugin-nvim-treesitter-context": "plugin-nvim-treesitter-context", + "plugin-nvim-ts-autotag": "plugin-nvim-ts-autotag", + "plugin-nvim-web-devicons": "plugin-nvim-web-devicons", + "plugin-obsidian-nvim": "plugin-obsidian-nvim", + "plugin-omnisharp-extended": "plugin-omnisharp-extended", + "plugin-onedark": "plugin-onedark", + "plugin-orgmode-nvim": "plugin-orgmode-nvim", + "plugin-otter-nvim": "plugin-otter-nvim", + "plugin-oxocarbon": "plugin-oxocarbon", + "plugin-pathlib-nvim": "plugin-pathlib-nvim", + "plugin-plenary-nvim": "plugin-plenary-nvim", + "plugin-precognition-nvim": "plugin-precognition-nvim", + "plugin-project-nvim": "plugin-project-nvim", + "plugin-registers": "plugin-registers", + "plugin-render-markdown-nvim": "plugin-render-markdown-nvim", + "plugin-rose-pine": "plugin-rose-pine", + "plugin-rtp-nvim": "plugin-rtp-nvim", + "plugin-run-nvim": "plugin-run-nvim", + "plugin-rustaceanvim": "plugin-rustaceanvim", + "plugin-smartcolumn": "plugin-smartcolumn", + "plugin-sqls-nvim": "plugin-sqls-nvim", + "plugin-tabular": "plugin-tabular", + "plugin-telescope": "plugin-telescope", + "plugin-tiny-devicons-auto-colors": "plugin-tiny-devicons-auto-colors", + "plugin-todo-comments": "plugin-todo-comments", + "plugin-toggleterm-nvim": "plugin-toggleterm-nvim", + "plugin-tokyonight": "plugin-tokyonight", + "plugin-trouble": "plugin-trouble", + "plugin-ts-error-translator": "plugin-ts-error-translator", + "plugin-typst-preview-nvim": "plugin-typst-preview-nvim", + "plugin-vim-dirtytalk": "plugin-vim-dirtytalk", + "plugin-vim-fugitive": "plugin-vim-fugitive", + "plugin-vim-illuminate": "plugin-vim-illuminate", + "plugin-vim-markdown": "plugin-vim-markdown", + "plugin-vim-repeat": "plugin-vim-repeat", + "plugin-vim-startify": "plugin-vim-startify", + "plugin-which-key": "plugin-which-key", + "rnix-lsp": "rnix-lsp", + "systems": "systems_5" + }, + "locked": { + "lastModified": 1736161221, + "narHash": "sha256-MKhkpmhiiF18GCTFyNyzN4Wz5nHd8muXM/O1pfCYvV8=", + "owner": "notashelf", + "repo": "nvf", + "rev": "a1bac1d356d9f0610c0a2757b6abe9d9835b8063", + "type": "github" + }, + "original": { + "owner": "notashelf", + "repo": "nvf", + "type": "github" + } + }, + "plugin-aerial-nvim": { + "flake": false, + "locked": { + "lastModified": 1736064692, + "narHash": "sha256-7YQtkUTACTMfAGoqoFDPmRrqtw+ypxDbeLCTB3sy4Us=", + "owner": "stevearc", + "repo": "aerial.nvim", + "rev": "b3ec25ca8c347fafa976484a6cace162239112e1", + "type": "github" + }, + "original": { + "owner": "stevearc", + "repo": "aerial.nvim", + "type": "github" + } + }, + "plugin-alpha-nvim": { + "flake": false, + "locked": { + "lastModified": 1731604504, + "narHash": "sha256-sNi5qarejYqM4/J7lBZI3gjVLxer5FBPq8K6qjqcMjA=", + "owner": "goolord", + "repo": "alpha-nvim", + "rev": "de72250e054e5e691b9736ee30db72c65d560771", + "type": "github" + }, + "original": { + "owner": "goolord", + "repo": "alpha-nvim", + "type": "github" + } + }, + "plugin-base16": { + "flake": false, + "locked": { + "lastModified": 1716483968, + "narHash": "sha256-GRF/6AobXHamw8TZ3FjL7SI6ulcpwpcohsIuZeCSh2A=", + "owner": "rrethy", + "repo": "base16-nvim", + "rev": "6ac181b5733518040a33017dde654059cd771b7c", + "type": "github" + }, + "original": { + "owner": "rrethy", + "repo": "base16-nvim", + "type": "github" + } + }, + "plugin-bufdelete-nvim": { + "flake": false, + "locked": { + "lastModified": 1708814161, + "narHash": "sha256-ljUNfmpImtxFCS19HC9kFlaLlqaPDltKtnx1+/6Y33U=", + "owner": "famiu", + "repo": "bufdelete.nvim", + "rev": "f6bcea78afb3060b198125256f897040538bcb81", + "type": "github" + }, + "original": { + "owner": "famiu", + "repo": "bufdelete.nvim", + "type": "github" + } + }, + "plugin-catppuccin": { + "flake": false, + "locked": { + "lastModified": 1735299190, + "narHash": "sha256-lwQLmqm01FihJdad4QRMK23MTrouyOokyuX/3enWjzs=", + "owner": "catppuccin", + "repo": "nvim", + "rev": "f67b886d65a029f12ffa298701fb8f1efd89295d", + "type": "github" + }, + "original": { + "owner": "catppuccin", + "repo": "nvim", + "type": "github" + } + }, + "plugin-ccc": { + "flake": false, + "locked": { + "lastModified": 1727935067, + "narHash": "sha256-OhdR2sAQV5PvlhaKQ6rYneMmvQiN3QfymOeanpAs9wY=", + "owner": "uga-rosa", + "repo": "ccc.nvim", + "rev": "7c639042583c7bdc7ce2e37e5a0e0aa6d0659c6a", + "type": "github" + }, + "original": { + "owner": "uga-rosa", + "repo": "ccc.nvim", + "type": "github" + } + }, + "plugin-cellular-automaton": { + "flake": false, + "locked": { + "lastModified": 1719777869, + "narHash": "sha256-nIv7ISRk0+yWd1lGEwAV6u1U7EFQj/T9F8pU6O0Wf0s=", + "owner": "Eandrju", + "repo": "cellular-automaton.nvim", + "rev": "11aea08aa084f9d523b0142c2cd9441b8ede09ed", + "type": "github" + }, + "original": { + "owner": "Eandrju", + "repo": "cellular-automaton.nvim", + "type": "github" + } + }, + "plugin-chatgpt": { + "flake": false, + "locked": { + "lastModified": 1728720509, + "narHash": "sha256-+YVXAkG4pp7RGs8lGnNFc0kQcUV3O3kYBQaQ5Qa4wB0=", + "owner": "jackMort", + "repo": "ChatGPT.nvim", + "rev": "5b6d296eefc75331e2ff9f0adcffbd7d27862dd6", + "type": "github" + }, + "original": { + "owner": "jackMort", + "repo": "ChatGPT.nvim", + "type": "github" + } + }, + "plugin-cheatsheet-nvim": { + "flake": false, + "locked": { + "lastModified": 1640255456, + "narHash": "sha256-TYkGB7cON2t4GwMaR9H1MDG2j3btBv2AR37ade8kqTY=", + "owner": "sudormrfbin", + "repo": "cheatsheet.nvim", + "rev": "9716f9aaa94dd1fd6ce59b5aae0e5f25e2a463ef", + "type": "github" + }, + "original": { + "owner": "sudormrfbin", + "repo": "cheatsheet.nvim", + "type": "github" + } + }, + "plugin-cinnamon-nvim": { + "flake": false, + "locked": { + "lastModified": 1722992123, + "narHash": "sha256-kccQ4iFMSQ8kvE7hYz90hBrsDLo7VohFj/6lEZZiAO8=", + "owner": "declancm", + "repo": "cinnamon.nvim", + "rev": "450cb3247765fed7871b41ef4ce5fa492d834215", + "type": "github" + }, + "original": { + "owner": "declancm", + "repo": "cinnamon.nvim", + "type": "github" + } + }, + "plugin-cmp-buffer": { + "flake": false, + "locked": { + "lastModified": 1660101488, + "narHash": "sha256-dG4U7MtnXThoa/PD+qFtCt76MQ14V1wX8GMYcvxEnbM=", + "owner": "hrsh7th", + "repo": "cmp-buffer", + "rev": "3022dbc9166796b644a841a02de8dd1cc1d311fa", + "type": "github" + }, + "original": { + "owner": "hrsh7th", + "repo": "cmp-buffer", + "type": "github" + } + }, + "plugin-cmp-luasnip": { + "flake": false, + "locked": { + "lastModified": 1730707109, + "narHash": "sha256-86lKQPPyqFz8jzuLajjHMKHrYnwW6+QOcPyQEx6B+gw=", + "owner": "saadparwaiz1", + "repo": "cmp_luasnip", + "rev": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90", + "type": "github" + }, + "original": { + "owner": "saadparwaiz1", + "repo": "cmp_luasnip", + "type": "github" + } + }, + "plugin-cmp-nvim-lsp": { + "flake": false, + "locked": { + "lastModified": 1733823748, + "narHash": "sha256-iaihXNCF5bB5MdeoosD/kc3QtpA/QaIDZVLiLIurBSM=", + "owner": "hrsh7th", + "repo": "cmp-nvim-lsp", + "rev": "99290b3ec1322070bcfb9e846450a46f6efa50f0", + "type": "github" + }, + "original": { + "owner": "hrsh7th", + "repo": "cmp-nvim-lsp", + "type": "github" + } + }, + "plugin-cmp-path": { + "flake": false, + "locked": { + "lastModified": 1664784283, + "narHash": "sha256-thppiiV3wjIaZnAXmsh7j3DUc6ceSCvGzviwFUnoPaI=", + "owner": "hrsh7th", + "repo": "cmp-path", + "rev": "91ff86cd9c29299a64f968ebb45846c485725f23", + "type": "github" + }, + "original": { + "owner": "hrsh7th", + "repo": "cmp-path", + "type": "github" + } + }, + "plugin-cmp-treesitter": { + "flake": false, + "locked": { + "lastModified": 1715596479, + "narHash": "sha256-8WAk9S+/7vSz7bVHdEzjbKUokU144fvnByIeJ1gAWhU=", + "owner": "ray-x", + "repo": "cmp-treesitter", + "rev": "958fcfa0d8ce46d215e19cc3992c542f576c4123", + "type": "github" + }, + "original": { + "owner": "ray-x", + "repo": "cmp-treesitter", + "type": "github" + } + }, + "plugin-codewindow-nvim": { + "flake": false, + "locked": { + "lastModified": 1717593052, + "narHash": "sha256-HAqVTAkFZ1/vBiBP/QDE1fmwOl/PbznAxz/jmUFxs88=", + "owner": "gorbit99", + "repo": "codewindow.nvim", + "rev": "dd7017617962943eb1d152fc58940f11c6775a4a", + "type": "github" + }, + "original": { + "owner": "gorbit99", + "repo": "codewindow.nvim", + "type": "github" + } + }, + "plugin-comment-nvim": { + "flake": false, + "locked": { + "lastModified": 1717957420, + "narHash": "sha256-h0kPue5Eqd5aeu4VoLH45pF0DmWWo1d8SnLICSQ63zc=", + "owner": "numToStr", + "repo": "Comment.nvim", + "rev": "e30b7f2008e52442154b66f7c519bfd2f1e32acb", + "type": "github" + }, + "original": { + "owner": "numToStr", + "repo": "Comment.nvim", + "type": "github" + } + }, + "plugin-copilot-cmp": { + "flake": false, + "locked": { + "lastModified": 1733947099, + "narHash": "sha256-erRL8bY/zuwuCZfttw+avTrFV7pjv2H6v73NzY2bymM=", + "owner": "zbirenbaum", + "repo": "copilot-cmp", + "rev": "15fc12af3d0109fa76b60b5cffa1373697e261d1", + "type": "github" + }, + "original": { + "owner": "zbirenbaum", + "repo": "copilot-cmp", + "type": "github" + } + }, + "plugin-copilot-lua": { + "flake": false, + "locked": { + "lastModified": 1734926641, + "narHash": "sha256-c2UE0dLBtoYMvMxg+jXzfsD+wN9sZLvftJq4gGmooZU=", + "owner": "zbirenbaum", + "repo": "copilot.lua", + "rev": "886ee73b6d464b2b3e3e6a7ff55ce87feac423a9", + "type": "github" + }, + "original": { + "owner": "zbirenbaum", + "repo": "copilot.lua", + "type": "github" + } + }, + "plugin-crates-nvim": { + "flake": false, + "locked": { + "lastModified": 1727384188, + "narHash": "sha256-DIG0MXRTit4iEVoLlgsTK4znjam/QDjeZEpIDn6KHiE=", + "owner": "Saecki", + "repo": "crates.nvim", + "rev": "8bf8358ee326d5d8c11dcd7ac0bcc9ff97dbc785", + "type": "github" + }, + "original": { + "owner": "Saecki", + "repo": "crates.nvim", + "type": "github" + } + }, + "plugin-csharpls-extended": { + "flake": false, + "locked": { + "lastModified": 1734491815, + "narHash": "sha256-jO/vuNgP8JAOIturzPFvxMLL5y+6YTYsUxjWwX6Nyso=", + "owner": "Decodetalkers", + "repo": "csharpls-extended-lsp.nvim", + "rev": "4f56c06215d10c4fcfee8a7f04ba766c114aece0", + "type": "github" + }, + "original": { + "owner": "Decodetalkers", + "repo": "csharpls-extended-lsp.nvim", + "type": "github" + } + }, + "plugin-dashboard-nvim": { + "flake": false, + "locked": { + "lastModified": 1730526793, + "narHash": "sha256-Qi8kmC3U8Tvxh0pWIBtN3DuWJioEGWn7FqQ8lQwauRo=", + "owner": "glepnir", + "repo": "dashboard-nvim", + "rev": "ae309606940d26d8c9df8b048a6e136b6bbec478", + "type": "github" + }, + "original": { + "owner": "glepnir", + "repo": "dashboard-nvim", + "type": "github" + } + }, + "plugin-diffview-nvim": { + "flake": false, + "locked": { + "lastModified": 1718279802, + "narHash": "sha256-SX+ybIzL/w6uyCy4iZKnWnzTFwqB1oXSgyYVAdpdKi8=", + "owner": "sindrets", + "repo": "diffview.nvim", + "rev": "4516612fe98ff56ae0415a259ff6361a89419b0a", + "type": "github" + }, + "original": { + "owner": "sindrets", + "repo": "diffview.nvim", + "type": "github" + } + }, + "plugin-dracula": { + "flake": false, + "locked": { + "lastModified": 1734597715, + "narHash": "sha256-9iRI5NW3mcVzduitY4sr679dRWAWVbZuCAEfgM1OIOs=", + "owner": "Mofiqul", + "repo": "dracula.nvim", + "rev": "515acae4fd294fcefa5b15237a333c2606e958d1", + "type": "github" + }, + "original": { + "owner": "Mofiqul", + "repo": "dracula.nvim", + "type": "github" + } + }, + "plugin-dressing-nvim": { + "flake": false, + "locked": { + "lastModified": 1734804193, + "narHash": "sha256-N4hB5wDgoqXrXxSfzDCrqmdDtdVvq+PtOS7FBPH7qXE=", + "owner": "stevearc", + "repo": "dressing.nvim", + "rev": "3a45525bb182730fe462325c99395529308f431e", + "type": "github" + }, + "original": { + "owner": "stevearc", + "repo": "dressing.nvim", + "type": "github" + } + }, + "plugin-elixir-tools": { + "flake": false, + "locked": { + "lastModified": 1735076861, + "narHash": "sha256-CoGTVSKifjqshk8hYaQfFYTYgEGsIb1hKdz6fIS81iU=", + "owner": "elixir-tools", + "repo": "elixir-tools.nvim", + "rev": "803fa69dbb457305cff98e3997bed2c4b51aea7c", + "type": "github" + }, + "original": { + "owner": "elixir-tools", + "repo": "elixir-tools.nvim", + "type": "github" + } + }, + "plugin-fastaction-nvim": { + "flake": false, + "locked": { + "lastModified": 1734546047, + "narHash": "sha256-1GSxTyXqufjkRtNK3drWlCn/mGJ9mM9bHMR6ZwWT6X8=", + "owner": "Chaitanyabsprip", + "repo": "fastaction.nvim", + "rev": "886e22d85e13115808e81ca367d5aaba02d9a25b", + "type": "github" + }, + "original": { + "owner": "Chaitanyabsprip", + "repo": "fastaction.nvim", + "type": "github" + } + }, + "plugin-fidget-nvim": { + "flake": false, + "locked": { + "lastModified": 1734334336, + "narHash": "sha256-o0za2NxFtzHZa7PRIm9U/P1/fwJrxS1G79ukdGLhJ4Q=", + "owner": "j-hui", + "repo": "fidget.nvim", + "rev": "9238947645ce17d96f30842e61ba81147185b657", + "type": "github" + }, + "original": { + "owner": "j-hui", + "repo": "fidget.nvim", + "type": "github" + } + }, + "plugin-flutter-tools": { + "flake": false, + "locked": { + "lastModified": 1735420417, + "narHash": "sha256-xfSdPhrSUwBYdE9ZA8GgwFvR70nOp+snbNrFHeIfwOM=", + "owner": "akinsho", + "repo": "flutter-tools.nvim", + "rev": "a526c30f1941a7472509aaedda13758f943c968e", + "type": "github" + }, + "original": { + "owner": "akinsho", + "repo": "flutter-tools.nvim", + "type": "github" + } + }, + "plugin-friendly-snippets": { + "flake": false, + "locked": { + "lastModified": 1733106470, + "narHash": "sha256-I8SRZxnoNC6SOWW+scoA77Jwyxcb4eUczppLdyOiZe0=", + "owner": "rafamadriz", + "repo": "friendly-snippets", + "rev": "efff286dd74c22f731cdec26a70b46e5b203c619", + "type": "github" + }, + "original": { + "owner": "rafamadriz", + "repo": "friendly-snippets", + "type": "github" + } + }, + "plugin-gesture-nvim": { + "flake": false, + "locked": { + "lastModified": 1731669851, + "narHash": "sha256-LTkttlDmKO9ngzrJrMWeeG9R0Bz/PoroCAF2URhUEbM=", + "owner": "notomo", + "repo": "gesture.nvim", + "rev": "dbd839bda337cb73911aeef06897eb29cb99f76f", + "type": "github" + }, + "original": { + "owner": "notomo", + "repo": "gesture.nvim", + "type": "github" + } + }, + "plugin-gitsigns-nvim": { + "flake": false, + "locked": { + "lastModified": 1732361574, + "narHash": "sha256-H7A+AxioiedSuC+jqRwP4c7DjZR/0j4o/fTUasT2urc=", + "owner": "lewis6991", + "repo": "gitsigns.nvim", + "rev": "5f808b5e4fef30bd8aca1b803b4e555da07fc412", + "type": "github" + }, + "original": { + "owner": "lewis6991", + "repo": "gitsigns.nvim", + "type": "github" + } + }, + "plugin-glow-nvim": { + "flake": false, + "locked": { + "lastModified": 1703345545, + "narHash": "sha256-GsNcASzVvY0066kak2nvUY5luzanoBclqcUOsODww8g=", + "owner": "ellisonleao", + "repo": "glow.nvim", + "rev": "238070a686c1da3bccccf1079700eb4b5e19aea4", + "type": "github" + }, + "original": { + "owner": "ellisonleao", + "repo": "glow.nvim", + "type": "github" + } + }, + "plugin-gruvbox": { + "flake": false, + "locked": { + "lastModified": 1732485864, + "narHash": "sha256-qasIg1nvAlUWUUzSZLF36jnoNm8PmQa3owgh0tKGgHk=", + "owner": "ellisonleao", + "repo": "gruvbox.nvim", + "rev": "68c3460a5d1d1a362318960035c9f3466d5011f5", + "type": "github" + }, + "original": { + "owner": "ellisonleao", + "repo": "gruvbox.nvim", + "type": "github" + } + }, + "plugin-haskell-tools-nvim": { + "flake": false, + "locked": { + "lastModified": 1734222260, + "narHash": "sha256-gZVN9ADPO5wFOaf19FydCneb7aKTT9K1vcLoBURPEjk=", + "owner": "mrcjkb", + "repo": "haskell-tools.nvim", + "rev": "943b77b68a79d3991523ba4d373063c9355c6f55", + "type": "github" + }, + "original": { + "owner": "mrcjkb", + "repo": "haskell-tools.nvim", + "type": "github" + } + }, + "plugin-highlight-undo": { + "flake": false, + "locked": { + "lastModified": 1732378966, + "narHash": "sha256-b0JrMu3vbbYgyHPs9hyayMzUypFwugEAxvZOcuRMc/o=", + "owner": "tzachar", + "repo": "highlight-undo.nvim", + "rev": "5f588b420179a31d7073854bfd07ed9d5f364645", + "type": "github" + }, + "original": { + "owner": "tzachar", + "repo": "highlight-undo.nvim", + "type": "github" + } + }, + "plugin-hop-nvim": { + "flake": false, + "locked": { + "lastModified": 1694283445, + "narHash": "sha256-SnuFeD/lrMxKtpBRPgIwdG0kVF7BWe02PiV7URVDASI=", + "owner": "phaazon", + "repo": "hop.nvim", + "rev": "1a1eceafe54b5081eae4cb91c723abd1d450f34b", + "type": "github" + }, + "original": { + "owner": "phaazon", + "repo": "hop.nvim", + "type": "github" + } + }, + "plugin-icon-picker-nvim": { + "flake": false, + "locked": { + "lastModified": 1704321319, + "narHash": "sha256-VZKsVeSmPR3AA8267Mtd5sSTZl2CAqnbgqceCptgp4w=", + "owner": "ziontee113", + "repo": "icon-picker.nvim", + "rev": "3ee9a0ea9feeef08ae35e40c8be6a2fa2c20f2d3", + "type": "github" + }, + "original": { + "owner": "ziontee113", + "repo": "icon-picker.nvim", + "type": "github" + } + }, + "plugin-image-nvim": { + "flake": false, + "locked": { + "lastModified": 1735173549, + "narHash": "sha256-Sjbmf4BmjkjAorT3tojbC7JivJagFamAVgzwcCipa8k=", + "owner": "3rd", + "repo": "image.nvim", + "rev": "b991fc7f845bc6ab40c6ec00b39750dcd5190010", + "type": "github" + }, + "original": { + "owner": "3rd", + "repo": "image.nvim", + "type": "github" + } + }, + "plugin-indent-blankline": { + "flake": false, + "locked": { + "lastModified": 1733296464, + "narHash": "sha256-H3lUQZDvgj3a2STYeMUDiOYPe7rfsy08tJ4SlDd+LuE=", + "owner": "lukas-reineke", + "repo": "indent-blankline.nvim", + "rev": "259357fa4097e232730341fa60988087d189193a", + "type": "github" + }, + "original": { + "owner": "lukas-reineke", + "repo": "indent-blankline.nvim", + "type": "github" + } + }, + "plugin-leap-nvim": { + "flake": false, + "locked": { + "lastModified": 1722337962, + "narHash": "sha256-PFD/UliAHKk2ga+7p/GmoZGqZFWenIVLkzmO+FkhvrY=", + "owner": "ggandor", + "repo": "leap.nvim", + "rev": "c6bfb191f1161fbabace1f36f578a20ac6c7642c", + "type": "github" + }, + "original": { + "owner": "ggandor", + "repo": "leap.nvim", + "type": "github" + } + }, + "plugin-lsp-lines": { + "flake": false, + "locked": { + "lastModified": 1734793049, + "narHash": "sha256-jHiIZemneQACTDYZXBJqX2/PRTBoxq403ILvt1Ej1ZM=", + "owner": "~whynothugo", + "repo": "lsp_lines.nvim", + "rev": "a92c755f182b89ea91bd8a6a2227208026f27b4d", + "type": "sourcehut" + }, + "original": { + "owner": "~whynothugo", + "repo": "lsp_lines.nvim", + "type": "sourcehut" + } + }, + "plugin-lsp-signature": { + "flake": false, + "locked": { + "lastModified": 1726445971, + "narHash": "sha256-W6bN3R10B84noK7MOzvUOIc82WwyojIS97iFL/dO5yk=", + "owner": "ray-x", + "repo": "lsp_signature.nvim", + "rev": "fc38521ea4d9ec8dbd4c2819ba8126cea743943b", + "type": "github" + }, + "original": { + "owner": "ray-x", + "repo": "lsp_signature.nvim", + "type": "github" + } + }, + "plugin-lspkind": { + "flake": false, + "locked": { + "lastModified": 1733408701, + "narHash": "sha256-OCvKUBGuzwy8OWOL1x3Z3fo+0+GyBMI9TX41xSveqvE=", + "owner": "onsails", + "repo": "lspkind-nvim", + "rev": "d79a1c3299ad0ef94e255d045bed9fa26025dab6", + "type": "github" + }, + "original": { + "owner": "onsails", + "repo": "lspkind-nvim", + "type": "github" + } + }, + "plugin-lspsaga": { + "flake": false, + "locked": { + "lastModified": 1670360222, + "narHash": "sha256-7ENInq3LAPPTdm0Fb7klOc630j8m4LRj1kLZZFYLh68=", + "owner": "tami5", + "repo": "lspsaga.nvim", + "rev": "5faeec9f2508d2d49a66c0ac0d191096b4e3fa81", + "type": "github" + }, + "original": { + "owner": "tami5", + "repo": "lspsaga.nvim", + "type": "github" + } + }, + "plugin-lua-utils-nvim": { + "flake": false, + "locked": { + "lastModified": 1708177208, + "narHash": "sha256-9ildzQEMkXKZ3LHq+khGFgRQFxlIXQclQ7QU3fcU1C4=", + "owner": "nvim-neorg", + "repo": "lua-utils.nvim", + "rev": "e565749421f4bbb5d2e85e37c3cef9d56553d8bd", + "type": "github" + }, + "original": { + "owner": "nvim-neorg", + "repo": "lua-utils.nvim", + "type": "github" + } + }, + "plugin-lualine": { + "flake": false, + "locked": { + "lastModified": 1731050126, + "narHash": "sha256-IN6Qz3jGxUcylYiRTyd8j6me3pAoqJsJXtFUvph/6EI=", + "owner": "hoob3rt", + "repo": "lualine.nvim", + "rev": "2a5bae925481f999263d6f5ed8361baef8df4f83", + "type": "github" + }, + "original": { + "owner": "hoob3rt", + "repo": "lualine.nvim", + "type": "github" + } + }, + "plugin-luasnip": { + "flake": false, + "locked": { + "lastModified": 1733162004, + "narHash": "sha256-efDe3RXncnNVkj37AmIv8oj0DKurB50Dziao5FGTLP4=", + "owner": "L3MON4D3", + "repo": "LuaSnip", + "rev": "33b06d72d220aa56a7ce80a0dd6f06c70cd82b9d", + "type": "github" + }, + "original": { + "owner": "L3MON4D3", + "repo": "LuaSnip", + "type": "github" + } + }, + "plugin-lz-n": { + "flake": false, + "locked": { + "lastModified": 1735437369, + "narHash": "sha256-6NIXqwmX7RgwiZVEzmTnkJgmrPqFNx12ayIcRgNIaEs=", + "owner": "nvim-neorocks", + "repo": "lz.n", + "rev": "32be28a221b9c98e56841458e4b20c150a4169c4", + "type": "github" + }, + "original": { + "owner": "nvim-neorocks", + "repo": "lz.n", + "type": "github" + } + }, + "plugin-lzn-auto-require": { + "flake": false, + "locked": { + "lastModified": 1731009187, + "narHash": "sha256-KC1z+zC9vKODllZVpBu+udzM12oYJaS8e6LdXWtQ89U=", + "owner": "horriblename", + "repo": "lzn-auto-require", + "rev": "a075ed51976323fd7fc44ccfca89fe0449a08cca", + "type": "github" + }, + "original": { + "owner": "horriblename", + "ref": "require-rewrite", + "repo": "lzn-auto-require", + "type": "github" + } + }, + "plugin-mind-nvim": { + "flake": false, + "locked": { + "lastModified": 1679526071, + "narHash": "sha256-JIhAhQYGLLRucwlhzfckQYU5qjqbHtNH52JlGS5a79w=", + "owner": "phaazon", + "repo": "mind.nvim", + "rev": "002137dd7cf97865ebd01b6a260209d2daf2da66", + "type": "github" + }, + "original": { + "owner": "phaazon", + "repo": "mind.nvim", + "type": "github" + } + }, + "plugin-minimap-vim": { + "flake": false, + "locked": { + "lastModified": 1710689313, + "narHash": "sha256-GR8VAHla5HWry1TAZQv0Xp7iG256vIGeQcBGMxyt310=", + "owner": "wfxr", + "repo": "minimap.vim", + "rev": "395378137e6180762d5b963ca9ad5ac2db5d3283", + "type": "github" + }, + "original": { + "owner": "wfxr", + "repo": "minimap.vim", + "type": "github" + } + }, + "plugin-modes-nvim": { + "flake": false, + "locked": { + "lastModified": 1734414076, + "narHash": "sha256-ShIK8ROowT1yFHgSIVHUFnnQOEMr3YPIqw4ixzR8w8M=", + "owner": "mvllow", + "repo": "modes.nvim", + "rev": "c7a4b1b383606832aab150902719bd5eb5cdb2b0", + "type": "github" + }, + "original": { + "owner": "mvllow", + "repo": "modes.nvim", + "type": "github" + } + }, + "plugin-neo-tree-nvim": { + "flake": false, + "locked": { + "lastModified": 1735302061, + "narHash": "sha256-tZMneZsEbB5bgZgYq4ZWwK25B3vcnn80Q7diKcRoEv4=", + "owner": "nvim-neo-tree", + "repo": "neo-tree.nvim", + "rev": "a9f8943b4c31f8460d25c71e0f463d65e9775f1c", + "type": "github" + }, + "original": { + "owner": "nvim-neo-tree", + "repo": "neo-tree.nvim", + "type": "github" + } + }, + "plugin-neocord": { + "flake": false, + "locked": { + "lastModified": 1733429637, + "narHash": "sha256-g/pq6hFo7duonIl1wWoxbJUTh/IRTH3hHEoQUdoiqKE=", + "owner": "IogaMaster", + "repo": "neocord", + "rev": "4d55d8dab2d5f2f272192add7a2c21982039c699", + "type": "github" + }, + "original": { + "owner": "IogaMaster", + "repo": "neocord", + "type": "github" + } + }, + "plugin-neodev-nvim": { + "flake": false, + "locked": { + "lastModified": 1720260306, + "narHash": "sha256-hOjzlo/IqmV8tYjGwfmcCPEmHYsWnEIwtHZdhpwA1kM=", + "owner": "folke", + "repo": "neodev.nvim", + "rev": "46aa467dca16cf3dfe27098042402066d2ae242d", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "neodev.nvim", + "type": "github" + } + }, + "plugin-neorg": { + "flake": false, + "locked": { + "lastModified": 1734188232, + "narHash": "sha256-xH87caxEebrWLwY/v3xyyOy6PTG/ZqX2OfCdwg/RqDY=", + "owner": "nvim-neorg", + "repo": "neorg", + "rev": "6b945909d84b5aeadc875f9b3f529ec44b9bc60f", + "type": "github" + }, + "original": { + "owner": "nvim-neorg", + "repo": "neorg", + "type": "github" + } + }, + "plugin-neorg-telescope": { + "flake": false, + "locked": { + "lastModified": 1722358034, + "narHash": "sha256-ei4uUqpIQjGKzu5ryu0Hlmis9TS9FJsYnjt4J4QdWlw=", + "owner": "nvim-neorg", + "repo": "neorg-telescope", + "rev": "ddb2556644cae922699a239bbb0fe16e25b084b7", + "type": "github" + }, + "original": { + "owner": "nvim-neorg", + "repo": "neorg-telescope", + "type": "github" + } + }, + "plugin-new-file-template-nvim": { + "flake": false, + "locked": { + "lastModified": 1721518222, + "narHash": "sha256-g0IjJrHRXw7U9goVLzVYUyHBSsDZGHMpi3YZPhg64zA=", + "owner": "otavioschwanck", + "repo": "new-file-template.nvim", + "rev": "6ac66669dbf2dc5cdee184a4fe76d22465ca67e8", + "type": "github" + }, + "original": { + "owner": "otavioschwanck", + "repo": "new-file-template.nvim", + "type": "github" + } + }, + "plugin-noice-nvim": { + "flake": false, + "locked": { + "lastModified": 1734026622, + "narHash": "sha256-OpwgNTGunmy6Y7D/k0T+DFK/WJ8MeVTGWwjiPTQlvEY=", + "owner": "folke", + "repo": "noice.nvim", + "rev": "eaed6cc9c06aa2013b5255349e4f26a6b17ab70f", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "noice.nvim", + "type": "github" + } + }, + "plugin-none-ls": { + "flake": false, + "locked": { + "lastModified": 1708525772, + "narHash": "sha256-VCDUKiy9C3Bu9suf2bI6XSis1+j01oFC3GFPyQxi74c=", + "owner": "nvimtools", + "repo": "none-ls.nvim", + "rev": "bb680d752cec37949faca7a1f509e2fe67ab418a", + "type": "github" + }, + "original": { + "owner": "nvimtools", + "repo": "none-ls.nvim", + "rev": "bb680d752cec37949faca7a1f509e2fe67ab418a", + "type": "github" + } + }, + "plugin-nui-nvim": { + "flake": false, + "locked": { + "lastModified": 1733856815, + "narHash": "sha256-6U7E/i5FuNXQy+sF4C5DVxuTPqNKD5wxUgFohpOjm9Q=", + "owner": "MunifTanjim", + "repo": "nui.nvim", + "rev": "53e907ffe5eedebdca1cd503b00aa8692068ca46", + "type": "github" + }, + "original": { + "owner": "MunifTanjim", + "repo": "nui.nvim", + "type": "github" + } + }, + "plugin-nvim-autopairs": { + "flake": false, + "locked": { + "lastModified": 1731803843, + "narHash": "sha256-LbaxiU3ienVBcMKrug3Coppc4R+MD2rjREw7rHQim1w=", + "owner": "windwp", + "repo": "nvim-autopairs", + "rev": "b464658e9b880f463b9f7e6ccddd93fb0013f559", + "type": "github" + }, + "original": { + "owner": "windwp", + "repo": "nvim-autopairs", + "type": "github" + } + }, + "plugin-nvim-bufferline-lua": { + "flake": false, + "locked": { + "lastModified": 1732824069, + "narHash": "sha256-zqz2GMius0gLxtgxt12RmLUVQFVaWe+MQaGCfUGr6bI=", + "owner": "akinsho", + "repo": "nvim-bufferline.lua", + "rev": "261a72b90d6db4ed8014f7bda976bcdc9dd7ce76", + "type": "github" + }, + "original": { + "owner": "akinsho", + "repo": "nvim-bufferline.lua", + "type": "github" + } + }, + "plugin-nvim-cmp": { + "flake": false, + "locked": { + "lastModified": 1734672427, + "narHash": "sha256-Z/Qy2ErbCa7dbjZVuJUkMmb4d24amNunNgRcbCGPfOg=", + "owner": "hrsh7th", + "repo": "nvim-cmp", + "rev": "b555203ce4bd7ff6192e759af3362f9d217e8c89", + "type": "github" + }, + "original": { + "owner": "hrsh7th", + "repo": "nvim-cmp", + "type": "github" + } + }, + "plugin-nvim-colorizer-lua": { + "flake": false, + "locked": { + "lastModified": 1735384185, + "narHash": "sha256-quqs3666vQc/4ticc/Z5BHzGxV6UUVE9jVGT07MEMQQ=", + "owner": "NvChad", + "repo": "nvim-colorizer.lua", + "rev": "8a65c448122fc8fac9c67b2e857b6e830a4afd0b", + "type": "github" + }, + "original": { + "owner": "NvChad", + "repo": "nvim-colorizer.lua", + "type": "github" + } + }, + "plugin-nvim-cursorline": { + "flake": false, + "locked": { + "lastModified": 1650034925, + "narHash": "sha256-Uhw65p1KBjs8KsVOmTzuiu3XKclxBob8AVdWEt30C/8=", + "owner": "yamatsum", + "repo": "nvim-cursorline", + "rev": "804f0023692653b2b2368462d67d2a87056947f9", + "type": "github" + }, + "original": { + "owner": "yamatsum", + "repo": "nvim-cursorline", + "type": "github" + } + }, + "plugin-nvim-dap": { + "flake": false, + "locked": { + "lastModified": 1735568902, + "narHash": "sha256-5iaXim9bDvSAI6jUXgu2OEk/KivfAsMTRry+UTHs2Gk=", + "owner": "mfussenegger", + "repo": "nvim-dap", + "rev": "ffb077e65259f13be096ea6d603e3575a76b214a", + "type": "github" + }, + "original": { + "owner": "mfussenegger", + "repo": "nvim-dap", + "type": "github" + } + }, + "plugin-nvim-dap-go": { + "flake": false, + "locked": { + "lastModified": 1727922873, + "narHash": "sha256-wcGp5df1ER5T5oLVitWE02OywgJs3V4pazcGU5qVaUY=", + "owner": "leoluz", + "repo": "nvim-dap-go", + "rev": "6aa88167ea1224bcef578e8c7160fe8afbb44848", + "type": "github" + }, + "original": { + "owner": "leoluz", + "repo": "nvim-dap-go", + "type": "github" + } + }, + "plugin-nvim-dap-ui": { + "flake": false, + "locked": { + "lastModified": 1735324898, + "narHash": "sha256-psIBQpx3tV2UWm5hZTMPBANcXHPAX24dIuDq8Qcscxs=", + "owner": "rcarriga", + "repo": "nvim-dap-ui", + "rev": "e94d98649dccb6a3884b66aabc2e07beb279e535", + "type": "github" + }, + "original": { + "owner": "rcarriga", + "repo": "nvim-dap-ui", + "type": "github" + } + }, + "plugin-nvim-docs-view": { + "flake": false, + "locked": { + "lastModified": 1733658747, + "narHash": "sha256-b5aH8Tj+tMk0BjNCgdeCEeR26oQ9NCobj98P7IDgIPY=", + "owner": "amrbashir", + "repo": "nvim-docs-view", + "rev": "1b97f8f954d74c46061bf289b6cea9232484c12c", + "type": "github" + }, + "original": { + "owner": "amrbashir", + "repo": "nvim-docs-view", + "type": "github" + } + }, + "plugin-nvim-lightbulb": { + "flake": false, + "locked": { + "lastModified": 1734997673, + "narHash": "sha256-byvgRJvvt5rhiUVWdreY2jELXoPVld5EKQlOXwjNgWE=", + "owner": "kosayoda", + "repo": "nvim-lightbulb", + "rev": "3ac0791be37ba9cc7939f1ad90ebc5e75abf4eea", + "type": "github" + }, + "original": { + "owner": "kosayoda", + "repo": "nvim-lightbulb", + "type": "github" + } + }, + "plugin-nvim-lspconfig": { + "flake": false, + "locked": { + "lastModified": 1735439232, + "narHash": "sha256-6a1HjpLYdZ+ZmWM1B0tv631A3EHHstPrjaV15UnVtoY=", + "owner": "neovim", + "repo": "nvim-lspconfig", + "rev": "8b15a1a597a59f4f5306fad9adfe99454feab743", + "type": "github" + }, + "original": { + "owner": "neovim", + "repo": "nvim-lspconfig", + "type": "github" + } + }, + "plugin-nvim-metals": { + "flake": false, + "locked": { + "lastModified": 1735386491, + "narHash": "sha256-G9V7fX65uW4z7kiuiP8mLtEjLoTJ1mkltj51OlN5/oM=", + "owner": "scalameta", + "repo": "nvim-metals", + "rev": "e6b02c99161b43c67cfe1d6e5f9a9b9a0bb4701c", + "type": "github" + }, + "original": { + "owner": "scalameta", + "repo": "nvim-metals", + "type": "github" + } + }, + "plugin-nvim-navbuddy": { + "flake": false, + "locked": { + "lastModified": 1716111817, + "narHash": "sha256-sZ1M27qNbLMHKR4Zu0NfJoBcQxJbhmW7Cx74Acirlww=", + "owner": "SmiteshP", + "repo": "nvim-navbuddy", + "rev": "f22bac988f2dd073601d75ba39ea5636ab6e38cb", + "type": "github" + }, + "original": { + "owner": "SmiteshP", + "repo": "nvim-navbuddy", + "type": "github" + } + }, + "plugin-nvim-navic": { + "flake": false, + "locked": { + "lastModified": 1701345631, + "narHash": "sha256-0p5n/V8Jlj9XyxV/fuMwsbQ7oV5m9H2GqZZEA/njxCQ=", + "owner": "SmiteshP", + "repo": "nvim-navic", + "rev": "8649f694d3e76ee10c19255dece6411c29206a54", + "type": "github" + }, + "original": { + "owner": "SmiteshP", + "repo": "nvim-navic", + "type": "github" + } + }, + "plugin-nvim-neoclip": { + "flake": false, + "locked": { + "lastModified": 1734898459, + "narHash": "sha256-RCMZi1DM9JFrXWQ5w2wOjFzpANkiukn+RvHB9swMtbk=", + "owner": "AckslD", + "repo": "nvim-neoclip.lua", + "rev": "5e5e010251281f4aea69cfc1d4976ffe6065cf0f", + "type": "github" + }, + "original": { + "owner": "AckslD", + "repo": "nvim-neoclip.lua", + "type": "github" + } + }, + "plugin-nvim-nio": { + "flake": false, + "locked": { + "lastModified": 1720707425, + "narHash": "sha256-i6imNTb1xrfBlaeOyxyIwAZ/+o6ew9C4/z34a7/BgFg=", + "owner": "nvim-neotest", + "repo": "nvim-nio", + "rev": "a428f309119086dc78dd4b19306d2d67be884eee", + "type": "github" + }, + "original": { + "owner": "nvim-neotest", + "repo": "nvim-nio", + "type": "github" + } + }, + "plugin-nvim-notify": { + "flake": false, + "locked": { + "lastModified": 1735562588, + "narHash": "sha256-9jDpoLLto9WgTsV399WeE2XGrTJXWTYbcJ+zOFWldAA=", + "owner": "rcarriga", + "repo": "nvim-notify", + "rev": "c3797193536711b5d8983975791c4b11dc35ab3a", + "type": "github" + }, + "original": { + "owner": "rcarriga", + "repo": "nvim-notify", + "type": "github" + } + }, + "plugin-nvim-scrollbar": { + "flake": false, + "locked": { + "lastModified": 1729162132, + "narHash": "sha256-/nB7eP2Rz/A9zMXrNEH4FReo6eZS0C/SEGvKhxV7AUA=", + "owner": "petertriho", + "repo": "nvim-scrollbar", + "rev": "6994eb9f73d5fdc36ee2c8717940e8c853e51a49", + "type": "github" + }, + "original": { + "owner": "petertriho", + "repo": "nvim-scrollbar", + "type": "github" + } + }, + "plugin-nvim-session-manager": { + "flake": false, + "locked": { + "lastModified": 1728423652, + "narHash": "sha256-W9jtfVXHC8MQJwdbxakNqhd+xh/auQb3U09XKdN2Wzw=", + "owner": "Shatur", + "repo": "neovim-session-manager", + "rev": "ce43f2eb2a52492157d7742e5f684b9a42bb3e5c", + "type": "github" + }, + "original": { + "owner": "Shatur", + "repo": "neovim-session-manager", + "type": "github" + } + }, + "plugin-nvim-surround": { + "flake": false, + "locked": { + "lastModified": 1732818349, + "narHash": "sha256-sC+V86FEDfIapY4Qy0Ch2dTUpqe+C/xEUR/iSIEY6LA=", + "owner": "kylechui", + "repo": "nvim-surround", + "rev": "9f0cb495f25bff32c936062d85046fbda0c43517", + "type": "github" + }, + "original": { + "owner": "kylechui", + "repo": "nvim-surround", + "type": "github" + } + }, + "plugin-nvim-tree-lua": { + "flake": false, + "locked": { + "lastModified": 1734820548, + "narHash": "sha256-4PmP31vYPH9xw4AjV5rDSKvcvZGTnIaPfR4Bwc0lAiA=", + "owner": "nvim-tree", + "repo": "nvim-tree.lua", + "rev": "68fc4c20f5803444277022c681785c5edd11916d", + "type": "github" + }, + "original": { + "owner": "nvim-tree", + "repo": "nvim-tree.lua", + "type": "github" + } + }, + "plugin-nvim-treesitter-context": { + "flake": false, + "locked": { + "lastModified": 1734710732, + "narHash": "sha256-TIFMPKzD2ero1eK9aVfY1iKEvf/Sw8SL/9mk9omCQ3c=", + "owner": "nvim-treesitter", + "repo": "nvim-treesitter-context", + "rev": "2bcf700b59bc92850ca83a1c02e86ba832e0fae0", + "type": "github" + }, + "original": { + "owner": "nvim-treesitter", + "repo": "nvim-treesitter-context", + "type": "github" + } + }, + "plugin-nvim-ts-autotag": { + "flake": false, + "locked": { + "lastModified": 1733164313, + "narHash": "sha256-v2NTFBIzKTYizUPWB3uhpnTGVZWaelhE3MT5+BDA6Do=", + "owner": "windwp", + "repo": "nvim-ts-autotag", + "rev": "1cca23c9da708047922d3895a71032bc0449c52d", + "type": "github" + }, + "original": { + "owner": "windwp", + "repo": "nvim-ts-autotag", + "type": "github" + } + }, + "plugin-nvim-web-devicons": { + "flake": false, + "locked": { + "lastModified": 1735569123, + "narHash": "sha256-h9rY6F+2sBlG9PFN34/0ZTkY66oCeCIPe/HEadM03K4=", + "owner": "nvim-tree", + "repo": "nvim-web-devicons", + "rev": "4adeeaa7a32d46cf3b5833341358c797304f950a", + "type": "github" + }, + "original": { + "owner": "nvim-tree", + "repo": "nvim-web-devicons", + "type": "github" + } + }, + "plugin-obsidian-nvim": { + "flake": false, + "locked": { + "lastModified": 1722536347, + "narHash": "sha256-mbq7fAPmlwOAbWlN3lGX9WGBKTV8cAPZx8pnRCyszJc=", + "owner": "epwalsh", + "repo": "obsidian.nvim", + "rev": "14e0427bef6c55da0d63f9a313fd9941be3a2479", + "type": "github" + }, + "original": { + "owner": "epwalsh", + "repo": "obsidian.nvim", + "type": "github" + } + }, + "plugin-omnisharp-extended": { + "flake": false, + "locked": { + "lastModified": 1732802864, + "narHash": "sha256-lA22ncMWHz2oVcZMPQGpLL3UjjXOXGxhtXR1LX5cX3A=", + "owner": "Hoffs", + "repo": "omnisharp-extended-lsp.nvim", + "rev": "4916fa12e5b28d21a1f031f0bdd10aa15a75d85d", + "type": "github" + }, + "original": { + "owner": "Hoffs", + "repo": "omnisharp-extended-lsp.nvim", + "type": "github" + } + }, + "plugin-onedark": { + "flake": false, + "locked": { + "lastModified": 1731171496, + "narHash": "sha256-NLHq9SUUo81m50NPQe8852uZbo4Mo4No10N3ptX43t0=", + "owner": "navarasu", + "repo": "onedark.nvim", + "rev": "67a74c275d1116d575ab25485d1bfa6b2a9c38a6", + "type": "github" + }, + "original": { + "owner": "navarasu", + "repo": "onedark.nvim", + "type": "github" + } + }, + "plugin-orgmode-nvim": { + "flake": false, + "locked": { + "lastModified": 1734770880, + "narHash": "sha256-E1YJeTay1tX2PgiXwV/DRgrlYHIGUe9/uTA+6ORIhBw=", + "owner": "nvim-orgmode", + "repo": "orgmode", + "rev": "bf657742f7cb56211f99946ff64f5f87d7d7f0d0", + "type": "github" + }, + "original": { + "owner": "nvim-orgmode", + "repo": "orgmode", + "type": "github" + } + }, + "plugin-otter-nvim": { + "flake": false, + "locked": { + "lastModified": 1735130975, + "narHash": "sha256-NPBGcLi1lEmpGGbGs58Xzw1IriOyKTMQdwIdVFsbVDM=", + "owner": "jmbuhr", + "repo": "otter.nvim", + "rev": "e8c662e1aefa8b483cfba6e00729a39a363dcecc", + "type": "github" + }, + "original": { + "owner": "jmbuhr", + "repo": "otter.nvim", + "type": "github" + } + }, + "plugin-oxocarbon": { + "flake": false, + "locked": { + "lastModified": 1724853107, + "narHash": "sha256-Hi/nATEvZ4a6Yxc66KtuJqss6kQV19cmtIlhCw6alOI=", + "owner": "nyoom-engineering", + "repo": "oxocarbon.nvim", + "rev": "004777819ba294423b638a35a75c9f0c7be758ed", + "type": "github" + }, + "original": { + "owner": "nyoom-engineering", + "repo": "oxocarbon.nvim", + "type": "github" + } + }, + "plugin-pathlib-nvim": { + "flake": false, + "locked": { + "lastModified": 1724943804, + "narHash": "sha256-YhCJeNKlcjgg3q51UWFhuIEPzNueC8YTpeuPPJDndvw=", + "owner": "pysan3", + "repo": "pathlib.nvim", + "rev": "57e5598af6fe253761c1b48e0b59b7cd6699e2c1", + "type": "github" + }, + "original": { + "owner": "pysan3", + "repo": "pathlib.nvim", + "type": "github" + } + }, + "plugin-plenary-nvim": { + "flake": false, + "locked": { + "lastModified": 1726602776, + "narHash": "sha256-bmmPekAvuBvLQmrnnX0n+FRBqfVxBsObhxIEkDGAla4=", + "owner": "nvim-lua", + "repo": "plenary.nvim", + "rev": "2d9b06177a975543726ce5c73fca176cedbffe9d", + "type": "github" + }, + "original": { + "owner": "nvim-lua", + "repo": "plenary.nvim", + "type": "github" + } + }, + "plugin-precognition-nvim": { + "flake": false, + "locked": { + "lastModified": 1732647805, + "narHash": "sha256-m3dKoKxCd/QODM+EL89c3RVOoZnuA4nrBG0KhPZ/o9Y=", + "owner": "tris203", + "repo": "precognition.nvim", + "rev": "531971e6d883e99b1572bf47294e22988d8fbec0", + "type": "github" + }, + "original": { + "owner": "tris203", + "repo": "precognition.nvim", + "type": "github" + } + }, + "plugin-project-nvim": { + "flake": false, + "locked": { + "lastModified": 1680567592, + "narHash": "sha256-avV3wMiDbraxW4mqlEsKy0oeewaRj9Q33K8NzWoaptU=", + "owner": "ahmedkhalf", + "repo": "project.nvim", + "rev": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb", + "type": "github" + }, + "original": { + "owner": "ahmedkhalf", + "repo": "project.nvim", + "type": "github" + } + }, + "plugin-registers": { + "flake": false, + "locked": { + "lastModified": 1730794647, + "narHash": "sha256-M7uR3yXYUQ4I8Gt8P6k25q67UNwksRDPKGrS/FCqrt0=", + "owner": "tversteeg", + "repo": "registers.nvim", + "rev": "c217f8f369e0886776cda6c94eab839b30a8940d", + "type": "github" + }, + "original": { + "owner": "tversteeg", + "repo": "registers.nvim", + "type": "github" + } + }, + "plugin-render-markdown-nvim": { + "flake": false, + "locked": { + "lastModified": 1735525479, + "narHash": "sha256-ncFqBv0JITX3pTsLON+HctLUaKXhLRMBUrRWmI8KOSA=", + "owner": "MeanderingProgrammer", + "repo": "render-markdown.nvim", + "rev": "6fbd1491abc104409f119685de5353c35c97c005", + "type": "github" + }, + "original": { + "owner": "MeanderingProgrammer", + "repo": "render-markdown.nvim", + "type": "github" + } + }, + "plugin-rose-pine": { + "flake": false, + "locked": { + "lastModified": 1733845819, + "narHash": "sha256-ejh9UXQbLc8Ie6wF7zszzL1gaJzr16gcu0dUWqTo8AM=", + "owner": "rose-pine", + "repo": "neovim", + "rev": "91548dca53b36dbb9d36c10f114385f759731be1", + "type": "github" + }, + "original": { + "owner": "rose-pine", + "repo": "neovim", + "type": "github" + } + }, + "plugin-rtp-nvim": { + "flake": false, + "locked": { + "lastModified": 1724409589, + "narHash": "sha256-lmJbiD7I7MTEEpukESs67uAmLyn+p66hrUKLbEHp0Kw=", + "owner": "nvim-neorocks", + "repo": "rtp.nvim", + "rev": "494ddfc888bb466555d90ace731856de1320fe45", + "type": "github" + }, + "original": { + "owner": "nvim-neorocks", + "repo": "rtp.nvim", + "type": "github" + } + }, + "plugin-run-nvim": { + "flake": false, + "locked": { + "lastModified": 1735501787, + "narHash": "sha256-CFOyOARCLQiMOhFPeqz8n2ULyaaRxRZrOk0FCibjuIM=", + "owner": "diniamo", + "repo": "run.nvim", + "rev": "9015c9cece816ccf10a185b420f6e345fd990802", + "type": "github" + }, + "original": { + "owner": "diniamo", + "repo": "run.nvim", + "type": "github" + } + }, + "plugin-rustaceanvim": { + "flake": false, + "locked": { + "lastModified": 1735431742, + "narHash": "sha256-ucZXGbxHtbSKf5n11lL3vb6rD2BxJacIDOgcx32PLzA=", + "owner": "mrcjkb", + "repo": "rustaceanvim", + "rev": "51c097ebfb65d83baa71f48000b1e5c0a8dcc4fb", + "type": "github" + }, + "original": { + "owner": "mrcjkb", + "repo": "rustaceanvim", + "type": "github" + } + }, + "plugin-smartcolumn": { + "flake": false, + "locked": { + "lastModified": 1734696989, + "narHash": "sha256-6RodA5BQnL6tB3RCE5G2RiXqBvM3VP3HYZ+T3AxIF7Q=", + "owner": "m4xshen", + "repo": "smartcolumn.nvim", + "rev": "f14fbea6f86cd29df5042897ca9e3ba10ba4d27f", + "type": "github" + }, + "original": { + "owner": "m4xshen", + "repo": "smartcolumn.nvim", + "type": "github" + } + }, + "plugin-sqls-nvim": { + "flake": false, + "locked": { + "lastModified": 1733090837, + "narHash": "sha256-o5uD6shPkweuE+k/goBX42W3I2oojXVijfJC7L50sGU=", + "owner": "nanotee", + "repo": "sqls.nvim", + "rev": "a514379f5f89bf72955ed3bf5c1c31a40b8a1472", + "type": "github" + }, + "original": { + "owner": "nanotee", + "repo": "sqls.nvim", + "type": "github" + } + }, + "plugin-tabular": { + "flake": false, + "locked": { + "lastModified": 1720022617, + "narHash": "sha256-qmDpdg3Tl3W4JSovRb4ODlrKMjRL5CaVI05YBn0Q0LI=", + "owner": "godlygeek", + "repo": "tabular", + "rev": "12437cd1b53488e24936ec4b091c9324cafee311", + "type": "github" + }, + "original": { + "owner": "godlygeek", + "repo": "tabular", + "type": "github" + } + }, + "plugin-telescope": { + "flake": false, + "locked": { + "lastModified": 1732884846, + "narHash": "sha256-npb61MZYAotz71Co5G1dUeIqWt7GVeqZNz0A2Yz2dy4=", + "owner": "nvim-telescope", + "repo": "telescope.nvim", + "rev": "2eca9ba22002184ac05eddbe47a7fe2d5a384dfc", + "type": "github" + }, + "original": { + "owner": "nvim-telescope", + "repo": "telescope.nvim", + "type": "github" + } + }, + "plugin-tiny-devicons-auto-colors": { + "flake": false, + "locked": { + "lastModified": 1733445616, + "narHash": "sha256-klUZKvdYhwO3sq4Su4sBFDcNSAYXh53O72vg4+ZOrhI=", + "owner": "rachartier", + "repo": "tiny-devicons-auto-colors.nvim", + "rev": "c8f63933ee013c1e0a26091d58131e060546f01f", + "type": "github" + }, + "original": { + "owner": "rachartier", + "repo": "tiny-devicons-auto-colors.nvim", + "type": "github" + } + }, + "plugin-todo-comments": { + "flake": false, + "locked": { + "lastModified": 1726481242, + "narHash": "sha256-EH4Sy7qNkzOgA1INFzrtsRfD79TgMqSbKUdundyw22w=", + "owner": "folke", + "repo": "todo-comments.nvim", + "rev": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "todo-comments.nvim", + "type": "github" + } + }, + "plugin-toggleterm-nvim": { + "flake": false, + "locked": { + "lastModified": 1735340326, + "narHash": "sha256-oeNIb+QHa/9yGZz/2u9LYIdKluel0bcQkaIqOuQUkis=", + "owner": "akinsho", + "repo": "toggleterm.nvim", + "rev": "344fc1810292785b3d962ddac2de57669e1a7ff9", + "type": "github" + }, + "original": { + "owner": "akinsho", + "repo": "toggleterm.nvim", + "type": "github" + } + }, + "plugin-tokyonight": { + "flake": false, + "locked": { + "lastModified": 1734211493, + "narHash": "sha256-TJ/a6N6Cc1T0wdMxMopma1NtwL7rMYbZ6F0zFI1zaIA=", + "owner": "folke", + "repo": "tokyonight.nvim", + "rev": "45d22cf0e1b93476d3b6d362d720412b3d34465c", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "tokyonight.nvim", + "type": "github" + } + }, + "plugin-trouble": { + "flake": false, + "locked": { + "lastModified": 1732701472, + "narHash": "sha256-JhnERZfma2JHFEn/DElVmrSU5KxM2asx3SJ+86lCfoo=", + "owner": "folke", + "repo": "trouble.nvim", + "rev": "46cf952fc115f4c2b98d4e208ed1e2dce08c9bf6", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "trouble.nvim", + "type": "github" + } + }, + "plugin-ts-error-translator": { + "flake": false, + "locked": { + "lastModified": 1731721659, + "narHash": "sha256-fi68jJVNTL2WlTehcl5Q8tijAeu2usjIsWXjcuixkCM=", + "owner": "dmmulroy", + "repo": "ts-error-translator.nvim", + "rev": "47e5ba89f71b9e6c72eaaaaa519dd59bd6897df4", + "type": "github" + }, + "original": { + "owner": "dmmulroy", + "repo": "ts-error-translator.nvim", + "type": "github" + } + }, + "plugin-typst-preview-nvim": { + "flake": false, + "locked": { + "lastModified": 1734839452, + "narHash": "sha256-d6Tv7xZRghYYDfABk/p2e9qTm4qnWHM+ejKDCcR0TfY=", + "owner": "chomosuke", + "repo": "typst-preview.nvim", + "rev": "c1100e8788baabe8ca8f8cd7fd63d3d479e49e36", + "type": "github" + }, + "original": { + "owner": "chomosuke", + "repo": "typst-preview.nvim", + "type": "github" + } + }, + "plugin-vim-dirtytalk": { + "flake": false, + "locked": { + "lastModified": 1713047519, + "narHash": "sha256-azU5jkv/fD/qDDyCU1bPNXOH6rmbDauG9jDNrtIXc0Y=", + "owner": "psliwka", + "repo": "vim-dirtytalk", + "rev": "aa57ba902b04341a04ff97214360f56856493583", + "type": "github" + }, + "original": { + "owner": "psliwka", + "repo": "vim-dirtytalk", + "type": "github" + } + }, + "plugin-vim-fugitive": { + "flake": false, + "locked": { + "lastModified": 1735457366, + "narHash": "sha256-45zsqKavWoclA67MC54bAel1nE8CLHtSdullHByiRS8=", + "owner": "tpope", + "repo": "vim-fugitive", + "rev": "174230d6a7f2df94705a7ffd8d5413e27ec10a80", + "type": "github" + }, + "original": { + "owner": "tpope", + "repo": "vim-fugitive", + "type": "github" + } + }, + "plugin-vim-illuminate": { + "flake": false, + "locked": { + "lastModified": 1715960194, + "narHash": "sha256-DdJzTHxoOv+vjFymETa2MgXpM/qDwvZjpoo1W8OOBj0=", + "owner": "RRethy", + "repo": "vim-illuminate", + "rev": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa", + "type": "github" + }, + "original": { + "owner": "RRethy", + "repo": "vim-illuminate", + "type": "github" + } + }, + "plugin-vim-markdown": { + "flake": false, + "locked": { + "lastModified": 1726813437, + "narHash": "sha256-ZCCSjZ5Xok4rnIwfa4VUEaz6d3oW9066l0EkoqiTppM=", + "owner": "preservim", + "repo": "vim-markdown", + "rev": "8f6cb3a6ca4e3b6bcda0730145a0b700f3481b51", + "type": "github" + }, + "original": { + "owner": "preservim", + "repo": "vim-markdown", + "type": "github" + } + }, + "plugin-vim-repeat": { + "flake": false, + "locked": { + "lastModified": 1720473942, + "narHash": "sha256-G/dmkq1KtSHIl+I5p3LfO6mGPS3eyLRbEEsuLbTpGlk=", + "owner": "tpope", + "repo": "vim-repeat", + "rev": "65846025c15494983dafe5e3b46c8f88ab2e9635", + "type": "github" + }, + "original": { + "owner": "tpope", + "repo": "vim-repeat", + "type": "github" + } + }, + "plugin-vim-startify": { + "flake": false, + "locked": { + "lastModified": 1695213983, + "narHash": "sha256-W5N/Dqxf9hSXEEJsrEkXInFwBXNBJe9Dzx9TVS12mPk=", + "owner": "mhinz", + "repo": "vim-startify", + "rev": "4e089dffdad46f3f5593f34362d530e8fe823dcf", + "type": "github" + }, + "original": { + "owner": "mhinz", + "repo": "vim-startify", + "type": "github" + } + }, + "plugin-which-key": { + "flake": false, + "locked": { + "lastModified": 1734253151, + "narHash": "sha256-f/+sYMDEguB5ZDiYiQAsDvdF/2cVcWnLBU+9qwigk4s=", + "owner": "folke", + "repo": "which-key.nvim", + "rev": "8ab96b38a2530eacba5be717f52e04601eb59326", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "which-key.nvim", + "type": "github" + } + }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -998,6 +3210,26 @@ "type": "github" } }, + "rnix-lsp": { + "inputs": { + "naersk": "naersk", + "nixpkgs": "nixpkgs_5", + "utils": "utils" + }, + "locked": { + "lastModified": 1669555118, + "narHash": "sha256-F0s0m62S5bHNVWNHLZD6SeHiLrsDx98VQbRjDyIu+qQ=", + "owner": "nix-community", + "repo": "rnix-lsp", + "rev": "95d40673fe43642e2e1144341e86d0036abd95d9", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "rnix-lsp", + "type": "github" + } + }, "root": { "inputs": { "colmena": "colmena", @@ -1017,6 +3249,7 @@ "nixpkgs": "nixpkgs_3", "nixpkgs-unstable": "nixpkgs-unstable", "nur": "nur", + "nvf": "nvf", "sops-nix": "sops-nix", "stylix": "stylix", "treefmt-nix": "treefmt-nix_2" @@ -1068,6 +3301,28 @@ "type": "github" } }, + "rust-overlay_3": { + "inputs": { + "nixpkgs": [ + "nvf", + "nil", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1731983527, + "narHash": "sha256-JECaBgC0pQ91Hq3W4unH6K9to8s2Zl2sPNu7bLOv4ek=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "71287228d96e9568e1e70c6bbfa3f992d145947b", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ @@ -1114,11 +3369,11 @@ "base16-tmux": "base16-tmux", "base16-vim": "base16-vim", "flake-compat": "flake-compat_7", - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils_5", "gnome-shell": "gnome-shell", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_5", - "systems": "systems_4" + "nixpkgs": "nixpkgs_6", + "systems": "systems_6" }, "locked": { "lastModified": 1726497442, @@ -1194,6 +3449,36 @@ "type": "github" } }, + "systems_5": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_6": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "treefmt": { "inputs": { "nixpkgs": [ @@ -1238,7 +3523,7 @@ }, "treefmt-nix_2": { "inputs": { - "nixpkgs": "nixpkgs_6" + "nixpkgs": "nixpkgs_7" }, "locked": { "lastModified": 1734982074, @@ -1253,6 +3538,21 @@ "repo": "treefmt-nix", "type": "github" } + }, + "utils": { + "locked": { + "lastModified": 1656928814, + "narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 8533eaa..b1fbb53 100644 --- a/flake.nix +++ b/flake.nix @@ -12,6 +12,11 @@ nixos-hardware.url = "github:NixOS/nixos-hardware/master"; colmena.url = "github:zhaofengli/colmena"; + nvf = { + url = "github:notashelf/nvf"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + git-hooks = { url = "github:cachix/git-hooks.nix"; inputs.nixpkgs.follows = "nixpkgs-unstable"; diff --git a/home-manager/default.nix b/home-manager/default.nix index 7635cad..c8b4032 100644 --- a/home-manager/default.nix +++ b/home-manager/default.nix @@ -5,7 +5,6 @@ ... }: { imports = [ - ./neovim ./firefox ./tidal.nix ./gnome @@ -13,6 +12,7 @@ ./vscode.nix inputs.nix-index-database.hmModules.nix-index inputs.sops-nix.homeManagerModules.sops + inputs.nvf.homeManagerModules.default ]; xsession.enable = true; diff --git a/home-manager/neovim/bufferline.lua b/home-manager/neovim/bufferline.lua deleted file mode 100644 index ff9b448..0000000 --- a/home-manager/neovim/bufferline.lua +++ /dev/null @@ -1,13 +0,0 @@ -require("bufferline").setup({ - options = { - diagnostics = "nvim_lsp", - diagnostics_indicator = function(count, level, diagnostics_dict, context) - local icon = level:match("error") and " " or " " - return " " .. icon .. count - end, - separator_style = "slant", - hover = { enabled = true, reveal = { "close" } }, - }, -}) - -vim.keymap.set("n", "ft", ":BufferLinePick", {}) diff --git a/home-manager/neovim/cmp.lua b/home-manager/neovim/cmp.lua deleted file mode 100644 index 62b772b..0000000 --- a/home-manager/neovim/cmp.lua +++ /dev/null @@ -1,43 +0,0 @@ -local cmp = require("cmp") -local luasnip = require("luasnip") - -require("luasnip.loaders.from_vscode").lazy_load() -luasnip.config.setup({}) - -cmp.setup({ - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.select_next_item(), - [""] = cmp.mapping.select_prev_item(), - [""] = cmp.mapping.scroll_docs(-4), - [""] = cmp.mapping.scroll_docs(4), - [""] = cmp.mapping.complete({}), - [""] = cmp.mapping.confirm({ - behavior = cmp.ConfirmBehavior.Replace, - select = true, - }), - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expand_or_locally_jumpable() then - luasnip.expand_or_jump() - else - fallback() - end - end, { "i", "s" }), - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_prev_item() - elseif luasnip.locally_jumpable(-1) then - luasnip.jump(-1) - else - fallback() - end - end, { "i", "s" }), - }), - sources = { { name = "nvim_lsp" }, { name = "luasnip" } }, -}) diff --git a/home-manager/neovim/commentary.lua b/home-manager/neovim/commentary.lua deleted file mode 100644 index ef07ed1..0000000 --- a/home-manager/neovim/commentary.lua +++ /dev/null @@ -1,2 +0,0 @@ -vim.cmd([[autocmd FileType nix setlocal commentstring=#%s]]) -vim.cmd([[autocmd FileType terraform setlocal commentstring=#%s]]) diff --git a/home-manager/neovim/core.lua b/home-manager/neovim/core.lua deleted file mode 100644 index 93c0dc2..0000000 --- a/home-manager/neovim/core.lua +++ /dev/null @@ -1,9 +0,0 @@ -vim.o.background = "dark" -vim.cmd([[colorscheme gruvbox]]) -vim.g.mapleader = ";" -vim.o.signcolumn = "yes" -vim.wo.number = true -vim.wo.relativenumber = true -vim.wo.cursorline = true -vim.opt.termguicolors = true -vim.o.mousemoveevent = true diff --git a/home-manager/neovim/default.nix b/home-manager/neovim/default.nix deleted file mode 100644 index c1aa5a8..0000000 --- a/home-manager/neovim/default.nix +++ /dev/null @@ -1,95 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: let - cfg = config.pim.neovim; -in { - options.pim.neovim.enable = lib.mkEnableOption "neovim"; - - config = lib.mkIf cfg.enable { - # Disable Stylix styling of Neovim, - # because we have a plugin for that. - stylix.targets.neovim.enable = false; - - programs.neovim = { - enable = true; - viAlias = true; - vimAlias = true; - vimdiffAlias = true; - defaultEditor = true; - extraLuaConfig = builtins.readFile ./core.lua; - - extraPackages = with pkgs; [ - nil - pyright - gopls - terraform-ls - nixfmt-classic - stylua - black - nixpkgs-fmt - ]; - - plugins = with pkgs.vimPlugins; [ - { - plugin = nvim-lspconfig; - type = "lua"; - config = builtins.readFile ./lspconfig.lua; - } - gruvbox-nvim - { - plugin = leap-nvim; - type = "lua"; - config = builtins.readFile ./leap.lua; - } - { - plugin = telescope-nvim; - type = "lua"; - config = builtins.readFile ./telescope.lua; - } - { - plugin = vim-commentary; - type = "lua"; - config = builtins.readFile ./commentary.lua; - } - vim-sleuth - { - plugin = gitsigns-nvim; - type = "lua"; - config = ''require("gitsigns").setup()''; - } - { - plugin = nvim-cmp; - type = "lua"; - config = builtins.readFile ./cmp.lua; - } - cmp-nvim-lsp - friendly-snippets - neodev-nvim - luasnip - cmp_luasnip - { - plugin = nvim-treesitter.withAllGrammars; - type = "lua"; - config = builtins.readFile ./treesitter.lua; - } - { - plugin = bufferline-nvim; - type = "lua"; - config = builtins.readFile ./bufferline.lua; - } - nvim-web-devicons - lsp-format-nvim - { - plugin = pkgs.vimPlugins.none-ls-nvim; - type = "lua"; - config = builtins.readFile ./none-ls.lua; - } - ]; - }; - - programs.git.extraConfig.core.editor = "nvim"; - }; -} diff --git a/home-manager/neovim/leap.lua b/home-manager/neovim/leap.lua deleted file mode 100644 index 2b15d73..0000000 --- a/home-manager/neovim/leap.lua +++ /dev/null @@ -1,4 +0,0 @@ -require("leap").add_default_mappings() --- Don't remap 'x' in visual mode. -vim.keymap.del({ "x", "o" }, "x") -vim.keymap.del({ "x", "o" }, "X") diff --git a/home-manager/neovim/lspconfig.lua b/home-manager/neovim/lspconfig.lua deleted file mode 100644 index 523ec86..0000000 --- a/home-manager/neovim/lspconfig.lua +++ /dev/null @@ -1,65 +0,0 @@ -require("lsp-format").setup({}) - -local on_attach = function(client, bufnr) - local bufmap = function(keys, func) - vim.keymap.set("n", keys, func, { buffer = bufnr }) - end - - bufmap("r", vim.lsp.buf.rename) - bufmap("a", vim.lsp.buf.code_action) - - bufmap("gd", vim.lsp.buf.definition) - bufmap("gD", vim.lsp.buf.declaration) - bufmap("gI", vim.lsp.buf.implementation) - bufmap("D", vim.lsp.buf.type_definition) - - bufmap("gr", require("telescope.builtin").lsp_references) - bufmap("s", require("telescope.builtin").lsp_document_symbols) - bufmap("S", require("telescope.builtin").lsp_dynamic_workspace_symbols) - - bufmap("K", vim.lsp.buf.hover) - - vim.api.nvim_buf_create_user_command(bufnr, "Format", function(_) - vim.lsp.buf.format() - end, {}) -end - -local capabilities = vim.lsp.protocol.make_client_capabilities() -capabilities = require("cmp_nvim_lsp").default_capabilities(capabilities) - -require("neodev").setup() -require("lspconfig").nil_ls.setup({ - on_attach = on_attach, - capabilities = capabilities, -}) -require("lspconfig").pyright.setup({ - on_attach = on_attach, - capabilities = capabilities, -}) -require("lspconfig").gopls.setup({ - on_attach = on_attach, - capabilities = capabilities, -}) -require("lspconfig").terraformls.setup({ - on_attach = on_attach, - capabilities = capabilities, -}) - -local function has_treefmt() - local git_root = vim.fn.systemlist("git rev-parse --show-toplevel")[1] - if vim.v.shell_error ~= 0 then - return false - end - local treefmt_path = git_root .. "/treefmt.nix" - return vim.fn.filereadable(treefmt_path) == 1 -end - -vim.api.nvim_create_autocmd("BufWritePost", { - pattern = "*", - callback = function() - if vim.fn.expand("%:p") ~= vim.fn.getcwd() .. "/.git/COMMIT_EDITMSG" and has_treefmt() then - vim.cmd("silent !treefmt > /dev/null 2>&1") - end - end, - group = vim.api.nvim_create_augroup("TreefmtAutoformat", { clear = true }), -}) diff --git a/home-manager/neovim/none-ls.lua b/home-manager/neovim/none-ls.lua deleted file mode 100644 index afc9805..0000000 --- a/home-manager/neovim/none-ls.lua +++ /dev/null @@ -1,53 +0,0 @@ --- renamed to none-ls -local null_ls_status_ok, null_ls = pcall(require, "null-ls") -if not null_ls_status_ok then - return -end - -local formatting = null_ls.builtins.formatting -local diagnostics = null_ls.builtins.diagnostics -local code_actions = null_ls.builtins.code_actions - --- to setup format on save -local augroup = vim.api.nvim_create_augroup("LspFormatting", {}) - -require("null-ls").setup({ - sources = { - formatting.stylua, - formatting.black, - formatting.nixpkgs_fmt, - formatting.mix, - }, - - -- configure format on save - -- on_attach = function(current_client, bufnr) - -- if current_client.supports_method("textDocument/formatting") then - -- vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) - -- vim.api.nvim_create_autocmd("BufWritePre", { - -- group = augroup, - -- buffer = bufnr, - -- callback = function() - -- vim.lsp.buf.format({ - -- filter = function(client) - -- -- only use null-ls for formatting instead of lsp server - -- return client.name == "null-ls" - -- end, - -- bufnr = bufnr, - -- }) - -- end, - -- }) - -- end - -- end, -}) - --- formatting command -vim.api.nvim_create_user_command("Format", function() - vim.lsp.buf.format(nil, 10000) -end, {}) - -vim.keymap.set( - "n", - "fm", - ":Format", - { desc = "Format current buffer (also done on save)", noremap = true, silent = true } -) diff --git a/home-manager/neovim/telescope.lua b/home-manager/neovim/telescope.lua deleted file mode 100644 index 0dff4b5..0000000 --- a/home-manager/neovim/telescope.lua +++ /dev/null @@ -1,17 +0,0 @@ -local builtin = require("telescope.builtin") - -vim.keymap.set("n", "ff", builtin.find_files, {}) -vim.keymap.set("n", "fg", builtin.live_grep, {}) -vim.keymap.set("n", "fb", builtin.buffers, {}) -vim.keymap.set("n", "fr", builtin.lsp_references, {}) -vim.keymap.set("n", "fs", builtin.lsp_document_symbols, {}) - -require("telescope").setup({ - pickers = { - find_files = { theme = "dropdown" }, - live_grep = { theme = "dropdown" }, - buffers = { theme = "dropdown" }, - lsp_references = { theme = "dropdown" }, - lsp_document_symbols = { theme = "dropdown" }, - }, -}) diff --git a/home-manager/neovim/treesitter.lua b/home-manager/neovim/treesitter.lua deleted file mode 100644 index 1a873cf..0000000 --- a/home-manager/neovim/treesitter.lua +++ /dev/null @@ -1,9 +0,0 @@ -require("nvim-treesitter.configs").setup({ - ensure_installed = {}, - - auto_install = false, - - highlight = { enable = true }, - - indent = { enable = true }, -}) diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index 44f9404..f152e22 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -11,17 +11,131 @@ gnome.enable = true; vscode.enable = true; syncthing.enable = true; - neovim.enable = true; firefox.enable = true; }; - programs.chromium.enable = true; + programs = { + chromium.enable = true; + git.extraConfig.core.editor = lib.getExe config.programs.nvf.finalPackage; + + nvf = { + enable = true; + settings = { + vim = { + viAlias = true; + vimAlias = true; + telescope.enable = true; + autopairs.nvim-autopairs.enable = true; + autocomplete.nvim-cmp.enable = true; + snippets.luasnip.enable = true; + filetree.neo-tree.enable = true; + tabline.nvimBufferline.enable = true; + treesitter.context.enable = true; + minimap.codewindow.enable = false; + dashboard.alpha.enable = true; + notify.nvim-notify.enable = true; + projects.project-nvim.enable = true; + comments.comment-nvim.enable = true; + + lsp = { + formatOnSave = true; + lightbulb.enable = true; + trouble.enable = true; + lspSignature.enable = true; + otter-nvim.enable = true; + lsplines.enable = true; + }; + + languages = { + enableLSP = true; + enableFormat = true; + enableTreesitter = true; + enableExtraDiagnostics = true; + nix.enable = true; + markdown.enable = true; + bash.enable = true; + clang.enable = true; + css.enable = true; + html.enable = true; + sql.enable = true; + go.enable = true; + python.enable = true; + + rust = { + enable = true; + crates.enable = true; + }; + }; + + visuals = { + nvim-scrollbar.enable = true; + nvim-web-devicons.enable = true; + nvim-cursorline.enable = true; + cinnamon-nvim.enable = true; + fidget-nvim.enable = true; + highlight-undo.enable = true; + indent-blankline.enable = true; + cellular-automaton.enable = true; + }; + + statusline.lualine = { + enable = true; + theme = "gruvbox"; + }; + + theme = { + enable = true; + name = "gruvbox"; + style = "dark"; + transparent = false; + }; + + binds = { + whichKey.enable = true; + cheatsheet.enable = true; + }; + + git = { + enable = true; + gitsigns.enable = true; + }; + + utility = { + surround.enable = true; + diffview-nvim.enable = true; + + motion = { + hop.enable = true; + leap.enable = true; + }; + }; + + terminal.toggleterm = { + enable = true; + lazygit.enable = true; + }; + + ui = { + borders.enable = true; + noice.enable = true; + colorizer.enable = true; + illuminate.enable = true; + smartcolumn.enable = true; + fastaction.enable = true; + }; + }; + }; + }; + }; home = { username = "pim"; homeDirectory = "/home/pim"; stateVersion = "23.05"; - sessionVariables.MANPAGER = "${lib.getExe config.programs.neovim.finalPackage} +Man!"; + sessionVariables = { + MANPAGER = "${lib.getExe config.programs.nvf.finalPackage} +Man!"; + EDITOR = lib.getExe config.programs.nvf.finalPackage; + }; }; sops = { From 218134a3ec2768fab8d598390353b34352a8fba8 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Wed, 15 Jan 2025 14:25:14 +0100 Subject: [PATCH 08/60] Disable illuminate Neovim plugin --- machines/sue/pim.home.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index f152e22..1f1547f 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -119,7 +119,6 @@ borders.enable = true; noice.enable = true; colorizer.enable = true; - illuminate.enable = true; smartcolumn.enable = true; fastaction.enable = true; }; From 477973fdff510ceec67c90ce12ba2f8e1c9f61c8 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Thu, 16 Jan 2025 09:04:33 +0100 Subject: [PATCH 09/60] Update flake inputs --- flake.lock | 257 +++++++++++++++++++---------------------------------- 1 file changed, 89 insertions(+), 168 deletions(-) diff --git a/flake.lock b/flake.lock index 7f9a6fd..d399b8b 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1734701201, - "narHash": "sha256-hk0roBX10j/hospoWIJIJj3i2skd7Oml6yKQBx7mTFk=", + "lastModified": 1736711425, + "narHash": "sha256-8hKhPQuMtXfJi+4lPvw3FBk/zSJVHeb726Zo0uF1PP8=", "owner": "nix-community", "repo": "disko", - "rev": "2ee76c861af3b895b3b104bae04777b61397485b", + "rev": "f720e64ec37fa16ebba6354eadf310f81555cc07", "type": "github" }, "original": { @@ -494,15 +494,14 @@ "gitignore": "gitignore", "nixpkgs": [ "nixpkgs-unstable" - ], - "nixpkgs-stable": "nixpkgs-stable" + ] }, "locked": { - "lastModified": 1734797603, - "narHash": "sha256-ulZN7ps8nBV31SE+dwkDvKIzvN6hroRY8sYOT0w+E28=", + "lastModified": 1735882644, + "narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "f0f0dc4920a903c3e08f5bdb9246bb572fcae498", + "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656", "type": "github" }, "original": { @@ -599,11 +598,11 @@ ] }, "locked": { - "lastModified": 1734366194, - "narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=", + "lastModified": 1736373539, + "narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=", "owner": "nix-community", "repo": "home-manager", - "rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f", + "rev": "bd65bc3cde04c16755955630b344bc9e35272c56", "type": "github" }, "original": { @@ -699,28 +698,6 @@ "type": "github" } }, - "naersk": { - "inputs": { - "nixpkgs": [ - "nvf", - "rnix-lsp", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1655042882, - "narHash": "sha256-9BX8Fuez5YJlN7cdPO63InoyBy7dm3VlJkkmTt6fS1A=", - "owner": "nix-community", - "repo": "naersk", - "rev": "cddffb5aa211f50c4b8750adbec0bbbdfb26bb9f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "naersk", - "type": "github" - } - }, "nil": { "inputs": { "flake-utils": [ @@ -731,7 +708,7 @@ "nvf", "nixpkgs" ], - "rust-overlay": "rust-overlay_3" + "rust-overlay": "rust-overlay_2" }, "locked": { "lastModified": 1732053863, @@ -775,11 +752,11 @@ ] }, "locked": { - "lastModified": 1734838217, - "narHash": "sha256-zvMLS8BGn+kMG7tLLT3PJ67/S9yqZ9B7V8hKBa9cRRY=", + "lastModified": 1736652904, + "narHash": "sha256-8uolHABgroXqzs03QdulHp8H9e5kWQZnnhcda1MKbBM=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "d583b2d142f0428313df099f4a2dcf2a0496aa78", + "rev": "271e5bd7c57e1f001693799518b10a02d1123b12", "type": "github" }, "original": { @@ -854,15 +831,14 @@ "nixpkgs": "nixpkgs_2", "nixpkgs-stable": [ "nixpkgs-unstable" - ], - "rust-overlay": "rust-overlay_2" + ] }, "locked": { - "lastModified": 1735004289, - "narHash": "sha256-cJmBhr59xQXwkvF+EZPhKTebgHyqXoei8u2Qq2QJYzE=", + "lastModified": 1736944949, + "narHash": "sha256-rZJtjYBZe5vmanJ/yh5GoZgdISm+EU4iUhG6WD1SwBs=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "b9bfb93c7632a0e007a3a05fe77c0475d05e045a", + "rev": "0dc33f0eb391a1a942a358a01b47f763703d7097", "type": "github" }, "original": { @@ -873,11 +849,11 @@ }, "nixos-facter-modules": { "locked": { - "lastModified": 1734596637, - "narHash": "sha256-MRqwVAe3gsb88u4ME1UidmZFVCx+FEnoob0zkpO9DMY=", + "lastModified": 1736931726, + "narHash": "sha256-aY55yiifyo1XPPpbpH0kWlV1g2dNGBlx6622b7OK8ks=", "owner": "numtide", "repo": "nixos-facter-modules", - "rev": "536472754982bf03079b4b4e0261838a760587c0", + "rev": "fa11d87b61b2163efbb9aed7b7a5ae0299e5ab9c", "type": "github" }, "original": { @@ -888,11 +864,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1734954597, - "narHash": "sha256-QIhd8/0x30gEv8XEE1iAnrdMlKuQ0EzthfDR7Hwl+fk=", + "lastModified": 1736441705, + "narHash": "sha256-OL7leZ6KBhcDF3nEKe4aZVfIm6xQpb1Kb+mxySIP93o=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "def1d472c832d77885f174089b0d34854b007198", + "rev": "8870dcaff63dfc6647fb10648b827e9d40b0a337", "type": "github" }, "original": { @@ -931,22 +907,6 @@ } }, "nixpkgs-stable": { - "locked": { - "lastModified": 1730741070, - "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-stable_2": { "locked": { "lastModified": 1678872516, "narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=", @@ -964,11 +924,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1734988233, - "narHash": "sha256-Ucfnxq1rF/GjNP3kTL+uTfgdoE9a3fxDftSfeLIS8mA=", + "lastModified": 1736848588, + "narHash": "sha256-9B6fQqphF3j9lpcxQnKyIUgp3NyGi7ikb9CjCYqixcY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "de1864217bfa9b5845f465e771e0ecb48b30e02d", + "rev": "357cd3dfdb8993af11268d755d53357720675e66", "type": "github" }, "original": { @@ -980,11 +940,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1734649271, - "narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=", + "lastModified": 1736798957, + "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507", + "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", "type": "github" }, "original": { @@ -996,11 +956,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1734875076, - "narHash": "sha256-Pzyb+YNG5u3zP79zoi8HXYMs15Q5dfjDgwCdUI5B0nY=", + "lastModified": 1736867362, + "narHash": "sha256-i/UJ5I7HoqmFMwZEH6vAvBxOrjjOJNU739lnZnhUln8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "1807c2b91223227ad5599d7067a61665c52d1295", + "rev": "9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc", "type": "github" }, "original": { @@ -1012,11 +972,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1734649271, - "narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=", + "lastModified": 1736798957, + "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507", + "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", "type": "github" }, "original": { @@ -1027,22 +987,6 @@ } }, "nixpkgs_5": { - "locked": { - "lastModified": 1656753965, - "narHash": "sha256-BCrB3l0qpJokOnIVc3g2lHiGhnjUi0MoXiw6t1o8H1E=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "0ea7a8f1b939d74e5df8af9a8f7342097cdf69eb", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_6": { "locked": { "lastModified": 1725194671, "narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=", @@ -1058,13 +1002,13 @@ "type": "github" } }, - "nixpkgs_7": { + "nixpkgs_6": { "locked": { - "lastModified": 1733097829, - "narHash": "sha256-9hbb1rqGelllb4kVUCZ307G2k3/UhmA8PPGBoyuWaSw=", + "lastModified": 1735554305, + "narHash": "sha256-zExSA1i/b+1NMRhGGLtNfFGXgLtgo+dcuzHzaWA6w3Q=", "owner": "nixos", "repo": "nixpkgs", - "rev": "2c15aa59df0017ca140d9ba302412298ab4bf22a", + "rev": "0e82ab234249d8eee3e8c91437802b32c74bb3fd", "type": "github" }, "original": { @@ -1097,11 +1041,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1735023107, - "narHash": "sha256-2SGa/zt8L3VnYIOXZ22tyKtyqfrHKp8VvwvBBhipBlY=", + "lastModified": 1736936822, + "narHash": "sha256-Hj0wyNlxSDxXx6IchzTteHltWj3YOJ35t9SBP1LXb9g=", "owner": "nix-community", "repo": "NUR", - "rev": "93d9e3ea11110b392a313a7568b830570314fe3c", + "rev": "a0194337bf20730deab4a7e893010cb98abac745", "type": "github" }, "original": { @@ -1205,6 +1149,7 @@ "plugin-nvim-tree-lua": "plugin-nvim-tree-lua", "plugin-nvim-treesitter-context": "plugin-nvim-treesitter-context", "plugin-nvim-ts-autotag": "plugin-nvim-ts-autotag", + "plugin-nvim-ufo": "plugin-nvim-ufo", "plugin-nvim-web-devicons": "plugin-nvim-web-devicons", "plugin-obsidian-nvim": "plugin-obsidian-nvim", "plugin-omnisharp-extended": "plugin-omnisharp-extended", @@ -1216,6 +1161,7 @@ "plugin-plenary-nvim": "plugin-plenary-nvim", "plugin-precognition-nvim": "plugin-precognition-nvim", "plugin-project-nvim": "plugin-project-nvim", + "plugin-promise-async": "plugin-promise-async", "plugin-registers": "plugin-registers", "plugin-render-markdown-nvim": "plugin-render-markdown-nvim", "plugin-rose-pine": "plugin-rose-pine", @@ -1240,15 +1186,14 @@ "plugin-vim-repeat": "plugin-vim-repeat", "plugin-vim-startify": "plugin-vim-startify", "plugin-which-key": "plugin-which-key", - "rnix-lsp": "rnix-lsp", "systems": "systems_5" }, "locked": { - "lastModified": 1736161221, - "narHash": "sha256-MKhkpmhiiF18GCTFyNyzN4Wz5nHd8muXM/O1pfCYvV8=", + "lastModified": 1736946667, + "narHash": "sha256-7z13M0L4DK9srgXnTXFFnfQsYioL2BrkfQieRI7A7wo=", "owner": "notashelf", "repo": "nvf", - "rev": "a1bac1d356d9f0610c0a2757b6abe9d9835b8063", + "rev": "45a6d9b890e97fe8183874aafb1f17b1335f8bdf", "type": "github" }, "original": { @@ -2619,6 +2564,22 @@ "type": "github" } }, + "plugin-nvim-ufo": { + "flake": false, + "locked": { + "lastModified": 1735147722, + "narHash": "sha256-etyfm4KpwjYN+kkotOMl0LgbQniILmqMqab4acMtTlw=", + "owner": "kevinhwang91", + "repo": "nvim-ufo", + "rev": "32cb247b893a384f1888b9cd737264159ecf183c", + "type": "github" + }, + "original": { + "owner": "kevinhwang91", + "repo": "nvim-ufo", + "type": "github" + } + }, "plugin-nvim-web-devicons": { "flake": false, "locked": { @@ -2795,6 +2756,22 @@ "type": "github" } }, + "plugin-promise-async": { + "flake": false, + "locked": { + "lastModified": 1722813441, + "narHash": "sha256-9eM66brPjiFlY64vmBetRYrKnpDyN7+/URMm4GsGimA=", + "owner": "kevinhwang91", + "repo": "promise-async", + "rev": "119e8961014c9bfaf1487bf3c2a393d254f337e2", + "type": "github" + }, + "original": { + "owner": "kevinhwang91", + "repo": "promise-async", + "type": "github" + } + }, "plugin-registers": { "flake": false, "locked": { @@ -3194,7 +3171,7 @@ "lanzaboote", "nixpkgs" ], - "nixpkgs-stable": "nixpkgs-stable_2" + "nixpkgs-stable": "nixpkgs-stable" }, "locked": { "lastModified": 1681413034, @@ -3210,26 +3187,6 @@ "type": "github" } }, - "rnix-lsp": { - "inputs": { - "naersk": "naersk", - "nixpkgs": "nixpkgs_5", - "utils": "utils" - }, - "locked": { - "lastModified": 1669555118, - "narHash": "sha256-F0s0m62S5bHNVWNHLZD6SeHiLrsDx98VQbRjDyIu+qQ=", - "owner": "nix-community", - "repo": "rnix-lsp", - "rev": "95d40673fe43642e2e1144341e86d0036abd95d9", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "rnix-lsp", - "type": "github" - } - }, "root": { "inputs": { "colmena": "colmena", @@ -3281,27 +3238,6 @@ } }, "rust-overlay_2": { - "inputs": { - "nixpkgs": [ - "nixos-cosmic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1734834660, - "narHash": "sha256-bm8V+Cu8rWJA+vKQnc94mXTpSDgvedyoDKxTVi/uJfw=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "b070e6030118680977bc2388868c4b3963872134", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_3": { "inputs": { "nixpkgs": [ "nvf", @@ -3330,11 +3266,11 @@ ] }, "locked": { - "lastModified": 1734546875, - "narHash": "sha256-6OvJbqQ6qPpNw3CA+W8Myo5aaLhIJY/nNFDk3zMXLfM=", + "lastModified": 1736808430, + "narHash": "sha256-wlgdf/n7bJMLBheqt1jmPoxJFrUP6FByKQFXuM9YvIk=", "owner": "Mic92", "repo": "sops-nix", - "rev": "ed091321f4dd88afc28b5b4456e0a15bd8374b4d", + "rev": "553c7cb22fed19fd60eb310423fdc93045c51ba8", "type": "github" }, "original": { @@ -3372,7 +3308,7 @@ "flake-utils": "flake-utils_5", "gnome-shell": "gnome-shell", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_6", + "nixpkgs": "nixpkgs_5", "systems": "systems_6" }, "locked": { @@ -3523,14 +3459,14 @@ }, "treefmt-nix_2": { "inputs": { - "nixpkgs": "nixpkgs_7" + "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1734982074, - "narHash": "sha256-N7M37KP7cHWoXicuE536GrVvU8nMDT/gpI1kja2hkdg=", + "lastModified": 1736154270, + "narHash": "sha256-p2r8xhQZ3TYIEKBoiEhllKWQqWNJNoT9v64Vmg4q8Zw=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "e41e948cf097cbf96ba4dff47a30ea6891af9f33", + "rev": "13c913f5deb3a5c08bb810efd89dc8cb24dd968b", "type": "github" }, "original": { @@ -3538,21 +3474,6 @@ "repo": "treefmt-nix", "type": "github" } - }, - "utils": { - "locked": { - "lastModified": 1656928814, - "narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } } }, "root": "root", From be52628cac115dee3a0960e4b43a319421b1a399 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 18 Jan 2025 16:35:15 +0100 Subject: [PATCH 10/60] Don't create junk files in neovim Uninstall neovim plugins: - tresitter context - scrollbar - cursorline --- machines/sue/pim.home.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index 1f1547f..9980f04 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -22,6 +22,7 @@ enable = true; settings = { vim = { + preventJunkFiles = true; viAlias = true; vimAlias = true; telescope.enable = true; @@ -30,8 +31,6 @@ snippets.luasnip.enable = true; filetree.neo-tree.enable = true; tabline.nvimBufferline.enable = true; - treesitter.context.enable = true; - minimap.codewindow.enable = false; dashboard.alpha.enable = true; notify.nvim-notify.enable = true; projects.project-nvim.enable = true; @@ -68,9 +67,7 @@ }; visuals = { - nvim-scrollbar.enable = true; nvim-web-devicons.enable = true; - nvim-cursorline.enable = true; cinnamon-nvim.enable = true; fidget-nvim.enable = true; highlight-undo.enable = true; From 05d65c969dae4dd8c09e9f441dcc568709a482f6 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 18 Jan 2025 17:17:48 +0100 Subject: [PATCH 11/60] Create separate package for neovim --- machines/sue/pim.home.nix | 118 +++----------------------------------- packages.nix | 110 ++++++++++++++++++++++++++++++++++- 2 files changed, 117 insertions(+), 111 deletions(-) diff --git a/machines/sue/pim.home.nix b/machines/sue/pim.home.nix index 9980f04..a836ce9 100644 --- a/machines/sue/pim.home.nix +++ b/machines/sue/pim.home.nix @@ -4,7 +4,9 @@ pkgs, config, ... -}: { +}: let + inherit (self.packages.${pkgs.system}) neovim; +in { config = { pim = { tidal.enable = true; @@ -16,112 +18,7 @@ programs = { chromium.enable = true; - git.extraConfig.core.editor = lib.getExe config.programs.nvf.finalPackage; - - nvf = { - enable = true; - settings = { - vim = { - preventJunkFiles = true; - viAlias = true; - vimAlias = true; - telescope.enable = true; - autopairs.nvim-autopairs.enable = true; - autocomplete.nvim-cmp.enable = true; - snippets.luasnip.enable = true; - filetree.neo-tree.enable = true; - tabline.nvimBufferline.enable = true; - dashboard.alpha.enable = true; - notify.nvim-notify.enable = true; - projects.project-nvim.enable = true; - comments.comment-nvim.enable = true; - - lsp = { - formatOnSave = true; - lightbulb.enable = true; - trouble.enable = true; - lspSignature.enable = true; - otter-nvim.enable = true; - lsplines.enable = true; - }; - - languages = { - enableLSP = true; - enableFormat = true; - enableTreesitter = true; - enableExtraDiagnostics = true; - nix.enable = true; - markdown.enable = true; - bash.enable = true; - clang.enable = true; - css.enable = true; - html.enable = true; - sql.enable = true; - go.enable = true; - python.enable = true; - - rust = { - enable = true; - crates.enable = true; - }; - }; - - visuals = { - nvim-web-devicons.enable = true; - cinnamon-nvim.enable = true; - fidget-nvim.enable = true; - highlight-undo.enable = true; - indent-blankline.enable = true; - cellular-automaton.enable = true; - }; - - statusline.lualine = { - enable = true; - theme = "gruvbox"; - }; - - theme = { - enable = true; - name = "gruvbox"; - style = "dark"; - transparent = false; - }; - - binds = { - whichKey.enable = true; - cheatsheet.enable = true; - }; - - git = { - enable = true; - gitsigns.enable = true; - }; - - utility = { - surround.enable = true; - diffview-nvim.enable = true; - - motion = { - hop.enable = true; - leap.enable = true; - }; - }; - - terminal.toggleterm = { - enable = true; - lazygit.enable = true; - }; - - ui = { - borders.enable = true; - noice.enable = true; - colorizer.enable = true; - smartcolumn.enable = true; - fastaction.enable = true; - }; - }; - }; - }; + git.extraConfig.core.editor = lib.getExe neovim; }; home = { @@ -129,8 +26,8 @@ homeDirectory = "/home/pim"; stateVersion = "23.05"; sessionVariables = { - MANPAGER = "${lib.getExe config.programs.nvf.finalPackage} +Man!"; - EDITOR = lib.getExe config.programs.nvf.finalPackage; + MANPAGER = "${lib.getExe neovim} +Man!"; + EDITOR = lib.getExe neovim; }; }; @@ -141,7 +38,8 @@ }; home.packages = - (with pkgs; [ + [self.packages.${pkgs.system}.neovim] + ++ (with pkgs; [ jellyfin-media-player virt-manager bottles-unwrapped diff --git a/packages.nix b/packages.nix index c5c5267..cb3fa6d 100644 --- a/packages.nix +++ b/packages.nix @@ -2,12 +2,120 @@ nixpkgs, flake-utils, treefmt-nix, + nvf, ... }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; treefmtEval = treefmt-nix.lib.evalModule pkgs ./treefmt.nix; treefmtWrapper = treefmtEval.config.build.wrapper; + neovimConfigured = nvf.lib.neovimConfiguration { + inherit pkgs; + modules = [ + { + config.vim = { + preventJunkFiles = true; + telescope.enable = true; + autopairs.nvim-autopairs.enable = true; + autocomplete.nvim-cmp.enable = true; + snippets.luasnip.enable = true; + filetree.neo-tree.enable = true; + tabline.nvimBufferline.enable = true; + dashboard.alpha.enable = true; + notify.nvim-notify.enable = true; + projects.project-nvim.enable = true; + comments.comment-nvim.enable = true; + + lsp = { + formatOnSave = true; + lightbulb.enable = true; + trouble.enable = true; + lspSignature.enable = true; + otter-nvim.enable = true; + lsplines.enable = true; + }; + + languages = { + enableLSP = true; + enableFormat = true; + enableTreesitter = true; + enableExtraDiagnostics = true; + nix.enable = true; + markdown.enable = true; + bash.enable = true; + clang.enable = true; + css.enable = true; + html.enable = true; + sql.enable = true; + go.enable = true; + python.enable = true; + + rust = { + enable = true; + crates.enable = true; + }; + }; + + visuals = { + nvim-web-devicons.enable = true; + cinnamon-nvim.enable = true; + fidget-nvim.enable = true; + highlight-undo.enable = true; + indent-blankline.enable = true; + cellular-automaton.enable = true; + }; + + statusline.lualine = { + enable = true; + theme = "gruvbox"; + }; + + theme = { + enable = true; + name = "gruvbox"; + style = "dark"; + transparent = false; + }; + + binds = { + whichKey.enable = true; + cheatsheet.enable = true; + }; + + git = { + enable = true; + gitsigns.enable = true; + }; + + utility = { + surround.enable = true; + diffview-nvim.enable = true; + + motion = { + hop.enable = true; + leap.enable = true; + }; + }; + + terminal.toggleterm = { + enable = true; + lazygit.enable = true; + }; + + ui = { + borders.enable = true; + noice.enable = true; + colorizer.enable = true; + smartcolumn.enable = true; + fastaction.enable = true; + }; + }; + } + ]; + }; in { - packages.formatter = treefmtWrapper; + packages = { + formatter = treefmtWrapper; + inherit (neovimConfigured) neovim; + }; }) From 9ed02dcc7d9cc8d2d43627d746cdf1679d0804e8 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Fri, 24 Jan 2025 10:58:09 +0100 Subject: [PATCH 12/60] Install unar on servers --- nixos/server.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixos/server.nix b/nixos/server.nix index 10beb4e..d13875b 100644 --- a/nixos/server.nix +++ b/nixos/server.nix @@ -2,6 +2,7 @@ lib, config, self, + pkgs, ... }: { options.pim.tailscale.advertiseExitNode = lib.mkOption { @@ -10,6 +11,8 @@ }; config = lib.mkIf (builtins.elem "server" config.deployment.tags) { + environment.systemPackages = [pkgs.unar]; + networking = { firewall.allowedTCPPorts = [config.services.prometheus.exporters.node.port]; domain = "dmz"; From 4f3f39a95595f7d4c89f87fe6e3053a7f5e49aa6 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 26 Jan 2025 13:40:28 +0100 Subject: [PATCH 13/60] Use Linux 6.13 Update flake inputs --- flake.lock | 809 +++++++++++++++++++++++++++++++-- machines/sue/configuration.nix | 1 - nixos-configurations.nix | 2 +- nixos/default.nix | 17 +- 4 files changed, 784 insertions(+), 45 deletions(-) diff --git a/flake.lock b/flake.lock index d399b8b..70b663c 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1736711425, - "narHash": "sha256-8hKhPQuMtXfJi+4lPvw3FBk/zSJVHeb726Zo0uF1PP8=", + "lastModified": 1737038063, + "narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=", "owner": "nix-community", "repo": "disko", - "rev": "f720e64ec37fa16ebba6354eadf310f81555cc07", + "rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2", "type": "github" }, "original": { @@ -497,11 +497,11 @@ ] }, "locked": { - "lastModified": 1735882644, - "narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=", + "lastModified": 1737465171, + "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656", + "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1736652904, - "narHash": "sha256-8uolHABgroXqzs03QdulHp8H9e5kWQZnnhcda1MKbBM=", + "lastModified": 1737861961, + "narHash": "sha256-LIRtMvAwLGb8pBoamzgEF67oKlNPz4LuXiRPVZf+TpE=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "271e5bd7c57e1f001693799518b10a02d1123b12", + "rev": "79b7b8eae3243fc5aa9aad34ba6b9bbb2266f523", "type": "github" }, "original": { @@ -834,11 +834,11 @@ ] }, "locked": { - "lastModified": 1736944949, - "narHash": "sha256-rZJtjYBZe5vmanJ/yh5GoZgdISm+EU4iUhG6WD1SwBs=", + "lastModified": 1737855483, + "narHash": "sha256-x8WUQbThGRhX+WGl+D8kzEJzZStR+SGlVdzfEEEr6pA=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "0dc33f0eb391a1a942a358a01b47f763703d7097", + "rev": "6a676dd63790edd7e79410ccc7b0cd52454b83fc", "type": "github" }, "original": { @@ -864,11 +864,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1736441705, - "narHash": "sha256-OL7leZ6KBhcDF3nEKe4aZVfIm6xQpb1Kb+mxySIP93o=", + "lastModified": 1737751639, + "narHash": "sha256-ZEbOJ9iT72iwqXsiEMbEa8wWjyFvRA9Ugx8utmYbpz4=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "8870dcaff63dfc6647fb10648b827e9d40b0a337", + "rev": "dfad538f751a5aa5d4436d9781ab27a6128ec9d4", "type": "github" }, "original": { @@ -924,11 +924,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1736848588, - "narHash": "sha256-9B6fQqphF3j9lpcxQnKyIUgp3NyGi7ikb9CjCYqixcY=", + "lastModified": 1737847078, + "narHash": "sha256-RlIl2QOvd0ijklqS+1W9YW8xzWJPqpfSblruQSlxBI8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "357cd3dfdb8993af11268d755d53357720675e66", + "rev": "b582bb5b0d7af253b05d58314b85ab8ec46b8d19", "type": "github" }, "original": { @@ -940,11 +940,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1736798957, - "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", + "lastModified": 1737746512, + "narHash": "sha256-nU6AezEX4EuahTO1YopzueAXfjFfmCHylYEFCagduHU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", + "rev": "825479c345a7f806485b7f00dbe3abb50641b083", "type": "github" }, "original": { @@ -956,11 +956,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1736867362, - "narHash": "sha256-i/UJ5I7HoqmFMwZEH6vAvBxOrjjOJNU739lnZnhUln8=", + "lastModified": 1737672001, + "narHash": "sha256-YnHJJ19wqmibLQdUeq9xzE6CjrMA568KN/lFPuSVs4I=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc", + "rev": "035f8c0853c2977b24ffc4d0a42c74f00b182cd8", "type": "github" }, "original": { @@ -972,11 +972,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1736798957, - "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=", + "lastModified": 1737746512, + "narHash": "sha256-nU6AezEX4EuahTO1YopzueAXfjFfmCHylYEFCagduHU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3", + "rev": "825479c345a7f806485b7f00dbe3abb50641b083", "type": "github" }, "original": { @@ -1041,11 +1041,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1736936822, - "narHash": "sha256-Hj0wyNlxSDxXx6IchzTteHltWj3YOJ35t9SBP1LXb9g=", + "lastModified": 1737884899, + "narHash": "sha256-BKyHOuz6231tqWfOJO21jMEKmwmMJwWrWmslfsUNA5I=", "owner": "nix-community", "repo": "NUR", - "rev": "a0194337bf20730deab4a7e893010cb98abac745", + "rev": "5249513d4a2943769fb71dd898e5d8a52a17fb3e", "type": "github" }, "original": { @@ -1094,6 +1094,7 @@ "plugin-fidget-nvim": "plugin-fidget-nvim", "plugin-flutter-tools": "plugin-flutter-tools", "plugin-friendly-snippets": "plugin-friendly-snippets", + "plugin-fzf-lua": "plugin-fzf-lua", "plugin-gesture-nvim": "plugin-gesture-nvim", "plugin-gitsigns-nvim": "plugin-gitsigns-nvim", "plugin-glow-nvim": "plugin-glow-nvim", @@ -1115,6 +1116,46 @@ "plugin-lz-n": "plugin-lz-n", "plugin-lzn-auto-require": "plugin-lzn-auto-require", "plugin-mind-nvim": "plugin-mind-nvim", + "plugin-mini-ai": "plugin-mini-ai", + "plugin-mini-align": "plugin-mini-align", + "plugin-mini-animate": "plugin-mini-animate", + "plugin-mini-base16": "plugin-mini-base16", + "plugin-mini-basics": "plugin-mini-basics", + "plugin-mini-bracketed": "plugin-mini-bracketed", + "plugin-mini-bufremove": "plugin-mini-bufremove", + "plugin-mini-clue": "plugin-mini-clue", + "plugin-mini-colors": "plugin-mini-colors", + "plugin-mini-comment": "plugin-mini-comment", + "plugin-mini-completion": "plugin-mini-completion", + "plugin-mini-diff": "plugin-mini-diff", + "plugin-mini-doc": "plugin-mini-doc", + "plugin-mini-extra": "plugin-mini-extra", + "plugin-mini-files": "plugin-mini-files", + "plugin-mini-fuzzy": "plugin-mini-fuzzy", + "plugin-mini-git": "plugin-mini-git", + "plugin-mini-hipatterns": "plugin-mini-hipatterns", + "plugin-mini-hues": "plugin-mini-hues", + "plugin-mini-icons": "plugin-mini-icons", + "plugin-mini-indentscope": "plugin-mini-indentscope", + "plugin-mini-jump": "plugin-mini-jump", + "plugin-mini-jump2d": "plugin-mini-jump2d", + "plugin-mini-map": "plugin-mini-map", + "plugin-mini-misc": "plugin-mini-misc", + "plugin-mini-move": "plugin-mini-move", + "plugin-mini-notify": "plugin-mini-notify", + "plugin-mini-operators": "plugin-mini-operators", + "plugin-mini-pairs": "plugin-mini-pairs", + "plugin-mini-pick": "plugin-mini-pick", + "plugin-mini-sessions": "plugin-mini-sessions", + "plugin-mini-snippets": "plugin-mini-snippets", + "plugin-mini-splitjoin": "plugin-mini-splitjoin", + "plugin-mini-starter": "plugin-mini-starter", + "plugin-mini-statusline": "plugin-mini-statusline", + "plugin-mini-surround": "plugin-mini-surround", + "plugin-mini-tabline": "plugin-mini-tabline", + "plugin-mini-test": "plugin-mini-test", + "plugin-mini-trailspace": "plugin-mini-trailspace", + "plugin-mini-visits": "plugin-mini-visits", "plugin-minimap-vim": "plugin-minimap-vim", "plugin-modes-nvim": "plugin-modes-nvim", "plugin-neo-tree-nvim": "plugin-neo-tree-nvim", @@ -1125,6 +1166,7 @@ "plugin-new-file-template-nvim": "plugin-new-file-template-nvim", "plugin-noice-nvim": "plugin-noice-nvim", "plugin-none-ls": "plugin-none-ls", + "plugin-nord": "plugin-nord", "plugin-nui-nvim": "plugin-nui-nvim", "plugin-nvim-autopairs": "plugin-nvim-autopairs", "plugin-nvim-bufferline-lua": "plugin-nvim-bufferline-lua", @@ -1162,6 +1204,7 @@ "plugin-precognition-nvim": "plugin-precognition-nvim", "plugin-project-nvim": "plugin-project-nvim", "plugin-promise-async": "plugin-promise-async", + "plugin-rainbow-delimiters": "plugin-rainbow-delimiters", "plugin-registers": "plugin-registers", "plugin-render-markdown-nvim": "plugin-render-markdown-nvim", "plugin-rose-pine": "plugin-rose-pine", @@ -1189,11 +1232,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1736946667, - "narHash": "sha256-7z13M0L4DK9srgXnTXFFnfQsYioL2BrkfQieRI7A7wo=", + "lastModified": 1737815146, + "narHash": "sha256-UptKVzFBLGhN25BHsyT9V78FpmWjfXM982YHz8O16T4=", "owner": "notashelf", "repo": "nvf", - "rev": "45a6d9b890e97fe8183874aafb1f17b1335f8bdf", + "rev": "4242640c9801d6bcd9e72ae942eb92928093b0a5", "type": "github" }, "original": { @@ -1682,6 +1725,22 @@ "type": "github" } }, + "plugin-fzf-lua": { + "flake": false, + "locked": { + "lastModified": 1737131132, + "narHash": "sha256-0IdADUsIr+SZ0ort92jPPfGIH1EdcwELYz+TCmDCPPI=", + "owner": "ibhagwan", + "repo": "fzf-lua", + "rev": "fbe21aeb147b3dc8b188b5753a8e288ecedcee5e", + "type": "github" + }, + "original": { + "owner": "ibhagwan", + "repo": "fzf-lua", + "type": "github" + } + }, "plugin-gesture-nvim": { "flake": false, "locked": { @@ -2019,6 +2078,646 @@ "type": "github" } }, + "plugin-mini-ai": { + "flake": false, + "locked": { + "lastModified": 1733662803, + "narHash": "sha256-b/776l9nYM9e2atzXrvOk9dCxjzIuW/+iINC/yPv88Y=", + "owner": "echasnovski", + "repo": "mini.ai", + "rev": "ebb04799794a7f94628153991e6334c3304961b8", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.ai", + "type": "github" + } + }, + "plugin-mini-align": { + "flake": false, + "locked": { + "lastModified": 1735582248, + "narHash": "sha256-oHub8dEihIx4kcP3CD9GXG1SUObJUVpH4bg2Z6PmadQ=", + "owner": "echasnovski", + "repo": "mini.align", + "rev": "e715137aece7d05734403d793b8b6b64486bc812", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.align", + "type": "github" + } + }, + "plugin-mini-animate": { + "flake": false, + "locked": { + "lastModified": 1733078395, + "narHash": "sha256-ZePmJuHCCymTgaK46nSg5tRloxs+UKrVgVmT++rGKpc=", + "owner": "echasnovski", + "repo": "mini.animate", + "rev": "d14190ac3040116540889e2ebc25f488b195799e", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.animate", + "type": "github" + } + }, + "plugin-mini-base16": { + "flake": false, + "locked": { + "lastModified": 1734960100, + "narHash": "sha256-VGs4k/xDujPcA0Nv5T18ybSv1iqnzg0AFmaweRdhvDM=", + "owner": "echasnovski", + "repo": "mini.base16", + "rev": "23453dacc1606e5d42238d82f0b42a2985386b62", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.base16", + "type": "github" + } + }, + "plugin-mini-basics": { + "flake": false, + "locked": { + "lastModified": 1730194519, + "narHash": "sha256-R8POaMcgb6SBOxIpanZsswieywapnU7zDNjQMRTkR8U=", + "owner": "echasnovski", + "repo": "mini.basics", + "rev": "67c10b3436d5d3b892715137f4773e71c6753b13", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.basics", + "type": "github" + } + }, + "plugin-mini-bracketed": { + "flake": false, + "locked": { + "lastModified": 1737036218, + "narHash": "sha256-y+tGFF1H37ES/hnEtr3GJK3GeB6D5s8ZdSpvzl+lh3s=", + "owner": "echasnovski", + "repo": "mini.bracketed", + "rev": "0091e11fabe34973fc038a8d0d0485202742e403", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.bracketed", + "type": "github" + } + }, + "plugin-mini-bufremove": { + "flake": false, + "locked": { + "lastModified": 1730726192, + "narHash": "sha256-CB6ZIlrCQlh2W44Knnb10REDcvj4jcYkW/9CiOaoH2E=", + "owner": "echasnovski", + "repo": "mini.bufremove", + "rev": "285bdac9596ee7375db50c0f76ed04336dcd2685", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.bufremove", + "type": "github" + } + }, + "plugin-mini-clue": { + "flake": false, + "locked": { + "lastModified": 1737130586, + "narHash": "sha256-/0DpZV/jXuhaqBz5j4JN3xmofATlwPMHNSm/uTXALg0=", + "owner": "echasnovski", + "repo": "mini.clue", + "rev": "63e42dad781b9ed4845d90ef1da8c52dfb6dce3f", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.clue", + "type": "github" + } + }, + "plugin-mini-colors": { + "flake": false, + "locked": { + "lastModified": 1730726192, + "narHash": "sha256-B2JahCUhKpYwOJrl+BhSp3UQFiyyMGJAYKGK+uMv3fk=", + "owner": "echasnovski", + "repo": "mini.colors", + "rev": "d64b1c0f520579d905f97208eca85329e664ab88", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.colors", + "type": "github" + } + }, + "plugin-mini-comment": { + "flake": false, + "locked": { + "lastModified": 1736611383, + "narHash": "sha256-vAgBDSVtXCP+rlu+cmXdoZQBGShyH7KfL8E/gvDMfnM=", + "owner": "echasnovski", + "repo": "mini.comment", + "rev": "6e1f9a8ebbf6f693fa3787ceda8ca3bf3cb6aec7", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.comment", + "type": "github" + } + }, + "plugin-mini-completion": { + "flake": false, + "locked": { + "lastModified": 1732271068, + "narHash": "sha256-dlQCfHUQX9rPiSYZSRipezHX0CG/redbV2g7cpwwExY=", + "owner": "echasnovski", + "repo": "mini.completion", + "rev": "6eb9546685c4e1c4af2365b87166d4afa39d8a1b", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.completion", + "type": "github" + } + }, + "plugin-mini-diff": { + "flake": false, + "locked": { + "lastModified": 1735324663, + "narHash": "sha256-dRvW/1lfVShiHmRU0mQA5g5xDyQ0EVtVLLZ0y6WSedg=", + "owner": "echasnovski", + "repo": "mini.diff", + "rev": "00f072250061ef498f91ed226918c9ec31a416a4", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.diff", + "type": "github" + } + }, + "plugin-mini-doc": { + "flake": false, + "locked": { + "lastModified": 1723308950, + "narHash": "sha256-Q3DAEV1ZHS+lFhZKFCNoIjn41ksk7WRrVP2b2d6uSss=", + "owner": "echasnovski", + "repo": "mini.doc", + "rev": "bb73a3d1ff390f7e2740027ea2567017099a237c", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.doc", + "type": "github" + } + }, + "plugin-mini-extra": { + "flake": false, + "locked": { + "lastModified": 1736279066, + "narHash": "sha256-lUJrviUjAmJ70g2y93aNw3e1mHGHoB9lbh44HGP7zQs=", + "owner": "echasnovski", + "repo": "mini.extra", + "rev": "477e3dda7b597b49bc1373951ea7da4da834c352", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.extra", + "type": "github" + } + }, + "plugin-mini-files": { + "flake": false, + "locked": { + "lastModified": 1736535707, + "narHash": "sha256-UHW78m4BiYMMrABwdkyyzQUENgQrVFbWJnmNdRMtr0w=", + "owner": "echasnovski", + "repo": "mini.files", + "rev": "d0f03a5c38836fd2cce3dc80734124959002078c", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.files", + "type": "github" + } + }, + "plugin-mini-fuzzy": { + "flake": false, + "locked": { + "lastModified": 1730726192, + "narHash": "sha256-XvDkDfwPcBxySuz58f2mpWTeo8EsOnMvZUcNI8HNZg8=", + "owner": "echasnovski", + "repo": "mini.fuzzy", + "rev": "faa5a6c0d29c28012c90bd011162963a58715428", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.fuzzy", + "type": "github" + } + }, + "plugin-mini-git": { + "flake": false, + "locked": { + "lastModified": 1736535710, + "narHash": "sha256-rXuKopyZBCBbpKuytCdm8keruSNK1ohk2NdeZv1wifI=", + "owner": "echasnovski", + "repo": "mini-git", + "rev": "fc13dde6cfe87cf25a4fd1ee177c0d157468436b", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini-git", + "type": "github" + } + }, + "plugin-mini-hipatterns": { + "flake": false, + "locked": { + "lastModified": 1733141274, + "narHash": "sha256-zJ8OMzfcBh9NtSg2FHDjB5DFX9C2qZRo8t8lc097sCI=", + "owner": "echasnovski", + "repo": "mini.hipatterns", + "rev": "f34975103a38b3f608219a1324cdfc58ea660b8b", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.hipatterns", + "type": "github" + } + }, + "plugin-mini-hues": { + "flake": false, + "locked": { + "lastModified": 1734960100, + "narHash": "sha256-4y79ejOkRL/fajZ4jC8t4K6EgNbnTsH++mIjmo6G3q0=", + "owner": "echasnovski", + "repo": "mini.hues", + "rev": "ae6ad4c666ff42c1102344fe1eba18bb486f2e46", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.hues", + "type": "github" + } + }, + "plugin-mini-icons": { + "flake": false, + "locked": { + "lastModified": 1737036219, + "narHash": "sha256-w0PxiTj9uiUffZXkMM18IO/b/zPpdRKW9ydyhvXRoqE=", + "owner": "echasnovski", + "repo": "mini.icons", + "rev": "910db5df9724d65371182948f921fce23c2c881e", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.icons", + "type": "github" + } + }, + "plugin-mini-indentscope": { + "flake": false, + "locked": { + "lastModified": 1737036220, + "narHash": "sha256-Mrzc7oHXxyEGqdE003qiC9unScyb7i5A6+l8Do7yxws=", + "owner": "echasnovski", + "repo": "mini.indentscope", + "rev": "613df2830d7faeae7483ba2e736683154b95921e", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.indentscope", + "type": "github" + } + }, + "plugin-mini-jump": { + "flake": false, + "locked": { + "lastModified": 1733662809, + "narHash": "sha256-qMP9ezk4xZov5S4vrUFM62lnc4YkEaZL1EVzdXwDq1Q=", + "owner": "echasnovski", + "repo": "mini.jump", + "rev": "bb93d998c9db6936697746330411f5fb9957145e", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.jump", + "type": "github" + } + }, + "plugin-mini-jump2d": { + "flake": false, + "locked": { + "lastModified": 1733662811, + "narHash": "sha256-+DihKCh6GYwin3H9YD+q30MLMRNXvvb1GtKnfBinGjc=", + "owner": "echasnovski", + "repo": "mini.jump2d", + "rev": "88077058297e80f1c76a18ed801ae9d7064187c6", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.jump2d", + "type": "github" + } + }, + "plugin-mini-map": { + "flake": false, + "locked": { + "lastModified": 1725613927, + "narHash": "sha256-dL+d92+GLAILQ/A1JVCwoe3B5WtwVK01tPuC+fOTB5A=", + "owner": "echasnovski", + "repo": "mini.map", + "rev": "4c58e755d75f9999abcd3b3c6e934734b6a8b098", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.map", + "type": "github" + } + }, + "plugin-mini-misc": { + "flake": false, + "locked": { + "lastModified": 1734103112, + "narHash": "sha256-qnYa4IZk14MGZArmVpn15l+P9cwtFWomBVxRuYHVyXc=", + "owner": "echasnovski", + "repo": "mini.misc", + "rev": "645fb9367c19bb485902e54e5451425981498601", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.misc", + "type": "github" + } + }, + "plugin-mini-move": { + "flake": false, + "locked": { + "lastModified": 1723711319, + "narHash": "sha256-nX0eAlhMnKhAftgM6qeHUuawagumLQMPKDkqZNPLljg=", + "owner": "echasnovski", + "repo": "mini.move", + "rev": "4caa1c212f5ca3d1633d21cfb184808090ed74b1", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.move", + "type": "github" + } + }, + "plugin-mini-notify": { + "flake": false, + "locked": { + "lastModified": 1736790793, + "narHash": "sha256-q27j14OV6LAfoxeqBG75GSiqtqmW37GOPHpmA2fD4gs=", + "owner": "echasnovski", + "repo": "mini.notify", + "rev": "05e598d5b349bd66404d576e6a4d4340aea5f194", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.notify", + "type": "github" + } + }, + "plugin-mini-operators": { + "flake": false, + "locked": { + "lastModified": 1731776514, + "narHash": "sha256-+Zhy0AhuMPSHnM6dqbV45Aa7dS7XJ4mpfcHApSbuy8A=", + "owner": "echasnovski", + "repo": "mini.operators", + "rev": "7cb4dc66c51a3d736d347bbc517dc73dc7d28888", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.operators", + "type": "github" + } + }, + "plugin-mini-pairs": { + "flake": false, + "locked": { + "lastModified": 1728656795, + "narHash": "sha256-PtHxLKU1smVTx655r5SINxuz5CJmZWnBW70T8zJ/oxM=", + "owner": "echasnovski", + "repo": "mini.pairs", + "rev": "7e834c5937d95364cc1740e20d673afe2d034cdb", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.pairs", + "type": "github" + } + }, + "plugin-mini-pick": { + "flake": false, + "locked": { + "lastModified": 1736696004, + "narHash": "sha256-Q4GD0WzUYNtoBMx8pIl6fX5glKn1oflS4HZVC+w/eAM=", + "owner": "echasnovski", + "repo": "mini.pick", + "rev": "09ade94d2c9c5133db9ae00f3693d82eae78e9be", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.pick", + "type": "github" + } + }, + "plugin-mini-sessions": { + "flake": false, + "locked": { + "lastModified": 1735582250, + "narHash": "sha256-vyn8MGyOWFgJ5QVvjYb7K1cKDtg9qWnWYMNf80+kpHk=", + "owner": "echasnovski", + "repo": "mini.sessions", + "rev": "71c9ae596664ac110560d27eb928fc24e22bc53d", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.sessions", + "type": "github" + } + }, + "plugin-mini-snippets": { + "flake": false, + "locked": { + "lastModified": 1736611383, + "narHash": "sha256-How9m7KTo66FrwjZQlgZRmJ5toFKn/+GnUbx/0va3lM=", + "owner": "echasnovski", + "repo": "mini.snippets", + "rev": "72920f62e3dd1330720e94e8f5d42592f3a1ecf8", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.snippets", + "type": "github" + } + }, + "plugin-mini-splitjoin": { + "flake": false, + "locked": { + "lastModified": 1719822504, + "narHash": "sha256-LDIbh5KfupTI4zkYOlLmVCd3DuZRhx5lTASN53VG34g=", + "owner": "echasnovski", + "repo": "mini.splitjoin", + "rev": "3e92f6764e770ba392325cad3a4497adcada695f", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.splitjoin", + "type": "github" + } + }, + "plugin-mini-starter": { + "flake": false, + "locked": { + "lastModified": 1736858747, + "narHash": "sha256-pJYkZUo+L3IeGCRdTipqTzMv+HatpNnyRxshaygKtIw=", + "owner": "echasnovski", + "repo": "mini.starter", + "rev": "4b257cfc93241e8c8cde3f9302d1616ad4e0d036", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.starter", + "type": "github" + } + }, + "plugin-mini-statusline": { + "flake": false, + "locked": { + "lastModified": 1735582251, + "narHash": "sha256-AQ2N93JDjtFpgerWTzRspmxrl9oQuALbeCUxBO4ZPqo=", + "owner": "echasnovski", + "repo": "mini.statusline", + "rev": "1b0edf76fe2af015f8c989385ff949f1db7aade2", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.statusline", + "type": "github" + } + }, + "plugin-mini-surround": { + "flake": false, + "locked": { + "lastModified": 1733662812, + "narHash": "sha256-okWJlG0KOdg1ShvkIIMnPSoOzGd7K84eDcp5kx6eVP8=", + "owner": "echasnovski", + "repo": "mini.surround", + "rev": "aa5e245829dd12d8ff0c96ef11da28681d6049aa", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.surround", + "type": "github" + } + }, + "plugin-mini-tabline": { + "flake": false, + "locked": { + "lastModified": 1729176541, + "narHash": "sha256-nucUqSN8w2xBnDp1dFBgRVVvfVoqZMdx7Zj78wdFAP0=", + "owner": "echasnovski", + "repo": "mini.tabline", + "rev": "06ef4ecaeca2e362c7d31113435d86d144b3cbbe", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.tabline", + "type": "github" + } + }, + "plugin-mini-test": { + "flake": false, + "locked": { + "lastModified": 1729520957, + "narHash": "sha256-NtsX441k84owAAJywq4G2rMvV6d7UR2K75G8oKam+gs=", + "owner": "echasnovski", + "repo": "mini.test", + "rev": "86a64d5a4bf9d73ebf5875edaae0d878f64f5e48", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.test", + "type": "github" + } + }, + "plugin-mini-trailspace": { + "flake": false, + "locked": { + "lastModified": 1725613928, + "narHash": "sha256-JKYvFz8g8kVZvxE44RhwoHXQykghXx7ebW/Mj1ZdJIw=", + "owner": "echasnovski", + "repo": "mini.trailspace", + "rev": "3a328e62559c33014e422fb9ae97afc4208208b1", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.trailspace", + "type": "github" + } + }, + "plugin-mini-visits": { + "flake": false, + "locked": { + "lastModified": 1737036221, + "narHash": "sha256-Q+m1gZ5Obu6Zzo87Djt6VCX76ZjdOiLb0j771jP8uQE=", + "owner": "echasnovski", + "repo": "mini.visits", + "rev": "90f20ba6ab7d3d7cb984fffddd82f5f6c7a6bea7", + "type": "github" + }, + "original": { + "owner": "echasnovski", + "repo": "mini.visits", + "type": "github" + } + }, "plugin-minimap-vim": { "flake": false, "locked": { @@ -2180,6 +2879,22 @@ "type": "github" } }, + "plugin-nord": { + "flake": false, + "locked": { + "lastModified": 1737019140, + "narHash": "sha256-ZhDS7Y90DKp+jkUqcoQRf/zHy4DVgSDQXrnl3sBYJXs=", + "owner": "gbprod", + "repo": "nord.nvim", + "rev": "b0f3ed242fd8e5bafa7231367821d46c6c835dd8", + "type": "github" + }, + "original": { + "owner": "gbprod", + "repo": "nord.nvim", + "type": "github" + } + }, "plugin-nui-nvim": { "flake": false, "locked": { @@ -2772,6 +3487,22 @@ "type": "github" } }, + "plugin-rainbow-delimiters": { + "flake": false, + "locked": { + "lastModified": 1736686348, + "narHash": "sha256-zWHXYs3XdnoszqOFY3hA2L5mNn1a44OAeKv3lL3EMEw=", + "owner": "HiPhish", + "repo": "rainbow-delimiters.nvim", + "rev": "85b80abaa09cbbc039e3095b2f515b3cf8cadd11", + "type": "github" + }, + "original": { + "owner": "HiPhish", + "repo": "rainbow-delimiters.nvim", + "type": "github" + } + }, "plugin-registers": { "flake": false, "locked": { @@ -3266,11 +3997,11 @@ ] }, "locked": { - "lastModified": 1736808430, - "narHash": "sha256-wlgdf/n7bJMLBheqt1jmPoxJFrUP6FByKQFXuM9YvIk=", + "lastModified": 1737411508, + "narHash": "sha256-j9IdflJwRtqo9WpM0OfAZml47eBblUHGNQTe62OUqTw=", "owner": "Mic92", "repo": "sops-nix", - "rev": "553c7cb22fed19fd60eb310423fdc93045c51ba8", + "rev": "015d461c16678fc02a2f405eb453abb509d4e1d4", "type": "github" }, "original": { @@ -3462,11 +4193,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1736154270, - "narHash": "sha256-p2r8xhQZ3TYIEKBoiEhllKWQqWNJNoT9v64Vmg4q8Zw=", + "lastModified": 1737483750, + "narHash": "sha256-5An1wq5U8sNycOBBg3nsDDgpwBmR9liOpDGlhliA6Xo=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "13c913f5deb3a5c08bb810efd89dc8cb24dd968b", + "rev": "f2cc121df15418d028a59c9737d38e3a90fbaf8f", "type": "github" }, "original": { diff --git a/machines/sue/configuration.nix b/machines/sue/configuration.nix index 23e8840..70c4391 100644 --- a/machines/sue/configuration.nix +++ b/machines/sue/configuration.nix @@ -37,7 +37,6 @@ nix.settings.trusted-users = ["pim"]; system.stateVersion = "23.05"; sops.defaultSopsFile = "${self}/secrets/sue/nixos.yaml"; - boot.kernelPackages = pkgs.unstable.linuxKernel.packages.linux_6_12; environment.systemPackages = with pkgs; [ borgbackup diff --git a/nixos-configurations.nix b/nixos-configurations.nix index 12539cf..d306877 100644 --- a/nixos-configurations.nix +++ b/nixos-configurations.nix @@ -3,7 +3,7 @@ inputs @ { self, ... }: { - nixosConfigurations = nixpkgs.lib.mapAttrs (name: { + nixosConfigurations = nixpkgs.lib.mapAttrs (_: { system, nixosModule, }: diff --git a/nixos/default.nix b/nixos/default.nix index 111d838..ca6faf2 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -128,6 +128,7 @@ ncdu lshw sops + nix-tree ]; }; @@ -179,11 +180,15 @@ "steam-run" "steam-unwrapped" ]; + + permittedInsecurePackages = [ + "electron-31.7.7" + ]; }; overlays = [ inputs.nur.overlays.default - (final: _prev: { + (_final: _prev: { unstable = import inputs.nixpkgs-unstable { inherit (pkgs) system; config.allowUnfree = true; @@ -192,9 +197,13 @@ ]; }; - boot.kernel.sysctl = { - "net.core.default_qdisc" = "fq"; - "net.ipv4.tcp_congestion_control" = "bbr"; + boot = { + kernelPackages = pkgs.linuxKernel.packages.linux_6_13; + + kernel.sysctl = { + "net.core.default_qdisc" = "fq"; + "net.ipv4.tcp_congestion_control" = "bbr"; + }; }; home-manager = { From 76000bf03884c5415e20a241d476a41b56c3a3a9 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 28 Jan 2025 13:56:13 +0100 Subject: [PATCH 14/60] Enable ollama on gamepc --- machines/gamepc/configuration.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/machines/gamepc/configuration.nix b/machines/gamepc/configuration.nix index 88997f8..4f3bc4c 100644 --- a/machines/gamepc/configuration.nix +++ b/machines/gamepc/configuration.nix @@ -33,6 +33,13 @@ services = { openssh.enable = true; + ollama = { + enable = true; + rocmOverrideGfx = "10.3.0"; + loadModels = ["deepseek-r1:32b"]; + acceleration = "rocm"; + }; + xserver.displayManager.lightdm.extraSeatDefaults = '' autologin-user=pim ''; From 29fdf3d0712458181d8ed1efc57889de6485491a Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 10 Feb 2025 11:43:22 +0100 Subject: [PATCH 15/60] Update flake inputs --- flake.lock | 153 ++++++++++++++++++++---------- machines/gamepc/configuration.nix | 2 +- 2 files changed, 103 insertions(+), 52 deletions(-) diff --git a/flake.lock b/flake.lock index 70b663c..6643527 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1737038063, - "narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=", + "lastModified": 1738765162, + "narHash": "sha256-3Z40qHaFScWUCVQrGc4Y+RdoPsh1R/wIh+AN4cTXP0I=", "owner": "nix-community", "repo": "disko", - "rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2", + "rev": "ff3568858c54bd306e9e1f2886f0f781df307dff", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1737861961, - "narHash": "sha256-LIRtMvAwLGb8pBoamzgEF67oKlNPz4LuXiRPVZf+TpE=", + "lastModified": 1739071773, + "narHash": "sha256-/Ak+Quinhmdxa9m3shjm4lwwwqmzG8zzGhhhhgR1k9I=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "79b7b8eae3243fc5aa9aad34ba6b9bbb2266f523", + "rev": "895d81b6228bbd50a6ef22f5a58a504ca99763ea", "type": "github" }, "original": { @@ -812,11 +812,11 @@ "nixos-artwork": { "flake": false, "locked": { - "lastModified": 1731943625, - "narHash": "sha256-XquSEijNYtGDkW35bibT2ki18qicENCsIcDzDxrgQkM=", + "lastModified": 1738002455, + "narHash": "sha256-VIrSOBCCNq6Fc0dS7XMtC1VebnjRvIUi0/kPal2gWcU=", "ref": "refs/heads/master", - "rev": "63f68a917f4e8586c5d35e050cdaf1309832272d", - "revCount": 214, + "rev": "33856d7837cb8ba76c4fc9e26f91a659066ee31f", + "revCount": 215, "type": "git", "url": "https://github.com/NixOS/nixos-artwork.git" }, @@ -834,11 +834,11 @@ ] }, "locked": { - "lastModified": 1737855483, - "narHash": "sha256-x8WUQbThGRhX+WGl+D8kzEJzZStR+SGlVdzfEEEr6pA=", + "lastModified": 1739069964, + "narHash": "sha256-riauJMShjx/R2LrWUt7X5Gh7d0veVbgI5w5g0/zwQ6E=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "6a676dd63790edd7e79410ccc7b0cd52454b83fc", + "rev": "28fb2017077f66b050f031f8442475d1b51c908e", "type": "github" }, "original": { @@ -849,11 +849,11 @@ }, "nixos-facter-modules": { "locked": { - "lastModified": 1736931726, - "narHash": "sha256-aY55yiifyo1XPPpbpH0kWlV1g2dNGBlx6622b7OK8ks=", + "lastModified": 1738752252, + "narHash": "sha256-/nA3tDdp/2g0FBy8966ppC2WDoyXtUWaHkZWL+N3ZKc=", "owner": "numtide", "repo": "nixos-facter-modules", - "rev": "fa11d87b61b2163efbb9aed7b7a5ae0299e5ab9c", + "rev": "60f8b8f3f99667de6a493a44375e5506bf0c48b1", "type": "github" }, "original": { @@ -864,11 +864,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1737751639, - "narHash": "sha256-ZEbOJ9iT72iwqXsiEMbEa8wWjyFvRA9Ugx8utmYbpz4=", + "lastModified": 1738816619, + "narHash": "sha256-5yRlg48XmpcX5b5HesdGMOte+YuCy9rzQkJz+imcu6I=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "dfad538f751a5aa5d4436d9781ab27a6128ec9d4", + "rev": "2eccff41bab80839b1d25b303b53d339fbb07087", "type": "github" }, "original": { @@ -924,11 +924,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1737847078, - "narHash": "sha256-RlIl2QOvd0ijklqS+1W9YW8xzWJPqpfSblruQSlxBI8=", + "lastModified": 1739019272, + "narHash": "sha256-7Fu7oazPoYCbDzb9k8D/DdbKrC3aU1zlnc39Y8jy/s8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b582bb5b0d7af253b05d58314b85ab8ec46b8d19", + "rev": "fa35a3c8e17a3de613240fea68f876e5b4896aec", "type": "github" }, "original": { @@ -940,11 +940,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1737746512, - "narHash": "sha256-nU6AezEX4EuahTO1YopzueAXfjFfmCHylYEFCagduHU=", + "lastModified": 1738680400, + "narHash": "sha256-ooLh+XW8jfa+91F1nhf9OF7qhuA/y1ChLx6lXDNeY5U=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "825479c345a7f806485b7f00dbe3abb50641b083", + "rev": "799ba5bffed04ced7067a91798353d360788b30d", "type": "github" }, "original": { @@ -956,11 +956,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1737672001, - "narHash": "sha256-YnHJJ19wqmibLQdUeq9xzE6CjrMA568KN/lFPuSVs4I=", + "lastModified": 1738843498, + "narHash": "sha256-7x+Q4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i+jBHE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "035f8c0853c2977b24ffc4d0a42c74f00b182cd8", + "rev": "f5a32fa27df91dfc4b762671a0e0a859a8a0058f", "type": "github" }, "original": { @@ -972,11 +972,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1737746512, - "narHash": "sha256-nU6AezEX4EuahTO1YopzueAXfjFfmCHylYEFCagduHU=", + "lastModified": 1739020877, + "narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "825479c345a7f806485b7f00dbe3abb50641b083", + "rev": "a79cfe0ebd24952b580b1cf08cd906354996d547", "type": "github" }, "original": { @@ -1041,11 +1041,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1737884899, - "narHash": "sha256-BKyHOuz6231tqWfOJO21jMEKmwmMJwWrWmslfsUNA5I=", + "lastModified": 1739111476, + "narHash": "sha256-BHs80VUOGcZ2oaBc+N9MoeYdo5npz7FKex+jclaBdKI=", "owner": "nix-community", "repo": "NUR", - "rev": "5249513d4a2943769fb71dd898e5d8a52a17fb3e", + "rev": "953d83b127944d8d6f98a2720c82a70bdc73256b", "type": "github" }, "original": { @@ -1067,6 +1067,8 @@ "plugin-aerial-nvim": "plugin-aerial-nvim", "plugin-alpha-nvim": "plugin-alpha-nvim", "plugin-base16": "plugin-base16", + "plugin-blink-cmp": "plugin-blink-cmp", + "plugin-blink-compat": "plugin-blink-compat", "plugin-bufdelete-nvim": "plugin-bufdelete-nvim", "plugin-catppuccin": "plugin-catppuccin", "plugin-ccc": "plugin-ccc", @@ -1229,14 +1231,15 @@ "plugin-vim-repeat": "plugin-vim-repeat", "plugin-vim-startify": "plugin-vim-startify", "plugin-which-key": "plugin-which-key", + "plugin-yanky-nvim": "plugin-yanky-nvim", "systems": "systems_5" }, "locked": { - "lastModified": 1737815146, - "narHash": "sha256-UptKVzFBLGhN25BHsyT9V78FpmWjfXM982YHz8O16T4=", + "lastModified": 1739089639, + "narHash": "sha256-MCkgsVTAtoVUthorcCeit1oBuFyG7XktYdeMzyHL2uE=", "owner": "notashelf", "repo": "nvf", - "rev": "4242640c9801d6bcd9e72ae942eb92928093b0a5", + "rev": "a78026438cc8e280a696bcadb60f5c8f93b96a12", "type": "github" }, "original": { @@ -1293,6 +1296,38 @@ "type": "github" } }, + "plugin-blink-cmp": { + "flake": false, + "locked": { + "lastModified": 1736295934, + "narHash": "sha256-MfHI4efAdaoCU8si6YFdznZmSTprthDq3YKuF91z7ss=", + "owner": "saghen", + "repo": "blink.cmp", + "rev": "1cc3b1a908fbcfd15451c4772759549724f38524", + "type": "github" + }, + "original": { + "owner": "saghen", + "repo": "blink.cmp", + "type": "github" + } + }, + "plugin-blink-compat": { + "flake": false, + "locked": { + "lastModified": 1734896240, + "narHash": "sha256-Rrrh+O3FbBnaAnCHwPuQyfhH+XueSkQp6ipEkn6esGY=", + "owner": "saghen", + "repo": "blink.compat", + "rev": "74b251a1e9478c4fa6d7c6bc2921d7124e6f6cbb", + "type": "github" + }, + "original": { + "owner": "saghen", + "repo": "blink.compat", + "type": "github" + } + }, "plugin-bufdelete-nvim": { "flake": false, "locked": { @@ -2962,15 +2997,15 @@ "plugin-nvim-colorizer-lua": { "flake": false, "locked": { - "lastModified": 1735384185, - "narHash": "sha256-quqs3666vQc/4ticc/Z5BHzGxV6UUVE9jVGT07MEMQQ=", - "owner": "NvChad", + "lastModified": 1738229011, + "narHash": "sha256-IEgZnIUeNXRKZ4eV1+KknluyKZj68HBWe1EW+LueuGA=", + "owner": "catgoose", "repo": "nvim-colorizer.lua", - "rev": "8a65c448122fc8fac9c67b2e857b6e830a4afd0b", + "rev": "9b5fe0450bfb2521c6cea29391e5ec571f129136", "type": "github" }, "original": { - "owner": "NvChad", + "owner": "catgoose", "repo": "nvim-colorizer.lua", "type": "github" } @@ -3586,11 +3621,11 @@ "plugin-rustaceanvim": { "flake": false, "locked": { - "lastModified": 1735431742, - "narHash": "sha256-ucZXGbxHtbSKf5n11lL3vb6rD2BxJacIDOgcx32PLzA=", + "lastModified": 1738187731, + "narHash": "sha256-Z4aCPO4MR0Q2ZojT6YBGSa8fb7u5Nd+4Z/rekqhXqDY=", "owner": "mrcjkb", "repo": "rustaceanvim", - "rev": "51c097ebfb65d83baa71f48000b1e5c0a8dcc4fb", + "rev": "4a2f2d2cc04f5b0aa0981f98bb7d002c898318ad", "type": "github" }, "original": { @@ -3887,6 +3922,22 @@ "type": "github" } }, + "plugin-yanky-nvim": { + "flake": false, + "locked": { + "lastModified": 1737126873, + "narHash": "sha256-Gt8kb6sZoNIM2SDWUPyAF5Tw99qMZl+ltUCfyMXgJsU=", + "owner": "gbprod", + "repo": "yanky.nvim", + "rev": "d2696b30e389dced94d5acab728f524a25f308d2", + "type": "github" + }, + "original": { + "owner": "gbprod", + "repo": "yanky.nvim", + "type": "github" + } + }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -3997,11 +4048,11 @@ ] }, "locked": { - "lastModified": 1737411508, - "narHash": "sha256-j9IdflJwRtqo9WpM0OfAZml47eBblUHGNQTe62OUqTw=", + "lastModified": 1738291974, + "narHash": "sha256-wkwYJc8cKmmQWUloyS9KwttBnja2ONRuJQDEsmef320=", "owner": "Mic92", "repo": "sops-nix", - "rev": "015d461c16678fc02a2f405eb453abb509d4e1d4", + "rev": "4c1251904d8a08c86ac6bc0d72cc09975e89aef7", "type": "github" }, "original": { @@ -4193,11 +4244,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1737483750, - "narHash": "sha256-5An1wq5U8sNycOBBg3nsDDgpwBmR9liOpDGlhliA6Xo=", + "lastModified": 1738953846, + "narHash": "sha256-yrK3Hjcr8F7qS/j2F+r7C7o010eVWWlm4T1PrbKBOxQ=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "f2cc121df15418d028a59c9737d38e3a90fbaf8f", + "rev": "4f09b473c936d41582dd744e19f34ec27592c5fd", "type": "github" }, "original": { diff --git a/machines/gamepc/configuration.nix b/machines/gamepc/configuration.nix index 4f3bc4c..0d5f007 100644 --- a/machines/gamepc/configuration.nix +++ b/machines/gamepc/configuration.nix @@ -36,7 +36,7 @@ ollama = { enable = true; rocmOverrideGfx = "10.3.0"; - loadModels = ["deepseek-r1:32b"]; + loadModels = ["deepseek-r1:32b" "hf.co/mradermacher/DeepSeek-R1-Distill-Qwen-32B-Uncensored-GGUF:Q4_K_M"]; acceleration = "rocm"; }; From ca1f3bf01f55d895e2f445d8b93f1cfdab0e02b0 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 17 Feb 2025 22:10:34 +0100 Subject: [PATCH 16/60] Remove some unused NFS exports --- nixos/data-sharing.nix | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/nixos/data-sharing.nix b/nixos/data-sharing.nix index 6303be4..0f2d6af 100644 --- a/nixos/data-sharing.nix +++ b/nixos/data-sharing.nix @@ -4,15 +4,7 @@ ... }: let cfg = config.pim.data-sharing; - - nfsShares = [ - "/mnt/longhorn/persistent/media" - "/mnt/longhorn/persistent/media/books" - "/mnt/longhorn/persistent/media/movies" - "/mnt/longhorn/persistent/media/music" - "/mnt/longhorn/persistent/media/shows" - "/mnt/longhorn/persistent/longhorn-backup" - ]; + nfsShares = ["/mnt/longhorn/persistent/longhorn-backup"]; nfsExports = lib.strings.concatLines ( builtins.map From 5d927e036b9f75f6c391e4a4bf501b17302bd331 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 25 Feb 2025 15:19:21 +0100 Subject: [PATCH 17/60] Replace personal laptop --- .sops.yaml | 54 +- colmena.nix | 4 +- machines/{sue => blocktech}/configuration.nix | 47 +- machines/{sue => blocktech}/facter.json | 4906 ++++++----------- .../pkunis.home.nix} | 8 +- machines/default.nix | 4 +- nixos/compliance.nix | 14 - nixos/default.nix | 1 - nixos/tidal.nix | 1 + secrets/{sue => blocktech}/colmena.yaml | 6 +- secrets/{sue => blocktech}/nixos.yaml | 0 .../{sue/pim.yaml => blocktech/pkunis.yaml} | 0 12 files changed, 1792 insertions(+), 3253 deletions(-) rename machines/{sue => blocktech}/configuration.nix (57%) rename machines/{sue => blocktech}/facter.json (57%) rename machines/{sue/pim.home.nix => blocktech/pkunis.home.nix} (90%) delete mode 100644 nixos/compliance.nix rename secrets/{sue => blocktech}/colmena.yaml (63%) rename secrets/{sue => blocktech}/nixos.yaml (100%) rename secrets/{sue/pim.yaml => blocktech/pkunis.yaml} (100%) diff --git a/.sops.yaml b/.sops.yaml index 19e09c1..9623167 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -1,7 +1,7 @@ # Public keys are combination of host + user keys: - - &sue_root age1w99m9klvc7m5qtmtmu3l0jx8ksdzp5c4p9rkvh5fdullfc6afemqv5py2q - - &sue_pim age189laethzry4ylnd790dmpuc4xjjuwqxruc76caj3ceqhqug4g9qs0upuvw + - &laptop_root age1w99m9klvc7m5qtmtmu3l0jx8ksdzp5c4p9rkvh5fdullfc6afemqv5py2q + - &laptop_pim age189laethzry4ylnd790dmpuc4xjjuwqxruc76caj3ceqhqug4g9qs0upuvw - &gamepc_root age1y5wgcxmn37drmjtpgld3xc76mw8dckhred8hecusywjlvdyfedfse8y60u - &gamepc_pim age1qlldg2c6kptvnmvlkpf9pae3wnczk6eklcmwdvnzyvvnur3aqdcq3c3trt - &warwick_root age1th8rdw4fs3vmgy9gzc0k9xy88tddjj4vasepckfx9h4nlzsg3q3q4cjgwu @@ -11,36 +11,36 @@ keys: - &lewis_root age108fn93z2c55g9dm9cv5v4w47pykf3khz7e3dmnpv5dhchwnaau0qs20stq creation_rules: - - path_regex: secrets/sue/colmena.yaml + - path_regex: secrets/blocktech/colmena.yaml key_groups: - age: - - *sue_root - - path_regex: secrets/sue/nixos.yaml + - *laptop_root + - path_regex: secrets/blocktech/nixos.yaml key_groups: - age: - - *sue_root - - path_regex: secrets/sue/pim.yaml + - *laptop_root + - path_regex: secrets/blocktech/pkunis.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - path_regex: secrets/gamepc/colmena.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - path_regex: secrets/gamepc/pim.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *gamepc_root - *gamepc_pim - path_regex: secrets/warwick/colmena.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels - path_regex: secrets/servers.yaml key_groups: @@ -49,14 +49,14 @@ creation_rules: - *atlas_root - *jefke_root - *lewis_root - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels - path_regex: secrets/atlas/colmena.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels - path_regex: secrets/kubernetes.yaml key_groups: @@ -64,25 +64,25 @@ creation_rules: - *atlas_root - *jefke_root - *lewis_root - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels - path_regex: secrets/jefke/colmena.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels - path_regex: secrets/lewis/colmena.yaml key_groups: - age: - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels - path_regex: secrets/lewis/nixos.yaml key_groups: - age: - *lewis_root - - *sue_pim - - *sue_root + - *laptop_pim + - *laptop_root - *niels diff --git a/colmena.nix b/colmena.nix index 5b427e2..a9f812e 100644 --- a/colmena.nix +++ b/colmena.nix @@ -15,9 +15,9 @@ inputs @ { }; }; - sue = { + blocktech = { imports = [ - (import ./machines).sue.nixosModule + (import ./machines).blocktech.nixosModule ./nixos ]; }; diff --git a/machines/sue/configuration.nix b/machines/blocktech/configuration.nix similarity index 57% rename from machines/sue/configuration.nix rename to machines/blocktech/configuration.nix index 70c4391..a944cc1 100644 --- a/machines/sue/configuration.nix +++ b/machines/blocktech/configuration.nix @@ -12,16 +12,15 @@ config = { pim = { - lanzaboote.enable = true; - tidal.enable = true; + lanzaboote.enable = false; + tidal.enable = false; gnome.enable = true; stylix.enable = true; wireguard.enable = true; - compliance.enable = true; - sops-nix.usersWithSopsKeys = ["pim"]; + sops-nix.usersWithSopsKeys = ["pkunis"]; }; - users.users.pim = { + users.users.pkunis = { isNormalUser = true; extraGroups = ["wheel" "docker" "input" "wireshark" "dialout"]; }; @@ -33,10 +32,10 @@ }; facter.reportPath = ./facter.json; - home-manager.users.pim.imports = [./pim.home.nix]; - nix.settings.trusted-users = ["pim"]; + home-manager.users.pkunis.imports = [./pkunis.home.nix]; + nix.settings.trusted-users = ["pkunis"]; system.stateVersion = "23.05"; - sops.defaultSopsFile = "${self}/secrets/sue/nixos.yaml"; + sops.defaultSopsFile = "${self}/secrets/blocktech/nixos.yaml"; environment.systemPackages = with pkgs; [ borgbackup @@ -60,18 +59,26 @@ }; }; - swapDevices = [{device = "/dev/disk/by-uuid/96a43c35-0174-4e92-81f0-168a5f601f0b";}]; - fileSystems = { - "/" = { - device = "/dev/disk/by-uuid/31638735-5cc4-4013-8037-17e30edcbb0a"; - fsType = "ext4"; - }; + swapDevices = [ + {device = "/dev/disk/by-uuid/949815d4-cfc4-4cf3-bbbe-22516f91119c";} + ]; - "/boot" = { - device = "/dev/disk/by-uuid/560E-F8A2"; - fsType = "vfat"; - options = ["fmask=0022" "dmask=0022"]; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/06710546-327b-402a-b221-8d88b75301d2"; + fsType = "ext4"; + }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/E547-7E6C"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; + + boot = { + initrd.luks.devices."luks-4cc1ad7c-a794-4c54-adc8-c9f666c9b781".device = "/dev/disk/by-uuid/4cc1ad7c-a794-4c54-adc8-c9f666c9b781"; + initrd.luks.devices."luks-161f5109-c2d7-4307-91f6-27c655d6ab3e".device = "/dev/disk/by-uuid/161f5109-c2d7-4307-91f6-27c655d6ab3e"; + + loader.systemd-boot.enable = true; + loader.efi.canTouchEfiVariables = true; }; nix.settings = { @@ -79,8 +86,6 @@ trusted-public-keys = ["cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="]; }; - boot.initrd.luks.devices."luks-8ffd3129-4908-4209-98c4-4eb68a35c494".device = "/dev/disk/by-uuid/8ffd3129-4908-4209-98c4-4eb68a35c494"; - specialisation.cosmic = lib.mkIf config.pim.cosmic.enable { configuration = { imports = [ diff --git a/machines/sue/facter.json b/machines/blocktech/facter.json similarity index 57% rename from machines/sue/facter.json rename to machines/blocktech/facter.json index 88fbc2b..6fd442c 100644 --- a/machines/sue/facter.json +++ b/machines/blocktech/facter.json @@ -19,12 +19,12 @@ "pnp_id": 0, "lba_support": false, "low_memory_size": 0, - "smbios_version": 772 + "smbios_version": 774 }, "bluetooth": [ { - "index": 57, - "attached_to": 69, + "index": 61, + "attached_to": 60, "class_list": [ "usb", "bluetooth" @@ -48,12 +48,12 @@ "value": 32903 }, "device": { - "hex": "0033", - "value": 51 + "hex": "0036", + "value": 54 }, "model": "Bluetooth Device", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0", - "sysfs_bus_id": "1-10:1.0", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.0", + "sysfs_bus_id": "3-10:1.0", "resources": [ { "type": "baud", @@ -99,11 +99,11 @@ "driver_modules": [ "btusb" ], - "module_alias": "usb:v8087p0033d0000dcE0dsc01dp01icE0isc01ip01in00" + "module_alias": "usb:v8087p0036d0000dcE0dsc01dp01icE0isc01ip01in00" }, { - "index": 68, - "attached_to": 69, + "index": 67, + "attached_to": 60, "class_list": [ "usb", "bluetooth" @@ -127,12 +127,12 @@ "value": 32903 }, "device": { - "hex": "0033", - "value": 51 + "hex": "0036", + "value": 54 }, "model": "Bluetooth Device", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.1", - "sysfs_bus_id": "1-10:1.1", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.1", + "sysfs_bus_id": "3-10:1.1", "resources": [ { "type": "baud", @@ -178,13 +178,13 @@ "driver_modules": [ "btusb" ], - "module_alias": "usb:v8087p0033d0000dcE0dsc01dp01icE0isc01ip01in01" + "module_alias": "usb:v8087p0036d0000dcE0dsc01dp01icE0isc01ip01in01" } ], "bridge": [ { - "index": 19, - "attached_to": 35, + "index": 26, + "attached_to": 0, "class_list": [ "pci", "bridge" @@ -195,8 +195,8 @@ "value": 4 }, "slot": { - "bus": 83, - "number": 1 + "bus": 0, + "number": 28 }, "base_class": { "hex": "0006", @@ -219,50 +219,49 @@ "value": 32902 }, "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "0b26", - "value": 2854 + "hex": "7e38", + "value": 32312 }, "sub_device": { - "hex": "0000", - "value": 0 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0003", - "value": 3 + "hex": "0020", + "value": 32 }, "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:07.1/0000:52:00.0/0000:53:01.0", - "sysfs_bus_id": "0000:53:01.0", - "sysfs_iommu_group_id": 19, + "sysfs_id": "/devices/pci0000:00/0000:00:1c.0", + "sysfs_bus_id": "0000:00:1c.0", + "sysfs_iommu_group_id": 16, "resources": [ { "type": "irq", - "base": 196, + "base": 127, "triggered": 0, "enabled": true } ], "detail": { "function": 0, - "command": 1031, + "command": 1287, "header_type": 1, - "secondary_bus": 85, - "irq": 196, + "secondary_bus": 10, + "irq": 127, "prog_if": 0 }, "driver": "pcieport", "drivers": [ "pcieport" ], - "module_alias": "pci:v00008086d00000B26sv00008086sd00000000bc06sc04i00" + "module_alias": "pci:v00008086d00007E38sv000017AAsd00002234bc06sc04i00" }, { - "index": 20, + "index": 31, "attached_to": 0, "class_list": [ "pci", @@ -293,25 +292,25 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "5187", - "value": 20871 + "hex": "7e02", + "value": 32258 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel ISA bridge", "sysfs_id": "/devices/pci0000:00/0000:00:1f.0", "sysfs_bus_id": "0000:00:1f.0", - "sysfs_iommu_group_id": 16, + "sysfs_iommu_group_id": 18, "detail": { "function": 0, "command": 1031, @@ -320,89 +319,10 @@ "irq": 0, "prog_if": 0 }, - "module_alias": "pci:v00008086d00005187sv00001028sd00000B14bc06sc01i00" + "module_alias": "pci:v00008086d00007E02sv000017AAsd00002234bc06sc01i00" }, { - "index": 21, - "attached_to": 35, - "class_list": [ - "pci", - "bridge" - ], - "bus_type": { - "hex": "0004", - "name": "PCI", - "value": 4 - }, - "slot": { - "bus": 83, - "number": 4 - }, - "base_class": { - "hex": "0006", - "name": "Bridge", - "value": 6 - }, - "sub_class": { - "hex": "0004", - "name": "PCI bridge", - "value": 4 - }, - "pci_interface": { - "hex": "0000", - "name": "Normal decode", - "value": 0 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "device": { - "hex": "0b26", - "value": 2854 - }, - "sub_device": { - "hex": "0000", - "value": 0 - }, - "revision": { - "hex": "0003", - "value": 3 - }, - "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:07.1/0000:52:00.0/0000:53:04.0", - "sysfs_bus_id": "0000:53:04.0", - "sysfs_iommu_group_id": 22, - "resources": [ - { - "type": "irq", - "base": 199, - "triggered": 0, - "enabled": true - } - ], - "detail": { - "function": 0, - "command": 1031, - "header_type": 1, - "secondary_bus": 162, - "irq": 199, - "prog_if": 0 - }, - "driver": "pcieport", - "drivers": [ - "pcieport" - ], - "module_alias": "pci:v00008086d00000B26sv00008086sd00000000bc06sc04i00" - }, - { - "index": 22, + "index": 32, "attached_to": 0, "class_list": [ "pci", @@ -414,8 +334,8 @@ "value": 4 }, "slot": { - "bus": 224, - "number": 6 + "bus": 0, + "number": 1 }, "base_class": { "hex": "0006", @@ -438,49 +358,127 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "464d", - "value": 17997 + "hex": "7ecc", + "value": 32460 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0010", + "value": 16 }, "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:0e.0/pci10000:e0/10000:e0:06.0", - "sysfs_bus_id": "10000:e0:06.0", - "sysfs_iommu_group_id": 9, + "sysfs_id": "/devices/pci0000:00/0000:00:01.0", + "sysfs_bus_id": "0000:00:01.0", + "sysfs_iommu_group_id": 2, "resources": [ { "type": "irq", - "base": 162, + "base": 122, "triggered": 0, "enabled": true } ], "detail": { "function": 0, - "command": 1286, + "command": 1287, "header_type": 1, - "secondary_bus": 225, - "irq": 162, + "secondary_bus": 1, + "irq": 122, "prog_if": 0 }, "driver": "pcieport", "drivers": [ "pcieport" ], - "module_alias": "pci:v00008086d0000464Dsv00001028sd00000B14bc06sc04i00" + "module_alias": "pci:v00008086d00007ECCsv000017AAsd00002234bc06sc04i00" }, { - "index": 27, + "index": 33, + "attached_to": 0, + "class_list": [ + "pci", + "bridge" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 28 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "7e3f", + "value": 32319 + }, + "sub_device": { + "hex": "2234", + "value": 8756 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.7", + "sysfs_bus_id": "0000:00:1c.7", + "sysfs_iommu_group_id": 17, + "resources": [ + { + "type": "irq", + "base": 128, + "triggered": 0, + "enabled": true + } + ], + "detail": { + "function": 7, + "command": 1287, + "header_type": 1, + "secondary_bus": 9, + "irq": 128, + "prog_if": 0 + }, + "driver": "pcieport", + "drivers": [ + "pcieport" + ], + "module_alias": "pci:v00008086d00007E3Fsv000017AAsd00002234bc06sc04i00" + }, + { + "index": 38, "attached_to": 0, "class_list": [ "pci", @@ -516,29 +514,29 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "466e", - "value": 18030 + "hex": "7ec4", + "value": 32452 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0002", + "value": 2 }, "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:07.0", "sysfs_bus_id": "0000:00:07.0", - "sysfs_iommu_group_id": 5, + "sysfs_iommu_group_id": 6, "resources": [ { "type": "irq", - "base": 123, + "base": 125, "triggered": 0, "enabled": true } @@ -547,97 +545,18 @@ "function": 0, "command": 1031, "header_type": 1, - "secondary_bus": 1, - "irq": 123, + "secondary_bus": 32, + "irq": 125, "prog_if": 0 }, "driver": "pcieport", "drivers": [ "pcieport" ], - "module_alias": "pci:v00008086d0000466Esv00001028sd00000B14bc06sc04i00" + "module_alias": "pci:v00008086d00007EC4sv000017AAsd00002234bc06sc04i00" }, { - "index": 29, - "attached_to": 35, - "class_list": [ - "pci", - "bridge" - ], - "bus_type": { - "hex": "0004", - "name": "PCI", - "value": 4 - }, - "slot": { - "bus": 83, - "number": 0 - }, - "base_class": { - "hex": "0006", - "name": "Bridge", - "value": 6 - }, - "sub_class": { - "hex": "0004", - "name": "PCI bridge", - "value": 4 - }, - "pci_interface": { - "hex": "0000", - "name": "Normal decode", - "value": 0 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "device": { - "hex": "0b26", - "value": 2854 - }, - "sub_device": { - "hex": "0000", - "value": 0 - }, - "revision": { - "hex": "0003", - "value": 3 - }, - "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:07.1/0000:52:00.0/0000:53:00.0", - "sysfs_bus_id": "0000:53:00.0", - "sysfs_iommu_group_id": 18, - "resources": [ - { - "type": "irq", - "base": 195, - "triggered": 0, - "enabled": true - } - ], - "detail": { - "function": 0, - "command": 1031, - "header_type": 1, - "secondary_bus": 84, - "irq": 195, - "prog_if": 0 - }, - "driver": "pcieport", - "drivers": [ - "pcieport" - ], - "module_alias": "pci:v00008086d00000B26sv00008086sd00000000bc06sc04i00" - }, - { - "index": 32, + "index": 42, "attached_to": 0, "class_list": [ "pci", @@ -668,25 +587,25 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "4602", - "value": 17922 + "hex": "7d01", + "value": 32001 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0004", + "value": 4 }, "model": "Intel Host bridge", "sysfs_id": "/devices/pci0000:00/0000:00:00.0", "sysfs_bus_id": "0000:00:00.0", - "sysfs_iommu_group_id": 2, + "sysfs_iommu_group_id": 1, "detail": { "function": 0, "command": 6, @@ -695,19 +614,11 @@ "irq": 0, "prog_if": 0 }, - "driver": "igen6_edac", - "driver_module": "igen6_edac", - "drivers": [ - "igen6_edac" - ], - "driver_modules": [ - "igen6_edac" - ], - "module_alias": "pci:v00008086d00004602sv00001028sd00000B14bc06sc00i00" + "module_alias": "pci:v00008086d00007D01sv000017AAsd00002234bc06sc00i00" }, { - "index": 33, - "attached_to": 35, + "index": 43, + "attached_to": 0, "class_list": [ "pci", "bridge" @@ -718,8 +629,8 @@ "value": 4 }, "slot": { - "bus": 83, - "number": 3 + "bus": 0, + "number": 6 }, "base_class": { "hex": "0006", @@ -742,51 +653,50 @@ "value": 32902 }, "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "0b26", - "value": 2854 + "hex": "7ecb", + "value": 32459 }, "sub_device": { - "hex": "0000", - "value": 0 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0003", - "value": 3 + "hex": "0010", + "value": 16 }, "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:07.1/0000:52:00.0/0000:53:03.0", - "sysfs_bus_id": "0000:53:03.0", - "sysfs_iommu_group_id": 21, + "sysfs_id": "/devices/pci0000:00/0000:00:06.2", + "sysfs_bus_id": "0000:00:06.2", + "sysfs_iommu_group_id": 5, "resources": [ { "type": "irq", - "base": 198, + "base": 124, "triggered": 0, "enabled": true } ], "detail": { - "function": 0, - "command": 1031, + "function": 2, + "command": 1287, "header_type": 1, - "secondary_bus": 137, - "irq": 198, + "secondary_bus": 5, + "irq": 124, "prog_if": 0 }, "driver": "pcieport", "drivers": [ "pcieport" ], - "module_alias": "pci:v00008086d00000B26sv00008086sd00000000bc06sc04i00" + "module_alias": "pci:v00008086d00007ECBsv000017AAsd00002234bc06sc04i00" }, { - "index": 35, - "attached_to": 41, + "index": 45, + "attached_to": 0, "class_list": [ "pci", "bridge" @@ -797,8 +707,8 @@ "value": 4 }, "slot": { - "bus": 82, - "number": 0 + "bus": 0, + "number": 6 }, "base_class": { "hex": "0006", @@ -821,129 +731,49 @@ "value": 32902 }, "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "0b26", - "value": 2854 + "hex": "7e4d", + "value": 32333 }, "sub_device": { - "hex": "0000", - "value": 0 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0003", - "value": 3 + "hex": "0020", + "value": 32 }, "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:07.1/0000:52:00.0", - "sysfs_bus_id": "0000:52:00.0", - "sysfs_iommu_group_id": 17, + "sysfs_id": "/devices/pci0000:00/0000:00:06.0", + "sysfs_bus_id": "0000:00:06.0", + "sysfs_iommu_group_id": 4, "resources": [ { "type": "irq", - "base": 16, + "base": 123, "triggered": 0, "enabled": true } ], "detail": { "function": 0, - "command": 7, + "command": 1287, "header_type": 1, - "secondary_bus": 83, - "irq": 16, + "secondary_bus": 4, + "irq": 123, "prog_if": 0 }, "driver": "pcieport", "drivers": [ "pcieport" ], - "module_alias": "pci:v00008086d00000B26sv00008086sd00000000bc06sc04i00" + "module_alias": "pci:v00008086d00007E4Dsv000017AAsd00002234bc06sc04i00" }, { - "index": 40, - "attached_to": 35, - "class_list": [ - "pci", - "bridge" - ], - "bus_type": { - "hex": "0004", - "name": "PCI", - "value": 4 - }, - "slot": { - "bus": 83, - "number": 2 - }, - "base_class": { - "hex": "0006", - "name": "Bridge", - "value": 6 - }, - "sub_class": { - "hex": "0004", - "name": "PCI bridge", - "value": 4 - }, - "pci_interface": { - "hex": "0000", - "name": "Normal decode", - "value": 0 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "device": { - "hex": "0b26", - "value": 2854 - }, - "sub_device": { - "hex": "0000", - "value": 0 - }, - "revision": { - "hex": "0003", - "value": 3 - }, - "model": "Intel PCI bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:07.1/0000:52:00.0/0000:53:02.0", - "sysfs_bus_id": "0000:53:02.0", - "sysfs_iommu_group_id": 20, - "resources": [ - { - "type": "irq", - "base": 197, - "triggered": 0, - "enabled": true - } - ], - "detail": { - "function": 0, - "command": 1031, - "header_type": 1, - "secondary_bus": 111, - "irq": 197, - "prog_if": 0 - }, - "driver": "pcieport", - "drivers": [ - "pcieport" - ], - "module_alias": "pci:v00008086d00000B26sv00008086sd00000000bc06sc04i00" - }, - { - "index": 41, + "index": 48, "attached_to": 0, "class_list": [ "pci", @@ -979,29 +809,29 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "463f", - "value": 17983 + "hex": "7ec5", + "value": 32453 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0002", + "value": 2 }, "model": "Intel PCI bridge", "sysfs_id": "/devices/pci0000:00/0000:00:07.1", "sysfs_bus_id": "0000:00:07.1", - "sysfs_iommu_group_id": 6, + "sysfs_iommu_group_id": 7, "resources": [ { "type": "irq", - "base": 124, + "base": 126, "triggered": 0, "enabled": true } @@ -1010,21 +840,21 @@ "function": 1, "command": 1031, "header_type": 1, - "secondary_bus": 82, - "irq": 124, + "secondary_bus": 80, + "irq": 126, "prog_if": 0 }, "driver": "pcieport", "drivers": [ "pcieport" ], - "module_alias": "pci:v00008086d0000463Fsv00001028sd00000B14bc06sc04i00" + "module_alias": "pci:v00008086d00007EC5sv000017AAsd00002234bc06sc04i00" } ], "camera": [ { - "index": 56, - "attached_to": 61, + "index": 58, + "attached_to": 60, "class_list": [ "camera", "usb" @@ -1044,24 +874,126 @@ "value": 271 }, "vendor": { - "hex": "046d", - "name": "Logitech Inc.", - "value": 1133 + "hex": "30c9", + "name": "8SSC21K64624V1SR49K25RW", + "value": 12489 }, "device": { - "hex": "08e5", - "name": "HD Pro Webcam C920", - "value": 2277 + "hex": "00cd", + "name": "Integrated Camera", + "value": 205 }, "revision": { "hex": "0000", - "name": "0.21", + "name": "10.08", "value": 0 }, - "serial": "604B96BF", - "model": "Logitech HD Pro Webcam C920", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.1/1-6.1.3.1:1.0", - "sysfs_bus_id": "1-6.1.3.1:1.0", + "serial": "0001", + "model": "8SSC21K64624V1SR49K25RW Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-9/3-9:1.1", + "sysfs_bus_id": "3-9:1.1", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "interface_protocol": 1, + "interface_number": 1, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 0 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": [ + "uvcvideo" + ], + "driver_modules": [ + "uvcvideo" + ], + "module_alias": "usb:v30C9p00CDd1008dcEFdsc02dp01ic0Eisc02ip01in01" + }, + { + "index": 63, + "attached_to": 60, + "class_list": [ + "camera", + "usb" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "30c9", + "name": "8SSC21K64624V1SR49K25RW", + "value": 12489 + }, + "device": { + "hex": "00cd", + "name": "Integrated Camera", + "value": 205 + }, + "revision": { + "hex": "0000", + "name": "10.08", + "value": 0 + }, + "serial": "0001", + "model": "8SSC21K64624V1SR49K25RW Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-9/3-9:1.2", + "sysfs_bus_id": "3-9:1.2", "resources": [ { "type": "baud", @@ -1094,7 +1026,109 @@ "name": "audio", "value": 1 }, - "interface_protocol": 0, + "interface_protocol": 1, + "interface_number": 2, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 2 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": [ + "uvcvideo" + ], + "driver_modules": [ + "uvcvideo" + ], + "module_alias": "usb:v30C9p00CDd1008dcEFdsc02dp01ic0Eisc01ip01in02" + }, + { + "index": 65, + "attached_to": 60, + "class_list": [ + "camera", + "usb" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "30c9", + "name": "8SSC21K64624V1SR49K25RW", + "value": 12489 + }, + "device": { + "hex": "00cd", + "name": "Integrated Camera", + "value": 205 + }, + "revision": { + "hex": "0000", + "name": "10.08", + "value": 0 + }, + "serial": "0001", + "model": "8SSC21K64624V1SR49K25RW Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-9/3-9:1.0", + "sysfs_bus_id": "3-9:1.0", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, "interface_number": 0, "interface_alternate_setting": 0, "interface_association": { @@ -1122,11 +1156,11 @@ "driver_modules": [ "uvcvideo" ], - "module_alias": "usb:v046Dp08E5d0021dcEFdsc02dp01ic0Eisc01ip00in00" + "module_alias": "usb:v30C9p00CDd1008dcEFdsc02dp01ic0Eisc01ip01in00" }, { - "index": 67, - "attached_to": 61, + "index": 68, + "attached_to": 60, "class_list": [ "camera", "usb" @@ -1146,24 +1180,24 @@ "value": 271 }, "vendor": { - "hex": "046d", - "name": "Logitech Inc.", - "value": 1133 + "hex": "30c9", + "name": "8SSC21K64624V1SR49K25RW", + "value": 12489 }, "device": { - "hex": "08e5", - "name": "HD Pro Webcam C920", - "value": 2277 + "hex": "00cd", + "name": "Integrated Camera", + "value": 205 }, "revision": { "hex": "0000", - "name": "0.21", + "name": "10.08", "value": 0 }, - "serial": "604B96BF", - "model": "Logitech HD Pro Webcam C920", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.1/1-6.1.3.1:1.1", - "sysfs_bus_id": "1-6.1.3.1:1.1", + "serial": "0001", + "model": "8SSC21K64624V1SR49K25RW Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-9/3-9:1.3", + "sysfs_bus_id": "3-9:1.3", "resources": [ { "type": "baud", @@ -1196,8 +1230,8 @@ "name": "comm", "value": 2 }, - "interface_protocol": 0, - "interface_number": 1, + "interface_protocol": 1, + "interface_number": 3, "interface_alternate_setting": 0, "interface_association": { "function_class": { @@ -1212,7 +1246,7 @@ }, "function_protocol": 0, "interface_count": 2, - "first_interface": 0 + "first_interface": 2 } }, "hotplug": "usb", @@ -1224,7 +1258,7 @@ "driver_modules": [ "uvcvideo" ], - "module_alias": "usb:v046Dp08E5d0021dcEFdsc02dp01ic0Eisc02ip00in01" + "module_alias": "usb:v30C9p00CDd1008dcEFdsc02dp01ic0Eisc02ip01in03" } ], "cpu": [ @@ -1232,7 +1266,7 @@ "architecture": "x86_64", "vendor_name": "GenuineIntel", "family": 6, - "model": 154, + "model": 170, "stepping": 4, "features": [ "fpu", @@ -1295,6 +1329,7 @@ "cx16", "xtpr", "pdcm", + "pcid", "sse4_1", "sse4_2", "x2apic", @@ -1311,6 +1346,7 @@ "3dnowprefetch", "cpuid_fault", "epb", + "intel_ppin", "ssbd", "ibrs", "ibpb", @@ -1363,6 +1399,7 @@ "vaes", "vpclmulqdq", "rdpid", + "bus_lock_detect", "movdiri", "movdir64b", "fsrm", @@ -1378,32 +1415,30 @@ "spectre_v2", "spec_store_bypass", "swapgs", - "eibrs_pbrsb", - "rfds", "bhi" ], - "bogo": 3763.2, - "cache": 12288, - "units": 64, + "bogo": 5990.4, + "cache": 2048, + "units": 128, "physical_id": 0, - "siblings": 12, - "cores": 10, + "siblings": 22, + "cores": 16, "fpu": true, "fpu_exception": true, - "cpuid_level": 32, + "cpuid_level": 35, "write_protect": false, "clflush_size": 64, "cache_alignment": 64, "address_sizes": { - "physical": 39, + "physical": 46, "virtual": 48 } } ], "disk": [ { - "index": 51, - "attached_to": 44, + "index": 56, + "attached_to": 50, "class_list": [ "disk", "block_device", @@ -1429,27 +1464,27 @@ "value": 0 }, "vendor": { - "hex": "1344", - "value": 4932 + "hex": "1e0f", + "value": 7695 }, "sub_vendor": { - "hex": "1344", - "value": 4932 + "hex": "1e0f", + "value": 7695 }, "device": { - "hex": "5414", - "name": "3460 NVMe Micron 512GB", - "value": 21524 + "hex": "0010", + "name": "KXG8AZNV1T02 LA KIOXIA", + "value": 16 }, "sub_device": { - "hex": "1400", - "value": 5120 + "hex": "0001", + "value": 1 }, - "serial": "23133F7DB0F0", - "model": "3460 NVMe Micron 512GB", + "serial": "54BF71ZZFG6P", + "model": "KXG8AZNV1T02 LA KIOXIA", "sysfs_id": "/class/block/nvme0n1", "sysfs_bus_id": "nvme0", - "sysfs_device_link": "/devices/pci0000:00/0000:00:0e.0/pci10000:e0/10000:e0:06.0/10000:e1:00.0/nvme/nvme0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:06.0/0000:04:00.0/nvme/nvme0", "unix_device_name": "/dev/nvme0n1", "unix_device_number": { "type": 98, @@ -1459,17 +1494,16 @@ }, "unix_device_names": [ "/dev/disk/by-diskseq/1", - "/dev/disk/by-id/nvme-3460_NVMe_Micron_512GB_23133F7DB0F0", - "/dev/disk/by-id/nvme-3460_NVMe_Micron_512GB_23133F7DB0F0_1", - "/dev/disk/by-id/nvme-eui.000000000000000100a075233f7db0f0", - "/dev/disk/by-path/pci-0000:00:0e.0-pci-10000:e1:00.0-nvme-1", + "/dev/disk/by-id/nvme-KXG8AZNV1T02_LA_KIOXIA_54BF71ZZFG6P", + "/dev/disk/by-id/nvme-KXG8AZNV1T02_LA_KIOXIA_54BF71ZZFG6P_1", + "/dev/disk/by-id/nvme-eui.8ce38e05011f5d69", + "/dev/disk/by-path/pci-0000:04:00.0-nvme-1", "/dev/nvme0n1" ], - "rom_id": "0x80", "resources": [ { "type": "disk_geo", - "cylinders": 488386, + "cylinders": 976762, "heads": 64, "sectors": 32, "size": 0, @@ -1478,7 +1512,96 @@ { "type": "size", "unit": "sectors", - "value_1": 1000215216, + "value_1": 2000409264, + "value_2": 512 + } + ], + "driver": "nvme", + "driver_module": "nvme", + "drivers": [ + "nvme" + ], + "driver_modules": [ + "nvme" + ] + }, + { + "index": 57, + "attached_to": 47, + "class_list": [ + "disk", + "block_device", + "nvme" + ], + "bus_type": { + "hex": "0096", + "name": "NVME", + "value": 150 + }, + "slot": { + "bus": 0, + "number": 1 + }, + "base_class": { + "hex": "0106", + "name": "Mass Storage Device", + "value": 262 + }, + "sub_class": { + "hex": "0000", + "name": "Disk", + "value": 0 + }, + "vendor": { + "hex": "2646", + "value": 9798 + }, + "sub_vendor": { + "hex": "2646", + "value": 9798 + }, + "device": { + "hex": "5027", + "name": "KINGSTON SNV3S1000G", + "value": 20519 + }, + "sub_device": { + "hex": "5027", + "value": 20519 + }, + "serial": "50026B73831D4D6A", + "model": "KINGSTON SNV3S1000G", + "sysfs_id": "/class/block/nvme1n1", + "sysfs_bus_id": "nvme1", + "sysfs_device_link": "/devices/pci0000:00/0000:00:06.2/0000:05:00.0/nvme/nvme1", + "unix_device_name": "/dev/nvme1n1", + "unix_device_number": { + "type": 98, + "major": 259, + "minor": 3, + "range": 0 + }, + "unix_device_names": [ + "/dev/disk/by-diskseq/2", + "/dev/disk/by-id/nvme-KINGSTON_SNV3S1000G_50026B73831D4D6A", + "/dev/disk/by-id/nvme-KINGSTON_SNV3S1000G_50026B73831D4D6A_1", + "/dev/disk/by-id/nvme-eui.00000000000000000026b73831d4d6a5", + "/dev/disk/by-path/pci-0000:05:00.0-nvme-1", + "/dev/nvme1n1" + ], + "resources": [ + { + "type": "disk_geo", + "cylinders": 953869, + "heads": 64, + "sectors": 32, + "size": 0, + "geo_type": "logical" + }, + { + "type": "size", + "unit": "sectors", + "value_1": 1953525168, "value_2": 512 } ], @@ -1494,7 +1617,107 @@ ], "graphics_card": [ { - "index": 43, + "index": 36, + "attached_to": 32, + "class_list": [ + "graphics_card", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 1, + "number": 0 + }, + "base_class": { + "hex": "0003", + "name": "Display controller", + "value": 3 + }, + "sub_class": { + "hex": "0002", + "name": "3D controller", + "value": 2 + }, + "vendor": { + "hex": "10de", + "name": "nVidia Corporation", + "value": 4318 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "28b9", + "value": 10425 + }, + "sub_device": { + "hex": "2234", + "value": 8756 + }, + "revision": { + "hex": "00a1", + "value": 161 + }, + "model": "nVidia 3D controller", + "sysfs_id": "/devices/pci0000:00/0000:00:01.0/0000:01:00.0", + "sysfs_bus_id": "0000:01:00.0", + "sysfs_iommu_group_id": 19, + "resources": [ + { + "type": "io", + "base": 8192, + "range": 128, + "enabled": true, + "access": "read_write" + }, + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 274877906944, + "range": 8589934592, + "enabled": true, + "access": "read_only", + "prefetch": "no" + }, + { + "type": "mem", + "base": 283467841536, + "range": 33554432, + "enabled": true, + "access": "read_only", + "prefetch": "no" + }, + { + "type": "mem", + "base": 2868903936, + "range": 16777216, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 3, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 0 + }, + "module_alias": "pci:v000010DEd000028B9sv000017AAsd00002234bc03sc02i00" + }, + { + "index": 51, "attached_to": 0, "class_list": [ "graphics_card", @@ -1530,42 +1753,29 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "46aa", - "value": 18090 + "hex": "7d55", + "value": 32085 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "000c", - "value": 12 + "hex": "0008", + "value": 8 }, "model": "Intel VGA compatible controller", "sysfs_id": "/devices/pci0000:00/0000:00:02.0", "sysfs_bus_id": "0000:00:02.0", - "sysfs_iommu_group_id": 1, + "sysfs_iommu_group_id": 0, "resources": [ - { - "type": "io", - "base": 12288, - "range": 64, - "enabled": true, - "access": "read_write" - }, - { - "type": "irq", - "base": 125, - "triggered": 0, - "enabled": true - }, { "type": "mem", - "base": 274877906944, + "base": 283736276992, "range": 268435456, "enabled": true, "access": "read_only", @@ -1573,10 +1783,10 @@ }, { "type": "mem", - "base": 414346903552, + "base": 285212672000, "range": 16777216, "enabled": true, - "access": "read_write", + "access": "read_only", "prefetch": "no" }, { @@ -1590,171 +1800,18 @@ ], "detail": { "function": 0, - "command": 1031, + "command": 7, "header_type": 0, "secondary_bus": 0, - "irq": 125, + "irq": 0, "prog_if": 0 }, - "driver": "i915", - "driver_module": "i915", - "drivers": [ - "i915" - ], - "driver_modules": [ - "i915" - ], - "module_alias": "pci:v00008086d000046AAsv00001028sd00000B14bc03sc00i00", - "label": "Onboard - Video" + "module_alias": "pci:v00008086d00007D55sv000017AAsd00002234bc03sc00i00" } ], "hub": [ { - "index": 52, - "attached_to": 65, - "class_list": [ - "usb", - "hub" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "010a", - "name": "Hub", - "value": 266 - }, - "vendor": { - "hex": "8087", - "name": "Intel Corporation.", - "value": 32903 - }, - "device": { - "hex": "0b40", - "name": "USB3.0 Hub", - "value": 2880 - }, - "revision": { - "hex": "0000", - "name": "12.34", - "value": 0 - }, - "model": "Intel USB3.0 Hub", - "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb4/4-2/4-2:1.0", - "sysfs_bus_id": "4-2:1.0", - "detail": { - "device_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 3, - "interface_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "driver": "hub", - "drivers": [ - "hub" - ], - "module_alias": "usb:v8087p0B40d1234dc09dsc00dp03ic09isc00ip00in00" - }, - { - "index": 54, - "attached_to": 55, - "class_list": [ - "usb", - "hub" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "010a", - "name": "Hub", - "value": 266 - }, - "vendor": { - "hex": "0bda", - "name": "Dell Inc.", - "value": 3034 - }, - "device": { - "hex": "0413", - "name": "Dell dock", - "value": 1043 - }, - "revision": { - "hex": "0000", - "name": "1.22", - "value": 0 - }, - "model": "Dell dock", - "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb4/4-2/4-2.4/4-2.4.3/4-2.4.3:1.0", - "sysfs_bus_id": "4-2.4.3:1.0", - "detail": { - "device_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 3, - "interface_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "driver": "hub", - "drivers": [ - "hub" - ], - "module_alias": "usb:v0BDAp0413d0122dc09dsc00dp03ic09isc00ip00in00" - }, - { - "index": 55, + "index": 60, "attached_to": 52, "class_list": [ "usb", @@ -1774,163 +1831,9 @@ "name": "Hub", "value": 266 }, - "vendor": { - "hex": "0bda", - "name": "Dell Inc.", - "value": 3034 - }, - "device": { - "hex": "0487", - "name": "Dell dock", - "value": 1159 - }, - "revision": { - "hex": "0000", - "name": "1.57", - "value": 0 - }, - "model": "Dell dock", - "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb4/4-2/4-2.4/4-2.4:1.0", - "sysfs_bus_id": "4-2.4:1.0", - "detail": { - "device_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 3, - "interface_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "driver": "hub", - "drivers": [ - "hub" - ], - "module_alias": "usb:v0BDAp0487d0157dc09dsc00dp03ic09isc00ip00in00" - }, - { - "index": 59, - "attached_to": 69, - "class_list": [ - "usb", - "hub" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "010a", - "name": "Hub", - "value": 266 - }, - "vendor": { - "hex": "1d5c", - "name": "Fresco Logic, Inc.", - "value": 7516 - }, - "device": { - "hex": "5801", - "name": "USB2.0 Hub", - "value": 22529 - }, - "revision": { - "hex": "0000", - "name": "1.01", - "value": 0 - }, - "model": "Fresco Logic USB2.0 Hub", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0", - "sysfs_bus_id": "1-6:1.0", - "resources": [ - { - "type": "baud", - "speed": 480000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 2, - "interface_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 2, - "interface_number": 0, - "interface_alternate_setting": 1 - }, - "hotplug": "usb", - "driver": "hub", - "drivers": [ - "hub" - ], - "module_alias": "usb:v1D5Cp5801d0101dc09dsc00dp02ic09isc00ip02in00" - }, - { - "index": 60, - "attached_to": 17, - "class_list": [ - "usb", - "hub" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "010a", - "name": "Hub", - "value": 266 - }, "vendor": { "hex": "1d6b", - "name": "Linux 6.6.60 xhci-hcd", + "name": "Linux 6.6.57 xhci-hcd", "value": 7531 }, "device": { @@ -1943,9 +1846,9 @@ "name": "6.06", "value": 0 }, - "serial": "0000:00:0d.0", - "model": "Linux 6.6.60 xhci-hcd xHCI Host Controller", - "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb3/3-0:1.0", + "serial": "0000:00:14.0", + "model": "Linux 6.6.57 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-0:1.0", "sysfs_bus_id": "3-0:1.0", "resources": [ { @@ -1991,90 +1894,8 @@ "module_alias": "usb:v1D6Bp0002d0606dc09dsc00dp01ic09isc00ip00in00" }, { - "index": 61, - "attached_to": 72, - "class_list": [ - "usb", - "hub" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "010a", - "name": "Hub", - "value": 266 - }, - "vendor": { - "hex": "0bda", - "name": "Dell Inc.", - "value": 3034 - }, - "device": { - "hex": "5413", - "name": "Dell dock", - "value": 21523 - }, - "revision": { - "hex": "0000", - "name": "1.22", - "value": 0 - }, - "model": "Dell dock", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3:1.0", - "sysfs_bus_id": "1-6.1.3:1.0", - "resources": [ - { - "type": "baud", - "speed": 480000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 2, - "interface_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 2, - "interface_number": 0, - "interface_alternate_setting": 1 - }, - "hotplug": "usb", - "driver": "hub", - "drivers": [ - "hub" - ], - "module_alias": "usb:v0BDAp5413d0122dc09dsc00dp02ic09isc00ip02in00" - }, - { - "index": 65, - "attached_to": 17, + "index": 64, + "attached_to": 52, "class_list": [ "usb", "hub" @@ -2095,7 +1916,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.6.60 xhci-hcd", + "name": "Linux 6.6.57 xhci-hcd", "value": 7531 }, "device": { @@ -2108,9 +1929,9 @@ "name": "6.06", "value": 0 }, - "serial": "0000:00:0d.0", - "model": "Linux 6.6.60 xhci-hcd xHCI Host Controller", - "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb4/4-0:1.0", + "serial": "0000:00:14.0", + "model": "Linux 6.6.57 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb4/4-0:1.0", "sysfs_bus_id": "4-0:1.0", "detail": { "device_class": { @@ -2146,8 +1967,8 @@ "module_alias": "usb:v1D6Bp0003d0606dc09dsc00dp03ic09isc00ip00in00" }, { - "index": 69, - "attached_to": 45, + "index": 66, + "attached_to": 29, "class_list": [ "usb", "hub" @@ -2168,7 +1989,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.6.60 xhci-hcd", + "name": "Linux 6.6.57 xhci-hcd", "value": 7531 }, "device": { @@ -2181,9 +2002,9 @@ "name": "6.06", "value": 0 }, - "serial": "0000:00:14.0", - "model": "Linux 6.6.60 xhci-hcd xHCI Host Controller", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-0:1.0", + "serial": "0000:00:0d.0", + "model": "Linux 6.6.57 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb1/1-0:1.0", "sysfs_bus_id": "1-0:1.0", "resources": [ { @@ -2229,90 +2050,8 @@ "module_alias": "usb:v1D6Bp0002d0606dc09dsc00dp01ic09isc00ip00in00" }, { - "index": 72, - "attached_to": 59, - "class_list": [ - "usb", - "hub" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "010a", - "name": "Hub", - "value": 266 - }, - "vendor": { - "hex": "0bda", - "name": "Dell Inc.", - "value": 3034 - }, - "device": { - "hex": "5487", - "name": "Dell dock", - "value": 21639 - }, - "revision": { - "hex": "0000", - "name": "1.57", - "value": 0 - }, - "model": "Dell dock", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1:1.0", - "sysfs_bus_id": "1-6.1:1.0", - "resources": [ - { - "type": "baud", - "speed": 480000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 2, - "interface_class": { - "hex": "0009", - "name": "hub", - "value": 9 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 2, - "interface_number": 0, - "interface_alternate_setting": 1 - }, - "hotplug": "usb", - "driver": "hub", - "drivers": [ - "hub" - ], - "module_alias": "usb:v0BDAp5487d0157dc09dsc00dp02ic09isc00ip02in00" - }, - { - "index": 74, - "attached_to": 45, + "index": 69, + "attached_to": 29, "class_list": [ "usb", "hub" @@ -2333,7 +2072,7 @@ }, "vendor": { "hex": "1d6b", - "name": "Linux 6.6.60 xhci-hcd", + "name": "Linux 6.6.57 xhci-hcd", "value": 7531 }, "device": { @@ -2346,9 +2085,9 @@ "name": "6.06", "value": 0 }, - "serial": "0000:00:14.0", - "model": "Linux 6.6.60 xhci-hcd xHCI Host Controller", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb2/2-0:1.0", + "serial": "0000:00:0d.0", + "model": "Linux 6.6.57 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb2/2-0:1.0", "sysfs_bus_id": "2-0:1.0", "detail": { "device_class": { @@ -2384,120 +2123,9 @@ "module_alias": "usb:v1D6Bp0003d0606dc09dsc00dp03ic09isc00ip00in00" } ], - "keyboard": [ - { - "index": 63, - "attached_to": 61, - "class_list": [ - "keyboard", - "usb" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "0108", - "name": "Keyboard", - "value": 264 - }, - "sub_class": { - "hex": "0000", - "name": "Keyboard", - "value": 0 - }, - "vendor": { - "hex": "413c", - "name": "DELL", - "value": 16700 - }, - "device": { - "hex": "2106", - "name": "Dell QuietKey Keyboard", - "value": 8454 - }, - "revision": { - "hex": "0000", - "name": "1.01", - "value": 0 - }, - "model": "DELL Dell QuietKey Keyboard", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.2/1-6.1.3.2:1.0", - "sysfs_bus_id": "1-6.1.3.2:1.0", - "unix_device_name": "/dev/input/event15", - "unix_device_number": { - "type": 99, - "major": 13, - "minor": 79, - "range": 1 - }, - "unix_device_names": [ - "/dev/input/by-id/usb-DELL_Dell_QuietKey_Keyboard-event-kbd", - "/dev/input/by-path/pci-0000:00:14.0-usb-0:6.1.3.2:1.0-event-kbd", - "/dev/input/by-path/pci-0000:00:14.0-usbv2-0:6.1.3.2:1.0-event-kbd", - "/dev/input/event15" - ], - "resources": [ - { - "type": "baud", - "speed": 1500000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 0, - "interface_class": { - "hex": "0003", - "name": "hid", - "value": 3 - }, - "interface_subclass": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "interface_protocol": 1, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "driver": "usbhid", - "driver_module": "usbhid", - "drivers": [ - "usbhid" - ], - "driver_modules": [ - "usbhid" - ], - "driver_info": { - "type": "keyboard", - "xkb_rules": "xfree86", - "xkb_model": "pc104" - }, - "module_alias": "usb:v413Cp2106d0101dc00dsc00dp00ic03isc01ip01in00" - } - ], "memory": [ { - "index": 15, + "index": 25, "attached_to": 0, "class_list": [ "memory" @@ -2517,423 +2145,59 @@ { "type": "mem", "base": 0, - "range": 16382128128, + "range": 66903273472, "enabled": true, "access": "read_write", "prefetch": "unknown" }, { "type": "phys_mem", - "range": 16106127360 + "range": 68719476736 } ] } ], - "monitor": [ - { - "index": 49, - "attached_to": 43, - "class_list": [ - "monitor" - ], - "base_class": { - "hex": "0100", - "name": "Monitor", - "value": 256 - }, - "sub_class": { - "hex": "0002", - "name": "LCD Monitor", - "value": 2 - }, - "vendor": { - "hex": "4d10", - "name": "G59J8 LQ134R1", - "value": 19728 - }, - "device": { - "hex": "1551", - "value": 5457 - }, - "serial": "0", - "model": "G59J8 LQ134R1 LCD Monitor", - "resources": [ - { - "type": "monitor", - "width": 3840, - "height": 2400, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "size", - "unit": "mm", - "value_1": 288, - "value_2": 180 - } - ], - "detail": { - "manufacture_year": 2021, - "manufacture_week": 49, - "vertical_sync": { - "min": 48, - "max": 60 - }, - "horizontal_sync": { - "min": 148, - "max": 148 - }, - "horizontal_sync_timings": { - "disp": 3840, - "sync_start": 3888, - "sync_end": 3920, - "total": 4000 - }, - "vertical_sync_timings": { - "disp": 2400, - "sync_start": 2403, - "sync_end": 2409, - "total": 2469 - }, - "clock": 592500, - "width": 3840, - "height": 2400, - "width_millimetres": 288, - "height_millimetres": 180, - "horizontal_flag": 45, - "vertical_flag": 45, - "vendor": "G59J8 LQ134R1", - "name": "" - }, - "driver_info": { - "type": "display", - "width": 3840, - "height": 2400, - "vertical_sync": { - "min": 48, - "max": 60 - }, - "horizontal_sync": { - "min": 148, - "max": 148 - }, - "bandwidth": 0, - "horizontal_sync_timings": { - "disp": 3840, - "sync_start": 3888, - "sync_end": 3920, - "total": 4000 - }, - "vertical_sync_timings": { - "disp": 2400, - "sync_start": 2403, - "sync_end": 2409, - "total": 2469 - }, - "horizontal_flag": 45, - "vertical_flag": 45 - } - }, - { - "index": 50, - "attached_to": 43, - "class_list": [ - "monitor" - ], - "base_class": { - "hex": "0100", - "name": "Monitor", - "value": 256 - }, - "sub_class": { - "hex": "0002", - "name": "LCD Monitor", - "value": 2 - }, - "vendor": { - "hex": "26cd", - "name": "IIYAMA", - "value": 9933 - }, - "device": { - "hex": "6656", - "name": "PL2792QN", - "value": 26198 - }, - "serial": "1179214201744", - "model": "IIYAMA PL2792QN", - "resources": [ - { - "type": "monitor", - "width": 1024, - "height": 768, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "monitor", - "width": 1024, - "height": 768, - "vertical_frequency": 75, - "interlaced": false - }, - { - "type": "monitor", - "width": 1280, - "height": 1024, - "vertical_frequency": 75, - "interlaced": false - }, - { - "type": "monitor", - "width": 1600, - "height": 1200, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "monitor", - "width": 1600, - "height": 900, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "monitor", - "width": 2560, - "height": 1440, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "monitor", - "width": 640, - "height": 480, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "monitor", - "width": 640, - "height": 480, - "vertical_frequency": 75, - "interlaced": false - }, - { - "type": "monitor", - "width": 800, - "height": 600, - "vertical_frequency": 60, - "interlaced": false - }, - { - "type": "monitor", - "width": 800, - "height": 600, - "vertical_frequency": 75, - "interlaced": false - }, - { - "type": "size", - "unit": "mm", - "value_1": 597, - "value_2": 336 - } - ], - "detail": { - "manufacture_year": 2021, - "manufacture_week": 42, - "vertical_sync": { - "min": 49, - "max": 76 - }, - "horizontal_sync": { - "min": 30, - "max": 120 - }, - "horizontal_sync_timings": { - "disp": 2560, - "sync_start": 2608, - "sync_end": 2640, - "total": 2720 - }, - "vertical_sync_timings": { - "disp": 1440, - "sync_start": 1443, - "sync_end": 1448, - "total": 1481 - }, - "clock": 241500, - "width": 2560, - "height": 1440, - "width_millimetres": 597, - "height_millimetres": 336, - "horizontal_flag": 45, - "vertical_flag": 43, - "vendor": "", - "name": "PL2792QN" - }, - "driver_info": { - "type": "display", - "width": 2560, - "height": 1440, - "vertical_sync": { - "min": 49, - "max": 76 - }, - "horizontal_sync": { - "min": 30, - "max": 120 - }, - "bandwidth": 0, - "horizontal_sync_timings": { - "disp": 2560, - "sync_start": 2608, - "sync_end": 2640, - "total": 2720 - }, - "vertical_sync_timings": { - "disp": 1440, - "sync_start": 1443, - "sync_end": 1448, - "total": 1481 - }, - "horizontal_flag": 45, - "vertical_flag": 43 - } - } - ], "mouse": [ { - "index": 70, - "attached_to": 61, - "class_list": [ - "mouse", - "usb" - ], + "index": 72, + "attached_to": 0, "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 + "hex": "0081", + "name": "serial", + "value": 129 }, "base_class": { - "hex": "0105", - "name": "Mouse", - "value": 261 + "hex": "0118", + "name": "touchpad", + "value": 280 }, "sub_class": { - "hex": "0003", - "name": "USB Mouse", - "value": 3 + "hex": "0001", + "name": "bus", + "value": 1 }, "vendor": { - "hex": "046d", - "name": "Logitech Inc.", - "value": 1133 + "hex": "2c2f", + "value": 11311 }, "device": { - "hex": "c077", - "name": "USB Optical Mouse", - "value": 49271 - }, - "revision": { - "hex": "0000", - "name": "72.00", - "value": 0 - }, - "compat_vendor": "Unknown", - "compat_device": "Generic USB Mouse", - "model": "Logitech USB Optical Mouse", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.3/1-6.1.3.3:1.0", - "sysfs_bus_id": "1-6.1.3.3:1.0", - "unix_device_name": "/dev/input/mice", - "unix_device_number": { - "type": 99, - "major": 13, - "minor": 63, - "range": 1 + "hex": "002d", + "value": 45 }, + "sysfs_id": "/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0002/input/input19", "unix_device_names": [ - "/dev/input/mice" - ], - "unix_device_name2": "/dev/input/mouse4", - "unix_device_number2": { - "type": 99, - "major": 13, - "minor": 36, - "range": 1 - }, - "resources": [ - { - "type": "baud", - "speed": 1500000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 0, - "interface_class": { - "hex": "0003", - "name": "hid", - "value": 3 - }, - "interface_subclass": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "interface_protocol": 2, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "driver": "usbhid", - "driver_module": "usbhid", - "drivers": [ - "usbhid" - ], - "driver_modules": [ - "usbhid" - ], - "driver_info": { - "type": "mouse", - "db_entry_0": [ - "explorerps/2", - "exps2" - ], - "xf86": "explorerps/2", - "gpm": "exps2", - "buttons": -1, - "wheels": -1 - }, - "module_alias": "usb:v046DpC077d7200dc00dsc00dp00ic03isc01ip02in00" + "/dev/input/event8", + "/dev/input/ + handler" + ] } ], "network_controller": [ { - "index": 24, - "attached_to": 0, + "index": 28, + "attached_to": 33, "class_list": [ "network_controller", - "pci", - "wlan_card" + "pci" ], "bus_type": { "hex": "0004", @@ -2941,188 +2205,7 @@ "value": 4 }, "slot": { - "bus": 0, - "number": 20 - }, - "base_class": { - "hex": "0002", - "name": "Network controller", - "value": 2 - }, - "sub_class": { - "hex": "0082", - "name": "WLAN controller", - "value": 130 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "sub_vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "device": { - "hex": "51f0", - "value": 20976 - }, - "sub_device": { - "hex": "4090", - "value": 16528 - }, - "revision": { - "hex": "0001", - "value": 1 - }, - "model": "Intel WLAN controller", - "sysfs_id": "/devices/pci0000:00/0000:00:14.3", - "sysfs_bus_id": "0000:00:14.3", - "sysfs_iommu_group_id": 12, - "unix_device_name": "wlp0s20f3", - "unix_device_names": [ - "wlp0s20f3" - ], - "resources": [ - { - "type": "hwaddr", - "address": 54 - }, - { - "type": "irq", - "base": 16, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 414366384128, - "range": 16384, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, - { - "type": "phwaddr", - "address": 54 - }, - { - "type": "wlan", - "channels": [ - "1", - "2", - "3", - "4", - "5", - "6", - "7", - "8", - "9", - "10", - "11", - "12", - "13", - "36", - "40", - "44", - "48", - "52", - "56", - "60", - "64", - "100", - "104", - "108", - "112", - "116", - "120", - "124", - "128", - "132", - "136", - "140" - ], - "frequencies": [ - "2.412", - "2.417", - "2.422", - "2.427", - "2.432", - "2.437", - "2.442", - "2.447", - "2.452", - "2.457", - "2.462", - "2.467", - "2.472", - "5.18", - "5.2", - "5.22", - "5.24", - "5.26", - "5.28", - "5.3", - "5.32", - "5.5", - "5.52", - "5.54", - "5.56", - "5.58", - "5.6", - "5.62", - "5.64", - "5.66", - "5.68", - "5.7" - ], - "auth_modes": [ - "open", - "sharedkey", - "wpa-psk", - "wpa-eap" - ], - "enc_modes": [ - "WEP40", - "WEP104", - "TKIP", - "CCMP" - ] - } - ], - "detail": { - "function": 3, - "command": 1030, - "header_type": 0, - "secondary_bus": 0, - "irq": 16, - "prog_if": 0 - }, - "driver": "iwlwifi", - "driver_module": "iwlwifi", - "drivers": [ - "iwlwifi" - ], - "driver_modules": [ - "iwlwifi" - ], - "module_alias": "pci:v00008086d000051F0sv00008086sd00004090bc02sc80i00" - }, - { - "index": 62, - "attached_to": 55, - "class_list": [ - "network_controller", - "usb" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, + "bus": 9, "number": 0 }, "base_class": { @@ -3136,121 +2219,81 @@ "value": 0 }, "vendor": { - "hex": "0bda", - "name": "Realtek", - "value": 3034 + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 }, "device": { - "hex": "8153", - "name": "USB 10/100/1000 LAN", - "value": 33107 + "hex": "272b", + "value": 10027 + }, + "sub_device": { + "hex": "00f0", + "value": 240 }, "revision": { - "hex": "0000", - "name": "31.11", - "value": 0 + "hex": "001a", + "value": 26 }, - "serial": "1113000001", - "model": "Realtek USB 10/100/1000 LAN", - "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb4/4-2/4-2.4/4-2.4.4/4-2.4.4:1.0", - "sysfs_bus_id": "4-2.4.4:1.0", - "unix_device_name": "enp0s13f0u2u4u4", + "model": "Intel Ethernet controller", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.7/0000:09:00.0", + "sysfs_bus_id": "0000:09:00.0", + "sysfs_iommu_group_id": 23, + "unix_device_name": "wlp9s0f0", "unix_device_names": [ - "enp0s13f0u2u4u4" + "wlp9s0f0" ], "resources": [ { "type": "hwaddr", - "address": 97 + "address": 52 + }, + { + "type": "irq", + "base": 19, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 2885681152, + "range": 16384, + "enabled": true, + "access": "read_write", + "prefetch": "no" }, { "type": "phwaddr", - "address": 97 + "address": 52 } ], "detail": { - "device_class": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 0, - "interface_class": { - "hex": "00ff", - "name": "vendor_spec", - "value": 255 - }, - "interface_subclass": { - "hex": "00ff", - "name": "vendor_spec", - "value": 255 - }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 19, + "prog_if": 0 }, - "hotplug": "usb", - "driver": "r8152", - "driver_module": "r8152", + "driver": "iwlwifi", + "driver_module": "iwlwifi", "drivers": [ - "r8152" + "iwlwifi" ], "driver_modules": [ - "r8152" + "iwlwifi" ], - "module_alias": "usb:v0BDAp8153d3111dc00dsc00dp00icFFiscFFip00in00" + "module_alias": "pci:v00008086d0000272Bsv00008086sd000000F0bc02sc80i00" } ], "network_interface": [ { - "index": 77, - "attached_to": 62, - "class_list": [ - "network_interface" - ], - "base_class": { - "hex": "0107", - "name": "Network Interface", - "value": 263 - }, - "sub_class": { - "hex": "0001", - "name": "Ethernet", - "value": 1 - }, - "model": "Ethernet network interface", - "sysfs_id": "/class/net/enp0s13f0u2u4u4", - "sysfs_device_link": "/devices/pci0000:00/0000:00:0d.0/usb4/4-2/4-2.4/4-2.4.4/4-2.4.4:1.0", - "unix_device_name": "enp0s13f0u2u4u4", - "unix_device_names": [ - "enp0s13f0u2u4u4" - ], - "resources": [ - { - "type": "hwaddr", - "address": 97 - }, - { - "type": "phwaddr", - "address": 97 - } - ], - "driver": "r8152", - "driver_module": "r8152", - "drivers": [ - "r8152" - ], - "driver_modules": [ - "r8152" - ] - }, - { - "index": 78, + "index": 70, "attached_to": 0, "class_list": [ "network_interface" @@ -3273,8 +2316,8 @@ ] }, { - "index": 79, - "attached_to": 24, + "index": 71, + "attached_to": 28, "class_list": [ "network_interface" ], @@ -3289,20 +2332,20 @@ "value": 1 }, "model": "Ethernet network interface", - "sysfs_id": "/class/net/wlp0s20f3", - "sysfs_device_link": "/devices/pci0000:00/0000:00:14.3", - "unix_device_name": "wlp0s20f3", + "sysfs_id": "/class/net/wlp9s0f0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:1c.7/0000:09:00.0", + "unix_device_name": "wlp9s0f0", "unix_device_names": [ - "wlp0s20f3" + "wlp9s0f0" ], "resources": [ { "type": "hwaddr", - "address": 54 + "address": 52 }, { "type": "phwaddr", - "address": 54 + "address": 52 } ], "driver": "iwlwifi", @@ -3317,7 +2360,7 @@ ], "pci": [ { - "index": 16, + "index": 27, "attached_to": 0, "class_list": [ "pci", @@ -3348,25 +2391,25 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "464f", - "value": 17999 + "hex": "7e4c", + "value": 32332 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0020", + "value": 32 }, "model": "Intel System peripheral", "sysfs_id": "/devices/pci0000:00/0000:00:08.0", "sysfs_bus_id": "0000:00:08.0", - "sysfs_iommu_group_id": 7, + "sysfs_iommu_group_id": 8, "resources": [ { "type": "irq", @@ -3376,7 +2419,7 @@ }, { "type": "mem", - "base": 414366453760, + "base": 285242884096, "range": 4096, "enabled": false, "access": "read_write", @@ -3391,10 +2434,10 @@ "irq": 255, "prog_if": 0 }, - "module_alias": "pci:v00008086d0000464Fsv00001028sd00000B14bc08sc80i00" + "module_alias": "pci:v00008086d00007E4Csv000017AAsd00002234bc08sc80i00" }, { - "index": 18, + "index": 30, "attached_to": 0, "class_list": [ "pci", @@ -3424,20 +2467,20 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51e9", - "value": 20969 + "hex": "7e79", + "value": 32377 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel Serial bus controller", "sysfs_id": "/devices/pci0000:00/0000:00:15.1", @@ -3446,13 +2489,13 @@ "resources": [ { "type": "irq", - "base": 40, + "base": 33, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 275263787008, + "base": 283618840576, "range": 4096, "enabled": true, "access": "read_write", @@ -3464,7 +2507,7 @@ "command": 6, "header_type": 0, "secondary_bus": 0, - "irq": 40, + "irq": 33, "prog_if": 0 }, "driver": "intel-lpss", @@ -3475,10 +2518,10 @@ "driver_modules": [ "intel_lpss_pci" ], - "module_alias": "pci:v00008086d000051E9sv00001028sd00000B14bc0Csc80i00" + "module_alias": "pci:v00008086d00007E79sv000017AAsd00002234bc0Csc80i00" }, { - "index": 23, + "index": 34, "attached_to": 0, "class_list": [ "pci", @@ -3509,20 +2552,20 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "461d", - "value": 17949 + "hex": "7d03", + "value": 32003 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0004", + "value": 4 }, "model": "Intel Signal processing controller", "sysfs_id": "/devices/pci0000:00/0000:00:04.0", @@ -3531,13 +2574,13 @@ "resources": [ { "type": "irq", - "base": 175, + "base": 196, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 414366040064, + "base": 285242556416, "range": 131072, "enabled": true, "access": "read_write", @@ -3549,7 +2592,7 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 175, + "irq": 196, "prog_if": 0 }, "driver": "proc_thermal_pci", @@ -3560,10 +2603,10 @@ "driver_modules": [ "processor_thermal_device_pci" ], - "module_alias": "pci:v00008086d0000461Dsv00001028sd00000B14bc11sc80i00" + "module_alias": "pci:v00008086d00007D03sv000017AAsd00002234bc11sc80i00" }, { - "index": 25, + "index": 35, "attached_to": 0, "class_list": [ "pci", @@ -3594,20 +2637,20 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51e0", - "value": 20960 + "hex": "7e70", + "value": 32368 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel Communication controller", "sysfs_id": "/devices/pci0000:00/0000:00:16.0", @@ -3616,13 +2659,13 @@ "resources": [ { "type": "irq", - "base": 163, + "base": 194, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 414366433280, + "base": 285242859520, "range": 4096, "enabled": true, "access": "read_write", @@ -3634,7 +2677,7 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 163, + "irq": 194, "prog_if": 0 }, "driver": "mei_me", @@ -3645,11 +2688,11 @@ "driver_modules": [ "mei_me" ], - "module_alias": "pci:v00008086d000051E0sv00001028sd00000B14bc07sc80i00" + "module_alias": "pci:v00008086d00007E70sv000017AAsd00002234bc07sc80i00" }, { - "index": 26, - "attached_to": 0, + "index": 37, + "attached_to": 26, "class_list": [ "pci", "unknown" @@ -3660,53 +2703,48 @@ "value": 4 }, "slot": { - "bus": 0, - "number": 30 + "bus": 10, + "number": 0 }, "base_class": { - "hex": "000c", - "name": "Serial bus controller", - "value": 12 - }, - "sub_class": { - "hex": "0080", - "value": 128 + "hex": "00ff", + "name": "Unclassified device", + "value": 255 }, "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 + "hex": "10ec", + "value": 4332 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51aa", - "value": 20906 + "hex": "5261", + "value": 21089 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { "hex": "0001", "value": 1 }, - "model": "Intel Serial bus controller", - "sysfs_id": "/devices/pci0000:00/0000:00:1e.2", - "sysfs_bus_id": "0000:00:1e.2", - "sysfs_iommu_group_id": 15, + "model": "Unclassified device", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.0/0000:0a:00.0", + "sysfs_bus_id": "0000:0a:00.0", + "sysfs_iommu_group_id": 22, "resources": [ { "type": "irq", - "base": 36, + "base": 129, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 275263795200, + "base": 2886729728, "range": 4096, "enabled": true, "access": "read_write", @@ -3714,25 +2752,25 @@ } ], "detail": { - "function": 2, - "command": 6, + "function": 0, + "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 36, + "irq": 129, "prog_if": 0 }, - "driver": "intel-lpss", - "driver_module": "intel_lpss_pci", + "driver": "rtsx_pci", + "driver_module": "rtsx_pci", "drivers": [ - "intel-lpss" + "rtsx_pci" ], "driver_modules": [ - "intel_lpss_pci" + "rtsx_pci" ], - "module_alias": "pci:v00008086d000051AAsv00001028sd00000B14bc0Csc80i00" + "module_alias": "pci:v000010ECd00005261sv000017AAsd00002234bcFFsc00i00" }, { - "index": 28, + "index": 39, "attached_to": 0, "class_list": [ "pci", @@ -3762,29 +2800,29 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51a4", - "value": 20900 + "hex": "7e23", + "value": 32291 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel Serial bus controller", "sysfs_id": "/devices/pci0000:00/0000:00:1f.5", "sysfs_bus_id": "0000:00:1f.5", - "sysfs_iommu_group_id": 16, + "sysfs_iommu_group_id": 18, "resources": [ { "type": "mem", - "base": 1887436800, + "base": 2619342848, "range": 4096, "enabled": true, "access": "read_write", @@ -3807,10 +2845,10 @@ "driver_modules": [ "spi_intel_pci" ], - "module_alias": "pci:v00008086d000051A4sv00001028sd00000B14bc0Csc80i00" + "module_alias": "pci:v00008086d00007E23sv000017AAsd00002234bc0Csc80i00" }, { - "index": 30, + "index": 40, "attached_to": 0, "class_list": [ "pci", @@ -3823,16 +2861,15 @@ }, "slot": { "bus": 0, - "number": 30 + "number": 25 }, "base_class": { - "hex": "0007", - "name": "Communication controller", - "value": 7 + "hex": "000c", + "name": "Serial bus controller", + "value": 12 }, "sub_class": { "hex": "0080", - "name": "Communication controller", "value": 128 }, "vendor": { @@ -3841,35 +2878,35 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51a8", - "value": 20904 + "hex": "7e50", + "value": 32336 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, - "model": "Intel Communication controller", - "sysfs_id": "/devices/pci0000:00/0000:00:1e.0", - "sysfs_bus_id": "0000:00:1e.0", + "model": "Intel Serial bus controller", + "sysfs_id": "/devices/pci0000:00/0000:00:19.0", + "sysfs_bus_id": "0000:00:19.0", "sysfs_iommu_group_id": 15, "resources": [ { "type": "irq", - "base": 16, + "base": 29, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 275263791104, + "base": 283618844672, "range": 4096, "enabled": true, "access": "read_write", @@ -3881,7 +2918,7 @@ "command": 6, "header_type": 0, "secondary_bus": 0, - "irq": 16, + "irq": 29, "prog_if": 0 }, "driver": "intel-lpss", @@ -3892,100 +2929,10 @@ "driver_modules": [ "intel_lpss_pci" ], - "module_alias": "pci:v00008086d000051A8sv00001028sd00000B14bc07sc80i00" + "module_alias": "pci:v00008086d00007E50sv000017AAsd00002234bc0Csc80i00" }, { - "index": 34, - "attached_to": 0, - "class_list": [ - "pci", - "unknown" - ], - "bus_type": { - "hex": "0004", - "name": "PCI", - "value": 4 - }, - "slot": { - "bus": 0, - "number": 18 - }, - "base_class": { - "hex": "0007", - "name": "Communication controller", - "value": 7 - }, - "sub_class": { - "hex": "0000", - "name": "Serial controller", - "value": 0 - }, - "pci_interface": { - "hex": "0000", - "name": "8250", - "value": 0 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "sub_vendor": { - "hex": "1028", - "value": 4136 - }, - "device": { - "hex": "51fc", - "value": 20988 - }, - "sub_device": { - "hex": "0b14", - "value": 2836 - }, - "revision": { - "hex": "0001", - "value": 1 - }, - "model": "Intel Serial controller", - "sysfs_id": "/devices/pci0000:00/0000:00:12.0", - "sysfs_bus_id": "0000:00:12.0", - "sysfs_iommu_group_id": 10, - "resources": [ - { - "type": "irq", - "base": 26, - "triggered": 0, - "enabled": true - }, - { - "type": "mem", - "base": 414366236672, - "range": 65536, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], - "detail": { - "function": 0, - "command": 6, - "header_type": 0, - "secondary_bus": 0, - "irq": 26, - "prog_if": 0 - }, - "driver": "intel_ish_ipc", - "driver_module": "intel_ish_ipc", - "drivers": [ - "intel_ish_ipc" - ], - "driver_modules": [ - "intel_ish_ipc" - ], - "module_alias": "pci:v00008086d000051FCsv00001028sd00000B14bc07sc00i00" - }, - { - "index": 36, + "index": 44, "attached_to": 0, "class_list": [ "pci", @@ -4015,20 +2962,20 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51e8", - "value": 20968 + "hex": "7e78", + "value": 32376 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel Serial bus controller", "sysfs_id": "/devices/pci0000:00/0000:00:15.0", @@ -4037,13 +2984,13 @@ "resources": [ { "type": "irq", - "base": 27, + "base": 32, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 275263782912, + "base": 283618836480, "range": 4096, "enabled": true, "access": "read_write", @@ -4055,7 +3002,7 @@ "command": 6, "header_type": 0, "secondary_bus": 0, - "irq": 27, + "irq": 32, "prog_if": 0 }, "driver": "intel-lpss", @@ -4066,10 +3013,10 @@ "driver_modules": [ "intel_lpss_pci" ], - "module_alias": "pci:v00008086d000051E8sv00001028sd00000B14bc0Csc80i00" + "module_alias": "pci:v00008086d00007E78sv000017AAsd00002234bc0Csc80i00" }, { - "index": 37, + "index": 46, "attached_to": 0, "class_list": [ "pci", @@ -4082,65 +3029,11 @@ }, "slot": { "bus": 0, - "number": 6 + "number": 11 }, "base_class": { - "hex": "0008", - "name": "Generic system peripheral", - "value": 8 - }, - "sub_class": { - "hex": "0080", - "name": "System peripheral", - "value": 128 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "device": { - "hex": "09ab", - "value": 2475 - }, - "model": "Intel System peripheral", - "sysfs_id": "/devices/pci0000:00/0000:00:06.0", - "sysfs_bus_id": "0000:00:06.0", - "sysfs_iommu_group_id": 4, - "detail": { - "function": 0, - "command": 0, - "header_type": 0, - "secondary_bus": 0, - "irq": 0, - "prog_if": 0 - }, - "module_alias": "pci:v00008086d000009ABsv00000000sd00000000bc08sc80i00" - }, - { - "index": 39, - "attached_to": 0, - "class_list": [ - "pci", - "unknown" - ], - "bus_type": { - "hex": "0004", - "name": "PCI", - "value": 4 - }, - "slot": { - "bus": 0, - "number": 30 - }, - "base_class": { - "hex": "000c", - "name": "Serial bus controller", - "value": 12 - }, - "sub_class": { - "hex": "0080", - "value": 128 + "hex": "0012", + "value": 18 }, "vendor": { "hex": "8086", @@ -4148,35 +3041,37 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51ab", - "value": 20907 + "hex": "7d1d", + "value": 32029 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0004", + "value": 4 }, - "model": "Intel Serial bus controller", - "sysfs_id": "/devices/pci0000:00/0000:00:1e.3", - "sysfs_bus_id": "0000:00:1e.3", - "sysfs_iommu_group_id": 15, + "model": "unknown unknown", + "sysfs_id": "/devices/pci0000:00/0000:00:0b.0", + "sysfs_bus_id": "0000:00:0b.0", + "sysfs_iommu_group_id": 10, "resources": [ { - "type": "irq", - "base": 37, - "triggered": 0, - "enabled": true + "type": "mem", + "base": 285078454272, + "range": 134217728, + "enabled": true, + "access": "read_write", + "prefetch": "no" }, { "type": "mem", - "base": 275263799296, + "base": 285242880000, "range": 4096, "enabled": true, "access": "read_write", @@ -4184,25 +3079,17 @@ } ], "detail": { - "function": 3, - "command": 6, + "function": 0, + "command": 2, "header_type": 0, "secondary_bus": 0, - "irq": 37, + "irq": 0, "prog_if": 0 }, - "driver": "intel-lpss", - "driver_module": "intel_lpss_pci", - "drivers": [ - "intel-lpss" - ], - "driver_modules": [ - "intel_lpss_pci" - ], - "module_alias": "pci:v00008086d000051ABsv00001028sd00000B14bc0Csc80i00" + "module_alias": "pci:v00008086d00007D1Dsv000017AAsd00002234bc12sc00i00" }, { - "index": 42, + "index": 49, "attached_to": 0, "class_list": [ "pci", @@ -4233,55 +3120,55 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51ef", - "value": 20975 + "hex": "7e7f", + "value": 32383 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel RAM memory", "sysfs_id": "/devices/pci0000:00/0000:00:14.2", "sysfs_bus_id": "0000:00:14.2", - "sysfs_iommu_group_id": 11, + "sysfs_iommu_group_id": 12, "resources": [ { "type": "mem", - "base": 414366400512, + "base": 285242834944, "range": 16384, - "enabled": false, + "enabled": true, "access": "read_write", "prefetch": "no" }, { "type": "mem", - "base": 414366445568, + "base": 285242871808, "range": 4096, - "enabled": false, + "enabled": true, "access": "read_write", "prefetch": "no" } ], "detail": { "function": 2, - "command": 0, + "command": 2, "header_type": 0, "secondary_bus": 0, "irq": 0, "prog_if": 0 }, - "module_alias": "pci:v00008086d000051EFsv00001028sd00000B14bc05sc00i00" + "module_alias": "pci:v00008086d00007E7Fsv000017AAsd00002234bc05sc00i00" }, { - "index": 46, + "index": 53, "attached_to": 0, "class_list": [ "pci", @@ -4312,25 +3199,25 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51a3", - "value": 20899 + "hex": "7e22", + "value": 32290 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel SMBus", "sysfs_id": "/devices/pci0000:00/0000:00:1f.4", "sysfs_bus_id": "0000:00:1f.4", - "sysfs_iommu_group_id": 16, + "sysfs_iommu_group_id": 18, "resources": [ { "type": "io", @@ -4341,13 +3228,13 @@ }, { "type": "irq", - "base": 16, + "base": 18, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 414366416896, + "base": 285242851328, "range": 256, "enabled": true, "access": "read_write", @@ -4359,7 +3246,7 @@ "command": 3, "header_type": 0, "secondary_bus": 0, - "irq": 16, + "irq": 18, "prog_if": 0 }, "driver": "i801_smbus", @@ -4370,10 +3257,10 @@ "driver_modules": [ "i2c_i801" ], - "module_alias": "pci:v00008086d000051A3sv00001028sd00000B14bc0Csc05i00" + "module_alias": "pci:v00008086d00007E22sv000017AAsd00002234bc0Csc05i00" }, { - "index": 47, + "index": 55, "attached_to": 0, "class_list": [ "pci", @@ -4386,16 +3273,16 @@ }, "slot": { "bus": 0, - "number": 5 + "number": 10 }, "base_class": { - "hex": "0004", - "name": "Multimedia controller", - "value": 4 + "hex": "0011", + "name": "Signal processing controller", + "value": 17 }, "sub_class": { "hex": "0080", - "name": "Multimedia controller", + "name": "Signal processing controller", "value": 128 }, "vendor": { @@ -4404,55 +3291,57 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "465d", - "value": 18013 + "hex": "7d0d", + "value": 32013 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0001", + "value": 1 }, - "model": "Intel Multimedia controller", - "sysfs_id": "/devices/pci0000:00/0000:00:05.0", - "sysfs_bus_id": "0000:00:05.0", - "sysfs_iommu_group_id": 0, + "model": "Intel Signal processing controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0a.0", + "sysfs_bus_id": "0000:00:0a.0", + "sysfs_iommu_group_id": 9, "resources": [ - { - "type": "irq", - "base": 255, - "triggered": 0, - "enabled": true - }, { "type": "mem", - "base": 414330126336, - "range": 16777216, - "enabled": false, + "base": 285242294272, + "range": 262144, + "enabled": true, "access": "read_write", "prefetch": "no" } ], "detail": { "function": 0, - "command": 0, + "command": 2, "header_type": 0, "secondary_bus": 0, - "irq": 255, + "irq": 0, "prog_if": 0 }, - "module_alias": "pci:v00008086d0000465Dsv00001028sd00000B14bc04sc80i00" + "driver": "intel_vsec", + "driver_module": "intel_vsec", + "drivers": [ + "intel_vsec" + ], + "driver_modules": [ + "intel_vsec" + ], + "module_alias": "pci:v00008086d00007D0Dsv000017AAsd00002234bc11sc80i00" } ], "sound": [ { - "index": 31, + "index": 41, "attached_to": 0, "class_list": [ "sound", @@ -4473,9 +3362,12 @@ "value": 4 }, "sub_class": { - "hex": "0001", - "name": "Multimedia audio controller", - "value": 1 + "hex": "0003", + "value": 3 + }, + "pci_interface": { + "hex": "0080", + "value": 128 }, "vendor": { "hex": "8086", @@ -4483,43 +3375,43 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51cc", - "value": 20940 + "hex": "7e28", + "value": 32296 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, - "model": "Intel Multimedia audio controller", + "model": "Intel Multimedia controller", "sysfs_id": "/devices/pci0000:00/0000:00:1f.3", "sysfs_bus_id": "0000:00:1f.3", - "sysfs_iommu_group_id": 16, + "sysfs_iommu_group_id": 18, "resources": [ { "type": "irq", - "base": 190, + "base": 213, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 414363680768, - "range": 1048576, + "base": 285229449216, + "range": 2097152, "enabled": true, "access": "read_write", "prefetch": "no" }, { "type": "mem", - "base": 414366367744, + "base": 285242818560, "range": 16384, "enabled": true, "access": "read_write", @@ -4531,238 +3423,24 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 190, - "prog_if": 0 + "irq": 213, + "prog_if": 128 }, - "driver": "sof-audio-pci-intel-tgl", - "driver_module": "snd_sof_pci_intel_tgl", + "driver": "sof-audio-pci-intel-mtl", + "driver_module": "snd_sof_pci_intel_mtl", "drivers": [ - "sof-audio-pci-intel-tgl" + "sof-audio-pci-intel-mtl" ], "driver_modules": [ - "snd_sof_pci_intel_tgl" + "snd_sof_pci_intel_mtl" ], - "module_alias": "pci:v00008086d000051CCsv00001028sd00000B14bc04sc01i00" - }, - { - "index": 53, - "attached_to": 61, - "class_list": [ - "sound", - "usb" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "0004", - "name": "Multimedia controller", - "value": 4 - }, - "sub_class": { - "hex": "0001", - "name": "Multimedia audio controller", - "value": 1 - }, - "vendor": { - "hex": "046d", - "name": "Logitech Inc.", - "value": 1133 - }, - "device": { - "hex": "08e5", - "name": "HD Pro Webcam C920", - "value": 2277 - }, - "revision": { - "hex": "0000", - "name": "0.21", - "value": 0 - }, - "serial": "604B96BF", - "model": "Logitech HD Pro Webcam C920", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.1/1-6.1.3.1:1.2", - "sysfs_bus_id": "1-6.1.3.1:1.2", - "resources": [ - { - "type": "baud", - "speed": 480000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "00ef", - "name": "miscellaneous", - "value": 239 - }, - "device_subclass": { - "hex": "0002", - "name": "comm", - "value": 2 - }, - "device_protocol": 1, - "interface_class": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "interface_subclass": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "interface_protocol": 0, - "interface_number": 2, - "interface_alternate_setting": 0, - "interface_association": { - "function_class": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "function_subclass": { - "hex": "0002", - "name": "comm", - "value": 2 - }, - "function_protocol": 0, - "interface_count": 2, - "first_interface": 2 - } - }, - "hotplug": "usb", - "driver": "snd-usb-audio", - "driver_module": "snd_usb_audio", - "drivers": [ - "snd-usb-audio" - ], - "driver_modules": [ - "snd_usb_audio" - ], - "module_alias": "usb:v046Dp08E5d0021dcEFdsc02dp01ic01isc01ip00in02" - }, - { - "index": 66, - "attached_to": 61, - "class_list": [ - "sound", - "usb" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "0004", - "name": "Multimedia controller", - "value": 4 - }, - "sub_class": { - "hex": "0001", - "name": "Multimedia audio controller", - "value": 1 - }, - "vendor": { - "hex": "046d", - "name": "Logitech Inc.", - "value": 1133 - }, - "device": { - "hex": "08e5", - "name": "HD Pro Webcam C920", - "value": 2277 - }, - "revision": { - "hex": "0000", - "name": "0.21", - "value": 0 - }, - "serial": "604B96BF", - "model": "Logitech HD Pro Webcam C920", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.1/1-6.1.3.1:1.3", - "sysfs_bus_id": "1-6.1.3.1:1.3", - "resources": [ - { - "type": "baud", - "speed": 480000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "00ef", - "name": "miscellaneous", - "value": 239 - }, - "device_subclass": { - "hex": "0002", - "name": "comm", - "value": 2 - }, - "device_protocol": 1, - "interface_class": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "interface_subclass": { - "hex": "0002", - "name": "comm", - "value": 2 - }, - "interface_protocol": 0, - "interface_number": 3, - "interface_alternate_setting": 0, - "interface_association": { - "function_class": { - "hex": "0001", - "name": "audio", - "value": 1 - }, - "function_subclass": { - "hex": "0002", - "name": "comm", - "value": 2 - }, - "function_protocol": 0, - "interface_count": 2, - "first_interface": 2 - } - }, - "hotplug": "usb", - "driver": "snd-usb-audio", - "driver_module": "snd_usb_audio", - "drivers": [ - "snd-usb-audio" - ], - "driver_modules": [ - "snd_usb_audio" - ], - "module_alias": "usb:v046Dp08E5d0021dcEFdsc02dp01ic01isc02ip00in03" + "module_alias": "pci:v00008086d00007E28sv000017AAsd00002234bc04sc03i80" } ], "storage_controller": [ { - "index": 38, - "attached_to": 0, + "index": 47, + "attached_to": 43, "class_list": [ "storage_controller", "pci" @@ -4773,98 +3451,7 @@ "value": 4 }, "slot": { - "bus": 0, - "number": 14 - }, - "base_class": { - "hex": "0001", - "name": "Mass storage controller", - "value": 1 - }, - "sub_class": { - "hex": "0004", - "name": "RAID bus controller", - "value": 4 - }, - "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 - }, - "sub_vendor": { - "hex": "1028", - "value": 4136 - }, - "device": { - "hex": "467f", - "value": 18047 - }, - "sub_device": { - "hex": "0b14", - "value": 2836 - }, - "model": "Intel RAID bus controller", - "sysfs_id": "/devices/pci0000:00/0000:00:0e.0", - "sysfs_bus_id": "0000:00:0e.0", - "sysfs_iommu_group_id": 9, - "resources": [ - { - "type": "mem", - "base": 3154116608, - "range": 33554432, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, - { - "type": "mem", - "base": 414296571904, - "range": 33554432, - "enabled": true, - "access": "read_write", - "prefetch": "no" - }, - { - "type": "mem", - "base": 414364729344, - "range": 1048576, - "enabled": true, - "access": "read_write", - "prefetch": "no" - } - ], - "detail": { - "function": 0, - "command": 1030, - "header_type": 0, - "secondary_bus": 0, - "irq": 0, - "prog_if": 0 - }, - "driver": "vmd", - "driver_module": "vmd", - "drivers": [ - "vmd" - ], - "driver_modules": [ - "vmd" - ], - "module_alias": "pci:v00008086d0000467Fsv00001028sd00000B14bc01sc04i00" - }, - { - "index": 44, - "attached_to": 22, - "class_list": [ - "storage_controller", - "pci" - ], - "bus_type": { - "hex": "0004", - "name": "PCI", - "value": 4 - }, - "slot": { - "bus": 225, + "bus": 5, "number": 0 }, "base_class": { @@ -4881,33 +3468,39 @@ "value": 2 }, "vendor": { - "hex": "1344", - "value": 4932 + "hex": "2646", + "value": 9798 }, "sub_vendor": { - "hex": "1344", - "value": 4932 + "hex": "2646", + "value": 9798 }, "device": { - "hex": "5414", - "value": 21524 + "hex": "5027", + "value": 20519 }, "sub_device": { - "hex": "1400", - "value": 5120 + "hex": "5027", + "value": 20519 }, "revision": { "hex": "0001", "value": 1 }, "model": "Mass storage controller", - "sysfs_id": "/devices/pci0000:00/0000:00:0e.0/pci10000:e0/10000:e0:06.0/10000:e1:00.0", - "sysfs_bus_id": "10000:e1:00.0", - "sysfs_iommu_group_id": 9, + "sysfs_id": "/devices/pci0000:00/0000:00:06.2/0000:05:00.0", + "sysfs_bus_id": "0000:05:00.0", + "sysfs_iommu_group_id": 21, "resources": [ + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, { "type": "mem", - "base": 3154116608, + "base": 2897215488, "range": 16384, "enabled": true, "access": "read_write", @@ -4919,7 +3512,7 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 0, + "irq": 16, "prog_if": 2 }, "driver": "nvme", @@ -4930,7 +3523,94 @@ "driver_modules": [ "nvme" ], - "module_alias": "pci:v00001344d00005414sv00001344sd00001400bc01sc08i02" + "module_alias": "pci:v00002646d00005027sv00002646sd00005027bc01sc08i02" + }, + { + "index": 50, + "attached_to": 45, + "class_list": [ + "storage_controller", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 4, + "number": 0 + }, + "base_class": { + "hex": "0001", + "name": "Mass storage controller", + "value": 1 + }, + "sub_class": { + "hex": "0008", + "value": 8 + }, + "pci_interface": { + "hex": "0002", + "value": 2 + }, + "vendor": { + "hex": "1e0f", + "value": 7695 + }, + "sub_vendor": { + "hex": "1e0f", + "value": 7695 + }, + "device": { + "hex": "0010", + "value": 16 + }, + "sub_device": { + "hex": "0001", + "value": 1 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Mass storage controller", + "sysfs_id": "/devices/pci0000:00/0000:00:06.0/0000:04:00.0", + "sysfs_bus_id": "0000:04:00.0", + "sysfs_iommu_group_id": 20, + "resources": [ + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 2898264064, + "range": 16384, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 2 + }, + "driver": "nvme", + "driver_module": "nvme", + "drivers": [ + "nvme" + ], + "driver_modules": [ + "nvme" + ], + "module_alias": "pci:v00001E0Fd00000010sv00001E0Fsd00000001bc01sc08i02" } ], "system": { @@ -4938,98 +3618,8 @@ }, "usb": [ { - "index": 58, - "attached_to": 61, - "class_list": [ - "usb", - "unknown" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "0000", - "name": "Unclassified device", - "value": 0 - }, - "sub_class": { - "hex": "0000", - "name": "Unclassified device", - "value": 0 - }, - "vendor": { - "hex": "413c", - "value": 16700 - }, - "device": { - "hex": "b06f", - "name": "Dell dock", - "value": 45167 - }, - "revision": { - "hex": "0000", - "name": "1.01", - "value": 0 - }, - "model": "Dell dock", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.3/1-6.1.3.5/1-6.1.3.5:1.0", - "sysfs_bus_id": "1-6.1.3.5:1.0", - "resources": [ - { - "type": "baud", - "speed": 480000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 0, - "interface_class": { - "hex": "0003", - "name": "hid", - "value": 3 - }, - "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "driver": "usbhid", - "driver_module": "usbhid", - "drivers": [ - "usbhid" - ], - "driver_modules": [ - "usbhid" - ], - "module_alias": "usb:v413CpB06Fd0101dc00dsc00dp00ic03isc00ip00in00" - }, - { - "index": 64, - "attached_to": 69, + "index": 59, + "attached_to": 60, "class_list": [ "usb", "unknown" @@ -5059,19 +3649,19 @@ "value": 10182 }, "device": { - "hex": "63ac", + "hex": "6594", "name": "Goodix USB2.0 MISC", - "value": 25516 + "value": 26004 }, "revision": { "hex": "0000", "name": "1.00", "value": 0 }, - "serial": "UIDF6CB8136_XXXX_MOC_B0", + "serial": "UIDD44FA05B_XXXX_MOC_B0", "model": "Goodix USB2.0 MISC", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0", - "sysfs_bus_id": "1-3:1.0", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-7/3-7:1.0", + "sysfs_bus_id": "3-7:1.0", "resources": [ { "type": "baud", @@ -5109,11 +3699,11 @@ "interface_alternate_setting": 0 }, "hotplug": "usb", - "module_alias": "usb:v27C6p63ACd0100dcEFdsc00dp00icFFisc00ip00in00" + "module_alias": "usb:v27C6p6594d0100dcEFdsc00dp00icFFisc00ip00in00" }, { - "index": 71, - "attached_to": 69, + "index": 62, + "attached_to": 60, "class_list": [ "usb", "unknown" @@ -5138,105 +3728,24 @@ "value": 0 }, "vendor": { - "hex": "8086", - "name": "Intel Corporation", - "value": 32902 + "hex": "30c9", + "name": "8SSC21K64624V1SR49K25RW", + "value": 12489 }, "device": { - "hex": "0b63", - "name": "USB Bridge", - "value": 2915 + "hex": "00cd", + "name": "Integrated Camera", + "value": 205 }, "revision": { "hex": "0000", - "name": "10.01", + "name": "10.08", "value": 0 }, - "model": "Intel USB Bridge", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0", - "sysfs_bus_id": "1-4:1.0", - "resources": [ - { - "type": "baud", - "speed": 12000000, - "bits": 0, - "stop_bits": 0, - "parity": 0, - "handshake": 0 - } - ], - "detail": { - "device_class": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 - }, - "device_protocol": 0, - "interface_class": { - "hex": "00ff", - "name": "vendor_spec", - "value": 255 - }, - "interface_subclass": { - "hex": "00ff", - "name": "vendor_spec", - "value": 255 - }, - "interface_protocol": 255, - "interface_number": 0, - "interface_alternate_setting": 0 - }, - "hotplug": "usb", - "module_alias": "usb:v8086p0B63d1001dc00dsc00dp00icFFiscFFipFFin00" - }, - { - "index": 73, - "attached_to": 72, - "class_list": [ - "usb", - "unknown" - ], - "bus_type": { - "hex": "0086", - "name": "USB", - "value": 134 - }, - "slot": { - "bus": 0, - "number": 0 - }, - "base_class": { - "hex": "0000", - "name": "Unclassified device", - "value": 0 - }, - "sub_class": { - "hex": "0000", - "name": "Unclassified device", - "value": 0 - }, - "vendor": { - "hex": "413c", - "value": 16700 - }, - "device": { - "hex": "b06e", - "name": "Dell dock", - "value": 45166 - }, - "revision": { - "hex": "0000", - "name": "1.01", - "value": 0 - }, - "model": "Dell dock", - "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6.1/1-6.1.5/1-6.1.5:1.0", - "sysfs_bus_id": "1-6.1.5:1.0", + "serial": "0001", + "model": "8SSC21K64624V1SR49K25RW Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-9/3-9:1.4", + "sysfs_bus_id": "3-9:1.4", "resources": [ { "type": "baud", @@ -5249,45 +3758,52 @@ ], "detail": { "device_class": { - "hex": "0000", - "name": "per_interface", - "value": 0 + "hex": "00ef", + "name": "miscellaneous", + "value": 239 }, "device_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 + "hex": "0002", + "name": "comm", + "value": 2 }, - "device_protocol": 0, + "device_protocol": 1, "interface_class": { - "hex": "0003", - "name": "hid", - "value": 3 + "hex": "00fe", + "name": "application", + "value": 254 }, "interface_subclass": { - "hex": "0000", - "name": "per_interface", - "value": 0 + "hex": "0001", + "name": "audio", + "value": 1 }, - "interface_protocol": 0, - "interface_number": 0, - "interface_alternate_setting": 0 + "interface_protocol": 1, + "interface_number": 4, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "00fe", + "name": "application", + "value": 254 + }, + "function_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "function_protocol": 0, + "interface_count": 1, + "first_interface": 4 + } }, "hotplug": "usb", - "driver": "usbhid", - "driver_module": "usbhid", - "drivers": [ - "usbhid" - ], - "driver_modules": [ - "usbhid" - ], - "module_alias": "usb:v413CpB06Ed0101dc00dsc00dp00ic03isc00ip00in00" + "module_alias": "usb:v30C9p00CDd1008dcEFdsc02dp01icFEisc01ip01in04" } ], "usb_controller": [ { - "index": 17, + "index": 29, "attached_to": 0, "class_list": [ "usb_controller", @@ -5322,35 +3838,35 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "461e", - "value": 17950 + "hex": "7ec0", + "value": 32448 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0002", + "value": 2 }, "model": "Intel USB Controller", "sysfs_id": "/devices/pci0000:00/0000:00:0d.0", "sysfs_bus_id": "0000:00:0d.0", - "sysfs_iommu_group_id": 8, + "sysfs_iommu_group_id": 11, "resources": [ { "type": "irq", - "base": 164, + "base": 130, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 414366302208, + "base": 285242753024, "range": 65536, "enabled": true, "access": "read_write", @@ -5362,7 +3878,7 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 164, + "irq": 130, "prog_if": 48 }, "driver": "xhci_hcd", @@ -5373,10 +3889,10 @@ "driver_modules": [ "xhci_pci" ], - "module_alias": "pci:v00008086d0000461Esv00001028sd00000B14bc0Csc03i30" + "module_alias": "pci:v00008086d00007EC0sv000017AAsd00002234bc0Csc03i30" }, { - "index": 45, + "index": 52, "attached_to": 0, "class_list": [ "usb_controller", @@ -5411,35 +3927,35 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "51ed", - "value": 20973 + "hex": "7e7d", + "value": 32381 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0001", - "value": 1 + "hex": "0020", + "value": 32 }, "model": "Intel USB Controller", "sysfs_id": "/devices/pci0000:00/0000:00:14.0", "sysfs_bus_id": "0000:00:14.0", - "sysfs_iommu_group_id": 11, + "sysfs_iommu_group_id": 12, "resources": [ { "type": "irq", - "base": 161, + "base": 149, "triggered": 0, "enabled": true }, { "type": "mem", - "base": 414366171136, + "base": 285242687488, "range": 65536, "enabled": true, "access": "read_write", @@ -5451,7 +3967,7 @@ "command": 1030, "header_type": 0, "secondary_bus": 0, - "irq": 161, + "irq": 149, "prog_if": 48 }, "driver": "xhci_hcd", @@ -5462,10 +3978,10 @@ "driver_modules": [ "xhci_pci" ], - "module_alias": "pci:v00008086d000051EDsv00001028sd00000B14bc0Csc03i30" + "module_alias": "pci:v00008086d00007E7Dsv000017AAsd00002234bc0Csc03i30" }, { - "index": 48, + "index": 54, "attached_to": 0, "class_list": [ "usb_controller", @@ -5500,25 +4016,25 @@ "value": 32902 }, "sub_vendor": { - "hex": "1028", - "value": 4136 + "hex": "17aa", + "value": 6058 }, "device": { - "hex": "463e", - "value": 17982 + "hex": "7ec2", + "value": 32450 }, "sub_device": { - "hex": "0b14", - "value": 2836 + "hex": "2234", + "value": 8756 }, "revision": { - "hex": "0006", - "value": 6 + "hex": "0002", + "value": 2 }, "model": "Intel USB Controller", "sysfs_id": "/devices/pci0000:00/0000:00:0d.2", "sysfs_bus_id": "0000:00:0d.2", - "sysfs_iommu_group_id": 8, + "sysfs_iommu_group_id": 11, "resources": [ { "type": "irq", @@ -5528,7 +4044,7 @@ }, { "type": "mem", - "base": 414365777920, + "base": 285242032128, "range": 262144, "enabled": true, "access": "read_write", @@ -5536,7 +4052,7 @@ }, { "type": "mem", - "base": 414366449664, + "base": 285242875904, "range": 4096, "enabled": true, "access": "read_write", @@ -5559,16 +4075,16 @@ "driver_modules": [ "thunderbolt" ], - "module_alias": "pci:v00008086d0000463Esv00001028sd00000B14bc0Csc03i40" + "module_alias": "pci:v00008086d00007EC2sv000017AAsd00002234bc0Csc03i40" } ] }, "smbios": { "bios": { - "handle": 1, - "vendor": "Dell Inc.", - "version": "1.11.0", - "date": "04/12/2023", + "handle": 28, + "vendor": "LENOVO", + "version": "N48ET19W (1.06 )", + "date": "07/18/2024", "features": [ "PCI supported", "PnP supported", @@ -5577,24 +4093,24 @@ "CD boot supported", "Selectable boot supported", "EDD spec supported", + "720kB Floppy supported", "Print Screen supported", "8042 Keyboard Services supported", "Serial Services supported", "Printer Services supported", + "CGA/Mono Video supported", "ACPI supported", "USB Legacy supported", - "Smart Battery supported", - "BIOS Boot Spec supported", - "F12 Network boot supported" + "BIOS Boot Spec supported" ], - "start_address": "0x0", + "start_address": "0xe0000", "rom_size": 16777216 }, "board": { - "handle": 512, - "manufacturer": "Dell Inc.", - "product": "0GNN3X", - "version": "A03", + "handle": 30, + "manufacturer": "LENOVO", + "product": "21KVCTO1WW", + "version": "Not Defined", "board_type": { "hex": "000a", "name": "Motherboard", @@ -5604,15 +4120,15 @@ "Hosting Board", "Replaceable" ], - "location": "", - "chassis": 768 + "location": "Not Available", + "chassis": 31 }, "cache": [ { - "handle": 1792, + "handle": 19, "socket": "L1 Cache", - "size_max": 96, - "size_current": 96, + "size_max": 288, + "size_current": 288, "speed": 0, "mode": { "hex": "0001", @@ -5650,10 +4166,10 @@ ] }, { - "handle": 1793, + "handle": 20, "socket": "L1 Cache", - "size_max": 64, - "size_current": 64, + "size_max": 384, + "size_current": 384, "speed": 0, "mode": { "hex": "0001", @@ -5679,9 +4195,9 @@ "value": 3 }, "associativity": { - "hex": "0007", - "name": "8-way Set-Associative", - "value": 7 + "hex": "0008", + "name": "16-way Set-Associative", + "value": 8 }, "sram_type_current": [ "Synchronous" @@ -5691,49 +4207,8 @@ ] }, { - "handle": 1794, + "handle": 21, "socket": "L2 Cache", - "size_max": 2560, - "size_current": 2560, - "speed": 0, - "mode": { - "hex": "0001", - "name": "Write Back", - "value": 1 - }, - "enabled": true, - "location": { - "hex": "0000", - "name": "Internal", - "value": 0 - }, - "socketed": false, - "level": 1, - "ecc": { - "hex": "0005", - "name": "Single-bit", - "value": 5 - }, - "cache_type": { - "hex": "0005", - "name": "Unified", - "value": 5 - }, - "associativity": { - "hex": "0001", - "name": "Other", - "value": 1 - }, - "sram_type_current": [ - "Synchronous" - ], - "sram_type_supported": [ - "Synchronous" - ] - }, - { - "handle": 1795, - "socket": "L3 Cache", "size_max": 12288, "size_current": 12288, "speed": 0, @@ -5749,129 +4224,6 @@ "value": 0 }, "socketed": false, - "level": 2, - "ecc": { - "hex": "0006", - "name": "Multi-bit", - "value": 6 - }, - "cache_type": { - "hex": "0005", - "name": "Unified", - "value": 5 - }, - "associativity": { - "hex": "0009", - "name": "Other", - "value": 9 - }, - "sram_type_current": [ - "Synchronous" - ], - "sram_type_supported": [ - "Synchronous" - ] - }, - { - "handle": 1796, - "socket": "L1 Cache", - "size_max": 256, - "size_current": 256, - "speed": 0, - "mode": { - "hex": "0001", - "name": "Write Back", - "value": 1 - }, - "enabled": true, - "location": { - "hex": "0000", - "name": "Internal", - "value": 0 - }, - "socketed": false, - "level": 0, - "ecc": { - "hex": "0004", - "name": "Parity", - "value": 4 - }, - "cache_type": { - "hex": "0004", - "name": "Data", - "value": 4 - }, - "associativity": { - "hex": "0007", - "name": "8-way Set-Associative", - "value": 7 - }, - "sram_type_current": [ - "Synchronous" - ], - "sram_type_supported": [ - "Synchronous" - ] - }, - { - "handle": 1797, - "socket": "L1 Cache", - "size_max": 512, - "size_current": 512, - "speed": 0, - "mode": { - "hex": "0001", - "name": "Write Back", - "value": 1 - }, - "enabled": true, - "location": { - "hex": "0000", - "name": "Internal", - "value": 0 - }, - "socketed": false, - "level": 0, - "ecc": { - "hex": "0004", - "name": "Parity", - "value": 4 - }, - "cache_type": { - "hex": "0003", - "name": "Instruction", - "value": 3 - }, - "associativity": { - "hex": "0007", - "name": "8-way Set-Associative", - "value": 7 - }, - "sram_type_current": [ - "Synchronous" - ], - "sram_type_supported": [ - "Synchronous" - ] - }, - { - "handle": 1798, - "socket": "L2 Cache", - "size_max": 4096, - "size_current": 4096, - "speed": 0, - "mode": { - "hex": "0001", - "name": "Write Back", - "value": 1 - }, - "enabled": true, - "location": { - "hex": "0000", - "name": "Internal", - "value": 0 - }, - "socketed": false, "level": 1, "ecc": { "hex": "0005", @@ -5896,10 +4248,174 @@ ] }, { - "handle": 1799, + "handle": 22, "socket": "L3 Cache", - "size_max": 12288, - "size_current": 12288, + "size_max": 24576, + "size_current": 24576, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 2, + "ecc": { + "hex": "0006", + "name": "Multi-bit", + "value": 6 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0009", + "name": "Other", + "value": 9 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 23, + "socket": "L1 Cache", + "size_max": 320, + "size_current": 320, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0004", + "name": "Data", + "value": 4 + }, + "associativity": { + "hex": "0007", + "name": "8-way Set-Associative", + "value": 7 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 24, + "socket": "L1 Cache", + "size_max": 640, + "size_current": 640, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0003", + "name": "Instruction", + "value": 3 + }, + "associativity": { + "hex": "0007", + "name": "8-way Set-Associative", + "value": 7 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 25, + "socket": "L2 Cache", + "size_max": 6144, + "size_current": 6144, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 1, + "ecc": { + "hex": "0005", + "name": "Single-bit", + "value": 5 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0008", + "name": "16-way Set-Associative", + "value": 8 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 26, + "socket": "L3 Cache", + "size_max": 24576, + "size_current": 24576, "speed": 0, "mode": { "hex": "0001", @@ -5938,9 +4454,9 @@ } ], "chassis": { - "handle": 768, - "manufacturer": "Dell Inc.", - "version": "", + "handle": 31, + "manufacturer": "LENOVO", + "version": "None", "chassis_type": { "hex": "000a", "name": "Notebook", @@ -5948,66 +4464,73 @@ }, "lock_present": false, "bootup_state": { - "hex": "0003", - "name": "Safe", - "value": 3 + "hex": "0002", + "name": "Unknown", + "value": 2 }, "power_state": { - "hex": "0003", - "name": "Safe", - "value": 3 + "hex": "0002", + "name": "Unknown", + "value": 2 }, "thermal_state": { - "hex": "0003", - "name": "Safe", - "value": 3 + "hex": "0002", + "name": "Unknown", + "value": 2 }, "security_state": { - "hex": "0003", - "name": "None", - "value": 3 + "hex": "0002", + "name": "Unknown", + "value": 2 }, "oem": "0x0" }, "config": { - "handle": 3072, - "options": [ - "J6H1:1-X Boot with Default; J8H1:1-X BIOS RECOVERY" - ] + "handle": 49 }, "group_associations": [ { - "handle": 3584, + "handle": 59, + "power": { + "hex": "0000", + "name": "Disabled", + "value": 0 + }, + "keyboard": { + "hex": "0002", + "name": "Not Implemented", + "value": 2 + }, + "admin": { + "hex": "0000", + "name": "Disabled", + "value": 0 + }, + "reset": { + "hex": "0002", + "name": "Not Implemented", + "value": 2 + } + }, + { + "handle": 61, "name": "$MEI", "handles": [ 0 ] - }, - { - "handle": 3585, - "name": "Firmware Version Info", - "handles": [ - 225404178713856, - 225408473681153, - 225412768648450, - 225417063615747, - 225421358583044, - 225425653550341, - 52486 - ] } ], "language": [ { - "handle": 3328, + "handle": 50, "languages": [ - "enUS" + "en-US" ] } ], "memory_array": [ { - "handle": 4096, + "handle": 3, "location": { "hex": "0003", "name": "Motherboard", @@ -6023,36 +4546,36 @@ "name": "None", "value": 3 }, - "max_size": 16777216, + "max_size": 67108864, "error_handle": 65534, "slots": 8 } ], "memory_array_mapped_address": [ { - "handle": 4864, - "array_handle": 4096, + "handle": 12, + "array_handle": 3, "start_address": 0, - "end_address": 17179869184, + "end_address": 68719476736, "part_width": 8 } ], "memory_device": [ { - "handle": 4352, - "location": "Motherboard", + "handle": 4, + "location": "Controller0-ChannelA-DIMM0", "bank_location": "BANK 0", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6063,23 +4586,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4353, - "location": "Motherboard", + "handle": 5, + "location": "Controller0-ChannelB-DIMM0", "bank_location": "BANK 1", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6090,23 +4613,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4354, - "location": "Motherboard", + "handle": 6, + "location": "Controller0-ChannelC-DIMM0", "bank_location": "BANK 2", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6117,23 +4640,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4355, - "location": "Motherboard", + "handle": 7, + "location": "Controller0-ChannelD-DIMM0", "bank_location": "BANK 3", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6144,23 +4667,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4356, - "location": "Motherboard", + "handle": 8, + "location": "Controller1-ChannelA-DIMM0", "bank_location": "BANK 0", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6171,23 +4694,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4357, - "location": "Motherboard", + "handle": 9, + "location": "Controller1-ChannelB-DIMM0", "bank_location": "BANK 1", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6198,23 +4721,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4358, - "location": "Motherboard", + "handle": 10, + "location": "Controller1-ChannelC-DIMM0", "bank_location": "BANK 2", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6225,23 +4748,23 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 }, { - "handle": 4359, - "location": "Motherboard", + "handle": 11, + "location": "Controller1-ChannelD-DIMM0", "bank_location": "BANK 3", - "manufacturer": "", - "part_number": "MT62F1G64D8CH-031", - "array_handle": 4096, + "manufacturer": "Micron Technology", + "part_number": "RMCA1000MBC2JDF-7500", + "array_handle": 3, "error_handle": 65534, - "width": 64, + "width": 16, "ecc_bits": 0, - "size": 2097152, + "size": 8388608, "form_factor": { - "hex": "000b", - "name": "Row of Chips", - "value": 11 + "hex": "0001", + "name": "Other", + "value": 1 }, "set": 0, "memory_type": { @@ -6252,38 +4775,158 @@ "memory_type_details": [ "Synchronous" ], - "speed": 6400 + "speed": 7467 + } + ], + "memory_error": [ + { + "handle": 63, + "error_type": { + "hex": "0003", + "name": "OK", + "value": 3 + }, + "granularity": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "operation": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "syndrome": 0, + "array_address": 2147483648, + "device_address": 2147483648, + "range": 2147483648 } ], "pointing_device": [ { - "handle": 5376, + "handle": 64, + "mouse_type": { + "hex": "0005", + "name": "Track Point", + "value": 5 + }, + "interface": { + "hex": "0004", + "name": "PS/2", + "value": 4 + }, + "buttons": 3 + }, + { + "handle": 65, "mouse_type": { "hex": "0007", "name": "Touch Pad", "value": 7 }, "interface": { - "hex": "0007", - "name": "Bus Mouse", - "value": 7 + "hex": "0001", + "name": "Other", + "value": 1 }, "buttons": 2 } ], - "power_controls": [ + "port_connector": [ { - "handle": 6400, - "month": 0, - "day": 0, - "hour": 0, - "minute": 0, - "second": 0 + "handle": 32, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB 1" + }, + { + "handle": 33, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB 2" + }, + { + "handle": 34, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB 3" + }, + { + "handle": 35, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB 4" + }, + { + "handle": 42, + "port_type": { + "hex": "001c", + "name": "Video Port", + "value": 28 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "00ff", + "name": "Other", + "value": 255 + }, + "external_reference_designator": "Hdmi1" + }, + { + "handle": 46, + "port_type": { + "hex": "001d", + "name": "Audio Port", + "value": 29 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "001f", + "name": "Mini-jack [headphones]", + "value": 31 + }, + "external_reference_designator": "Headphone/Microphone Combo Jack1" } ], "processor": [ { - "handle": 1024, + "handle": 27, "socket": "U3E1", "socket_type": { "hex": "0001", @@ -6292,17 +4935,17 @@ }, "socket_populated": true, "manufacturer": "Intel(R) Corporation", - "version": "12th Gen Intel(R) Core(TM) i7-1250U", - "part": "", + "version": "Intel(R) Core(TM) Ultra 7 155H", + "part": "None", "processor_type": { "hex": "0003", "name": "CPU", "value": 3 }, "processor_family": { - "hex": "00c6", + "hex": "0001", "name": "Other", - "value": 198 + "value": 1 }, "processor_status": { "hex": "0001", @@ -6310,25 +4953,25 @@ "value": 1 }, "clock_ext": 100, - "clock_max": 4700, - "cache_handle_l1": 1797, - "cache_handle_l2": 1798, - "cache_handle_l3": 1799 + "clock_max": 4800, + "cache_handle_l1": 24, + "cache_handle_l2": 25, + "cache_handle_l3": 26 } ], "slot": [ { - "handle": 2304, - "designation": "PCI-Express 0", + "handle": 48, + "designation": "SimCard Slot", "slot_type": { - "hex": "00a5", + "hex": "0001", "name": "Other", - "value": 165 + "value": 1 }, "bus_width": { - "hex": "0008", + "hex": "0001", "name": "Other", - "value": 8 + "value": 1 }, "usage": { "hex": "0003", @@ -6336,113 +4979,18 @@ "value": 3 }, "length": { - "hex": "0004", - "name": "Long", - "value": 4 - }, - "id": 0, - "features": [ - "3.3 V", - "PME#", - "Hot-Plug" - ] - }, - { - "handle": 2305, - "designation": "PCI-Express 1", - "slot_type": { - "hex": "00a5", + "hex": "0001", "name": "Other", - "value": 165 + "value": 1 }, - "bus_width": { - "hex": "0008", - "name": "Other", - "value": 8 - }, - "usage": { - "hex": "0003", - "name": "Available", - "value": 3 - }, - "length": { - "hex": "0004", - "name": "Long", - "value": 4 - }, - "id": 1, - "features": [ - "3.3 V", - "PME#", - "Hot-Plug" - ] - }, - { - "handle": 2306, - "designation": "PCI-Express 2", - "slot_type": { - "hex": "00a5", - "name": "Other", - "value": 165 - }, - "bus_width": { - "hex": "0008", - "name": "Other", - "value": 8 - }, - "usage": { - "hex": "0003", - "name": "Available", - "value": 3 - }, - "length": { - "hex": "0004", - "name": "Long", - "value": 4 - }, - "id": 2, - "features": [ - "3.3 V", - "PME#", - "Hot-Plug" - ] - }, - { - "handle": 2307, - "designation": "PCI-Express 3", - "slot_type": { - "hex": "00a5", - "name": "Other", - "value": 165 - }, - "bus_width": { - "hex": "0008", - "name": "Other", - "value": 8 - }, - "usage": { - "hex": "0003", - "name": "Available", - "value": 3 - }, - "length": { - "hex": "0004", - "name": "Long", - "value": 4 - }, - "id": 3, - "features": [ - "3.3 V", - "PME#", - "Hot-Plug" - ] + "id": 0 } ], "system": { - "handle": 256, - "manufacturer": "Dell Inc.", - "product": "XPS 9315", - "version": "", + "handle": 29, + "manufacturer": "LENOVO", + "product": "21KVCTO1WW", + "version": "ThinkPad P1 Gen 7", "wake_up": { "hex": "0006", "name": "Power Switch", diff --git a/machines/sue/pim.home.nix b/machines/blocktech/pkunis.home.nix similarity index 90% rename from machines/sue/pim.home.nix rename to machines/blocktech/pkunis.home.nix index a836ce9..9a4a99c 100644 --- a/machines/sue/pim.home.nix +++ b/machines/blocktech/pkunis.home.nix @@ -9,7 +9,7 @@ in { config = { pim = { - tidal.enable = true; + tidal.enable = false; gnome.enable = true; vscode.enable = true; syncthing.enable = true; @@ -22,8 +22,8 @@ in { }; home = { - username = "pim"; - homeDirectory = "/home/pim"; + username = "pkunis"; + homeDirectory = "/home/pkunis"; stateVersion = "23.05"; sessionVariables = { MANPAGER = "${lib.getExe neovim} +Man!"; @@ -32,7 +32,7 @@ in { }; sops = { - defaultSopsFile = "${self}/secrets/sue/pim.yaml"; + defaultSopsFile = "${self}/secrets/blocktech/pkunis.yaml"; age.keyFile = "${config.xdg.configHome}/sops/age/keys.txt"; secrets."keepassxc".path = "${config.xdg.configHome}/keepassxc/keepassxc.ini"; }; diff --git a/machines/default.nix b/machines/default.nix index bdb2a8f..5d2d85d 100644 --- a/machines/default.nix +++ b/machines/default.nix @@ -1,7 +1,7 @@ { - sue = { + blocktech = { system = "x86_64-linux"; - nixosModule = import ./sue/configuration.nix; + nixosModule = import ./blocktech/configuration.nix; }; gamepc = { diff --git a/nixos/compliance.nix b/nixos/compliance.nix deleted file mode 100644 index e1181eb..0000000 --- a/nixos/compliance.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ - config, - lib, - ... -}: let - cfg = config.pim.compliance; -in { - options.pim.compliance.enable = lib.mkEnableOption "compliance"; - config = lib.mkIf cfg.enable { - services.clamav = { - daemon.enable = true; - }; - }; -} diff --git a/nixos/default.nix b/nixos/default.nix index ca6faf2..38ef3b8 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -18,7 +18,6 @@ ./stylix.nix ./wireguard.nix ./gnome.nix - ./compliance.nix ./cinnamon.nix ./ssh.nix ./desktop.nix diff --git a/nixos/tidal.nix b/nixos/tidal.nix index ab70501..ad59567 100644 --- a/nixos/tidal.nix +++ b/nixos/tidal.nix @@ -5,6 +5,7 @@ }: let cfg = config.pim.tidal; in { + # TODO: this is bad and broken options.pim.tidal.enable = lib.mkEnableOption "tidal"; config = lib.mkIf cfg.enable { diff --git a/secrets/sue/colmena.yaml b/secrets/blocktech/colmena.yaml similarity index 63% rename from secrets/sue/colmena.yaml rename to secrets/blocktech/colmena.yaml index 7d468b0..e6c04cc 100644 --- a/secrets/sue/colmena.yaml +++ b/secrets/blocktech/colmena.yaml @@ -1,6 +1,6 @@ sops_nix_keys: root: ENC[AES256_GCM,data:CxF2wjcQ2OFuS7Pgjnc8zc7sqGEz3dcHt4NXkL+V6w7kGPP+b4wBhOlT7b+bEESNslpK2htLY7x+IZWIA8JQpeRKHAKymAUK86I=,iv:5qNFDb86/Vr9Iqzx1eES4wUVY5XTq3iOR4VQliuP1lg=,tag:gx/Q7t52l9kMhPRXdpsB6A==,type:str] - pim: ENC[AES256_GCM,data:PWFlRBaqImbCpj3IXU+BtNIRvwru+GRwxDQO4QwINRvxRqC36LE6JpMqaJNrTdCPy+aQ01brTN8y99qXTDlrul32cZnopc37r78=,iv:1tG7rDB5D7D2myes6Ro8hXC140ugjXpiwNpivWFw/xw=,tag:BNm/Ep55tt7xBWZFyzTR5g==,type:str] + pkunis: ENC[AES256_GCM,data:192vkgOdMoDEhPU6yilatIfaFS/1LJFvteEMYI1/3SBP773lN62pWoDiJDiBtjBCisA/3yHriL3Dpvs1PwbV0BChmbL+svwKrFE=,iv:/YyZ+NSyZwyGp4NJYUSeYOOUfGaH5jOiVUH8QeWnFUA=,tag:sWN0bQvm8Ejw5+XST0pAEQ==,type:str] sops: kms: [] gcp_kms: [] @@ -16,8 +16,8 @@ sops: NkJzL3JSN2sxbnF6NGNhQlJqTHpHRTAKK+3FqqBAGxdlMtnbsySEcZT1lkQwJWvK GFB+6CtH9UtyIGrdK8Pm/0ahsolYGAim2OjeiKBbs3Q8kLm5WAsgRg== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-11-30T23:42:51Z" - mac: ENC[AES256_GCM,data:fo856uaz54nxHDJVDpMOPc6GHAzMdVJTfqBiMtJkEwm3AVICtRcI8ucceBnmfKZf9DM2MC2DffU1tvJd5iqpqFZMXCElRnBxWVZGhvrZqIZtmoAin5zBgwOudf1o6msmdNGmZk1ECq/HpHNO/QMQ3rnFdBvOZwL0zu6iZm9XwC0=,iv:T6Tv1ukk0CWbTRVWYdfn/bWQoETk8DRVMOzpJE9mCWE=,tag:eICIYTBvAJLUTpRcMYqc5Q==,type:str] + lastmodified: "2025-02-25T13:53:06Z" + mac: ENC[AES256_GCM,data:lLojNOq2QtdeqiCHOg6+Kssfa+Ey6JefPQulFkgnr1Onrt60ds2qWg5TTMHMlUaa6vB1S78WqyquTRBLv9Ek/alOae+CgdDi+vVX8hG5Mc2Edcfl+z8rRNFB+2mOEl1gJwKntyxySx6YBiDhZsH0p+Xflw9WGm/lL/FyRCJCwq0=,iv:8PqXupgwdfgdfIzsymVSrjQACoMODR+XYPgLMvASjos=,tag:rLGJlL3alm/qy+3qeS637g==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.9.1 diff --git a/secrets/sue/nixos.yaml b/secrets/blocktech/nixos.yaml similarity index 100% rename from secrets/sue/nixos.yaml rename to secrets/blocktech/nixos.yaml diff --git a/secrets/sue/pim.yaml b/secrets/blocktech/pkunis.yaml similarity index 100% rename from secrets/sue/pim.yaml rename to secrets/blocktech/pkunis.yaml From c02ce01b0385d65818ec4c3ddf8c6a21aa786a88 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 25 Feb 2025 15:52:25 +0100 Subject: [PATCH 18/60] Update README --- README.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d31f501..27bf7d1 100644 --- a/README.md +++ b/README.md @@ -3,33 +3,40 @@ NixOS configurations for the machines I manage. Currently managed systems: -- **sue**: My current laptop, a Dell XPS 9315. It has two flavours: - - Default running GNOME - - Specialisation running Cosmic + +- **blocktech**: My current laptop, a ThinkPad P1. It has two flavours: + - Default running GNOME + - Specialisation running Cosmic - **gamepc**: My gaming PC running Cinnamon - **warwick**: A Raspberry Pi 4 Model B, which mostly does some monitoring - **atlas**: A Gigabyte Brix, one of my Kubernetes nodes - **jefke**: A Gigabyte Brix, one of my Kubernetes nodes -- **lewis**: A Gigabyte Brix, one of my Kubernetes nodes. Additionally, contains my media collection and does backups. +- **lewis**: A Gigabyte Brix, one of my Kubernetes nodes. Additionally, contains + my media collection and does backups. ## Deployment I use [Colmena](https://colmena.cli.rs) for deploying my machines. Create garbage collection roots like so: + ``` colmena build --keep-result --experimental-flake-eval ``` To apply to the local machine: + ``` sudo colmena apply-local --sudo --experimental-flake-eval ``` To apply to all remotely managed systems: + ``` colmena apply --experimental-flake-eval ``` > [!NOTE] -> Currently the `--experimental-flake-eval` flag is necessary to properly use Colmena with flakes. See [this PR](https://github.com/zhaofengli/colmena/pull/228). +> Currently the `--experimental-flake-eval` flag is necessary to properly use +> Colmena with flakes. See +> [this PR](https://github.com/zhaofengli/colmena/pull/228). From 4fb55a69b7cbb266cbc817c2063f3af52a157846 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 25 Feb 2025 21:30:07 +0100 Subject: [PATCH 19/60] Enable nvidia GPU Update flake inputs --- flake.lock | 2942 +------------------------- machines/blocktech/configuration.nix | 1 + nixos/desktop.nix | 5 + 3 files changed, 48 insertions(+), 2900 deletions(-) diff --git a/flake.lock b/flake.lock index 6643527..243407b 100644 --- a/flake.lock +++ b/flake.lock @@ -123,11 +123,11 @@ "stable": "stable" }, "locked": { - "lastModified": 1734897875, - "narHash": "sha256-LLpiqfOGBippRax9F33kSJ/Imt8gJXb6o0JwSBiNHCk=", + "lastModified": 1739900653, + "narHash": "sha256-hPSLvw6AZQYrZyGI6Uq4XgST7benF/0zcCpugn/P0yM=", "owner": "zhaofengli", "repo": "colmena", - "rev": "a6b51f5feae9bfb145daa37fd0220595acb7871e", + "rev": "2370d4336eda2a9ef29fce10fa7076ae011983ab", "type": "github" }, "original": { @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1738765162, - "narHash": "sha256-3Z40qHaFScWUCVQrGc4Y+RdoPsh1R/wIh+AN4cTXP0I=", + "lastModified": 1740485968, + "narHash": "sha256-WK+PZHbfDjLyveXAxpnrfagiFgZWaTJglewBWniTn2Y=", "owner": "nix-community", "repo": "disko", - "rev": "ff3568858c54bd306e9e1f2886f0f781df307dff", + "rev": "19c1140419c4f1cdf88ad4c1cfb6605597628940", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1736373539, - "narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=", + "lastModified": 1739757849, + "narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=", "owner": "nix-community", "repo": "home-manager", - "rev": "bd65bc3cde04c16755955630b344bc9e35272c56", + "rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1739071773, - "narHash": "sha256-/Ak+Quinhmdxa9m3shjm4lwwwqmzG8zzGhhhhgR1k9I=", + "lastModified": 1740281615, + "narHash": "sha256-dZWcbAQ1sF8oVv+zjSKkPVY0ebwENQEkz5vc6muXbKY=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "895d81b6228bbd50a6ef22f5a58a504ca99763ea", + "rev": "465792533d03e6bb9dc849d58ab9d5e31fac9023", "type": "github" }, "original": { @@ -834,11 +834,11 @@ ] }, "locked": { - "lastModified": 1739069964, - "narHash": "sha256-riauJMShjx/R2LrWUt7X5Gh7d0veVbgI5w5g0/zwQ6E=", + "lastModified": 1740442134, + "narHash": "sha256-ZYqFwKXT/gtyAZ7X5urLvElSovH0iot1+wlRby/Kg/g=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "28fb2017077f66b050f031f8442475d1b51c908e", + "rev": "e8413501a60d226b2dccd2ab6cd43d0747c99a1a", "type": "github" }, "original": { @@ -864,11 +864,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1738816619, - "narHash": "sha256-5yRlg48XmpcX5b5HesdGMOte+YuCy9rzQkJz+imcu6I=", + "lastModified": 1740387674, + "narHash": "sha256-pGk/aA0EBvI6o4DeuZsr05Ig/r4uMlSaf5EWUZEWM10=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "2eccff41bab80839b1d25b303b53d339fbb07087", + "rev": "d58f642ddb23320965b27beb0beba7236e9117b5", "type": "github" }, "original": { @@ -924,11 +924,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1739019272, - "narHash": "sha256-7Fu7oazPoYCbDzb9k8D/DdbKrC3aU1zlnc39Y8jy/s8=", + "lastModified": 1740396192, + "narHash": "sha256-ATMHHrg3sG1KgpQA5x8I+zcYpp5Sf17FaFj/fN+8OoQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fa35a3c8e17a3de613240fea68f876e5b4896aec", + "rev": "d9b69c3ec2a2e2e971c534065bdd53374bd68b97", "type": "github" }, "original": { @@ -940,11 +940,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1738680400, - "narHash": "sha256-ooLh+XW8jfa+91F1nhf9OF7qhuA/y1ChLx6lXDNeY5U=", + "lastModified": 1740367490, + "narHash": "sha256-WGaHVAjcrv+Cun7zPlI41SerRtfknGQap281+AakSAw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "799ba5bffed04ced7067a91798353d360788b30d", + "rev": "0196c0175e9191c474c26ab5548db27ef5d34b05", "type": "github" }, "original": { @@ -956,11 +956,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1738843498, - "narHash": "sha256-7x+Q4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i+jBHE=", + "lastModified": 1740339700, + "narHash": "sha256-cbrw7EgQhcdFnu6iS3vane53bEagZQy/xyIkDWpCgVE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f5a32fa27df91dfc4b762671a0e0a859a8a0058f", + "rev": "04ef94c4c1582fd485bbfdb8c4a8ba250e359195", "type": "github" }, "original": { @@ -972,11 +972,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1739020877, - "narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=", + "lastModified": 1740367490, + "narHash": "sha256-WGaHVAjcrv+Cun7zPlI41SerRtfknGQap281+AakSAw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "a79cfe0ebd24952b580b1cf08cd906354996d547", + "rev": "0196c0175e9191c474c26ab5548db27ef5d34b05", "type": "github" }, "original": { @@ -1041,11 +1041,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1739111476, - "narHash": "sha256-BHs80VUOGcZ2oaBc+N9MoeYdo5npz7FKex+jclaBdKI=", + "lastModified": 1740514125, + "narHash": "sha256-i0lyXlWnZzxVVS18LwgJy9+UoquaZDggh5B/oCOM6Ak=", "owner": "nix-community", "repo": "NUR", - "rev": "953d83b127944d8d6f98a2720c82a70bdc73256b", + "rev": "2af8d925c5c7049921438f8dd7e7ef7566c6313a", "type": "github" }, "original": { @@ -1064,182 +1064,14 @@ "nixpkgs" ], "nmd": "nmd", - "plugin-aerial-nvim": "plugin-aerial-nvim", - "plugin-alpha-nvim": "plugin-alpha-nvim", - "plugin-base16": "plugin-base16", - "plugin-blink-cmp": "plugin-blink-cmp", - "plugin-blink-compat": "plugin-blink-compat", - "plugin-bufdelete-nvim": "plugin-bufdelete-nvim", - "plugin-catppuccin": "plugin-catppuccin", - "plugin-ccc": "plugin-ccc", - "plugin-cellular-automaton": "plugin-cellular-automaton", - "plugin-chatgpt": "plugin-chatgpt", - "plugin-cheatsheet-nvim": "plugin-cheatsheet-nvim", - "plugin-cinnamon-nvim": "plugin-cinnamon-nvim", - "plugin-cmp-buffer": "plugin-cmp-buffer", - "plugin-cmp-luasnip": "plugin-cmp-luasnip", - "plugin-cmp-nvim-lsp": "plugin-cmp-nvim-lsp", - "plugin-cmp-path": "plugin-cmp-path", - "plugin-cmp-treesitter": "plugin-cmp-treesitter", - "plugin-codewindow-nvim": "plugin-codewindow-nvim", - "plugin-comment-nvim": "plugin-comment-nvim", - "plugin-copilot-cmp": "plugin-copilot-cmp", - "plugin-copilot-lua": "plugin-copilot-lua", - "plugin-crates-nvim": "plugin-crates-nvim", - "plugin-csharpls-extended": "plugin-csharpls-extended", - "plugin-dashboard-nvim": "plugin-dashboard-nvim", - "plugin-diffview-nvim": "plugin-diffview-nvim", - "plugin-dracula": "plugin-dracula", - "plugin-dressing-nvim": "plugin-dressing-nvim", - "plugin-elixir-tools": "plugin-elixir-tools", - "plugin-fastaction-nvim": "plugin-fastaction-nvim", - "plugin-fidget-nvim": "plugin-fidget-nvim", - "plugin-flutter-tools": "plugin-flutter-tools", - "plugin-friendly-snippets": "plugin-friendly-snippets", - "plugin-fzf-lua": "plugin-fzf-lua", - "plugin-gesture-nvim": "plugin-gesture-nvim", - "plugin-gitsigns-nvim": "plugin-gitsigns-nvim", - "plugin-glow-nvim": "plugin-glow-nvim", - "plugin-gruvbox": "plugin-gruvbox", - "plugin-haskell-tools-nvim": "plugin-haskell-tools-nvim", - "plugin-highlight-undo": "plugin-highlight-undo", - "plugin-hop-nvim": "plugin-hop-nvim", - "plugin-icon-picker-nvim": "plugin-icon-picker-nvim", - "plugin-image-nvim": "plugin-image-nvim", - "plugin-indent-blankline": "plugin-indent-blankline", - "plugin-leap-nvim": "plugin-leap-nvim", - "plugin-lsp-lines": "plugin-lsp-lines", - "plugin-lsp-signature": "plugin-lsp-signature", - "plugin-lspkind": "plugin-lspkind", - "plugin-lspsaga": "plugin-lspsaga", - "plugin-lua-utils-nvim": "plugin-lua-utils-nvim", - "plugin-lualine": "plugin-lualine", - "plugin-luasnip": "plugin-luasnip", - "plugin-lz-n": "plugin-lz-n", - "plugin-lzn-auto-require": "plugin-lzn-auto-require", - "plugin-mind-nvim": "plugin-mind-nvim", - "plugin-mini-ai": "plugin-mini-ai", - "plugin-mini-align": "plugin-mini-align", - "plugin-mini-animate": "plugin-mini-animate", - "plugin-mini-base16": "plugin-mini-base16", - "plugin-mini-basics": "plugin-mini-basics", - "plugin-mini-bracketed": "plugin-mini-bracketed", - "plugin-mini-bufremove": "plugin-mini-bufremove", - "plugin-mini-clue": "plugin-mini-clue", - "plugin-mini-colors": "plugin-mini-colors", - "plugin-mini-comment": "plugin-mini-comment", - "plugin-mini-completion": "plugin-mini-completion", - "plugin-mini-diff": "plugin-mini-diff", - "plugin-mini-doc": "plugin-mini-doc", - "plugin-mini-extra": "plugin-mini-extra", - "plugin-mini-files": "plugin-mini-files", - "plugin-mini-fuzzy": "plugin-mini-fuzzy", - "plugin-mini-git": "plugin-mini-git", - "plugin-mini-hipatterns": "plugin-mini-hipatterns", - "plugin-mini-hues": "plugin-mini-hues", - "plugin-mini-icons": "plugin-mini-icons", - "plugin-mini-indentscope": "plugin-mini-indentscope", - "plugin-mini-jump": "plugin-mini-jump", - "plugin-mini-jump2d": "plugin-mini-jump2d", - "plugin-mini-map": "plugin-mini-map", - "plugin-mini-misc": "plugin-mini-misc", - "plugin-mini-move": "plugin-mini-move", - "plugin-mini-notify": "plugin-mini-notify", - "plugin-mini-operators": "plugin-mini-operators", - "plugin-mini-pairs": "plugin-mini-pairs", - "plugin-mini-pick": "plugin-mini-pick", - "plugin-mini-sessions": "plugin-mini-sessions", - "plugin-mini-snippets": "plugin-mini-snippets", - "plugin-mini-splitjoin": "plugin-mini-splitjoin", - "plugin-mini-starter": "plugin-mini-starter", - "plugin-mini-statusline": "plugin-mini-statusline", - "plugin-mini-surround": "plugin-mini-surround", - "plugin-mini-tabline": "plugin-mini-tabline", - "plugin-mini-test": "plugin-mini-test", - "plugin-mini-trailspace": "plugin-mini-trailspace", - "plugin-mini-visits": "plugin-mini-visits", - "plugin-minimap-vim": "plugin-minimap-vim", - "plugin-modes-nvim": "plugin-modes-nvim", - "plugin-neo-tree-nvim": "plugin-neo-tree-nvim", - "plugin-neocord": "plugin-neocord", - "plugin-neodev-nvim": "plugin-neodev-nvim", - "plugin-neorg": "plugin-neorg", - "plugin-neorg-telescope": "plugin-neorg-telescope", - "plugin-new-file-template-nvim": "plugin-new-file-template-nvim", - "plugin-noice-nvim": "plugin-noice-nvim", - "plugin-none-ls": "plugin-none-ls", - "plugin-nord": "plugin-nord", - "plugin-nui-nvim": "plugin-nui-nvim", - "plugin-nvim-autopairs": "plugin-nvim-autopairs", - "plugin-nvim-bufferline-lua": "plugin-nvim-bufferline-lua", - "plugin-nvim-cmp": "plugin-nvim-cmp", - "plugin-nvim-colorizer-lua": "plugin-nvim-colorizer-lua", - "plugin-nvim-cursorline": "plugin-nvim-cursorline", - "plugin-nvim-dap": "plugin-nvim-dap", - "plugin-nvim-dap-go": "plugin-nvim-dap-go", - "plugin-nvim-dap-ui": "plugin-nvim-dap-ui", - "plugin-nvim-docs-view": "plugin-nvim-docs-view", - "plugin-nvim-lightbulb": "plugin-nvim-lightbulb", - "plugin-nvim-lspconfig": "plugin-nvim-lspconfig", - "plugin-nvim-metals": "plugin-nvim-metals", - "plugin-nvim-navbuddy": "plugin-nvim-navbuddy", - "plugin-nvim-navic": "plugin-nvim-navic", - "plugin-nvim-neoclip": "plugin-nvim-neoclip", - "plugin-nvim-nio": "plugin-nvim-nio", - "plugin-nvim-notify": "plugin-nvim-notify", - "plugin-nvim-scrollbar": "plugin-nvim-scrollbar", - "plugin-nvim-session-manager": "plugin-nvim-session-manager", - "plugin-nvim-surround": "plugin-nvim-surround", - "plugin-nvim-tree-lua": "plugin-nvim-tree-lua", - "plugin-nvim-treesitter-context": "plugin-nvim-treesitter-context", - "plugin-nvim-ts-autotag": "plugin-nvim-ts-autotag", - "plugin-nvim-ufo": "plugin-nvim-ufo", - "plugin-nvim-web-devicons": "plugin-nvim-web-devicons", - "plugin-obsidian-nvim": "plugin-obsidian-nvim", - "plugin-omnisharp-extended": "plugin-omnisharp-extended", - "plugin-onedark": "plugin-onedark", - "plugin-orgmode-nvim": "plugin-orgmode-nvim", - "plugin-otter-nvim": "plugin-otter-nvim", - "plugin-oxocarbon": "plugin-oxocarbon", - "plugin-pathlib-nvim": "plugin-pathlib-nvim", - "plugin-plenary-nvim": "plugin-plenary-nvim", - "plugin-precognition-nvim": "plugin-precognition-nvim", - "plugin-project-nvim": "plugin-project-nvim", - "plugin-promise-async": "plugin-promise-async", - "plugin-rainbow-delimiters": "plugin-rainbow-delimiters", - "plugin-registers": "plugin-registers", - "plugin-render-markdown-nvim": "plugin-render-markdown-nvim", - "plugin-rose-pine": "plugin-rose-pine", - "plugin-rtp-nvim": "plugin-rtp-nvim", - "plugin-run-nvim": "plugin-run-nvim", - "plugin-rustaceanvim": "plugin-rustaceanvim", - "plugin-smartcolumn": "plugin-smartcolumn", - "plugin-sqls-nvim": "plugin-sqls-nvim", - "plugin-tabular": "plugin-tabular", - "plugin-telescope": "plugin-telescope", - "plugin-tiny-devicons-auto-colors": "plugin-tiny-devicons-auto-colors", - "plugin-todo-comments": "plugin-todo-comments", - "plugin-toggleterm-nvim": "plugin-toggleterm-nvim", - "plugin-tokyonight": "plugin-tokyonight", - "plugin-trouble": "plugin-trouble", - "plugin-ts-error-translator": "plugin-ts-error-translator", - "plugin-typst-preview-nvim": "plugin-typst-preview-nvim", - "plugin-vim-dirtytalk": "plugin-vim-dirtytalk", - "plugin-vim-fugitive": "plugin-vim-fugitive", - "plugin-vim-illuminate": "plugin-vim-illuminate", - "plugin-vim-markdown": "plugin-vim-markdown", - "plugin-vim-repeat": "plugin-vim-repeat", - "plugin-vim-startify": "plugin-vim-startify", - "plugin-which-key": "plugin-which-key", - "plugin-yanky-nvim": "plugin-yanky-nvim", "systems": "systems_5" }, "locked": { - "lastModified": 1739089639, - "narHash": "sha256-MCkgsVTAtoVUthorcCeit1oBuFyG7XktYdeMzyHL2uE=", + "lastModified": 1740423954, + "narHash": "sha256-iMd7ogpbVfYvadf1WjdIObQ1l7w2GhX1G27rBEMn5cc=", "owner": "notashelf", "repo": "nvf", - "rev": "a78026438cc8e280a696bcadb60f5c8f93b96a12", + "rev": "ae3fd994472a1b95be5bf1ac9f70e2a1cdb1c1d4", "type": "github" }, "original": { @@ -1248,2696 +1080,6 @@ "type": "github" } }, - "plugin-aerial-nvim": { - "flake": false, - "locked": { - "lastModified": 1736064692, - "narHash": "sha256-7YQtkUTACTMfAGoqoFDPmRrqtw+ypxDbeLCTB3sy4Us=", - "owner": "stevearc", - "repo": "aerial.nvim", - "rev": "b3ec25ca8c347fafa976484a6cace162239112e1", - "type": "github" - }, - "original": { - "owner": "stevearc", - "repo": "aerial.nvim", - "type": "github" - } - }, - "plugin-alpha-nvim": { - "flake": false, - "locked": { - "lastModified": 1731604504, - "narHash": "sha256-sNi5qarejYqM4/J7lBZI3gjVLxer5FBPq8K6qjqcMjA=", - "owner": "goolord", - "repo": "alpha-nvim", - "rev": "de72250e054e5e691b9736ee30db72c65d560771", - "type": "github" - }, - "original": { - "owner": "goolord", - "repo": "alpha-nvim", - "type": "github" - } - }, - "plugin-base16": { - "flake": false, - "locked": { - "lastModified": 1716483968, - "narHash": "sha256-GRF/6AobXHamw8TZ3FjL7SI6ulcpwpcohsIuZeCSh2A=", - "owner": "rrethy", - "repo": "base16-nvim", - "rev": "6ac181b5733518040a33017dde654059cd771b7c", - "type": "github" - }, - "original": { - "owner": "rrethy", - "repo": "base16-nvim", - "type": "github" - } - }, - "plugin-blink-cmp": { - "flake": false, - "locked": { - "lastModified": 1736295934, - "narHash": "sha256-MfHI4efAdaoCU8si6YFdznZmSTprthDq3YKuF91z7ss=", - "owner": "saghen", - "repo": "blink.cmp", - "rev": "1cc3b1a908fbcfd15451c4772759549724f38524", - "type": "github" - }, - "original": { - "owner": "saghen", - "repo": "blink.cmp", - "type": "github" - } - }, - "plugin-blink-compat": { - "flake": false, - "locked": { - "lastModified": 1734896240, - "narHash": "sha256-Rrrh+O3FbBnaAnCHwPuQyfhH+XueSkQp6ipEkn6esGY=", - "owner": "saghen", - "repo": "blink.compat", - "rev": "74b251a1e9478c4fa6d7c6bc2921d7124e6f6cbb", - "type": "github" - }, - "original": { - "owner": "saghen", - "repo": "blink.compat", - "type": "github" - } - }, - "plugin-bufdelete-nvim": { - "flake": false, - "locked": { - "lastModified": 1708814161, - "narHash": "sha256-ljUNfmpImtxFCS19HC9kFlaLlqaPDltKtnx1+/6Y33U=", - "owner": "famiu", - "repo": "bufdelete.nvim", - "rev": "f6bcea78afb3060b198125256f897040538bcb81", - "type": "github" - }, - "original": { - "owner": "famiu", - "repo": "bufdelete.nvim", - "type": "github" - } - }, - "plugin-catppuccin": { - "flake": false, - "locked": { - "lastModified": 1735299190, - "narHash": "sha256-lwQLmqm01FihJdad4QRMK23MTrouyOokyuX/3enWjzs=", - "owner": "catppuccin", - "repo": "nvim", - "rev": "f67b886d65a029f12ffa298701fb8f1efd89295d", - "type": "github" - }, - "original": { - "owner": "catppuccin", - "repo": "nvim", - "type": "github" - } - }, - "plugin-ccc": { - "flake": false, - "locked": { - "lastModified": 1727935067, - "narHash": "sha256-OhdR2sAQV5PvlhaKQ6rYneMmvQiN3QfymOeanpAs9wY=", - "owner": "uga-rosa", - "repo": "ccc.nvim", - "rev": "7c639042583c7bdc7ce2e37e5a0e0aa6d0659c6a", - "type": "github" - }, - "original": { - "owner": "uga-rosa", - "repo": "ccc.nvim", - "type": "github" - } - }, - "plugin-cellular-automaton": { - "flake": false, - "locked": { - "lastModified": 1719777869, - "narHash": "sha256-nIv7ISRk0+yWd1lGEwAV6u1U7EFQj/T9F8pU6O0Wf0s=", - "owner": "Eandrju", - "repo": "cellular-automaton.nvim", - "rev": "11aea08aa084f9d523b0142c2cd9441b8ede09ed", - "type": "github" - }, - "original": { - "owner": "Eandrju", - "repo": "cellular-automaton.nvim", - "type": "github" - } - }, - "plugin-chatgpt": { - "flake": false, - "locked": { - "lastModified": 1728720509, - "narHash": "sha256-+YVXAkG4pp7RGs8lGnNFc0kQcUV3O3kYBQaQ5Qa4wB0=", - "owner": "jackMort", - "repo": "ChatGPT.nvim", - "rev": "5b6d296eefc75331e2ff9f0adcffbd7d27862dd6", - "type": "github" - }, - "original": { - "owner": "jackMort", - "repo": "ChatGPT.nvim", - "type": "github" - } - }, - "plugin-cheatsheet-nvim": { - "flake": false, - "locked": { - "lastModified": 1640255456, - "narHash": "sha256-TYkGB7cON2t4GwMaR9H1MDG2j3btBv2AR37ade8kqTY=", - "owner": "sudormrfbin", - "repo": "cheatsheet.nvim", - "rev": "9716f9aaa94dd1fd6ce59b5aae0e5f25e2a463ef", - "type": "github" - }, - "original": { - "owner": "sudormrfbin", - "repo": "cheatsheet.nvim", - "type": "github" - } - }, - "plugin-cinnamon-nvim": { - "flake": false, - "locked": { - "lastModified": 1722992123, - "narHash": "sha256-kccQ4iFMSQ8kvE7hYz90hBrsDLo7VohFj/6lEZZiAO8=", - "owner": "declancm", - "repo": "cinnamon.nvim", - "rev": "450cb3247765fed7871b41ef4ce5fa492d834215", - "type": "github" - }, - "original": { - "owner": "declancm", - "repo": "cinnamon.nvim", - "type": "github" - } - }, - "plugin-cmp-buffer": { - "flake": false, - "locked": { - "lastModified": 1660101488, - "narHash": "sha256-dG4U7MtnXThoa/PD+qFtCt76MQ14V1wX8GMYcvxEnbM=", - "owner": "hrsh7th", - "repo": "cmp-buffer", - "rev": "3022dbc9166796b644a841a02de8dd1cc1d311fa", - "type": "github" - }, - "original": { - "owner": "hrsh7th", - "repo": "cmp-buffer", - "type": "github" - } - }, - "plugin-cmp-luasnip": { - "flake": false, - "locked": { - "lastModified": 1730707109, - "narHash": "sha256-86lKQPPyqFz8jzuLajjHMKHrYnwW6+QOcPyQEx6B+gw=", - "owner": "saadparwaiz1", - "repo": "cmp_luasnip", - "rev": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90", - "type": "github" - }, - "original": { - "owner": "saadparwaiz1", - "repo": "cmp_luasnip", - "type": "github" - } - }, - "plugin-cmp-nvim-lsp": { - "flake": false, - "locked": { - "lastModified": 1733823748, - "narHash": "sha256-iaihXNCF5bB5MdeoosD/kc3QtpA/QaIDZVLiLIurBSM=", - "owner": "hrsh7th", - "repo": "cmp-nvim-lsp", - "rev": "99290b3ec1322070bcfb9e846450a46f6efa50f0", - "type": "github" - }, - "original": { - "owner": "hrsh7th", - "repo": "cmp-nvim-lsp", - "type": "github" - } - }, - "plugin-cmp-path": { - "flake": false, - "locked": { - "lastModified": 1664784283, - "narHash": "sha256-thppiiV3wjIaZnAXmsh7j3DUc6ceSCvGzviwFUnoPaI=", - "owner": "hrsh7th", - "repo": "cmp-path", - "rev": "91ff86cd9c29299a64f968ebb45846c485725f23", - "type": "github" - }, - "original": { - "owner": "hrsh7th", - "repo": "cmp-path", - "type": "github" - } - }, - "plugin-cmp-treesitter": { - "flake": false, - "locked": { - "lastModified": 1715596479, - "narHash": "sha256-8WAk9S+/7vSz7bVHdEzjbKUokU144fvnByIeJ1gAWhU=", - "owner": "ray-x", - "repo": "cmp-treesitter", - "rev": "958fcfa0d8ce46d215e19cc3992c542f576c4123", - "type": "github" - }, - "original": { - "owner": "ray-x", - "repo": "cmp-treesitter", - "type": "github" - } - }, - "plugin-codewindow-nvim": { - "flake": false, - "locked": { - "lastModified": 1717593052, - "narHash": "sha256-HAqVTAkFZ1/vBiBP/QDE1fmwOl/PbznAxz/jmUFxs88=", - "owner": "gorbit99", - "repo": "codewindow.nvim", - "rev": "dd7017617962943eb1d152fc58940f11c6775a4a", - "type": "github" - }, - "original": { - "owner": "gorbit99", - "repo": "codewindow.nvim", - "type": "github" - } - }, - "plugin-comment-nvim": { - "flake": false, - "locked": { - "lastModified": 1717957420, - "narHash": "sha256-h0kPue5Eqd5aeu4VoLH45pF0DmWWo1d8SnLICSQ63zc=", - "owner": "numToStr", - "repo": "Comment.nvim", - "rev": "e30b7f2008e52442154b66f7c519bfd2f1e32acb", - "type": "github" - }, - "original": { - "owner": "numToStr", - "repo": "Comment.nvim", - "type": "github" - } - }, - "plugin-copilot-cmp": { - "flake": false, - "locked": { - "lastModified": 1733947099, - "narHash": "sha256-erRL8bY/zuwuCZfttw+avTrFV7pjv2H6v73NzY2bymM=", - "owner": "zbirenbaum", - "repo": "copilot-cmp", - "rev": "15fc12af3d0109fa76b60b5cffa1373697e261d1", - "type": "github" - }, - "original": { - "owner": "zbirenbaum", - "repo": "copilot-cmp", - "type": "github" - } - }, - "plugin-copilot-lua": { - "flake": false, - "locked": { - "lastModified": 1734926641, - "narHash": "sha256-c2UE0dLBtoYMvMxg+jXzfsD+wN9sZLvftJq4gGmooZU=", - "owner": "zbirenbaum", - "repo": "copilot.lua", - "rev": "886ee73b6d464b2b3e3e6a7ff55ce87feac423a9", - "type": "github" - }, - "original": { - "owner": "zbirenbaum", - "repo": "copilot.lua", - "type": "github" - } - }, - "plugin-crates-nvim": { - "flake": false, - "locked": { - "lastModified": 1727384188, - "narHash": "sha256-DIG0MXRTit4iEVoLlgsTK4znjam/QDjeZEpIDn6KHiE=", - "owner": "Saecki", - "repo": "crates.nvim", - "rev": "8bf8358ee326d5d8c11dcd7ac0bcc9ff97dbc785", - "type": "github" - }, - "original": { - "owner": "Saecki", - "repo": "crates.nvim", - "type": "github" - } - }, - "plugin-csharpls-extended": { - "flake": false, - "locked": { - "lastModified": 1734491815, - "narHash": "sha256-jO/vuNgP8JAOIturzPFvxMLL5y+6YTYsUxjWwX6Nyso=", - "owner": "Decodetalkers", - "repo": "csharpls-extended-lsp.nvim", - "rev": "4f56c06215d10c4fcfee8a7f04ba766c114aece0", - "type": "github" - }, - "original": { - "owner": "Decodetalkers", - "repo": "csharpls-extended-lsp.nvim", - "type": "github" - } - }, - "plugin-dashboard-nvim": { - "flake": false, - "locked": { - "lastModified": 1730526793, - "narHash": "sha256-Qi8kmC3U8Tvxh0pWIBtN3DuWJioEGWn7FqQ8lQwauRo=", - "owner": "glepnir", - "repo": "dashboard-nvim", - "rev": "ae309606940d26d8c9df8b048a6e136b6bbec478", - "type": "github" - }, - "original": { - "owner": "glepnir", - "repo": "dashboard-nvim", - "type": "github" - } - }, - "plugin-diffview-nvim": { - "flake": false, - "locked": { - "lastModified": 1718279802, - "narHash": "sha256-SX+ybIzL/w6uyCy4iZKnWnzTFwqB1oXSgyYVAdpdKi8=", - "owner": "sindrets", - "repo": "diffview.nvim", - "rev": "4516612fe98ff56ae0415a259ff6361a89419b0a", - "type": "github" - }, - "original": { - "owner": "sindrets", - "repo": "diffview.nvim", - "type": "github" - } - }, - "plugin-dracula": { - "flake": false, - "locked": { - "lastModified": 1734597715, - "narHash": "sha256-9iRI5NW3mcVzduitY4sr679dRWAWVbZuCAEfgM1OIOs=", - "owner": "Mofiqul", - "repo": "dracula.nvim", - "rev": "515acae4fd294fcefa5b15237a333c2606e958d1", - "type": "github" - }, - "original": { - "owner": "Mofiqul", - "repo": "dracula.nvim", - "type": "github" - } - }, - "plugin-dressing-nvim": { - "flake": false, - "locked": { - "lastModified": 1734804193, - "narHash": "sha256-N4hB5wDgoqXrXxSfzDCrqmdDtdVvq+PtOS7FBPH7qXE=", - "owner": "stevearc", - "repo": "dressing.nvim", - "rev": "3a45525bb182730fe462325c99395529308f431e", - "type": "github" - }, - "original": { - "owner": "stevearc", - "repo": "dressing.nvim", - "type": "github" - } - }, - "plugin-elixir-tools": { - "flake": false, - "locked": { - "lastModified": 1735076861, - "narHash": "sha256-CoGTVSKifjqshk8hYaQfFYTYgEGsIb1hKdz6fIS81iU=", - "owner": "elixir-tools", - "repo": "elixir-tools.nvim", - "rev": "803fa69dbb457305cff98e3997bed2c4b51aea7c", - "type": "github" - }, - "original": { - "owner": "elixir-tools", - "repo": "elixir-tools.nvim", - "type": "github" - } - }, - "plugin-fastaction-nvim": { - "flake": false, - "locked": { - "lastModified": 1734546047, - "narHash": "sha256-1GSxTyXqufjkRtNK3drWlCn/mGJ9mM9bHMR6ZwWT6X8=", - "owner": "Chaitanyabsprip", - "repo": "fastaction.nvim", - "rev": "886e22d85e13115808e81ca367d5aaba02d9a25b", - "type": "github" - }, - "original": { - "owner": "Chaitanyabsprip", - "repo": "fastaction.nvim", - "type": "github" - } - }, - "plugin-fidget-nvim": { - "flake": false, - "locked": { - "lastModified": 1734334336, - "narHash": "sha256-o0za2NxFtzHZa7PRIm9U/P1/fwJrxS1G79ukdGLhJ4Q=", - "owner": "j-hui", - "repo": "fidget.nvim", - "rev": "9238947645ce17d96f30842e61ba81147185b657", - "type": "github" - }, - "original": { - "owner": "j-hui", - "repo": "fidget.nvim", - "type": "github" - } - }, - "plugin-flutter-tools": { - "flake": false, - "locked": { - "lastModified": 1735420417, - "narHash": "sha256-xfSdPhrSUwBYdE9ZA8GgwFvR70nOp+snbNrFHeIfwOM=", - "owner": "akinsho", - "repo": "flutter-tools.nvim", - "rev": "a526c30f1941a7472509aaedda13758f943c968e", - "type": "github" - }, - "original": { - "owner": "akinsho", - "repo": "flutter-tools.nvim", - "type": "github" - } - }, - "plugin-friendly-snippets": { - "flake": false, - "locked": { - "lastModified": 1733106470, - "narHash": "sha256-I8SRZxnoNC6SOWW+scoA77Jwyxcb4eUczppLdyOiZe0=", - "owner": "rafamadriz", - "repo": "friendly-snippets", - "rev": "efff286dd74c22f731cdec26a70b46e5b203c619", - "type": "github" - }, - "original": { - "owner": "rafamadriz", - "repo": "friendly-snippets", - "type": "github" - } - }, - "plugin-fzf-lua": { - "flake": false, - "locked": { - "lastModified": 1737131132, - "narHash": "sha256-0IdADUsIr+SZ0ort92jPPfGIH1EdcwELYz+TCmDCPPI=", - "owner": "ibhagwan", - "repo": "fzf-lua", - "rev": "fbe21aeb147b3dc8b188b5753a8e288ecedcee5e", - "type": "github" - }, - "original": { - "owner": "ibhagwan", - "repo": "fzf-lua", - "type": "github" - } - }, - "plugin-gesture-nvim": { - "flake": false, - "locked": { - "lastModified": 1731669851, - "narHash": "sha256-LTkttlDmKO9ngzrJrMWeeG9R0Bz/PoroCAF2URhUEbM=", - "owner": "notomo", - "repo": "gesture.nvim", - "rev": "dbd839bda337cb73911aeef06897eb29cb99f76f", - "type": "github" - }, - "original": { - "owner": "notomo", - "repo": "gesture.nvim", - "type": "github" - } - }, - "plugin-gitsigns-nvim": { - "flake": false, - "locked": { - "lastModified": 1732361574, - "narHash": "sha256-H7A+AxioiedSuC+jqRwP4c7DjZR/0j4o/fTUasT2urc=", - "owner": "lewis6991", - "repo": "gitsigns.nvim", - "rev": "5f808b5e4fef30bd8aca1b803b4e555da07fc412", - "type": "github" - }, - "original": { - "owner": "lewis6991", - "repo": "gitsigns.nvim", - "type": "github" - } - }, - "plugin-glow-nvim": { - "flake": false, - "locked": { - "lastModified": 1703345545, - "narHash": "sha256-GsNcASzVvY0066kak2nvUY5luzanoBclqcUOsODww8g=", - "owner": "ellisonleao", - "repo": "glow.nvim", - "rev": "238070a686c1da3bccccf1079700eb4b5e19aea4", - "type": "github" - }, - "original": { - "owner": "ellisonleao", - "repo": "glow.nvim", - "type": "github" - } - }, - "plugin-gruvbox": { - "flake": false, - "locked": { - "lastModified": 1732485864, - "narHash": "sha256-qasIg1nvAlUWUUzSZLF36jnoNm8PmQa3owgh0tKGgHk=", - "owner": "ellisonleao", - "repo": "gruvbox.nvim", - "rev": "68c3460a5d1d1a362318960035c9f3466d5011f5", - "type": "github" - }, - "original": { - "owner": "ellisonleao", - "repo": "gruvbox.nvim", - "type": "github" - } - }, - "plugin-haskell-tools-nvim": { - "flake": false, - "locked": { - "lastModified": 1734222260, - "narHash": "sha256-gZVN9ADPO5wFOaf19FydCneb7aKTT9K1vcLoBURPEjk=", - "owner": "mrcjkb", - "repo": "haskell-tools.nvim", - "rev": "943b77b68a79d3991523ba4d373063c9355c6f55", - "type": "github" - }, - "original": { - "owner": "mrcjkb", - "repo": "haskell-tools.nvim", - "type": "github" - } - }, - "plugin-highlight-undo": { - "flake": false, - "locked": { - "lastModified": 1732378966, - "narHash": "sha256-b0JrMu3vbbYgyHPs9hyayMzUypFwugEAxvZOcuRMc/o=", - "owner": "tzachar", - "repo": "highlight-undo.nvim", - "rev": "5f588b420179a31d7073854bfd07ed9d5f364645", - "type": "github" - }, - "original": { - "owner": "tzachar", - "repo": "highlight-undo.nvim", - "type": "github" - } - }, - "plugin-hop-nvim": { - "flake": false, - "locked": { - "lastModified": 1694283445, - "narHash": "sha256-SnuFeD/lrMxKtpBRPgIwdG0kVF7BWe02PiV7URVDASI=", - "owner": "phaazon", - "repo": "hop.nvim", - "rev": "1a1eceafe54b5081eae4cb91c723abd1d450f34b", - "type": "github" - }, - "original": { - "owner": "phaazon", - "repo": "hop.nvim", - "type": "github" - } - }, - "plugin-icon-picker-nvim": { - "flake": false, - "locked": { - "lastModified": 1704321319, - "narHash": "sha256-VZKsVeSmPR3AA8267Mtd5sSTZl2CAqnbgqceCptgp4w=", - "owner": "ziontee113", - "repo": "icon-picker.nvim", - "rev": "3ee9a0ea9feeef08ae35e40c8be6a2fa2c20f2d3", - "type": "github" - }, - "original": { - "owner": "ziontee113", - "repo": "icon-picker.nvim", - "type": "github" - } - }, - "plugin-image-nvim": { - "flake": false, - "locked": { - "lastModified": 1735173549, - "narHash": "sha256-Sjbmf4BmjkjAorT3tojbC7JivJagFamAVgzwcCipa8k=", - "owner": "3rd", - "repo": "image.nvim", - "rev": "b991fc7f845bc6ab40c6ec00b39750dcd5190010", - "type": "github" - }, - "original": { - "owner": "3rd", - "repo": "image.nvim", - "type": "github" - } - }, - "plugin-indent-blankline": { - "flake": false, - "locked": { - "lastModified": 1733296464, - "narHash": "sha256-H3lUQZDvgj3a2STYeMUDiOYPe7rfsy08tJ4SlDd+LuE=", - "owner": "lukas-reineke", - "repo": "indent-blankline.nvim", - "rev": "259357fa4097e232730341fa60988087d189193a", - "type": "github" - }, - "original": { - "owner": "lukas-reineke", - "repo": "indent-blankline.nvim", - "type": "github" - } - }, - "plugin-leap-nvim": { - "flake": false, - "locked": { - "lastModified": 1722337962, - "narHash": "sha256-PFD/UliAHKk2ga+7p/GmoZGqZFWenIVLkzmO+FkhvrY=", - "owner": "ggandor", - "repo": "leap.nvim", - "rev": "c6bfb191f1161fbabace1f36f578a20ac6c7642c", - "type": "github" - }, - "original": { - "owner": "ggandor", - "repo": "leap.nvim", - "type": "github" - } - }, - "plugin-lsp-lines": { - "flake": false, - "locked": { - "lastModified": 1734793049, - "narHash": "sha256-jHiIZemneQACTDYZXBJqX2/PRTBoxq403ILvt1Ej1ZM=", - "owner": "~whynothugo", - "repo": "lsp_lines.nvim", - "rev": "a92c755f182b89ea91bd8a6a2227208026f27b4d", - "type": "sourcehut" - }, - "original": { - "owner": "~whynothugo", - "repo": "lsp_lines.nvim", - "type": "sourcehut" - } - }, - "plugin-lsp-signature": { - "flake": false, - "locked": { - "lastModified": 1726445971, - "narHash": "sha256-W6bN3R10B84noK7MOzvUOIc82WwyojIS97iFL/dO5yk=", - "owner": "ray-x", - "repo": "lsp_signature.nvim", - "rev": "fc38521ea4d9ec8dbd4c2819ba8126cea743943b", - "type": "github" - }, - "original": { - "owner": "ray-x", - "repo": "lsp_signature.nvim", - "type": "github" - } - }, - "plugin-lspkind": { - "flake": false, - "locked": { - "lastModified": 1733408701, - "narHash": "sha256-OCvKUBGuzwy8OWOL1x3Z3fo+0+GyBMI9TX41xSveqvE=", - "owner": "onsails", - "repo": "lspkind-nvim", - "rev": "d79a1c3299ad0ef94e255d045bed9fa26025dab6", - "type": "github" - }, - "original": { - "owner": "onsails", - "repo": "lspkind-nvim", - "type": "github" - } - }, - "plugin-lspsaga": { - "flake": false, - "locked": { - "lastModified": 1670360222, - "narHash": "sha256-7ENInq3LAPPTdm0Fb7klOc630j8m4LRj1kLZZFYLh68=", - "owner": "tami5", - "repo": "lspsaga.nvim", - "rev": "5faeec9f2508d2d49a66c0ac0d191096b4e3fa81", - "type": "github" - }, - "original": { - "owner": "tami5", - "repo": "lspsaga.nvim", - "type": "github" - } - }, - "plugin-lua-utils-nvim": { - "flake": false, - "locked": { - "lastModified": 1708177208, - "narHash": "sha256-9ildzQEMkXKZ3LHq+khGFgRQFxlIXQclQ7QU3fcU1C4=", - "owner": "nvim-neorg", - "repo": "lua-utils.nvim", - "rev": "e565749421f4bbb5d2e85e37c3cef9d56553d8bd", - "type": "github" - }, - "original": { - "owner": "nvim-neorg", - "repo": "lua-utils.nvim", - "type": "github" - } - }, - "plugin-lualine": { - "flake": false, - "locked": { - "lastModified": 1731050126, - "narHash": "sha256-IN6Qz3jGxUcylYiRTyd8j6me3pAoqJsJXtFUvph/6EI=", - "owner": "hoob3rt", - "repo": "lualine.nvim", - "rev": "2a5bae925481f999263d6f5ed8361baef8df4f83", - "type": "github" - }, - "original": { - "owner": "hoob3rt", - "repo": "lualine.nvim", - "type": "github" - } - }, - "plugin-luasnip": { - "flake": false, - "locked": { - "lastModified": 1733162004, - "narHash": "sha256-efDe3RXncnNVkj37AmIv8oj0DKurB50Dziao5FGTLP4=", - "owner": "L3MON4D3", - "repo": "LuaSnip", - "rev": "33b06d72d220aa56a7ce80a0dd6f06c70cd82b9d", - "type": "github" - }, - "original": { - "owner": "L3MON4D3", - "repo": "LuaSnip", - "type": "github" - } - }, - "plugin-lz-n": { - "flake": false, - "locked": { - "lastModified": 1735437369, - "narHash": "sha256-6NIXqwmX7RgwiZVEzmTnkJgmrPqFNx12ayIcRgNIaEs=", - "owner": "nvim-neorocks", - "repo": "lz.n", - "rev": "32be28a221b9c98e56841458e4b20c150a4169c4", - "type": "github" - }, - "original": { - "owner": "nvim-neorocks", - "repo": "lz.n", - "type": "github" - } - }, - "plugin-lzn-auto-require": { - "flake": false, - "locked": { - "lastModified": 1731009187, - "narHash": "sha256-KC1z+zC9vKODllZVpBu+udzM12oYJaS8e6LdXWtQ89U=", - "owner": "horriblename", - "repo": "lzn-auto-require", - "rev": "a075ed51976323fd7fc44ccfca89fe0449a08cca", - "type": "github" - }, - "original": { - "owner": "horriblename", - "ref": "require-rewrite", - "repo": "lzn-auto-require", - "type": "github" - } - }, - "plugin-mind-nvim": { - "flake": false, - "locked": { - "lastModified": 1679526071, - "narHash": "sha256-JIhAhQYGLLRucwlhzfckQYU5qjqbHtNH52JlGS5a79w=", - "owner": "phaazon", - "repo": "mind.nvim", - "rev": "002137dd7cf97865ebd01b6a260209d2daf2da66", - "type": "github" - }, - "original": { - "owner": "phaazon", - "repo": "mind.nvim", - "type": "github" - } - }, - "plugin-mini-ai": { - "flake": false, - "locked": { - "lastModified": 1733662803, - "narHash": "sha256-b/776l9nYM9e2atzXrvOk9dCxjzIuW/+iINC/yPv88Y=", - "owner": "echasnovski", - "repo": "mini.ai", - "rev": "ebb04799794a7f94628153991e6334c3304961b8", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.ai", - "type": "github" - } - }, - "plugin-mini-align": { - "flake": false, - "locked": { - "lastModified": 1735582248, - "narHash": "sha256-oHub8dEihIx4kcP3CD9GXG1SUObJUVpH4bg2Z6PmadQ=", - "owner": "echasnovski", - "repo": "mini.align", - "rev": "e715137aece7d05734403d793b8b6b64486bc812", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.align", - "type": "github" - } - }, - "plugin-mini-animate": { - "flake": false, - "locked": { - "lastModified": 1733078395, - "narHash": "sha256-ZePmJuHCCymTgaK46nSg5tRloxs+UKrVgVmT++rGKpc=", - "owner": "echasnovski", - "repo": "mini.animate", - "rev": "d14190ac3040116540889e2ebc25f488b195799e", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.animate", - "type": "github" - } - }, - "plugin-mini-base16": { - "flake": false, - "locked": { - "lastModified": 1734960100, - "narHash": "sha256-VGs4k/xDujPcA0Nv5T18ybSv1iqnzg0AFmaweRdhvDM=", - "owner": "echasnovski", - "repo": "mini.base16", - "rev": "23453dacc1606e5d42238d82f0b42a2985386b62", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.base16", - "type": "github" - } - }, - "plugin-mini-basics": { - "flake": false, - "locked": { - "lastModified": 1730194519, - "narHash": "sha256-R8POaMcgb6SBOxIpanZsswieywapnU7zDNjQMRTkR8U=", - "owner": "echasnovski", - "repo": "mini.basics", - "rev": "67c10b3436d5d3b892715137f4773e71c6753b13", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.basics", - "type": "github" - } - }, - "plugin-mini-bracketed": { - "flake": false, - "locked": { - "lastModified": 1737036218, - "narHash": "sha256-y+tGFF1H37ES/hnEtr3GJK3GeB6D5s8ZdSpvzl+lh3s=", - "owner": "echasnovski", - "repo": "mini.bracketed", - "rev": "0091e11fabe34973fc038a8d0d0485202742e403", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.bracketed", - "type": "github" - } - }, - "plugin-mini-bufremove": { - "flake": false, - "locked": { - "lastModified": 1730726192, - "narHash": "sha256-CB6ZIlrCQlh2W44Knnb10REDcvj4jcYkW/9CiOaoH2E=", - "owner": "echasnovski", - "repo": "mini.bufremove", - "rev": "285bdac9596ee7375db50c0f76ed04336dcd2685", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.bufremove", - "type": "github" - } - }, - "plugin-mini-clue": { - "flake": false, - "locked": { - "lastModified": 1737130586, - "narHash": "sha256-/0DpZV/jXuhaqBz5j4JN3xmofATlwPMHNSm/uTXALg0=", - "owner": "echasnovski", - "repo": "mini.clue", - "rev": "63e42dad781b9ed4845d90ef1da8c52dfb6dce3f", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.clue", - "type": "github" - } - }, - "plugin-mini-colors": { - "flake": false, - "locked": { - "lastModified": 1730726192, - "narHash": "sha256-B2JahCUhKpYwOJrl+BhSp3UQFiyyMGJAYKGK+uMv3fk=", - "owner": "echasnovski", - "repo": "mini.colors", - "rev": "d64b1c0f520579d905f97208eca85329e664ab88", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.colors", - "type": "github" - } - }, - "plugin-mini-comment": { - "flake": false, - "locked": { - "lastModified": 1736611383, - "narHash": "sha256-vAgBDSVtXCP+rlu+cmXdoZQBGShyH7KfL8E/gvDMfnM=", - "owner": "echasnovski", - "repo": "mini.comment", - "rev": "6e1f9a8ebbf6f693fa3787ceda8ca3bf3cb6aec7", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.comment", - "type": "github" - } - }, - "plugin-mini-completion": { - "flake": false, - "locked": { - "lastModified": 1732271068, - "narHash": "sha256-dlQCfHUQX9rPiSYZSRipezHX0CG/redbV2g7cpwwExY=", - "owner": "echasnovski", - "repo": "mini.completion", - "rev": "6eb9546685c4e1c4af2365b87166d4afa39d8a1b", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.completion", - "type": "github" - } - }, - "plugin-mini-diff": { - "flake": false, - "locked": { - "lastModified": 1735324663, - "narHash": "sha256-dRvW/1lfVShiHmRU0mQA5g5xDyQ0EVtVLLZ0y6WSedg=", - "owner": "echasnovski", - "repo": "mini.diff", - "rev": "00f072250061ef498f91ed226918c9ec31a416a4", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.diff", - "type": "github" - } - }, - "plugin-mini-doc": { - "flake": false, - "locked": { - "lastModified": 1723308950, - "narHash": "sha256-Q3DAEV1ZHS+lFhZKFCNoIjn41ksk7WRrVP2b2d6uSss=", - "owner": "echasnovski", - "repo": "mini.doc", - "rev": "bb73a3d1ff390f7e2740027ea2567017099a237c", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.doc", - "type": "github" - } - }, - "plugin-mini-extra": { - "flake": false, - "locked": { - "lastModified": 1736279066, - "narHash": "sha256-lUJrviUjAmJ70g2y93aNw3e1mHGHoB9lbh44HGP7zQs=", - "owner": "echasnovski", - "repo": "mini.extra", - "rev": "477e3dda7b597b49bc1373951ea7da4da834c352", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.extra", - "type": "github" - } - }, - "plugin-mini-files": { - "flake": false, - "locked": { - "lastModified": 1736535707, - "narHash": "sha256-UHW78m4BiYMMrABwdkyyzQUENgQrVFbWJnmNdRMtr0w=", - "owner": "echasnovski", - "repo": "mini.files", - "rev": "d0f03a5c38836fd2cce3dc80734124959002078c", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.files", - "type": "github" - } - }, - "plugin-mini-fuzzy": { - "flake": false, - "locked": { - "lastModified": 1730726192, - "narHash": "sha256-XvDkDfwPcBxySuz58f2mpWTeo8EsOnMvZUcNI8HNZg8=", - "owner": "echasnovski", - "repo": "mini.fuzzy", - "rev": "faa5a6c0d29c28012c90bd011162963a58715428", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.fuzzy", - "type": "github" - } - }, - "plugin-mini-git": { - "flake": false, - "locked": { - "lastModified": 1736535710, - "narHash": "sha256-rXuKopyZBCBbpKuytCdm8keruSNK1ohk2NdeZv1wifI=", - "owner": "echasnovski", - "repo": "mini-git", - "rev": "fc13dde6cfe87cf25a4fd1ee177c0d157468436b", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini-git", - "type": "github" - } - }, - "plugin-mini-hipatterns": { - "flake": false, - "locked": { - "lastModified": 1733141274, - "narHash": "sha256-zJ8OMzfcBh9NtSg2FHDjB5DFX9C2qZRo8t8lc097sCI=", - "owner": "echasnovski", - "repo": "mini.hipatterns", - "rev": "f34975103a38b3f608219a1324cdfc58ea660b8b", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.hipatterns", - "type": "github" - } - }, - "plugin-mini-hues": { - "flake": false, - "locked": { - "lastModified": 1734960100, - "narHash": "sha256-4y79ejOkRL/fajZ4jC8t4K6EgNbnTsH++mIjmo6G3q0=", - "owner": "echasnovski", - "repo": "mini.hues", - "rev": "ae6ad4c666ff42c1102344fe1eba18bb486f2e46", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.hues", - "type": "github" - } - }, - "plugin-mini-icons": { - "flake": false, - "locked": { - "lastModified": 1737036219, - "narHash": "sha256-w0PxiTj9uiUffZXkMM18IO/b/zPpdRKW9ydyhvXRoqE=", - "owner": "echasnovski", - "repo": "mini.icons", - "rev": "910db5df9724d65371182948f921fce23c2c881e", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.icons", - "type": "github" - } - }, - "plugin-mini-indentscope": { - "flake": false, - "locked": { - "lastModified": 1737036220, - "narHash": "sha256-Mrzc7oHXxyEGqdE003qiC9unScyb7i5A6+l8Do7yxws=", - "owner": "echasnovski", - "repo": "mini.indentscope", - "rev": "613df2830d7faeae7483ba2e736683154b95921e", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.indentscope", - "type": "github" - } - }, - "plugin-mini-jump": { - "flake": false, - "locked": { - "lastModified": 1733662809, - "narHash": "sha256-qMP9ezk4xZov5S4vrUFM62lnc4YkEaZL1EVzdXwDq1Q=", - "owner": "echasnovski", - "repo": "mini.jump", - "rev": "bb93d998c9db6936697746330411f5fb9957145e", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.jump", - "type": "github" - } - }, - "plugin-mini-jump2d": { - "flake": false, - "locked": { - "lastModified": 1733662811, - "narHash": "sha256-+DihKCh6GYwin3H9YD+q30MLMRNXvvb1GtKnfBinGjc=", - "owner": "echasnovski", - "repo": "mini.jump2d", - "rev": "88077058297e80f1c76a18ed801ae9d7064187c6", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.jump2d", - "type": "github" - } - }, - "plugin-mini-map": { - "flake": false, - "locked": { - "lastModified": 1725613927, - "narHash": "sha256-dL+d92+GLAILQ/A1JVCwoe3B5WtwVK01tPuC+fOTB5A=", - "owner": "echasnovski", - "repo": "mini.map", - "rev": "4c58e755d75f9999abcd3b3c6e934734b6a8b098", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.map", - "type": "github" - } - }, - "plugin-mini-misc": { - "flake": false, - "locked": { - "lastModified": 1734103112, - "narHash": "sha256-qnYa4IZk14MGZArmVpn15l+P9cwtFWomBVxRuYHVyXc=", - "owner": "echasnovski", - "repo": "mini.misc", - "rev": "645fb9367c19bb485902e54e5451425981498601", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.misc", - "type": "github" - } - }, - "plugin-mini-move": { - "flake": false, - "locked": { - "lastModified": 1723711319, - "narHash": "sha256-nX0eAlhMnKhAftgM6qeHUuawagumLQMPKDkqZNPLljg=", - "owner": "echasnovski", - "repo": "mini.move", - "rev": "4caa1c212f5ca3d1633d21cfb184808090ed74b1", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.move", - "type": "github" - } - }, - "plugin-mini-notify": { - "flake": false, - "locked": { - "lastModified": 1736790793, - "narHash": "sha256-q27j14OV6LAfoxeqBG75GSiqtqmW37GOPHpmA2fD4gs=", - "owner": "echasnovski", - "repo": "mini.notify", - "rev": "05e598d5b349bd66404d576e6a4d4340aea5f194", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.notify", - "type": "github" - } - }, - "plugin-mini-operators": { - "flake": false, - "locked": { - "lastModified": 1731776514, - "narHash": "sha256-+Zhy0AhuMPSHnM6dqbV45Aa7dS7XJ4mpfcHApSbuy8A=", - "owner": "echasnovski", - "repo": "mini.operators", - "rev": "7cb4dc66c51a3d736d347bbc517dc73dc7d28888", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.operators", - "type": "github" - } - }, - "plugin-mini-pairs": { - "flake": false, - "locked": { - "lastModified": 1728656795, - "narHash": "sha256-PtHxLKU1smVTx655r5SINxuz5CJmZWnBW70T8zJ/oxM=", - "owner": "echasnovski", - "repo": "mini.pairs", - "rev": "7e834c5937d95364cc1740e20d673afe2d034cdb", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.pairs", - "type": "github" - } - }, - "plugin-mini-pick": { - "flake": false, - "locked": { - "lastModified": 1736696004, - "narHash": "sha256-Q4GD0WzUYNtoBMx8pIl6fX5glKn1oflS4HZVC+w/eAM=", - "owner": "echasnovski", - "repo": "mini.pick", - "rev": "09ade94d2c9c5133db9ae00f3693d82eae78e9be", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.pick", - "type": "github" - } - }, - "plugin-mini-sessions": { - "flake": false, - "locked": { - "lastModified": 1735582250, - "narHash": "sha256-vyn8MGyOWFgJ5QVvjYb7K1cKDtg9qWnWYMNf80+kpHk=", - "owner": "echasnovski", - "repo": "mini.sessions", - "rev": "71c9ae596664ac110560d27eb928fc24e22bc53d", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.sessions", - "type": "github" - } - }, - "plugin-mini-snippets": { - "flake": false, - "locked": { - "lastModified": 1736611383, - "narHash": "sha256-How9m7KTo66FrwjZQlgZRmJ5toFKn/+GnUbx/0va3lM=", - "owner": "echasnovski", - "repo": "mini.snippets", - "rev": "72920f62e3dd1330720e94e8f5d42592f3a1ecf8", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.snippets", - "type": "github" - } - }, - "plugin-mini-splitjoin": { - "flake": false, - "locked": { - "lastModified": 1719822504, - "narHash": "sha256-LDIbh5KfupTI4zkYOlLmVCd3DuZRhx5lTASN53VG34g=", - "owner": "echasnovski", - "repo": "mini.splitjoin", - "rev": "3e92f6764e770ba392325cad3a4497adcada695f", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.splitjoin", - "type": "github" - } - }, - "plugin-mini-starter": { - "flake": false, - "locked": { - "lastModified": 1736858747, - "narHash": "sha256-pJYkZUo+L3IeGCRdTipqTzMv+HatpNnyRxshaygKtIw=", - "owner": "echasnovski", - "repo": "mini.starter", - "rev": "4b257cfc93241e8c8cde3f9302d1616ad4e0d036", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.starter", - "type": "github" - } - }, - "plugin-mini-statusline": { - "flake": false, - "locked": { - "lastModified": 1735582251, - "narHash": "sha256-AQ2N93JDjtFpgerWTzRspmxrl9oQuALbeCUxBO4ZPqo=", - "owner": "echasnovski", - "repo": "mini.statusline", - "rev": "1b0edf76fe2af015f8c989385ff949f1db7aade2", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.statusline", - "type": "github" - } - }, - "plugin-mini-surround": { - "flake": false, - "locked": { - "lastModified": 1733662812, - "narHash": "sha256-okWJlG0KOdg1ShvkIIMnPSoOzGd7K84eDcp5kx6eVP8=", - "owner": "echasnovski", - "repo": "mini.surround", - "rev": "aa5e245829dd12d8ff0c96ef11da28681d6049aa", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.surround", - "type": "github" - } - }, - "plugin-mini-tabline": { - "flake": false, - "locked": { - "lastModified": 1729176541, - "narHash": "sha256-nucUqSN8w2xBnDp1dFBgRVVvfVoqZMdx7Zj78wdFAP0=", - "owner": "echasnovski", - "repo": "mini.tabline", - "rev": "06ef4ecaeca2e362c7d31113435d86d144b3cbbe", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.tabline", - "type": "github" - } - }, - "plugin-mini-test": { - "flake": false, - "locked": { - "lastModified": 1729520957, - "narHash": "sha256-NtsX441k84owAAJywq4G2rMvV6d7UR2K75G8oKam+gs=", - "owner": "echasnovski", - "repo": "mini.test", - "rev": "86a64d5a4bf9d73ebf5875edaae0d878f64f5e48", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.test", - "type": "github" - } - }, - "plugin-mini-trailspace": { - "flake": false, - "locked": { - "lastModified": 1725613928, - "narHash": "sha256-JKYvFz8g8kVZvxE44RhwoHXQykghXx7ebW/Mj1ZdJIw=", - "owner": "echasnovski", - "repo": "mini.trailspace", - "rev": "3a328e62559c33014e422fb9ae97afc4208208b1", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.trailspace", - "type": "github" - } - }, - "plugin-mini-visits": { - "flake": false, - "locked": { - "lastModified": 1737036221, - "narHash": "sha256-Q+m1gZ5Obu6Zzo87Djt6VCX76ZjdOiLb0j771jP8uQE=", - "owner": "echasnovski", - "repo": "mini.visits", - "rev": "90f20ba6ab7d3d7cb984fffddd82f5f6c7a6bea7", - "type": "github" - }, - "original": { - "owner": "echasnovski", - "repo": "mini.visits", - "type": "github" - } - }, - "plugin-minimap-vim": { - "flake": false, - "locked": { - "lastModified": 1710689313, - "narHash": "sha256-GR8VAHla5HWry1TAZQv0Xp7iG256vIGeQcBGMxyt310=", - "owner": "wfxr", - "repo": "minimap.vim", - "rev": "395378137e6180762d5b963ca9ad5ac2db5d3283", - "type": "github" - }, - "original": { - "owner": "wfxr", - "repo": "minimap.vim", - "type": "github" - } - }, - "plugin-modes-nvim": { - "flake": false, - "locked": { - "lastModified": 1734414076, - "narHash": "sha256-ShIK8ROowT1yFHgSIVHUFnnQOEMr3YPIqw4ixzR8w8M=", - "owner": "mvllow", - "repo": "modes.nvim", - "rev": "c7a4b1b383606832aab150902719bd5eb5cdb2b0", - "type": "github" - }, - "original": { - "owner": "mvllow", - "repo": "modes.nvim", - "type": "github" - } - }, - "plugin-neo-tree-nvim": { - "flake": false, - "locked": { - "lastModified": 1735302061, - "narHash": "sha256-tZMneZsEbB5bgZgYq4ZWwK25B3vcnn80Q7diKcRoEv4=", - "owner": "nvim-neo-tree", - "repo": "neo-tree.nvim", - "rev": "a9f8943b4c31f8460d25c71e0f463d65e9775f1c", - "type": "github" - }, - "original": { - "owner": "nvim-neo-tree", - "repo": "neo-tree.nvim", - "type": "github" - } - }, - "plugin-neocord": { - "flake": false, - "locked": { - "lastModified": 1733429637, - "narHash": "sha256-g/pq6hFo7duonIl1wWoxbJUTh/IRTH3hHEoQUdoiqKE=", - "owner": "IogaMaster", - "repo": "neocord", - "rev": "4d55d8dab2d5f2f272192add7a2c21982039c699", - "type": "github" - }, - "original": { - "owner": "IogaMaster", - "repo": "neocord", - "type": "github" - } - }, - "plugin-neodev-nvim": { - "flake": false, - "locked": { - "lastModified": 1720260306, - "narHash": "sha256-hOjzlo/IqmV8tYjGwfmcCPEmHYsWnEIwtHZdhpwA1kM=", - "owner": "folke", - "repo": "neodev.nvim", - "rev": "46aa467dca16cf3dfe27098042402066d2ae242d", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "neodev.nvim", - "type": "github" - } - }, - "plugin-neorg": { - "flake": false, - "locked": { - "lastModified": 1734188232, - "narHash": "sha256-xH87caxEebrWLwY/v3xyyOy6PTG/ZqX2OfCdwg/RqDY=", - "owner": "nvim-neorg", - "repo": "neorg", - "rev": "6b945909d84b5aeadc875f9b3f529ec44b9bc60f", - "type": "github" - }, - "original": { - "owner": "nvim-neorg", - "repo": "neorg", - "type": "github" - } - }, - "plugin-neorg-telescope": { - "flake": false, - "locked": { - "lastModified": 1722358034, - "narHash": "sha256-ei4uUqpIQjGKzu5ryu0Hlmis9TS9FJsYnjt4J4QdWlw=", - "owner": "nvim-neorg", - "repo": "neorg-telescope", - "rev": "ddb2556644cae922699a239bbb0fe16e25b084b7", - "type": "github" - }, - "original": { - "owner": "nvim-neorg", - "repo": "neorg-telescope", - "type": "github" - } - }, - "plugin-new-file-template-nvim": { - "flake": false, - "locked": { - "lastModified": 1721518222, - "narHash": "sha256-g0IjJrHRXw7U9goVLzVYUyHBSsDZGHMpi3YZPhg64zA=", - "owner": "otavioschwanck", - "repo": "new-file-template.nvim", - "rev": "6ac66669dbf2dc5cdee184a4fe76d22465ca67e8", - "type": "github" - }, - "original": { - "owner": "otavioschwanck", - "repo": "new-file-template.nvim", - "type": "github" - } - }, - "plugin-noice-nvim": { - "flake": false, - "locked": { - "lastModified": 1734026622, - "narHash": "sha256-OpwgNTGunmy6Y7D/k0T+DFK/WJ8MeVTGWwjiPTQlvEY=", - "owner": "folke", - "repo": "noice.nvim", - "rev": "eaed6cc9c06aa2013b5255349e4f26a6b17ab70f", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "noice.nvim", - "type": "github" - } - }, - "plugin-none-ls": { - "flake": false, - "locked": { - "lastModified": 1708525772, - "narHash": "sha256-VCDUKiy9C3Bu9suf2bI6XSis1+j01oFC3GFPyQxi74c=", - "owner": "nvimtools", - "repo": "none-ls.nvim", - "rev": "bb680d752cec37949faca7a1f509e2fe67ab418a", - "type": "github" - }, - "original": { - "owner": "nvimtools", - "repo": "none-ls.nvim", - "rev": "bb680d752cec37949faca7a1f509e2fe67ab418a", - "type": "github" - } - }, - "plugin-nord": { - "flake": false, - "locked": { - "lastModified": 1737019140, - "narHash": "sha256-ZhDS7Y90DKp+jkUqcoQRf/zHy4DVgSDQXrnl3sBYJXs=", - "owner": "gbprod", - "repo": "nord.nvim", - "rev": "b0f3ed242fd8e5bafa7231367821d46c6c835dd8", - "type": "github" - }, - "original": { - "owner": "gbprod", - "repo": "nord.nvim", - "type": "github" - } - }, - "plugin-nui-nvim": { - "flake": false, - "locked": { - "lastModified": 1733856815, - "narHash": "sha256-6U7E/i5FuNXQy+sF4C5DVxuTPqNKD5wxUgFohpOjm9Q=", - "owner": "MunifTanjim", - "repo": "nui.nvim", - "rev": "53e907ffe5eedebdca1cd503b00aa8692068ca46", - "type": "github" - }, - "original": { - "owner": "MunifTanjim", - "repo": "nui.nvim", - "type": "github" - } - }, - "plugin-nvim-autopairs": { - "flake": false, - "locked": { - "lastModified": 1731803843, - "narHash": "sha256-LbaxiU3ienVBcMKrug3Coppc4R+MD2rjREw7rHQim1w=", - "owner": "windwp", - "repo": "nvim-autopairs", - "rev": "b464658e9b880f463b9f7e6ccddd93fb0013f559", - "type": "github" - }, - "original": { - "owner": "windwp", - "repo": "nvim-autopairs", - "type": "github" - } - }, - "plugin-nvim-bufferline-lua": { - "flake": false, - "locked": { - "lastModified": 1732824069, - "narHash": "sha256-zqz2GMius0gLxtgxt12RmLUVQFVaWe+MQaGCfUGr6bI=", - "owner": "akinsho", - "repo": "nvim-bufferline.lua", - "rev": "261a72b90d6db4ed8014f7bda976bcdc9dd7ce76", - "type": "github" - }, - "original": { - "owner": "akinsho", - "repo": "nvim-bufferline.lua", - "type": "github" - } - }, - "plugin-nvim-cmp": { - "flake": false, - "locked": { - "lastModified": 1734672427, - "narHash": "sha256-Z/Qy2ErbCa7dbjZVuJUkMmb4d24amNunNgRcbCGPfOg=", - "owner": "hrsh7th", - "repo": "nvim-cmp", - "rev": "b555203ce4bd7ff6192e759af3362f9d217e8c89", - "type": "github" - }, - "original": { - "owner": "hrsh7th", - "repo": "nvim-cmp", - "type": "github" - } - }, - "plugin-nvim-colorizer-lua": { - "flake": false, - "locked": { - "lastModified": 1738229011, - "narHash": "sha256-IEgZnIUeNXRKZ4eV1+KknluyKZj68HBWe1EW+LueuGA=", - "owner": "catgoose", - "repo": "nvim-colorizer.lua", - "rev": "9b5fe0450bfb2521c6cea29391e5ec571f129136", - "type": "github" - }, - "original": { - "owner": "catgoose", - "repo": "nvim-colorizer.lua", - "type": "github" - } - }, - "plugin-nvim-cursorline": { - "flake": false, - "locked": { - "lastModified": 1650034925, - "narHash": "sha256-Uhw65p1KBjs8KsVOmTzuiu3XKclxBob8AVdWEt30C/8=", - "owner": "yamatsum", - "repo": "nvim-cursorline", - "rev": "804f0023692653b2b2368462d67d2a87056947f9", - "type": "github" - }, - "original": { - "owner": "yamatsum", - "repo": "nvim-cursorline", - "type": "github" - } - }, - "plugin-nvim-dap": { - "flake": false, - "locked": { - "lastModified": 1735568902, - "narHash": "sha256-5iaXim9bDvSAI6jUXgu2OEk/KivfAsMTRry+UTHs2Gk=", - "owner": "mfussenegger", - "repo": "nvim-dap", - "rev": "ffb077e65259f13be096ea6d603e3575a76b214a", - "type": "github" - }, - "original": { - "owner": "mfussenegger", - "repo": "nvim-dap", - "type": "github" - } - }, - "plugin-nvim-dap-go": { - "flake": false, - "locked": { - "lastModified": 1727922873, - "narHash": "sha256-wcGp5df1ER5T5oLVitWE02OywgJs3V4pazcGU5qVaUY=", - "owner": "leoluz", - "repo": "nvim-dap-go", - "rev": "6aa88167ea1224bcef578e8c7160fe8afbb44848", - "type": "github" - }, - "original": { - "owner": "leoluz", - "repo": "nvim-dap-go", - "type": "github" - } - }, - "plugin-nvim-dap-ui": { - "flake": false, - "locked": { - "lastModified": 1735324898, - "narHash": "sha256-psIBQpx3tV2UWm5hZTMPBANcXHPAX24dIuDq8Qcscxs=", - "owner": "rcarriga", - "repo": "nvim-dap-ui", - "rev": "e94d98649dccb6a3884b66aabc2e07beb279e535", - "type": "github" - }, - "original": { - "owner": "rcarriga", - "repo": "nvim-dap-ui", - "type": "github" - } - }, - "plugin-nvim-docs-view": { - "flake": false, - "locked": { - "lastModified": 1733658747, - "narHash": "sha256-b5aH8Tj+tMk0BjNCgdeCEeR26oQ9NCobj98P7IDgIPY=", - "owner": "amrbashir", - "repo": "nvim-docs-view", - "rev": "1b97f8f954d74c46061bf289b6cea9232484c12c", - "type": "github" - }, - "original": { - "owner": "amrbashir", - "repo": "nvim-docs-view", - "type": "github" - } - }, - "plugin-nvim-lightbulb": { - "flake": false, - "locked": { - "lastModified": 1734997673, - "narHash": "sha256-byvgRJvvt5rhiUVWdreY2jELXoPVld5EKQlOXwjNgWE=", - "owner": "kosayoda", - "repo": "nvim-lightbulb", - "rev": "3ac0791be37ba9cc7939f1ad90ebc5e75abf4eea", - "type": "github" - }, - "original": { - "owner": "kosayoda", - "repo": "nvim-lightbulb", - "type": "github" - } - }, - "plugin-nvim-lspconfig": { - "flake": false, - "locked": { - "lastModified": 1735439232, - "narHash": "sha256-6a1HjpLYdZ+ZmWM1B0tv631A3EHHstPrjaV15UnVtoY=", - "owner": "neovim", - "repo": "nvim-lspconfig", - "rev": "8b15a1a597a59f4f5306fad9adfe99454feab743", - "type": "github" - }, - "original": { - "owner": "neovim", - "repo": "nvim-lspconfig", - "type": "github" - } - }, - "plugin-nvim-metals": { - "flake": false, - "locked": { - "lastModified": 1735386491, - "narHash": "sha256-G9V7fX65uW4z7kiuiP8mLtEjLoTJ1mkltj51OlN5/oM=", - "owner": "scalameta", - "repo": "nvim-metals", - "rev": "e6b02c99161b43c67cfe1d6e5f9a9b9a0bb4701c", - "type": "github" - }, - "original": { - "owner": "scalameta", - "repo": "nvim-metals", - "type": "github" - } - }, - "plugin-nvim-navbuddy": { - "flake": false, - "locked": { - "lastModified": 1716111817, - "narHash": "sha256-sZ1M27qNbLMHKR4Zu0NfJoBcQxJbhmW7Cx74Acirlww=", - "owner": "SmiteshP", - "repo": "nvim-navbuddy", - "rev": "f22bac988f2dd073601d75ba39ea5636ab6e38cb", - "type": "github" - }, - "original": { - "owner": "SmiteshP", - "repo": "nvim-navbuddy", - "type": "github" - } - }, - "plugin-nvim-navic": { - "flake": false, - "locked": { - "lastModified": 1701345631, - "narHash": "sha256-0p5n/V8Jlj9XyxV/fuMwsbQ7oV5m9H2GqZZEA/njxCQ=", - "owner": "SmiteshP", - "repo": "nvim-navic", - "rev": "8649f694d3e76ee10c19255dece6411c29206a54", - "type": "github" - }, - "original": { - "owner": "SmiteshP", - "repo": "nvim-navic", - "type": "github" - } - }, - "plugin-nvim-neoclip": { - "flake": false, - "locked": { - "lastModified": 1734898459, - "narHash": "sha256-RCMZi1DM9JFrXWQ5w2wOjFzpANkiukn+RvHB9swMtbk=", - "owner": "AckslD", - "repo": "nvim-neoclip.lua", - "rev": "5e5e010251281f4aea69cfc1d4976ffe6065cf0f", - "type": "github" - }, - "original": { - "owner": "AckslD", - "repo": "nvim-neoclip.lua", - "type": "github" - } - }, - "plugin-nvim-nio": { - "flake": false, - "locked": { - "lastModified": 1720707425, - "narHash": "sha256-i6imNTb1xrfBlaeOyxyIwAZ/+o6ew9C4/z34a7/BgFg=", - "owner": "nvim-neotest", - "repo": "nvim-nio", - "rev": "a428f309119086dc78dd4b19306d2d67be884eee", - "type": "github" - }, - "original": { - "owner": "nvim-neotest", - "repo": "nvim-nio", - "type": "github" - } - }, - "plugin-nvim-notify": { - "flake": false, - "locked": { - "lastModified": 1735562588, - "narHash": "sha256-9jDpoLLto9WgTsV399WeE2XGrTJXWTYbcJ+zOFWldAA=", - "owner": "rcarriga", - "repo": "nvim-notify", - "rev": "c3797193536711b5d8983975791c4b11dc35ab3a", - "type": "github" - }, - "original": { - "owner": "rcarriga", - "repo": "nvim-notify", - "type": "github" - } - }, - "plugin-nvim-scrollbar": { - "flake": false, - "locked": { - "lastModified": 1729162132, - "narHash": "sha256-/nB7eP2Rz/A9zMXrNEH4FReo6eZS0C/SEGvKhxV7AUA=", - "owner": "petertriho", - "repo": "nvim-scrollbar", - "rev": "6994eb9f73d5fdc36ee2c8717940e8c853e51a49", - "type": "github" - }, - "original": { - "owner": "petertriho", - "repo": "nvim-scrollbar", - "type": "github" - } - }, - "plugin-nvim-session-manager": { - "flake": false, - "locked": { - "lastModified": 1728423652, - "narHash": "sha256-W9jtfVXHC8MQJwdbxakNqhd+xh/auQb3U09XKdN2Wzw=", - "owner": "Shatur", - "repo": "neovim-session-manager", - "rev": "ce43f2eb2a52492157d7742e5f684b9a42bb3e5c", - "type": "github" - }, - "original": { - "owner": "Shatur", - "repo": "neovim-session-manager", - "type": "github" - } - }, - "plugin-nvim-surround": { - "flake": false, - "locked": { - "lastModified": 1732818349, - "narHash": "sha256-sC+V86FEDfIapY4Qy0Ch2dTUpqe+C/xEUR/iSIEY6LA=", - "owner": "kylechui", - "repo": "nvim-surround", - "rev": "9f0cb495f25bff32c936062d85046fbda0c43517", - "type": "github" - }, - "original": { - "owner": "kylechui", - "repo": "nvim-surround", - "type": "github" - } - }, - "plugin-nvim-tree-lua": { - "flake": false, - "locked": { - "lastModified": 1734820548, - "narHash": "sha256-4PmP31vYPH9xw4AjV5rDSKvcvZGTnIaPfR4Bwc0lAiA=", - "owner": "nvim-tree", - "repo": "nvim-tree.lua", - "rev": "68fc4c20f5803444277022c681785c5edd11916d", - "type": "github" - }, - "original": { - "owner": "nvim-tree", - "repo": "nvim-tree.lua", - "type": "github" - } - }, - "plugin-nvim-treesitter-context": { - "flake": false, - "locked": { - "lastModified": 1734710732, - "narHash": "sha256-TIFMPKzD2ero1eK9aVfY1iKEvf/Sw8SL/9mk9omCQ3c=", - "owner": "nvim-treesitter", - "repo": "nvim-treesitter-context", - "rev": "2bcf700b59bc92850ca83a1c02e86ba832e0fae0", - "type": "github" - }, - "original": { - "owner": "nvim-treesitter", - "repo": "nvim-treesitter-context", - "type": "github" - } - }, - "plugin-nvim-ts-autotag": { - "flake": false, - "locked": { - "lastModified": 1733164313, - "narHash": "sha256-v2NTFBIzKTYizUPWB3uhpnTGVZWaelhE3MT5+BDA6Do=", - "owner": "windwp", - "repo": "nvim-ts-autotag", - "rev": "1cca23c9da708047922d3895a71032bc0449c52d", - "type": "github" - }, - "original": { - "owner": "windwp", - "repo": "nvim-ts-autotag", - "type": "github" - } - }, - "plugin-nvim-ufo": { - "flake": false, - "locked": { - "lastModified": 1735147722, - "narHash": "sha256-etyfm4KpwjYN+kkotOMl0LgbQniILmqMqab4acMtTlw=", - "owner": "kevinhwang91", - "repo": "nvim-ufo", - "rev": "32cb247b893a384f1888b9cd737264159ecf183c", - "type": "github" - }, - "original": { - "owner": "kevinhwang91", - "repo": "nvim-ufo", - "type": "github" - } - }, - "plugin-nvim-web-devicons": { - "flake": false, - "locked": { - "lastModified": 1735569123, - "narHash": "sha256-h9rY6F+2sBlG9PFN34/0ZTkY66oCeCIPe/HEadM03K4=", - "owner": "nvim-tree", - "repo": "nvim-web-devicons", - "rev": "4adeeaa7a32d46cf3b5833341358c797304f950a", - "type": "github" - }, - "original": { - "owner": "nvim-tree", - "repo": "nvim-web-devicons", - "type": "github" - } - }, - "plugin-obsidian-nvim": { - "flake": false, - "locked": { - "lastModified": 1722536347, - "narHash": "sha256-mbq7fAPmlwOAbWlN3lGX9WGBKTV8cAPZx8pnRCyszJc=", - "owner": "epwalsh", - "repo": "obsidian.nvim", - "rev": "14e0427bef6c55da0d63f9a313fd9941be3a2479", - "type": "github" - }, - "original": { - "owner": "epwalsh", - "repo": "obsidian.nvim", - "type": "github" - } - }, - "plugin-omnisharp-extended": { - "flake": false, - "locked": { - "lastModified": 1732802864, - "narHash": "sha256-lA22ncMWHz2oVcZMPQGpLL3UjjXOXGxhtXR1LX5cX3A=", - "owner": "Hoffs", - "repo": "omnisharp-extended-lsp.nvim", - "rev": "4916fa12e5b28d21a1f031f0bdd10aa15a75d85d", - "type": "github" - }, - "original": { - "owner": "Hoffs", - "repo": "omnisharp-extended-lsp.nvim", - "type": "github" - } - }, - "plugin-onedark": { - "flake": false, - "locked": { - "lastModified": 1731171496, - "narHash": "sha256-NLHq9SUUo81m50NPQe8852uZbo4Mo4No10N3ptX43t0=", - "owner": "navarasu", - "repo": "onedark.nvim", - "rev": "67a74c275d1116d575ab25485d1bfa6b2a9c38a6", - "type": "github" - }, - "original": { - "owner": "navarasu", - "repo": "onedark.nvim", - "type": "github" - } - }, - "plugin-orgmode-nvim": { - "flake": false, - "locked": { - "lastModified": 1734770880, - "narHash": "sha256-E1YJeTay1tX2PgiXwV/DRgrlYHIGUe9/uTA+6ORIhBw=", - "owner": "nvim-orgmode", - "repo": "orgmode", - "rev": "bf657742f7cb56211f99946ff64f5f87d7d7f0d0", - "type": "github" - }, - "original": { - "owner": "nvim-orgmode", - "repo": "orgmode", - "type": "github" - } - }, - "plugin-otter-nvim": { - "flake": false, - "locked": { - "lastModified": 1735130975, - "narHash": "sha256-NPBGcLi1lEmpGGbGs58Xzw1IriOyKTMQdwIdVFsbVDM=", - "owner": "jmbuhr", - "repo": "otter.nvim", - "rev": "e8c662e1aefa8b483cfba6e00729a39a363dcecc", - "type": "github" - }, - "original": { - "owner": "jmbuhr", - "repo": "otter.nvim", - "type": "github" - } - }, - "plugin-oxocarbon": { - "flake": false, - "locked": { - "lastModified": 1724853107, - "narHash": "sha256-Hi/nATEvZ4a6Yxc66KtuJqss6kQV19cmtIlhCw6alOI=", - "owner": "nyoom-engineering", - "repo": "oxocarbon.nvim", - "rev": "004777819ba294423b638a35a75c9f0c7be758ed", - "type": "github" - }, - "original": { - "owner": "nyoom-engineering", - "repo": "oxocarbon.nvim", - "type": "github" - } - }, - "plugin-pathlib-nvim": { - "flake": false, - "locked": { - "lastModified": 1724943804, - "narHash": "sha256-YhCJeNKlcjgg3q51UWFhuIEPzNueC8YTpeuPPJDndvw=", - "owner": "pysan3", - "repo": "pathlib.nvim", - "rev": "57e5598af6fe253761c1b48e0b59b7cd6699e2c1", - "type": "github" - }, - "original": { - "owner": "pysan3", - "repo": "pathlib.nvim", - "type": "github" - } - }, - "plugin-plenary-nvim": { - "flake": false, - "locked": { - "lastModified": 1726602776, - "narHash": "sha256-bmmPekAvuBvLQmrnnX0n+FRBqfVxBsObhxIEkDGAla4=", - "owner": "nvim-lua", - "repo": "plenary.nvim", - "rev": "2d9b06177a975543726ce5c73fca176cedbffe9d", - "type": "github" - }, - "original": { - "owner": "nvim-lua", - "repo": "plenary.nvim", - "type": "github" - } - }, - "plugin-precognition-nvim": { - "flake": false, - "locked": { - "lastModified": 1732647805, - "narHash": "sha256-m3dKoKxCd/QODM+EL89c3RVOoZnuA4nrBG0KhPZ/o9Y=", - "owner": "tris203", - "repo": "precognition.nvim", - "rev": "531971e6d883e99b1572bf47294e22988d8fbec0", - "type": "github" - }, - "original": { - "owner": "tris203", - "repo": "precognition.nvim", - "type": "github" - } - }, - "plugin-project-nvim": { - "flake": false, - "locked": { - "lastModified": 1680567592, - "narHash": "sha256-avV3wMiDbraxW4mqlEsKy0oeewaRj9Q33K8NzWoaptU=", - "owner": "ahmedkhalf", - "repo": "project.nvim", - "rev": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb", - "type": "github" - }, - "original": { - "owner": "ahmedkhalf", - "repo": "project.nvim", - "type": "github" - } - }, - "plugin-promise-async": { - "flake": false, - "locked": { - "lastModified": 1722813441, - "narHash": "sha256-9eM66brPjiFlY64vmBetRYrKnpDyN7+/URMm4GsGimA=", - "owner": "kevinhwang91", - "repo": "promise-async", - "rev": "119e8961014c9bfaf1487bf3c2a393d254f337e2", - "type": "github" - }, - "original": { - "owner": "kevinhwang91", - "repo": "promise-async", - "type": "github" - } - }, - "plugin-rainbow-delimiters": { - "flake": false, - "locked": { - "lastModified": 1736686348, - "narHash": "sha256-zWHXYs3XdnoszqOFY3hA2L5mNn1a44OAeKv3lL3EMEw=", - "owner": "HiPhish", - "repo": "rainbow-delimiters.nvim", - "rev": "85b80abaa09cbbc039e3095b2f515b3cf8cadd11", - "type": "github" - }, - "original": { - "owner": "HiPhish", - "repo": "rainbow-delimiters.nvim", - "type": "github" - } - }, - "plugin-registers": { - "flake": false, - "locked": { - "lastModified": 1730794647, - "narHash": "sha256-M7uR3yXYUQ4I8Gt8P6k25q67UNwksRDPKGrS/FCqrt0=", - "owner": "tversteeg", - "repo": "registers.nvim", - "rev": "c217f8f369e0886776cda6c94eab839b30a8940d", - "type": "github" - }, - "original": { - "owner": "tversteeg", - "repo": "registers.nvim", - "type": "github" - } - }, - "plugin-render-markdown-nvim": { - "flake": false, - "locked": { - "lastModified": 1735525479, - "narHash": "sha256-ncFqBv0JITX3pTsLON+HctLUaKXhLRMBUrRWmI8KOSA=", - "owner": "MeanderingProgrammer", - "repo": "render-markdown.nvim", - "rev": "6fbd1491abc104409f119685de5353c35c97c005", - "type": "github" - }, - "original": { - "owner": "MeanderingProgrammer", - "repo": "render-markdown.nvim", - "type": "github" - } - }, - "plugin-rose-pine": { - "flake": false, - "locked": { - "lastModified": 1733845819, - "narHash": "sha256-ejh9UXQbLc8Ie6wF7zszzL1gaJzr16gcu0dUWqTo8AM=", - "owner": "rose-pine", - "repo": "neovim", - "rev": "91548dca53b36dbb9d36c10f114385f759731be1", - "type": "github" - }, - "original": { - "owner": "rose-pine", - "repo": "neovim", - "type": "github" - } - }, - "plugin-rtp-nvim": { - "flake": false, - "locked": { - "lastModified": 1724409589, - "narHash": "sha256-lmJbiD7I7MTEEpukESs67uAmLyn+p66hrUKLbEHp0Kw=", - "owner": "nvim-neorocks", - "repo": "rtp.nvim", - "rev": "494ddfc888bb466555d90ace731856de1320fe45", - "type": "github" - }, - "original": { - "owner": "nvim-neorocks", - "repo": "rtp.nvim", - "type": "github" - } - }, - "plugin-run-nvim": { - "flake": false, - "locked": { - "lastModified": 1735501787, - "narHash": "sha256-CFOyOARCLQiMOhFPeqz8n2ULyaaRxRZrOk0FCibjuIM=", - "owner": "diniamo", - "repo": "run.nvim", - "rev": "9015c9cece816ccf10a185b420f6e345fd990802", - "type": "github" - }, - "original": { - "owner": "diniamo", - "repo": "run.nvim", - "type": "github" - } - }, - "plugin-rustaceanvim": { - "flake": false, - "locked": { - "lastModified": 1738187731, - "narHash": "sha256-Z4aCPO4MR0Q2ZojT6YBGSa8fb7u5Nd+4Z/rekqhXqDY=", - "owner": "mrcjkb", - "repo": "rustaceanvim", - "rev": "4a2f2d2cc04f5b0aa0981f98bb7d002c898318ad", - "type": "github" - }, - "original": { - "owner": "mrcjkb", - "repo": "rustaceanvim", - "type": "github" - } - }, - "plugin-smartcolumn": { - "flake": false, - "locked": { - "lastModified": 1734696989, - "narHash": "sha256-6RodA5BQnL6tB3RCE5G2RiXqBvM3VP3HYZ+T3AxIF7Q=", - "owner": "m4xshen", - "repo": "smartcolumn.nvim", - "rev": "f14fbea6f86cd29df5042897ca9e3ba10ba4d27f", - "type": "github" - }, - "original": { - "owner": "m4xshen", - "repo": "smartcolumn.nvim", - "type": "github" - } - }, - "plugin-sqls-nvim": { - "flake": false, - "locked": { - "lastModified": 1733090837, - "narHash": "sha256-o5uD6shPkweuE+k/goBX42W3I2oojXVijfJC7L50sGU=", - "owner": "nanotee", - "repo": "sqls.nvim", - "rev": "a514379f5f89bf72955ed3bf5c1c31a40b8a1472", - "type": "github" - }, - "original": { - "owner": "nanotee", - "repo": "sqls.nvim", - "type": "github" - } - }, - "plugin-tabular": { - "flake": false, - "locked": { - "lastModified": 1720022617, - "narHash": "sha256-qmDpdg3Tl3W4JSovRb4ODlrKMjRL5CaVI05YBn0Q0LI=", - "owner": "godlygeek", - "repo": "tabular", - "rev": "12437cd1b53488e24936ec4b091c9324cafee311", - "type": "github" - }, - "original": { - "owner": "godlygeek", - "repo": "tabular", - "type": "github" - } - }, - "plugin-telescope": { - "flake": false, - "locked": { - "lastModified": 1732884846, - "narHash": "sha256-npb61MZYAotz71Co5G1dUeIqWt7GVeqZNz0A2Yz2dy4=", - "owner": "nvim-telescope", - "repo": "telescope.nvim", - "rev": "2eca9ba22002184ac05eddbe47a7fe2d5a384dfc", - "type": "github" - }, - "original": { - "owner": "nvim-telescope", - "repo": "telescope.nvim", - "type": "github" - } - }, - "plugin-tiny-devicons-auto-colors": { - "flake": false, - "locked": { - "lastModified": 1733445616, - "narHash": "sha256-klUZKvdYhwO3sq4Su4sBFDcNSAYXh53O72vg4+ZOrhI=", - "owner": "rachartier", - "repo": "tiny-devicons-auto-colors.nvim", - "rev": "c8f63933ee013c1e0a26091d58131e060546f01f", - "type": "github" - }, - "original": { - "owner": "rachartier", - "repo": "tiny-devicons-auto-colors.nvim", - "type": "github" - } - }, - "plugin-todo-comments": { - "flake": false, - "locked": { - "lastModified": 1726481242, - "narHash": "sha256-EH4Sy7qNkzOgA1INFzrtsRfD79TgMqSbKUdundyw22w=", - "owner": "folke", - "repo": "todo-comments.nvim", - "rev": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "todo-comments.nvim", - "type": "github" - } - }, - "plugin-toggleterm-nvim": { - "flake": false, - "locked": { - "lastModified": 1735340326, - "narHash": "sha256-oeNIb+QHa/9yGZz/2u9LYIdKluel0bcQkaIqOuQUkis=", - "owner": "akinsho", - "repo": "toggleterm.nvim", - "rev": "344fc1810292785b3d962ddac2de57669e1a7ff9", - "type": "github" - }, - "original": { - "owner": "akinsho", - "repo": "toggleterm.nvim", - "type": "github" - } - }, - "plugin-tokyonight": { - "flake": false, - "locked": { - "lastModified": 1734211493, - "narHash": "sha256-TJ/a6N6Cc1T0wdMxMopma1NtwL7rMYbZ6F0zFI1zaIA=", - "owner": "folke", - "repo": "tokyonight.nvim", - "rev": "45d22cf0e1b93476d3b6d362d720412b3d34465c", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "tokyonight.nvim", - "type": "github" - } - }, - "plugin-trouble": { - "flake": false, - "locked": { - "lastModified": 1732701472, - "narHash": "sha256-JhnERZfma2JHFEn/DElVmrSU5KxM2asx3SJ+86lCfoo=", - "owner": "folke", - "repo": "trouble.nvim", - "rev": "46cf952fc115f4c2b98d4e208ed1e2dce08c9bf6", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "trouble.nvim", - "type": "github" - } - }, - "plugin-ts-error-translator": { - "flake": false, - "locked": { - "lastModified": 1731721659, - "narHash": "sha256-fi68jJVNTL2WlTehcl5Q8tijAeu2usjIsWXjcuixkCM=", - "owner": "dmmulroy", - "repo": "ts-error-translator.nvim", - "rev": "47e5ba89f71b9e6c72eaaaaa519dd59bd6897df4", - "type": "github" - }, - "original": { - "owner": "dmmulroy", - "repo": "ts-error-translator.nvim", - "type": "github" - } - }, - "plugin-typst-preview-nvim": { - "flake": false, - "locked": { - "lastModified": 1734839452, - "narHash": "sha256-d6Tv7xZRghYYDfABk/p2e9qTm4qnWHM+ejKDCcR0TfY=", - "owner": "chomosuke", - "repo": "typst-preview.nvim", - "rev": "c1100e8788baabe8ca8f8cd7fd63d3d479e49e36", - "type": "github" - }, - "original": { - "owner": "chomosuke", - "repo": "typst-preview.nvim", - "type": "github" - } - }, - "plugin-vim-dirtytalk": { - "flake": false, - "locked": { - "lastModified": 1713047519, - "narHash": "sha256-azU5jkv/fD/qDDyCU1bPNXOH6rmbDauG9jDNrtIXc0Y=", - "owner": "psliwka", - "repo": "vim-dirtytalk", - "rev": "aa57ba902b04341a04ff97214360f56856493583", - "type": "github" - }, - "original": { - "owner": "psliwka", - "repo": "vim-dirtytalk", - "type": "github" - } - }, - "plugin-vim-fugitive": { - "flake": false, - "locked": { - "lastModified": 1735457366, - "narHash": "sha256-45zsqKavWoclA67MC54bAel1nE8CLHtSdullHByiRS8=", - "owner": "tpope", - "repo": "vim-fugitive", - "rev": "174230d6a7f2df94705a7ffd8d5413e27ec10a80", - "type": "github" - }, - "original": { - "owner": "tpope", - "repo": "vim-fugitive", - "type": "github" - } - }, - "plugin-vim-illuminate": { - "flake": false, - "locked": { - "lastModified": 1715960194, - "narHash": "sha256-DdJzTHxoOv+vjFymETa2MgXpM/qDwvZjpoo1W8OOBj0=", - "owner": "RRethy", - "repo": "vim-illuminate", - "rev": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa", - "type": "github" - }, - "original": { - "owner": "RRethy", - "repo": "vim-illuminate", - "type": "github" - } - }, - "plugin-vim-markdown": { - "flake": false, - "locked": { - "lastModified": 1726813437, - "narHash": "sha256-ZCCSjZ5Xok4rnIwfa4VUEaz6d3oW9066l0EkoqiTppM=", - "owner": "preservim", - "repo": "vim-markdown", - "rev": "8f6cb3a6ca4e3b6bcda0730145a0b700f3481b51", - "type": "github" - }, - "original": { - "owner": "preservim", - "repo": "vim-markdown", - "type": "github" - } - }, - "plugin-vim-repeat": { - "flake": false, - "locked": { - "lastModified": 1720473942, - "narHash": "sha256-G/dmkq1KtSHIl+I5p3LfO6mGPS3eyLRbEEsuLbTpGlk=", - "owner": "tpope", - "repo": "vim-repeat", - "rev": "65846025c15494983dafe5e3b46c8f88ab2e9635", - "type": "github" - }, - "original": { - "owner": "tpope", - "repo": "vim-repeat", - "type": "github" - } - }, - "plugin-vim-startify": { - "flake": false, - "locked": { - "lastModified": 1695213983, - "narHash": "sha256-W5N/Dqxf9hSXEEJsrEkXInFwBXNBJe9Dzx9TVS12mPk=", - "owner": "mhinz", - "repo": "vim-startify", - "rev": "4e089dffdad46f3f5593f34362d530e8fe823dcf", - "type": "github" - }, - "original": { - "owner": "mhinz", - "repo": "vim-startify", - "type": "github" - } - }, - "plugin-which-key": { - "flake": false, - "locked": { - "lastModified": 1734253151, - "narHash": "sha256-f/+sYMDEguB5ZDiYiQAsDvdF/2cVcWnLBU+9qwigk4s=", - "owner": "folke", - "repo": "which-key.nvim", - "rev": "8ab96b38a2530eacba5be717f52e04601eb59326", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "which-key.nvim", - "type": "github" - } - }, - "plugin-yanky-nvim": { - "flake": false, - "locked": { - "lastModified": 1737126873, - "narHash": "sha256-Gt8kb6sZoNIM2SDWUPyAF5Tw99qMZl+ltUCfyMXgJsU=", - "owner": "gbprod", - "repo": "yanky.nvim", - "rev": "d2696b30e389dced94d5acab728f524a25f308d2", - "type": "github" - }, - "original": { - "owner": "gbprod", - "repo": "yanky.nvim", - "type": "github" - } - }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -4048,11 +1190,11 @@ ] }, "locked": { - "lastModified": 1738291974, - "narHash": "sha256-wkwYJc8cKmmQWUloyS9KwttBnja2ONRuJQDEsmef320=", + "lastModified": 1739262228, + "narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=", "owner": "Mic92", "repo": "sops-nix", - "rev": "4c1251904d8a08c86ac6bc0d72cc09975e89aef7", + "rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975", "type": "github" }, "original": { @@ -4244,11 +1386,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1738953846, - "narHash": "sha256-yrK3Hjcr8F7qS/j2F+r7C7o010eVWWlm4T1PrbKBOxQ=", + "lastModified": 1739829690, + "narHash": "sha256-mL1szCeIsjh6Khn3nH2cYtwO5YXG6gBiTw1A30iGeDU=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "4f09b473c936d41582dd744e19f34ec27592c5fd", + "rev": "3d0579f5cc93436052d94b73925b48973a104204", "type": "github" }, "original": { diff --git a/machines/blocktech/configuration.nix b/machines/blocktech/configuration.nix index a944cc1..f755fd4 100644 --- a/machines/blocktech/configuration.nix +++ b/machines/blocktech/configuration.nix @@ -95,6 +95,7 @@ services = { desktopManager.cosmic.enable = true; displayManager.cosmic-greeter.enable = true; + services.xserver.videoDrivers = ["nvidia"]; }; }; }; diff --git a/nixos/desktop.nix b/nixos/desktop.nix index 1b2709f..4ff9243 100644 --- a/nixos/desktop.nix +++ b/nixos/desktop.nix @@ -6,6 +6,11 @@ config = lib.mkIf (builtins.elem "desktop" config.deployment.tags) { programs.ssh.startAgent = true; + hardware.opengl = { + enable = true; + driSupport32Bit = true; + }; + services = { xserver.enable = true; printing.enable = true; From ce920f42e5d3e8237edbe06bddeb287253730eff Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 25 Feb 2025 21:54:02 +0100 Subject: [PATCH 20/60] Install vim-sleuth --- packages.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages.nix b/packages.nix index cb3fa6d..5f558d4 100644 --- a/packages.nix +++ b/packages.nix @@ -26,6 +26,10 @@ flake-utils.lib.eachDefaultSystem (system: let projects.project-nvim.enable = true; comments.comment-nvim.enable = true; + extraPlugins.vim-sleuth = { + package = pkgs.vimPlugins.vim-sleuth; + }; + lsp = { formatOnSave = true; lightbulb.enable = true; @@ -61,7 +65,6 @@ flake-utils.lib.eachDefaultSystem (system: let cinnamon-nvim.enable = true; fidget-nvim.enable = true; highlight-undo.enable = true; - indent-blankline.enable = true; cellular-automaton.enable = true; }; From 8bc32b1fe936687fc7749fa356665437d1f0bc65 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 25 Feb 2025 22:27:31 +0100 Subject: [PATCH 21/60] Add keybinding for neotree --- formatter.nix | 2 +- packages.nix | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/formatter.nix b/formatter.nix index 74ce5d3..e998dd4 100644 --- a/formatter.nix +++ b/formatter.nix @@ -4,5 +4,5 @@ ... }: flake-utils.lib.eachDefaultSystem (system: { - formatter = self.packages.${system}.formatter; + inherit (self.packages.${system}) formatter; }) diff --git a/packages.nix b/packages.nix index 5f558d4..983f3c2 100644 --- a/packages.nix +++ b/packages.nix @@ -25,10 +25,17 @@ flake-utils.lib.eachDefaultSystem (system: let notify.nvim-notify.enable = true; projects.project-nvim.enable = true; comments.comment-nvim.enable = true; + extraPlugins.vim-sleuth.package = pkgs.vimPlugins.vim-sleuth; - extraPlugins.vim-sleuth = { - package = pkgs.vimPlugins.vim-sleuth; - }; + keymaps = [ + { + key = ""; + mode = ["n"]; + action = ":Neotree toggle"; + silent = true; + desc = "Toggle Neotree"; + } + ]; lsp = { formatOnSave = true; From fd6d373768f7e3b488de5eab72106324ff356a80 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 2 Mar 2025 20:33:21 +0100 Subject: [PATCH 22/60] Update flake inputs --- flake.lock | 80 +++++++++++++++++++++++++++--------------------------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/flake.lock b/flake.lock index 243407b..6bb2a37 100644 --- a/flake.lock +++ b/flake.lock @@ -369,11 +369,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1733312601, - "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "type": "github" }, "original": { @@ -497,11 +497,11 @@ ] }, "locked": { - "lastModified": 1737465171, - "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", + "lastModified": 1740915799, + "narHash": "sha256-JvQvtaphZNmeeV+IpHgNdiNePsIpHD5U/7QN5AeY44A=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", + "rev": "42b1ba089d2034d910566bf6b40830af6b8ec732", "type": "github" }, "original": { @@ -685,11 +685,11 @@ }, "mnw": { "locked": { - "lastModified": 1735150973, - "narHash": "sha256-OJhcCAoaMMXeD6o4qI/hxBCNELJp4dN8D5LJZc8w8XA=", + "lastModified": 1738852285, + "narHash": "sha256-8Y1uyE6gGHxdU0Vcx2CMg/dAmDSxJw19aAl3TKbbo54=", "owner": "Gerg-L", "repo": "mnw", - "rev": "40cd0b006cc48dffd0f8698ad7f54cf1d56779a6", + "rev": "6ae73dc9cb72cea17bcc2e3d4670825f483e80e8", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1740281615, - "narHash": "sha256-dZWcbAQ1sF8oVv+zjSKkPVY0ebwENQEkz5vc6muXbKY=", + "lastModified": 1740886574, + "narHash": "sha256-jN6kJ41B6jUVDTebIWeebTvrKP6YiLd1/wMej4uq4Sk=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "465792533d03e6bb9dc849d58ab9d5e31fac9023", + "rev": "26a0f969549cf4d56f6e9046b9e0418b3f3b94a5", "type": "github" }, "original": { @@ -834,11 +834,11 @@ ] }, "locked": { - "lastModified": 1740442134, - "narHash": "sha256-ZYqFwKXT/gtyAZ7X5urLvElSovH0iot1+wlRby/Kg/g=", + "lastModified": 1740858961, + "narHash": "sha256-aiLyB/s3SBgooQwKBZrD5F8eb2gte8pJpQ22Oo7UL0Y=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "e8413501a60d226b2dccd2ab6cd43d0747c99a1a", + "rev": "afcfe175db766715bf31c92395ee810e3b3bbaf3", "type": "github" }, "original": { @@ -864,11 +864,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1740387674, - "narHash": "sha256-pGk/aA0EBvI6o4DeuZsr05Ig/r4uMlSaf5EWUZEWM10=", + "lastModified": 1740646007, + "narHash": "sha256-dMReDQobS3kqoiUCQIYI9c0imPXRZnBubX20yX/G5LE=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "d58f642ddb23320965b27beb0beba7236e9117b5", + "rev": "009b764ac98a3602d41fc68072eeec5d24fc0e49", "type": "github" }, "original": { @@ -896,14 +896,14 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1733096140, - "narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=", + "lastModified": 1738452942, + "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" }, "original": { "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" } }, "nixpkgs-stable": { @@ -924,11 +924,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1740396192, - "narHash": "sha256-ATMHHrg3sG1KgpQA5x8I+zcYpp5Sf17FaFj/fN+8OoQ=", + "lastModified": 1740791350, + "narHash": "sha256-igS2Z4tVw5W/x3lCZeeadt0vcU9fxtetZ/RyrqsCRQ0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d9b69c3ec2a2e2e971c534065bdd53374bd68b97", + "rev": "199169a2135e6b864a888e89a2ace345703c025d", "type": "github" }, "original": { @@ -940,11 +940,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1740367490, - "narHash": "sha256-WGaHVAjcrv+Cun7zPlI41SerRtfknGQap281+AakSAw=", + "lastModified": 1740695751, + "narHash": "sha256-D+R+kFxy1KsheiIzkkx/6L63wEHBYX21OIwlFV8JvDs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0196c0175e9191c474c26ab5548db27ef5d34b05", + "rev": "6313551cd05425cd5b3e63fe47dbc324eabb15e4", "type": "github" }, "original": { @@ -956,11 +956,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1740339700, - "narHash": "sha256-cbrw7EgQhcdFnu6iS3vane53bEagZQy/xyIkDWpCgVE=", + "lastModified": 1740865531, + "narHash": "sha256-h00vGIh/jxcGl8aWdfnVRD74KuLpyY3mZgMFMy7iKIc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "04ef94c4c1582fd485bbfdb8c4a8ba250e359195", + "rev": "5ef6c425980847c78a80d759abc476e941a9bf42", "type": "github" }, "original": { @@ -972,11 +972,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1740367490, - "narHash": "sha256-WGaHVAjcrv+Cun7zPlI41SerRtfknGQap281+AakSAw=", + "lastModified": 1740828860, + "narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0196c0175e9191c474c26ab5548db27ef5d34b05", + "rev": "303bd8071377433a2d8f76e684ec773d70c5b642", "type": "github" }, "original": { @@ -1041,11 +1041,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1740514125, - "narHash": "sha256-i0lyXlWnZzxVVS18LwgJy9+UoquaZDggh5B/oCOM6Ak=", + "lastModified": 1740941379, + "narHash": "sha256-0bCy+k4RyOdZ76dtSB1y8TXJo+mi+fpXsMvmVj9H55k=", "owner": "nix-community", "repo": "NUR", - "rev": "2af8d925c5c7049921438f8dd7e7ef7566c6313a", + "rev": "2e391c4fe65f5b5d19015bbd8cfd19837cf90779", "type": "github" }, "original": { @@ -1067,11 +1067,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1740423954, - "narHash": "sha256-iMd7ogpbVfYvadf1WjdIObQ1l7w2GhX1G27rBEMn5cc=", + "lastModified": 1740938036, + "narHash": "sha256-KDc+kDDX9s8c574sx7idXVYTJM2WZElAk9qbgxrCnSo=", "owner": "notashelf", "repo": "nvf", - "rev": "ae3fd994472a1b95be5bf1ac9f70e2a1cdb1c1d4", + "rev": "f24189f1d2a7730b7fe87164bae40c2d0be8d3c9", "type": "github" }, "original": { From b5d45a974ebfd1394d027c03078168aabb6797cb Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 23 Mar 2025 09:05:52 +0100 Subject: [PATCH 23/60] Add Chromium to gamepc --- machines/gamepc/pim.home.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/machines/gamepc/pim.home.nix b/machines/gamepc/pim.home.nix index cf831fb..9e70a28 100644 --- a/machines/gamepc/pim.home.nix +++ b/machines/gamepc/pim.home.nix @@ -14,6 +14,7 @@ vlc handbrake lutris + chromium ]; }; From 35714c3d0894103bf295a6a8ace25e805fe3d12f Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 23 Mar 2025 11:02:40 +0100 Subject: [PATCH 24/60] Fix job names of Prometheus --- nixos/prometheus.nix | 61 +++++++++++++++++++++----------------------- 1 file changed, 29 insertions(+), 32 deletions(-) diff --git a/nixos/prometheus.nix b/nixos/prometheus.nix index f786506..24f71b4 100644 --- a/nixos/prometheus.nix +++ b/nixos/prometheus.nix @@ -12,42 +12,39 @@ services.prometheus = { enable = true; - scrapeConfigs = ( - let - generated = lib.pipe nodes [ - (lib.filterAttrs (name: node: node.config.services.prometheus.exporters.node.enable)) - (lib.attrsets.mapAttrsToList - (name: node: { - job_name = name; - static_configs = [ - { - targets = ["${node.config.networking.fqdn}:${toString node.config.services.prometheus.exporters.node.port}"]; - } - ]; - })) + scrapeConfigs = let + node = { + job_name = "node"; + static_configs = [ + { + targets = lib.pipe nodes [ + (lib.filterAttrs (_name: node: node.config.services.prometheus.exporters.node.enable)) + (lib.attrsets.mapAttrsToList + (_name: node: "${node.config.networking.fqdn}:${toString node.config.services.prometheus.exporters.node.port}")) + ]; + } ]; + }; - pikvm = { - job_name = "pikvm"; - metrics_path = "/api/export/prometheus/metrics"; - scheme = "https"; - tls_config.insecure_skip_verify = true; + pikvm = { + job_name = "pikvm"; + metrics_path = "/api/export/prometheus/metrics"; + scheme = "https"; + tls_config.insecure_skip_verify = true; - # We don't care about security here, it's behind a VPN. - basic_auth = { - username = "admin"; - password = "admin"; - }; - - static_configs = [ - { - targets = ["pikvm.dmz"]; - } - ]; + # We don't care about security here, it's behind a VPN. + basic_auth = { + username = "admin"; + password = "admin"; }; - in - generated ++ [pikvm] - ); + + static_configs = [ + { + targets = ["pikvm.dmz"]; + } + ]; + }; + in [node pikvm]; }; services.nginx = { From 27995cbc04154ae2e98e79573112b7f387e80624 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 23 Mar 2025 13:43:11 +0100 Subject: [PATCH 25/60] Update flake inputs --- flake.lock | 123 +++++++++++++++++++++++++++-------------------------- 1 file changed, 63 insertions(+), 60 deletions(-) diff --git a/flake.lock b/flake.lock index 6bb2a37..797b9b0 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1740485968, - "narHash": "sha256-WK+PZHbfDjLyveXAxpnrfagiFgZWaTJglewBWniTn2Y=", + "lastModified": 1741786315, + "narHash": "sha256-VT65AE2syHVj6v/DGB496bqBnu1PXrrzwlw07/Zpllc=", "owner": "nix-community", "repo": "disko", - "rev": "19c1140419c4f1cdf88ad4c1cfb6605597628940", + "rev": "0d8c6ad4a43906d14abd5c60e0ffe7b587b213de", "type": "github" }, "original": { @@ -369,11 +369,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", "type": "github" }, "original": { @@ -497,11 +497,11 @@ ] }, "locked": { - "lastModified": 1740915799, - "narHash": "sha256-JvQvtaphZNmeeV+IpHgNdiNePsIpHD5U/7QN5AeY44A=", + "lastModified": 1742649964, + "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "42b1ba089d2034d910566bf6b40830af6b8ec732", + "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1739757849, - "narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=", + "lastModified": 1742655702, + "narHash": "sha256-jbqlw4sPArFtNtA1s3kLg7/A4fzP4GLk9bGbtUJg0JQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe", + "rev": "0948aeedc296f964140d9429223c7e4a0702a1ff", "type": "github" }, "original": { @@ -685,11 +685,11 @@ }, "mnw": { "locked": { - "lastModified": 1738852285, - "narHash": "sha256-8Y1uyE6gGHxdU0Vcx2CMg/dAmDSxJw19aAl3TKbbo54=", + "lastModified": 1742255973, + "narHash": "sha256-XfEGVKatTgEMMOVb4SNp1LYLQOSzzrFTDMVDTZFyMVE=", "owner": "Gerg-L", "repo": "mnw", - "rev": "6ae73dc9cb72cea17bcc2e3d4670825f483e80e8", + "rev": "b982dbd5e6d55d4438832b3567c09bc2a129649d", "type": "github" }, "original": { @@ -711,11 +711,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1732053863, - "narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=", + "lastModified": 1741118843, + "narHash": "sha256-ggXU3RHv6NgWw+vc+HO4/9n0GPufhTIUjVuLci8Za8c=", "owner": "oxalica", "repo": "nil", - "rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362", + "rev": "577d160da311cc7f5042038456a0713e9863d09e", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1740886574, - "narHash": "sha256-jN6kJ41B6jUVDTebIWeebTvrKP6YiLd1/wMej4uq4Sk=", + "lastModified": 1742701275, + "narHash": "sha256-AulwPVrS9859t+eJ61v24wH/nfBEIDSXYxlRo3fL/SA=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "26a0f969549cf4d56f6e9046b9e0418b3f3b94a5", + "rev": "36dc43cb50d5d20f90a28d53abb33a32b0a2aae6", "type": "github" }, "original": { @@ -834,11 +834,11 @@ ] }, "locked": { - "lastModified": 1740858961, - "narHash": "sha256-aiLyB/s3SBgooQwKBZrD5F8eb2gte8pJpQ22Oo7UL0Y=", + "lastModified": 1742641703, + "narHash": "sha256-hoN8blvJco8OSZmPj8izwQaQUdydVi+5FO4/nWd1MNU=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "afcfe175db766715bf31c92395ee810e3b3bbaf3", + "rev": "216557e6cd229dbe7d73a497c227824a3c579cd7", "type": "github" }, "original": { @@ -864,11 +864,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1740646007, - "narHash": "sha256-dMReDQobS3kqoiUCQIYI9c0imPXRZnBubX20yX/G5LE=", + "lastModified": 1742631601, + "narHash": "sha256-yJ3OOAmsGAxSl0bTmKUp3+cEYtSS+V6hUPK2rYhIPr8=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "009b764ac98a3602d41fc68072eeec5d24fc0e49", + "rev": "380ed15bcd6440606c6856db44a99140d422b46f", "type": "github" }, "original": { @@ -896,14 +896,17 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1738452942, - "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" + "lastModified": 1740877520, + "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "147dee35aab2193b174e4c0868bd80ead5ce755c", + "type": "github" }, "original": { - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" } }, "nixpkgs-stable": { @@ -924,11 +927,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1740791350, - "narHash": "sha256-igS2Z4tVw5W/x3lCZeeadt0vcU9fxtetZ/RyrqsCRQ0=", + "lastModified": 1742606399, + "narHash": "sha256-NAxwF5cjgh8o5aylhePXWNQETCWYaTpNvdO2bMfINpQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "199169a2135e6b864a888e89a2ace345703c025d", + "rev": "0740f6f238767d4caf9afe774d3e88105766dfc6", "type": "github" }, "original": { @@ -940,11 +943,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1740695751, - "narHash": "sha256-D+R+kFxy1KsheiIzkkx/6L63wEHBYX21OIwlFV8JvDs=", + "lastModified": 1742422364, + "narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6313551cd05425cd5b3e63fe47dbc324eabb15e4", + "rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc", "type": "github" }, "original": { @@ -956,11 +959,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1740865531, - "narHash": "sha256-h00vGIh/jxcGl8aWdfnVRD74KuLpyY3mZgMFMy7iKIc=", + "lastModified": 1742512142, + "narHash": "sha256-8XfURTDxOm6+33swQJu/hx6xw1Tznl8vJJN5HwVqckg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5ef6c425980847c78a80d759abc476e941a9bf42", + "rev": "7105ae3957700a9646cc4b766f5815b23ed0c682", "type": "github" }, "original": { @@ -972,11 +975,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1740828860, - "narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=", + "lastModified": 1742422364, + "narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "303bd8071377433a2d8f76e684ec773d70c5b642", + "rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc", "type": "github" }, "original": { @@ -1041,11 +1044,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1740941379, - "narHash": "sha256-0bCy+k4RyOdZ76dtSB1y8TXJo+mi+fpXsMvmVj9H55k=", + "lastModified": 1742711974, + "narHash": "sha256-7aTLjfdlPhDlixUAziHRBI4R7p4QZq/bhWffnPaW9AE=", "owner": "nix-community", "repo": "NUR", - "rev": "2e391c4fe65f5b5d19015bbd8cfd19837cf90779", + "rev": "c52011abd7fda6d05aa84e9e0110d56f06cac071", "type": "github" }, "original": { @@ -1067,11 +1070,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1740938036, - "narHash": "sha256-KDc+kDDX9s8c574sx7idXVYTJM2WZElAk9qbgxrCnSo=", + "lastModified": 1742662641, + "narHash": "sha256-myuAL3bENz75qcOo/HhbulNODBzGF9YCPkPg27886mQ=", "owner": "notashelf", "repo": "nvf", - "rev": "f24189f1d2a7730b7fe87164bae40c2d0be8d3c9", + "rev": "60c3a2ff1e2a30d1b245592da84f231098d4ec75", "type": "github" }, "original": { @@ -1170,11 +1173,11 @@ ] }, "locked": { - "lastModified": 1731983527, - "narHash": "sha256-JECaBgC0pQ91Hq3W4unH6K9to8s2Zl2sPNu7bLOv4ek=", + "lastModified": 1741055476, + "narHash": "sha256-52vwEV0oS2lCnx3c/alOFGglujZTLmObit7K8VblnS8=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "71287228d96e9568e1e70c6bbfa3f992d145947b", + "rev": "aefb7017d710f150970299685e8d8b549d653649", "type": "github" }, "original": { @@ -1190,11 +1193,11 @@ ] }, "locked": { - "lastModified": 1739262228, - "narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=", + "lastModified": 1742700801, + "narHash": "sha256-ZGlpUDsuBdeZeTNgoMv+aw0ByXT2J3wkYw9kJwkAS4M=", "owner": "Mic92", "repo": "sops-nix", - "rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975", + "rev": "67566fe68a8bed2a7b1175fdfb0697ed22ae8852", "type": "github" }, "original": { @@ -1386,11 +1389,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1739829690, - "narHash": "sha256-mL1szCeIsjh6Khn3nH2cYtwO5YXG6gBiTw1A30iGeDU=", + "lastModified": 1742370146, + "narHash": "sha256-XRE8hL4vKIQyVMDXykFh4ceo3KSpuJF3ts8GKwh5bIU=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "3d0579f5cc93436052d94b73925b48973a104204", + "rev": "adc195eef5da3606891cedf80c0d9ce2d3190808", "type": "github" }, "original": { From 10d7e92c0dc2bd666f1963b9593405707e827793 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 23 Mar 2025 13:43:22 +0100 Subject: [PATCH 26/60] Monitor media directory sizes with node exporter --- machines/lewis/configuration.nix | 44 ++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/machines/lewis/configuration.nix b/machines/lewis/configuration.nix index fc069bf..d6c2017 100644 --- a/machines/lewis/configuration.nix +++ b/machines/lewis/configuration.nix @@ -2,6 +2,7 @@ self, config, pkgs, + lib, ... }: { config = { @@ -22,5 +23,48 @@ data-sharing.enable = true; backups.enable = true; }; + + systemd.timers.read-dir-sizes = { + wantedBy = ["timers.target"]; + timerConfig = { + OnBootSec = "5m"; + OnUnitActiveSec = "5m"; + Unit = "read-dir-sizes.service"; + }; + }; + + systemd.services."read-dir-sizes" = { + script = let + script = pkgs.writeShellScriptBin "read-dir-sizes.sh" '' + DIRS=( + "/mnt/longhorn/persistent/media/movies" + "/mnt/longhorn/persistent/media/shows" + ) + + temp_file=$(mktemp) + trap 'rm -f "$temp_file"' EXIT + + for DIR_PATH in "''${DIRS[@]}"; do + # Find all top-level subdirectories and calculate their size + find "$DIR_PATH" -mindepth 1 -maxdepth 1 -type d | while read -r subdir; do + # Calculate the size of the top-level subdirectory + du --block-size=1 -s "$subdir" | while read -r size path; do + # Print size in Prometheus format + echo "directory_size_bytes{dir=\"$path\"} $size" >> $temp_file + done + done + done + mkdir -p /var/lib/node_exporter/textfile_collector + cp $temp_file /var/lib/node_exporter/textfile_collector/dir_sizes.prom + chmod o=r /var/lib/node_exporter/textfile_collector/dir_sizes.prom + ''; + in "${lib.getExe script}"; + serviceConfig = { + Type = "oneshot"; + User = "root"; + }; + }; + + services.prometheus.exporters.node.extraFlags = ["--collector.textfile.directory=/var/lib/node_exporter/textfile_collector"]; }; } From 274ff4b98c2952f54703cb7788c00981edfe9f7f Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 23 Mar 2025 13:54:29 +0100 Subject: [PATCH 27/60] Automatically clean up old torrent files --- machines/lewis/configuration.nix | 74 +++++++++++++++++--------------- 1 file changed, 40 insertions(+), 34 deletions(-) diff --git a/machines/lewis/configuration.nix b/machines/lewis/configuration.nix index d6c2017..70337f7 100644 --- a/machines/lewis/configuration.nix +++ b/machines/lewis/configuration.nix @@ -24,45 +24,51 @@ backups.enable = true; }; - systemd.timers.read-dir-sizes = { - wantedBy = ["timers.target"]; - timerConfig = { - OnBootSec = "5m"; - OnUnitActiveSec = "5m"; - Unit = "read-dir-sizes.service"; + systemd = { + timers.read-dir-sizes = { + wantedBy = ["timers.target"]; + timerConfig = { + OnBootSec = "5m"; + OnUnitActiveSec = "5m"; + Unit = "read-dir-sizes.service"; + }; }; - }; - systemd.services."read-dir-sizes" = { - script = let - script = pkgs.writeShellScriptBin "read-dir-sizes.sh" '' - DIRS=( - "/mnt/longhorn/persistent/media/movies" - "/mnt/longhorn/persistent/media/shows" - ) + services."read-dir-sizes" = { + script = let + script = pkgs.writeShellScriptBin "read-dir-sizes.sh" '' + DIRS=( + "/mnt/longhorn/persistent/media/movies" + "/mnt/longhorn/persistent/media/shows" + ) - temp_file=$(mktemp) - trap 'rm -f "$temp_file"' EXIT + temp_file=$(mktemp) + trap 'rm -f "$temp_file"' EXIT - for DIR_PATH in "''${DIRS[@]}"; do - # Find all top-level subdirectories and calculate their size - find "$DIR_PATH" -mindepth 1 -maxdepth 1 -type d | while read -r subdir; do - # Calculate the size of the top-level subdirectory - du --block-size=1 -s "$subdir" | while read -r size path; do - # Print size in Prometheus format - echo "directory_size_bytes{dir=\"$path\"} $size" >> $temp_file - done - done - done - mkdir -p /var/lib/node_exporter/textfile_collector - cp $temp_file /var/lib/node_exporter/textfile_collector/dir_sizes.prom - chmod o=r /var/lib/node_exporter/textfile_collector/dir_sizes.prom - ''; - in "${lib.getExe script}"; - serviceConfig = { - Type = "oneshot"; - User = "root"; + for DIR_PATH in "''${DIRS[@]}"; do + # Find all top-level subdirectories and calculate their size + find "$DIR_PATH" -mindepth 1 -maxdepth 1 -type d | while read -r subdir; do + # Calculate the size of the top-level subdirectory + du --block-size=1 -s "$subdir" | while read -r size path; do + # Print size in Prometheus format + echo "directory_size_bytes{dir=\"$path\"} $size" >> $temp_file + done + done + done + mkdir -p /var/lib/node_exporter/textfile_collector + cp $temp_file /var/lib/node_exporter/textfile_collector/dir_sizes.prom + chmod o=r /var/lib/node_exporter/textfile_collector/dir_sizes.prom + ''; + in "${lib.getExe script}"; + serviceConfig = { + Type = "oneshot"; + User = "root"; + }; }; + + tmpfiles.rules = [ + "d /mnt/longhorn/persistent/media/torrents 775 414 51 8d" + ]; }; services.prometheus.exporters.node.extraFlags = ["--collector.textfile.directory=/var/lib/node_exporter/textfile_collector"]; From 40cdaf7a6d77ad8f9123534e492c73a05767284b Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 30 Mar 2025 13:35:37 +0200 Subject: [PATCH 28/60] Update flake Address deprecation warnings --- flake.lock | 109 ++++++++++++++++++++++++---------------------- nixos/desktop.nix | 4 +- 2 files changed, 59 insertions(+), 54 deletions(-) diff --git a/flake.lock b/flake.lock index 797b9b0..07cca12 100644 --- a/flake.lock +++ b/flake.lock @@ -708,7 +708,7 @@ "nvf", "nixpkgs" ], - "rust-overlay": "rust-overlay_2" + "rust-overlay": "rust-overlay_3" }, "locked": { "lastModified": 1741118843, @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1742701275, - "narHash": "sha256-AulwPVrS9859t+eJ61v24wH/nfBEIDSXYxlRo3fL/SA=", + "lastModified": 1743306489, + "narHash": "sha256-LROaIjSLo347cwcHRfSpqzEOa2FoLSeJwU4dOrGm55E=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "36dc43cb50d5d20f90a28d53abb33a32b0a2aae6", + "rev": "b3696bfb6c24aa61428839a99e8b40c53ac3a82d", "type": "github" }, "original": { @@ -831,14 +831,15 @@ "nixpkgs": "nixpkgs_2", "nixpkgs-stable": [ "nixpkgs-unstable" - ] + ], + "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1742641703, - "narHash": "sha256-hoN8blvJco8OSZmPj8izwQaQUdydVi+5FO4/nWd1MNU=", + "lastModified": 1743246566, + "narHash": "sha256-arEFUDLjADYIZ7T6PZX1yLOnfMoZ1ByebtmPuvV98+s=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "216557e6cd229dbe7d73a497c227824a3c579cd7", + "rev": "c709db4b95e58f410978bb49c87cb74214d03e78", "type": "github" }, "original": { @@ -864,11 +865,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1742631601, - "narHash": "sha256-yJ3OOAmsGAxSl0bTmKUp3+cEYtSS+V6hUPK2rYhIPr8=", + "lastModified": 1743167577, + "narHash": "sha256-I09SrXIO0UdyBFfh0fxDq5WnCDg8XKmZ1HQbaXzMA1k=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "380ed15bcd6440606c6856db44a99140d422b46f", + "rev": "0ed819e708af17bfc4bbc63ee080ef308a24aa42", "type": "github" }, "original": { @@ -927,11 +928,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1742606399, - "narHash": "sha256-NAxwF5cjgh8o5aylhePXWNQETCWYaTpNvdO2bMfINpQ=", + "lastModified": 1743259260, + "narHash": "sha256-ArWLUgRm1tKHiqlhnymyVqi5kLNCK5ghvm06mfCl4QY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0740f6f238767d4caf9afe774d3e88105766dfc6", + "rev": "eb0e0f21f15c559d2ac7633dc81d079d1caf5f5f", "type": "github" }, "original": { @@ -943,11 +944,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1742422364, - "narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=", + "lastModified": 1743095683, + "narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc", + "rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6", "type": "github" }, "original": { @@ -959,11 +960,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1742512142, - "narHash": "sha256-8XfURTDxOm6+33swQJu/hx6xw1Tznl8vJJN5HwVqckg=", + "lastModified": 1743231893, + "narHash": "sha256-tpJsHMUPEhEnzySoQxx7+kA+KUtgWqvlcUBqROYNNt0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "7105ae3957700a9646cc4b766f5815b23ed0c682", + "rev": "c570c1f5304493cafe133b8d843c7c1c4a10d3a6", "type": "github" }, "original": { @@ -975,11 +976,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1742422364, - "narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=", + "lastModified": 1743095683, + "narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc", + "rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6", "type": "github" }, "original": { @@ -1021,22 +1022,6 @@ "type": "github" } }, - "nmd": { - "flake": false, - "locked": { - "lastModified": 1705050560, - "narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=", - "owner": "~rycee", - "repo": "nmd", - "rev": "66d9334933119c36f91a78d565c152a4fdc8d3d3", - "type": "sourcehut" - }, - "original": { - "owner": "~rycee", - "repo": "nmd", - "type": "sourcehut" - } - }, "nur": { "inputs": { "flake-parts": "flake-parts_3", @@ -1044,11 +1029,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1742711974, - "narHash": "sha256-7aTLjfdlPhDlixUAziHRBI4R7p4QZq/bhWffnPaW9AE=", + "lastModified": 1743330389, + "narHash": "sha256-R75j7SG54s7Q2wqnT+LBXVWgcAcR5ZSFmMOWmCem1tQ=", "owner": "nix-community", "repo": "NUR", - "rev": "c52011abd7fda6d05aa84e9e0110d56f06cac071", + "rev": "18d012e20b24fefad08de4460c6afcdece34abe6", "type": "github" }, "original": { @@ -1066,15 +1051,14 @@ "nixpkgs": [ "nixpkgs" ], - "nmd": "nmd", "systems": "systems_5" }, "locked": { - "lastModified": 1742662641, - "narHash": "sha256-myuAL3bENz75qcOo/HhbulNODBzGF9YCPkPg27886mQ=", + "lastModified": 1743301931, + "narHash": "sha256-gex4W+Fyn6RB8x9/y+VWY1EG6RItmlW1HJjAj3mWqKc=", "owner": "notashelf", "repo": "nvf", - "rev": "60c3a2ff1e2a30d1b245592da84f231098d4ec75", + "rev": "05489d95b69b4c81e9b9a66a23f6e0cb1c8edb3d", "type": "github" }, "original": { @@ -1165,6 +1149,27 @@ } }, "rust-overlay_2": { + "inputs": { + "nixpkgs": [ + "nixos-cosmic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1743215516, + "narHash": "sha256-52qbrkG65U1hyrQWltgHTgH4nm0SJL+9TWv2UDCEPNI=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "524463199fdee49338006b049bc376b965a2cfed", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_3": { "inputs": { "nixpkgs": [ "nvf", @@ -1193,11 +1198,11 @@ ] }, "locked": { - "lastModified": 1742700801, - "narHash": "sha256-ZGlpUDsuBdeZeTNgoMv+aw0ByXT2J3wkYw9kJwkAS4M=", + "lastModified": 1743305778, + "narHash": "sha256-Ux/UohNtnM5mn9SFjaHp6IZe2aAnUCzklMluNtV6zFo=", "owner": "Mic92", "repo": "sops-nix", - "rev": "67566fe68a8bed2a7b1175fdfb0697ed22ae8852", + "rev": "8e873886bbfc32163fe027b8676c75637b7da114", "type": "github" }, "original": { @@ -1389,11 +1394,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1742370146, - "narHash": "sha256-XRE8hL4vKIQyVMDXykFh4ceo3KSpuJF3ts8GKwh5bIU=", + "lastModified": 1743081648, + "narHash": "sha256-WRAylyYptt6OX5eCEBWyTwOEqEtD6zt33rlUkr6u3cE=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "adc195eef5da3606891cedf80c0d9ce2d3190808", + "rev": "29a3d7b768c70addce17af0869f6e2bd8f5be4b7", "type": "github" }, "original": { diff --git a/nixos/desktop.nix b/nixos/desktop.nix index 4ff9243..5a98a5a 100644 --- a/nixos/desktop.nix +++ b/nixos/desktop.nix @@ -6,9 +6,9 @@ config = lib.mkIf (builtins.elem "desktop" config.deployment.tags) { programs.ssh.startAgent = true; - hardware.opengl = { + hardware.graphics = { enable = true; - driSupport32Bit = true; + enable32Bit = true; }; services = { From 3b8d6e2dbc6581837815291ddeac23f88a611f31 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 5 Apr 2025 17:14:25 +0200 Subject: [PATCH 29/60] Attempt to reduce backup sizes --- nixos/backups.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nixos/backups.nix b/nixos/backups.nix index 967343b..3a502ee 100644 --- a/nixos/backups.nix +++ b/nixos/backups.nix @@ -26,8 +26,7 @@ ssh_command = "${pkgs.openssh}/bin/ssh -i ${config.sops.secrets."borg/borgbasePrivateKey".path} -o StrictHostKeychecking=no"; keep_daily = 7; keep_weekly = 4; - keep_monthly = 12; - keep_yearly = -1; + keep_monthly = 6; encryption_passcommand = "${pkgs.coreutils}/bin/cat ${config.sops.secrets."borg/borgPassphrase".path}"; }; }; From 782fb286307f87e5b48f70ba15ce2ff2f197e006 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Fri, 11 Apr 2025 21:13:26 +0200 Subject: [PATCH 30/60] Update flake inputs --- flake.lock | 78 +++++++++++++++++++++++++++--------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/flake.lock b/flake.lock index 07cca12..79d2720 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1741786315, - "narHash": "sha256-VT65AE2syHVj6v/DGB496bqBnu1PXrrzwlw07/Zpllc=", + "lastModified": 1744145203, + "narHash": "sha256-I2oILRiJ6G+BOSjY+0dGrTPe080L3pbKpc+gCV3Nmyk=", "owner": "nix-community", "repo": "disko", - "rev": "0d8c6ad4a43906d14abd5c60e0ffe7b587b213de", + "rev": "76c0a6dba345490508f36c1aa3c7ba5b6b460989", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1742655702, - "narHash": "sha256-jbqlw4sPArFtNtA1s3kLg7/A4fzP4GLk9bGbtUJg0JQ=", + "lastModified": 1744117652, + "narHash": "sha256-t7dFCDl4vIOOUMhEZnJF15aAzkpaup9x4ZRGToDFYWI=", "owner": "nix-community", "repo": "home-manager", - "rev": "0948aeedc296f964140d9429223c7e4a0702a1ff", + "rev": "b4e98224ad1336751a2ac7493967a4c9f6d9cb3f", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1743306489, - "narHash": "sha256-LROaIjSLo347cwcHRfSpqzEOa2FoLSeJwU4dOrGm55E=", + "lastModified": 1743911143, + "narHash": "sha256-4j4JPwr0TXHH4ZyorXN5yIcmqIQr0WYacsuPA4ktONo=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "b3696bfb6c24aa61428839a99e8b40c53ac3a82d", + "rev": "a36f6a7148aec2c77d78e4466215cceb2f5f4bfb", "type": "github" }, "original": { @@ -835,11 +835,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1743246566, - "narHash": "sha256-arEFUDLjADYIZ7T6PZX1yLOnfMoZ1ByebtmPuvV98+s=", + "lastModified": 1744369853, + "narHash": "sha256-rVW9J8gMUFj8PsFV2TgNiNuJd8+O+FUizEQgl1ooQFY=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "c709db4b95e58f410978bb49c87cb74214d03e78", + "rev": "c2b4dd2f85d558c7147bc06c6417f87aa1775ad5", "type": "github" }, "original": { @@ -865,11 +865,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1743167577, - "narHash": "sha256-I09SrXIO0UdyBFfh0fxDq5WnCDg8XKmZ1HQbaXzMA1k=", + "lastModified": 1744366945, + "narHash": "sha256-OuLhysErPHl53BBifhesrRumJNhrlSgQDfYOTXfgIMg=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "0ed819e708af17bfc4bbc63ee080ef308a24aa42", + "rev": "1fe3cc2bc5d2dc9c81cb4e63d2f67c1543340df1", "type": "github" }, "original": { @@ -928,11 +928,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1743259260, - "narHash": "sha256-ArWLUgRm1tKHiqlhnymyVqi5kLNCK5ghvm06mfCl4QY=", + "lastModified": 1744316434, + "narHash": "sha256-lzFCg/1C39pyY2hMB2gcuHV79ozpOz/Vu15hdjiFOfI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eb0e0f21f15c559d2ac7633dc81d079d1caf5f5f", + "rev": "d19cf9dfc633816a437204555afeb9e722386b76", "type": "github" }, "original": { @@ -944,11 +944,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1743095683, - "narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=", + "lastModified": 1744098102, + "narHash": "sha256-tzCdyIJj9AjysC3OuKA+tMD/kDEDAF9mICPDU7ix0JA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6", + "rev": "c8cd81426f45942bb2906d5ed2fe21d2f19d95b7", "type": "github" }, "original": { @@ -960,11 +960,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1743231893, - "narHash": "sha256-tpJsHMUPEhEnzySoQxx7+kA+KUtgWqvlcUBqROYNNt0=", + "lastModified": 1744309437, + "narHash": "sha256-QZnNHM823am8apCqKSPdtnzPGTy2ZB4zIXOVoBp5+W0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "c570c1f5304493cafe133b8d843c7c1c4a10d3a6", + "rev": "f9ebe33a928b5d529c895202263a5ce46bdf12f7", "type": "github" }, "original": { @@ -976,11 +976,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1743095683, - "narHash": "sha256-gWd4urRoLRe8GLVC/3rYRae1h+xfQzt09xOfb0PaHSk=", + "lastModified": 1744232761, + "narHash": "sha256-gbl9hE39nQRpZaLjhWKmEu5ejtQsgI5TWYrIVVJn30U=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5e5402ecbcb27af32284d4a62553c019a3a49ea6", + "rev": "f675531bc7e6657c10a18b565cfebd8aa9e24c14", "type": "github" }, "original": { @@ -1029,11 +1029,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1743330389, - "narHash": "sha256-R75j7SG54s7Q2wqnT+LBXVWgcAcR5ZSFmMOWmCem1tQ=", + "lastModified": 1744383978, + "narHash": "sha256-lx1XXdOTRa5ntY6GbSlu+h0XqMFVptpDIm3r7LoFwO4=", "owner": "nix-community", "repo": "NUR", - "rev": "18d012e20b24fefad08de4460c6afcdece34abe6", + "rev": "5b4559e4f4a968dac414504be84a135a7818cbce", "type": "github" }, "original": { @@ -1156,11 +1156,11 @@ ] }, "locked": { - "lastModified": 1743215516, - "narHash": "sha256-52qbrkG65U1hyrQWltgHTgH4nm0SJL+9TWv2UDCEPNI=", + "lastModified": 1744338850, + "narHash": "sha256-pwMIVmsb8fjjT92n5XFDqCsplcX70qVMMT7NulumPXs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "524463199fdee49338006b049bc376b965a2cfed", + "rev": "5e64aecc018e6f775572609e7d7485fdba6985a7", "type": "github" }, "original": { @@ -1198,11 +1198,11 @@ ] }, "locked": { - "lastModified": 1743305778, - "narHash": "sha256-Ux/UohNtnM5mn9SFjaHp6IZe2aAnUCzklMluNtV6zFo=", + "lastModified": 1744103455, + "narHash": "sha256-SR6+qjkPjGQG+8eM4dCcVtss8r9bre/LAxFMPJpaZeU=", "owner": "Mic92", "repo": "sops-nix", - "rev": "8e873886bbfc32163fe027b8676c75637b7da114", + "rev": "69d5a5a4635c27dae5a742f36108beccc506c1ba", "type": "github" }, "original": { @@ -1394,11 +1394,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1743081648, - "narHash": "sha256-WRAylyYptt6OX5eCEBWyTwOEqEtD6zt33rlUkr6u3cE=", + "lastModified": 1743748085, + "narHash": "sha256-uhjnlaVTWo5iD3LXics1rp9gaKgDRQj6660+gbUU3cE=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "29a3d7b768c70addce17af0869f6e2bd8f5be4b7", + "rev": "815e4121d6a5d504c0f96e5be2dd7f871e4fd99d", "type": "github" }, "original": { From dbda01a16f444f0c31f3f57558c0a88badee3bcb Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Wed, 30 Apr 2025 22:29:43 +0200 Subject: [PATCH 31/60] update flake inputs --- flake.lock | 116 +++++++++++++++++++++++++-------------------------- packages.nix | 1 - 2 files changed, 58 insertions(+), 59 deletions(-) diff --git a/flake.lock b/flake.lock index 79d2720..078141b 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1744145203, - "narHash": "sha256-I2oILRiJ6G+BOSjY+0dGrTPe080L3pbKpc+gCV3Nmyk=", + "lastModified": 1745502102, + "narHash": "sha256-LqhRwzvIVPEjH0TaPgwzqpyhW6DtCrvz7FnUJDoUZh8=", "owner": "nix-community", "repo": "disko", - "rev": "76c0a6dba345490508f36c1aa3c7ba5b6b460989", + "rev": "ca27b88c88948d96feeee9ed814cbd34f53d0d70", "type": "github" }, "original": { @@ -369,11 +369,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1741352980, - "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", + "lastModified": 1743550720, + "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", + "rev": "c621e8422220273271f52058f618c94e405bb0f5", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1744117652, - "narHash": "sha256-t7dFCDl4vIOOUMhEZnJF15aAzkpaup9x4ZRGToDFYWI=", + "lastModified": 1745557122, + "narHash": "sha256-eqSo9ugzsqhFgaDFYUZj943nurlX4L6f+AW0skJ4W+M=", "owner": "nix-community", "repo": "home-manager", - "rev": "b4e98224ad1336751a2ac7493967a4c9f6d9cb3f", + "rev": "dd26f75fb4ec1c731d4b1396eaf4439ce40a91c1", "type": "github" }, "original": { @@ -685,11 +685,11 @@ }, "mnw": { "locked": { - "lastModified": 1742255973, - "narHash": "sha256-XfEGVKatTgEMMOVb4SNp1LYLQOSzzrFTDMVDTZFyMVE=", + "lastModified": 1744597985, + "narHash": "sha256-lLYB9/tQ0OAKonL0Ku963nqOm0aE1TmLavrzmXAr5Zc=", "owner": "Gerg-L", "repo": "mnw", - "rev": "b982dbd5e6d55d4438832b3567c09bc2a129649d", + "rev": "cbdcbb5f8eb24e25b932bbc87e29299a72e34b64", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1743911143, - "narHash": "sha256-4j4JPwr0TXHH4ZyorXN5yIcmqIQr0WYacsuPA4ktONo=", + "lastModified": 1745120797, + "narHash": "sha256-owQ0VQ+7cSanTVPxaZMWEzI22Q4bGnuvhVjLAJBNQ3E=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "a36f6a7148aec2c77d78e4466215cceb2f5f4bfb", + "rev": "69716041f881a2af935021c1182ed5b0cc04d40e", "type": "github" }, "original": { @@ -812,11 +812,11 @@ "nixos-artwork": { "flake": false, "locked": { - "lastModified": 1738002455, - "narHash": "sha256-VIrSOBCCNq6Fc0dS7XMtC1VebnjRvIUi0/kPal2gWcU=", + "lastModified": 1745433976, + "narHash": "sha256-9PCkx6Rn9v4/k7obMI9jl+4L8sVesEJFT8EC/I0OMZw=", "ref": "refs/heads/master", - "rev": "33856d7837cb8ba76c4fc9e26f91a659066ee31f", - "revCount": 215, + "rev": "4ad062cee62116f6055e2876e9638e7bb399d219", + "revCount": 217, "type": "git", "url": "https://github.com/NixOS/nixos-artwork.git" }, @@ -835,11 +835,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1744369853, - "narHash": "sha256-rVW9J8gMUFj8PsFV2TgNiNuJd8+O+FUizEQgl1ooQFY=", + "lastModified": 1745579354, + "narHash": "sha256-+Yf7JrKIKMgKDi+zHvuTOJ8Raf7NNZINgBzFaOzYD3U=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "c2b4dd2f85d558c7147bc06c6417f87aa1775ad5", + "rev": "41a1bf337bbd69e304ffbd7390293082336e8ebb", "type": "github" }, "original": { @@ -850,11 +850,11 @@ }, "nixos-facter-modules": { "locked": { - "lastModified": 1738752252, - "narHash": "sha256-/nA3tDdp/2g0FBy8966ppC2WDoyXtUWaHkZWL+N3ZKc=", + "lastModified": 1743671943, + "narHash": "sha256-7sYig0+RcrR3sOL5M+2spbpFUHyEP7cnUvCaqFOBjyU=", "owner": "numtide", "repo": "nixos-facter-modules", - "rev": "60f8b8f3f99667de6a493a44375e5506bf0c48b1", + "rev": "58ad9691670d293a15221d4a78818e0088d2e086", "type": "github" }, "original": { @@ -865,11 +865,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1744366945, - "narHash": "sha256-OuLhysErPHl53BBifhesrRumJNhrlSgQDfYOTXfgIMg=", + "lastModified": 1745503349, + "narHash": "sha256-bUGjvaPVsOfQeTz9/rLTNLDyqbzhl0CQtJJlhFPhIYw=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "1fe3cc2bc5d2dc9c81cb4e63d2f67c1543340df1", + "rev": "f7bee55a5e551bd8e7b5b82c9bc559bc50d868d1", "type": "github" }, "original": { @@ -897,11 +897,11 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1740877520, - "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=", + "lastModified": 1743296961, + "narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "147dee35aab2193b174e4c0868bd80ead5ce755c", + "rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa", "type": "github" }, "original": { @@ -928,11 +928,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1744316434, - "narHash": "sha256-lzFCg/1C39pyY2hMB2gcuHV79ozpOz/Vu15hdjiFOfI=", + "lastModified": 1745377448, + "narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d19cf9dfc633816a437204555afeb9e722386b76", + "rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c", "type": "github" }, "original": { @@ -944,11 +944,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1744098102, - "narHash": "sha256-tzCdyIJj9AjysC3OuKA+tMD/kDEDAF9mICPDU7ix0JA=", + "lastModified": 1745391562, + "narHash": "sha256-sPwcCYuiEopaafePqlG826tBhctuJsLx/mhKKM5Fmjo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c8cd81426f45942bb2906d5ed2fe21d2f19d95b7", + "rev": "8a2f738d9d1f1d986b5a4cd2fd2061a7127237d7", "type": "github" }, "original": { @@ -960,11 +960,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1744309437, - "narHash": "sha256-QZnNHM823am8apCqKSPdtnzPGTy2ZB4zIXOVoBp5+W0=", + "lastModified": 1745487689, + "narHash": "sha256-FQoi3R0NjQeBAsEOo49b5tbDPcJSMWc3QhhaIi9eddw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f9ebe33a928b5d529c895202263a5ce46bdf12f7", + "rev": "5630cf13cceac06cefe9fc607e8dfa8fb342dde3", "type": "github" }, "original": { @@ -976,11 +976,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1744232761, - "narHash": "sha256-gbl9hE39nQRpZaLjhWKmEu5ejtQsgI5TWYrIVVJn30U=", + "lastModified": 1745391562, + "narHash": "sha256-sPwcCYuiEopaafePqlG826tBhctuJsLx/mhKKM5Fmjo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f675531bc7e6657c10a18b565cfebd8aa9e24c14", + "rev": "8a2f738d9d1f1d986b5a4cd2fd2061a7127237d7", "type": "github" }, "original": { @@ -1029,11 +1029,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1744383978, - "narHash": "sha256-lx1XXdOTRa5ntY6GbSlu+h0XqMFVptpDIm3r7LoFwO4=", + "lastModified": 1745578191, + "narHash": "sha256-UEUn1DuOysq4/1Wqd7TSE0lw6iLo5l+TVazKGIBIDp4=", "owner": "nix-community", "repo": "NUR", - "rev": "5b4559e4f4a968dac414504be84a135a7818cbce", + "rev": "d1cf5ba24cde01c963554c5c3d01d22f06ef5845", "type": "github" }, "original": { @@ -1054,11 +1054,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1743301931, - "narHash": "sha256-gex4W+Fyn6RB8x9/y+VWY1EG6RItmlW1HJjAj3mWqKc=", + "lastModified": 1745533630, + "narHash": "sha256-6KSUHpEON1blNkSGsbJQgNpMEE0/UQqNyROaAY9C8yw=", "owner": "notashelf", "repo": "nvf", - "rev": "05489d95b69b4c81e9b9a66a23f6e0cb1c8edb3d", + "rev": "fc6c11631be694d0563464c6086f3b8b5a982e9f", "type": "github" }, "original": { @@ -1156,11 +1156,11 @@ ] }, "locked": { - "lastModified": 1744338850, - "narHash": "sha256-pwMIVmsb8fjjT92n5XFDqCsplcX70qVMMT7NulumPXs=", + "lastModified": 1745548521, + "narHash": "sha256-xyliq8oS5OnzXjHRGr92RtmrtYI/dflf2gSEo0wMFjc=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "5e64aecc018e6f775572609e7d7485fdba6985a7", + "rev": "eb0afb4ac0720d55c29e88eb29432103d73ae11d", "type": "github" }, "original": { @@ -1198,11 +1198,11 @@ ] }, "locked": { - "lastModified": 1744103455, - "narHash": "sha256-SR6+qjkPjGQG+8eM4dCcVtss8r9bre/LAxFMPJpaZeU=", + "lastModified": 1745310711, + "narHash": "sha256-ePyTpKEJTgX0gvgNQWd7tQYQ3glIkbqcW778RpHlqgA=", "owner": "Mic92", "repo": "sops-nix", - "rev": "69d5a5a4635c27dae5a742f36108beccc506c1ba", + "rev": "5e3e92b16d6fdf9923425a8d4df7496b2434f39c", "type": "github" }, "original": { @@ -1394,11 +1394,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1743748085, - "narHash": "sha256-uhjnlaVTWo5iD3LXics1rp9gaKgDRQj6660+gbUU3cE=", + "lastModified": 1744961264, + "narHash": "sha256-aRmUh0AMwcbdjJHnytg1e5h5ECcaWtIFQa6d9gI85AI=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "815e4121d6a5d504c0f96e5be2dd7f871e4fd99d", + "rev": "8d404a69efe76146368885110f29a2ca3700bee6", "type": "github" }, "original": { diff --git a/packages.nix b/packages.nix index 983f3c2..57266bd 100644 --- a/packages.nix +++ b/packages.nix @@ -43,7 +43,6 @@ flake-utils.lib.eachDefaultSystem (system: let trouble.enable = true; lspSignature.enable = true; otter-nvim.enable = true; - lsplines.enable = true; }; languages = { From 9b89576d42a683b8bcd371c1e8a19a2c33b6c7d9 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 17 May 2025 14:38:03 +0200 Subject: [PATCH 32/60] Update flake inputs Remove sunshine, moonshine and ollama --- README.md | 17 ++-- flake.lock | 128 ++++++++++++++--------------- machines/blocktech/pkunis.home.nix | 1 - machines/gamepc/configuration.nix | 18 ---- machines/gamepc/pim.home.nix | 1 - nixos/default.nix | 4 +- secrets/gamepc/pim.yaml | 1 - 7 files changed, 72 insertions(+), 98 deletions(-) diff --git a/README.md b/README.md index 27bf7d1..27cf4ed 100644 --- a/README.md +++ b/README.md @@ -20,23 +20,18 @@ I use [Colmena](https://colmena.cli.rs) for deploying my machines. Create garbage collection roots like so: -``` -colmena build --keep-result --experimental-flake-eval +```shell +colmena build --keep-result ``` To apply to the local machine: -``` -sudo colmena apply-local --sudo --experimental-flake-eval +```shell +sudo colmena apply-local --sudo ``` To apply to all remotely managed systems: +```shell +colmena apply ``` -colmena apply --experimental-flake-eval -``` - -> [!NOTE] -> Currently the `--experimental-flake-eval` flag is necessary to properly use -> Colmena with flakes. See -> [this PR](https://github.com/zhaofengli/colmena/pull/228). diff --git a/flake.lock b/flake.lock index 078141b..82a5c69 100644 --- a/flake.lock +++ b/flake.lock @@ -123,11 +123,11 @@ "stable": "stable" }, "locked": { - "lastModified": 1739900653, - "narHash": "sha256-hPSLvw6AZQYrZyGI6Uq4XgST7benF/0zcCpugn/P0yM=", + "lastModified": 1746816769, + "narHash": "sha256-ymQzXrfHVT8/RJiGbfrNjEeuzXQan46lUJdxEhgivdM=", "owner": "zhaofengli", "repo": "colmena", - "rev": "2370d4336eda2a9ef29fce10fa7076ae011983ab", + "rev": "df694ee23be7ed7b2d8b42c245a640f0724eb06c", "type": "github" }, "original": { @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1745502102, - "narHash": "sha256-LqhRwzvIVPEjH0TaPgwzqpyhW6DtCrvz7FnUJDoUZh8=", + "lastModified": 1747274630, + "narHash": "sha256-87RJwXbfOHyzTB9LYagAQ6vOZhszCvd8Gvudu+gf3qo=", "owner": "nix-community", "repo": "disko", - "rev": "ca27b88c88948d96feeee9ed814cbd34f53d0d70", + "rev": "ec7c109a4f794fce09aad87239eab7f66540b888", "type": "github" }, "original": { @@ -272,11 +272,11 @@ "flake-compat_6": { "flake": false, "locked": { - "lastModified": 1717312683, - "narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=", + "lastModified": 1746162366, + "narHash": "sha256-5SSSZ/oQkwfcAz/o/6TlejlVGqeK08wyREBQ5qFFPhM=", "owner": "nix-community", "repo": "flake-compat", - "rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea", + "rev": "0f158086a2ecdbb138cd0429410e44994f1b7e4b", "type": "github" }, "original": { @@ -497,11 +497,11 @@ ] }, "locked": { - "lastModified": 1742649964, - "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", + "lastModified": 1747372754, + "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", + "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1745557122, - "narHash": "sha256-eqSo9ugzsqhFgaDFYUZj943nurlX4L6f+AW0skJ4W+M=", + "lastModified": 1747331121, + "narHash": "sha256-3MmiUN/jOHBHQUnjqzg6qKArc17j2OS6jisEppDY4g8=", "owner": "nix-community", "repo": "home-manager", - "rev": "dd26f75fb4ec1c731d4b1396eaf4439ce40a91c1", + "rev": "1eec32f0efe3b830927989767a9e6ece0d82d608", "type": "github" }, "original": { @@ -685,11 +685,11 @@ }, "mnw": { "locked": { - "lastModified": 1744597985, - "narHash": "sha256-lLYB9/tQ0OAKonL0Ku963nqOm0aE1TmLavrzmXAr5Zc=", + "lastModified": 1746338991, + "narHash": "sha256-GbyoHjf14LOxZQc+0NFblI4xf/uwGrYo3W8lwE4HcwI=", "owner": "Gerg-L", "repo": "mnw", - "rev": "cbdcbb5f8eb24e25b932bbc87e29299a72e34b64", + "rev": "c65407ee9387ef75985dad3e30f58c822c766ec1", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1745120797, - "narHash": "sha256-owQ0VQ+7cSanTVPxaZMWEzI22Q4bGnuvhVjLAJBNQ3E=", + "lastModified": 1747470409, + "narHash": "sha256-R9TP2//BDKyjNzuZybplIZm7HQEnwL8khs7EmmTPYP4=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "69716041f881a2af935021c1182ed5b0cc04d40e", + "rev": "c1f63a0c3bf1b2fe05124ccb099333163e2184a7", "type": "github" }, "original": { @@ -835,11 +835,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1745579354, - "narHash": "sha256-+Yf7JrKIKMgKDi+zHvuTOJ8Raf7NNZINgBzFaOzYD3U=", + "lastModified": 1747402241, + "narHash": "sha256-s52bryrvkofiNuiBcUdmOoTfu7KSjQsmCl7CR+KsPz4=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "41a1bf337bbd69e304ffbd7390293082336e8ebb", + "rev": "02b683c2635a03fc610a87a15f2326f03e39214d", "type": "github" }, "original": { @@ -865,11 +865,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1745503349, - "narHash": "sha256-bUGjvaPVsOfQeTz9/rLTNLDyqbzhl0CQtJJlhFPhIYw=", + "lastModified": 1747129300, + "narHash": "sha256-L3clA5YGeYCF47ghsI7Tcex+DnaaN/BbQ4dR2wzoiKg=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "f7bee55a5e551bd8e7b5b82c9bc559bc50d868d1", + "rev": "e81fd167b33121269149c57806599045fd33eeed", "type": "github" }, "original": { @@ -881,11 +881,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1734119587, - "narHash": "sha256-AKU6qqskl0yf2+JdRdD0cfxX4b9x3KKV5RqA6wijmPM=", + "lastModified": 1746461020, + "narHash": "sha256-7+pG1I9jvxNlmln4YgnlW4o+w0TZX24k688mibiFDUE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3566ab7246670a43abd2ffa913cc62dad9cdf7d5", + "rev": "3730d8a308f94996a9ba7c7138ede69c1b9ac4ae", "type": "github" }, "original": { @@ -928,11 +928,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1745377448, - "narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=", + "lastModified": 1747426788, + "narHash": "sha256-N4cp0asTsJCnRMFZ/k19V9akkxb7J/opG+K+jU57JGc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c", + "rev": "12a55407652e04dcf2309436eb06fef0d3713ef3", "type": "github" }, "original": { @@ -944,11 +944,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1745391562, - "narHash": "sha256-sPwcCYuiEopaafePqlG826tBhctuJsLx/mhKKM5Fmjo=", + "lastModified": 1747179050, + "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8a2f738d9d1f1d986b5a4cd2fd2061a7127237d7", + "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", "type": "github" }, "original": { @@ -960,11 +960,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1745487689, - "narHash": "sha256-FQoi3R0NjQeBAsEOo49b5tbDPcJSMWc3QhhaIi9eddw=", + "lastModified": 1747335874, + "narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5630cf13cceac06cefe9fc607e8dfa8fb342dde3", + "rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858", "type": "github" }, "original": { @@ -976,11 +976,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1745391562, - "narHash": "sha256-sPwcCYuiEopaafePqlG826tBhctuJsLx/mhKKM5Fmjo=", + "lastModified": 1747327360, + "narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8a2f738d9d1f1d986b5a4cd2fd2061a7127237d7", + "rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46", "type": "github" }, "original": { @@ -1008,11 +1008,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1735554305, - "narHash": "sha256-zExSA1i/b+1NMRhGGLtNfFGXgLtgo+dcuzHzaWA6w3Q=", + "lastModified": 1745377448, + "narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0e82ab234249d8eee3e8c91437802b32c74bb3fd", + "rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c", "type": "github" }, "original": { @@ -1029,11 +1029,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1745578191, - "narHash": "sha256-UEUn1DuOysq4/1Wqd7TSE0lw6iLo5l+TVazKGIBIDp4=", + "lastModified": 1747476561, + "narHash": "sha256-gkumoiS39aXShyOcviJHuHLEFq1gXKYFeAcxiND2aOY=", "owner": "nix-community", "repo": "NUR", - "rev": "d1cf5ba24cde01c963554c5c3d01d22f06ef5845", + "rev": "b4ec2ad72df56af454df4aa9c5d847591cbc0daf", "type": "github" }, "original": { @@ -1054,11 +1054,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1745533630, - "narHash": "sha256-6KSUHpEON1blNkSGsbJQgNpMEE0/UQqNyROaAY9C8yw=", + "lastModified": 1747458218, + "narHash": "sha256-/VTiSN3S+xR7VYaDoT013d7qKoDkTbzek2MQWa0hiV0=", "owner": "notashelf", "repo": "nvf", - "rev": "fc6c11631be694d0563464c6086f3b8b5a982e9f", + "rev": "4399a05a46781f642e5df3fd3f340cd90bf7abd3", "type": "github" }, "original": { @@ -1156,11 +1156,11 @@ ] }, "locked": { - "lastModified": 1745548521, - "narHash": "sha256-xyliq8oS5OnzXjHRGr92RtmrtYI/dflf2gSEo0wMFjc=", + "lastModified": 1747363019, + "narHash": "sha256-N4dwkRBmpOosa4gfFkFf/LTD8oOcNkAyvZ07JvRDEf0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "eb0afb4ac0720d55c29e88eb29432103d73ae11d", + "rev": "0e624f2b1972a34be1a9b35290ed18ea4b419b6f", "type": "github" }, "original": { @@ -1198,11 +1198,11 @@ ] }, "locked": { - "lastModified": 1745310711, - "narHash": "sha256-ePyTpKEJTgX0gvgNQWd7tQYQ3glIkbqcW778RpHlqgA=", + "lastModified": 1746485181, + "narHash": "sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB+qsl9BZUnRvg=", "owner": "Mic92", "repo": "sops-nix", - "rev": "5e3e92b16d6fdf9923425a8d4df7496b2434f39c", + "rev": "e93ee1d900ad264d65e9701a5c6f895683433386", "type": "github" }, "original": { @@ -1213,16 +1213,16 @@ }, "stable": { "locked": { - "lastModified": 1730883749, - "narHash": "sha256-mwrFF0vElHJP8X3pFCByJR365Q2463ATp2qGIrDUdlE=", + "lastModified": 1746557022, + "narHash": "sha256-QkNoyEf6TbaTW5UZYX0OkwIJ/ZMeKSSoOMnSDPQuol0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "dba414932936fde69f0606b4f1d87c5bc0003ede", + "rev": "1d3aeb5a193b9ff13f63f4d9cc169fb88129f860", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.05", + "ref": "nixos-24.11", "repo": "nixpkgs", "type": "github" } @@ -1394,11 +1394,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1744961264, - "narHash": "sha256-aRmUh0AMwcbdjJHnytg1e5h5ECcaWtIFQa6d9gI85AI=", + "lastModified": 1747469671, + "narHash": "sha256-bo1ptiFoNqm6m1B2iAhJmWCBmqveLVvxom6xKmtuzjg=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "8d404a69efe76146368885110f29a2ca3700bee6", + "rev": "ab0378b61b0d85e73a8ab05d5c6029b5bd58c9fb", "type": "github" }, "original": { diff --git a/machines/blocktech/pkunis.home.nix b/machines/blocktech/pkunis.home.nix index 9a4a99c..808129b 100644 --- a/machines/blocktech/pkunis.home.nix +++ b/machines/blocktech/pkunis.home.nix @@ -57,7 +57,6 @@ in { krita libreoffice # logseq # Has insecure electron dependency - moonlight-qt nicotine-plus qFlipper signal-desktop diff --git a/machines/gamepc/configuration.nix b/machines/gamepc/configuration.nix index 0d5f007..5702c37 100644 --- a/machines/gamepc/configuration.nix +++ b/machines/gamepc/configuration.nix @@ -33,27 +33,9 @@ services = { openssh.enable = true; - ollama = { - enable = true; - rocmOverrideGfx = "10.3.0"; - loadModels = ["deepseek-r1:32b" "hf.co/mradermacher/DeepSeek-R1-Distill-Qwen-32B-Uncensored-GGUF:Q4_K_M"]; - acceleration = "rocm"; - }; - xserver.displayManager.lightdm.extraSeatDefaults = '' autologin-user=pim ''; - - sunshine = { - enable = true; - openFirewall = true; - - settings = { - sunshine_name = config.networking.hostName; - origin_web_ui_allowed = "wan"; - credentials_file = "/home/pim/.config/sunshine/sunshine_credentials.json"; - }; - }; }; boot.loader.grub = { diff --git a/machines/gamepc/pim.home.nix b/machines/gamepc/pim.home.nix index 9e70a28..dc7d1e9 100644 --- a/machines/gamepc/pim.home.nix +++ b/machines/gamepc/pim.home.nix @@ -22,6 +22,5 @@ defaultSopsFile = "${self}/secrets/gamepc/pim.yaml"; # TODO: should be set automatically? age.keyFile = "${config.xdg.configHome}/sops/age/keys.txt"; - secrets."sunshine_credentials".path = "${config.xdg.configHome}/sunshine/sunshine_credentials.json"; }; } diff --git a/nixos/default.nix b/nixos/default.nix index 38ef3b8..ccff26f 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -146,7 +146,7 @@ }; nix = { - package = pkgs.nixVersions.stable; + package = lib.mkDefault pkgs.nixVersions.stable; extraOptions = '' experimental-features = nix-command flakes @@ -181,7 +181,7 @@ ]; permittedInsecurePackages = [ - "electron-31.7.7" + "electron-33.4.11" ]; }; diff --git a/secrets/gamepc/pim.yaml b/secrets/gamepc/pim.yaml index d3fd6a4..c8c51be 100644 --- a/secrets/gamepc/pim.yaml +++ b/secrets/gamepc/pim.yaml @@ -1,4 +1,3 @@ -sunshine_credentials: ENC[AES256_GCM,data:P1sttD3H65DQje+Cs5CVLqvhtXWtoBgu/TBZ3WFIWqErRKtKa31V2lLrgixrty4TVM5qq06zE5z3lQ78ZAHLNh80jMPvoAcCqTXXoWwIYwdHJT0iG09f0ZfpiVTZU4MuCn0uuaJ6873AYe60siZW8uFntu3v230izoAqY9Ex+BzIOOliuqrnIRzdw06TCrrBTJUr,iv:WZqkSZOsiCWx7VPuTDA1Js1DcHZLK9YLDxTQ2nVlFQ8=,tag:iJ6bSofnPWWm7B+VPm+MyQ==,type:str] sops: kms: [] gcp_kms: [] From 34911cd994ef8ba917075f2ed03751f773377515 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Wed, 21 May 2025 13:58:03 +0200 Subject: [PATCH 33/60] Bump kernel --- nixos/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/default.nix b/nixos/default.nix index ccff26f..505c879 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -197,7 +197,7 @@ }; boot = { - kernelPackages = pkgs.linuxKernel.packages.linux_6_13; + kernelPackages = pkgs.linuxKernel.packages.linux_6_14; kernel.sysctl = { "net.core.default_qdisc" = "fq"; From 39125c71e1ffc329b3d9ca1a1c0ec52adc59a573 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Thu, 22 May 2025 23:01:52 +0200 Subject: [PATCH 34/60] Add local volumes to borg backup Fix deprecated NVF option --- nixos/backups.nix | 2 +- packages.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/backups.nix b/nixos/backups.nix index 3a502ee..1f02dfa 100644 --- a/nixos/backups.nix +++ b/nixos/backups.nix @@ -10,7 +10,7 @@ name = "borgmatic-config.yaml"; text = lib.generators.toYAML {} { - source_directories = ["/mnt/longhorn/persistent/longhorn-backup"]; + source_directories = ["/mnt/longhorn/persistent/longhorn-backup" "/mnt/longhorn/persistent/volumes"]; repositories = [ { diff --git a/packages.nix b/packages.nix index 57266bd..8c0536d 100644 --- a/packages.nix +++ b/packages.nix @@ -38,6 +38,7 @@ flake-utils.lib.eachDefaultSystem (system: let ]; lsp = { + enable = true; formatOnSave = true; lightbulb.enable = true; trouble.enable = true; @@ -46,7 +47,6 @@ flake-utils.lib.eachDefaultSystem (system: let }; languages = { - enableLSP = true; enableFormat = true; enableTreesitter = true; enableExtraDiagnostics = true; From 67e6ddbf90783d796007e9fcdfcb7211e53cabb5 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 25 May 2025 16:56:22 +0200 Subject: [PATCH 35/60] Add module for backing up volume data to BorgBase Back up freshrss volume --- machines/atlas/configuration.nix | 9 +++++ nixos/backups-ng.nix | 69 ++++++++++++++++++++++++++++++++ nixos/default.nix | 1 + nixos/server.nix | 6 ++- secrets/servers.yaml | 9 +++-- 5 files changed, 89 insertions(+), 5 deletions(-) create mode 100644 nixos/backups-ng.nix diff --git a/machines/atlas/configuration.nix b/machines/atlas/configuration.nix index 6b28f8d..76c32ca 100644 --- a/machines/atlas/configuration.nix +++ b/machines/atlas/configuration.nix @@ -5,6 +5,15 @@ users.users.root.openssh.authorizedKeys.keys = config.pim.ssh.keys.pim ++ config.pim.ssh.keys.niels; pim.k3s.serverAddr = "https://jefke.dmz:6443"; + pim.backups.borgBackups = { + freshrss = { + repo = "ssh://ty1l82m0@ty1l82m0.repo.borgbase.com/./repo"; + paths = ["/mnt/longhorn/persistent/volumes/freshrss"]; + deploymentName = "server"; + deploymentNamespace = "freshrss"; + }; + }; + deployment = { targetHost = "atlas"; targetUser = "root"; diff --git a/nixos/backups-ng.nix b/nixos/backups-ng.nix new file mode 100644 index 0000000..1cb100f --- /dev/null +++ b/nixos/backups-ng.nix @@ -0,0 +1,69 @@ +{ + lib, + config, + pkgs, + ... +}: let + borgBackupOpts = { + options = { + repo = lib.mkOption { + type = lib.types.str; + }; + paths = lib.mkOption { + type = with lib.types; listOf str; + }; + deploymentName = lib.mkOption { + type = lib.types.str; + }; + deploymentNamespace = lib.mkOption { + type = lib.types.str; + }; + replicaCount = lib.mkOption { + type = lib.types.int; + default = 1; + }; + }; + }; +in { + options.pim.backups = { + borgBackups = lib.mkOption { + type = with lib.types; attrsOf (submodule borgBackupOpts); + default = {}; + }; + }; + + # TODO: should have some timeout and alerting? + config = { + services.borgbackup.jobs = + lib.mapAttrs (_name: c: { + inherit (c) repo paths; + startAt = "*-*-* 00:00:00"; + # TODO: low benefit, but we could set borgbase's host keys here as they are published online. + environment.BORG_RSH = "ssh -i ${config.sops.secrets."borg/borgbasePrivateKey".path} -o StrictHostKeychecking=no"; + postHook = "${pkgs.k3s}/bin/kubectl scale deployment -n ${c.deploymentNamespace} ${c.deploymentName} --replicas=${toString c.replicaCount}"; + + prune.keep = { + within = "7d"; + weekly = 4; + monthly = 6; + }; + + preHook = '' + ${pkgs.k3s}/bin/kubectl scale deployment -n ${c.deploymentNamespace} ${c.deploymentName} --replicas=0 + + while [ -n "$(${pkgs.k3s}/bin/kubectl get deployment -n ${c.deploymentNamespace} ${c.deploymentName} -o jsonpath='{.status.replicas}')" ]; do + echo "Waiting for replicas to scale down to 0..." + sleep 2 + done + ''; + + encryption = { + passCommand = "cat ${config.sops.secrets."borg/borgPassphrase".path}"; + mode = "repokey-blake2"; + }; + }) + config.pim.backups.borgBackups; + + systemd.timers = lib.mapAttrs' (name: _c: lib.nameValuePair "borgbackup-job-${name}" {timerConfig.RandomizedDelaySec = "1h";}) config.pim.backups.borgBackups; + }; +} diff --git a/nixos/default.nix b/nixos/default.nix index 505c879..1665269 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -26,6 +26,7 @@ ./kubernetes ./data-sharing.nix ./backups.nix + ./backups-ng.nix ]; options = { diff --git a/nixos/server.nix b/nixos/server.nix index d13875b..282edb6 100644 --- a/nixos/server.nix +++ b/nixos/server.nix @@ -63,8 +63,10 @@ }; }; - sops.secrets."tailscale/authKey" = { - sopsFile = "${self}/secrets/servers.yaml"; + sops.secrets = { + "tailscale/authKey".sopsFile = "${self}/secrets/servers.yaml"; + "borg/borgPassphrase".sopsFile = "${self}/secrets/servers.yaml"; + "borg/borgbasePrivateKey".sopsFile = "${self}/secrets/servers.yaml"; }; }; } diff --git a/secrets/servers.yaml b/secrets/servers.yaml index 5c7d0b4..d947814 100644 --- a/secrets/servers.yaml +++ b/secrets/servers.yaml @@ -1,5 +1,8 @@ tailscale: authKey: ENC[AES256_GCM,data:3eXxQBY6AVqU4R1NlsyhGCfXW5wL58ODRH/f+zo5YFRad/ys1vB9JeKagq0SJSj/w4zxRAEpCf1o47Ypww==,iv:QklyIFuXlbH6cM/I0gqDH/Xeay9gqxqeyulQ7W/dbig=,tag:E/3UqtsfSVOi6otSlReO0Q==,type:str] +borg: + borgPassphrase: ENC[AES256_GCM,data:UWA2sBLPi63MRVOPTYPWYLujF2M=,iv:FQq/IsZK7LWo30gZc7oT2E9feCLn7Oeg6wDGuezkhu8=,tag:fWYaZUwJrM8x6cemXzz6xg==,type:str] + borgbasePrivateKey: ENC[AES256_GCM,data:O7eIY1yvbnBTS96tt5a8vcOEOzit4tEbIHmxnSbNsowC7YNk2g6MShQ6ll86GDiunLY33/Px0bqq9+4z/dk4N3FWQ1v5KQjr/gh+CS8VpIrv9zLv+Ru9UzeWQusbYxqnCu/IAQ1aB8UGV2LSCesQ0r/B6XEe51Phi65uWkbUYa/8voSiws3T3hnNrUDqiHdzfBgWZIQszz7zD92Q+aXu/kGNSxVKbXjWVfqBiyDEtuLEWoC1eENeEs41Ov5YT0Lm6+CUWadPqEwkDSvZWnBhoPwPLTZ/+ftZ/nizXUujsTdRwjcbOwJER+ObhgWDxbJE2WifxFOmHt3ggfSmAN842u5PjfT5gqpXMlTdCwYAYEJvDMqGsADe4p7+vPWJbetaahFrFGN8uBw7rs7W2wIiUKB5bAbAG0o6hdTpWfysuzMOFK/fROvCJsNhhKbbdiQbI0+SogtCkwv69+3uaRTFi33uqKCO6PQ6rMIahjo1lutm9iWq2nX4oI40W1KPC6EU/wF2,iv:rzkjjSnyrs58ZEO8XLsCSFsPHbtnL39SF6NJ6lUg3Ww=,tag:q0sunVc+9bLFoSdeykuT6g==,type:str] sops: kms: [] gcp_kms: [] @@ -69,8 +72,8 @@ sops: Y2cwK05uWXFhbndyRlhrSFNjYUlmZ1UKZ1vFRu1QhGGf7BIP8TxK2BIlMZlP3muA R3qLr1lEQmob4O0ilwn65nSCEd1/9W6dUWqeSlJ6CavjG59AvSHfIA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-11-30T18:44:29Z" - mac: ENC[AES256_GCM,data:SG6a5pWa3gMaSz9d9fOchUXtXbRTpMOXmbOjZo5Fdx8Es1MEDwezwscQaj9p1dzmGa+7U8UUUzMYxlg2SmGgGdPgCs0a5RQVYvQFNdgpRiuknflFMcdgXLv7XFsTqsqSmbN0O662YDvCcz4DWRKjNCZAimlLym8pwDihj1D8dcU=,iv:JmCbcazDK2KPyYsoVy39sr4IbfiGfmGoopit5ojVADk=,tag:6tKYfMkJBjsThaa4qLqobw==,type:str] + lastmodified: "2025-05-25T14:53:30Z" + mac: ENC[AES256_GCM,data:jzjF+qjdptTI0Y1wNteZgYBGwF5dFWEBIFY3+k4Ty0YU/WB5AyUL6A8v0+PyoxoJK3pL+NAJEmLmAPFVh3+ExDlU9g3TAgpkOs7EsbJtWcjo8Ah08Hl8zoWqcMFcQhZ+aLnVKAE+tIBT4dWyV0AvOWmU8luvarsCp2tQ2OoBH20=,iv:PmbLg91onGz3kjxXMua/Thb904qDkWjHJcBY2dMAios=,tag:e0+fQqNysdiGvaodcimMVQ==,type:str] pgp: [] unencrypted_suffix: _unencrypted - version: 3.9.1 + version: 3.9.4 From 49f5ee7166605fe2abc940515971bbc45a7282ca Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 25 May 2025 17:21:51 +0200 Subject: [PATCH 36/60] Backup Radicale --- machines/jefke/configuration.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index f569389..a435c25 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -5,6 +5,15 @@ system.stateVersion = "23.05"; users.users.root.openssh.authorizedKeys.keys = config.pim.ssh.keys.pim ++ config.pim.ssh.keys.niels; + pim.backups.borgBackups = { + radicale = { + repo = "ssh://s9cx8q8a@s9cx8q8a.repo.borgbase.com/./repo"; + paths = ["/mnt/longhorn/persistent/volumes/radicale"]; + deploymentName = "server"; + deploymentNamespace = "radicale"; + }; + }; + deployment = { targetHost = "jefke"; targetUser = "root"; From 3f86fa7d7de99f9b58f82bf861bf90678fc077a0 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 25 May 2025 18:07:25 +0200 Subject: [PATCH 37/60] Backup media volumes --- machines/atlas/configuration.nix | 1 - machines/jefke/configuration.nix | 1 - machines/lewis/configuration.nix | 44 ++++++++++++++++++++++++++++++++ nixos/backups-ng.nix | 9 +++---- 4 files changed, 48 insertions(+), 7 deletions(-) diff --git a/machines/atlas/configuration.nix b/machines/atlas/configuration.nix index 76c32ca..3d00282 100644 --- a/machines/atlas/configuration.nix +++ b/machines/atlas/configuration.nix @@ -7,7 +7,6 @@ pim.backups.borgBackups = { freshrss = { - repo = "ssh://ty1l82m0@ty1l82m0.repo.borgbase.com/./repo"; paths = ["/mnt/longhorn/persistent/volumes/freshrss"]; deploymentName = "server"; deploymentNamespace = "freshrss"; diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index a435c25..f30cb56 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -7,7 +7,6 @@ pim.backups.borgBackups = { radicale = { - repo = "ssh://s9cx8q8a@s9cx8q8a.repo.borgbase.com/./repo"; paths = ["/mnt/longhorn/persistent/volumes/radicale"]; deploymentName = "server"; deploymentNamespace = "radicale"; diff --git a/machines/lewis/configuration.nix b/machines/lewis/configuration.nix index 70337f7..557550c 100644 --- a/machines/lewis/configuration.nix +++ b/machines/lewis/configuration.nix @@ -22,6 +22,50 @@ k3s.serverAddr = "https://jefke.dmz:6443"; data-sharing.enable = true; backups.enable = true; + + backups.borgBackups = { + bazarr = { + paths = ["/mnt/longhorn/persistent/volumes/bazarr"]; + deploymentName = "bazarr"; + deploymentNamespace = "media"; + }; + + deluge = { + paths = ["/mnt/longhorn/persistent/volumes/deluge"]; + deploymentName = "deluge"; + deploymentNamespace = "media"; + }; + + jellyfin = { + paths = ["/mnt/longhorn/persistent/volumes/jellyfin"]; + deploymentName = "jellyfin"; + deploymentNamespace = "media"; + }; + + jellyseerr = { + paths = ["/mnt/longhorn/persistent/volumes/jellyseerr"]; + deploymentName = "jellyseerr"; + deploymentNamespace = "media"; + }; + + prowlarr = { + paths = ["/mnt/longhorn/persistent/volumes/prowlarr"]; + deploymentName = "prowlarr"; + deploymentNamespace = "media"; + }; + + radarr = { + paths = ["/mnt/longhorn/persistent/volumes/radarr"]; + deploymentName = "radarr"; + deploymentNamespace = "media"; + }; + + sonarr = { + paths = ["/mnt/longhorn/persistent/volumes/sonarr"]; + deploymentName = "sonarr"; + deploymentNamespace = "media"; + }; + }; }; systemd = { diff --git a/nixos/backups-ng.nix b/nixos/backups-ng.nix index 1cb100f..b79b3fa 100644 --- a/nixos/backups-ng.nix +++ b/nixos/backups-ng.nix @@ -6,9 +6,6 @@ }: let borgBackupOpts = { options = { - repo = lib.mkOption { - type = lib.types.str; - }; paths = lib.mkOption { type = with lib.types; listOf str; }; @@ -35,12 +32,14 @@ in { # TODO: should have some timeout and alerting? config = { services.borgbackup.jobs = - lib.mapAttrs (_name: c: { - inherit (c) repo paths; + lib.mapAttrs (name: c: { + inherit (c) paths; + repo = "ssh://w553a7cb@w553a7cb.repo.borgbase.com/./repo"; startAt = "*-*-* 00:00:00"; # TODO: low benefit, but we could set borgbase's host keys here as they are published online. environment.BORG_RSH = "ssh -i ${config.sops.secrets."borg/borgbasePrivateKey".path} -o StrictHostKeychecking=no"; postHook = "${pkgs.k3s}/bin/kubectl scale deployment -n ${c.deploymentNamespace} ${c.deploymentName} --replicas=${toString c.replicaCount}"; + archiveBaseName = name; prune.keep = { within = "7d"; From 9895b806fc13b069323ff271520036fbafc79917 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 25 May 2025 18:17:32 +0200 Subject: [PATCH 38/60] Backup Forgejo volume --- machines/jefke/configuration.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index f30cb56..dbb6c76 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -11,6 +11,12 @@ deploymentName = "server"; deploymentNamespace = "radicale"; }; + + forgejo = { + paths = ["/mnt/longhorn/persistent/volumes/forgejo"]; + deploymentName = "server"; + deploymentNamespace = "forgejo"; + }; }; deployment = { From c57072ddda606efe366b1f6d8f1d1d076831abec Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 25 May 2025 18:19:26 +0200 Subject: [PATCH 39/60] Don't backup new volumes to old location --- nixos/backups.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/backups.nix b/nixos/backups.nix index 1f02dfa..3a502ee 100644 --- a/nixos/backups.nix +++ b/nixos/backups.nix @@ -10,7 +10,7 @@ name = "borgmatic-config.yaml"; text = lib.generators.toYAML {} { - source_directories = ["/mnt/longhorn/persistent/longhorn-backup" "/mnt/longhorn/persistent/volumes"]; + source_directories = ["/mnt/longhorn/persistent/longhorn-backup"]; repositories = [ { From cdfbf8f1653762d1d4a9df3498c041489fe87e67 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 26 May 2025 20:08:38 +0200 Subject: [PATCH 40/60] Backup syncthing --- machines/jefke/configuration.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index dbb6c76..cfa61d6 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -17,6 +17,12 @@ deploymentName = "server"; deploymentNamespace = "forgejo"; }; + + syncthing = { + paths = ["/mnt/longhorn/persistent/volumes/syncthing" "/mnt/longhorn/persistent/volumes/keepassxc"]; + deploymentName = "syncthing"; + deploymentNamespace = "syncthing"; + }; }; deployment = { From 752c3d2fc5644751a5a99beae616b90bbde03e83 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 26 May 2025 20:16:36 +0200 Subject: [PATCH 41/60] Backup ntfy --- machines/jefke/configuration.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index cfa61d6..964fa61 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -23,6 +23,12 @@ deploymentName = "syncthing"; deploymentNamespace = "syncthing"; }; + + ntfy = { + paths = ["/mnt/longhorn/persistent/volumes/ntfy"]; + deploymentName = "ntfy"; + deploymentNamespace = "ntfy"; + }; }; deployment = { From 1d056f79fc4e5a87316c1346ec7b19ff1ef3822d Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 26 May 2025 20:42:24 +0200 Subject: [PATCH 42/60] Backup hedgedoc --- machines/jefke/configuration.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index 964fa61..5f3765c 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -29,6 +29,18 @@ deploymentName = "ntfy"; deploymentNamespace = "ntfy"; }; + + hedgedoc-uploads = { + paths = ["/mnt/longhorn/persistent/volumes/hedgedoc-uploads"]; + deploymentName = "server"; + deploymentNamespace = "hedgedoc"; + }; + + hedgedoc-db = { + paths = ["/mnt/longhorn/persistent/volumes/hedgedoc-db"]; + deploymentName = "database"; + deploymentNamespace = "hedgedoc"; + }; }; deployment = { From b5718486d7da2d9f227cba2cd1e54613e3100b15 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 26 May 2025 21:27:57 +0200 Subject: [PATCH 43/60] Backup nextcloud --- machines/atlas/configuration.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/machines/atlas/configuration.nix b/machines/atlas/configuration.nix index 3d00282..708939d 100644 --- a/machines/atlas/configuration.nix +++ b/machines/atlas/configuration.nix @@ -11,6 +11,18 @@ deploymentName = "server"; deploymentNamespace = "freshrss"; }; + + nextcloud = { + paths = ["/mnt/longhorn/persistent/volumes/nextcloud"]; + deploymentName = "server"; + deploymentNamespace = "nextcloud"; + }; + + nextcloud-db = { + paths = ["/mnt/longhorn/persistent/volumes/nextcloud-db"]; + deploymentName = "database"; + deploymentNamespace = "nextcloud"; + }; }; deployment = { From fe34d04ec99829a38157ed8bac9537d943788530 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 26 May 2025 21:38:17 +0200 Subject: [PATCH 44/60] Backup atuin --- machines/jefke/configuration.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index 5f3765c..b4d1fb9 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -41,6 +41,12 @@ deploymentName = "database"; deploymentNamespace = "hedgedoc"; }; + + atuin-db = { + paths = ["/mnt/longhorn/persistent/volumes/atuin-db"]; + deploymentName = "server"; + deploymentNamespace = "atuin"; + }; }; deployment = { From 32f147eb6c665d49be7d122f88d106bcd3bf2470 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Mon, 26 May 2025 21:58:50 +0200 Subject: [PATCH 45/60] Backup paperless-ngx --- machines/jefke/configuration.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index b4d1fb9..d321db0 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -47,6 +47,24 @@ deploymentName = "server"; deploymentNamespace = "atuin"; }; + + paperless-data = { + paths = ["/mnt/longhorn/persistent/volumes/paperless-data"]; + deploymentName = "server"; + deploymentNamespace = "paperless"; + }; + + paperless-redisdata = { + paths = ["/mnt/longhorn/persistent/volumes/paperless-redisdata"]; + deploymentName = "redis"; + deploymentNamespace = "paperless"; + }; + + paperless-db = { + paths = ["/mnt/longhorn/persistent/volumes/paperless-db"]; + deploymentName = "database"; + deploymentNamespace = "paperless"; + }; }; deployment = { From 3b2a8e04fc63097048996842115e52adcddf3428 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 27 May 2025 09:09:49 +0200 Subject: [PATCH 46/60] Backup immich --- machines/jefke/configuration.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index d321db0..3688341 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -65,6 +65,18 @@ deploymentName = "database"; deploymentNamespace = "paperless"; }; + + immich = { + paths = ["/mnt/longhorn/persistent/volumes/immich"]; + deploymentName = "immich"; + deploymentNamespace = "immich"; + }; + + immich-db = { + paths = ["/mnt/longhorn/persistent/volumes/immich-db"]; + deploymentName = "database"; + deploymentNamespace = "immich"; + }; }; deployment = { From 3ec6b502b910484e7373a55ebffb7bb1ea24913f Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Tue, 27 May 2025 09:17:57 +0200 Subject: [PATCH 47/60] Update flake inputs --- flake.lock | 96 +++++++++++++++++++++++++++--------------------------- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/flake.lock b/flake.lock index 82a5c69..7ea6706 100644 --- a/flake.lock +++ b/flake.lock @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1747274630, - "narHash": "sha256-87RJwXbfOHyzTB9LYagAQ6vOZhszCvd8Gvudu+gf3qo=", + "lastModified": 1748225455, + "narHash": "sha256-AzlJCKaM4wbEyEpV3I/PUq5mHnib2ryEy32c+qfj6xk=", "owner": "nix-community", "repo": "disko", - "rev": "ec7c109a4f794fce09aad87239eab7f66540b888", + "rev": "a894f2811e1ee8d10c50560551e50d6ab3c392ba", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1747331121, - "narHash": "sha256-3MmiUN/jOHBHQUnjqzg6qKArc17j2OS6jisEppDY4g8=", + "lastModified": 1747688870, + "narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=", "owner": "nix-community", "repo": "home-manager", - "rev": "1eec32f0efe3b830927989767a9e6ece0d82d608", + "rev": "d5f1f641b289553927b3801580598d200a501863", "type": "github" }, "original": { @@ -685,11 +685,11 @@ }, "mnw": { "locked": { - "lastModified": 1746338991, - "narHash": "sha256-GbyoHjf14LOxZQc+0NFblI4xf/uwGrYo3W8lwE4HcwI=", + "lastModified": 1748278309, + "narHash": "sha256-JCeiMrUhFku44kfKsgiD9Ibzho4MblBD2WmOQYsQyTY=", "owner": "Gerg-L", "repo": "mnw", - "rev": "c65407ee9387ef75985dad3e30f58c822c766ec1", + "rev": "486a17ba1279ab2357cae8ff66b309db622f8831", "type": "github" }, "original": { @@ -752,11 +752,11 @@ ] }, "locked": { - "lastModified": 1747470409, - "narHash": "sha256-R9TP2//BDKyjNzuZybplIZm7HQEnwL8khs7EmmTPYP4=", + "lastModified": 1748145500, + "narHash": "sha256-t9fx0l61WOxtWxXCqlXPWSuG/0XMF9DtE2T7KXgMqJw=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "c1f63a0c3bf1b2fe05124ccb099333163e2184a7", + "rev": "a98adbf54d663395df0b9929f6481d4d80fc8927", "type": "github" }, "original": { @@ -835,11 +835,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1747402241, - "narHash": "sha256-s52bryrvkofiNuiBcUdmOoTfu7KSjQsmCl7CR+KsPz4=", + "lastModified": 1748257750, + "narHash": "sha256-5iRpCgegBUj2W8GsZrfsNLvE4mjktyIsZkBbGpJe2wU=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "02b683c2635a03fc610a87a15f2326f03e39214d", + "rev": "c4d2bbbe3675a47c1e24b88f61f54b2eb3cece9d", "type": "github" }, "original": { @@ -865,11 +865,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1747129300, - "narHash": "sha256-L3clA5YGeYCF47ghsI7Tcex+DnaaN/BbQ4dR2wzoiKg=", + "lastModified": 1747900541, + "narHash": "sha256-dn64Pg9xLETjblwZs9Euu/SsjW80pd6lr5qSiyLY1pg=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "e81fd167b33121269149c57806599045fd33eeed", + "rev": "11f2d9ea49c3e964315215d6baa73a8d42672f06", "type": "github" }, "original": { @@ -928,11 +928,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1747426788, - "narHash": "sha256-N4cp0asTsJCnRMFZ/k19V9akkxb7J/opG+K+jU57JGc=", + "lastModified": 1748217807, + "narHash": "sha256-P3u2PXxMlo49PutQLnk2PhI/imC69hFl1yY4aT5Nax8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "12a55407652e04dcf2309436eb06fef0d3713ef3", + "rev": "3108eaa516ae22c2360928589731a4f1581526ef", "type": "github" }, "original": { @@ -944,11 +944,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1747179050, - "narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", + "lastModified": 1748026106, + "narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", + "rev": "063f43f2dbdef86376cc29ad646c45c46e93234c", "type": "github" }, "original": { @@ -960,11 +960,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1747335874, - "narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=", + "lastModified": 1748037224, + "narHash": "sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858", + "rev": "f09dede81861f3a83f7f06641ead34f02f37597f", "type": "github" }, "original": { @@ -976,11 +976,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1747327360, - "narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=", + "lastModified": 1748190013, + "narHash": "sha256-R5HJFflOfsP5FBtk+zE8FpL8uqE7n62jqOsADvVshhE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46", + "rev": "62b852f6c6742134ade1abdd2a21685fd617a291", "type": "github" }, "original": { @@ -1008,11 +1008,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1745377448, - "narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=", + "lastModified": 1747958103, + "narHash": "sha256-qmmFCrfBwSHoWw7cVK4Aj+fns+c54EBP8cGqp/yK410=", "owner": "nixos", "repo": "nixpkgs", - "rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c", + "rev": "fe51d34885f7b5e3e7b59572796e1bcb427eccb1", "type": "github" }, "original": { @@ -1029,11 +1029,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1747476561, - "narHash": "sha256-gkumoiS39aXShyOcviJHuHLEFq1gXKYFeAcxiND2aOY=", + "lastModified": 1748319458, + "narHash": "sha256-raBGzAVExD0z2S7+jk+Sw6Y/ew3nbchSMH5qeVs0eoA=", "owner": "nix-community", "repo": "NUR", - "rev": "b4ec2ad72df56af454df4aa9c5d847591cbc0daf", + "rev": "8b266cb4a8e5dd9758d882df5ea4b6ef24cb9156", "type": "github" }, "original": { @@ -1054,11 +1054,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1747458218, - "narHash": "sha256-/VTiSN3S+xR7VYaDoT013d7qKoDkTbzek2MQWa0hiV0=", + "lastModified": 1748318168, + "narHash": "sha256-pUDVxHarStrDYxd2tztz4SjNflzFxuMMEC3SK9WLUK8=", "owner": "notashelf", "repo": "nvf", - "rev": "4399a05a46781f642e5df3fd3f340cd90bf7abd3", + "rev": "74ba4d955976af1422ea1f095968e547db70aa04", "type": "github" }, "original": { @@ -1156,11 +1156,11 @@ ] }, "locked": { - "lastModified": 1747363019, - "narHash": "sha256-N4dwkRBmpOosa4gfFkFf/LTD8oOcNkAyvZ07JvRDEf0=", + "lastModified": 1748227081, + "narHash": "sha256-RLnN7LBxhEdCJ6+rIL9sbhjBVDaR6jG377M/CLP/fmE=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "0e624f2b1972a34be1a9b35290ed18ea4b419b6f", + "rev": "1cbe817fd8c64a9f77ba4d7861a4839b0b15983e", "type": "github" }, "original": { @@ -1198,11 +1198,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": { @@ -1394,11 +1394,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1747469671, - "narHash": "sha256-bo1ptiFoNqm6m1B2iAhJmWCBmqveLVvxom6xKmtuzjg=", + "lastModified": 1748243702, + "narHash": "sha256-9YzfeN8CB6SzNPyPm2XjRRqSixDopTapaRsnTpXUEY8=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "ab0378b61b0d85e73a8ab05d5c6029b5bd58c9fb", + "rev": "1f3f7b784643d488ba4bf315638b2b0a4c5fb007", "type": "github" }, "original": { From 6056b4f92f0603f2bfeb942ae790ebca6266160a Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Wed, 28 May 2025 21:46:06 +0200 Subject: [PATCH 48/60] Backup attic Run backups 00:00 - 05:00 --- machines/jefke/configuration.nix | 12 ++++++++++++ nixos/backups-ng.nix | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index 3688341..d657ebc 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -77,6 +77,18 @@ deploymentName = "database"; deploymentNamespace = "immich"; }; + + attic = { + paths = ["/mnt/longhorn/persistent/volumes/attic"]; + deploymentName = "attic"; + deploymentNamespace = "attic"; + }; + + attic-db = { + paths = ["/mnt/longhorn/persistent/volumes/attic-db"]; + deploymentName = "attic-db"; + deploymentNamespace = "attic"; + }; }; deployment = { diff --git a/nixos/backups-ng.nix b/nixos/backups-ng.nix index b79b3fa..6d160e3 100644 --- a/nixos/backups-ng.nix +++ b/nixos/backups-ng.nix @@ -63,6 +63,6 @@ in { }) config.pim.backups.borgBackups; - systemd.timers = lib.mapAttrs' (name: _c: lib.nameValuePair "borgbackup-job-${name}" {timerConfig.RandomizedDelaySec = "1h";}) config.pim.backups.borgBackups; + systemd.timers = lib.mapAttrs' (name: _c: lib.nameValuePair "borgbackup-job-${name}" {timerConfig.RandomizedDelaySec = "5h";}) config.pim.backups.borgBackups; }; } From 7359e37793e16a2867c2518ac0b55f8ae4fe7b69 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Wed, 28 May 2025 22:07:56 +0200 Subject: [PATCH 49/60] Backup kitchenowl --- machines/jefke/configuration.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/machines/jefke/configuration.nix b/machines/jefke/configuration.nix index d657ebc..3a52d97 100644 --- a/machines/jefke/configuration.nix +++ b/machines/jefke/configuration.nix @@ -89,6 +89,12 @@ deploymentName = "attic-db"; deploymentNamespace = "attic"; }; + + kitchenowl = { + paths = ["/mnt/longhorn/persistent/volumes/kitchenowl"]; + deploymentName = "server"; + deploymentNamespace = "kitchenowl"; + }; }; deployment = { From 017483b17da59c4e18bf9bfc2b28768cc4947916 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Wed, 28 May 2025 23:39:50 +0200 Subject: [PATCH 50/60] Backup authentik --- machines/atlas/configuration.nix | 5 +++++ nixos/backups-ng.nix | 37 +++++++++++++++++++------------- 2 files changed, 27 insertions(+), 15 deletions(-) diff --git a/machines/atlas/configuration.nix b/machines/atlas/configuration.nix index 708939d..373d393 100644 --- a/machines/atlas/configuration.nix +++ b/machines/atlas/configuration.nix @@ -23,6 +23,11 @@ deploymentName = "database"; deploymentNamespace = "nextcloud"; }; + + authentik = { + paths = ["/mnt/longhorn/persistent/volumes/authentik-db" "/mnt/longhorn/persistent/volumes/authentik-redis"]; + scaleDeployments = false; + }; }; deployment = { diff --git a/nixos/backups-ng.nix b/nixos/backups-ng.nix index 6d160e3..3a7c76b 100644 --- a/nixos/backups-ng.nix +++ b/nixos/backups-ng.nix @@ -9,6 +9,10 @@ paths = lib.mkOption { type = with lib.types; listOf str; }; + scaleDeployments = lib.mkOption { + type = lib.types.bool; + default = true; + }; deploymentName = lib.mkOption { type = lib.types.str; }; @@ -32,21 +36,7 @@ in { # TODO: should have some timeout and alerting? config = { services.borgbackup.jobs = - lib.mapAttrs (name: c: { - inherit (c) paths; - repo = "ssh://w553a7cb@w553a7cb.repo.borgbase.com/./repo"; - startAt = "*-*-* 00:00:00"; - # TODO: low benefit, but we could set borgbase's host keys here as they are published online. - environment.BORG_RSH = "ssh -i ${config.sops.secrets."borg/borgbasePrivateKey".path} -o StrictHostKeychecking=no"; - postHook = "${pkgs.k3s}/bin/kubectl scale deployment -n ${c.deploymentNamespace} ${c.deploymentName} --replicas=${toString c.replicaCount}"; - archiveBaseName = name; - - prune.keep = { - within = "7d"; - weekly = 4; - monthly = 6; - }; - + lib.mapAttrs (name: c: let preHook = '' ${pkgs.k3s}/bin/kubectl scale deployment -n ${c.deploymentNamespace} ${c.deploymentName} --replicas=0 @@ -55,6 +45,23 @@ in { sleep 2 done ''; + postHook = "${pkgs.k3s}/bin/kubectl scale deployment -n ${c.deploymentNamespace} ${c.deploymentName} --replicas=${toString c.replicaCount}"; + in { + inherit (c) paths; + repo = "ssh://w553a7cb@w553a7cb.repo.borgbase.com/./repo"; + startAt = "*-*-* 00:00:00"; + # TODO: low benefit, but we could set borgbase's host keys here as they are published online. + environment.BORG_RSH = "ssh -i ${config.sops.secrets."borg/borgbasePrivateKey".path} -o StrictHostKeychecking=no"; + postHook = lib.mkIf c.scaleDeployments postHook; + archiveBaseName = name; + + prune.keep = { + within = "7d"; + weekly = 4; + monthly = 6; + }; + + preHook = lib.mkIf c.scaleDeployments preHook; encryption = { passCommand = "cat ${config.sops.secrets."borg/borgPassphrase".path}"; From 1e34d5259354d7fc0c8e3dc8dbc6b15787870a8c Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Fri, 30 May 2025 23:46:15 +0200 Subject: [PATCH 51/60] Update to NixOS 25.05 --- README.md | 4 +- flake.lock | 522 ++++++++++++++++----------- flake.nix | 22 +- machines/blocktech/configuration.nix | 23 -- nixos/default.nix | 2 + nixos/stylix.nix | 11 +- 6 files changed, 330 insertions(+), 254 deletions(-) diff --git a/README.md b/README.md index 27cf4ed..76315dc 100644 --- a/README.md +++ b/README.md @@ -4,9 +4,7 @@ NixOS configurations for the machines I manage. Currently managed systems: -- **blocktech**: My current laptop, a ThinkPad P1. It has two flavours: - - Default running GNOME - - Specialisation running Cosmic +- **blocktech**: My current laptop, a ThinkPad P1 running GNOME. - **gamepc**: My gaming PC running Cinnamon - **warwick**: A Raspberry Pi 4 Model B, which mostly does some monitoring - **atlas**: A Gigabyte Brix, one of my Kubernetes nodes diff --git a/flake.lock b/flake.lock index 7ea6706..7b2ed12 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "fromYaml": "fromYaml" }, "locked": { - "lastModified": 1708890466, - "narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=", + "lastModified": 1746562888, + "narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=", "owner": "SenchoPens", "repo": "base16.nix", - "rev": "665b3c6748534eb766c777298721cece9453fdae", + "rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89", "type": "github" }, "original": { @@ -34,30 +34,14 @@ "type": "github" } }, - "base16-foot": { - "flake": false, - "locked": { - "lastModified": 1696725948, - "narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=", - "owner": "tinted-theming", - "repo": "base16-foot", - "rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-foot", - "type": "github" - } - }, "base16-helix": { "flake": false, "locked": { - "lastModified": 1720809814, - "narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=", + "lastModified": 1736852337, + "narHash": "sha256-esD42YdgLlEh7koBrSqcT7p2fsMctPAcGl/+2sYJa2o=", "owner": "tinted-theming", "repo": "base16-helix", - "rev": "34f41987bec14c0f3f6b2155c19787b1f6489625", + "rev": "03860521c40b0b9c04818f2218d9cc9efc21e7a5", "type": "github" }, "original": { @@ -66,51 +50,20 @@ "type": "github" } }, - "base16-kitty": { - "flake": false, - "locked": { - "lastModified": 1665001328, - "narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=", - "owner": "kdrag0n", - "repo": "base16-kitty", - "rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805", - "type": "github" - }, - "original": { - "owner": "kdrag0n", - "repo": "base16-kitty", - "type": "github" - } - }, - "base16-tmux": { - "flake": false, - "locked": { - "lastModified": 1696725902, - "narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=", - "owner": "tinted-theming", - "repo": "base16-tmux", - "rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-tmux", - "type": "github" - } - }, "base16-vim": { "flake": false, "locked": { - "lastModified": 1716150083, - "narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=", + "lastModified": 1732806396, + "narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=", "owner": "tinted-theming", "repo": "base16-vim", - "rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d", + "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", "type": "github" }, "original": { "owner": "tinted-theming", "repo": "base16-vim", + "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", "type": "github" } }, @@ -189,6 +142,22 @@ "type": "github" } }, + "firefox-gnome-theme": { + "flake": false, + "locked": { + "lastModified": 1744642301, + "narHash": "sha256-5A6LL7T0lttn1vrKsNOKUk9V0ittdW0VEqh6AtefxJ4=", + "owner": "rafaelmardojai", + "repo": "firefox-gnome-theme", + "rev": "59e3de00f01e5adb851d824cf7911bd90c31083a", + "type": "github" + }, + "original": { + "owner": "rafaelmardojai", + "repo": "firefox-gnome-theme", + "type": "github" + } + }, "flake-compat": { "flake": false, "locked": { @@ -270,29 +239,12 @@ } }, "flake-compat_6": { - "flake": false, "locked": { - "lastModified": 1746162366, - "narHash": "sha256-5SSSZ/oQkwfcAz/o/6TlejlVGqeK08wyREBQ5qFFPhM=", - "owner": "nix-community", - "repo": "flake-compat", - "rev": "0f158086a2ecdbb138cd0429410e44994f1b7e4b", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_7": { - "flake": false, - "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "type": "github" }, "original": { @@ -382,6 +334,27 @@ "type": "github" } }, + "flake-parts_5": { + "inputs": { + "nixpkgs-lib": [ + "stylix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "locked": { "lastModified": 1659877975, @@ -451,35 +424,14 @@ "type": "github" } }, - "flake-utils_5": { - "inputs": { - "systems": [ - "stylix", - "systems" - ] - }, - "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "fromYaml": { "flake": false, "locked": { - "lastModified": 1689549921, - "narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=", + "lastModified": 1731966426, + "narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=", "owner": "SenchoPens", "repo": "fromYaml", - "rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84", + "rev": "106af9e2f715e2d828df706c386a685698f3223b", "type": "github" }, "original": { @@ -510,6 +462,32 @@ "type": "github" } }, + "git-hooks_2": { + "inputs": { + "flake-compat": [ + "stylix", + "flake-compat" + ], + "gitignore": "gitignore_3", + "nixpkgs": [ + "stylix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1742649964, + "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -553,6 +531,28 @@ "type": "github" } }, + "gitignore_3": { + "inputs": { + "nixpkgs": [ + "stylix", + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, "globset": { "inputs": { "nixpkgs-lib": [ @@ -577,16 +577,16 @@ "gnome-shell": { "flake": false, "locked": { - "lastModified": 1713702291, - "narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=", + "lastModified": 1744584021, + "narHash": "sha256-0RJ4mJzf+klKF4Fuoc8VN8dpQQtZnKksFmR2jhWE1Ew=", "owner": "GNOME", "repo": "gnome-shell", - "rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934", + "rev": "52c517c8f6c199a1d6f5118fae500ef69ea845ae", "type": "github" }, "original": { "owner": "GNOME", - "ref": "46.1", + "ref": "48.1", "repo": "gnome-shell", "type": "github" } @@ -598,16 +598,16 @@ ] }, "locked": { - "lastModified": 1747688870, - "narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=", + "lastModified": 1748627093, + "narHash": "sha256-1hFy+bZRZoYb7RaUXsW+9YFtjjFrQpschd8qZpy9org=", "owner": "nix-community", "repo": "home-manager", - "rev": "d5f1f641b289553927b3801580598d200a501863", + "rev": "afe9ce8b2014fa1230ade38bf07156cdcef63658", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-24.11", + "ref": "release-25.05", "repo": "home-manager", "type": "github" } @@ -620,11 +620,11 @@ ] }, "locked": { - "lastModified": 1724435763, - "narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=", + "lastModified": 1747763032, + "narHash": "sha256-9j3oCbemeH7bTVXJ3pDWxOptbxDx2SdK1jY2AHpjQiw=", "owner": "nix-community", "repo": "home-manager", - "rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be", + "rev": "29dda415f5b2178278283856c6f9f7b48a2a4353", "type": "github" }, "original": { @@ -708,7 +708,7 @@ "nvf", "nixpkgs" ], - "rust-overlay": "rust-overlay_3" + "rust-overlay": "rust-overlay_2" }, "locked": { "lastModified": 1741118843, @@ -825,29 +825,6 @@ "url": "https://github.com/NixOS/nixos-artwork.git" } }, - "nixos-cosmic": { - "inputs": { - "flake-compat": "flake-compat_6", - "nixpkgs": "nixpkgs_2", - "nixpkgs-stable": [ - "nixpkgs-unstable" - ], - "rust-overlay": "rust-overlay_2" - }, - "locked": { - "lastModified": 1748257750, - "narHash": "sha256-5iRpCgegBUj2W8GsZrfsNLvE4mjktyIsZkBbGpJe2wU=", - "owner": "lilyinstarlight", - "repo": "nixos-cosmic", - "rev": "c4d2bbbe3675a47c1e24b88f61f54b2eb3cece9d", - "type": "github" - }, - "original": { - "owner": "lilyinstarlight", - "repo": "nixos-cosmic", - "type": "github" - } - }, "nixos-facter-modules": { "locked": { "lastModified": 1743671943, @@ -865,11 +842,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1747900541, - "narHash": "sha256-dn64Pg9xLETjblwZs9Euu/SsjW80pd6lr5qSiyLY1pg=", + "lastModified": 1748613622, + "narHash": "sha256-SLB2MV138ujdjw0ETEakNt/o2O+d/QtvNLlwaBZSWKg=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "11f2d9ea49c3e964315215d6baa73a8d42672f06", + "rev": "b9d69212b5e65620e7d5b08df818db656f7fefb3", "type": "github" }, "original": { @@ -910,6 +887,22 @@ "type": "github" } }, + "nixpkgs-oldstable": { + "locked": { + "lastModified": 1748421225, + "narHash": "sha256-XXILOc80tvlvEQgYpYFnze8MkQQmp3eQxFbTzb3m/R0=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "78add7b7abb61689e34fc23070a8f55e1d26185b", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-24.11", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-stable": { "locked": { "lastModified": 1678872516, @@ -928,11 +921,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1748217807, - "narHash": "sha256-P3u2PXxMlo49PutQLnk2PhI/imC69hFl1yY4aT5Nax8=", + "lastModified": 1748506378, + "narHash": "sha256-oS0Gxh63Df8b8r04lqEYDDLKhHIrVr9/JLOn2bn8JaI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3108eaa516ae22c2360928589731a4f1581526ef", + "rev": "3866ad91cfc172f08a6839def503d8fc2923c603", "type": "github" }, "original": { @@ -944,43 +937,27 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1748026106, - "narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=", - "owner": "NixOS", + "lastModified": 1748437600, + "narHash": "sha256-hYKMs3ilp09anGO7xzfGs3JqEgUqFMnZ8GMAqI6/k04=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "063f43f2dbdef86376cc29ad646c45c46e93234c", + "rev": "7282cb574e0607e65224d33be8241eae7cfe0979", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-unstable", + "owner": "nixos", + "ref": "nixos-25.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_3": { "locked": { - "lastModified": 1748037224, - "narHash": "sha256-92vihpZr6dwEMV6g98M5kHZIttrWahb9iRPBm1atcPk=", + "lastModified": 1748460289, + "narHash": "sha256-7doLyJBzCllvqX4gszYtmZUToxKvMUrg45EUWaUYmBg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f09dede81861f3a83f7f06641ead34f02f37597f", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-24.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1748190013, - "narHash": "sha256-R5HJFflOfsP5FBtk+zE8FpL8uqE7n62jqOsADvVshhE=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "62b852f6c6742134ade1abdd2a21685fd617a291", + "rev": "96ec055edbe5ee227f28cdbc3f1ddf1df5965102", "type": "github" }, "original": { @@ -990,23 +967,23 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_4": { "locked": { - "lastModified": 1725194671, - "narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=", + "lastModified": 1747542820, + "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b833ff01a0d694b910daca6e2ff4a3f26dee478c", + "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_5": { "locked": { "lastModified": 1747958103, "narHash": "sha256-qmmFCrfBwSHoWw7cVK4Aj+fns+c54EBP8cGqp/yK410=", @@ -1025,15 +1002,41 @@ "nur": { "inputs": { "flake-parts": "flake-parts_3", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_3", "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1748319458, - "narHash": "sha256-raBGzAVExD0z2S7+jk+Sw6Y/ew3nbchSMH5qeVs0eoA=", + "lastModified": 1748626741, + "narHash": "sha256-hDqQn2sDcJZm+PauBjifvCE9sW1yBHIjDncfzElQ024=", "owner": "nix-community", "repo": "NUR", - "rev": "8b266cb4a8e5dd9758d882df5ea4b6ef24cb9156", + "rev": "ed64d190749a0fae701cd0d1c123b023edb1e376", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NUR", + "type": "github" + } + }, + "nur_2": { + "inputs": { + "flake-parts": [ + "stylix", + "flake-parts" + ], + "nixpkgs": [ + "stylix", + "nixpkgs" + ], + "treefmt-nix": "treefmt-nix_2" + }, + "locked": { + "lastModified": 1746056780, + "narHash": "sha256-/emueQGaoT4vu0QjU9LDOG5roxRSfdY0K2KkxuzazcM=", + "owner": "nix-community", + "repo": "NUR", + "rev": "d476cd0972dd6242d76374fcc277e6735715c167", "type": "github" }, "original": { @@ -1111,16 +1114,17 @@ "nix-snapshotter": "nix-snapshotter", "nixng": "nixng", "nixos-artwork": "nixos-artwork", - "nixos-cosmic": "nixos-cosmic", "nixos-facter-modules": "nixos-facter-modules", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_2", + "nixpkgs-oldstable": "nixpkgs-oldstable", "nixpkgs-unstable": "nixpkgs-unstable", "nur": "nur", "nvf": "nvf", "sops-nix": "sops-nix", "stylix": "stylix", - "treefmt-nix": "treefmt-nix_2" + "tinted-schemes": "tinted-schemes", + "treefmt-nix": "treefmt-nix_3" } }, "rust-overlay": { @@ -1149,27 +1153,6 @@ } }, "rust-overlay_2": { - "inputs": { - "nixpkgs": [ - "nixos-cosmic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1748227081, - "narHash": "sha256-RLnN7LBxhEdCJ6+rIL9sbhjBVDaR6jG377M/CLP/fmE=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "1cbe817fd8c64a9f77ba4d7861a4839b0b15983e", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "rust-overlay_3": { "inputs": { "nixpkgs": [ "nvf", @@ -1231,29 +1214,35 @@ "inputs": { "base16": "base16", "base16-fish": "base16-fish", - "base16-foot": "base16-foot", "base16-helix": "base16-helix", - "base16-kitty": "base16-kitty", - "base16-tmux": "base16-tmux", "base16-vim": "base16-vim", - "flake-compat": "flake-compat_7", - "flake-utils": "flake-utils_5", + "firefox-gnome-theme": "firefox-gnome-theme", + "flake-compat": "flake-compat_6", + "flake-parts": "flake-parts_5", + "git-hooks": "git-hooks_2", "gnome-shell": "gnome-shell", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_5", - "systems": "systems_6" + "nixpkgs": "nixpkgs_4", + "nur": "nur_2", + "systems": "systems_6", + "tinted-foot": "tinted-foot", + "tinted-kitty": "tinted-kitty", + "tinted-schemes": [ + "tinted-schemes" + ], + "tinted-tmux": "tinted-tmux", + "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1726497442, - "narHash": "sha256-fieyqmLEJQqqnuJcg2CAnQ8kHapXHhg9rL48NNWjnPw=", - "owner": "pizzapim", + "lastModified": 1748621009, + "narHash": "sha256-X7SqoEEHVsR01GwL9WBs3tuSXdit7YdeBdIHrl+MlZQ=", + "owner": "nix-community", "repo": "stylix", - "rev": "149b313ddf91c3cc94309170498b162cec666675", + "rev": "b69e9b761ee682b722e2c9ce46637e767b50f6dc", "type": "github" }, "original": { - "owner": "pizzapim", - "ref": "master", + "owner": "nix-community", "repo": "stylix", "type": "github" } @@ -1347,6 +1336,87 @@ "type": "github" } }, + "tinted-foot": { + "flake": false, + "locked": { + "lastModified": 1726913040, + "narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=", + "owner": "tinted-theming", + "repo": "tinted-foot", + "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "tinted-foot", + "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4", + "type": "github" + } + }, + "tinted-kitty": { + "flake": false, + "locked": { + "lastModified": 1735730497, + "narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=", + "owner": "tinted-theming", + "repo": "tinted-kitty", + "rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "tinted-kitty", + "type": "github" + } + }, + "tinted-schemes": { + "flake": false, + "locked": { + "lastModified": 1748180480, + "narHash": "sha256-7n0XiZiEHl2zRhDwZd/g+p38xwEoWtT0/aESwTMXWG4=", + "ref": "refs/heads/spec-0.11", + "rev": "87d652edd26f5c0c99deda5ae13dfb8ece2ffe31", + "revCount": 92, + "type": "git", + "url": "https://github.com/tinted-theming/schemes" + }, + "original": { + "type": "git", + "url": "https://github.com/tinted-theming/schemes" + } + }, + "tinted-tmux": { + "flake": false, + "locked": { + "lastModified": 1745111349, + "narHash": "sha256-udV+nHdpqgkJI9D0mtvvAzbqubt9jdifS/KhTTbJ45w=", + "owner": "tinted-theming", + "repo": "tinted-tmux", + "rev": "e009f18a01182b63559fb28f1c786eb027c3dee9", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "tinted-tmux", + "type": "github" + } + }, + "tinted-zed": { + "flake": false, + "locked": { + "lastModified": 1725758778, + "narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=", + "owner": "tinted-theming", + "repo": "base16-zed", + "rev": "122c9e5c0e6f27211361a04fae92df97940eccf9", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "base16-zed", + "type": "github" + } + }, "treefmt": { "inputs": { "nixpkgs": [ @@ -1391,7 +1461,29 @@ }, "treefmt-nix_2": { "inputs": { - "nixpkgs": "nixpkgs_6" + "nixpkgs": [ + "stylix", + "nur", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733222881, + "narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "49717b5af6f80172275d47a418c9719a31a78b53", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + }, + "treefmt-nix_3": { + "inputs": { + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1748243702, diff --git a/flake.nix b/flake.nix index b1fbb53..b76a7c1 100644 --- a/flake.nix +++ b/flake.nix @@ -2,16 +2,21 @@ description = "My NixOS configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05"; + nixpkgs-oldstable.url = "github:nixos/nixpkgs/nixos-24.11"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; nur.url = "github:nix-community/NUR"; - stylix.url = "github:pizzapim/stylix/master"; treefmt-nix.url = "github:numtide/treefmt-nix"; nixos-facter-modules.url = "github:numtide/nixos-facter-modules"; flake-utils.url = "github:numtide/flake-utils"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; colmena.url = "github:zhaofengli/colmena"; + stylix = { + url = "github:nix-community/stylix"; + inputs.tinted-schemes.follows = "tinted-schemes"; + }; + nvf = { url = "github:notashelf/nvf"; inputs.nixpkgs.follows = "nixpkgs"; @@ -28,7 +33,7 @@ }; home-manager = { - url = "github:nix-community/home-manager?ref=release-24.11"; + url = "github:nix-community/home-manager?ref=release-25.05"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -48,16 +53,17 @@ flake = false; }; + tinted-schemes = { + type = "git"; + url = "https://github.com/tinted-theming/schemes"; + flake = false; + }; + sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; - nixos-cosmic = { - url = "github:lilyinstarlight/nixos-cosmic"; - inputs.nixpkgs-stable.follows = "nixpkgs-unstable"; - }; - nix-snapshotter = { url = "github:pdtpartners/nix-snapshotter"; inputs.nixpkgs.follows = "nixpkgs-unstable"; diff --git a/machines/blocktech/configuration.nix b/machines/blocktech/configuration.nix index f755fd4..1d2eae5 100644 --- a/machines/blocktech/configuration.nix +++ b/machines/blocktech/configuration.nix @@ -6,10 +6,6 @@ config, ... }: { - options = { - pim.cosmic.enable = lib.mkEnableOption "cosmic"; - }; - config = { pim = { lanzaboote.enable = false; @@ -80,24 +76,5 @@ loader.systemd-boot.enable = true; loader.efi.canTouchEfiVariables = true; }; - - nix.settings = { - substituters = ["https://cosmic.cachix.org/"]; - trusted-public-keys = ["cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="]; - }; - - specialisation.cosmic = lib.mkIf config.pim.cosmic.enable { - configuration = { - imports = [ - inputs.nixos-cosmic.nixosModules.default - ]; - - services = { - desktopManager.cosmic.enable = true; - displayManager.cosmic-greeter.enable = true; - services.xserver.videoDrivers = ["nvidia"]; - }; - }; - }; }; } diff --git a/nixos/default.nix b/nixos/default.nix index 1665269..dfb422f 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -129,6 +129,7 @@ lshw sops nix-tree + fd ]; }; @@ -189,6 +190,7 @@ overlays = [ inputs.nur.overlays.default (_final: _prev: { + containerd = inputs.nixpkgs-oldstable.legacyPackages.x86_64-linux.containerd; unstable = import inputs.nixpkgs-unstable { inherit (pkgs) system; config.allowUnfree = true; diff --git a/nixos/stylix.nix b/nixos/stylix.nix index 99120a1..b9b41e1 100644 --- a/nixos/stylix.nix +++ b/nixos/stylix.nix @@ -17,7 +17,8 @@ in { } (lib.mkIf cfg.enable { enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; + # base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; + # base16Scheme = "${inputs.tinted-schemes}/base16/gruvbox-dark.yaml"; cursor = { package = pkgs.bibata-cursors; @@ -26,10 +27,10 @@ in { }; fonts = { - monospace = { - package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];}; - name = "JetBrainsMono Nerd Font Mono"; - }; + # monospace = { + # package = pkgs.nerd-fonts.jetbrains-mono; + # name = "JetBrainsMono Nerd Font Mono"; + # }; sansSerif = { package = pkgs.dejavu_fonts; From 9fb9ac1860e5e70d09bdd44f5261acee8b081374 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 31 May 2025 00:03:56 +0200 Subject: [PATCH 52/60] Fix nerd font --- nixos/stylix.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/nixos/stylix.nix b/nixos/stylix.nix index b9b41e1..3522586 100644 --- a/nixos/stylix.nix +++ b/nixos/stylix.nix @@ -27,10 +27,7 @@ in { }; fonts = { - # monospace = { - # package = pkgs.nerd-fonts.jetbrains-mono; - # name = "JetBrainsMono Nerd Font Mono"; - # }; + monospace.package = pkgs.nerd-fonts.jetbrains-mono; sansSerif = { package = pkgs.dejavu_fonts; From 435bd7592e2bcb06474e9986cd682dd61ece657b Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 31 May 2025 00:09:47 +0200 Subject: [PATCH 53/60] Fix theme --- nixos/stylix.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nixos/stylix.nix b/nixos/stylix.nix index 3522586..66a2c5f 100644 --- a/nixos/stylix.nix +++ b/nixos/stylix.nix @@ -17,8 +17,7 @@ in { } (lib.mkIf cfg.enable { enable = true; - # base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; - # base16Scheme = "${inputs.tinted-schemes}/base16/gruvbox-dark.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; cursor = { package = pkgs.bibata-cursors; From 74b049e56a4f4db463376d29c438372dcb9b8f35 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 31 May 2025 19:15:46 +0200 Subject: [PATCH 54/60] Remove old Longhorn and backup code --- machines/lewis/configuration.nix | 2 - nixos/backups.nix | 93 -------------------------------- nixos/data-sharing.nix | 39 -------------- nixos/default.nix | 4 +- nixos/kubernetes/k3s/default.nix | 18 +------ 5 files changed, 2 insertions(+), 154 deletions(-) delete mode 100644 nixos/backups.nix delete mode 100644 nixos/data-sharing.nix diff --git a/machines/lewis/configuration.nix b/machines/lewis/configuration.nix index 557550c..4d54d24 100644 --- a/machines/lewis/configuration.nix +++ b/machines/lewis/configuration.nix @@ -20,8 +20,6 @@ pim = { k3s.serverAddr = "https://jefke.dmz:6443"; - data-sharing.enable = true; - backups.enable = true; backups.borgBackups = { bazarr = { diff --git a/nixos/backups.nix b/nixos/backups.nix deleted file mode 100644 index 3a502ee..0000000 --- a/nixos/backups.nix +++ /dev/null @@ -1,93 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: let - cfg = config.pim.backups; - - borgmaticConfig = pkgs.writeTextFile { - name = "borgmatic-config.yaml"; - - text = lib.generators.toYAML {} { - source_directories = ["/mnt/longhorn/persistent/longhorn-backup"]; - - repositories = [ - { - path = cfg.repoLocation; - label = "nfs"; - } - { - path = "ssh://s6969ym3@s6969ym3.repo.borgbase.com/./repo"; - label = "borgbase"; - } - ]; - - ssh_command = "${pkgs.openssh}/bin/ssh -i ${config.sops.secrets."borg/borgbasePrivateKey".path} -o StrictHostKeychecking=no"; - keep_daily = 7; - keep_weekly = 4; - keep_monthly = 6; - encryption_passcommand = "${pkgs.coreutils}/bin/cat ${config.sops.secrets."borg/borgPassphrase".path}"; - }; - }; -in { - options.pim.backups = { - enable = lib.mkOption { - default = false; - type = lib.types.bool; - description = '' - Whether to enable backups of persistent data on this machine. - ''; - }; - - repoLocation = lib.mkOption { - default = "/mnt/longhorn/persistent/nfs.borg"; - type = lib.types.str; - description = '' - Location of the Borg repository to back up to. - ''; - }; - }; - - config = lib.mkIf cfg.enable { - environment.systemPackages = with pkgs; [borgbackup]; - # Converted from: - # https://github.com/borgmatic-collective/borgmatic/tree/84823dfb912db650936e3492f6ead7e0e0d32a0f/sample/systemd - systemd.services.borgmatic = { - description = "borgmatic backup"; - wants = ["network-online.target"]; - after = ["network-online.target"]; - unitConfig.ConditionACPower = true; - preStart = "${pkgs.coreutils}/bin/sleep 10s"; - - serviceConfig = { - Type = "oneshot"; - Nice = 19; - CPUSchedulingPolicy = "batch"; - IOSchedulingClass = "best-effort"; - IOSchedulingPriority = 7; - IOWeight = 100; - Restart = "no"; - LogRateLimitIntervalSec = 0; - Environment = "BORG_PASSPHRASE_FILE=${config.sops.secrets."borg/borgPassphrase".path}"; - }; - - script = "${pkgs.systemd}/bin/systemd-inhibit --who=\"borgmatic\" --what=\"sleep:shutdown\" --why=\"Prevent interrupting scheduled backup\" ${pkgs.borgmatic}/bin/borgmatic --verbosity -2 --syslog-verbosity 1 -c ${borgmaticConfig}"; - }; - - systemd.timers.borgmatic = { - description = "Run borgmatic backup"; - wantedBy = ["timers.target"]; - timerConfig = { - OnCalendar = "*-*-* 3:00:00"; - Persistent = true; - RandomizedDelaySec = "1h"; - }; - }; - - sops.secrets = { - "borg/borgPassphrase" = {}; - "borg/borgbasePrivateKey" = {}; - }; - }; -} diff --git a/nixos/data-sharing.nix b/nixos/data-sharing.nix deleted file mode 100644 index 0f2d6af..0000000 --- a/nixos/data-sharing.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - lib, - config, - ... -}: let - cfg = config.pim.data-sharing; - nfsShares = ["/mnt/longhorn/persistent/longhorn-backup"]; - - nfsExports = lib.strings.concatLines ( - builtins.map - ( - share: "${share} 192.168.30.0/16(rw,sync,no_subtree_check,no_root_squash) 127.0.0.1/8(rw,sync,no_subtree_check,no_root_squash) 10.0.0.0/8(rw,sync,no_subtree_check,no_root_squash)" - ) - nfsShares - ); -in { - options.pim.data-sharing = { - enable = lib.mkOption { - default = false; - type = lib.types.bool; - description = '' - Configure this server to serve our data using NFS. - ''; - }; - }; - - config = lib.mkIf cfg.enable { - networking.firewall.allowedTCPPorts = [ - 2049 # NFS - 111 # NFS - 20048 # NFS - ]; - - services.nfs.server = { - enable = true; - exports = nfsExports; - }; - }; -} diff --git a/nixos/default.nix b/nixos/default.nix index dfb422f..108368d 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -24,8 +24,6 @@ ./server.nix ./prometheus.nix ./kubernetes - ./data-sharing.nix - ./backups.nix ./backups-ng.nix ]; @@ -190,7 +188,7 @@ overlays = [ inputs.nur.overlays.default (_final: _prev: { - containerd = inputs.nixpkgs-oldstable.legacyPackages.x86_64-linux.containerd; + inherit (inputs.nixpkgs-oldstable.legacyPackages.x86_64-linux) containerd; unstable = import inputs.nixpkgs-unstable { inherit (pkgs) system; config.allowUnfree = true; diff --git a/nixos/kubernetes/k3s/default.nix b/nixos/kubernetes/k3s/default.nix index 5964f7d..1ed7b0f 100644 --- a/nixos/kubernetes/k3s/default.nix +++ b/nixos/kubernetes/k3s/default.nix @@ -46,8 +46,6 @@ in { config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ k3s - openiscsi # Required for Longhorn - nfs-utils # Required for Longhorn ]; # TODO!!!!! @@ -121,27 +119,13 @@ in { serverFlags = builtins.concatStringsSep " " serverFlagList; in { enable = true; - role = cfg.role; + inherit (cfg) role clusterInit; tokenFile = config.sops.secrets."k3s/serverToken".path; extraFlags = lib.mkIf (cfg.role == "server") (lib.mkForce serverFlags); - clusterInit = cfg.clusterInit; serverAddr = lib.mkIf (! (cfg.serverAddr == null)) cfg.serverAddr; }; - - # Required for Longhorn - openiscsi = { - enable = true; - name = "iqn.2016-04.com.open-iscsi:${config.networking.fqdn}"; - }; }; - # HACK: Symlink binaries to /usr/local/bin such that Longhorn can find them - # when they use nsenter. - # https://github.com/longhorn/longhorn/issues/2166#issuecomment-1740179416 - systemd.tmpfiles.rules = [ - "L+ /usr/local/bin - - - - /run/current-system/sw/bin/" - ]; - system.activationScripts = { k3s-bootstrap = lib.mkIf (cfg.role == "server") { text = ( From 186eac6896e6727f3bf7febcb141013a6f85017c Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 1 Jun 2025 20:58:47 +0200 Subject: [PATCH 55/60] Replice cinnamon with cosmic for gamepc --- machines/gamepc/configuration.nix | 3 ++- nixos/cinnamon.nix | 24 ------------------------ nixos/default.nix | 1 - 3 files changed, 2 insertions(+), 26 deletions(-) delete mode 100644 nixos/cinnamon.nix diff --git a/machines/gamepc/configuration.nix b/machines/gamepc/configuration.nix index 5702c37..7353c31 100644 --- a/machines/gamepc/configuration.nix +++ b/machines/gamepc/configuration.nix @@ -5,7 +5,6 @@ }: { config = { pim = { - cinnamon.enable = true; sops-nix.usersWithSopsKeys = ["pim"]; }; @@ -32,6 +31,8 @@ services = { openssh.enable = true; + displayManager.cosmic-greeter.enable = true; + desktopManager.cosmic.enable = true; xserver.displayManager.lightdm.extraSeatDefaults = '' autologin-user=pim diff --git a/nixos/cinnamon.nix b/nixos/cinnamon.nix deleted file mode 100644 index 8cef6dd..0000000 --- a/nixos/cinnamon.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: let - cfg = config.pim.cinnamon; -in { - options.pim.cinnamon.enable = lib.mkEnableOption "cinnamon"; - config = lib.mkIf cfg.enable { - services = { - displayManager.defaultSession = "cinnamon"; - libinput.enable = true; - xserver = { - desktopManager.cinnamon.enable = true; - displayManager.lightdm.enable = true; - }; - }; - - environment.cinnamon.excludePackages = [ - pkgs.gnome-terminal - ]; - }; -} diff --git a/nixos/default.nix b/nixos/default.nix index 108368d..8cccb06 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -18,7 +18,6 @@ ./stylix.nix ./wireguard.nix ./gnome.nix - ./cinnamon.nix ./ssh.nix ./desktop.nix ./server.nix From 6581f4aa9fc9ffe3b0c84559404585e9666b9073 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sun, 1 Jun 2025 21:37:19 +0200 Subject: [PATCH 56/60] Fix evaluation warnings Update flake inputs --- flake.lock | 106 +++++++++++++++--------------- flake.nix | 2 +- home-manager/firefox/default.nix | 2 +- home-manager/vscode.nix | 28 ++++---- machines/gamepc/configuration.nix | 14 ++-- nixos/default.nix | 2 +- nixos/stylix.nix | 5 ++ 7 files changed, 87 insertions(+), 72 deletions(-) diff --git a/flake.lock b/flake.lock index 7b2ed12..693946c 100644 --- a/flake.lock +++ b/flake.lock @@ -37,11 +37,11 @@ "base16-helix": { "flake": false, "locked": { - "lastModified": 1736852337, - "narHash": "sha256-esD42YdgLlEh7koBrSqcT7p2fsMctPAcGl/+2sYJa2o=", + "lastModified": 1748408240, + "narHash": "sha256-9M2b1rMyMzJK0eusea0x3lyh3mu5nMeEDSc4RZkGm+g=", "owner": "tinted-theming", "repo": "base16-helix", - "rev": "03860521c40b0b9c04818f2218d9cc9efc21e7a5", + "rev": "6c711ab1a9db6f51e2f6887cc3345530b33e152e", "type": "github" }, "original": { @@ -145,11 +145,11 @@ "firefox-gnome-theme": { "flake": false, "locked": { - "lastModified": 1744642301, - "narHash": "sha256-5A6LL7T0lttn1vrKsNOKUk9V0ittdW0VEqh6AtefxJ4=", + "lastModified": 1748383148, + "narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=", "owner": "rafaelmardojai", "repo": "firefox-gnome-theme", - "rev": "59e3de00f01e5adb851d824cf7911bd90c31083a", + "rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf", "type": "github" }, "original": { @@ -240,11 +240,11 @@ }, "flake-compat_6": { "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "owner": "edolstra", "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "type": "github" }, "original": { @@ -342,11 +342,11 @@ ] }, "locked": { - "lastModified": 1733312601, - "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "lastModified": 1743550720, + "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "rev": "c621e8422220273271f52058f618c94e405bb0f5", "type": "github" }, "original": { @@ -475,11 +475,11 @@ ] }, "locked": { - "lastModified": 1742649964, - "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", + "lastModified": 1747372754, + "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", + "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1748627093, - "narHash": "sha256-1hFy+bZRZoYb7RaUXsW+9YFtjjFrQpschd8qZpy9org=", + "lastModified": 1748665073, + "narHash": "sha256-RMhjnPKWtCoIIHiuR9QKD7xfsKb3agxzMfJY8V9MOew=", "owner": "nix-community", "repo": "home-manager", - "rev": "afe9ce8b2014fa1230ade38bf07156cdcef63658", + "rev": "282e1e029cb6ab4811114fc85110613d72771dea", "type": "github" }, "original": { @@ -620,15 +620,16 @@ ] }, "locked": { - "lastModified": 1747763032, - "narHash": "sha256-9j3oCbemeH7bTVXJ3pDWxOptbxDx2SdK1jY2AHpjQiw=", + "lastModified": 1748665073, + "narHash": "sha256-RMhjnPKWtCoIIHiuR9QKD7xfsKb3agxzMfJY8V9MOew=", "owner": "nix-community", "repo": "home-manager", - "rev": "29dda415f5b2178278283856c6f9f7b48a2a4353", + "rev": "282e1e029cb6ab4811114fc85110613d72771dea", "type": "github" }, "original": { "owner": "nix-community", + "ref": "release-25.05", "repo": "home-manager", "type": "github" } @@ -752,11 +753,11 @@ ] }, "locked": { - "lastModified": 1748145500, - "narHash": "sha256-t9fx0l61WOxtWxXCqlXPWSuG/0XMF9DtE2T7KXgMqJw=", + "lastModified": 1748751003, + "narHash": "sha256-i4GZdKAK97S0ZMU3w4fqgEJr0cVywzqjugt2qZPrScs=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "a98adbf54d663395df0b9929f6481d4d80fc8927", + "rev": "2860bee699248d828c2ed9097a1cd82c2f991b43", "type": "github" }, "original": { @@ -842,11 +843,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1748613622, - "narHash": "sha256-SLB2MV138ujdjw0ETEakNt/o2O+d/QtvNLlwaBZSWKg=", + "lastModified": 1748634340, + "narHash": "sha256-pZH4bqbOd8S+si6UcfjHovWDiWKiIGRNRMpmRWaDIms=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "b9d69212b5e65620e7d5b08df818db656f7fefb3", + "rev": "daa628a725ab4948e0e2b795e8fb6f4c3e289a7a", "type": "github" }, "original": { @@ -921,11 +922,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1748506378, - "narHash": "sha256-oS0Gxh63Df8b8r04lqEYDDLKhHIrVr9/JLOn2bn8JaI=", + "lastModified": 1748662220, + "narHash": "sha256-7gGa49iB9nCnFk4h/g9zwjlQAyjtpgcFkODjcOQS0Es=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3866ad91cfc172f08a6839def503d8fc2923c603", + "rev": "59138c7667b7970d205d6a05a8bfa2d78caa3643", "type": "github" }, "original": { @@ -953,11 +954,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1748460289, - "narHash": "sha256-7doLyJBzCllvqX4gszYtmZUToxKvMUrg45EUWaUYmBg=", + "lastModified": 1748693115, + "narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "96ec055edbe5ee227f28cdbc3f1ddf1df5965102", + "rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc", "type": "github" }, "original": { @@ -969,16 +970,16 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1747542820, - "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=", + "lastModified": 1748437600, + "narHash": "sha256-hYKMs3ilp09anGO7xzfGs3JqEgUqFMnZ8GMAqI6/k04=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043", + "rev": "7282cb574e0607e65224d33be8241eae7cfe0979", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixos-25.05", "repo": "nixpkgs", "type": "github" } @@ -1006,11 +1007,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1748626741, - "narHash": "sha256-hDqQn2sDcJZm+PauBjifvCE9sW1yBHIjDncfzElQ024=", + "lastModified": 1748782935, + "narHash": "sha256-wjo1BhHoBFzdtj92LrAonR1eJ8j5dt1YhnkPpqaam38=", "owner": "nix-community", "repo": "NUR", - "rev": "ed64d190749a0fae701cd0d1c123b023edb1e376", + "rev": "73385c8de1fac0066f513adc9a7e59d69f2327c2", "type": "github" }, "original": { @@ -1032,11 +1033,11 @@ "treefmt-nix": "treefmt-nix_2" }, "locked": { - "lastModified": 1746056780, - "narHash": "sha256-/emueQGaoT4vu0QjU9LDOG5roxRSfdY0K2KkxuzazcM=", + "lastModified": 1748730660, + "narHash": "sha256-5LKmRYKdPuhm8j5GFe3AfrJL8dd8o57BQ34AGjJl1R0=", "owner": "nix-community", "repo": "NUR", - "rev": "d476cd0972dd6242d76374fcc277e6735715c167", + "rev": "2c0bc52fe14681e9ef60e3553888c4f086e46ecb", "type": "github" }, "original": { @@ -1057,11 +1058,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1748318168, - "narHash": "sha256-pUDVxHarStrDYxd2tztz4SjNflzFxuMMEC3SK9WLUK8=", + "lastModified": 1748651104, + "narHash": "sha256-GZLiCQlNV8QfAWwGinXeSdiKZS346ZGPv6EKzeY0tAA=", "owner": "notashelf", "repo": "nvf", - "rev": "74ba4d955976af1422ea1f095968e547db70aa04", + "rev": "c4cf91d4b531245a02f5b6c196f6279bc87a546f", "type": "github" }, "original": { @@ -1234,15 +1235,16 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1748621009, - "narHash": "sha256-X7SqoEEHVsR01GwL9WBs3tuSXdit7YdeBdIHrl+MlZQ=", + "lastModified": 1748798145, + "narHash": "sha256-GPVR1UT1r0J1Lgux0h28CVCqoh0dJ67qKn2k+CTL/TI=", "owner": "nix-community", "repo": "stylix", - "rev": "b69e9b761ee682b722e2c9ce46637e767b50f6dc", + "rev": "275e1acae94a1c5495352fd317a87377322a5259", "type": "github" }, "original": { "owner": "nix-community", + "ref": "release-25.05", "repo": "stylix", "type": "github" } @@ -1388,11 +1390,11 @@ "tinted-tmux": { "flake": false, "locked": { - "lastModified": 1745111349, - "narHash": "sha256-udV+nHdpqgkJI9D0mtvvAzbqubt9jdifS/KhTTbJ45w=", + "lastModified": 1748740859, + "narHash": "sha256-OEM12bg7F4N5WjZOcV7FHJbqRI6jtCqL6u8FtPrlZz4=", "owner": "tinted-theming", "repo": "tinted-tmux", - "rev": "e009f18a01182b63559fb28f1c786eb027c3dee9", + "rev": "57d5f9683ff9a3b590643beeaf0364da819aedda", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index b76a7c1..8cf6fbb 100644 --- a/flake.nix +++ b/flake.nix @@ -13,7 +13,7 @@ colmena.url = "github:zhaofengli/colmena"; stylix = { - url = "github:nix-community/stylix"; + url = "github:nix-community/stylix/release-25.05"; inputs.tinted-schemes.follows = "tinted-schemes"; }; diff --git a/home-manager/firefox/default.nix b/home-manager/firefox/default.nix index 3af7f8b..3f121d0 100644 --- a/home-manager/firefox/default.nix +++ b/home-manager/firefox/default.nix @@ -30,7 +30,7 @@ in { id = 0; isDefault = true; settings = firefoxSettings; - extensions = firefoxAddons; + extensions.packages = firefoxAddons; }; }; }; diff --git a/home-manager/vscode.nix b/home-manager/vscode.nix index df18541..4388f8f 100644 --- a/home-manager/vscode.nix +++ b/home-manager/vscode.nix @@ -12,20 +12,22 @@ in { programs.vscode = { enable = true; package = pkgs.vscodium; - extensions = with pkgs.vscode-extensions; [ - vscodevim.vim - marp-team.marp-vscode - jnoortheen.nix-ide - mkhl.direnv - ]; + profiles.default = { + extensions = with pkgs.vscode-extensions; [ + vscodevim.vim + marp-team.marp-vscode + jnoortheen.nix-ide + mkhl.direnv + ]; - userSettings = { - "nix.enableLanguageServer" = true; - "nix.serverPath" = lib.getExe pkgs.nil; - "terminal.integrated.defaultProfile.linux" = "fish"; - "explorer.confirmDragAndDrop" = false; - "explorer.confirmPasteNative" = false; - "explorer.confirmDelete" = false; + userSettings = { + "nix.enableLanguageServer" = true; + "nix.serverPath" = lib.getExe pkgs.nil; + "terminal.integrated.defaultProfile.linux" = "fish"; + "explorer.confirmDragAndDrop" = false; + "explorer.confirmPasteNative" = false; + "explorer.confirmDelete" = false; + }; }; }; }; diff --git a/machines/gamepc/configuration.nix b/machines/gamepc/configuration.nix index 7353c31..3fe2568 100644 --- a/machines/gamepc/configuration.nix +++ b/machines/gamepc/configuration.nix @@ -39,10 +39,16 @@ ''; }; - boot.loader.grub = { - enable = true; - efiSupport = true; - efiInstallAsRemovable = true; + boot = { + loader.grub = { + enable = true; + efiSupport = true; + efiInstallAsRemovable = true; + }; + + swraid.mdadmConf = '' + MAILADDR pim@kunis.nl + ''; }; disko.devices.disk = lib.genAttrs ["0" "1"] (name: { diff --git a/nixos/default.nix b/nixos/default.nix index 8cccb06..7d46be5 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -42,7 +42,6 @@ config = { time.timeZone = "Europe/Amsterdam"; - hardware.pulseaudio.enable = false; sops.age.keyFile = "/root/.config/sops/age/keys.txt"; i18n = { @@ -94,6 +93,7 @@ xserver.excludePackages = [pkgs.xterm]; printing.drivers = [pkgs.hplip pkgs.gutenprint]; tailscale.enable = true; + pulseaudio.enable = false; pipewire = { alsa.enable = true; diff --git a/nixos/stylix.nix b/nixos/stylix.nix index 66a2c5f..50d4bf3 100644 --- a/nixos/stylix.nix +++ b/nixos/stylix.nix @@ -19,6 +19,11 @@ in { enable = true; base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml"; + # targets = { + # firefox.profileNames = ["default"]; + # librewolf.profileNames = ["default"]; + # }; + cursor = { package = pkgs.bibata-cursors; name = "Bibata-Modern-Classic"; From a9313ce8aae3e4099dc2839f1dd1d1e369349bef Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 7 Jun 2025 10:33:27 +0200 Subject: [PATCH 57/60] Disable nix channels --- nixos/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/default.nix b/nixos/default.nix index 7d46be5..47188a0 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -146,6 +146,7 @@ nix = { package = lib.mkDefault pkgs.nixVersions.stable; + channel.enable = false; extraOptions = '' experimental-features = nix-command flakes From 5e3245115f5acbb621a1cecd4394567e16ee2082 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 7 Jun 2025 17:20:17 +0200 Subject: [PATCH 58/60] Enable Gatus service monitoring --- machines/warwick/configuration.nix | 271 ++++++++++++++++++++++++++++- nixos/server.nix | 7 +- secrets/servers.yaml | 13 +- 3 files changed, 281 insertions(+), 10 deletions(-) diff --git a/machines/warwick/configuration.nix b/machines/warwick/configuration.nix index 3e3052b..1371056 100644 --- a/machines/warwick/configuration.nix +++ b/machines/warwick/configuration.nix @@ -3,7 +3,9 @@ config, inputs, ... -}: { +}: let + gatusPort = 8080; +in { imports = [inputs.nixos-hardware.nixosModules.raspberry-pi-4]; config = { @@ -35,5 +37,272 @@ fsType = "ext4"; options = ["noatime"]; }; + + networking.firewall.allowedTCPPorts = [gatusPort]; + systemd.services.gatus.serviceConfig.EnvironmentFile = config.sops.secrets."gatus/env".path; + + services.gatus = { + enable = true; + + settings = { + alerting.email = { + from = "gatus@kun.is"; + host = "mail.smtp2go.com"; + port = 2525; + to = "pim@kunis.nl"; + client.insecure = true; + username = "$SMTP_USERNAME"; + password = "$SMTP_PASSWORD"; + + default-alert = { + enabled = true; + failure-threshold = 2; + success-threshold = 1; + send-on-resolved = true; + }; + }; + + web.port = gatusPort; + endpoints = let + status = code: "[STATUS] == ${toString code}"; + bodyContains = text: "[BODY] == pat(*${text}*)"; + maxResponseTime = ms: "[RESPONSE_TIME] < ${toString ms}"; + serviceEndpoints = [ + { + name = "Blog"; + url = "https://pim.kun.is"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Cyberchef"; + url = "https://cyberchef.kun.is"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "CyberChef - The Cyber Swiss Army Knife") + ]; + } + { + name = "HedgeDoc"; + url = "https://md.kun.is/status"; + conditions = [ + (status 200) + (maxResponseTime 300) + "[BODY].notesCount > 0" + ]; + } + { + name = "Forgejo"; + url = "https://git.kun.is"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "Forgejo: Beyond coding. We forge.") + ]; + } + { + name = "Authentik"; + url = "https://authentik.kun.is/-/health/live/"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Ntfy"; + url = "https://ntfy.kun.is"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Jellyfin"; + url = "https://media.kun.is/health"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Attic"; + url = "https://attic.kun.is"; + conditions = [ + (status 200) + (bodyContains "attic push") + (maxResponseTime 300) + ]; + } + { + name = "Esrom"; + url = "https://esrom.kun.is/seinlamp"; + conditions = [ + (status 200) + (bodyContains "Welcome to") + (maxResponseTime 300) + ]; + } + { + name = "Atuin"; + url = "https://atuin.kun.is"; + conditions = [ + (status 200) + (maxResponseTime 300) + "[BODY].total_history > 0" + ]; + } + { + name = "KitchenOwl"; + url = "https://boodschappen.kun.is"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "KitchenOwl") + ]; + } + { + name = "Inbucket"; + url = "https://inbucket.griffin-mermaid.ts.net/status"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "FreshRSS"; + url = "https://freshrss.griffin-mermaid.ts.net/i"; + conditions = [ + (status 401) + (maxResponseTime 300) + ]; + } + { + name = "Paperless-ngx"; + url = "https://paperless.griffin-mermaid.ts.net/accounts/login/"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "Please sign in.") + ]; + } + { + name = "Jellyseerr"; + url = "https://jellyseerr.griffin-mermaid.ts.net/login"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Radarr"; + url = "https://radarr.griffin-mermaid.ts.net"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Sonarr"; + url = "https://sonarr.griffin-mermaid.ts.net/login"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Bazarr"; + url = "https://bazarr.griffin-mermaid.ts.net/system/status"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "Bazarr") + ]; + } + { + name = "Prowlarr"; + url = "https://prowlarr.griffin-mermaid.ts.net/login"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Deluge"; + url = "https://deluge.griffin-mermaid.ts.net"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "SyncThing"; + url = "https://syncthing.griffin-mermaid.ts.net/"; + conditions = [ + (status 200) + (maxResponseTime 300) + ]; + } + { + name = "Radicale"; + url = "https://radicale.griffin-mermaid.ts.net/.web/"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "Sign in") + ]; + } + { + name = "Nextcloud"; + url = "https://nextcloud.griffin-mermaid.ts.net/status.php"; + conditions = [ + (status 200) + (maxResponseTime 300) + "[BODY].installed == true" + "[BODY].maintenance == false" + "[BODY].needsDbUpgrade == false" + ]; + } + { + name = "kms"; + url = "tcp://kms.kun.is:1688"; + conditions = [ + "[CONNECTED] == true" + ]; + } + { + name = "BIND"; + url = "192.168.30.134"; + dns = { + query-type = "SOA"; + query-name = "kun.is"; + }; + conditions = [ + "[DNS_RCODE] == NOERROR" + ]; + } + { + name = "Immich"; + url = "https://immich.griffin-mermaid.ts.net"; + conditions = [ + (status 200) + (maxResponseTime 300) + (bodyContains "To use Immich, you must enable JavaScript or use a JavaScript compatible browser.") + ]; + } + ]; + in + map + (endpoint: + endpoint + // { + interval = "5m"; + alerts = [{type = "email";}]; + }) + serviceEndpoints; + }; + }; }; } diff --git a/nixos/server.nix b/nixos/server.nix index 282edb6..54b5ee1 100644 --- a/nixos/server.nix +++ b/nixos/server.nix @@ -55,7 +55,11 @@ extraUpFlags = [ - "--accept-dns=false" + ( + if builtins.elem "kubernetes" config.deployment.tags + then "--accept-dns=false" + else "--accept-dns=true" + ) "--hostname=${config.networking.hostName}" ] ++ lib.lists.optional config.pim.tailscale.advertiseExitNode "--advertise-exit-node" @@ -67,6 +71,7 @@ "tailscale/authKey".sopsFile = "${self}/secrets/servers.yaml"; "borg/borgPassphrase".sopsFile = "${self}/secrets/servers.yaml"; "borg/borgbasePrivateKey".sopsFile = "${self}/secrets/servers.yaml"; + "gatus/env".sopsFile = "${self}/secrets/servers.yaml"; }; }; } diff --git a/secrets/servers.yaml b/secrets/servers.yaml index d947814..26c620b 100644 --- a/secrets/servers.yaml +++ b/secrets/servers.yaml @@ -3,11 +3,9 @@ tailscale: borg: borgPassphrase: ENC[AES256_GCM,data:UWA2sBLPi63MRVOPTYPWYLujF2M=,iv:FQq/IsZK7LWo30gZc7oT2E9feCLn7Oeg6wDGuezkhu8=,tag:fWYaZUwJrM8x6cemXzz6xg==,type:str] borgbasePrivateKey: ENC[AES256_GCM,data:O7eIY1yvbnBTS96tt5a8vcOEOzit4tEbIHmxnSbNsowC7YNk2g6MShQ6ll86GDiunLY33/Px0bqq9+4z/dk4N3FWQ1v5KQjr/gh+CS8VpIrv9zLv+Ru9UzeWQusbYxqnCu/IAQ1aB8UGV2LSCesQ0r/B6XEe51Phi65uWkbUYa/8voSiws3T3hnNrUDqiHdzfBgWZIQszz7zD92Q+aXu/kGNSxVKbXjWVfqBiyDEtuLEWoC1eENeEs41Ov5YT0Lm6+CUWadPqEwkDSvZWnBhoPwPLTZ/+ftZ/nizXUujsTdRwjcbOwJER+ObhgWDxbJE2WifxFOmHt3ggfSmAN842u5PjfT5gqpXMlTdCwYAYEJvDMqGsADe4p7+vPWJbetaahFrFGN8uBw7rs7W2wIiUKB5bAbAG0o6hdTpWfysuzMOFK/fROvCJsNhhKbbdiQbI0+SogtCkwv69+3uaRTFi33uqKCO6PQ6rMIahjo1lutm9iWq2nX4oI40W1KPC6EU/wF2,iv:rzkjjSnyrs58ZEO8XLsCSFsPHbtnL39SF6NJ6lUg3Ww=,tag:q0sunVc+9bLFoSdeykuT6g==,type:str] +gatus: + env: ENC[AES256_GCM,data:xe5yVFCGIpocPTGdTBw7dc9nZdwJ8697mDg/IX06qJo+a5H6u2DnXqAMZq1XbFs5C2gZR/0fyX8eysX3o6gbHCrIJ6e4vvPi6btKbkJ8xG8=,iv:yKlKJFbbuzqQLVweB/z2YNc8/bzk3Q33mApdV+iFYkc=,tag:kZg+t4RgZZXo2kPNgSEKuw==,type:str] sops: - kms: [] - gcp_kms: [] - azure_kv: [] - hc_vault: [] age: - recipient: age1th8rdw4fs3vmgy9gzc0k9xy88tddjj4vasepckfx9h4nlzsg3q3q4cjgwu enc: | @@ -72,8 +70,7 @@ sops: Y2cwK05uWXFhbndyRlhrSFNjYUlmZ1UKZ1vFRu1QhGGf7BIP8TxK2BIlMZlP3muA R3qLr1lEQmob4O0ilwn65nSCEd1/9W6dUWqeSlJ6CavjG59AvSHfIA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-05-25T14:53:30Z" - mac: ENC[AES256_GCM,data:jzjF+qjdptTI0Y1wNteZgYBGwF5dFWEBIFY3+k4Ty0YU/WB5AyUL6A8v0+PyoxoJK3pL+NAJEmLmAPFVh3+ExDlU9g3TAgpkOs7EsbJtWcjo8Ah08Hl8zoWqcMFcQhZ+aLnVKAE+tIBT4dWyV0AvOWmU8luvarsCp2tQ2OoBH20=,iv:PmbLg91onGz3kjxXMua/Thb904qDkWjHJcBY2dMAios=,tag:e0+fQqNysdiGvaodcimMVQ==,type:str] - pgp: [] + lastmodified: "2025-06-07T15:10:31Z" + mac: ENC[AES256_GCM,data:U39nM9BQp2UAJIcv8tx6X0HJoZrGyDUostNKkszEtWweKqCE5Cyc2iAel4WF005rHRwNCHIzLtj7cYCUihKJD7L7za90i+yh2sY5tr2lvgLYA5dSJJIQxtwEgxcV8rxdKl+Xz6cv5ZeYCiULYfnPx46M+lhlihCxHg1UBGhlc04=,iv:0wfV/4THddgX6c3AGrq0HYT9w8iQRBrDzyaOLAbaBGc=,tag:uHQTjO9IWOAwG1JQ5Sd0cw==,type:str] unencrypted_suffix: _unencrypted - version: 3.9.4 + version: 3.10.2 From cadeb3fb154eee34e2d3bb2a5efac3ef9d0b8eb1 Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 7 Jun 2025 18:18:30 +0200 Subject: [PATCH 59/60] Add ntfy alerting to gatus --- machines/warwick/configuration.nix | 28 +++++++++++++++++++--------- secrets/servers.yaml | 6 +++--- 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/machines/warwick/configuration.nix b/machines/warwick/configuration.nix index 1371056..ce6a296 100644 --- a/machines/warwick/configuration.nix +++ b/machines/warwick/configuration.nix @@ -45,21 +45,31 @@ in { enable = true; settings = { - alerting.email = { - from = "gatus@kun.is"; - host = "mail.smtp2go.com"; - port = 2525; - to = "pim@kunis.nl"; - client.insecure = true; - username = "$SMTP_USERNAME"; - password = "$SMTP_PASSWORD"; - + alerting = let default-alert = { enabled = true; failure-threshold = 2; success-threshold = 1; send-on-resolved = true; }; + in { + email = { + from = "gatus@kun.is"; + host = "mail.smtp2go.com"; + port = 2525; + to = "pim@kunis.nl"; + client.insecure = true; + username = "$SMTP_USERNAME"; + password = "$SMTP_PASSWORD"; + click = "http://warwick:${toString gatusPort}"; + inherit default-alert; + }; + + ntfy = { + url = "https://ntfy.kun.is"; + token = "$NTFY_ACCESS_TOKEN"; + inherit default-alert; + }; }; web.port = gatusPort; diff --git a/secrets/servers.yaml b/secrets/servers.yaml index 26c620b..f4e23fc 100644 --- a/secrets/servers.yaml +++ b/secrets/servers.yaml @@ -4,7 +4,7 @@ borg: borgPassphrase: ENC[AES256_GCM,data:UWA2sBLPi63MRVOPTYPWYLujF2M=,iv:FQq/IsZK7LWo30gZc7oT2E9feCLn7Oeg6wDGuezkhu8=,tag:fWYaZUwJrM8x6cemXzz6xg==,type:str] borgbasePrivateKey: ENC[AES256_GCM,data:O7eIY1yvbnBTS96tt5a8vcOEOzit4tEbIHmxnSbNsowC7YNk2g6MShQ6ll86GDiunLY33/Px0bqq9+4z/dk4N3FWQ1v5KQjr/gh+CS8VpIrv9zLv+Ru9UzeWQusbYxqnCu/IAQ1aB8UGV2LSCesQ0r/B6XEe51Phi65uWkbUYa/8voSiws3T3hnNrUDqiHdzfBgWZIQszz7zD92Q+aXu/kGNSxVKbXjWVfqBiyDEtuLEWoC1eENeEs41Ov5YT0Lm6+CUWadPqEwkDSvZWnBhoPwPLTZ/+ftZ/nizXUujsTdRwjcbOwJER+ObhgWDxbJE2WifxFOmHt3ggfSmAN842u5PjfT5gqpXMlTdCwYAYEJvDMqGsADe4p7+vPWJbetaahFrFGN8uBw7rs7W2wIiUKB5bAbAG0o6hdTpWfysuzMOFK/fROvCJsNhhKbbdiQbI0+SogtCkwv69+3uaRTFi33uqKCO6PQ6rMIahjo1lutm9iWq2nX4oI40W1KPC6EU/wF2,iv:rzkjjSnyrs58ZEO8XLsCSFsPHbtnL39SF6NJ6lUg3Ww=,tag:q0sunVc+9bLFoSdeykuT6g==,type:str] gatus: - env: ENC[AES256_GCM,data:xe5yVFCGIpocPTGdTBw7dc9nZdwJ8697mDg/IX06qJo+a5H6u2DnXqAMZq1XbFs5C2gZR/0fyX8eysX3o6gbHCrIJ6e4vvPi6btKbkJ8xG8=,iv:yKlKJFbbuzqQLVweB/z2YNc8/bzk3Q33mApdV+iFYkc=,tag:kZg+t4RgZZXo2kPNgSEKuw==,type:str] + env: ENC[AES256_GCM,data:HKZFD9yKUxUl42ucUvV/i6gzzIkQ9zlUQ1p06ImRwW0T/DIOHp6G2QHlWr60Q5Xc9HWfVCSNby5Su5DLAso3pX/a+b4CoG7q4pRhekVNQwcDYVWzfek33onDLtAhL/AUVLfT1m3LXFR1xBJc87lbP/KWG4IEYI5+ZVgQXKC47HVADXE=,iv:EbiHksIFeG6j90fdAACnD5ukalI58So5DV9ztytR5p8=,tag:OLDa4NOpYs+UWLMlndEqow==,type:str] sops: age: - recipient: age1th8rdw4fs3vmgy9gzc0k9xy88tddjj4vasepckfx9h4nlzsg3q3q4cjgwu @@ -70,7 +70,7 @@ sops: Y2cwK05uWXFhbndyRlhrSFNjYUlmZ1UKZ1vFRu1QhGGf7BIP8TxK2BIlMZlP3muA R3qLr1lEQmob4O0ilwn65nSCEd1/9W6dUWqeSlJ6CavjG59AvSHfIA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-07T15:10:31Z" - mac: ENC[AES256_GCM,data:U39nM9BQp2UAJIcv8tx6X0HJoZrGyDUostNKkszEtWweKqCE5Cyc2iAel4WF005rHRwNCHIzLtj7cYCUihKJD7L7za90i+yh2sY5tr2lvgLYA5dSJJIQxtwEgxcV8rxdKl+Xz6cv5ZeYCiULYfnPx46M+lhlihCxHg1UBGhlc04=,iv:0wfV/4THddgX6c3AGrq0HYT9w8iQRBrDzyaOLAbaBGc=,tag:uHQTjO9IWOAwG1JQ5Sd0cw==,type:str] + lastmodified: "2025-06-07T16:08:34Z" + mac: ENC[AES256_GCM,data:uMpavfH72TyTc+tRTw+hyv5N+NHdTvO7J4TThOTqV1ACOl9DOIBimUsREDONEgUn4cOdDOZzSR6LDlva60+B30xoJUL8fsRzNXtHkZ/aR0WJmkFcKu5rkVvRQjJt378ICid/et0R4SEojxeIvhI3MzGxyF25NdhIswGKgDh2lMU=,iv:gUbAdaxBJFBXxJHJXeRXTynC4cwaP8vL9Z61TN2pIEw=,tag:lUFk/ydWRO/ZjA4V89IdHw==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From c5e166a85895af1183d91b1661145452afc8f76b Mon Sep 17 00:00:00 2001 From: Pim Kunis Date: Sat, 7 Jun 2025 18:28:39 +0200 Subject: [PATCH 60/60] Fix default notification for ntfy --- machines/warwick/configuration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/machines/warwick/configuration.nix b/machines/warwick/configuration.nix index ce6a296..628df19 100644 --- a/machines/warwick/configuration.nix +++ b/machines/warwick/configuration.nix @@ -309,7 +309,7 @@ in { endpoint // { interval = "5m"; - alerts = [{type = "email";}]; + alerts = [{type = "email";} {type = "ntfy";}]; }) serviceEndpoints; };