2020-01-17 01:24:34 +01:00
|
|
|
# SPDX-License-Identifier: CC0-1.0
|
|
|
|
|
2020-03-18 12:57:00 +01:00
|
|
|
{ self, nixpkgs, nixpkgsLocal, packages }:
|
2020-01-16 18:43:24 +01:00
|
|
|
|
2020-03-18 12:57:00 +01:00
|
|
|
let
|
|
|
|
dhallApps = let
|
|
|
|
mkApp = { drv, name ? drv.pname or drv.name, exe ? name }: {
|
|
|
|
inherit name;
|
|
|
|
value = {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/${exe}";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
in builtins.listToAttrs [
|
|
|
|
(mkApp { drv = nixpkgsLocal.dhall; })
|
|
|
|
|
|
|
|
(mkApp {
|
|
|
|
drv = nixpkgsLocal.dhall-bash;
|
|
|
|
name = "dhall-to-bash";
|
|
|
|
})
|
|
|
|
|
|
|
|
(mkApp {
|
|
|
|
drv = nixpkgsLocal.dhall-json;
|
|
|
|
name = "dhall-to-json";
|
|
|
|
})
|
|
|
|
|
|
|
|
(mkApp {
|
|
|
|
drv = nixpkgsLocal.dhall-json;
|
|
|
|
name = "json-to-dhall";
|
|
|
|
})
|
|
|
|
|
|
|
|
(mkApp {
|
|
|
|
drv = nixpkgsLocal.dhall-json;
|
|
|
|
name = "dhall-to-yaml";
|
|
|
|
})
|
|
|
|
|
|
|
|
(mkApp {
|
|
|
|
drv = nixpkgsLocal.dhall-json;
|
|
|
|
name = "yaml-to-dhall";
|
|
|
|
})
|
|
|
|
|
|
|
|
];
|
2020-01-19 16:02:39 +01:00
|
|
|
|
2020-03-18 12:57:00 +01:00
|
|
|
in dhallApps // {
|
|
|
|
|
2020-03-18 13:44:46 +01:00
|
|
|
genode-make = {
|
|
|
|
type = "app";
|
|
|
|
program = nixpkgs.buildPackages.callPackage ./genode-make { };
|
|
|
|
};
|
|
|
|
|
2020-03-18 12:57:00 +01:00
|
|
|
linux-image = let
|
|
|
|
drv = import ./linux-image {
|
|
|
|
apps = self;
|
|
|
|
inherit nixpkgs packages;
|
2020-01-19 16:02:39 +01:00
|
|
|
};
|
2020-03-18 12:57:00 +01:00
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/linux-image";
|
|
|
|
};
|
2020-01-19 16:02:39 +01:00
|
|
|
|
2020-01-24 20:27:02 +01:00
|
|
|
generate-manifest = let
|
|
|
|
drv = import ./generate-manifest {
|
|
|
|
stdenv = packages.stdenv;
|
2020-03-18 12:57:00 +01:00
|
|
|
inherit nixpkgs;
|
2020-01-24 20:27:02 +01:00
|
|
|
};
|
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/generate-manifest";
|
|
|
|
};
|
|
|
|
|
2020-02-18 20:14:29 +01:00
|
|
|
hw-image = let
|
|
|
|
drv = import ./hw-image {
|
|
|
|
stdenv = packages.stdenv;
|
2020-03-18 12:57:00 +01:00
|
|
|
apps = self;
|
|
|
|
inherit nixpkgs packages;
|
2020-02-18 20:14:29 +01:00
|
|
|
};
|
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/hw-image";
|
|
|
|
function = attrs: bootDesc:
|
|
|
|
nixpkgs.runCommand "image.elf" attrs
|
|
|
|
''XDG_CACHE_HOME=$TMPDIR ${drv}/bin/hw-image "${bootDesc}" > $out'';
|
|
|
|
};
|
|
|
|
|
2020-01-16 18:43:24 +01:00
|
|
|
nova-image = let
|
|
|
|
drv = import ./nova-image {
|
|
|
|
stdenv = packages.stdenv;
|
2020-03-18 12:57:00 +01:00
|
|
|
apps = self;
|
|
|
|
inherit nixpkgs packages;
|
2020-01-16 18:43:24 +01:00
|
|
|
};
|
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/nova-image";
|
|
|
|
};
|
|
|
|
|
2020-02-18 20:14:29 +01:00
|
|
|
hw-iso = let
|
|
|
|
drv = import ./hw-iso {
|
|
|
|
stdenv = packages.stdenv;
|
2020-03-18 12:57:00 +01:00
|
|
|
inherit nixpkgs packages;
|
|
|
|
inherit (self) hw-image;
|
2020-02-18 20:14:29 +01:00
|
|
|
};
|
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/hw-iso";
|
|
|
|
function = attrs: bootDesc:
|
|
|
|
nixpkgs.runCommand "hw.iso" attrs
|
|
|
|
''XDG_CACHE_HOME=$TMPDIR ${drv}/bin/hw-iso "${bootDesc}" > $out'';
|
|
|
|
};
|
|
|
|
|
2020-01-16 18:43:24 +01:00
|
|
|
nova-iso = let
|
|
|
|
drv = import ./nova-iso {
|
|
|
|
stdenv = packages.stdenv;
|
2020-03-18 12:57:00 +01:00
|
|
|
inherit nixpkgs packages;
|
|
|
|
inherit (self) nova-image;
|
2020-01-16 18:43:24 +01:00
|
|
|
};
|
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/nova-iso";
|
2020-01-19 16:02:39 +01:00
|
|
|
function = attrs: bootDesc:
|
|
|
|
nixpkgs.runCommand "nova.iso" attrs
|
2020-01-27 01:54:43 +01:00
|
|
|
''XDG_CACHE_HOME=$TMPDIR ${drv}/bin/nova-iso "${bootDesc}" > $out'';
|
2020-01-16 18:43:24 +01:00
|
|
|
};
|
|
|
|
|
2020-03-18 12:57:00 +01:00
|
|
|
render-init = let
|
|
|
|
drv = import ./render-init {
|
|
|
|
apps = self;
|
|
|
|
inherit nixpkgs packages;
|
2020-01-19 16:02:39 +01:00
|
|
|
};
|
2020-03-18 12:57:00 +01:00
|
|
|
in {
|
|
|
|
type = "app";
|
|
|
|
program = "${drv}/bin/render-init";
|
|
|
|
};
|
2020-01-19 16:02:39 +01:00
|
|
|
|
2020-01-16 18:43:24 +01:00
|
|
|
}
|