94 lines
4.2 KiB
Nix
94 lines
4.2 KiB
Nix
{
|
|
edition = 201909;
|
|
|
|
description = "Genode desktop varaint";
|
|
|
|
inputs = {
|
|
genodepkgs.url = "git+file:///home/repo/genodepkgs?ref=flake";
|
|
nixpkgs.uri = "git+https://gitea.c3d2.de/ehmry/nixpkgs.git";
|
|
dhall-haskell.uri =
|
|
"git+https://github.com/dhall-lang/dhall-haskell?ref=flake";
|
|
};
|
|
|
|
outputs = { self, genodepkgs, nixpkgs, dhall-haskell, genode-depot }:
|
|
let
|
|
lib = import (genodepkgs + "/lib") {
|
|
inherit genodepkgs nixpkgs dhall-haskell;
|
|
};
|
|
in {
|
|
|
|
packages.x86_64-genode.iso = with genodepkgs.packages.x86_64-genode;
|
|
lib.x86_64-genode.buildNovaIso {
|
|
name = "schlitzohr";
|
|
rom = let
|
|
upstream = genode-base.src.src;
|
|
depot = genode-depot.packages.x86_64-genode;
|
|
in {
|
|
config = lib.renderDhallInit ./config.dhall "{=}";
|
|
acpi_drv = "${genode-os}/bin/acpi_drv";
|
|
ahci_drv = "${genode-os}/bin/ahci_drv";
|
|
vesa_fb_drv = "${depot.vesa_drv}/bin/vesa_fb_drv";
|
|
"clipboard.config" =
|
|
"${upstream}/repos/gems/run/sculpt/clipboard.config";
|
|
driver_manager = "${depot.driver_manager}/bin/driver_manager";
|
|
"drivers.config" = ./drivers.config;
|
|
"empty_runtime.config" =
|
|
"${upstream}/repos/gems/run/sculpt/empty_runtime.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";
|
|
"fonts.config" = "${upstream}/repos/gems/run/sculpt/fonts.config";
|
|
fs_report = "${genode-os}/bin/fs_report";
|
|
fs_rom = "${genode-os}/bin/fs_rom";
|
|
global_keys_handler = "${genode-os}/bin/global_keys_handler";
|
|
"input_filter.config" =
|
|
"${upstream}/repos/os/recipes/raw/drivers_interactive-pc/input_filter.config";
|
|
input_filter = "${genode-os}/bin/input_filter";
|
|
"installation" =
|
|
builtins.toFile "installation" ''<installation arch="x86_64"/>'';
|
|
"leitzentrale.config" =
|
|
"${upstream}/repos/gems/run/sculpt/leitzentrale.config";
|
|
log_core = "${genode-os}/bin/log_core";
|
|
"nitpicker.config" = ./nitpicker.config;
|
|
nitpicker = "${genode-os}/bin/nitpicker";
|
|
"numlock_remap.config" =
|
|
"${upstream}/repos/gems/recipes/raw/drivers_managed-pc/numlock_remap.config";
|
|
platform_drv = "${genode-os}/bin/platform_drv";
|
|
pointer = "${genode-os}/bin/pointer";
|
|
ps2_drv = "${genode-os}/bin/ps2_drv";
|
|
ram_fs = "${genode-os}/bin/ram_fs";
|
|
report_rom = "${genode-os}/bin/report_rom";
|
|
rom_filter = "${genode-os}/bin/rom_filter";
|
|
rom_reporter = "${genode-os}/bin/rom_reporter";
|
|
rtc_drv = "${genode-os}/bin/rtc_drv";
|
|
"special.chargen" =
|
|
"${upstream}/repos/os/src/server/input_filter/special.chargen";
|
|
terminal_log = "${genode-os}/bin/terminal_log";
|
|
"usb.config" = "${upstream}/repos/gems/run/sculpt/usb.config";
|
|
usb_drv = "${depot.usb_drv}/bin/usb_drv";
|
|
vfs = "${genode-os}/bin/vfs";
|
|
"vfs_import.lib.so" = "${depot.vfs_import}/lib/vfs_import.lib.so";
|
|
"vfs.lib.so" = "${genode-os}/lib/vfs.lib.so";
|
|
"wifi.config" = "${upstream}/repos/gems/run/sculpt/wifi.config";
|
|
"manual_deploy.config" = builtins.toFile "manual_deploy.config" ''
|
|
<config arch="x86_64">
|
|
<common_routes>
|
|
<service name="ROM" label_last="ld.lib.so"> <parent/> </service>
|
|
<service name="ROM" label_last="vfs.lib.so"> <parent/> </service>
|
|
<service name="ROM" label_last="init"> <parent/> </service>
|
|
<service name="CPU"> <parent/> </service>
|
|
<service name="PD"> <parent/> </service>
|
|
<service name="LOG"> <parent/> </service>
|
|
<service name="Timer"> <parent/> </service>
|
|
</common_routes>
|
|
</config>
|
|
'';
|
|
};
|
|
};
|
|
|
|
defaultPackage = self.packages.x86_64-genode.iso;
|
|
|
|
};
|
|
}
|