5 changed files with 48 additions and 48 deletions
@ -1,20 +1,26 @@
|
||||
{ system ? builtins.currentSystem }: |
||||
|
||||
{ sources ? import ./nix/sources.nix, pkgs ? import <nixpkgs> { } }: |
||||
let |
||||
sources = import ./nix/sources.nix; |
||||
pkgs = import <nixpkgs> { }; |
||||
printerfacts = import ./printerfacts.nix { inherit pkgs sources; }; |
||||
|
||||
name = "xena/printerfacts"; |
||||
tag = "latest"; |
||||
srcNoTarget = dir: |
||||
builtins.filterSource |
||||
(path: type: type != "directory" || builtins.baseNameOf path != "target") |
||||
dir; |
||||
naersk = pkgs.callPackage sources.naersk { }; |
||||
gruvbox-css = pkgs.callPackage sources.gruvbox-css { }; |
||||
src = srcNoTarget ./.; |
||||
pfacts = naersk.buildPackage { |
||||
inherit src; |
||||
remapPathPrefix = true; |
||||
}; |
||||
in pkgs.stdenv.mkDerivation { |
||||
inherit (pfacts) name; |
||||
inherit src; |
||||
phases = "installPhase"; |
||||
|
||||
in pkgs.dockerTools.buildLayeredImage { |
||||
inherit name tag; |
||||
contents = [ printerfacts ]; |
||||
installPhase = '' |
||||
mkdir -p $out/static |
||||
|
||||
config = { |
||||
Cmd = [ "${printerfacts}/bin/printerfacts" ]; |
||||
Env = [ "RUST_LOG=info" ]; |
||||
WorkingDir = "/"; |
||||
}; |
||||
cp -rf $src/templates $out/templates |
||||
cp -rf ${pfacts}/bin $out/bin |
||||
cp -rf ${gruvbox-css}/gruvbox.css $out/static/gruvbox.css |
||||
''; |
||||
} |
||||
|
@ -0,0 +1,20 @@
|
||||
{ system ? builtins.currentSystem }: |
||||
|
||||
let |
||||
sources = import ./nix/sources.nix; |
||||
pkgs = import <nixpkgs> { }; |
||||
printerfacts = import ./default.nix { inherit pkgs sources; }; |
||||
|
||||
name = "xena/printerfacts"; |
||||
tag = "latest"; |
||||
|
||||
in pkgs.dockerTools.buildLayeredImage { |
||||
inherit name tag; |
||||
contents = [ printerfacts ]; |
||||
|
||||
config = { |
||||
Cmd = [ "${printerfacts}/bin/printerfacts" ]; |
||||
Env = [ "RUST_LOG=info" ]; |
||||
WorkingDir = "/"; |
||||
}; |
||||
} |
@ -1,26 +0,0 @@
|
||||
{ sources ? import ./nix/sources.nix, pkgs ? import <nixpkgs> { } }: |
||||
let |
||||
srcNoTarget = dir: |
||||
builtins.filterSource |
||||
(path: type: type != "directory" || builtins.baseNameOf path != "target") |
||||
dir; |
||||
naersk = pkgs.callPackage sources.naersk { }; |
||||
gruvbox-css = pkgs.callPackage sources.gruvbox-css { }; |
||||
src = srcNoTarget ./.; |
||||
pfacts = naersk.buildPackage { |
||||
inherit src; |
||||
remapPathPrefix = true; |
||||
}; |
||||
in pkgs.stdenv.mkDerivation { |
||||
inherit (pfacts) name; |
||||
inherit src; |
||||
phases = "installPhase"; |
||||
|
||||
installPhase = '' |
||||
mkdir -p $out/static |
||||
|
||||
cp -rf $src/templates $out/templates |
||||
cp -rf ${pfacts}/bin $out/bin |
||||
cp -rf ${gruvbox-css}/gruvbox.css $out/static/gruvbox.css |
||||
''; |
||||
} |
Loading…
Reference in new issue