commit 071d9f35d74c02948e93afd48906c181888ebeec
parent 708d6abe88b66087007f339c601b54d8ba0a1fcd
Author: Katja (ctucx) <git@ctu.cx>
Date: Wed, 5 Mar 2025 20:36:22 +0100
parent 708d6abe88b66087007f339c601b54d8ba0a1fcd
Author: Katja (ctucx) <git@ctu.cx>
Date: Wed, 5 Mar 2025 20:36:22 +0100
flake: refactor, remove `flake-utils` dependency
2 files changed, 36 insertions(+), 51 deletions(-)
diff --git a/flake.lock b/flake.lock @@ -1,27 +1,12 @@ { "nodes": { - "flake-utils": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "nixpkgs": { "locked": { - "lastModified": 1670543317, - "narHash": "sha256-4mMR56rtxKr+Gwz399jFr4i76SQZxsLWxxyfQlPXRm0=", + "lastModified": 1688392541, + "narHash": "sha256-lHrKvEkCPTUO+7tPfjIcb7Trk6k31rz18vkyqmkeJfY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7a6a010c3a1d00f8470a5ca888f2f927f1860a19", + "rev": "ea4c80b39be4c09702b0cb3b42eab59e2ba4f24b", "type": "github" }, "original": { @@ -33,7 +18,6 @@ }, "root": { "inputs": { - "flake-utils": "flake-utils", "nixpkgs": "nixpkgs" } }
diff --git a/flake.nix b/flake.nix @@ -1,18 +1,42 @@ { + description = "mqtt-webui"; - inputs = { - flake-utils.url = "github:numtide/flake-utils"; - nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.11"; - }; + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.11"; + + outputs = inputs: let + forAllSystems = function: + inputs.nixpkgs.lib.genAttrs [ + "x86_64-linux" + "aarch64-linux" + "aarch64-darwin" + ] (system: function (import inputs.nixpkgs { + system = system; + overlays = [ inputs.self.overlays.default ]; + })); - outputs = { self, nixpkgs, flake-utils }: { + in { - overlay = final: prev: { + packages = forAllSystems (pkgs: { + default = pkgs.mqtt-webui; + mqtt-webui = pkgs.mqtt-webui; + }); + + devShells = forAllSystems (pkgs: { + default = pkgs.mkShell { + nativeBuildInputs = [ pkgs.yarn pkgs.yarn2nix pkgs.caddy ]; + shellHook = '' + export NODE_OPTIONS=--openssl-legacy-provider + alias serve="yarn build && caddy run" + alias generate-config="nix-instantiate --eval -E 'builtins.toJSON(import ./config.nix)' | jq '. | fromjson' > config.json" + ''; + }; + }); + overlays.default = final: prev: { mqtt-webui = final.mkYarnPackage rec { name = "mqtt-webui"; - src = self; + src = inputs.self; packageJSON = ./package.json; yarnLock = ./yarn.lock; @@ -30,30 +54,8 @@ rm $out/manifest.json ''; }; - }; - } // (flake-utils.lib.eachDefaultSystem (system: - let - pkgs = import nixpkgs { - inherit system; - overlays = [ self.overlay ]; - }; - - in rec { - - packages.default = pkgs.mqtt-webui; - packages.mqtt-webui = pkgs.mqtt-webui; - - devShells.default = pkgs.mkShell { - nativeBuildInputs = [ pkgs.yarn pkgs.yarn2nix pkgs.caddy ]; - shellHook = '' - export NODE_OPTIONS=--openssl-legacy-provider - alias serve="yarn build && caddy run" - alias generate-config="nix-instantiate --eval -E 'builtins.toJSON(import ./config.nix)' | jq '. | fromjson' > config.json" - ''; - }; + }; - } - )); -}- \ No newline at end of file +}