{ edition = 201909; description = "Genode desktop varaint"; inputs = { dhall-haskell.uri = "git+https://github.com/dhall-lang/dhall-haskell?ref=flake"; genode-depot.uri = "git+https://gitea.c3d2.de/ehmry/genode-depot.git"; genodepkgs.url = "git+https://gitea.c3d2.de/ehmry/genodepkgs?ref=flake"; libretro-genode.uri = "git+https://gitea.c3d2.de/ehmry/libretro-genode"; nixpkgs.uri = "git+https://gitea.c3d2.de/ehmry/nixpkgs.git?ref=genode"; }; outputs = { self, genodepkgs, nixpkgs, dhall-haskell, genode-depot, libretro-genode }: let lib = import (genodepkgs + "/lib") { inherit genodepkgs nixpkgs dhall-haskell genode-depot; }; pleaseNo = builtins.toFile "empty.xml" ""; in { packages.x86_64-genode.iso = with genodepkgs.packages.x86_64-genode; lib.x86_64-genode.buildNovaIso { name = "oberon"; rom = let upstream = base.src; depot = genode-depot.packages.x86_64-genode; libretro = libretro-genode.packages.x86_64-genode; in { config = lib.renderDhallInit ./config.dhall "{=}"; acpi_drv = "${os}/bin/acpi_drv"; ahci_drv = "${os}/bin/ahci_drv"; capslock = pleaseNo; driver_manager = "${depot.driver_manager}/bin/driver_manager"; "drivers.config" = ./drivers.config; "en_us.chargen" = "${upstream}/repos/os/src/server/input_filter/en_us.chargen"; "fb_drv.config" = "${upstream}/repos/os/recipes/raw/drivers_interactive-pc/fb_drv.config"; "input_filter.config" = ./input_filter.config; input_filter = "${os}/bin/input_filter"; "libc.lib.so" = "${depot.libc}/lib/libc.lib.so"; "libm.lib.so" = "${depot.libc}/lib/libm.lib.so"; "libretro.so" = "${libretro.oberon}/bin/oberon/libretro.so"; log_core = "${os}/bin/log_core"; nitpicker = "${os}/bin/nitpicker"; numlock = pleaseNo; "Oberon.dsk" = "${libretro.oberon.smSrc}/DiskImage/Oberon-2019-01-21.dsk"; platform_drv = "${os}/bin/platform_drv"; ps2_drv = "${os}/bin/ps2_drv"; report_rom = "${os}/bin/report_rom"; rom_filter = "${os}/bin/rom_filter"; rom_reporter = "${os}/bin/rom_reporter"; "usb.config" = pleaseNo; usb_drv = "${depot.usb_drv}/bin/usb_drv"; usb_policy = pleaseNo; vesa_fb_drv = "${depot.vesa_drv}/bin/vesa_fb_drv"; "vfs.lib.so" = "${os}/lib/vfs.lib.so"; vfs = "${os}/bin/vfs"; }; }; defaultPackage = self.packages.x86_64-genode.iso; }; }