From 7889c5427f8728cb745b0c677f64b9b01537e927 Mon Sep 17 00:00:00 2001 From: shimun Date: Sat, 14 Jan 2023 19:08:30 +0100 Subject: [PATCH] added: snap build --- flake.nix | 37 ++++++++++++++++++++++++++++--------- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/flake.nix b/flake.nix index d87b6bf..e059225 100644 --- a/flake.nix +++ b/flake.nix @@ -13,7 +13,7 @@ outputs = inputs @ { self, nixpkgs, utils, naersk, ... }: let root = inputs.source or self; - pname = (builtins.fromTOML (builtins.readFile (root + "/Cargo.toml"))).package.name; + pname = "ssh-cert-dist"; # toolchains: stable, beta, default(nightly) toolchain = pkgs: if inputs ? fenix then inputs.fenix.packages."${pkgs.system}".complete.toolchain @@ -24,15 +24,28 @@ in rec { # `nix build` - packages.${pname} = (self.overlay pkgs pkgs).${pname}; + packages."${pname}-server" = (self.overlay pkgs pkgs)."${pname}-server"; + packages."${pname}-client" = (self.overlay pkgs pkgs)."${pname}-client"; + + packages."${pname}-client-snap" = pkgs.snapTools.makeSnap { + meta = { + name = pname; + architectures = [ "amd64" ]; + confinement = "strict"; + apps.hello.command = apps."${pname}-client".program; + }; + }; packages.dockerImage = pkgs.runCommandLocal "docker-${pname}.tar.gz" { } "${apps.streamDockerImage.program} | gzip --fast > $out"; - packages.default = packages.${pname}; + packages.default = packages."${pname}-client"; # `nix run` - apps.${pname} = utils.lib.mkApp { - drv = packages.${pname}; + apps."${pname}-server" = utils.lib.mkApp { + drv = packages."${pname}-server"; + }; + apps."${pname}-client" = utils.lib.mkApp { + drv = packages."${pname}-client"; }; # `nix run .#streamDockerImage | docker load` @@ -41,12 +54,12 @@ name = pname; tag = self.shortRev or "latest"; config = { - Entrypoint = apps.default.program; + Entrypoint = apps."${pname}-server".program; }; }; exePath = ""; }; - apps.default = apps.${pname}; + apps.default = apps."${pname}-client"; # `nix flake check` checks = { @@ -103,9 +116,15 @@ ]; in { - "${pname}" = + "${pname}-server" = naersk-lib.buildPackage { - inherit pname root buildInputs nativeBuildInputs; + name = "${pname}-server"; + inherit root buildInputs nativeBuildInputs; + }; + "${pname}-client" = + naersk-lib.buildPackage { + name = "${pname}-client"; + inherit root buildInputs nativeBuildInputs; }; };