diff options
| author | Fuwn <[email protected]> | 2021-05-06 00:22:02 +0000 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2021-05-06 00:22:02 +0000 |
| commit | cfb54fcd29fb25f12c483897873fb98f85269d3b (patch) | |
| tree | 564b20278d8125bde58cec07cfe79b4537f37d2b /default.nix | |
| parent | chore(global): create version file (diff) | |
| download | whirl-cfb54fcd29fb25f12c483897873fb98f85269d3b.tar.xz whirl-cfb54fcd29fb25f12c483897873fb98f85269d3b.zip | |
feat(nix): spice it all up
Diffstat (limited to 'default.nix')
| -rw-r--r-- | default.nix | 53 |
1 files changed, 40 insertions, 13 deletions
diff --git a/default.nix b/default.nix index 1b279f4..ff86419 100644 --- a/default.nix +++ b/default.nix @@ -1,20 +1,47 @@ -{ system ? builtins.currentSystem }: +{ sources ? import ./nix/sources.nix, pkgs ? import sources.nixpkgs { } }: +with pkgs; let - sources = import ./nix/sources.nix; - pkgs = import sources.nixpkgs { }; - whirl = import ./whirl.nix { inherit sources pkgs; }; + rust = pkgs.callPackage ./nix/rust.nix { }; - name = "Whirlsplash/whirl"; - tag = "latest"; + srcNoTarget = dir: + builtins.filterSource + (path: type: type != "directory" || builtins.baseNameOf path != "target") + dir; -in pkgs.dockerTools.buildLayeredImage { - inherit name tag; - contents = [ whirl ]; + naersk = pkgs.callPackage sources.naersk { + rustc = rust; + cargo = rust; + }; + dhallpkgs = import sources.easy-dhall-nix { inherit pkgs; }; + src = srcNoTarget ./.; + + whirl = naersk.buildPackage { + inherit src; + doCheck = true; + buildInputs = [ ]; + remapPathPrefix = true; + }; + + config = stdenv.mkDerivation { + pname = "whirl-config"; + version = "HEAD"; + buildInputs = [ dhallpkgs.dhall-simple ]; - config = { - Cmd = [ "/bin/whirl" ]; - Env = [ ]; - WorkingDir = "/"; +# phases = "installPhase"; +# +# installPhase = '' +# ''; }; + +in pkgs.stdenv.mkDerivation { + inherit (whirl) name; + inherit src; + phases = "installPhase"; + + installPhase = '' + mkdir -p $out $out/bin + + cp -rf ${whirl}/bin/whirl $out/bin/whirl + ''; } |