diff --git a/flake.lock b/flake.lock index d6ea972..f49ac5b 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "flake-utils": { "locked": { - "lastModified": 1609246779, - "narHash": "sha256-eq6ZXE/VWo3EMC65jmIT6H/rrUc9UWOWVujkzav025k=", + "lastModified": 1614513358, + "narHash": "sha256-LakhOx3S1dRjnh0b5Dg3mbZyH0ToC9I8Y2wKSkBaTzU=", "owner": "numtide", "repo": "flake-utils", - "rev": "08c7ad4a0844adc4a7f9f5bb3beae482e789afa4", + "rev": "5466c5bbece17adaab2d82fae80b46e807611bf3", "type": "github" }, "original": { @@ -17,11 +17,12 @@ }, "nixpkgs": { "locked": { - "lastModified": 1609187327, - "narHash": "sha256-6lCwWpGpZxbSYclryv4ixsxxbISe7HuLyyQnGWCC8ZQ=", - "path": "/nix/store/dcmj4p477fgzxz33rxss9wnmslnsahgx-source", - "rev": "e065200fc90175a8f6e50e76ef10a48786126e1c", - "type": "path" + "lastModified": 1617130537, + "narHash": "sha256-AHzQ2fQUs5pDPy/jJsJjzl8S0ftRjKVjIzBnHFxxacg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "446a2ffb5b9caa4d57cefda05961c1f2bbbfe0aa", + "type": "github" }, "original": { "id": "nixpkgs", diff --git a/flake.nix b/flake.nix index 400c4cf..4843736 100644 --- a/flake.nix +++ b/flake.nix @@ -25,5 +25,17 @@ ) // rec { nixosModules.brownpaper = import ./mod.nix; nixosModule = nixosModules.brownpaper; - }); + }) // rec { + overlay = final: prev: + let + bp = final.callPackage ./default.nix { pkgs = final; src = self; }; + in + { + brownpaper = bp.client; + brownpaper-server = bp.server; + }; + overlays = { + pinned = final: prev: (overlay (import nixpkgs { inherit (final) system; }) { }); + }; + }; } diff --git a/mod.nix b/mod.nix index 4d0dbbf..b0d3379 100644 --- a/mod.nix +++ b/mod.nix @@ -3,7 +3,7 @@ with lib; let cfg = config.services.brownpaper; cfgc = config.programs.brownpaper; - package = pkgs.callPackage ./. { inherit pkgs; src = ./.; }; + package = if pkgs ? brownpaper-server && pkgs ? brownpaper then { server = pkgs.brownpaper-server; client = pkgs.brownpaper; } else (pkgs.callPackage ./. { inherit pkgs; src = ./.; }); keyDir = pkgs.runCommand "brownpaper-keys" { } '' mkdir -p $out ${concatStringsSep " && " (builtins.map (key: "cp ${key} $out/") cfg.pgpKeys)}