From d31502f1da1dc8e8724dd8787e34596732c6ef3f Mon Sep 17 00:00:00 2001 From: matt1432 Date: Mon, 22 Apr 2024 13:51:31 -0400 Subject: [PATCH] feat(bin-cache): nixci -> nix-fast-build --- common/home/neovim/default.nix | 14 +-- .../arion/media/radarr/images/radarr.nix | 4 +- devices/servivi/modules/binary-cache.nix | 14 ++- flake.lock | 112 +++++++++--------- flake.nix | 25 +++- updateSha.sh | 4 +- 6 files changed, 97 insertions(+), 76 deletions(-) diff --git a/common/home/neovim/default.nix b/common/home/neovim/default.nix index b76d339..402bfd4 100644 --- a/common/home/neovim/default.nix +++ b/common/home/neovim/default.nix @@ -43,8 +43,14 @@ in { text = "alejandra \"$@\""; }) ]; + }; - file."${flakeDir}/.nixd.json".text = builtins.toJSON { + xdg.dataFile = optionalAttrs neovimIde { + ".gradle/gradle.properties".text = '' + org.gradle.java.home = ${javaSdk} + ''; + + "${flakeDir}/.nixd.json".text = builtins.toJSON { nixpkgs = { expr = "import (builtins.getFlake \"${flakeDir}\").inputs.nixpkgs {}"; }; @@ -54,12 +60,6 @@ in { }; }; - xdg.dataFile = optionalAttrs neovimIde { - ".gradle/gradle.properties".text = '' - org.gradle.java.home = ${javaSdk} - ''; - }; - programs = { java = optionalAttrs neovimIde { enable = true; diff --git a/devices/nos/modules/arion/media/radarr/images/radarr.nix b/devices/nos/modules/arion/media/radarr/images/radarr.nix index b2663ce..cbd7637 100644 --- a/devices/nos/modules/arion/media/radarr/images/radarr.nix +++ b/devices/nos/modules/arion/media/radarr/images/radarr.nix @@ -1,8 +1,8 @@ pkgs: pkgs.dockerTools.pullImage { imageName = "ghcr.io/linuxserver/radarr"; - imageDigest = "sha256:de7e51182113b430d9b6cb93ebc3389e1c73f11e7eabf47d0af5de106cdc296a"; - sha256 = "10vhh5alacsifsskh2ylgam06h2i695ggav19w1ksa60szmh5wfa"; + imageDigest = "sha256:e6bccb9bd69f3dba111716c6789152d5577217adc27f8f96642e511defaefbb6"; + sha256 = "1j5svym7s6b83w6pf12bm0fa3vx10hx47hhfk9ywvji1nz4zj429"; finalImageName = "ghcr.io/linuxserver/radarr"; finalImageTag = "latest"; } diff --git a/devices/servivi/modules/binary-cache.nix b/devices/servivi/modules/binary-cache.nix index c03f5e9..379c850 100644 --- a/devices/servivi/modules/binary-cache.nix +++ b/devices/servivi/modules/binary-cache.nix @@ -5,14 +5,19 @@ }: let inherit (config.vars) mainUser; inherit (config.sops) secrets; + + nix-fast-buildPkg = pkgs.writeShellApplication { + name = "nix-fast-build"; + text = "nix run github:Mic92/nix-fast-build \"$@\""; + }; in { services.nix-serve = { enable = true; secretKeyFile = secrets.binary-cache-key.path; }; - environment.systemPackages = with pkgs; [ - nixci + environment.systemPackages = [ + nix-fast-buildPkg ]; # Populate cache @@ -27,7 +32,7 @@ in { path = with pkgs; [ git nix - nixci + nix-fast-buildPkg openssh ]; @@ -38,8 +43,7 @@ in { fi git clone https://git.nelim.org/matt1432/nixos-configs.git nix-clone cd nix-clone - nix flake update - nixci . + nix-fast-build cd .. rm -r nix-clone ''; diff --git a/flake.lock b/flake.lock index 629f92e..51cffc9 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1713562431, - "narHash": "sha256-3UsetHvJmz5C3zDpkjKN98e5zdU3NIUTJkxdygB0sjM=", + "lastModified": 1713738762, + "narHash": "sha256-wXMqOQosjblsdV3x0DzpH7qSBUs5hT5Ca6eZ2Xp8TOA=", "owner": "KZDKM", "repo": "Hyprspace", - "rev": "98c88f6605285b8c6283116331d04b6eddc96b86", + "rev": "de3b1ccbf30498b6fcd42b36418e33a2c8c1405a", "type": "github" }, "original": { @@ -50,11 +50,11 @@ ] }, "locked": { - "lastModified": 1712285456, - "narHash": "sha256-A4EBTlFfeosNaO8zpN7rlWTgF9AHy755NxKBvhJ1b0w=", + "lastModified": 1713728172, + "narHash": "sha256-rac5WwUyZGxVqcNh2PIOxXJFGPXBSFPfkox1AdqwVgk=", "owner": "hercules-ci", "repo": "arion", - "rev": "1886d25075aaf24c8bc687b3d2a87ae1f5d154ec", + "rev": "add0e67d2b83814667490985ea4ef1226d3b4511", "type": "github" }, "original": { @@ -106,11 +106,11 @@ ] }, "locked": { - "lastModified": 1713596760, - "narHash": "sha256-2fYXawchIj8BaKTi4dvAXInbFHsXzjnQGR0lDznHXeY=", + "lastModified": 1713683143, + "narHash": "sha256-V7c48icbfQgyfhyqOAEM/uKrygGsnkO5oeJb5X3WhjM=", "owner": "matt1432", "repo": "nixos-caddy-cloudflare", - "rev": "25bfad1a006936721ba27ca62a2eb67ebdaa6af5", + "rev": "69580086f6dec14e30807290d72939ad4121e1b8", "type": "github" }, "original": { @@ -393,11 +393,11 @@ "gpu-screen-recorder-src": { "flake": false, "locked": { - "lastModified": 1713372257, - "narHash": "sha256-70gcnqTze2/ztbbaI/qFJKS1igUcqFMN1uxHiNUpdes=", + "lastModified": 1713775311, + "narHash": "sha256-DXBbUBkaTjTSCTvrM8VqX/HVr4cgj0mog7FEQ55HRXY=", "ref": "refs/heads/master", - "rev": "b1cc1ee09afb8612b67f939ec7c40ac59522ead2", - "revCount": 571, + "rev": "984d10caff805ebd2018e699e5f41e634aa7dd16", + "revCount": 572, "type": "git", "url": "https://repo.dec05eba.com/gpu-screen-recorder" }, @@ -413,11 +413,11 @@ ] }, "locked": { - "lastModified": 1712778835, - "narHash": "sha256-SHKAYmdev08oRB/V6UpfSFqYwplF59IaNSOoWcACPig=", + "lastModified": 1713713322, + "narHash": "sha256-A9U/BnzdypE1rt53uhw5X4JQkayR8CkD2Qhn/vhmUSU=", "owner": "Cu3PO42", "repo": "gtk-session-lock", - "rev": "b3544f361498d716b1ceef1ad6ac9bdf024bf782", + "rev": "b9ddb2792b613d14622acada73c64f16a2635b40", "type": "github" }, "original": { @@ -466,11 +466,11 @@ ] }, "locked": { - "lastModified": 1713444959, - "narHash": "sha256-kfK2/FQHlxEI/Z3/yiBY3SmGGAIQ4FyUtycLuHlqjxQ=", + "lastModified": 1713730139, + "narHash": "sha256-GeZbkBg2MLCZgkxvEqM0VaN/pJ6WQ5iHuftKdMndhsI=", "owner": "juanfont", "repo": "headscale", - "rev": "e2afd30b1c73e930b8cd52855a65e40da4ba07f9", + "rev": "bd047928f73687c5d75b804b996951c6fd37b2e6", "type": "github" }, "original": { @@ -508,11 +508,11 @@ ] }, "locked": { - "lastModified": 1713566308, - "narHash": "sha256-7Y91t8pheIzjJveUMAPyeh5NOq5F49Nq4Hl2532QpJs=", + "lastModified": 1713801874, + "narHash": "sha256-bRcvw+arBwpRzqpZQxyB1pCaq1TJXhnx4f294hMXkm4=", "owner": "nix-community", "repo": "home-manager", - "rev": "057117a401a34259c9615ce62218aea7afdee4d3", + "rev": "1451d2866d9ef3739c20f964c9c8bd6db39cc373", "type": "github" }, "original": { @@ -586,11 +586,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1713660608, - "narHash": "sha256-Wy9I4K1vuWtOv/UEpKmpDb6O8YaAY3GcC3pZu70DWMY=", + "lastModified": 1713807865, + "narHash": "sha256-WelRSS6MzeNsBWCy6423JcCcPUCl4RFy2DqeYaJJgaw=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "7c3bd4c19fe47f2d92463b81d9b38651b7a1a268", + "rev": "012a2802e00a7b34e47c8c1098dc093031044ce9", "type": "github" }, "original": { @@ -683,11 +683,11 @@ ] }, "locked": { - "lastModified": 1713619586, - "narHash": "sha256-fIhNlYhPhG5AJ8DxX3LaitnccnQ+X2MCL39W2Abp7mM=", + "lastModified": 1713730424, + "narHash": "sha256-MqYjTvQCxwuDIuAaqIEuyqserm5PYr0auiHHPuYFN/k=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "9e13e0915273959bfd98a10662f678c15ac71c77", + "rev": "7c9c8adfe7e424faa0c5ce6e8be90157fda53c06", "type": "github" }, "original": { @@ -738,11 +738,11 @@ "nixpkgs-lib": "nixpkgs-lib_3" }, "locked": { - "lastModified": 1713105314, - "narHash": "sha256-X3URKbcgIy4UaQGrsy3DmY5x+fePQ5IYaa76YewoUE0=", + "lastModified": 1713701427, + "narHash": "sha256-v6z8hz/UDaC/rbnkH+hxGFUxlNyseVntRetVpSxLU6c=", "owner": "nix-community", "repo": "lib-aggregate", - "rev": "f347ed9a1cab12c27541ed4d173e2f2d5c9bc0bb", + "rev": "3b32a98eb3053f8c8ca55497d1881443ef2996e6", "type": "github" }, "original": { @@ -835,11 +835,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1713662031, - "narHash": "sha256-z6BbpvY2QcqDaJnJFBi3BLVwzy5aWZT3nnqzzu/sXD0=", + "lastModified": 1713748476, + "narHash": "sha256-FB+tCte2nOOLI7i3YvHFZZsFWDjaq+f5nn4wxt6akTQ=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "f37fff222a3abf4deebf7d9388c23da8fc4325c6", + "rev": "5dba7fd39730e14f3c54787df23c533dc98e1e0f", "type": "github" }, "original": { @@ -1040,11 +1040,11 @@ }, "nixpkgs-lib_3": { "locked": { - "lastModified": 1713055793, - "narHash": "sha256-vIrZQykYW32RnlI2lT/gCcB59BOIqqrAmPirBdiirrc=", + "lastModified": 1713660444, + "narHash": "sha256-2bVnrEGyWJhRNKspzfTJmVD/fsH9HQURD4cWpz79Ulw=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "361d8a4f443bbfab20bd6d222f9022b8c6665906", + "rev": "6882347415e352cfc9c277cc01f73e0f5cb7b93c", "type": "github" }, "original": { @@ -1093,11 +1093,11 @@ "nixpkgs": "nixpkgs_7" }, "locked": { - "lastModified": 1713651334, - "narHash": "sha256-KEwQa91uKuRBH4phfURlcGzdLBnnE+hYGzsrJdxlzrE=", + "lastModified": 1713802804, + "narHash": "sha256-QfY4Mmy3VwSK8fPxC19JtBGu16HTNvbQHNgEMCXirkk=", "owner": "nix-community", "repo": "nixpkgs-wayland", - "rev": "67e2713a21191026f532f0671016a155f20064a8", + "rev": "b9c7f88b1efdb9538df911e63cd2794c9c453afe", "type": "github" }, "original": { @@ -1156,11 +1156,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1713537308, - "narHash": "sha256-XtTSSIB2DA6tOv+l0FhvfDMiyCmhoRbNB+0SeInZkbk=", + "lastModified": 1713714899, + "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5c24cf2f0a12ad855f444c30b2421d044120c66f", + "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", "type": "github" }, "original": { @@ -1188,11 +1188,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1713537308, - "narHash": "sha256-XtTSSIB2DA6tOv+l0FhvfDMiyCmhoRbNB+0SeInZkbk=", + "lastModified": 1713714899, + "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5c24cf2f0a12ad855f444c30b2421d044120c66f", + "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", "type": "github" }, "original": { @@ -1310,11 +1310,11 @@ }, "nur": { "locked": { - "lastModified": 1713678856, - "narHash": "sha256-jV/I2mFfUL5njdKbmAJhfW+wNuinxa7//iyeGB6Kd4w=", + "lastModified": 1713802384, + "narHash": "sha256-kVSXGAWW7Ho26DTEtjof4JhX0MAvMZH4Jqjtx4/4QyQ=", "owner": "nix-community", "repo": "NUR", - "rev": "1e1da751686f428e6e4ed239092f01df09d72917", + "rev": "c94f2b409fde98e22b2155a4709828ccd4bf9935", "type": "github" }, "original": { @@ -1893,17 +1893,17 @@ "wlroots": { "flake": false, "locked": { - "lastModified": 1713124002, - "narHash": "sha256-vPeZCY+sdiGsz4fl3AVVujfyZyQBz6+vZdkUE4hQ+HI=", + "lastModified": 1713731601, + "narHash": "sha256-bdcKdtLkusvv85DNuJsajZLFeq7bXp+x5AGP1Sd4wD8=", "owner": "hyprwm", "repo": "wlroots-hyprland", - "rev": "611a4f24cd2384378f6e500253983107c6656c64", + "rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea", "type": "github" }, "original": { "owner": "hyprwm", "repo": "wlroots-hyprland", - "rev": "611a4f24cd2384378f6e500253983107c6656c64", + "rev": "5c1d51c5a2793480f5b6c4341ad0797052aec2ea", "type": "github" } }, @@ -1948,11 +1948,11 @@ ] }, "locked": { - "lastModified": 1713214484, - "narHash": "sha256-h1bSIsDuPk1FGgvTuSHJyiU2Glu7oAyoPMJutKZmLQ8=", + "lastModified": 1713724432, + "narHash": "sha256-dtU1y4oj/0Y42oauzm93ucFg1AoqETnQ21bmXTIUng0=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "bb44921534a9cee9635304fdb876c1b3ec3a8f61", + "rev": "9ace6f969ce495185df34cc6254fb9d297765478", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 6efd4f5..f551464 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,6 @@ { outputs = inputs @ { + self, nixpkgs, nix-on-droid, secrets, @@ -11,7 +12,7 @@ nixpkgs.lib.genAttrs supportedSystems (system: let pkgs = nixpkgs.legacyPackages.${system}; in - attrs pkgs); + attrs system pkgs); # Default system mkNixOS = mods: @@ -60,7 +61,12 @@ ("${nixpkgs}/nixos/modules/installer/" + "cd-dvd/installation-cd-minimal.nix") {home-manager.users.nixos.home.stateVersion = "24.05";} - {vars.mainUser = "nixos";} + { + vars = { + mainUser = "nixos"; + hostName = "nixos"; + }; + } ]; }; @@ -68,9 +74,20 @@ import ./devices/android inputs ); - formatter = perSystem (pkgs: pkgs.alejandra); + formatter = perSystem (_: pkgs: pkgs.alejandra); - devShells = perSystem (pkgs: { + # CI: https://github.com/Mic92/dotfiles/blob/c2f538934d67417941f83d8bb65b8263c43d32ca/flake.nix#L168 + checks = perSystem (system: pkgs: let + inherit (pkgs.lib) filterAttrs mapAttrs' nameValuePair; + + nixosMachines = mapAttrs' ( + name: config: nameValuePair "nixos-${name}" config.config.system.build.toplevel + ) ((filterAttrs (_: config: config.pkgs.system == system)) self.nixosConfigurations); + devShells = mapAttrs' (n: nameValuePair "devShell-${n}") self.devShells; + in + nixosMachines // devShells); + + devShells = perSystem (_: pkgs: { default = pkgs.mkShell { packages = with pkgs; [ alejandra diff --git a/updateSha.sh b/updateSha.sh index 17934f7..83c7c2c 100755 --- a/updateSha.sh +++ b/updateSha.sh @@ -5,7 +5,7 @@ # - mozilla-addons-to-nix # - alejandra # - updateImages -# - nixci +# - nix-fast-build parseFetchurl() { URL="$1" @@ -85,7 +85,7 @@ doAll() { updateFFZ updateFirefoxAddons updateVuetorrent - nixci + nix-fast-build } doAllWithoutDocker() {