From db10a5b110dffd04eb055071108e910776649c57 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Tue, 15 Dec 2020 14:22:08 +0100 Subject: [PATCH] WiP! nixosConfigurations --- flake.nix | 7 ++++++ nixos-configurations/default.nix | 42 ++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 nixos-configurations/default.nix diff --git a/flake.nix b/flake.nix index 95adcb6..11ef9d8 100644 --- a/flake.nix +++ b/flake.nix @@ -135,6 +135,13 @@ # Modules for composing Genode and NixOS import ./nixos-modules { inherit self; }; + nixosConfigurations = + # Demo configurations + import ./nixos-configurations { + inherit nixpkgs; + genodepkgs = self; + }; + checks = # Checks for continous testing let tests = import ./tests; diff --git a/nixos-configurations/default.nix b/nixos-configurations/default.nix new file mode 100644 index 0000000..0dbaffa --- /dev/null +++ b/nixos-configurations/default.nix @@ -0,0 +1,42 @@ +{ nixpkgs, genodepkgs }: + +{ + torDemo = nixpkgs.lib.nixosSystem { + system = "x86_64-genode"; + modules = [ + genodepkgs.nixosModules.x86_64 + genodepkgs.nixosModules.nova + + ({ config, lib, pkgs, ... }: { + genode.boot.storeBackend = "usb"; + genode.gui.consoleLog.enable = true; + networking.interfaces.eth0.genode.driver = "ipxe"; + services.tor = { + enable = true; + client.enable = false; + extraConfig = '' + Log [general,net,config,fs]debug stdout + ''; # MaxMemInQueues 64 MBytes + relay = { + enable = true; + contactInfo = "genodepkgs-junk@spam.works"; + port = 80; + role = "relay"; + bridgeTransports = [ ]; + }; + }; + systemd.services.tor.genode = { + enable = true; + interface = "eth0"; + ramQuota = 1024; + extraVfs = pkgs.writeText "tor.vfs.dhall" '' + let VFS = (env:DHALL_GENODE).VFS + + in [ VFS.dir "var" [ VFS.dir "lib" [ VFS.leaf "ram" ] ] ] + ''; + }; + }) + + ]; + }; +}