Update README
This commit is contained in:
parent
a03f7d7d63
commit
2bf4fafa59
38
README.md
38
README.md
|
@ -39,34 +39,33 @@ The worksites at the moment are:
|
||||||
|
|
||||||
- ARM, i686
|
- ARM, i686
|
||||||
|
|
||||||
- Write a proper test framework, or better, reuse the NixOS one.
|
- Patching standard Nixpkgs packages by overlay. Explore Workflow and tooling
|
||||||
|
|
||||||
- Patching standard Nixpkgs packages by overlay. Explore Workflow and tooling
|
|
||||||
for building emulated UNIX environments.
|
for building emulated UNIX environments.
|
||||||
|
|
||||||
- LLVM testing and upstreaming patches.
|
- LLVM testing and upstreaming patches.
|
||||||
|
|
||||||
- Formalizing Dhall configuration types.
|
- Formalizing Dhall configuration types.
|
||||||
|
|
||||||
- NixOS modules for constructing a reasonably usable Genode system. Reusing the
|
- NixOS modules for constructing a reasonably usable Genode system. Reusing the
|
||||||
module system from NixOS is advantagous because a dual boot system can
|
module system from NixOS is advantageous because a dual boot system can
|
||||||
share a `/nix/store` and be updated simultaneously. Work-in-progress on a
|
share a `/nix/store` and be updated simultaneously.
|
||||||
topic branch.
|
|
||||||
|
- NixOS module for NixOS guests with the ARM VMM.
|
||||||
|
|
||||||
- Configuration validation via a service routing prover.
|
- Configuration validation via a service routing prover.
|
||||||
|
|
||||||
# Nix Flakes
|
# Nix Flakes
|
||||||
|
|
||||||
This repository is structured as a Nix flake, which is an experimental extension
|
This repository is structured as a Nix flake, which is an experimental extension
|
||||||
of Nix tooling. See https://www.tweag.io/posts/2020-05-25-flakes.html for an
|
of Nix tooling. See https://www.tweag.io/posts/2020-05-25-flakes.html for an
|
||||||
introduction and tutorial.
|
introduction and tutorial.
|
||||||
|
|
||||||
## Build Caching
|
## Build Caching
|
||||||
|
|
||||||
The builds produced by Hydra are available as a binary cache, using the cache is
|
The builds produced by Hydra are available as a binary cache, using the cache is
|
||||||
strongly recommended.
|
strongly recommended.
|
||||||
|
|
||||||
The global (IPv6 only) address for the cache can be tested by fetching the
|
The global (IPv6 only) address for the cache can be tested by fetching the
|
||||||
following: http://cache.server7.hq.c3d2.de/nix-cache-info.
|
following: http://cache.server7.hq.c3d2.de/nix-cache-info.
|
||||||
|
|
||||||
If that fails the cache is also available within the
|
If that fails the cache is also available within the
|
||||||
|
@ -113,6 +112,17 @@ $ nix log .#checks.x86_64-linux.nova-x86
|
||||||
Packaging is done using standard Nixpkgs methods, a `stdenv` is available for
|
Packaging is done using standard Nixpkgs methods, a `stdenv` is available for
|
||||||
cross-compilation. See [Solo5](./packages/solo5/default.nix) as an example.
|
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
|
# Toolchain
|
||||||
|
|
||||||
The Genode Labs toolchain is available here only for Linux and in binary form.
|
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:
|
The enter a shell with the toolchain:
|
||||||
|
|
||||||
```shell
|
```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
|
x86_64-unknown-genode-clang++ -v
|
||||||
```
|
```
|
||||||
|
@ -279,9 +289,9 @@ Others are simply introduced as an aid to the reader:
|
||||||
|
|
||||||
# Legal
|
# Legal
|
||||||
|
|
||||||
This repository is for trivial packaging and metadata that exists only for the
|
This repository is for trivial packaging and metadata that exists only for the
|
||||||
sake of richer and more meaningful code in external repositories. All works
|
sake of richer and more meaningful code in external repositories. All works
|
||||||
committed to this repository, unless otherwise noted, shall be implicitly
|
committed to this repository, unless otherwise noted, shall be implicitly
|
||||||
licensed under a [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/deed)
|
licensed under a [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/deed)
|
||||||
public domain dedication.
|
public domain dedication.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue