2
0
Fork 0

Update to latest Dhall in Nixpkgs master

This commit is contained in:
Emery Hemingway 2020-03-18 17:27:00 +05:30
parent 6d6d585f0f
commit 818014787f
34 changed files with 863 additions and 973 deletions

View File

@ -1,11 +1,53 @@
# SPDX-License-Identifier: CC0-1.0
{ nixpkgs, dhallApps, packages }:
{ self, nixpkgs, nixpkgsLocal, packages }:
rec {
let
dhallApps = let
mkApp = { drv, name ? drv.pname or drv.name, exe ? name }: {
inherit name;
value = {
type = "app";
program = "${drv}/bin/${exe}";
};
};
in builtins.listToAttrs [
(mkApp { drv = nixpkgsLocal.dhall; })
linux-image =
let drv = import ./linux-image { inherit nixpkgs dhallApps packages; };
(mkApp {
drv = nixpkgsLocal.dhall-bash;
name = "dhall-to-bash";
})
(mkApp {
drv = nixpkgsLocal.dhall-json;
name = "dhall-to-json";
})
(mkApp {
drv = nixpkgsLocal.dhall-json;
name = "json-to-dhall";
})
(mkApp {
drv = nixpkgsLocal.dhall-json;
name = "dhall-to-yaml";
})
(mkApp {
drv = nixpkgsLocal.dhall-json;
name = "yaml-to-dhall";
})
];
in dhallApps // {
linux-image = let
drv = import ./linux-image {
apps = self;
inherit nixpkgs packages;
};
in {
type = "app";
program = "${drv}/bin/linux-image";
@ -14,7 +56,7 @@ rec {
generate-manifest = let
drv = import ./generate-manifest {
stdenv = packages.stdenv;
inherit nixpkgs dhallApps;
inherit nixpkgs;
};
in {
type = "app";
@ -24,7 +66,8 @@ rec {
hw-image = let
drv = import ./hw-image {
stdenv = packages.stdenv;
inherit nixpkgs dhallApps packages;
apps = self;
inherit nixpkgs packages;
};
in {
type = "app";
@ -37,7 +80,8 @@ rec {
nova-image = let
drv = import ./nova-image {
stdenv = packages.stdenv;
inherit nixpkgs dhallApps packages;
apps = self;
inherit nixpkgs packages;
};
in {
type = "app";
@ -50,7 +94,8 @@ rec {
hw-iso = let
drv = import ./hw-iso {
stdenv = packages.stdenv;
inherit nixpkgs packages hw-image;
inherit nixpkgs packages;
inherit (self) hw-image;
};
in {
type = "app";
@ -63,7 +108,8 @@ rec {
nova-iso = let
drv = import ./nova-iso {
stdenv = packages.stdenv;
inherit nixpkgs packages nova-image;
inherit nixpkgs packages;
inherit (self) nova-image;
};
in {
type = "app";
@ -73,8 +119,11 @@ rec {
''XDG_CACHE_HOME=$TMPDIR ${drv}/bin/nova-iso "${bootDesc}" > $out'';
};
render-init =
let drv = import ./render-init { inherit nixpkgs dhallApps packages; };
render-init = let
drv = import ./render-init {
apps = self;
inherit nixpkgs packages;
};
in {
type = "app";
program = "${drv}/bin/render-init";

View File

@ -1,6 +1,6 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenv, nixpkgs, dhallApps }:
{ stdenv, nixpkgs }:
with nixpkgs.buildPackages;

View File

@ -1,6 +1,6 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenv, nixpkgs, dhallApps, packages }:
{ stdenv, nixpkgs, apps, packages }:
let inherit (packages) genodeSources base-hw-pc;
in nixpkgs.writeScriptBin "hw-image" (with nixpkgs.buildPackages;
@ -16,14 +16,13 @@ in nixpkgs.writeScriptBin "hw-image" (with nixpkgs.buildPackages;
TMPDIR="$(${coreutils}/bin/mktemp -d)"
trap "rm -rf $TMPDIR" err exit
export DHALL_PRELUDE=${packages.dhallPrelude}/package.dhall
export DHALL_GENODE=${packages.dhallGenode}/package.dhall
export DHALL_GENODE=${packages.dhallGenode}/source.dhall
build_core() {
local lib="$1"
local modules="$2"
local link_address="$3"
${dhallApps.dhall.program} text <<< \
${apps.dhall.program} text <<< \
"(${../modules.as.dhall}).to64bitImage ($modules)" \
> "$TMPDIR/modules.as"
@ -40,14 +39,14 @@ in nixpkgs.writeScriptBin "hw-image" (with nixpkgs.buildPackages;
cat a.out
}
${dhallApps.dhall.program} text \
${apps.dhall.program} text \
<<< "(env:DHALL_GENODE).Init.render ($@).config" \
| ${nixpkgs.buildPackages.libxml2}/bin/xmllint \
-schema ${packages.genodeSources}/repos/os/src/init/config.xsd - \
| sed 's/&gt;/>/g' \
> $TMPDIR/config
${dhallApps.dhall.program} \
${apps.dhall.program} \
<<< "${../insert-config-rom.dhall} \"$TMPDIR/config\" ($@).rom" \
> "$TMPDIR/modules.dhall"

View File

@ -1,13 +1,12 @@
# SPDX-License-Identifier: CC0-1.0
{ nixpkgs, dhallApps, packages }:
{ nixpkgs, apps, packages }:
nixpkgs.writeScriptBin "linux-image" (with nixpkgs.buildPackages; ''
#!${runtimeShell}
set -eu
export DHALL_PRELUDE=''${DHALL_PRELUDE:-${packages.dhallPrelude}/package.dhall}
export DHALL_GENODE=''${DHALL_GENODE:-${packages.dhallGenode}/package.dhall}
${dhallApps.dhall.program} text <<< "${./script.dhall} ($@)" > boot.sh
export DHALL_GENODE=''${DHALL_GENODE:-${packages.dhallGenode}/source.dhall}
${apps.dhall.program} text <<< "${./script.dhall} ($@)" > boot.sh
source boot.sh
rm boot.sh
'')

View File

@ -9,12 +9,9 @@ let BootModules = Genode.BootModules
let RomEntry = Prelude.Map.Entry Text BootModules.ROM.Type
let compile =
λ ( addressType
: Text
)
λ(addressType : Text)
→ λ(rom : Prelude.Map.Type Text BootModules.ROM.Type)
→ let NaturalIndex =
{ index : Natural, value : Text }
→ let NaturalIndex = { index : Natural, value : Text }
let TextIndex = { index : Text, value : Text }
@ -67,9 +64,7 @@ let compile =
''
++ mapNames
( λ ( m
: TextIndex
)
( λ(m : TextIndex)
→ ''
${addressType} _boot_module_${m.index}_name
${addressType} _boot_module_${m.index}_begin

View File

@ -1,6 +1,6 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenv, nixpkgs, dhallApps, packages }:
{ stdenv, nixpkgs, apps, packages }:
let inherit (packages) genodeSources base-nova;
in nixpkgs.writeScriptBin "nova-image" (with nixpkgs.buildPackages;
@ -16,17 +16,16 @@ in nixpkgs.writeScriptBin "nova-image" (with nixpkgs.buildPackages;
TMPDIR="$(${coreutils}/bin/mktemp -d)"
trap "rm -rf $TMPDIR" err exit
export DHALL_PRELUDE=${packages.dhallPrelude}/package.dhall
export DHALL_GENODE=${packages.dhallGenode}/package.dhall
export DHALL_GENODE=${packages.dhallGenode}/source.dhall
${dhallApps.dhall.program} text \
${apps.dhall.program} text \
<<< "(env:DHALL_GENODE).Init.render ($@).config" \
| ${nixpkgs.buildPackages.libxml2}/bin/xmllint \
-schema ${packages.genodeSources}/repos/os/src/init/config.xsd - \
| sed 's/&gt;/>/g' \
> $TMPDIR/config
${dhallApps.dhall.program} text \
${apps.dhall.program} text \
<<< "(${../modules.as.dhall}).to64bitImage (${
../insert-config-rom.dhall
} \"$TMPDIR/config\" ($@).rom)" \

View File

@ -1,13 +1,12 @@
# SPDX-License-Identifier: CC0-1.0
{ nixpkgs, dhallApps, packages }:
{ nixpkgs, apps, packages }:
nixpkgs.writeScriptBin "render-init" (with nixpkgs.buildPackages; ''
#!${runtimeShell}
set -eu
export DHALL_PRELUDE=''${DHALL_PRELUDE:-${packages.dhallPrelude}/package.dhall}
export DHALL_GENODE=''${DHALL_GENODE:-${packages.dhallGenode}/package.dhall}
${dhallApps.dhall.program} text \
export DHALL_GENODE=''${DHALL_GENODE:-${packages.dhallGenode}/source.dhall}
${apps.dhall.program} text \
<<< "(env:DHALL_GENODE).Init.render ($(cat))" \
| ${nixpkgs.buildPackages.libxml2}/bin/xmllint \
-format \

View File

@ -33,8 +33,7 @@ let drivers =
, ServiceRoute.child "Input" "input_filter"
, ServiceRoute.child "Rtc" "rtc"
]
, children =
toMap
, children = toMap
{ rtc =
Child.flat
Child.Attributes::{
@ -49,8 +48,7 @@ let drivers =
Child.flat
Child.Attributes::{
, binary = "rom_reporter"
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ XML.text
''
@ -80,8 +78,10 @@ let drivers =
Child.Attributes::{
, binary = "acpi_drv"
, priority = 1
, resources =
Resources::{ caps = 350, ram = Genode.units.MiB 4 }
, resources = Resources::{
, caps = 350
, ram = Genode.units.MiB 4
}
, romReports = [ label "acpi" ]
, routes =
[ ServiceRoute.parent "IO_MEM"
@ -95,8 +95,7 @@ let drivers =
Child.flat
Child.Attributes::{
, binary = "platform_drv"
, resources =
Resources::{
, resources = Resources::{
, caps = 400
, ram = Genode.units.MiB 4
, constrainPhys = True
@ -114,8 +113,7 @@ let drivers =
(Some "system")
(Some "system")
]
, config =
Init.Config::{
, config = Init.Config::{
, attributes = toMap { system = "yes" }
, content =
[ XML.text
@ -161,8 +159,10 @@ let drivers =
Child.Attributes::{
, binary = "usb_drv"
, priority = 1
, resources =
Resources::{ caps = 200, ram = Genode.units.MiB 16 }
, resources = Resources::{
, caps = 200
, ram = Genode.units.MiB 16
}
, provides = [ "Input", "Usb" ]
, reportRoms = [ relabel "config" "usb_drv.config" ]
, romReports = [ relabel "devices" "usb_devices" ]
@ -241,8 +241,10 @@ let drivers =
Child.Attributes::{
, binary = "init"
, priority = 1
, resources =
Resources::{ caps = 1400, ram = Genode.units.MiB 64 }
, resources = Resources::{
, caps = 1400
, ram = Genode.units.MiB 64
}
, provides = [ "Framebuffer", "Block" ]
, romReports = [ label "ahci_ports", label "nvme_ns" ]
, reportRoms = [ relabel "config" "dynamic.config" ]

View File

@ -1,58 +1,5 @@
{
"inputs": {
"dhall-haskell": {
"info": {
"narHash": "sha256-KJl9ZLcMcEsLSPcwcWoc0Ac74/6HKC9LkVMeLwhyhlg="
},
"inputs": {
"nixpkgs": {
"info": {
"narHash": "sha256-wJg4DA700SoQbEz61448sR6BgxRa1R92K3vvCV1g+HY="
},
"inputs": {},
"locked": {
"ref": "18.09-beta",
"rev": "1d4de0d552ae9aa66a5b8dee5fb0650a4372d148",
"type": "git",
"url": "https://github.com/nixos/nixpkgs.git"
},
"original": {
"ref": "18.09-beta",
"rev": "1d4de0d552ae9aa66a5b8dee5fb0650a4372d148",
"type": "git",
"url": "https://github.com/nixos/nixpkgs.git"
}
},
"nixpkgsStaticLinux": {
"info": {
"narHash": "sha256-famU3pJZ4vkElV9qc71HmyRVSvcrAhfMZ0UJKpmmKP8="
},
"inputs": {},
"locked": {
"ref": "static-haskell-nix-stack-dhall-working",
"rev": "925aac04f4ca58aceb83beef18cb7dae0715421b",
"type": "git",
"url": "https://github.com/nh2/nixpkgs.git"
},
"original": {
"ref": "static-haskell-nix-stack-dhall-working",
"type": "git",
"url": "https://github.com/nh2/nixpkgs.git"
}
}
},
"locked": {
"ref": "flake",
"rev": "aea28adf3d10ff1982aa4ddd176d1476251b932f",
"type": "git",
"url": "https://github.com/dhall-lang/dhall-haskell"
},
"original": {
"ref": "flake",
"type": "git",
"url": "https://github.com/dhall-lang/dhall-haskell"
}
},
"nodes": {
"genode-depot": {
"info": {
"lastModified": 1584019323,
@ -60,23 +7,7 @@
"revCount": 8
},
"inputs": {
"nixpkgs": {
"info": {
"lastModified": 1584015812,
"narHash": "sha256-oDj4g9nL3fp3xh0jAPZSHiucDxkLXA/rO3uM8L6kE0Y="
},
"inputs": {},
"locked": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a3735dcbd7b2530ae3bcf73fd91e1ca6aa9449e7",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
}
"nixpkgs": "nixpkgs"
},
"locked": {
"ref": "master",
@ -90,11 +21,43 @@
}
},
"nixpkgs": {
"info": {
"lastModified": 1584015812,
"narHash": "sha256-oDj4g9nL3fp3xh0jAPZSHiucDxkLXA/rO3uM8L6kE0Y="
},
"locked": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a3735dcbd7b2530ae3bcf73fd91e1ca6aa9449e7",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgsUpstream": {
"info": {
"lastModified": 1584464280,
"narHash": "sha256-ovYhaoANbsuIRik2zOe5Sxhn0eu5PnExP4IhAJxRUW0="
},
"locked": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7806df1e5f5d49864d917497a4cd2f5ec1a359f8",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"info": {
"lastModified": 1583160598,
"narHash": "sha256-jiBSr7JK/xy7pIXFVhjdxpWy0pudDDRDW5XjzmDXPjA="
},
"inputs": {},
"locked": {
"owner": "ehmry",
"repo": "nixpkgs",
@ -106,7 +69,15 @@
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"genode-depot": "genode-depot",
"nixpkgs": "nixpkgs_2",
"nixpkgsUpstream": "nixpkgsUpstream"
}
}
},
"version": 4
"root": "root",
"version": 5
}

View File

@ -6,13 +6,12 @@
description = "Genode packages";
inputs = {
dhall-haskell.uri =
"git+https://github.com/dhall-lang/dhall-haskell?ref=flake";
genode-depot.uri = "git+https://git.sr.ht/~ehmry/genode-depot";
nixpkgs.uri = "github:ehmry/nixpkgs";
nixpkgsUpstream.uri = "github:NixOS/nixpkgs";
};
outputs = { self, dhall-haskell, genode-depot, nixpkgs }:
outputs = { self, genode-depot, nixpkgs, nixpkgsUpstream }:
let
mkOutput = { system, localSystem, crossSystem }:
let thisSystem = builtins.getAttr system;
@ -20,7 +19,7 @@
lib = (nixpkgs.lib) // (import ./lib {
inherit system localSystem crossSystem;
inherit nixpkgs dhall-haskell genode-depot;
inherit apps nixpkgs genode-depot;
genodepkgs = self;
});
@ -28,31 +27,29 @@
# pass thru Nixpkgs
packages = import ./packages {
inherit system legacyPackages;
inherit system legacyPackages apps;
localPackages = nixpkgsUpstream.legacyPackages.${localSystem};
depot = thisSystem genode-depot.packages;
apps = self.apps.${localSystem};
dhallApps = dhall-haskell.apps.${localSystem};
};
devShell = legacyPackages.mkShell {
nativeBuildInputs = [ dhall-haskell.packages.${localSystem}.dhall ];
shellHook = ''
export DHALL_PRELUDE="${packages.dhallPrelude}/package.dhall"
export DHALL_GENODE="${packages.dhallGenode}/package.dhall"
'';
nativeBuildInputs = [
nixpkgs.legacyPackages.${localSystem}.dhall
packages.dhallGenode
];
};
apps = import ./apps {
self = self.apps.${localSystem};
nixpkgs = legacyPackages;
dhallApps = dhall-haskell.apps.${localSystem};
nixpkgsLocal = nixpkgsUpstream.legacyPackages.${localSystem};
inherit packages;
};
checks = import ./tests {
inherit system localSystem crossSystem;
apps = dhall-haskell.apps.${localSystem} // apps;
inherit self nixpkgs genode-depot;
inherit lib;
inherit apps lib;
genodepkgs = thisSystem self.packages;
};

View File

@ -1,18 +1,10 @@
# SPDX-License-Identifier: CC0-1.0
{ system, localSystem, crossSystem, genodepkgs, nixpkgs, dhall-haskell
, genode-depot }:
{ system, localSystem, crossSystem, genodepkgs, nixpkgs, genode-depot, apps }:
let
thisSystem = builtins.getAttr system;
hostPkgs = import nixpkgs {
system = localSystem;
overlays = [
(self: super: {
inherit (builtins.getAttr localSystem dhall-haskell.packages) dhall;
})
];
};
hostPkgs = nixpkgs.legacyPackages.${localSystem};
testPkgs = thisSystem genodepkgs.packages;
depot = thisSystem genode-depot.packages;

View File

@ -1,12 +1,9 @@
# SPDX-License-Identifier: CC0-1.0
{ system, legacyPackages, depot, apps, dhallApps }:
{ system, legacyPackages, localPackages, depot, apps }:
let
inherit (legacyPackages) callPackage;
dhallPackages = legacyPackages.dhallPackages
// (callPackage ./dhall { inherit dhallApps; });
dhallPackages = import ./dhall { inherit (localPackages) callPackage; };
mkDhallManifest = drv:
legacyPackages.runCommand "${drv.name}.dhall" { inherit drv; }
@ -90,8 +87,6 @@ in rec {
dhallGenode = dhallPackages.genode;
dhallPrelude = dhallPackages.prelude;
NOVA = legacyPackages.callPackage ./NOVA { };
libc = callPackage' ./libc { inherit depot; };

View File

@ -1,10 +1,7 @@
# SPDX-License-Identifier: CC0-1.0
{ callPackage, dhallApps }:
{ callPackage }:
rec {
prelude = prelude_11_0_0;
prelude_11_0_0 = callPackage ./prelude-11.0.0.nix { };
prelude_9_0_0 = callPackage ./prelude-9.0.0.nix { };
genode = callPackage ./genode.nix { inherit dhallApps prelude; };
{
genode = callPackage ./genode.nix { };
}

View File

@ -1,21 +1,19 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenv, fetchgit, dhallApps, prelude }:
{ stdenv, fetchgit, dhallPackages }:
stdenv.mkDerivation {
dhallPackages.buildDhallPackage {
name = "dhall-genode";
code = let
src = fetchgit {
url = "https://git.sr.ht/~ehmry/dhall-genode";
rev = "16cad9fbbee3fbd1c167377c93ee1d60f9d21e37";
sha256 = "0gjad37zd1kb5dlnkb3m8pd1ibzcc9yqf6vgyv3imffj1vhdl14n";
rev = "f05a2dbd8b675757d5d24276feaa66f4e5ab78a7";
sha256 = "0l3pjkcd3kajlkdwckggr9l9jxcjrkc86gngpmvfmvl5gkvz12k3";
};
DHALL_PRELUDE = prelude + "/package.dhall";
buildCommand = ''
export XDG_CACHE_HOME=$TMPDIR
cp -r $src $out
chmod +w -R $out
echo $DHALL_PRELUDE > $out/Prelude.dhall
find $out -type f -exec \
${dhallApps.dhall.program} freeze --all --inplace {} \;
'';
in src + "/package.dhall";
dependencies = [ dhallPackages.Prelude."13.0.0" ];
source = true;
}

View File

@ -1,25 +0,0 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenvNoCC, lib, fetchgit }:
stdenvNoCC.mkDerivation {
name = "dhall-prelude";
version = " 11.0.0";
src = fetchgit {
url = "https://github.com/dhall-lang/dhall-lang";
rev = "8098184d17c3aecc82674a7b874077a7641be05a";
sha256 = "0rdvyxq7mvas82wsfzzpk6imzm8ax4q58l522mx0ks69pacpr3yi";
};
phases = [ "unpackPhase" "installPhase" ];
installPhase = ''
cp -r Prelude $out
'';
meta = {
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ehmry ];
};
}

View File

@ -1,26 +0,0 @@
# SPDX-License-Identifier: CC0-1.0
{ stdenvNoCC, lib, fetchFromGitHub }:
stdenvNoCC.mkDerivation {
name = "dhall-prelude";
version = " 10.0.0";
src = fetchFromGitHub {
owner = "dhall-lang";
repo = "dhall-lang";
rev = "ef644a00e77a3c2c6c503e18e65865fd6d74fc2a";
sha256 = "1md16ri1l6iid2p1zg17n3ap3813v0f43vrbxc280qgxhq617sdk";
};
phases = [ "unpackPhase" "installPhase" ];
installPhase = ''
cp -r Prelude $out
'';
meta = {
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ehmry ];
};
}

View File

@ -45,8 +45,7 @@ let
++ testInputs);
testConfig' = "${./test-wrapper.dhall} ${testConfig} (toMap ${manifest})";
testEnv' = {
DHALL_PRELUDE = "${testPkgs.dhallPrelude}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallGenode}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallGenode}/source.dhall";
MANIFEST = manifest;
XDG_CACHE_HOME = "/tmp";
} // testEnv;

View File

@ -42,8 +42,7 @@ let
(with testPkgs; [ base-linux init sotest-producer ] ++ testInputs);
testConfig' = "${./test-wrapper.dhall} ${testConfig} (toMap ${manifest})";
env' = {
DHALL_PRELUDE = "${testPkgs.dhallPrelude}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallGenode}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallGenode}/source.dhall";
MANIFEST = manifest;
XDG_CACHE_HOME = "/tmp";
} // env;

View File

@ -45,8 +45,7 @@ let
++ testInputs);
testConfig' = "${./test-wrapper.dhall} ${testConfig} (toMap ${manifest})";
testEnv' = {
DHALL_PRELUDE = "${testPkgs.dhallPrelude}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallGenode}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallGenode}/source.dhall";
MANIFEST = manifest;
XDG_CACHE_HOME = "/tmp";
} // testEnv;

View File

@ -25,11 +25,9 @@ let childRomRoute =
let label = λ(_ : Text) → { local = _, route = _ }
in Genode.Boot::{
, config =
Init::{
, config = Init::{
, verbose = True
, children =
toMap
, children = toMap
{ drivers =
Init.toChild
drivers
@ -38,9 +36,7 @@ in Genode.Boot::{
, resources = Init.Resources::{ ram = Genode.units.MiB 4 }
, romReports = [ label "block_devices" ]
, routes =
[ parentRomRoute
"managed/input_filter"
"input_filter.config"
[ parentRomRoute "managed/input_filter" "input_filter.config"
, parentRomRoute " numlock_remap" "numlock_remap.config"
, childRomRoute "dynamic_rom" "capslock"
, childRomRoute "dynamic_rom" "numlock"
@ -58,8 +54,7 @@ in Genode.Boot::{
, binary = "dynamic_rom"
, resources = Resources::{ ram = Genode.units.MiB 4 }
, provides = [ "ROM" ]
, config =
Genode.Init.Config::{
, config = Genode.Init.Config::{
, content =
[ Genode.Prelude.XML.text
''
@ -77,8 +72,7 @@ in Genode.Boot::{
Child.flat
Child.Attributes::{
, binary = "test-driver_manager"
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ Genode.Prelude.XML.text
''
@ -104,8 +98,7 @@ in Genode.Boot::{
, numlock = "<feature_creep/>"
, usb_policy = "<usb/>"
}
# [ { mapKey =
"fb_drv.config"
# [ { mapKey = "fb_drv.config"
, mapValue =
''
<config width="1024" height="768" buffered="yes"/>
@ -113,8 +106,7 @@ in Genode.Boot::{
</config>
''
}
, { mapKey =
"input_filter.config"
, { mapKey = "input_filter.config"
, mapValue =
''
<config>

View File

@ -5,17 +5,14 @@ let Genode = env:DHALL_GENODE
let Child = Genode.Init.Child
in Genode.Boot::{
, config =
Genode.Init::{
, children =
toMap
, config = Genode.Init::{
, children = toMap
{ test-log =
Child.flat
Child.Attributes::{
, binary = "test-log"
, exitPropagate = True
, resources =
Genode.Init.Resources::{
, resources = Genode.Init.Resources::{
, caps = 500
, ram = Genode.units.MiB 10
}

View File

@ -5,25 +5,20 @@ let Genode = env:DHALL_GENODE
let Child = Genode.Init.Child
in Genode.Boot::{
, config =
Genode.Init::{
, children =
toMap
, config = Genode.Init::{
, children = toMap
{ noux =
Child.flat
Child.Attributes::{
, binary = "noux"
, exitPropagate = True
, resources =
Genode.Init.Resources::{
, resources = Genode.Init.Resources::{
, caps = 500
, ram = Genode.units.MiB 10
}
, routes = [ Genode.Init.ServiceRoute.parent "Timer" ]
, config =
Genode.Init.Config::{
, attributes =
toMap
, config = Genode.Init.Config::{
, attributes = toMap
{ stdin = "/script"
, stdout = "/dev/log"
, stderr = "/dev/log"

View File

@ -15,11 +15,9 @@ let ServiceRoute = Init.ServiceRoute
let label = λ(_ : Text) → { local = _, route = _ } : Child.Attributes.Label
in Genode.Boot::{
, config =
Init::{
, config = Init::{
, verbose = True
, children =
toMap
, children = toMap
{ test-pci =
Child.flat
Child.Attributes::{
@ -32,8 +30,7 @@ in Genode.Boot::{
Child.flat
Child.Attributes::{
, binary = "acpi_drv"
, resources =
Resources::{
, resources = Resources::{
, caps = 400
, ram = Genode.units.MiB 4
, constrainPhys = True
@ -50,8 +47,7 @@ in Genode.Boot::{
Child.flat
Child.Attributes::{
, binary = "platform_drv"
, resources =
Resources::{
, resources = Resources::{
, caps = 800
, ram = Genode.units.MiB 4
, constrainPhys = True
@ -64,8 +60,7 @@ in Genode.Boot::{
, ServiceRoute.parent "IO_MEM"
, ServiceRoute.parent "IO_PORT"
]
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ XML.text
''

View File

@ -5,10 +5,8 @@ let Genode = env:DHALL_GENODE
let Child = Genode.Init.Child
in Genode.Boot::{
, config =
Genode.Init::{
, children =
toMap
, config = Genode.Init::{
, children = toMap
{ test-rtc =
Child.flat
Child.Attributes::{

View File

@ -7,18 +7,15 @@ let Init = Genode.Init
let Child = Init.Child
in Genode.Boot::{
, config =
Init::{
, children =
toMap
, config = Init::{
, children = toMap
{ test-signal =
Child.flat
Child.Attributes::{
, binary = "test-signal"
, exitPropagate = True
, priority = 5
, resources =
Init.Resources::{
, resources = Init.Resources::{
, caps = 500
, ram = Genode.units.MiB 10
}

View File

@ -7,17 +7,17 @@ let Init = Genode.Init
let Child = Init.Child
in Genode.Boot::{
, config =
Init::{
, children =
toMap
, config = Init::{
, children = toMap
{ solo5 =
Child.flat
Child.Attributes::{
, binary = "solo5-test_blk"
, exitPropagate = True
, resources =
Init.Resources::{ caps = 256, ram = Genode.units.MiB 3 }
, resources = Init.Resources::{
, caps = 256
, ram = Genode.units.MiB 3
}
, routes =
[ Init.ServiceRoute.parent "Timer"
, Init.ServiceRoute.child "Block" "block"
@ -29,10 +29,8 @@ in Genode.Boot::{
, binary = "ram_block"
, provides = [ "Block" ]
, resources = Init.Resources::{ ram = Genode.units.MiB 9 }
, config =
Init.Config::{
, attributes =
toMap { size = "8M", block_size = "4096" }
, config = Init.Config::{
, attributes = toMap { size = "8M", block_size = "4096" }
}
}
}

View File

@ -11,10 +11,8 @@ let Res = Init.Resources
let ServiceRoute = Init.ServiceRoute
in Genode.Boot::{
, config =
Init::{
, children =
toMap
, config = Init::{
, children = toMap
{ nic =
Child.flat
Child.Attributes::{
@ -28,8 +26,7 @@ in Genode.Boot::{
, resources = Res::{ caps = 200, ram = Genode.units.MiB 6 }
, provides = [ "Nic" ]
, routes = [ ServiceRoute.child "Nic" "nic" ]
, config =
Init.Config::{
, config = Init.Config::{
, attributes = toMap { mac = "02:02:02:02:03:00" }
, content =
[ Genode.Prelude.XML.text
@ -49,11 +46,9 @@ in Genode.Boot::{
[ ServiceRoute.parent "Timer"
, ServiceRoute.child "Nic" "bridge"
]
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ Genode.Prelude.XML.text "<cmdline>limit</cmdline>"
]
[ Genode.Prelude.XML.text "<cmdline>limit</cmdline>" ]
}
}
, ping =
@ -66,10 +61,8 @@ in Genode.Boot::{
[ ServiceRoute.parent "Timer"
, ServiceRoute.child "Nic" "bridge"
]
, config =
Init.Config::{
, attributes =
toMap
, config = Init.Config::{
, attributes = toMap
{ interface = "10.0.0.72/24"
, dst_ip = "10.0.0.2"
, period_sec = "1"

View File

@ -9,10 +9,8 @@ let Child = Init.Child
let Res = Init.Resources
in Genode.Boot::{
, config =
Init::{
, children =
toMap
, config = Init::{
, children = toMap
{ nic =
Child.flat
Child.Attributes::{
@ -26,8 +24,7 @@ in Genode.Boot::{
, resources = Res::{ caps = 200, ram = Genode.units.MiB 8 }
, provides = [ "Nic" ]
, routes = [ Genode.Init.ServiceRoute.child "Nic" "nic" ]
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ Genode.Prelude.XML.text
''
@ -47,8 +44,7 @@ in Genode.Boot::{
[ Genode.Init.ServiceRoute.parent "Timer"
, Genode.Init.ServiceRoute.child "Nic" "bridge"
]
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ Genode.Prelude.XML.text
''
@ -67,8 +63,7 @@ in Genode.Boot::{
[ Genode.Init.ServiceRoute.parent "Timer"
, Genode.Init.ServiceRoute.child "Nic" "bridge"
]
, config =
Init.Config::{
, config = Init.Config::{
, content =
[ Genode.Prelude.XML.text
''

View File

@ -12,22 +12,18 @@ let Config = Init.Config
in λ(testBinary : Text)
→ Genode.Boot::{
, config =
Init::{
, children =
toMap
, config = Init::{
, children = toMap
{ solo5 =
Child.flat
Child.Attributes::{
, binary = testBinary
, exitPropagate = True
, resources =
Init.Resources::{
, resources = Init.Resources::{
, caps = 256
, ram = Genode.units.MiB 3
}
, config =
Config::{
, config = Config::{
, content =
[ Prelude.XML.element
{ name = "cmdline"

View File

@ -5,17 +5,14 @@ let Genode = env:DHALL_GENODE
let Child = Genode.Init.Child
in Genode.Boot::{
, config =
Genode.Init::{
, children =
toMap
, config = Genode.Init::{
, children = toMap
{ solo5 =
Child.flat
Child.Attributes::{
, binary = "solo5-test_time"
, exitPropagate = True
, resources =
Genode.Init.Resources::{
, resources = Genode.Init.Resources::{
, caps = 256
, ram = Genode.units.MiB 3
}

View File

@ -33,8 +33,7 @@ let TextMapType = Prelude.Map.Type Text
in λ(boot : Genode.Boot.Type)
→ λ(inputsManifest : TextMapType (TextMapType Text))
→ boot
⫽ { config =
Init::{
⫽ { config = Init::{
, children =
[ { mapKey = "timer"
, mapValue =