Sigil OS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sigil/packages/default.nix

70 lines
1.6 KiB

# SPDX-License-Identifier: CC0-1.0
{ system, legacyPackages, depot, apps }:
3 years ago
let
inherit (legacyPackages) callPackage;
dhallPackages = legacyPackages.dhallPackages // (callPackage ./dhall { });
mkDhallManifest = drv:
legacyPackages.runCommand "${drv.name}.dhall" { inherit drv; }
"${apps.generate-manifest.program} $drv > $out";
addManifest = drv: { manifest = mkDhallManifest drv; } // drv;
callPackage' = path: attrs:
addManifest (legacyPackages.callPackages path attrs);
buildUpstream = import ./genodelabs {
nixpkgs = legacyPackages;
inherit apps;
};
in rec {
inherit (legacyPackages) stdenv;
base-hw-pc = buildUpstream {
name = "base-hw-pc";
arch = "x86_64";
kernel = "hw";
board = "pc";
targets = [ "bootstrap" "core" "timer" ];
libTargets = [ "ld-hw" ];
postInstall = ''
mkdir -p $out/lib
mv $out/bin/*.o $out/lib/
mv $out/bin/ld-hw.lib.so $out/lib/ld.lib.so
'';
};
bender = legacyPackages.buildPackages.callPackage ./bender { };
dhallGenode = dhallPackages.genode;
dhallPrelude = dhallPackages.prelude;
genode = import ./genode {
nixpkgs = legacyPackages;
inherit mkDhallManifest;
};
NOVA = legacyPackages.callPackage ./NOVA { };
libc = callPackage' ./libc { inherit depot; };
nic_bus = callPackage ./nic_bus { inherit (genode) base os; };
solo5 = let drv = callPackage' ./solo5 { inherit genode; };
in drv // { tests = addManifest drv.tests // { pname = "solo5-tests"; }; };
sotest-producer = callPackage' ./sotest-producer {
stdenv = genode.stdenvGcc;
inherit genode;
};
stdcxx = callPackage' ./stdcxx { };
}