2
0
Fork 0

Update README

This commit is contained in:
Emery Hemingway 2020-06-08 18:30:40 +05:30
parent a03f7d7d63
commit 2bf4fafa59
1 changed files with 24 additions and 14 deletions

View File

@ -39,8 +39,6 @@ The worksites at the moment are:
- ARM, i686
- Write a proper test framework, or better, reuse the NixOS one.
- Patching standard Nixpkgs packages by overlay. Explore Workflow and tooling
for building emulated UNIX environments.
@ -49,9 +47,10 @@ The worksites at the moment are:
- Formalizing Dhall configuration types.
- NixOS modules for constructing a reasonably usable Genode system. Reusing the
module system from NixOS is advantagous because a dual boot system can
share a `/nix/store` and be updated simultaneously. Work-in-progress on a
topic branch.
module system from NixOS is advantageous because a dual boot system can
share a `/nix/store` and be updated simultaneously.
- NixOS module for NixOS guests with the ARM VMM.
- Configuration validation via a service routing prover.
@ -113,6 +112,17 @@ $ nix log .#checks.x86_64-linux.nova-x86
Packaging is done using standard Nixpkgs methods, a `stdenv` is available for
cross-compilation. See [Solo5](./packages/solo5/default.nix) as an example.
## Cross-compiling Nixpkgs
Some existing packages from Nixpkgs can be built with little or no modification.
Nixpkgs is available at the path `.#legacyPackages.x86_64-linux-x86_64-genode`
(or `…-aarch64-genode`) and modifications to packages are made at an
[overlay](./overlay/default.nix). Some packages need patched, others require
additional features added to the Genode libc.
Packages that run on Linux as well as Genode should not be packaged here, those
should be added to Nixpkgs.
# Toolchain
The Genode Labs toolchain is available here only for Linux and in binary form.
@ -122,7 +132,7 @@ has not been practical due to its recursive autotools build system.
The enter a shell with the toolchain:
```shell
nix run .#legacyPackages.x86_64-linux-x86_64-genode.stdenv.cc
nix shell .#legacyPackages.x86_64-linux-x86_64-genode.stdenv.cc
x86_64-unknown-genode-clang++ -v
```