diff options
author | Quentin Dufour <quentin@deuxfleurs.fr> | 2023-05-11 09:27:49 +0200 |
---|---|---|
committer | Quentin Dufour <quentin@deuxfleurs.fr> | 2023-05-11 09:27:49 +0200 |
commit | 024d8df847ce720f0ec76b288c7a0142672d21f2 (patch) | |
tree | 309d8e379e61dd67e38aa79dd428befdbec6c99d | |
parent | 76d02fe3008a67f08bc438a932df61f9ef6ca5a0 (diff) | |
download | aerogramme-nix-build.tar.gz aerogramme-nix-build.zip |
dockernix-build
-rw-r--r-- | flake.nix | 32 |
1 files changed, 29 insertions, 3 deletions
@@ -103,15 +103,41 @@ }); # binary extract - # @TODO + bin = pkgs.stdenv.mkDerivation { + pname = "aerogramme-bin"; + version = "0.0.1"; + dontUnpack = true; + dontBuild = true; + installPhase = '' + cp ${(rustRelease.workspace.aerogramme {}).bin}/bin/aerogramme $out + ''; + }; # docker packaging - # @TODO + archMap = { + "x86_64-unknown-linux-musl" = { + GOARCH = "amd64"; + }; + "aarch64-unknown-linux-musl" = { + GOARCH = "arm64"; + }; + "armv6l-unknown-linux-musleabihf" = { + GOARCH = "arm"; + }; + }; + container = pkgs.dockerTools.buildImage { + name = "dxflrs/aerogramme"; + architecture = (builtins.getAttr targetHost archMap).GOARCH; + config = { + Cmd = [ "${bin}" ]; + }; + }; in { devShells.default = shell; packages.debug = (rustDebug.workspace.aerogramme {}).bin; - packages.aerogramme = (rustRelease.workspace.aerogramme {}).bin; + packages.aerogramme = bin; + packages.container = container; packages.default = self.packages.${targetHost}.aerogramme; }); } |