sigil/packages/default.nix

129 lines
3.4 KiB
Nix
Raw Normal View History

{ flake, nixpkgs }:
2019-07-30 12:48:01 +02:00
2019-11-05 17:38:47 +01:00
let
inherit (nixpkgs)
buildPackages callPackage fetchFromGitHub fetchgit genodeSources stdenv;
inherit (genodeSources) buildUpstream;
dhallPackages =
flake.inputs.nixpkgs.legacyPackages.x86_64-linux.callPackage ./dhall { };
buildDepotWorld = let
genodeWorld = fetchFromGitHub {
owner = "genodelabs";
repo = "genode-world";
rev = "0ed545e55a90c39df23a86eb733961de71d56241";
hash = "sha256-sirmUtLmZ5YnfLKrOvOBafnZW3UW+1LtkiGu85Ma820=";
};
in attrs:
genodeSources.buildDepot (attrs // {
postConfigure = ''
cp -r --no-preserve=mode ${genodeWorld} $GENODE_DIR/repos
'';
});
depotPkgs = with builtins;
let
names = attrNames (import ./genodelabs/targets.nix {
buildPackages = null;
ports = null;
});
f = name: {
inherit name;
value = genodeSources.depot name;
};
in listToAttrs (map f names);
basePatches = [ ./genodelabs/cxx-align.patch ];
in depotPkgs // {
inherit stdenv genodeSources;
base-hw-pc = buildUpstream {
name = "base-hw-pc";
outputs = [ "out" "coreObj" "bootstrapObj" ];
KERNEL = "hw";
BOARD = "pc";
targets = [ "bootstrap" "core" "timer" "lib/ld" ];
patches = basePatches;
postInstall = ''
mv $out/lib/ld-hw.lib.so $out/lib/ld.lib.so
mv $out/bin/hw_timer_drv $out/bin/timer_drv
install build/bin/core-hw-pc.o $coreObj
install build/bin/bootstrap-hw-pc.o $bootstrapObj
'';
meta.platforms = [ "x86_64-genode" ];
};
base-hw-virt_qemu = buildUpstream {
name = "base-hw-virt_qemu";
outputs = [ "out" "coreObj" "bootstrapObj" ];
KERNEL = "hw";
BOARD = "virt_qemu";
targets = [ "bootstrap" "core" "timer" "lib/ld" ];
patches = basePatches;
postInstall = ''
mv $out/lib/ld-hw.lib.so $out/lib/ld.lib.so
mv $out/bin/hw_timer_drv $out/bin/timer_drv
install build/bin/core-hw-virt_qemu.o $coreObj
install build/bin/bootstrap-hw-virt_qemu.o $bootstrapObj
'';
meta.platforms = [ "aarch64-genode" ];
};
base-linux = buildUpstream {
name = "base-linux";
KERNEL = "linux";
BOARD = "linux";
targets = [ "core" "timer" "lib/ld" ];
patches = basePatches;
postInstall = ''
mv $out/lib/ld-linux.lib.so $out/lib/ld.lib.so
mv $out/bin/linux_timer_drv $out/bin/timer_drv
'';
HOST_INC_DIR = buildPackages.glibc.dev + "/include";
};
base-nova = buildUpstream {
name = "base-nova";
outputs = [ "out" "coreObj" ];
KERNEL = "nova";
2020-02-24 14:19:57 +01:00
targets = [ "core" "timer" "lib/ld" ];
patches = basePatches;
postInstall = ''
mv $out/lib/ld-nova.lib.so $out/lib/ld.lib.so
mv $out/bin/nova_timer_drv $out/bin/timer_drv
install build/bin/core-nova.o $coreObj
'';
};
bender = buildPackages.callPackage ./bender { };
2020-04-04 12:47:44 +02:00
block_router = callPackage ./block_router { };
2020-03-22 06:11:46 +01:00
2019-11-05 17:38:47 +01:00
dhallGenode = dhallPackages.genode;
init = genodeSources.depot "init";
2020-04-05 10:33:51 +02:00
nic_bus = callPackage ./nic_bus { };
2020-03-27 08:05:41 +01:00
NOVA = callPackage ./NOVA { };
2020-06-03 13:17:26 +02:00
rtc-dummy = callPackage ./rtc-dummy { };
2020-06-07 15:48:22 +02:00
show_input = callPackage ./show_input { };
2020-04-05 18:50:52 +02:00
solo5 = let drv = callPackage ./solo5 { };
in drv // { tests = drv.tests // { pname = "solo5-tests"; }; };
sotest-producer = callPackage ./sotest-producer { };
ssh_client = buildDepotWorld {
2020-04-05 10:33:51 +02:00
name = "ssh_client";
portInputs = with genodeSources.ports; [ libc libssh openssl zlib ];
};
2020-04-05 18:50:52 +02:00
stdcxx = callPackage ./stdcxx { };
}