diff options
| author | Gregor Kleen <gkleen@yggdrasil.li> | 2025-06-22 21:13:23 +0200 |
|---|---|---|
| committer | Gregor Kleen <gkleen@yggdrasil.li> | 2025-06-22 21:13:23 +0200 |
| commit | ba907ef7b4f5962a11c20adb4036b6ddad26a000 (patch) | |
| tree | 25f1aa3d84ef13a69afa9fc1f648822224429de6 | |
| parent | 173f53c48c42fbf8efc23b1393a71e9e688bfcec (diff) | |
| download | nixos-ba907ef7b4f5962a11c20adb4036b6ddad26a000.tar nixos-ba907ef7b4f5962a11c20adb4036b6ddad26a000.tar.gz nixos-ba907ef7b4f5962a11c20adb4036b6ddad26a000.tar.bz2 nixos-ba907ef7b4f5962a11c20adb4036b6ddad26a000.tar.xz nixos-ba907ef7b4f5962a11c20adb4036b6ddad26a000.zip | |
...
| -rw-r--r-- | _sources/generated.json | 42 | ||||
| -rw-r--r-- | _sources/generated.nix | 42 | ||||
| -rw-r--r-- | accounts/gkleen@sif/niri/default.nix | 221 | ||||
| -rw-r--r-- | accounts/gkleen@sif/systemd.nix | 2 | ||||
| -rw-r--r-- | accounts/gkleen@sif/zshrc | 4 | ||||
| -rw-r--r-- | flake.lock | 216 | ||||
| -rw-r--r-- | flake.nix | 17 | ||||
| -rw-r--r-- | hosts/eostre/default.nix | 21 | ||||
| -rw-r--r-- | hosts/sif/default.nix | 2 | ||||
| -rw-r--r-- | hosts/surtr/default.nix | 1 | ||||
| -rw-r--r-- | hosts/surtr/email/default.nix | 3 | ||||
| -rw-r--r-- | hosts/vidhar/default.nix | 2 | ||||
| -rw-r--r-- | lib/pythonSet.nix | 14 | ||||
| -rw-r--r-- | modules/borgcopy/.envrc | 4 | ||||
| -rw-r--r-- | modules/borgcopy/.gitignore | 2 | ||||
| -rw-r--r-- | modules/borgcopy/default.nix | 39 | ||||
| -rw-r--r-- | modules/borgcopy/poetry.lock | 180 | ||||
| -rw-r--r-- | modules/borgcopy/pyproject.toml | 33 | ||||
| -rw-r--r-- | modules/borgcopy/uv.lock | 146 | ||||
| -rw-r--r-- | modules/llvm_kernel.nix | 59 | ||||
| -rw-r--r-- | overlays/prometheus-lvm-exporter.nix | 2 | ||||
| -rw-r--r-- | system-profiles/core/default.nix | 8 | ||||
| -rw-r--r-- | system-profiles/nfsroot.nix | 2 | ||||
| -rw-r--r-- | system-profiles/zfs.nix | 5 | ||||
| -rw-r--r-- | user-profiles/yt-dlp.nix | 4 |
25 files changed, 584 insertions, 487 deletions
diff --git a/_sources/generated.json b/_sources/generated.json index d98f141f..ad09ec7c 100644 --- a/_sources/generated.json +++ b/_sources/generated.json | |||
| @@ -22,7 +22,7 @@ | |||
| 22 | }, | 22 | }, |
| 23 | "bpf-examples": { | 23 | "bpf-examples": { |
| 24 | "cargoLocks": null, | 24 | "cargoLocks": null, |
| 25 | "date": "2025-03-06", | 25 | "date": "2025-05-27", |
| 26 | "extract": null, | 26 | "extract": null, |
| 27 | "name": "bpf-examples", | 27 | "name": "bpf-examples", |
| 28 | "passthru": null, | 28 | "passthru": null, |
| @@ -34,12 +34,12 @@ | |||
| 34 | "name": null, | 34 | "name": null, |
| 35 | "owner": "xdp-project", | 35 | "owner": "xdp-project", |
| 36 | "repo": "bpf-examples", | 36 | "repo": "bpf-examples", |
| 37 | "rev": "64e7da048b14822bef06f3971189c4c0985422e7", | 37 | "rev": "4fae19c659726963d5195ec124f01634620f0c71", |
| 38 | "sha256": "sha256-cyyRNvU35ujxkLraOqw2oiZwUblBpJaEncPl2++VHL4=", | 38 | "sha256": "sha256-PKvknYKq/BYtzRvXZT4t76DdC794aj9uYXXE/tHtY2o=", |
| 39 | "sparseCheckout": [], | 39 | "sparseCheckout": [], |
| 40 | "type": "github" | 40 | "type": "github" |
| 41 | }, | 41 | }, |
| 42 | "version": "64e7da048b14822bef06f3971189c4c0985422e7" | 42 | "version": "4fae19c659726963d5195ec124f01634620f0c71" |
| 43 | }, | 43 | }, |
| 44 | "emacs-scratch_el": { | 44 | "emacs-scratch_el": { |
| 45 | "cargoLocks": null, | 45 | "cargoLocks": null, |
| @@ -91,11 +91,11 @@ | |||
| 91 | "passthru": null, | 91 | "passthru": null, |
| 92 | "pinned": false, | 92 | "pinned": false, |
| 93 | "src": { | 93 | "src": { |
| 94 | "sha256": "sha256-afJuTByGUMU6kFqGGa3pbPaFVdYGcJYiR0RfDNYNgDk=", | 94 | "sha256": "sha256-GCtcIXGrMH6LOKxjnB2SkUSChQnMj5d939i2atvqK+Q=", |
| 95 | "type": "tarball", | 95 | "type": "tarball", |
| 96 | "url": "https://github.com/wofr06/lesspipe/archive/refs/tags/v2.17.tar.gz" | 96 | "url": "https://github.com/wofr06/lesspipe/archive/refs/tags/v2.18.tar.gz" |
| 97 | }, | 97 | }, |
| 98 | "version": "2.17" | 98 | "version": "2.18" |
| 99 | }, | 99 | }, |
| 100 | "mako": { | 100 | "mako": { |
| 101 | "cargoLocks": null, | 101 | "cargoLocks": null, |
| @@ -327,11 +327,11 @@ | |||
| 327 | "passthru": null, | 327 | "passthru": null, |
| 328 | "pinned": false, | 328 | "pinned": false, |
| 329 | "src": { | 329 | "src": { |
| 330 | "sha256": "sha256-Nz/lBhQbzWSnOKN4n0OUdJzDTpf3mfY0+FXoCqF03TU=", | 330 | "sha256": "sha256-Ooaj+5npHkgo4eoletkhFbGQL+1ScE+39MaL6bnp+yw=", |
| 331 | "type": "tarball", | 331 | "type": "tarball", |
| 332 | "url": "https://github.com/hansmi/prometheus-lvm-exporter/archive/refs/tags/v0.4.0.tar.gz" | 332 | "url": "https://github.com/hansmi/prometheus-lvm-exporter/archive/refs/tags/v0.5.0.tar.gz" |
| 333 | }, | 333 | }, |
| 334 | "version": "0.4.0" | 334 | "version": "0.5.0" |
| 335 | }, | 335 | }, |
| 336 | "psql-versioning": { | 336 | "psql-versioning": { |
| 337 | "cargoLocks": null, | 337 | "cargoLocks": null, |
| @@ -437,7 +437,7 @@ | |||
| 437 | }, | 437 | }, |
| 438 | "v4l2loopback": { | 438 | "v4l2loopback": { |
| 439 | "cargoLocks": null, | 439 | "cargoLocks": null, |
| 440 | "date": "2025-04-29", | 440 | "date": "2025-06-11", |
| 441 | "extract": null, | 441 | "extract": null, |
| 442 | "name": "v4l2loopback", | 442 | "name": "v4l2loopback", |
| 443 | "passthru": null, | 443 | "passthru": null, |
| @@ -449,16 +449,16 @@ | |||
| 449 | "name": null, | 449 | "name": null, |
| 450 | "owner": "umlaeute", | 450 | "owner": "umlaeute", |
| 451 | "repo": "v4l2loopback", | 451 | "repo": "v4l2loopback", |
| 452 | "rev": "8d806ad688961d8840081a609c39d1a82d296b24", | 452 | "rev": "8219e4b00101dba8b6865108405cf656302a173d", |
| 453 | "sha256": "sha256-zuE/qFI8QCWCePmHWjTIPTh2KzmDkwQ2uj5C1dAwo1c=", | 453 | "sha256": "sha256-oaPhLQPM9zywRrEklZBC8Unz3gKfNwxin2ukh3ZCfbI=", |
| 454 | "sparseCheckout": [], | 454 | "sparseCheckout": [], |
| 455 | "type": "github" | 455 | "type": "github" |
| 456 | }, | 456 | }, |
| 457 | "version": "8d806ad688961d8840081a609c39d1a82d296b24" | 457 | "version": "8219e4b00101dba8b6865108405cf656302a173d" |
| 458 | }, | 458 | }, |
| 459 | "xcompose": { | 459 | "xcompose": { |
| 460 | "cargoLocks": null, | 460 | "cargoLocks": null, |
| 461 | "date": "2025-03-11", | 461 | "date": "2025-06-05", |
| 462 | "extract": null, | 462 | "extract": null, |
| 463 | "name": "xcompose", | 463 | "name": "xcompose", |
| 464 | "passthru": null, | 464 | "passthru": null, |
| @@ -470,12 +470,12 @@ | |||
| 470 | "name": null, | 470 | "name": null, |
| 471 | "owner": "kragen", | 471 | "owner": "kragen", |
| 472 | "repo": "xcompose", | 472 | "repo": "xcompose", |
| 473 | "rev": "8b5a6a0c788fd0a4b921d9d3737174defb863873", | 473 | "rev": "4d8eab4d05a19537ce79294ae0459fdae78ffb20", |
| 474 | "sha256": "sha256-6EjQErdBOd5hqcrdaf88E1UZVYIc3FOfv34hvUwOWdA=", | 474 | "sha256": "sha256-vKY4u5Z2IL111orLLkkF4AoVzqluKG/VQhNUUCqO/k8=", |
| 475 | "sparseCheckout": [], | 475 | "sparseCheckout": [], |
| 476 | "type": "github" | 476 | "type": "github" |
| 477 | }, | 477 | }, |
| 478 | "version": "8b5a6a0c788fd0a4b921d9d3737174defb863873" | 478 | "version": "4d8eab4d05a19537ce79294ae0459fdae78ffb20" |
| 479 | }, | 479 | }, |
| 480 | "yt-dlp": { | 480 | "yt-dlp": { |
| 481 | "cargoLocks": null, | 481 | "cargoLocks": null, |
| @@ -486,10 +486,10 @@ | |||
| 486 | "pinned": false, | 486 | "pinned": false, |
| 487 | "src": { | 487 | "src": { |
| 488 | "name": null, | 488 | "name": null, |
| 489 | "sha256": "sha256-6nOFTF2rwSTymjWo+um8XUIu8yMb6+6ivfqCrBkanCk=", | 489 | "sha256": "sha256-dR9To7YTU1Ir+AX6MLvL0WZmEmU345cG6rT4w2jxEaw=", |
| 490 | "type": "url", | 490 | "type": "url", |
| 491 | "url": "https://pypi.org/packages/source/y/yt_dlp/yt_dlp-2025.5.22.tar.gz" | 491 | "url": "https://pypi.org/packages/source/y/yt_dlp/yt_dlp-2025.6.9.tar.gz" |
| 492 | }, | 492 | }, |
| 493 | "version": "2025.5.22" | 493 | "version": "2025.6.9" |
| 494 | } | 494 | } |
| 495 | } \ No newline at end of file | 495 | } \ No newline at end of file |
diff --git a/_sources/generated.nix b/_sources/generated.nix index 3bf73fed..a912f452 100644 --- a/_sources/generated.nix +++ b/_sources/generated.nix | |||
| @@ -18,15 +18,15 @@ | |||
| 18 | }; | 18 | }; |
| 19 | bpf-examples = { | 19 | bpf-examples = { |
| 20 | pname = "bpf-examples"; | 20 | pname = "bpf-examples"; |
| 21 | version = "64e7da048b14822bef06f3971189c4c0985422e7"; | 21 | version = "4fae19c659726963d5195ec124f01634620f0c71"; |
| 22 | src = fetchFromGitHub { | 22 | src = fetchFromGitHub { |
| 23 | owner = "xdp-project"; | 23 | owner = "xdp-project"; |
| 24 | repo = "bpf-examples"; | 24 | repo = "bpf-examples"; |
| 25 | rev = "64e7da048b14822bef06f3971189c4c0985422e7"; | 25 | rev = "4fae19c659726963d5195ec124f01634620f0c71"; |
| 26 | fetchSubmodules = true; | 26 | fetchSubmodules = true; |
| 27 | sha256 = "sha256-cyyRNvU35ujxkLraOqw2oiZwUblBpJaEncPl2++VHL4="; | 27 | sha256 = "sha256-PKvknYKq/BYtzRvXZT4t76DdC794aj9uYXXE/tHtY2o="; |
| 28 | }; | 28 | }; |
| 29 | date = "2025-03-06"; | 29 | date = "2025-05-27"; |
| 30 | }; | 30 | }; |
| 31 | emacs-scratch_el = { | 31 | emacs-scratch_el = { |
| 32 | pname = "emacs-scratch_el"; | 32 | pname = "emacs-scratch_el"; |
| @@ -53,10 +53,10 @@ | |||
| 53 | }; | 53 | }; |
| 54 | lesspipe = { | 54 | lesspipe = { |
| 55 | pname = "lesspipe"; | 55 | pname = "lesspipe"; |
| 56 | version = "2.17"; | 56 | version = "2.18"; |
| 57 | src = fetchTarball { | 57 | src = fetchTarball { |
| 58 | url = "https://github.com/wofr06/lesspipe/archive/refs/tags/v2.17.tar.gz"; | 58 | url = "https://github.com/wofr06/lesspipe/archive/refs/tags/v2.18.tar.gz"; |
| 59 | sha256 = "sha256-afJuTByGUMU6kFqGGa3pbPaFVdYGcJYiR0RfDNYNgDk="; | 59 | sha256 = "sha256-GCtcIXGrMH6LOKxjnB2SkUSChQnMj5d939i2atvqK+Q="; |
| 60 | }; | 60 | }; |
| 61 | }; | 61 | }; |
| 62 | mako = { | 62 | mako = { |
| @@ -196,10 +196,10 @@ | |||
| 196 | }; | 196 | }; |
| 197 | prometheus-lvm-exporter = { | 197 | prometheus-lvm-exporter = { |
| 198 | pname = "prometheus-lvm-exporter"; | 198 | pname = "prometheus-lvm-exporter"; |
| 199 | version = "0.4.0"; | 199 | version = "0.5.0"; |
| 200 | src = fetchTarball { | 200 | src = fetchTarball { |
| 201 | url = "https://github.com/hansmi/prometheus-lvm-exporter/archive/refs/tags/v0.4.0.tar.gz"; | 201 | url = "https://github.com/hansmi/prometheus-lvm-exporter/archive/refs/tags/v0.5.0.tar.gz"; |
| 202 | sha256 = "sha256-Nz/lBhQbzWSnOKN4n0OUdJzDTpf3mfY0+FXoCqF03TU="; | 202 | sha256 = "sha256-Ooaj+5npHkgo4eoletkhFbGQL+1ScE+39MaL6bnp+yw="; |
| 203 | }; | 203 | }; |
| 204 | }; | 204 | }; |
| 205 | psql-versioning = { | 205 | psql-versioning = { |
| @@ -270,34 +270,34 @@ | |||
| 270 | }; | 270 | }; |
| 271 | v4l2loopback = { | 271 | v4l2loopback = { |
| 272 | pname = "v4l2loopback"; | 272 | pname = "v4l2loopback"; |
| 273 | version = "8d806ad688961d8840081a609c39d1a82d296b24"; | 273 | version = "8219e4b00101dba8b6865108405cf656302a173d"; |
| 274 | src = fetchFromGitHub { | 274 | src = fetchFromGitHub { |
| 275 | owner = "umlaeute"; | 275 | owner = "umlaeute"; |
| 276 | repo = "v4l2loopback"; | 276 | repo = "v4l2loopback"; |
| 277 | rev = "8d806ad688961d8840081a609c39d1a82d296b24"; | 277 | rev = "8219e4b00101dba8b6865108405cf656302a173d"; |
| 278 | fetchSubmodules = true; | 278 | fetchSubmodules = true; |
| 279 | sha256 = "sha256-zuE/qFI8QCWCePmHWjTIPTh2KzmDkwQ2uj5C1dAwo1c="; | 279 | sha256 = "sha256-oaPhLQPM9zywRrEklZBC8Unz3gKfNwxin2ukh3ZCfbI="; |
| 280 | }; | 280 | }; |
| 281 | date = "2025-04-29"; | 281 | date = "2025-06-11"; |
| 282 | }; | 282 | }; |
| 283 | xcompose = { | 283 | xcompose = { |
| 284 | pname = "xcompose"; | 284 | pname = "xcompose"; |
| 285 | version = "8b5a6a0c788fd0a4b921d9d3737174defb863873"; | 285 | version = "4d8eab4d05a19537ce79294ae0459fdae78ffb20"; |
| 286 | src = fetchFromGitHub { | 286 | src = fetchFromGitHub { |
| 287 | owner = "kragen"; | 287 | owner = "kragen"; |
| 288 | repo = "xcompose"; | 288 | repo = "xcompose"; |
| 289 | rev = "8b5a6a0c788fd0a4b921d9d3737174defb863873"; | 289 | rev = "4d8eab4d05a19537ce79294ae0459fdae78ffb20"; |
| 290 | fetchSubmodules = false; | 290 | fetchSubmodules = false; |
| 291 | sha256 = "sha256-6EjQErdBOd5hqcrdaf88E1UZVYIc3FOfv34hvUwOWdA="; | 291 | sha256 = "sha256-vKY4u5Z2IL111orLLkkF4AoVzqluKG/VQhNUUCqO/k8="; |
| 292 | }; | 292 | }; |
| 293 | date = "2025-03-11"; | 293 | date = "2025-06-05"; |
| 294 | }; | 294 | }; |
| 295 | yt-dlp = { | 295 | yt-dlp = { |
| 296 | pname = "yt-dlp"; | 296 | pname = "yt-dlp"; |
| 297 | version = "2025.5.22"; | 297 | version = "2025.6.9"; |
| 298 | src = fetchurl { | 298 | src = fetchurl { |
| 299 | url = "https://pypi.org/packages/source/y/yt_dlp/yt_dlp-2025.5.22.tar.gz"; | 299 | url = "https://pypi.org/packages/source/y/yt_dlp/yt_dlp-2025.6.9.tar.gz"; |
| 300 | sha256 = "sha256-6nOFTF2rwSTymjWo+um8XUIu8yMb6+6ivfqCrBkanCk="; | 300 | sha256 = "sha256-dR9To7YTU1Ir+AX6MLvL0WZmEmU345cG6rT4w2jxEaw="; |
| 301 | }; | 301 | }; |
| 302 | }; | 302 | }; |
| 303 | } | 303 | } |
diff --git a/accounts/gkleen@sif/niri/default.nix b/accounts/gkleen@sif/niri/default.nix index 8752f3e3..35a3d799 100644 --- a/accounts/gkleen@sif/niri/default.nix +++ b/accounts/gkleen@sif/niri/default.nix | |||
| @@ -3,6 +3,7 @@ let | |||
| 3 | cfg = config.programs.niri; | 3 | cfg = config.programs.niri; |
| 4 | 4 | ||
| 5 | kdl = flakeInputs.niri-flake.lib.kdl; | 5 | kdl = flakeInputs.niri-flake.lib.kdl; |
| 6 | sleaf = name: arg: kdl.node name [arg] []; | ||
| 6 | 7 | ||
| 7 | niri = cfg.package; | 8 | niri = cfg.package; |
| 8 | terminal = lib.getExe config.programs.kitty.package; | 9 | terminal = lib.getExe config.programs.kitty.package; |
| @@ -450,7 +451,7 @@ in { | |||
| 450 | { title = ".*Passkey credentials$"; } | 451 | { title = ".*Passkey credentials$"; } |
| 451 | ]; | 452 | ]; |
| 452 | windowRuleExtra = with kdl; [ | 453 | windowRuleExtra = with kdl; [ |
| 453 | (kdl.leaf "open-focused" false) | 454 | (sleaf "open-focused" false) |
| 454 | ]; | 455 | ]; |
| 455 | key = "Mod+Control+P"; | 456 | key = "Mod+Control+P"; |
| 456 | app-id = "org.keepassxc.KeePassXC"; | 457 | app-id = "org.keepassxc.KeePassXC"; |
| @@ -488,7 +489,7 @@ in { | |||
| 488 | exec dex $HOME/.local/state/nix/profile/share/applications/kimai.desktop | 489 | exec dex $HOME/.local/state/nix/profile/share/applications/kimai.desktop |
| 489 | '')) ]; | 490 | '')) ]; |
| 490 | windowRuleExtra = with kdl; [ | 491 | windowRuleExtra = with kdl; [ |
| 491 | (leaf "block-out-from" "screencast") | 492 | (sleaf "block-out-from" "screencast") |
| 492 | ]; | 493 | ]; |
| 493 | } | 494 | } |
| 494 | ]; | 495 | ]; |
| @@ -500,10 +501,12 @@ in { | |||
| 500 | then v | 501 | then v |
| 501 | else null; | 502 | else null; |
| 502 | opt-props = lib.filterAttrs (lib.const (value: value != null)); | 503 | opt-props = lib.filterAttrs (lib.const (value: value != null)); |
| 504 | normalize-nodes = nodes: lib.remove null (lib.flatten nodes); | ||
| 503 | in | 505 | in |
| 504 | [ (flag "prefer-no-csd") | 506 | normalize-nodes [ |
| 507 | (flag "prefer-no-csd") | ||
| 505 | 508 | ||
| 506 | (leaf "screenshot-path" "~/screenshots/%Y-%m-%dT%H:%M:%S.png") | 509 | (sleaf "screenshot-path" "~/screenshots/%Y-%m-%dT%H:%M:%S.png") |
| 507 | 510 | ||
| 508 | (plain "hotkey-overlay" [ | 511 | (plain "hotkey-overlay" [ |
| 509 | (flag "skip-at-startup") | 512 | (flag "skip-at-startup") |
| @@ -511,27 +514,27 @@ in { | |||
| 511 | 514 | ||
| 512 | (plain "input" [ | 515 | (plain "input" [ |
| 513 | (plain "keyboard" [ | 516 | (plain "keyboard" [ |
| 514 | (leaf "repeat-delay" 300) | 517 | (sleaf "repeat-delay" 300) |
| 515 | (leaf "repeat-rate" 50) | 518 | (sleaf "repeat-rate" 50) |
| 516 | 519 | ||
| 517 | (plain "xkb" [ | 520 | (plain "xkb" [ |
| 518 | (leaf "layout" "us,us") | 521 | (sleaf "layout" "us,us") |
| 519 | (leaf "variant" "dvp,") | 522 | (sleaf "variant" "dvp,") |
| 520 | (leaf "options" "compose:caps,grp:win_space_toggle") | 523 | (sleaf "options" "compose:caps,grp:win_space_toggle") |
| 521 | ]) | 524 | ]) |
| 522 | ]) | 525 | ]) |
| 523 | 526 | ||
| 524 | (flag "workspace-auto-back-and-forth") | 527 | (flag "workspace-auto-back-and-forth") |
| 525 | # (leaf "focus-follows-mouse" {}) | 528 | # (sleaf "focus-follows-mouse" {}) |
| 526 | # (flag "warp-mouse-to-focus") | 529 | # (flag "warp-mouse-to-focus") |
| 527 | 530 | ||
| 528 | # (plain "touchpad" [ (flag "off") ]) | 531 | # (plain "touchpad" [ (flag "off") ]) |
| 529 | (plain "trackball" [ | 532 | (plain "trackball" [ |
| 530 | (leaf "scroll-method" "on-button-down") | 533 | (sleaf "scroll-method" "on-button-down") |
| 531 | (leaf "scroll-button" 278) | 534 | (sleaf "scroll-button" 278) |
| 532 | ]) | 535 | ]) |
| 533 | (plain "touch" [ | 536 | (plain "touch" [ |
| 534 | (leaf "map-to-output" "eDP-1") | 537 | (sleaf "map-to-output" "eDP-1") |
| 535 | ]) | 538 | ]) |
| 536 | ]) | 539 | ]) |
| 537 | 540 | ||
| @@ -539,7 +542,7 @@ in { | |||
| 539 | (plain "hot-corners" [(flag "off")]) | 542 | (plain "hot-corners" [(flag "off")]) |
| 540 | ]) | 543 | ]) |
| 541 | 544 | ||
| 542 | (plain "environment" (lib.mapAttrsToList leaf { | 545 | (plain "environment" (lib.mapAttrsToList sleaf { |
| 543 | NIXOS_OZONE_WL = "1"; | 546 | NIXOS_OZONE_WL = "1"; |
| 544 | QT_QPA_PLATFORM = "wayland"; | 547 | QT_QPA_PLATFORM = "wayland"; |
| 545 | QT_WAYLAND_DISABLE_WINDOWDECORATION = "1"; | 548 | QT_WAYLAND_DISABLE_WINDOWDECORATION = "1"; |
| @@ -552,47 +555,47 @@ in { | |||
| 552 | SUDO_ASKPASS = lib.getExe pkgs.kdePackages.ksshaskpass; | 555 | SUDO_ASKPASS = lib.getExe pkgs.kdePackages.ksshaskpass; |
| 553 | })) | 556 | })) |
| 554 | 557 | ||
| 555 | (node "output" "eDP-1" [ | 558 | (node "output" ["eDP-1"] [ |
| 556 | (leaf "scale" 1.5) | 559 | (sleaf "scale" 1.5) |
| 557 | (leaf "position" { x = 0; y = 0; }) | 560 | (sleaf "position" { x = 0; y = 0; }) |
| 558 | ]) | 561 | ]) |
| 559 | (node "output" "Ancor Communications Inc ASUS PB287Q 0x0000DD9B" [ | 562 | (node "output" ["Ancor Communications Inc ASUS PB287Q 0x0000DD9B"] [ |
| 560 | (leaf "scale" 1.5) | 563 | (sleaf "scale" 1.5) |
| 561 | (leaf "position" { x = 2560; y = 0; }) | 564 | (sleaf "position" { x = 2560; y = 0; }) |
| 562 | ]) | 565 | ]) |
| 563 | (node "output" "HP Inc. HP 727pu CN4417143K" [ | 566 | (node "output" ["HP Inc. HP 727pu CN4417143K"] [ |
| 564 | (leaf "mode" "2560x1440@119.998") | 567 | (sleaf "mode" "2560x1440@119.998") |
| 565 | (leaf "scale" 1) | 568 | (sleaf "scale" 1) |
| 566 | (leaf "position" { x = 2560; y = 0; }) | 569 | (sleaf "position" { x = 2560; y = 0; }) |
| 567 | (flag "variable-refresh-rate") | 570 | (flag "variable-refresh-rate") |
| 568 | ]) | 571 | ]) |
| 569 | 572 | ||
| 570 | (plain "debug" [ | 573 | (plain "debug" [ |
| 571 | (leaf "render-drm-device" "/dev/dri/by-path/pci-0000:00:02.0-render") | 574 | (sleaf "render-drm-device" "/dev/dri/by-path/pci-0000:00:02.0-render") |
| 572 | ]) | 575 | ]) |
| 573 | 576 | ||
| 574 | (plain "animations" [ | 577 | (plain "animations" [ |
| 575 | (leaf "slowdown" 0.5) | 578 | (sleaf "slowdown" 0.5) |
| 576 | (plain "workspace-switch" [(flag "off")]) | 579 | (plain "workspace-switch" [(flag "off")]) |
| 577 | ]) | 580 | ]) |
| 578 | 581 | ||
| 579 | (plain "layout" [ | 582 | (plain "layout" [ |
| 580 | (leaf "gaps" 8) | 583 | (sleaf "gaps" 8) |
| 581 | (plain "struts" [ | 584 | (plain "struts" [ |
| 582 | (leaf "left" 26) | 585 | (sleaf "left" 26) |
| 583 | (leaf "right" 26) | 586 | (sleaf "right" 26) |
| 584 | (leaf "top" 0) | 587 | (sleaf "top" 0) |
| 585 | (leaf "bottom" 0) | 588 | (sleaf "bottom" 0) |
| 586 | ]) | 589 | ]) |
| 587 | (plain "border" [ | 590 | (plain "border" [ |
| 588 | (leaf "width" 2) | 591 | (sleaf "width" 2) |
| 589 | (leaf "active-gradient" { | 592 | (sleaf "active-gradient" { |
| 590 | from = "hsla(195 100% 45% 1)"; | 593 | from = "hsla(195 100% 45% 1)"; |
| 591 | to = "hsla(155 100% 37.5% 1)"; | 594 | to = "hsla(155 100% 37.5% 1)"; |
| 592 | angle = 29; | 595 | angle = 29; |
| 593 | relative-to = "workspace-view"; | 596 | relative-to = "workspace-view"; |
| 594 | }) | 597 | }) |
| 595 | (leaf "inactive-gradient" { | 598 | (sleaf "inactive-gradient" { |
| 596 | from = "hsla(0 0% 27.7% 1)"; | 599 | from = "hsla(0 0% 27.7% 1)"; |
| 597 | to = "hsla(0 0% 23% 1)"; | 600 | to = "hsla(0 0% 23% 1)"; |
| 598 | angle = 29; | 601 | angle = 29; |
| @@ -603,29 +606,29 @@ in { | |||
| 603 | (flag "off") | 606 | (flag "off") |
| 604 | ]) | 607 | ]) |
| 605 | 608 | ||
| 606 | (plain "preset-column-widths" (map (prop: leaf "proportion" prop) [ | 609 | (plain "preset-column-widths" (map (prop: sleaf "proportion" prop) [ |
| 607 | (1. / 4.) (1. / 3.) (1. / 2.) (2. / 3.) (3. / 4.) (1.) | 610 | (1. / 4.) (1. / 3.) (1. / 2.) (2. / 3.) (3. / 4.) (1.) |
| 608 | ])) | 611 | ])) |
| 609 | (plain "default-column-width" [ (leaf "proportion" (1. / 2.)) ]) | 612 | (plain "default-column-width" [ (sleaf "proportion" (1. / 2.)) ]) |
| 610 | (plain "preset-window-heights" (map (prop: leaf "proportion" prop) [ | 613 | (plain "preset-window-heights" (map (prop: sleaf "proportion" prop) [ |
| 611 | (1. / 3.) (1. / 2.) (2. / 3.) (1.) | 614 | (1. / 3.) (1. / 2.) (2. / 3.) (1.) |
| 612 | ])) | 615 | ])) |
| 613 | 616 | ||
| 614 | (flag "always-center-single-column") | 617 | (flag "always-center-single-column") |
| 615 | 618 | ||
| 616 | (plain "tab-indicator" [ | 619 | (plain "tab-indicator" [ |
| 617 | (leaf "gap" 4) | 620 | (sleaf "gap" 4) |
| 618 | (leaf "width" 8) | 621 | (sleaf "width" 8) |
| 619 | (leaf "gaps-between-tabs" 4) | 622 | (sleaf "gaps-between-tabs" 4) |
| 620 | (flag "place-within-column") | 623 | (flag "place-within-column") |
| 621 | (leaf "length" { total-proportion = 1.; }) | 624 | (sleaf "length" { total-proportion = 1.; }) |
| 622 | (leaf "active-gradient" { | 625 | (sleaf "active-gradient" { |
| 623 | from = "hsla(195 100% 60% 0.75)"; | 626 | from = "hsla(195 100% 60% 0.75)"; |
| 624 | to = "hsla(155 100% 50% 0.75)"; | 627 | to = "hsla(155 100% 50% 0.75)"; |
| 625 | angle = 29; | 628 | angle = 29; |
| 626 | relative-to = "workspace-view"; | 629 | relative-to = "workspace-view"; |
| 627 | }) | 630 | }) |
| 628 | (leaf "inactive-gradient" { | 631 | (sleaf "inactive-gradient" { |
| 629 | from = "hsla(0 0% 42% 0.66)"; | 632 | from = "hsla(0 0% 42% 0.66)"; |
| 630 | to = "hsla(0 0% 35% 0.66)"; | 633 | to = "hsla(0 0% 35% 0.66)"; |
| 631 | angle = 29; | 634 | angle = 29; |
| @@ -639,129 +642,121 @@ in { | |||
| 639 | ]) | 642 | ]) |
| 640 | 643 | ||
| 641 | (map (name: | 644 | (map (name: |
| 642 | (node "workspace" name [ | 645 | (node "workspace" [name] [ |
| 643 | (leaf "open-on-output" "eDP-1") | 646 | (sleaf "open-on-output" "eDP-1") |
| 644 | ]) | 647 | ]) |
| 645 | ) (map ({name, ...}: name) cfg.scratchspaces)) | 648 | ) (map ({name, ...}: name) cfg.scratchspaces)) |
| 646 | (map (name: | 649 | (map (name: |
| 647 | (leaf "workspace" name) | 650 | (sleaf "workspace" name) |
| 648 | ) ["comm" "web" "vid" "bmr"]) | 651 | ) ["comm" "web" "vid" "bmr"]) |
| 649 | 652 | ||
| 650 | (plain "window-rule" [ | 653 | (plain "window-rule" [ |
| 651 | (leaf "clip-to-geometry" true) | 654 | (sleaf "clip-to-geometry" true) |
| 652 | ]) | 655 | ]) |
| 653 | 656 | ||
| 654 | (plain "window-rule" [ | 657 | (plain "window-rule" [ |
| 655 | (leaf "match" { is-floating = true; }) | 658 | (sleaf "match" { is-floating = true; }) |
| 656 | (leaf "geometry-corner-radius" 8) | 659 | (sleaf "geometry-corner-radius" 8) |
| 657 | (plain "shadow" [ (flag "on") ]) | 660 | (plain "shadow" [ (flag "on") ]) |
| 658 | ]) | 661 | ]) |
| 659 | 662 | ||
| 660 | (plain "window-rule" [ | 663 | (plain "window-rule" [ |
| 661 | (leaf "match" { app-id = "^org\\.keepassxc\\.KeePassXC$"; }) | 664 | (sleaf "match" { app-id = "^org\\.keepassxc\\.KeePassXC$"; }) |
| 662 | (leaf "block-out-from" "screencast") | 665 | (sleaf "block-out-from" "screencast") |
| 663 | ]) | 666 | ]) |
| 664 | (plain "window-rule" [ | 667 | (plain "window-rule" (normalize-nodes [ |
| 665 | (map (title: | 668 | (map (title: |
| 666 | (leaf "match" { app-id = "^org\\.keepassxc\\.KeePassXC$"; inherit title; }) | 669 | (sleaf "match" { app-id = "^org\\.keepassxc\\.KeePassXC$"; inherit title; }) |
| 667 | ) ["^Unlock Database.*" "^Access Request.*" ".*Passkey credentials$" "Browser Access Request$"]) | 670 | ) ["^Unlock Database.*" "^Access Request.*" ".*Passkey credentials$" "Browser Access Request$"]) |
| 668 | (leaf "open-focused" true) | 671 | (sleaf "open-focused" true) |
| 669 | (leaf "open-floating" true) | 672 | (sleaf "open-floating" true) |
| 670 | ]) | 673 | ])) |
| 671 | 674 | ||
| 672 | (map ({ name, match, exclude, windowRuleExtra, ... }: | 675 | (map ({ name, match, exclude, windowRuleExtra, ... }: |
| 673 | (optional-node (match != []) (plain "window-rule" [ | 676 | (optional-node (match != []) (plain "window-rule" (normalize-nodes [ |
| 674 | (map (leaf "match") match) | 677 | (map (sleaf "match") match) |
| 675 | (map (leaf "exclude") exclude) | 678 | (map (sleaf "exclude") exclude) |
| 676 | (leaf "open-on-workspace" name) | 679 | (sleaf "open-on-workspace" name) |
| 677 | (leaf "open-maximized" true) | 680 | (sleaf "open-maximized" true) |
| 678 | windowRuleExtra | 681 | windowRuleExtra |
| 679 | ])) | 682 | ]))) |
| 680 | ) cfg.scratchspaces) | 683 | ) cfg.scratchspaces) |
| 681 | 684 | ||
| 682 | (plain "window-rule" [ | 685 | (plain "window-rule" [ |
| 683 | (leaf "match" { app-id = "^emacs$"; }) | 686 | (sleaf "match" { app-id = "^emacs$"; }) |
| 684 | (leaf "match" { app-id = "^firefox$"; }) | 687 | (sleaf "match" { app-id = "^firefox$"; }) |
| 685 | (plain "default-column-width" [(leaf "proportion" (2. / 3.))]) | 688 | (plain "default-column-width" [(sleaf "proportion" (2. / 3.))]) |
| 686 | ]) | 689 | ]) |
| 687 | (plain "window-rule" [ | 690 | (plain "window-rule" [ |
| 688 | (leaf "match" { app-id = "^kitty$"; }) | 691 | (sleaf "match" { app-id = "^kitty$"; }) |
| 689 | (leaf "match" { app-id = "^kitty-play$"; }) | 692 | (sleaf "match" { app-id = "^kitty-play$"; }) |
| 690 | (plain "default-column-width" [(leaf "proportion" (1. / 3.))]) | 693 | (plain "default-column-width" [(sleaf "proportion" (1. / 3.))]) |
| 691 | ]) | 694 | ]) |
| 692 | 695 | ||
| 693 | (plain "window-rule" [ | 696 | (plain "window-rule" [ |
| 694 | (leaf "match" { app-id = "^thunderbird$"; }) | 697 | (sleaf "match" { app-id = "^thunderbird$"; }) |
| 695 | (leaf "match" { app-id = "^Element$"; }) | 698 | (sleaf "match" { app-id = "^Element$"; }) |
| 696 | (leaf "match" { app-id = "^chrome-web\.openrainbow\.com__-Default$"; }) | 699 | (sleaf "match" { app-id = "^chrome-web\.openrainbow\.com__-Default$"; }) |
| 697 | (leaf "open-on-workspace" "comm") | 700 | (sleaf "open-on-workspace" "comm") |
| 698 | ]) | 701 | ]) |
| 699 | (plain "window-rule" [ | 702 | (plain "window-rule" [ |
| 700 | (leaf "match" { app-id = "^firefox$"; }) | 703 | (sleaf "match" { app-id = "^firefox$"; }) |
| 701 | (leaf "open-on-workspace" "web") | 704 | (sleaf "open-on-workspace" "web") |
| 702 | (leaf "open-maximized" true) | 705 | (sleaf "open-maximized" true) |
| 703 | ]) | 706 | ]) |
| 704 | (plain "window-rule" [ | 707 | (plain "window-rule" [ |
| 705 | (leaf "match" { app-id = "^mpv$"; }) | 708 | (sleaf "match" { app-id = "^mpv$"; }) |
| 706 | (leaf "open-on-workspace" "vid") | 709 | (sleaf "open-on-workspace" "vid") |
| 707 | (plain "default-column-width" [(leaf "proportion" 1.)]) | 710 | (plain "default-column-width" [(sleaf "proportion" 1.)]) |
| 708 | ]) | 711 | ]) |
| 709 | (plain "window-rule" [ | 712 | (plain "window-rule" [ |
| 710 | (leaf "match" { app-id = "^kitty-play$"; }) | 713 | (sleaf "match" { app-id = "^kitty-play$"; }) |
| 711 | (leaf "open-on-workspace" "vid") | 714 | (sleaf "open-on-workspace" "vid") |
| 712 | (leaf "open-focused" false) | 715 | (sleaf "open-focused" false) |
| 713 | ]) | 716 | ]) |
| 714 | (plain "window-rule" [ | 717 | (plain "window-rule" [ |
| 715 | (leaf "match" { app-id = "^chrome-audiobookshelf\.yggdrasil\.li__-Default$"; }) | 718 | (sleaf "match" { app-id = "^chrome-audiobookshelf\.yggdrasil\.li__-Default$"; }) |
| 716 | (leaf "match" { app-id = "^YouTube Music Desktop App$"; }) | 719 | (sleaf "match" { app-id = "^YouTube Music Desktop App$"; }) |
| 717 | (leaf "open-on-workspace" "vid") | 720 | (sleaf "open-on-workspace" "vid") |
| 718 | ]) | 721 | ]) |
| 719 | (plain "window-rule" [ | 722 | (plain "window-rule" [ |
| 720 | (leaf "match" { app-id = "^pdfpc$"; }) | 723 | (sleaf "match" { app-id = "^pdfpc$"; }) |
| 721 | (plain "default-column-width" [(leaf "proportion" 1.)]) | 724 | (plain "default-column-width" [(sleaf "proportion" 1.)]) |
| 722 | ]) | 725 | ]) |
| 723 | (plain "window-rule" [ | 726 | (plain "window-rule" [ |
| 724 | (leaf "match" { app-id = "^pdfpc$"; title = "^.*presentation.*$"; }) | 727 | (sleaf "match" { app-id = "^pdfpc$"; title = "^.*presentation.*$"; }) |
| 725 | (plain "default-column-width" [(leaf "proportion" 1.)]) | 728 | (plain "default-column-width" [(sleaf "proportion" 1.)]) |
| 726 | (leaf "open-fullscreen" true) | 729 | (sleaf "open-fullscreen" true) |
| 727 | (leaf "open-on-workspace" "bmr") | 730 | (sleaf "open-on-workspace" "bmr") |
| 728 | (leaf "open-focused" false) | 731 | (sleaf "open-focused" false) |
| 729 | ]) | 732 | ]) |
| 730 | (plain "window-rule" [ | 733 | (plain "window-rule" (normalize-nodes [ |
| 731 | (map (leaf "match") [ | 734 | (map (sleaf "match") [ |
| 732 | { app-id = "^Gimp-"; title = "^Quit GIMP$"; } | 735 | { app-id = "^Gimp-"; title = "^Quit GIMP$"; } |
| 733 | { app-id = "^org\\.kde\\.polkit-kde-authentication-agent-1$"; } | 736 | { app-id = "^org\\.kde\\.polkit-kde-authentication-agent-1$"; } |
| 734 | { app-id = "^xdg-desktop-portal-gtk$"; } | 737 | { app-id = "^xdg-desktop-portal-gtk$"; } |
| 735 | ]) | 738 | ]) |
| 736 | (leaf "open-floating" true) | 739 | (sleaf "open-floating" true) |
| 737 | ]) | 740 | ])) |
| 738 | (plain "window-rule" [ | 741 | (plain "window-rule" [ |
| 739 | (leaf "match" { app-id = "^org\\.pwmt\\.zathura$"; }) | 742 | (sleaf "match" { app-id = "^org\\.pwmt\\.zathura$"; }) |
| 740 | (leaf "match" { app-id = "^evince$"; }) | 743 | (sleaf "match" { app-id = "^evince$"; }) |
| 741 | (leaf "match" { app-id = "^org\\.gnome\\.Papers$"; }) | 744 | (sleaf "match" { app-id = "^org\\.gnome\\.Papers$"; }) |
| 742 | (leaf "default-column-display" "tabbed") | 745 | (sleaf "default-column-display" "tabbed") |
| 743 | ]) | 746 | ]) |
| 744 | 747 | ||
| 745 | (plain "layer-rule" [ | 748 | (plain "layer-rule" [ |
| 746 | (leaf "match" { namespace = "^notifications$"; }) | 749 | (sleaf "match" { namespace = "^notifications$"; }) |
| 747 | (leaf "match" { namespace = "^waybar$"; }) | 750 | (sleaf "match" { namespace = "^waybar$"; }) |
| 748 | (leaf "match" { namespace = "^launcher$"; }) | 751 | (sleaf "match" { namespace = "^launcher$"; }) |
| 749 | (leaf "block-out-from" "screencast") | 752 | (sleaf "block-out-from" "screencast") |
| 750 | ]) | 753 | ]) |
| 751 | 754 | ||
| 752 | (plain "binds" | 755 | (plain "binds" |
| 753 | (let | 756 | (let |
| 754 | bind = name: cfg: node name (opt-props { | 757 | bind = name: cfg: node name [(lib.removeAttrs cfg ["action"])] (lib.mapAttrsToList leaf (lib.removeAttrs cfg.action ["__functor"])); |
| 755 | cooldown-ms = cfg.cooldown-ms or null; | ||
| 756 | } | ||
| 757 | // (lib.optionalAttrs (!(cfg.repeat or true)) { | ||
| 758 | repeat = false; | ||
| 759 | }) | ||
| 760 | // (lib.optionalAttrs (cfg.allow-when-locked or false) { | ||
| 761 | allow-when-locked = true; | ||
| 762 | })) (lib.mapAttrsToList leaf (lib.removeAttrs cfg.action ["__functor"])); | ||
| 763 | in | 758 | in |
| 764 | [ | 759 | normalize-nodes [ |
| 765 | (lib.mapAttrsToList bind (with config.lib.niri.actions; { | 760 | (lib.mapAttrsToList bind (with config.lib.niri.actions; { |
| 766 | "Mod+Slash".action = show-hotkey-overlay; | 761 | "Mod+Slash".action = show-hotkey-overlay; |
| 767 | 762 | ||
diff --git a/accounts/gkleen@sif/systemd.nix b/accounts/gkleen@sif/systemd.nix index 90cccc58..18c2315f 100644 --- a/accounts/gkleen@sif/systemd.nix +++ b/accounts/gkleen@sif/systemd.nix | |||
| @@ -385,6 +385,8 @@ in { | |||
| 385 | }; | 385 | }; |
| 386 | Service = { | 386 | Service = { |
| 387 | ExecStart = "${config.systemd.package}/lib/systemd/systemd-socket-proxyd --exit-idle-time=60s 127.0.0.1:${toString (port + 1)}"; | 387 | ExecStart = "${config.systemd.package}/lib/systemd/systemd-socket-proxyd --exit-idle-time=60s 127.0.0.1:${toString (port + 1)}"; |
| 388 | Restart = "always"; | ||
| 389 | RestartSec = "23s"; | ||
| 388 | }; | 390 | }; |
| 389 | }) [{ host = "proxy.ssh.math.lmu.de"; port = 8118; } { host = "proxy.vidhar"; port = 8120; } { host = "proxy.mathw0h"; port = 8122; } { host = "proxy.mathw0e"; port = 8124; }]); | 391 | }) [{ host = "proxy.ssh.math.lmu.de"; port = 8118; } { host = "proxy.vidhar"; port = 8120; } { host = "proxy.mathw0h"; port = 8122; } { host = "proxy.mathw0e"; port = 8124; }]); |
| 390 | sockets = listToAttrs (map (port: nameValuePair "proxy-to-autossh-socks@${toString port}" { | 392 | sockets = listToAttrs (map (port: nameValuePair "proxy-to-autossh-socks@${toString port}" { |
diff --git a/accounts/gkleen@sif/zshrc b/accounts/gkleen@sif/zshrc index abc200c6..b24ff257 100644 --- a/accounts/gkleen@sif/zshrc +++ b/accounts/gkleen@sif/zshrc | |||
| @@ -93,7 +93,7 @@ dir() { | |||
| 93 | if [[ $curlArchive = "true" ]]; then | 93 | if [[ $curlArchive = "true" ]]; then |
| 94 | archiveFile=$(mktemp -t "archive.XXXXXXXXXX.${templateArchive:t}") | 94 | archiveFile=$(mktemp -t "archive.XXXXXXXXXX.${templateArchive:t}") |
| 95 | 95 | ||
| 96 | curl -L -o ${archiveFile} ${templateArchive} | 96 | curl -SfL -o ${archiveFile} ${templateArchive} |
| 97 | 97 | ||
| 98 | templateArchive=${archiveFile} | 98 | templateArchive=${archiveFile} |
| 99 | fi | 99 | fi |
| @@ -231,7 +231,7 @@ clock() { | |||
| 231 | } | 231 | } |
| 232 | 232 | ||
| 233 | public-ip() { | 233 | public-ip() { |
| 234 | curl -s -H 'Accept: application/json' $@ ifconfig.co | jq -r '.ip' | 234 | curl -sSf -H 'Accept: application/json' $@ ifconfig.co | jq -r '.ip' |
| 235 | } | 235 | } |
| 236 | 236 | ||
| 237 | swap() { | 237 | swap() { |
| @@ -6,22 +6,28 @@ | |||
| 6 | "nixpkgs": [ | 6 | "nixpkgs": [ |
| 7 | "nixpkgs" | 7 | "nixpkgs" |
| 8 | ], | 8 | ], |
| 9 | "poetry2nix": [ | 9 | "pre-commit-hooks-nix": "pre-commit-hooks-nix", |
| 10 | "poetry2nix" | 10 | "pyproject-build-systems": [ |
| 11 | "pyproject-build-systems" | ||
| 12 | ], | ||
| 13 | "pyproject-nix": [ | ||
| 14 | "pyproject-nix" | ||
| 11 | ], | 15 | ], |
| 12 | "pre-commit-hooks-nix": "pre-commit-hooks-nix" | 16 | "uv2nix": [ |
| 17 | "uv2nix" | ||
| 18 | ] | ||
| 13 | }, | 19 | }, |
| 14 | "locked": { | 20 | "locked": { |
| 15 | "lastModified": 1723124245, | 21 | "lastModified": 1749560907, |
| 16 | "narHash": "sha256-ThDq7vOXo6G4+C5FHqUc64CeX2c5n36tln4ZlDao6s4=", | 22 | "narHash": "sha256-zvAxxnJ5dcnjbuog0W6UvlthD1dLm5t4ZQI25jzNDW4=", |
| 17 | "owner": "gkleen", | 23 | "owner": "gkleen", |
| 18 | "repo": "backup-utils", | 24 | "repo": "backup-utils", |
| 19 | "rev": "74e65090de63fc99f056098677cc490754e2708f", | 25 | "rev": "8ed6a1d7c2e337cb2e35ed68f6d852f0d1049908", |
| 20 | "type": "gitlab" | 26 | "type": "gitlab" |
| 21 | }, | 27 | }, |
| 22 | "original": { | 28 | "original": { |
| 23 | "owner": "gkleen", | 29 | "owner": "gkleen", |
| 24 | "ref": "v0.1.6", | 30 | "ref": "v0.1.7", |
| 25 | "repo": "backup-utils", | 31 | "repo": "backup-utils", |
| 26 | "type": "gitlab" | 32 | "type": "gitlab" |
| 27 | } | 33 | } |
| @@ -33,22 +39,26 @@ | |||
| 33 | "nixpkgs": [ | 39 | "nixpkgs": [ |
| 34 | "nixpkgs" | 40 | "nixpkgs" |
| 35 | ], | 41 | ], |
| 36 | "poetry2nix": [ | 42 | "pre-commit-hooks-nix": "pre-commit-hooks-nix_2", |
| 37 | "poetry2nix" | 43 | "pyproject-build-systems": "pyproject-build-systems", |
| 44 | "pyproject-nix": [ | ||
| 45 | "pyproject-nix" | ||
| 38 | ], | 46 | ], |
| 39 | "pre-commit-hooks-nix": "pre-commit-hooks-nix_2" | 47 | "uv2nix": [ |
| 48 | "uv2nix" | ||
| 49 | ] | ||
| 40 | }, | 50 | }, |
| 41 | "locked": { | 51 | "locked": { |
| 42 | "lastModified": 1734281899, | 52 | "lastModified": 1750599403, |
| 43 | "narHash": "sha256-9QdIl3sjHY4Xij9KrBUkW1KpLB+jyxlI12UHPitlawI=", | 53 | "narHash": "sha256-MLQ7CISl00w1xq88TL2wukNq3ukzID4u7BVT4okbUik=", |
| 44 | "owner": "gkleen", | 54 | "owner": "gkleen", |
| 45 | "repo": "ca", | 55 | "repo": "ca", |
| 46 | "rev": "1e4ee9d25a5282ef7bc6774072229784fa0036f3", | 56 | "rev": "505a29233ada969b2eca76d616b0d7a8767dfb71", |
| 47 | "type": "gitlab" | 57 | "type": "gitlab" |
| 48 | }, | 58 | }, |
| 49 | "original": { | 59 | "original": { |
| 50 | "owner": "gkleen", | 60 | "owner": "gkleen", |
| 51 | "ref": "v3.1.3", | 61 | "ref": "v3.1.5", |
| 52 | "repo": "ca", | 62 | "repo": "ca", |
| 53 | "type": "gitlab" | 63 | "type": "gitlab" |
| 54 | } | 64 | } |
| @@ -66,11 +76,11 @@ | |||
| 66 | ] | 76 | ] |
| 67 | }, | 77 | }, |
| 68 | "locked": { | 78 | "locked": { |
| 69 | "lastModified": 1727447169, | 79 | "lastModified": 1749105467, |
| 70 | "narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=", | 80 | "narHash": "sha256-hXh76y/wDl15almBcqvjryB50B0BaiXJKk20f314RoE=", |
| 71 | "owner": "serokell", | 81 | "owner": "serokell", |
| 72 | "repo": "deploy-rs", | 82 | "repo": "deploy-rs", |
| 73 | "rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76", | 83 | "rev": "6bc76b872374845ba9d645a2f012b764fecd765f", |
| 74 | "type": "github" | 84 | "type": "github" |
| 75 | }, | 85 | }, |
| 76 | "original": { | 86 | "original": { |
| @@ -343,16 +353,16 @@ | |||
| 343 | ] | 353 | ] |
| 344 | }, | 354 | }, |
| 345 | "locked": { | 355 | "locked": { |
| 346 | "lastModified": 1747139300, | 356 | "lastModified": 1749562430, |
| 347 | "narHash": "sha256-V+YnIIM2wMprHGgzOU0HzyeWQEjP6EhG8kc4IffWFeg=", | 357 | "narHash": "sha256-M5MqsIsf+o7yngakVUW4poBGZaghB6sUpw7SsWA55kU=", |
| 348 | "owner": "gkleen", | 358 | "owner": "gkleen", |
| 349 | "repo": "home-manager", | 359 | "repo": "home-manager", |
| 350 | "rev": "50182497604587a24bdbe97d6400b1696eac57b1", | 360 | "rev": "dca5a2df9f8a00cc34bea6ead249a8446f5f069e", |
| 351 | "type": "github" | 361 | "type": "github" |
| 352 | }, | 362 | }, |
| 353 | "original": { | 363 | "original": { |
| 354 | "owner": "gkleen", | 364 | "owner": "gkleen", |
| 355 | "ref": "nixos-late-start-23.11", | 365 | "ref": "nixos-late-start-25.05", |
| 356 | "repo": "home-manager", | 366 | "repo": "home-manager", |
| 357 | "type": "github" | 367 | "type": "github" |
| 358 | } | 368 | } |
| @@ -392,16 +402,16 @@ | |||
| 392 | "nixpkgs": [ | 402 | "nixpkgs": [ |
| 393 | "nixpkgs" | 403 | "nixpkgs" |
| 394 | ], | 404 | ], |
| 395 | "nixpkgs-stable": "nixpkgs-stable_2", | 405 | "nixpkgs-stable": "nixpkgs-stable_3", |
| 396 | "xwayland-satellite-stable": "xwayland-satellite-stable", | 406 | "xwayland-satellite-stable": "xwayland-satellite-stable", |
| 397 | "xwayland-satellite-unstable": "xwayland-satellite-unstable" | 407 | "xwayland-satellite-unstable": "xwayland-satellite-unstable" |
| 398 | }, | 408 | }, |
| 399 | "locked": { | 409 | "locked": { |
| 400 | "lastModified": 1747638609, | 410 | "lastModified": 1750471128, |
| 401 | "narHash": "sha256-rPTN667tMqC1IQYgsnotVfXbVNbOzScxn0ontMkkSPk=", | 411 | "narHash": "sha256-oR2yjhAPXZDmfFb4UwBeVQcJBtrUNFwufovzN8sTBVc=", |
| 402 | "owner": "sodiboo", | 412 | "owner": "sodiboo", |
| 403 | "repo": "niri-flake", | 413 | "repo": "niri-flake", |
| 404 | "rev": "af697f3a8665c8d0770485a2e659ddde88430e3b", | 414 | "rev": "13e7a34df7aa4e7d8ec4dd9df9d5a01973f28f49", |
| 405 | "type": "github" | 415 | "type": "github" |
| 406 | }, | 416 | }, |
| 407 | "original": { | 417 | "original": { |
| @@ -414,16 +424,16 @@ | |||
| 414 | "niri-stable": { | 424 | "niri-stable": { |
| 415 | "flake": false, | 425 | "flake": false, |
| 416 | "locked": { | 426 | "locked": { |
| 417 | "lastModified": 1740117926, | 427 | "lastModified": 1748151941, |
| 418 | "narHash": "sha256-mTTHA0RAaQcdYe+9A3Jx77cmmyLFHmRoZdd8RpWa+m8=", | 428 | "narHash": "sha256-z4viQZLgC2bIJ3VrzQnR+q2F3gAOEQpU1H5xHtX/2fs=", |
| 419 | "owner": "YaLTeR", | 429 | "owner": "YaLTeR", |
| 420 | "repo": "niri", | 430 | "repo": "niri", |
| 421 | "rev": "b94a5db8790339cf9134873d8b490be69e02ac71", | 431 | "rev": "8ba57fcf25d2fc9565131684a839d58703f1dae7", |
| 422 | "type": "github" | 432 | "type": "github" |
| 423 | }, | 433 | }, |
| 424 | "original": { | 434 | "original": { |
| 425 | "owner": "YaLTeR", | 435 | "owner": "YaLTeR", |
| 426 | "ref": "v25.02", | 436 | "ref": "v25.05.1", |
| 427 | "repo": "niri", | 437 | "repo": "niri", |
| 428 | "type": "github" | 438 | "type": "github" |
| 429 | } | 439 | } |
| @@ -431,11 +441,11 @@ | |||
| 431 | "niri-unstable": { | 441 | "niri-unstable": { |
| 432 | "flake": false, | 442 | "flake": false, |
| 433 | "locked": { | 443 | "locked": { |
| 434 | "lastModified": 1747635487, | 444 | "lastModified": 1750334747, |
| 435 | "narHash": "sha256-za7ctGh4MaW1h5Drm1WtwNZxiXvQK9yXZAeeIyY9b2Q=", | 445 | "narHash": "sha256-nsD1Z6vVP2Hhdgrd0uYHacre2+NhaH/53TFRXn6pRcs=", |
| 436 | "owner": "YaLTeR", | 446 | "owner": "YaLTeR", |
| 437 | "repo": "niri", | 447 | "repo": "niri", |
| 438 | "rev": "3f2b7e63ba15cf33475116d32e8b7d22208a8438", | 448 | "rev": "e0b0b04b445f7044f383e50104f861e632e1c905", |
| 439 | "type": "github" | 449 | "type": "github" |
| 440 | }, | 450 | }, |
| 441 | "original": { | 451 | "original": { |
| @@ -472,11 +482,11 @@ | |||
| 472 | ] | 482 | ] |
| 473 | }, | 483 | }, |
| 474 | "locked": { | 484 | "locked": { |
| 475 | "lastModified": 1747540584, | 485 | "lastModified": 1750565152, |
| 476 | "narHash": "sha256-cxCQ413JTUuRv9Ygd8DABJ1D6kuB/nTfQqC0Lu9C0ls=", | 486 | "narHash": "sha256-A6ZIoIgaPPkzIVxKuaxwEJicPOeTwC/MD9iuC3FVhDM=", |
| 477 | "owner": "Mic92", | 487 | "owner": "Mic92", |
| 478 | "repo": "nix-index-database", | 488 | "repo": "nix-index-database", |
| 479 | "rev": "ec179dd13fb7b4c6844f55be91436f7857226dce", | 489 | "rev": "78cd697acc2e492b4e92822a4913ffad279c20e6", |
| 480 | "type": "github" | 490 | "type": "github" |
| 481 | }, | 491 | }, |
| 482 | "original": { | 492 | "original": { |
| @@ -514,11 +524,11 @@ | |||
| 514 | ] | 524 | ] |
| 515 | }, | 525 | }, |
| 516 | "locked": { | 526 | "locked": { |
| 517 | "lastModified": 1747637556, | 527 | "lastModified": 1748140003, |
| 518 | "narHash": "sha256-AYd1nE+BLWTZS8J0eFQ7kuNiuE+XjhhndoXinj7en/M=", | 528 | "narHash": "sha256-DNBZmuk1YRM2PmwbHzVdXumRjCUzQkMarg4iI/37rOQ=", |
| 519 | "owner": "AshleyYakeley", | 529 | "owner": "AshleyYakeley", |
| 520 | "repo": "NixVirt", | 530 | "repo": "NixVirt", |
| 521 | "rev": "a7d3d3ae8b9a0cf3ec3cf504bb593df0618a6dbc", | 531 | "rev": "5dfe108fd859b122f9a96981cb6bc12297653d6c", |
| 522 | "type": "github" | 532 | "type": "github" |
| 523 | }, | 533 | }, |
| 524 | "original": { | 534 | "original": { |
| @@ -529,11 +539,11 @@ | |||
| 529 | }, | 539 | }, |
| 530 | "nixos-hardware": { | 540 | "nixos-hardware": { |
| 531 | "locked": { | 541 | "locked": { |
| 532 | "lastModified": 1747129300, | 542 | "lastModified": 1750431636, |
| 533 | "narHash": "sha256-L3clA5YGeYCF47ghsI7Tcex+DnaaN/BbQ4dR2wzoiKg=", | 543 | "narHash": "sha256-vnzzBDbCGvInmfn2ijC4HsIY/3W1CWbwS/YQoFgdgPg=", |
| 534 | "owner": "NixOS", | 544 | "owner": "NixOS", |
| 535 | "repo": "nixos-hardware", | 545 | "repo": "nixos-hardware", |
| 536 | "rev": "e81fd167b33121269149c57806599045fd33eeed", | 546 | "rev": "1552a9f4513f3f0ceedcf90320e48d3d47165712", |
| 537 | "type": "github" | 547 | "type": "github" |
| 538 | }, | 548 | }, |
| 539 | "original": { | 549 | "original": { |
| @@ -561,16 +571,16 @@ | |||
| 561 | }, | 571 | }, |
| 562 | "nixpkgs-eostre": { | 572 | "nixpkgs-eostre": { |
| 563 | "locked": { | 573 | "locked": { |
| 564 | "lastModified": 1701282334, | 574 | "lastModified": 1748026580, |
| 565 | "narHash": "sha256-MxCVrXY6v4QmfTwIysjjaX0XUhqBbxTWWB4HXtDYsdk=", | 575 | "narHash": "sha256-rWtXrcIzU5wm/C8F9LWvUfBGu5U5E7cFzPYT1pHIJaQ=", |
| 566 | "owner": "NixOS", | 576 | "owner": "NixOS", |
| 567 | "repo": "nixpkgs", | 577 | "repo": "nixpkgs", |
| 568 | "rev": "057f9aecfb71c4437d2b27d3323df7f93c010b7e", | 578 | "rev": "11cb3517b3af6af300dd6c055aeda73c9bf52c48", |
| 569 | "type": "github" | 579 | "type": "github" |
| 570 | }, | 580 | }, |
| 571 | "original": { | 581 | "original": { |
| 572 | "owner": "NixOS", | 582 | "owner": "NixOS", |
| 573 | "ref": "23.11", | 583 | "ref": "25.05", |
| 574 | "repo": "nixpkgs", | 584 | "repo": "nixpkgs", |
| 575 | "type": "github" | 585 | "type": "github" |
| 576 | } | 586 | } |
| @@ -651,38 +661,54 @@ | |||
| 651 | }, | 661 | }, |
| 652 | "nixpkgs-stable_2": { | 662 | "nixpkgs-stable_2": { |
| 653 | "locked": { | 663 | "locked": { |
| 654 | "lastModified": 1747485343, | 664 | "lastModified": 1735563628, |
| 655 | "narHash": "sha256-YbsZyuRE1tobO9sv0PUwg81QryYo3L1F3R3rF9bcG38=", | 665 | "narHash": "sha256-OnSAY7XDSx7CtDoqNh8jwVwh4xNL/2HaJxGjryLWzX8=", |
| 656 | "owner": "NixOS", | 666 | "owner": "NixOS", |
| 657 | "repo": "nixpkgs", | 667 | "repo": "nixpkgs", |
| 658 | "rev": "9b5ac7ad45298d58640540d0323ca217f32a6762", | 668 | "rev": "b134951a4c9f3c995fd7be05f3243f8ecd65d798", |
| 659 | "type": "github" | 669 | "type": "github" |
| 660 | }, | 670 | }, |
| 661 | "original": { | 671 | "original": { |
| 662 | "owner": "NixOS", | 672 | "owner": "NixOS", |
| 663 | "ref": "nixos-24.11", | 673 | "ref": "nixos-24.05", |
| 664 | "repo": "nixpkgs", | 674 | "repo": "nixpkgs", |
| 665 | "type": "github" | 675 | "type": "github" |
| 666 | } | 676 | } |
| 667 | }, | 677 | }, |
| 668 | "nixpkgs-stable_3": { | 678 | "nixpkgs-stable_3": { |
| 669 | "locked": { | 679 | "locked": { |
| 670 | "lastModified": 1717179513, | 680 | "lastModified": 1750400657, |
| 671 | "narHash": "sha256-vboIEwIQojofItm2xGCdZCzW96U85l9nDW3ifMuAIdM=", | 681 | "narHash": "sha256-3vkjFnxCOP6vm5Pm13wC/Zy6/VYgei/I/2DWgW4RFeA=", |
| 672 | "owner": "NixOS", | 682 | "owner": "NixOS", |
| 673 | "repo": "nixpkgs", | 683 | "repo": "nixpkgs", |
| 674 | "rev": "63dacb46bf939521bdc93981b4cbb7ecb58427a0", | 684 | "rev": "b2485d56967598da068b5a6946dadda8bfcbcd37", |
| 675 | "type": "github" | 685 | "type": "github" |
| 676 | }, | 686 | }, |
| 677 | "original": { | 687 | "original": { |
| 678 | "owner": "NixOS", | 688 | "owner": "NixOS", |
| 679 | "ref": "24.05", | 689 | "ref": "nixos-25.05", |
| 680 | "repo": "nixpkgs", | 690 | "repo": "nixpkgs", |
| 681 | "type": "github" | 691 | "type": "github" |
| 682 | } | 692 | } |
| 683 | }, | 693 | }, |
| 684 | "nixpkgs-stable_4": { | 694 | "nixpkgs-stable_4": { |
| 685 | "locked": { | 695 | "locked": { |
| 696 | "lastModified": 1748026580, | ||
| 697 | "narHash": "sha256-rWtXrcIzU5wm/C8F9LWvUfBGu5U5E7cFzPYT1pHIJaQ=", | ||
| 698 | "owner": "NixOS", | ||
| 699 | "repo": "nixpkgs", | ||
| 700 | "rev": "11cb3517b3af6af300dd6c055aeda73c9bf52c48", | ||
| 701 | "type": "github" | ||
| 702 | }, | ||
| 703 | "original": { | ||
| 704 | "owner": "NixOS", | ||
| 705 | "ref": "25.05", | ||
| 706 | "repo": "nixpkgs", | ||
| 707 | "type": "github" | ||
| 708 | } | ||
| 709 | }, | ||
| 710 | "nixpkgs-stable_5": { | ||
| 711 | "locked": { | ||
| 686 | "lastModified": 1678872516, | 712 | "lastModified": 1678872516, |
| 687 | "narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=", | 713 | "narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=", |
| 688 | "owner": "NixOS", | 714 | "owner": "NixOS", |
| @@ -699,11 +725,11 @@ | |||
| 699 | }, | 725 | }, |
| 700 | "nixpkgs_2": { | 726 | "nixpkgs_2": { |
| 701 | "locked": { | 727 | "locked": { |
| 702 | "lastModified": 1747542820, | 728 | "lastModified": 1750365781, |
| 703 | "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=", | 729 | "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", |
| 704 | "owner": "NixOS", | 730 | "owner": "NixOS", |
| 705 | "repo": "nixpkgs", | 731 | "repo": "nixpkgs", |
| 706 | "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043", | 732 | "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", |
| 707 | "type": "github" | 733 | "type": "github" |
| 708 | }, | 734 | }, |
| 709 | "original": { | 735 | "original": { |
| @@ -812,10 +838,7 @@ | |||
| 812 | "ca-util", | 838 | "ca-util", |
| 813 | "nixpkgs" | 839 | "nixpkgs" |
| 814 | ], | 840 | ], |
| 815 | "nixpkgs-stable": [ | 841 | "nixpkgs-stable": "nixpkgs-stable_2" |
| 816 | "ca-util", | ||
| 817 | "nixpkgs" | ||
| 818 | ] | ||
| 819 | }, | 842 | }, |
| 820 | "locked": { | 843 | "locked": { |
| 821 | "lastModified": 1734261738, | 844 | "lastModified": 1734261738, |
| @@ -837,7 +860,7 @@ | |||
| 837 | "flake-utils": "flake-utils_2", | 860 | "flake-utils": "flake-utils_2", |
| 838 | "gitignore": "gitignore_3", | 861 | "gitignore": "gitignore_3", |
| 839 | "nixpkgs": "nixpkgs_3", | 862 | "nixpkgs": "nixpkgs_3", |
| 840 | "nixpkgs-stable": "nixpkgs-stable_4" | 863 | "nixpkgs-stable": "nixpkgs-stable_5" |
| 841 | }, | 864 | }, |
| 842 | "locked": { | 865 | "locked": { |
| 843 | "lastModified": 1685361114, | 866 | "lastModified": 1685361114, |
| @@ -882,21 +905,50 @@ | |||
| 882 | "pyproject-build-systems": { | 905 | "pyproject-build-systems": { |
| 883 | "inputs": { | 906 | "inputs": { |
| 884 | "nixpkgs": [ | 907 | "nixpkgs": [ |
| 908 | "ca-util", | ||
| 885 | "nixpkgs" | 909 | "nixpkgs" |
| 886 | ], | 910 | ], |
| 887 | "pyproject-nix": [ | 911 | "pyproject-nix": [ |
| 912 | "ca-util", | ||
| 888 | "pyproject-nix" | 913 | "pyproject-nix" |
| 889 | ], | 914 | ], |
| 890 | "uv2nix": [ | 915 | "uv2nix": [ |
| 916 | "ca-util", | ||
| 891 | "uv2nix" | 917 | "uv2nix" |
| 892 | ] | 918 | ] |
| 893 | }, | 919 | }, |
| 894 | "locked": { | 920 | "locked": { |
| 895 | "lastModified": 1744599653, | 921 | "lastModified": 1749519371, |
| 896 | "narHash": "sha256-nysSwVVjG4hKoOjhjvE6U5lIKA8sEr1d1QzEfZsannU=", | 922 | "narHash": "sha256-UJONN7mA2stweZCoRcry2aa1XTTBL0AfUOY84Lmqhos=", |
| 897 | "owner": "pyproject-nix", | 923 | "owner": "pyproject-nix", |
| 898 | "repo": "build-system-pkgs", | 924 | "repo": "build-system-pkgs", |
| 899 | "rev": "7dba6dbc73120e15b558754c26024f6c93015dd7", | 925 | "rev": "7c06967eca687f3482624250428cc12f43c92523", |
| 926 | "type": "github" | ||
| 927 | }, | ||
| 928 | "original": { | ||
| 929 | "owner": "pyproject-nix", | ||
| 930 | "repo": "build-system-pkgs", | ||
| 931 | "type": "github" | ||
| 932 | } | ||
| 933 | }, | ||
| 934 | "pyproject-build-systems_2": { | ||
| 935 | "inputs": { | ||
| 936 | "nixpkgs": [ | ||
| 937 | "nixpkgs" | ||
| 938 | ], | ||
| 939 | "pyproject-nix": [ | ||
| 940 | "pyproject-nix" | ||
| 941 | ], | ||
| 942 | "uv2nix": [ | ||
| 943 | "uv2nix" | ||
| 944 | ] | ||
| 945 | }, | ||
| 946 | "locked": { | ||
| 947 | "lastModified": 1749519371, | ||
| 948 | "narHash": "sha256-UJONN7mA2stweZCoRcry2aa1XTTBL0AfUOY84Lmqhos=", | ||
| 949 | "owner": "pyproject-nix", | ||
| 950 | "repo": "build-system-pkgs", | ||
| 951 | "rev": "7c06967eca687f3482624250428cc12f43c92523", | ||
| 900 | "type": "github" | 952 | "type": "github" |
| 901 | }, | 953 | }, |
| 902 | "original": { | 954 | "original": { |
| @@ -912,11 +964,11 @@ | |||
| 912 | ] | 964 | ] |
| 913 | }, | 965 | }, |
| 914 | "locked": { | 966 | "locked": { |
| 915 | "lastModified": 1746540146, | 967 | "lastModified": 1750499893, |
| 916 | "narHash": "sha256-QxdHGNpbicIrw5t6U3x+ZxeY/7IEJ6lYbvsjXmcxFIM=", | 968 | "narHash": "sha256-ThKBd8XSvITAh2JqU7enOp8AfKeQgf9u7zYC41cnBE4=", |
| 917 | "owner": "pyproject-nix", | 969 | "owner": "pyproject-nix", |
| 918 | "repo": "pyproject.nix", | 970 | "repo": "pyproject.nix", |
| 919 | "rev": "e09c10c24ebb955125fda449939bfba664c467fd", | 971 | "rev": "e824458bd917b44bf4c38795dea2650336b2f55d", |
| 920 | "type": "github" | 972 | "type": "github" |
| 921 | }, | 973 | }, |
| 922 | "original": { | 974 | "original": { |
| @@ -944,11 +996,11 @@ | |||
| 944 | "nixpkgs": "nixpkgs_2", | 996 | "nixpkgs": "nixpkgs_2", |
| 945 | "nixpkgs-eostre": "nixpkgs-eostre", | 997 | "nixpkgs-eostre": "nixpkgs-eostre", |
| 946 | "nixpkgs-pgbackrest": "nixpkgs-pgbackrest", | 998 | "nixpkgs-pgbackrest": "nixpkgs-pgbackrest", |
| 947 | "nixpkgs-stable": "nixpkgs-stable_3", | 999 | "nixpkgs-stable": "nixpkgs-stable_4", |
| 948 | "nvfetcher": "nvfetcher", | 1000 | "nvfetcher": "nvfetcher", |
| 949 | "poetry2nix": "poetry2nix", | 1001 | "poetry2nix": "poetry2nix", |
| 950 | "prometheus-borg-exporter": "prometheus-borg-exporter", | 1002 | "prometheus-borg-exporter": "prometheus-borg-exporter", |
| 951 | "pyproject-build-systems": "pyproject-build-systems", | 1003 | "pyproject-build-systems": "pyproject-build-systems_2", |
| 952 | "pyproject-nix": "pyproject-nix", | 1004 | "pyproject-nix": "pyproject-nix", |
| 953 | "sops-nix": "sops-nix", | 1005 | "sops-nix": "sops-nix", |
| 954 | "uv2nix": "uv2nix", | 1006 | "uv2nix": "uv2nix", |
| @@ -962,11 +1014,11 @@ | |||
| 962 | ] | 1014 | ] |
| 963 | }, | 1015 | }, |
| 964 | "locked": { | 1016 | "locked": { |
| 965 | "lastModified": 1747603214, | 1017 | "lastModified": 1750119275, |
| 966 | "narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=", | 1018 | "narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=", |
| 967 | "owner": "Mic92", | 1019 | "owner": "Mic92", |
| 968 | "repo": "sops-nix", | 1020 | "repo": "sops-nix", |
| 969 | "rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd", | 1021 | "rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2", |
| 970 | "type": "github" | 1022 | "type": "github" |
| 971 | }, | 1023 | }, |
| 972 | "original": { | 1024 | "original": { |
| @@ -1037,11 +1089,11 @@ | |||
| 1037 | ] | 1089 | ] |
| 1038 | }, | 1090 | }, |
| 1039 | "locked": { | 1091 | "locked": { |
| 1040 | "lastModified": 1747441483, | 1092 | "lastModified": 1749778965, |
| 1041 | "narHash": "sha256-W8BFXk5R0TuJcjIhcGoMpSOaIufGXpizK0pm+uTqynA=", | 1093 | "narHash": "sha256-MDq5YPXq3VO7aGrIIz9IMexJcdRiLCcDK4Bk3Kev7Sw=", |
| 1042 | "owner": "pyproject-nix", | 1094 | "owner": "pyproject-nix", |
| 1043 | "repo": "uv2nix", | 1095 | "repo": "uv2nix", |
| 1044 | "rev": "582024dc64663e9f88d467c2f7f7b20d278349de", | 1096 | "rev": "22ddf88e3a06551b769f0a585601d89180c69a38", |
| 1045 | "type": "github" | 1097 | "type": "github" |
| 1046 | }, | 1098 | }, |
| 1047 | "original": { | 1099 | "original": { |
| @@ -1077,16 +1129,16 @@ | |||
| 1077 | "xwayland-satellite-stable": { | 1129 | "xwayland-satellite-stable": { |
| 1078 | "flake": false, | 1130 | "flake": false, |
| 1079 | "locked": { | 1131 | "locked": { |
| 1080 | "lastModified": 1739246919, | 1132 | "lastModified": 1748488455, |
| 1081 | "narHash": "sha256-/hBM43/Gd0/tW+egrhlWgOIISeJxEs2uAOIYVpfDKeU=", | 1133 | "narHash": "sha256-IiLr1alzKFIy5tGGpDlabQbe6LV1c9ABvkH6T5WmyRI=", |
| 1082 | "owner": "Supreeeme", | 1134 | "owner": "Supreeeme", |
| 1083 | "repo": "xwayland-satellite", | 1135 | "repo": "xwayland-satellite", |
| 1084 | "rev": "44590a416d4a3e8220e19e29e0b6efe64a80315d", | 1136 | "rev": "3ba30b149f9eb2bbf42cf4758d2158ca8cceef73", |
| 1085 | "type": "github" | 1137 | "type": "github" |
| 1086 | }, | 1138 | }, |
| 1087 | "original": { | 1139 | "original": { |
| 1088 | "owner": "Supreeeme", | 1140 | "owner": "Supreeeme", |
| 1089 | "ref": "v0.5.1", | 1141 | "ref": "v0.6", |
| 1090 | "repo": "xwayland-satellite", | 1142 | "repo": "xwayland-satellite", |
| 1091 | "type": "github" | 1143 | "type": "github" |
| 1092 | } | 1144 | } |
| @@ -1094,11 +1146,11 @@ | |||
| 1094 | "xwayland-satellite-unstable": { | 1146 | "xwayland-satellite-unstable": { |
| 1095 | "flake": false, | 1147 | "flake": false, |
| 1096 | "locked": { | 1148 | "locked": { |
| 1097 | "lastModified": 1747111562, | 1149 | "lastModified": 1750388715, |
| 1098 | "narHash": "sha256-GAqhWoxaBIk0tgoecZPa8gTHDHxNc0JtlwWHZN2iOOo=", | 1150 | "narHash": "sha256-6WMpcn3Ga/L71NiX9SdWw7ZELpNfrFnWJ0Gt2uAHjJg=", |
| 1099 | "owner": "Supreeeme", | 1151 | "owner": "Supreeeme", |
| 1100 | "repo": "xwayland-satellite", | 1152 | "repo": "xwayland-satellite", |
| 1101 | "rev": "ec9ff64c1e0cbec42710b580b7c0f759b1694e72", | 1153 | "rev": "03cbb2ee3a9da931bb9a39eb917674297a0b9318", |
| 1102 | "type": "github" | 1154 | "type": "github" |
| 1103 | }, | 1155 | }, |
| 1104 | "original": { | 1156 | "original": { |
| @@ -29,13 +29,13 @@ | |||
| 29 | type = "github"; | 29 | type = "github"; |
| 30 | owner = "NixOS"; | 30 | owner = "NixOS"; |
| 31 | repo = "nixpkgs"; | 31 | repo = "nixpkgs"; |
| 32 | ref = "24.05"; | 32 | ref = "25.05"; |
| 33 | }; | 33 | }; |
| 34 | nixpkgs-eostre = { | 34 | nixpkgs-eostre = { |
| 35 | type = "github"; | 35 | type = "github"; |
| 36 | owner = "NixOS"; | 36 | owner = "NixOS"; |
| 37 | repo = "nixpkgs"; | 37 | repo = "nixpkgs"; |
| 38 | ref = "23.11"; | 38 | ref = "25.05"; |
| 39 | }; | 39 | }; |
| 40 | home-manager = { | 40 | home-manager = { |
| 41 | type = "github"; | 41 | type = "github"; |
| @@ -53,7 +53,7 @@ | |||
| 53 | type = "github"; | 53 | type = "github"; |
| 54 | owner = "gkleen"; | 54 | owner = "gkleen"; |
| 55 | repo = "home-manager"; | 55 | repo = "home-manager"; |
| 56 | ref = "nixos-late-start-23.11"; | 56 | ref = "nixos-late-start-25.05"; |
| 57 | inputs = { | 57 | inputs = { |
| 58 | nixpkgs.follows = "nixpkgs-eostre"; | 58 | nixpkgs.follows = "nixpkgs-eostre"; |
| 59 | }; | 59 | }; |
| @@ -145,20 +145,23 @@ | |||
| 145 | type = "gitlab"; | 145 | type = "gitlab"; |
| 146 | owner = "gkleen"; | 146 | owner = "gkleen"; |
| 147 | repo = "ca"; | 147 | repo = "ca"; |
| 148 | ref = "v3.1.3"; | 148 | ref = "v3.1.5"; |
| 149 | inputs = { | 149 | inputs = { |
| 150 | pyproject-nix.follows = "pyproject-nix"; | ||
| 151 | uv2nix.follows = "uv2nix"; | ||
| 150 | nixpkgs.follows = "nixpkgs"; | 152 | nixpkgs.follows = "nixpkgs"; |
| 151 | poetry2nix.follows = "poetry2nix"; | ||
| 152 | }; | 153 | }; |
| 153 | }; | 154 | }; |
| 154 | backup-utils = { | 155 | backup-utils = { |
| 155 | type = "gitlab"; | 156 | type = "gitlab"; |
| 156 | owner = "gkleen"; | 157 | owner = "gkleen"; |
| 157 | repo = "backup-utils"; | 158 | repo = "backup-utils"; |
| 158 | ref = "v0.1.6"; | 159 | ref = "v0.1.7"; |
| 159 | inputs = { | 160 | inputs = { |
| 160 | nixpkgs.follows = "nixpkgs"; | 161 | nixpkgs.follows = "nixpkgs"; |
| 161 | poetry2nix.follows = "poetry2nix"; | 162 | pyproject-nix.follows = "pyproject-nix"; |
| 163 | uv2nix.follows = "uv2nix"; | ||
| 164 | pyproject-build-systems.follows = "pyproject-build-systems"; | ||
| 162 | }; | 165 | }; |
| 163 | }; | 166 | }; |
| 164 | prometheus-borg-exporter = { | 167 | prometheus-borg-exporter = { |
diff --git a/hosts/eostre/default.nix b/hosts/eostre/default.nix index fd4b15f2..d4113024 100644 --- a/hosts/eostre/default.nix +++ b/hosts/eostre/default.nix | |||
| @@ -37,14 +37,10 @@ with lib; | |||
| 37 | powerManagement.enable = true; | 37 | powerManagement.enable = true; |
| 38 | }; | 38 | }; |
| 39 | 39 | ||
| 40 | opengl.enable = true; | 40 | graphics.enable = true; |
| 41 | }; | 41 | }; |
| 42 | 42 | ||
| 43 | environment.etc."machine-id".text = "f457b21333f1491e916521151ff5d468"; | ||
| 44 | |||
| 45 | networking = { | 43 | networking = { |
| 46 | hostId = "f457b213"; | ||
| 47 | |||
| 48 | domain = "lan.yggdrasil"; | 44 | domain = "lan.yggdrasil"; |
| 49 | search = [ "lan.yggdrasil" "yggdrasil" ]; | 45 | search = [ "lan.yggdrasil" "yggdrasil" ]; |
| 50 | 46 | ||
| @@ -83,19 +79,14 @@ with lib; | |||
| 83 | ]; | 79 | ]; |
| 84 | }; | 80 | }; |
| 85 | 81 | ||
| 86 | 82 | services.displayManager.sddm = { | |
| 87 | services.xserver = { | ||
| 88 | enable = true; | 83 | enable = true; |
| 89 | displayManager.sddm = { | 84 | wayland.enable = true; |
| 90 | enable = true; | 85 | settings = { |
| 91 | settings = { | 86 | Users.HideUsers = "gkleen"; |
| 92 | Users.HideUsers = "gkleen"; | ||
| 93 | }; | ||
| 94 | }; | 87 | }; |
| 95 | desktopManager.plasma5.enable = true; | ||
| 96 | |||
| 97 | videoDrivers = [ "nvidia" ]; | ||
| 98 | }; | 88 | }; |
| 89 | services.desktopManager.plasma6.enable = true; | ||
| 99 | 90 | ||
| 100 | 91 | ||
| 101 | services.openssh = { | 92 | services.openssh = { |
diff --git a/hosts/sif/default.nix b/hosts/sif/default.nix index 6214569a..a57c454c 100644 --- a/hosts/sif/default.nix +++ b/hosts/sif/default.nix | |||
| @@ -60,7 +60,7 @@ in { | |||
| 60 | 60 | ||
| 61 | plymouth.enable = true; | 61 | plymouth.enable = true; |
| 62 | 62 | ||
| 63 | kernelPackages = pkgs.linuxPackages_latest; | 63 | kernel.llvm.kernel = pkgs.linuxKernel.kernels.linux_latest; |
| 64 | kernelPatches = [ | 64 | kernelPatches = [ |
| 65 | { name = "edac-config"; | 65 | { name = "edac-config"; |
| 66 | patch = null; | 66 | patch = null; |
diff --git a/hosts/surtr/default.nix b/hosts/surtr/default.nix index 9d3101c0..63beece3 100644 --- a/hosts/surtr/default.nix +++ b/hosts/surtr/default.nix | |||
| @@ -22,7 +22,6 @@ with lib; | |||
| 22 | device = "/dev/vda"; | 22 | device = "/dev/vda"; |
| 23 | }; | 23 | }; |
| 24 | 24 | ||
| 25 | |||
| 26 | tmp.useTmpfs = true; | 25 | tmp.useTmpfs = true; |
| 27 | 26 | ||
| 28 | zfs.devNodes = "/dev"; # /dev/vda2 does not show up in /dev/disk/by-id | 27 | zfs.devNodes = "/dev"; # /dev/vda2 does not show up in /dev/disk/by-id |
diff --git a/hosts/surtr/email/default.nix b/hosts/surtr/email/default.nix index c993bb18..58cb76d9 100644 --- a/hosts/surtr/email/default.nix +++ b/hosts/surtr/email/default.nix | |||
| @@ -355,7 +355,10 @@ in { | |||
| 355 | maxproc = 0; | 355 | maxproc = 0; |
| 356 | args = [ | 356 | args = [ |
| 357 | "-o" "header_checks=pcre:${pkgs.writeText "header_checks_submission" '' | 357 | "-o" "header_checks=pcre:${pkgs.writeText "header_checks_submission" '' |
| 358 | if /^Received: / | ||
| 359 | !/by surtr\.yggdrasil\.li/ STRIP | ||
| 358 | /^Received: from [^ ]+ \([^ ]+ [^ ]+\)\s+(.*)$/ REPLACE Received: $1 | 360 | /^Received: from [^ ]+ \([^ ]+ [^ ]+\)\s+(.*)$/ REPLACE Received: $1 |
| 361 | endif | ||
| 359 | ''}" | 362 | ''}" |
| 360 | ]; | 363 | ]; |
| 361 | }; | 364 | }; |
diff --git a/hosts/vidhar/default.nix b/hosts/vidhar/default.nix index 7da17e6f..547572c6 100644 --- a/hosts/vidhar/default.nix +++ b/hosts/vidhar/default.nix | |||
| @@ -136,7 +136,7 @@ with lib; | |||
| 136 | wantedBy = ["basic.target"]; | 136 | wantedBy = ["basic.target"]; |
| 137 | serviceConfig = { | 137 | serviceConfig = { |
| 138 | ExecStart = pkgs.writeShellScript "limit-pstate-start" '' | 138 | ExecStart = pkgs.writeShellScript "limit-pstate-start" '' |
| 139 | echo 50 > /sys/devices/system/cpu/intel_pstate/max_perf_pct | 139 | echo 40 > /sys/devices/system/cpu/intel_pstate/max_perf_pct |
| 140 | ''; | 140 | ''; |
| 141 | RemainAfterExit = true; | 141 | RemainAfterExit = true; |
| 142 | ExecStop = pkgs.writeShellScript "limit-pstate-stop" '' | 142 | ExecStop = pkgs.writeShellScript "limit-pstate-stop" '' |
diff --git a/lib/pythonSet.nix b/lib/pythonSet.nix index 9dfb25ff..c69216cc 100644 --- a/lib/pythonSet.nix +++ b/lib/pythonSet.nix | |||
| @@ -23,6 +23,20 @@ | |||
| 23 | (final.resolveBuildSystem { setuptools = []; }) | 23 | (final.resolveBuildSystem { setuptools = []; }) |
| 24 | ]; | 24 | ]; |
| 25 | }); | 25 | }); |
| 26 | halo = (prev.halo.override { | ||
| 27 | sourcePreference = "sdist"; | ||
| 28 | }).overrideAttrs (oldAttrs: { | ||
| 29 | nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [ | ||
| 30 | (final.resolveBuildSystem { setuptools = []; }) | ||
| 31 | ]; | ||
| 32 | }); | ||
| 33 | unshare = (prev.unshare.override { | ||
| 34 | sourcePreference = "sdist"; | ||
| 35 | }).overrideAttrs (oldAttrs: { | ||
| 36 | nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [ | ||
| 37 | (final.resolveBuildSystem { setuptools = []; }) | ||
| 38 | ]; | ||
| 39 | }); | ||
| 26 | }) | 40 | }) |
| 27 | ] | 41 | ] |
| 28 | ) | 42 | ) |
diff --git a/modules/borgcopy/.envrc b/modules/borgcopy/.envrc new file mode 100644 index 00000000..01e755c1 --- /dev/null +++ b/modules/borgcopy/.envrc | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | use flake | ||
| 2 | |||
| 3 | uv venv && uv sync | ||
| 4 | . .venv/bin/activate | ||
diff --git a/modules/borgcopy/.gitignore b/modules/borgcopy/.gitignore new file mode 100644 index 00000000..4ccfae70 --- /dev/null +++ b/modules/borgcopy/.gitignore | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | .venv | ||
| 2 | **/__pycache__ | ||
diff --git a/modules/borgcopy/default.nix b/modules/borgcopy/default.nix index 8e1afc27..af021777 100644 --- a/modules/borgcopy/default.nix +++ b/modules/borgcopy/default.nix | |||
| @@ -1,25 +1,32 @@ | |||
| 1 | { config, pkgs, lib, utils, flakeInputs, ... }: | 1 | { config, pkgs, lib, utils, flake, flakeInputs, ... }: |
| 2 | 2 | ||
| 3 | with lib; | 3 | with lib; |
| 4 | 4 | ||
| 5 | let | 5 | let |
| 6 | copyBorg = | 6 | copyBorg = let |
| 7 | with pkgs.poetry2nix; | 7 | workspace = flakeInputs.uv2nix.lib.workspace.loadWorkspace { workspaceRoot = ./.; }; |
| 8 | mkPoetryApplication { | 8 | pythonSet = flake.lib.pythonSet { |
| 9 | projectDir = cleanPythonSources { src = ./.; }; | 9 | inherit pkgs; |
| 10 | python = pkgs.python312; | ||
| 11 | overlay = workspace.mkPyprojectOverlay { | ||
| 12 | sourcePreference = "wheel"; | ||
| 13 | }; | ||
| 14 | }; | ||
| 15 | virtualEnv = pythonSet.mkVirtualEnv "copy_borg" workspace.deps.default; | ||
| 16 | in virtualEnv.overrideAttrs (oldAttrs: { | ||
| 17 | meta = (oldAttrs.meta or {}) // { | ||
| 18 | mainProgram = "copy_borg"; | ||
| 19 | }; | ||
| 10 | 20 | ||
| 11 | overrides = overrides.withDefaults (self: super: { | 21 | nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [ pkgs.makeWrapper ]; |
| 12 | pyprctl = super.pyprctl.overridePythonAttrs (oldAttrs: { | ||
| 13 | buildInputs = (oldAttrs.buildInputs or []) ++ [super.setuptools]; | ||
| 14 | }); | ||
| 15 | inherit (pkgs.python3Packages) python-unshare; | ||
| 16 | }); | ||
| 17 | 22 | ||
| 18 | postInstall = '' | 23 | postInstall = '' |
| 19 | wrapProgram $out/bin/copy_borg \ | 24 | ${oldAttrs.postInstall or ""} |
| 20 | --prefix PATH : ${makeBinPath (with pkgs; [util-linux borgbackup])}:${config.security.wrapperDir} | 25 | |
| 21 | ''; | 26 | wrapProgram $out/bin/copy_borg \ |
| 22 | }; | 27 | --prefix PATH : ${makeBinPath (with pkgs; [util-linux borgbackup])}:${config.security.wrapperDir} |
| 28 | ''; | ||
| 29 | }); | ||
| 23 | 30 | ||
| 24 | copyService = name: opts: nameValuePair "copy-borg@${utils.escapeSystemdPath name}" { | 31 | copyService = name: opts: nameValuePair "copy-borg@${utils.escapeSystemdPath name}" { |
| 25 | restartIfChanged = false; | 32 | restartIfChanged = false; |
diff --git a/modules/borgcopy/poetry.lock b/modules/borgcopy/poetry.lock deleted file mode 100644 index 759ecfe9..00000000 --- a/modules/borgcopy/poetry.lock +++ /dev/null | |||
| @@ -1,180 +0,0 @@ | |||
| 1 | # This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. | ||
| 2 | |||
| 3 | [[package]] | ||
| 4 | name = "colorama" | ||
| 5 | version = "0.4.6" | ||
| 6 | description = "Cross-platform colored terminal text." | ||
| 7 | category = "main" | ||
| 8 | optional = false | ||
| 9 | python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" | ||
| 10 | files = [ | ||
| 11 | {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, | ||
| 12 | {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, | ||
| 13 | ] | ||
| 14 | |||
| 15 | [[package]] | ||
| 16 | name = "halo" | ||
| 17 | version = "0.0.31" | ||
| 18 | description = "Beautiful terminal spinners in Python" | ||
| 19 | category = "main" | ||
| 20 | optional = false | ||
| 21 | python-versions = ">=3.4" | ||
| 22 | files = [ | ||
| 23 | {file = "halo-0.0.31-py2-none-any.whl", hash = "sha256:5350488fb7d2aa7c31a1344120cee67a872901ce8858f60da7946cef96c208ab"}, | ||
| 24 | {file = "halo-0.0.31.tar.gz", hash = "sha256:7b67a3521ee91d53b7152d4ee3452811e1d2a6321975137762eb3d70063cc9d6"}, | ||
| 25 | ] | ||
| 26 | |||
| 27 | [package.dependencies] | ||
| 28 | colorama = ">=0.3.9" | ||
| 29 | log-symbols = ">=0.0.14" | ||
| 30 | six = ">=1.12.0" | ||
| 31 | spinners = ">=0.0.24" | ||
| 32 | termcolor = ">=1.1.0" | ||
| 33 | |||
| 34 | [package.extras] | ||
| 35 | ipython = ["IPython (==5.7.0)", "ipywidgets (==7.1.0)"] | ||
| 36 | |||
| 37 | [[package]] | ||
| 38 | name = "humanize" | ||
| 39 | version = "4.6.0" | ||
| 40 | description = "Python humanize utilities" | ||
| 41 | category = "main" | ||
| 42 | optional = false | ||
| 43 | python-versions = ">=3.7" | ||
| 44 | files = [ | ||
| 45 | {file = "humanize-4.6.0-py3-none-any.whl", hash = "sha256:401201aca462749773f02920139f302450cb548b70489b9b4b92be39fe3c3c50"}, | ||
| 46 | {file = "humanize-4.6.0.tar.gz", hash = "sha256:5f1f22bc65911eb1a6ffe7659bd6598e33dcfeeb904eb16ee1e705a09bf75916"}, | ||
| 47 | ] | ||
| 48 | |||
| 49 | [package.extras] | ||
| 50 | tests = ["freezegun", "pytest", "pytest-cov"] | ||
| 51 | |||
| 52 | [[package]] | ||
| 53 | name = "log-symbols" | ||
| 54 | version = "0.0.14" | ||
| 55 | description = "Colored symbols for various log levels for Python" | ||
| 56 | category = "main" | ||
| 57 | optional = false | ||
| 58 | python-versions = "*" | ||
| 59 | files = [ | ||
| 60 | {file = "log_symbols-0.0.14-py3-none-any.whl", hash = "sha256:4952106ff8b605ab7d5081dd2c7e6ca7374584eff7086f499c06edd1ce56dcca"}, | ||
| 61 | {file = "log_symbols-0.0.14.tar.gz", hash = "sha256:cf0bbc6fe1a8e53f0d174a716bc625c4f87043cc21eb55dd8a740cfe22680556"}, | ||
| 62 | ] | ||
| 63 | |||
| 64 | [package.dependencies] | ||
| 65 | colorama = ">=0.3.9" | ||
| 66 | |||
| 67 | [[package]] | ||
| 68 | name = "pyprctl" | ||
| 69 | version = "0.1.3" | ||
| 70 | description = "An interface to Linux's prctl() syscall written in pure Python using ctypes." | ||
| 71 | category = "main" | ||
| 72 | optional = false | ||
| 73 | python-versions = ">=3.6" | ||
| 74 | files = [ | ||
| 75 | {file = "pyprctl-0.1.3-py3-none-any.whl", hash = "sha256:6302e5114f078fb33e5799835d0a69e2fc180bb6b28ad073515fa40c5272f1dd"}, | ||
| 76 | {file = "pyprctl-0.1.3.tar.gz", hash = "sha256:1fb54d3ab030ec02e4afc38fb9662d6634c12834e91ae7959de56a9c09f69c26"}, | ||
| 77 | ] | ||
| 78 | |||
| 79 | [[package]] | ||
| 80 | name = "python-dateutil" | ||
| 81 | version = "2.8.2" | ||
| 82 | description = "Extensions to the standard Python datetime module" | ||
| 83 | category = "main" | ||
| 84 | optional = false | ||
| 85 | python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" | ||
| 86 | files = [ | ||
| 87 | {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, | ||
| 88 | {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, | ||
| 89 | ] | ||
| 90 | |||
| 91 | [package.dependencies] | ||
| 92 | six = ">=1.5" | ||
| 93 | |||
| 94 | [[package]] | ||
| 95 | name = "python-unshare" | ||
| 96 | version = "0.2" | ||
| 97 | description = "Python bindings for the Linux unshare() syscall" | ||
| 98 | category = "main" | ||
| 99 | optional = false | ||
| 100 | python-versions = "*" | ||
| 101 | files = [ | ||
| 102 | {file = "python-unshare-0.2.tar.gz", hash = "sha256:f79b7de441b6c27930b775085a6a4fd2f378b628737aaaebc2a6c519023fd47a"}, | ||
| 103 | ] | ||
| 104 | |||
| 105 | [[package]] | ||
| 106 | name = "six" | ||
| 107 | version = "1.16.0" | ||
| 108 | description = "Python 2 and 3 compatibility utilities" | ||
| 109 | category = "main" | ||
| 110 | optional = false | ||
| 111 | python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" | ||
| 112 | files = [ | ||
| 113 | {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, | ||
| 114 | {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, | ||
| 115 | ] | ||
| 116 | |||
| 117 | [[package]] | ||
| 118 | name = "spinners" | ||
| 119 | version = "0.0.24" | ||
| 120 | description = "Spinners for terminals" | ||
| 121 | category = "main" | ||
| 122 | optional = false | ||
| 123 | python-versions = "*" | ||
| 124 | files = [ | ||
| 125 | {file = "spinners-0.0.24-py3-none-any.whl", hash = "sha256:2fa30d0b72c9650ad12bbe031c9943b8d441e41b4f5602b0ec977a19f3290e98"}, | ||
| 126 | {file = "spinners-0.0.24.tar.gz", hash = "sha256:1eb6aeb4781d72ab42ed8a01dcf20f3002bf50740d7154d12fb8c9769bf9e27f"}, | ||
| 127 | ] | ||
| 128 | |||
| 129 | [[package]] | ||
| 130 | name = "termcolor" | ||
| 131 | version = "2.2.0" | ||
| 132 | description = "ANSI color formatting for output in terminal" | ||
| 133 | category = "main" | ||
| 134 | optional = false | ||
| 135 | python-versions = ">=3.7" | ||
| 136 | files = [ | ||
| 137 | {file = "termcolor-2.2.0-py3-none-any.whl", hash = "sha256:91ddd848e7251200eac969846cbae2dacd7d71c2871e92733289e7e3666f48e7"}, | ||
| 138 | {file = "termcolor-2.2.0.tar.gz", hash = "sha256:dfc8ac3f350788f23b2947b3e6cfa5a53b630b612e6cd8965a015a776020b99a"}, | ||
| 139 | ] | ||
| 140 | |||
| 141 | [package.extras] | ||
| 142 | tests = ["pytest", "pytest-cov"] | ||
| 143 | |||
| 144 | [[package]] | ||
| 145 | name = "tqdm" | ||
| 146 | version = "4.65.0" | ||
| 147 | description = "Fast, Extensible Progress Meter" | ||
| 148 | category = "main" | ||
| 149 | optional = false | ||
| 150 | python-versions = ">=3.7" | ||
| 151 | files = [ | ||
| 152 | {file = "tqdm-4.65.0-py3-none-any.whl", hash = "sha256:c4f53a17fe37e132815abceec022631be8ffe1b9381c2e6e30aa70edc99e9671"}, | ||
| 153 | {file = "tqdm-4.65.0.tar.gz", hash = "sha256:1871fb68a86b8fb3b59ca4cdd3dcccbc7e6d613eeed31f4c332531977b89beb5"}, | ||
| 154 | ] | ||
| 155 | |||
| 156 | [package.dependencies] | ||
| 157 | colorama = {version = "*", markers = "platform_system == \"Windows\""} | ||
| 158 | |||
| 159 | [package.extras] | ||
| 160 | dev = ["py-make (>=0.1.0)", "twine", "wheel"] | ||
| 161 | notebook = ["ipywidgets (>=6)"] | ||
| 162 | slack = ["slack-sdk"] | ||
| 163 | telegram = ["requests"] | ||
| 164 | |||
| 165 | [[package]] | ||
| 166 | name = "xdg" | ||
| 167 | version = "6.0.0" | ||
| 168 | description = "Variables defined by the XDG Base Directory Specification" | ||
| 169 | category = "main" | ||
| 170 | optional = false | ||
| 171 | python-versions = ">=3.7,<4.0" | ||
| 172 | files = [ | ||
| 173 | {file = "xdg-6.0.0-py3-none-any.whl", hash = "sha256:df3510755b4395157fc04fc3b02467c777f3b3ca383257397f09ab0d4c16f936"}, | ||
| 174 | {file = "xdg-6.0.0.tar.gz", hash = "sha256:24278094f2d45e846d1eb28a2ebb92d7b67fc0cab5249ee3ce88c95f649a1c92"}, | ||
| 175 | ] | ||
| 176 | |||
| 177 | [metadata] | ||
| 178 | lock-version = "2.0" | ||
| 179 | python-versions = ">=3.10.0,<3.12" | ||
| 180 | content-hash = "3c6b538852447a8f3ae34e1be122716d47e669a2b44f7c5d3d850e5d877353c7" | ||
diff --git a/modules/borgcopy/pyproject.toml b/modules/borgcopy/pyproject.toml index f3401ed2..d76d73c6 100644 --- a/modules/borgcopy/pyproject.toml +++ b/modules/borgcopy/pyproject.toml | |||
| @@ -1,22 +1,25 @@ | |||
| 1 | [tool.poetry] | 1 | [project] |
| 2 | name = "copy_borg" | 2 | name = "copy_borg" |
| 3 | version = "0.0.0" | 3 | version = "0.0.0" |
| 4 | authors = ["Gregor Kleen <gkleen@yggdrasil.li>"] | ||
| 5 | description = "" | 4 | description = "" |
| 5 | authors = [{ name = "Gregor Kleen", email = "gkleen@yggdrasil.li" }] | ||
| 6 | requires-python = "~=3.12" | ||
| 7 | dependencies = [ | ||
| 8 | "humanize>=4.6.0,<5", | ||
| 9 | "tqdm>=4.65.0,<5", | ||
| 10 | "python-dateutil>=2.8.2,<3", | ||
| 11 | "xdg>=6.0.0,<7", | ||
| 12 | "pyprctl>=0.1.3,<0.2", | ||
| 13 | "halo>=0.0.31,<0.0.32", | ||
| 14 | "unshare>=0.22", | ||
| 15 | ] | ||
| 6 | 16 | ||
| 7 | [tool.poetry.scripts] | 17 | [project.scripts] |
| 8 | copy_borg = "copy_borg.__main__:main" | 18 | copy_borg = "copy_borg.__main__:main" |
| 9 | 19 | ||
| 10 | [tool.poetry.dependencies] | ||
| 11 | python = ">=3.10.0,<3.12" | ||
| 12 | humanize = "^4.6.0" | ||
| 13 | tqdm = "^4.65.0" | ||
| 14 | python-dateutil = "^2.8.2" | ||
| 15 | xdg = "^6.0.0" | ||
| 16 | python-unshare = "^0.2" | ||
| 17 | pyprctl = "^0.1.3" | ||
| 18 | halo = "^0.0.31" | ||
| 19 | |||
| 20 | [build-system] | 20 | [build-system] |
| 21 | requires = ["poetry-core>=1.0.0"] | 21 | requires = ["hatchling"] |
| 22 | build-backend = "poetry.core.masonry.api" \ No newline at end of file | 22 | build-backend = "hatchling.build" |
| 23 | |||
| 24 | [tool.hatch.build.targets.wheel] | ||
| 25 | packages = ["copy_borg"] | ||
diff --git a/modules/borgcopy/uv.lock b/modules/borgcopy/uv.lock new file mode 100644 index 00000000..1a282598 --- /dev/null +++ b/modules/borgcopy/uv.lock | |||
| @@ -0,0 +1,146 @@ | |||
| 1 | version = 1 | ||
| 2 | revision = 2 | ||
| 3 | requires-python = ">=3.12, <4" | ||
| 4 | |||
| 5 | [[package]] | ||
| 6 | name = "colorama" | ||
| 7 | version = "0.4.6" | ||
| 8 | source = { registry = "https://pypi.org/simple" } | ||
| 9 | sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" } | ||
| 10 | wheels = [ | ||
| 11 | { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, | ||
| 12 | ] | ||
| 13 | |||
| 14 | [[package]] | ||
| 15 | name = "copy-borg" | ||
| 16 | version = "0.0.0" | ||
| 17 | source = { editable = "." } | ||
| 18 | dependencies = [ | ||
| 19 | { name = "halo" }, | ||
| 20 | { name = "humanize" }, | ||
| 21 | { name = "pyprctl" }, | ||
| 22 | { name = "python-dateutil" }, | ||
| 23 | { name = "tqdm" }, | ||
| 24 | { name = "unshare" }, | ||
| 25 | { name = "xdg" }, | ||
| 26 | ] | ||
| 27 | |||
| 28 | [package.metadata] | ||
| 29 | requires-dist = [ | ||
| 30 | { name = "halo", specifier = ">=0.0.31,<0.0.32" }, | ||
| 31 | { name = "humanize", specifier = ">=4.6.0,<5" }, | ||
| 32 | { name = "pyprctl", specifier = ">=0.1.3,<0.2" }, | ||
| 33 | { name = "python-dateutil", specifier = ">=2.8.2,<3" }, | ||
| 34 | { name = "tqdm", specifier = ">=4.65.0,<5" }, | ||
| 35 | { name = "unshare", specifier = ">=0.22" }, | ||
| 36 | { name = "xdg", specifier = ">=6.0.0,<7" }, | ||
| 37 | ] | ||
| 38 | |||
| 39 | [[package]] | ||
| 40 | name = "halo" | ||
| 41 | version = "0.0.31" | ||
| 42 | source = { registry = "https://pypi.org/simple" } | ||
| 43 | dependencies = [ | ||
| 44 | { name = "colorama" }, | ||
| 45 | { name = "log-symbols" }, | ||
| 46 | { name = "six" }, | ||
| 47 | { name = "spinners" }, | ||
| 48 | { name = "termcolor" }, | ||
| 49 | ] | ||
| 50 | sdist = { url = "https://files.pythonhosted.org/packages/ee/48/d53580d30b1fabf25d0d1fcc3f5b26d08d2ac75a1890ff6d262f9f027436/halo-0.0.31.tar.gz", hash = "sha256:7b67a3521ee91d53b7152d4ee3452811e1d2a6321975137762eb3d70063cc9d6", size = 11666, upload-time = "2020-11-10T02:36:48.335Z" } | ||
| 51 | |||
| 52 | [[package]] | ||
| 53 | name = "humanize" | ||
| 54 | version = "4.12.3" | ||
| 55 | source = { registry = "https://pypi.org/simple" } | ||
| 56 | sdist = { url = "https://files.pythonhosted.org/packages/22/d1/bbc4d251187a43f69844f7fd8941426549bbe4723e8ff0a7441796b0789f/humanize-4.12.3.tar.gz", hash = "sha256:8430be3a615106fdfceb0b2c1b41c4c98c6b0fc5cc59663a5539b111dd325fb0", size = 80514, upload-time = "2025-04-30T11:51:07.98Z" } | ||
| 57 | wheels = [ | ||
| 58 | { url = "https://files.pythonhosted.org/packages/a0/1e/62a2ec3104394a2975a2629eec89276ede9dbe717092f6966fcf963e1bf0/humanize-4.12.3-py3-none-any.whl", hash = "sha256:2cbf6370af06568fa6d2da77c86edb7886f3160ecd19ee1ffef07979efc597f6", size = 128487, upload-time = "2025-04-30T11:51:06.468Z" }, | ||
| 59 | ] | ||
| 60 | |||
| 61 | [[package]] | ||
| 62 | name = "log-symbols" | ||
| 63 | version = "0.0.14" | ||
| 64 | source = { registry = "https://pypi.org/simple" } | ||
| 65 | dependencies = [ | ||
| 66 | { name = "colorama" }, | ||
| 67 | ] | ||
| 68 | sdist = { url = "https://files.pythonhosted.org/packages/45/87/e86645d758a4401c8c81914b6a88470634d1785c9ad09823fa4a1bd89250/log_symbols-0.0.14.tar.gz", hash = "sha256:cf0bbc6fe1a8e53f0d174a716bc625c4f87043cc21eb55dd8a740cfe22680556", size = 3211, upload-time = "2019-08-08T06:32:22.538Z" } | ||
| 69 | wheels = [ | ||
| 70 | { url = "https://files.pythonhosted.org/packages/28/5d/d710c38be68b0fb54e645048fe359c3904cc3cb64b2de9d40e1712bf110c/log_symbols-0.0.14-py3-none-any.whl", hash = "sha256:4952106ff8b605ab7d5081dd2c7e6ca7374584eff7086f499c06edd1ce56dcca", size = 3081, upload-time = "2019-08-08T06:32:20.604Z" }, | ||
| 71 | ] | ||
| 72 | |||
| 73 | [[package]] | ||
| 74 | name = "pyprctl" | ||
| 75 | version = "0.1.3" | ||
| 76 | source = { registry = "https://pypi.org/simple" } | ||
| 77 | sdist = { url = "https://files.pythonhosted.org/packages/c9/16/6ed71ebcad76c1cd5f22185bcc6b31c0ee62fc5e693b626febea8fedeba3/pyprctl-0.1.3.tar.gz", hash = "sha256:1fb54d3ab030ec02e4afc38fb9662d6634c12834e91ae7959de56a9c09f69c26", size = 18739, upload-time = "2021-10-26T23:52:03.87Z" } | ||
| 78 | wheels = [ | ||
| 79 | { url = "https://files.pythonhosted.org/packages/bf/5e/62765de39bbce8111fb1f4453a4a804913bf49179fa265fb713ed66c9d15/pyprctl-0.1.3-py3-none-any.whl", hash = "sha256:6302e5114f078fb33e5799835d0a69e2fc180bb6b28ad073515fa40c5272f1dd", size = 20016, upload-time = "2021-10-26T23:52:02.986Z" }, | ||
| 80 | ] | ||
| 81 | |||
| 82 | [[package]] | ||
| 83 | name = "python-dateutil" | ||
| 84 | version = "2.9.0.post0" | ||
| 85 | source = { registry = "https://pypi.org/simple" } | ||
| 86 | dependencies = [ | ||
| 87 | { name = "six" }, | ||
| 88 | ] | ||
| 89 | sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" } | ||
| 90 | wheels = [ | ||
| 91 | { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" }, | ||
| 92 | ] | ||
| 93 | |||
| 94 | [[package]] | ||
| 95 | name = "six" | ||
| 96 | version = "1.17.0" | ||
| 97 | source = { registry = "https://pypi.org/simple" } | ||
| 98 | sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" } | ||
| 99 | wheels = [ | ||
| 100 | { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" }, | ||
| 101 | ] | ||
| 102 | |||
| 103 | [[package]] | ||
| 104 | name = "spinners" | ||
| 105 | version = "0.0.24" | ||
| 106 | source = { registry = "https://pypi.org/simple" } | ||
| 107 | sdist = { url = "https://files.pythonhosted.org/packages/d3/91/bb331f0a43e04d950a710f402a0986a54147a35818df0e1658551c8d12e1/spinners-0.0.24.tar.gz", hash = "sha256:1eb6aeb4781d72ab42ed8a01dcf20f3002bf50740d7154d12fb8c9769bf9e27f", size = 5308, upload-time = "2020-02-19T21:42:32.326Z" } | ||
| 108 | wheels = [ | ||
| 109 | { url = "https://files.pythonhosted.org/packages/9f/8e/3310207a68118000ca27ac878b8386123628b335ecb3d4bec4743357f0d1/spinners-0.0.24-py3-none-any.whl", hash = "sha256:2fa30d0b72c9650ad12bbe031c9943b8d441e41b4f5602b0ec977a19f3290e98", size = 5499, upload-time = "2020-02-19T21:42:30.876Z" }, | ||
| 110 | ] | ||
| 111 | |||
| 112 | [[package]] | ||
| 113 | name = "termcolor" | ||
| 114 | version = "3.1.0" | ||
| 115 | source = { registry = "https://pypi.org/simple" } | ||
| 116 | sdist = { url = "https://files.pythonhosted.org/packages/ca/6c/3d75c196ac07ac8749600b60b03f4f6094d54e132c4d94ebac6ee0e0add0/termcolor-3.1.0.tar.gz", hash = "sha256:6a6dd7fbee581909eeec6a756cff1d7f7c376063b14e4a298dc4980309e55970", size = 14324, upload-time = "2025-04-30T11:37:53.791Z" } | ||
| 117 | wheels = [ | ||
| 118 | { url = "https://files.pythonhosted.org/packages/4f/bd/de8d508070629b6d84a30d01d57e4a65c69aa7f5abe7560b8fad3b50ea59/termcolor-3.1.0-py3-none-any.whl", hash = "sha256:591dd26b5c2ce03b9e43f391264626557873ce1d379019786f99b0c2bee140aa", size = 7684, upload-time = "2025-04-30T11:37:52.382Z" }, | ||
| 119 | ] | ||
| 120 | |||
| 121 | [[package]] | ||
| 122 | name = "tqdm" | ||
| 123 | version = "4.67.1" | ||
| 124 | source = { registry = "https://pypi.org/simple" } | ||
| 125 | dependencies = [ | ||
| 126 | { name = "colorama", marker = "sys_platform == 'win32'" }, | ||
| 127 | ] | ||
| 128 | sdist = { url = "https://files.pythonhosted.org/packages/a8/4b/29b4ef32e036bb34e4ab51796dd745cdba7ed47ad142a9f4a1eb8e0c744d/tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2", size = 169737, upload-time = "2024-11-24T20:12:22.481Z" } | ||
| 129 | wheels = [ | ||
| 130 | { url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", size = 78540, upload-time = "2024-11-24T20:12:19.698Z" }, | ||
| 131 | ] | ||
| 132 | |||
| 133 | [[package]] | ||
| 134 | name = "unshare" | ||
| 135 | version = "0.22" | ||
| 136 | source = { registry = "https://pypi.org/simple" } | ||
| 137 | sdist = { url = "https://files.pythonhosted.org/packages/15/85/2ba218129c95b894efe87506489b525f859c40f6e21cb0521ff3cec754f4/unshare-0.22.tar.gz", hash = "sha256:d521d72cca6e876f22cbd5ff5eb51f1beef75e8f9c53b599b55fa05fba1dd3a6", size = 2041, upload-time = "2019-10-17T12:58:31.498Z" } | ||
| 138 | |||
| 139 | [[package]] | ||
| 140 | name = "xdg" | ||
| 141 | version = "6.0.0" | ||
| 142 | source = { registry = "https://pypi.org/simple" } | ||
| 143 | sdist = { url = "https://files.pythonhosted.org/packages/2a/b9/0e6e6f19fb75cf5e1758f4f33c1256738f718966700cffc0fde2f966218b/xdg-6.0.0.tar.gz", hash = "sha256:24278094f2d45e846d1eb28a2ebb92d7b67fc0cab5249ee3ce88c95f649a1c92", size = 3453, upload-time = "2023-02-27T19:27:44.309Z" } | ||
| 144 | wheels = [ | ||
| 145 | { url = "https://files.pythonhosted.org/packages/dd/54/3516c1cf349060fc3578686d271eba242f10ec00b4530c2985af9faac49b/xdg-6.0.0-py3-none-any.whl", hash = "sha256:df3510755b4395157fc04fc3b02467c777f3b3ca383257397f09ab0d4c16f936", size = 3855, upload-time = "2023-02-27T19:27:42.151Z" }, | ||
| 146 | ] | ||
diff --git a/modules/llvm_kernel.nix b/modules/llvm_kernel.nix new file mode 100644 index 00000000..71d96320 --- /dev/null +++ b/modules/llvm_kernel.nix | |||
| @@ -0,0 +1,59 @@ | |||
| 1 | { config, pkgs, lib, ... }: | ||
| 2 | let | ||
| 3 | cfg = config.boot.kernel.llvm; | ||
| 4 | in { | ||
| 5 | options = { | ||
| 6 | boot.kernel.llvm = { | ||
| 7 | enable = lib.mkEnableOption "building linux kernel with clang/LLVM" // { | ||
| 8 | default = true; | ||
| 9 | }; | ||
| 10 | |||
| 11 | kernel = lib.mkPackageOption pkgs [ "linuxKernel" "kernels" "linux_default" ] {}; | ||
| 12 | }; | ||
| 13 | }; | ||
| 14 | |||
| 15 | config = lib.mkIf cfg.enable { | ||
| 16 | boot.kernelPackages = | ||
| 17 | with pkgs; # Cut down on repeated `pkgs.` declarations | ||
| 18 | let | ||
| 19 | # Choose whichever LLVM version you please. `llvmPackages` is the | ||
| 20 | # default version, `llvmPackages_latest` is the latest (at the time of | ||
| 21 | # writing, LLVM 17.0.6 and 18.1.8 respectively). | ||
| 22 | llvm = llvmPackages_latest; | ||
| 23 | # Same deal as LLVM; choose whichever kernel version you like. | ||
| 24 | # `linux` is the latest LTS, `linux_latest` is the latest stable. | ||
| 25 | inherit (cfg) kernel; | ||
| 26 | in | ||
| 27 | # Generate kernel modules for our custom kernel. | ||
| 28 | linuxPackagesFor ( | ||
| 29 | # Override our chosen kernel version with our custom settings. | ||
| 30 | (kernel.override { | ||
| 31 | # Set our chosen version of LLVM as our standard environment. | ||
| 32 | stdenv = overrideCC llvm.stdenv ( | ||
| 33 | # Tell our C compiler (Clang) to use LLVM bintools--normally GNU | ||
| 34 | # binutils are used even with Clang as the compiler. | ||
| 35 | llvm.stdenv.cc.override { | ||
| 36 | bintools = llvm.bintools; | ||
| 37 | } | ||
| 38 | ); | ||
| 39 | |||
| 40 | # Tell Linux that we're compiling with Clang and LLVM. | ||
| 41 | extraMakeFlags = [ "LLVM=1" ]; | ||
| 42 | |||
| 43 | # If you'd like to edit your kernel configuration, use | ||
| 44 | # `structuredExtraConfig`. For example, some options available to us | ||
| 45 | # when compiling with Clang and linking with LLD: | ||
| 46 | structuredExtraConfig = { | ||
| 47 | CFI_CLANG = lib.kernel.yes; | ||
| 48 | # LTO_CLANG_THIN = lib.kernel.yes; | ||
| 49 | }; | ||
| 50 | } | ||
| 51 | ).overrideAttrs | ||
| 52 | # Work around another NixOS specific issue where builds with WERROR=y | ||
| 53 | # are stopped by a benign error. See reference 1 below for details. | ||
| 54 | # Technically, this fix is only necessary with WERROR=y but the issue | ||
| 55 | # still causes a warning on builds where WERROR is unset. | ||
| 56 | { env.NIX_CFLAGS_COMPILE = "-Wno-unused-command-line-argument"; } | ||
| 57 | ); | ||
| 58 | }; | ||
| 59 | } | ||
diff --git a/overlays/prometheus-lvm-exporter.nix b/overlays/prometheus-lvm-exporter.nix index 240f8d85..b0230b63 100644 --- a/overlays/prometheus-lvm-exporter.nix +++ b/overlays/prometheus-lvm-exporter.nix | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | pname = "prometheus-lvm-exporter"; | 3 | pname = "prometheus-lvm-exporter"; |
| 4 | inherit (sources.prometheus-lvm-exporter) version src; | 4 | inherit (sources.prometheus-lvm-exporter) version src; |
| 5 | 5 | ||
| 6 | vendorHash = "sha256-z/fV0PzoWSDTJ44En19o7zJPPPox5ymFw7sw0Ab9t00="; | 6 | vendorHash = "sha256-5H99RpUV3QV1hithBN7ztJlZdBi+SlaKegga8jDs0AM="; |
| 7 | 7 | ||
| 8 | doCheck = false; | 8 | doCheck = false; |
| 9 | 9 | ||
diff --git a/system-profiles/core/default.nix b/system-profiles/core/default.nix index 229a007e..e5f9dc16 100644 --- a/system-profiles/core/default.nix +++ b/system-profiles/core/default.nix | |||
| @@ -180,13 +180,7 @@ in { | |||
| 180 | }; | 180 | }; |
| 181 | environment.systemPackages = with pkgs; [ git-annex scutiger ]; | 181 | environment.systemPackages = with pkgs; [ git-annex scutiger ]; |
| 182 | } | 182 | } |
| 183 | ] ++ (optional (options ? system.switch.enableNg) { | 183 | ] ++ (optional (options ? system.rebuild.enableNg) { |
| 184 | system.switch = lib.mkDefault { | ||
| 185 | enable = false; | ||
| 186 | enableNg = true; | ||
| 187 | }; | ||
| 188 | }) | ||
| 189 | ++ (optional (options ? system.rebuild.enableNg) { | ||
| 190 | system.rebuild.enableNg = lib.mkDefault true; | 184 | system.rebuild.enableNg = lib.mkDefault true; |
| 191 | }) | 185 | }) |
| 192 | ++ (optional (options ? services.userborn) { | 186 | ++ (optional (options ? services.userborn) { |
diff --git a/system-profiles/nfsroot.nix b/system-profiles/nfsroot.nix index b0116d61..12d5d2b4 100644 --- a/system-profiles/nfsroot.nix +++ b/system-profiles/nfsroot.nix | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | { config, options, pkgs, lib, flake, flakeInputs, ... }: | 1 | { config, options, pkgs, lib, flake, ... }: |
| 2 | 2 | ||
| 3 | with lib; | 3 | with lib; |
| 4 | 4 | ||
diff --git a/system-profiles/zfs.nix b/system-profiles/zfs.nix index a93dddd2..f3147f9e 100644 --- a/system-profiles/zfs.nix +++ b/system-profiles/zfs.nix | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | { pkgs, lib, ... } : { | 1 | { config, pkgs, lib, ... } : { |
| 2 | config = { | 2 | config = { |
| 3 | boot = { | 3 | boot = { |
| 4 | kernelPackages = pkgs.linuxPackages_6_12; | 4 | kernelPackages = lib.mkIf (!config.boot.kernel.llvm.enable) pkgs.linuxPackages_6_12; |
| 5 | kernel.llvm.kernel = lib.mkIf config.boot.kernel.llvm.enable pkgs.linux_6_12; | ||
| 5 | zfs.package = pkgs.zfs_2_3; | 6 | zfs.package = pkgs.zfs_2_3; |
| 6 | 7 | ||
| 7 | supportedFilesystems.zfs = true; | 8 | supportedFilesystems.zfs = true; |
diff --git a/user-profiles/yt-dlp.nix b/user-profiles/yt-dlp.nix index ef0be87e..5c9858a6 100644 --- a/user-profiles/yt-dlp.nix +++ b/user-profiles/yt-dlp.nix | |||
| @@ -13,11 +13,12 @@ | |||
| 13 | "best" | 13 | "best" |
| 14 | ]; | 14 | ]; |
| 15 | embed-subs = true; | 15 | embed-subs = true; |
| 16 | embed-thumbnail = true; | ||
| 17 | embed-metadata = true; | ||
| 16 | # write-subs = true; | 18 | # write-subs = true; |
| 17 | write-auto-subs = true; | 19 | write-auto-subs = true; |
| 18 | sub-langs = "en(-(gb|us|orig))?,de(-(de|orig))?,-live_chat,-rechat"; | 20 | sub-langs = "en(-(gb|us|orig))?,de(-(de|orig))?,-live_chat,-rechat"; |
| 19 | prefer-free-formats = true; | 21 | prefer-free-formats = true; |
| 20 | embed-metadata = true; | ||
| 21 | # downloader = "${pkgs.axel}/bin/axel"; | 22 | # downloader = "${pkgs.axel}/bin/axel"; |
| 22 | concurrent-fragments = 12; | 23 | concurrent-fragments = 12; |
| 23 | buffer-size = "16K"; | 24 | buffer-size = "16K"; |
| @@ -29,6 +30,7 @@ | |||
| 29 | # ]; | 30 | # ]; |
| 30 | remux-video = "mp4>mkv"; | 31 | remux-video = "mp4>mkv"; |
| 31 | output = lib.mkDefault "\"%(modified_date>%Y%m%d,release_date>%Y%m%d,upload_date>%Y%m%d)s %(title)s [%(uploader)s %(webpage_url)s].%(ext)s\""; | 32 | output = lib.mkDefault "\"%(modified_date>%Y%m%d,release_date>%Y%m%d,upload_date>%Y%m%d)s %(title)s [%(uploader)s %(webpage_url)s].%(ext)s\""; |
| 33 | audio-multistreams = true; | ||
| 32 | }; | 34 | }; |
| 33 | }; | 35 | }; |
| 34 | }; | 36 | }; |
