diff --git a/pkgs/default.nix b/pkgs/default.nix
index cbf1f972461c431c1295e4e6f5925e7749f1c3ba..96c9ce865d85ae36487c228f7259ce91e78cec15 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -143,7 +143,9 @@ embox-aarch64 = callPackage ./embox { arch = "aarch64"; };
embox-arm = callPackage ./embox { arch = "arm"; };
embox-ppc = callPackage ./embox { arch = "ppc"; };
embox-riscv64 = callPackage ./embox { arch = "riscv64"; };
stdenv = pkgs.gccMultiStdenv;
### GARMIN
diff --git a/pkgs/embox/default.nix b/pkgs/embox/default.nix
index ff448e0eb3f6bb322c083a7a242d14c9484c5507..45d3043c81569fb448abb8cbfef9626c93b6e7e1 100644
--- a/pkgs/embox/default.nix
+++ b/pkgs/embox/default.nix
@@ -1,5 +1,5 @@
{ lib
-, multiStdenv
+, stdenv
, fetchFromGitHub
, fetchurl
, makeWrapper
@@ -20,15 +20,15 @@ third-party = lib.mapAttrs
(name: spec: fetchurl spec)
(builtins.fromJSON (builtins.readFile ./third-party.json));
in
-multiStdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
pname = "embox-${arch}-qemu";
src = fetchFromGitHub {
owner = "embox";
};
patches = [ ./0001-fix-build.patch ];
@@ -60,35 +60,37 @@ ln -s ${third-party.cjson} ./download/cjson.zip
ln -s ${third-party.acpica-unix} ./download/acpica-unix-20210331.tar.gz
'';
aarch64 = "-M virt -cpu cortex-a53 -m 1024";
arm = "-M integratorcp -m 256";
ppc = "-M virtex-ml507 -m 64";
riscv64 = "-M virt -m 512";
x86 = "-enable-kvm -device pci-ohci,id=ohci -m 256";
aarch64 = "model=e1000";
arm = "model=smc91c111";
x86 = "model=virtio";
platform_args = {
aarch64 = "-M virt -cpu cortex-a53 -m 1024";
arm = "-M integratorcp -m 256";
ppc = "-M virtex-ml507 -m 64";
riscv64 = "-M virt -m 512";
x86 = "-enable-kvm -device pci-ohci,id=ohci -m 256";
}.${arch};
net_args = {
aarch64 = "model=e1000";
arm = "model=smc91c111";
x86 = "model=virtio";
};
withNetwork = (lib.hasAttr arch net_args) && stdenv.isLinux;
mkdir -p $out/bin
--add-flags "${platform_args}" \
--add-flags "-kernel $out/share/embox/images/embox.img" \
--add-flags "${lib.optionalString withNetwork "-net nic,netdev=n0,${net_args.${arch}},macaddr=AA:BB:CC:DD:EE:02"}" \
--add-flags "${lib.optionalString withNetwork "-netdev tap,script=$out/share/embox/scripts/start_script,downscript=$out/share/embox/scripts/stop_script,id=n0"}" \
--add-flags "-nographic"
makeWrapper ${qemu}/bin/qemu-system-${if arch == "x86" then "i386" else arch} $out/bin/embox \
--add-flags "${platform_args}" \
--add-flags "-kernel $out/share/embox/images/embox.img" \
--add-flags "${lib.optionalString withNetwork "-net nic,netdev=n0,${net_args.${arch}},macaddr=AA:BB:CC:DD:EE:02"}" \
--add-flags "${lib.optionalString withNetwork "-netdev tap,script=$out/share/embox/scripts/start_script,downscript=$out/share/embox/scripts/stop_script,id=n0"}" \
--add-flags "-nographic"
install -Dm644 build/base/bin/embox $out/share/embox/images/embox.img
install -Dm644 conf/*.conf* -t $out/share/embox/conf
install -Dm755 scripts/qemu/{start,stop}_script -t $out/share/embox/scripts
meta = with lib; {
description = "Modular and configurable OS for embedded applications";
application/octet-stream
This content has been proxied by September (3851b).