diff --git a/.gitmodules b/.gitmodules index 636d5c9..9c17330 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "private"] path = private url = git@github.com:artemist/nixos-config-private.git +[submodule "externals/wip-pinebook-pro"] + path = externals/wip-pinebook-pro + url = https://github.com/samueldr/wip-pinebook-pro diff --git a/externals/wip-pinebook-pro b/externals/wip-pinebook-pro new file mode 160000 index 0000000..497b7f7 --- /dev/null +++ b/externals/wip-pinebook-pro @@ -0,0 +1 @@ +Subproject commit 497b7f7641b731df220f4538cf981574140186ee diff --git a/packages.nix b/packages.nix index 596fb7b..85198d8 100644 --- a/packages.nix +++ b/packages.nix @@ -85,7 +85,6 @@ in lsof mercurialFull nix-index - nixops openssl p7zip pandoc @@ -141,15 +140,6 @@ in valgrind yarn - # Radio - gr-limesdr - limesuite - gnuradio-with-packages - soapysdr - gqrx - - # Hacking tools - # Security (pass.withExtensions (exts: [ exts.pass-otp ])) _1password diff --git a/private b/private index 978cda7..37ff0f2 160000 --- a/private +++ b/private @@ -1 +1 @@ -Subproject commit 978cda736295807568c4b35c7745de952285deb3 +Subproject commit 37ff0f2defe0902161d79d79cb4a9f7ef30bfbed diff --git a/sets/radio.nix b/sets/radio.nix new file mode 100644 index 0000000..e18a3e4 --- /dev/null +++ b/sets/radio.nix @@ -0,0 +1,11 @@ +{ config, pkgs, ... }: + +{ + environment.systemPackages = with pkgs; [ + gr-limesdr + limesuite + gnuradio-with-packages + soapysdr + gqrx + ]; +} diff --git a/system/mistmane/default.nix b/system/mistmane/default.nix new file mode 100644 index 0000000..14f09ff --- /dev/null +++ b/system/mistmane/default.nix @@ -0,0 +1,7 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ../../externals/wip-pinebook-pro/pinebook_pro.nix + ]; +} diff --git a/system/starlight/boot-config.nix b/system/starlight/boot-config.nix index eb436de..4fcd4f4 100644 --- a/system/starlight/boot-config.nix +++ b/system/starlight/boot-config.nix @@ -13,6 +13,7 @@ signing-certificate = "/root/secure-boot/db.crt"; }; + # Encrypted drives initrd.luks = { reusePassphrases = true; devices = { diff --git a/system/starlight/default.nix b/system/starlight/default.nix index 1960c96..d73267e 100644 --- a/system/starlight/default.nix +++ b/system/starlight/default.nix @@ -17,13 +17,12 @@ ../../sets/virtualization.nix ]; + # Network networking.hostName = "starlight"; - services.udev.extraRules = '' - KERNEL=="eth*", ATTR{address}=="00:0f:53:16:15:9c", NAME="lan10g0" - KERNEL=="eth*", ATTR{address}=="00:0f:53:16:15:9d", NAME="lan10g1" + KERNEL=="eth*", ATTR{address}=="00:0f:53:16:15:9c", NAME="lan10g0" + KERNEL=="eth*", ATTR{address}=="00:0f:53:16:15:9d", NAME="lan10g1" ''; - networking.bridges.br0 = { rstp = true; interfaces = [ "lan10g0" "lan10g1" "enp4s0" ]; @@ -37,13 +36,26 @@ }; networking.dhcpcd.allowInterfaces = [ "br0" ]; + + # Filesystems + boot.supportedFilesystems = [ "zfs" "btrfs" ]; + boot.zfs = { + enableUnstable = true; + forceImportAll = false; + forceImportRoot = false; + requestEncryptionCredentials = false; + }; + services.btrfs.autoScrub = { + enable = true; + fileSystems = [ "/" "/media/data" "/media/archive" ]; + }; + + # Packages services.tor = { enable = true; client.enable = true; }; - boot.binfmt.emulatedSystems = [ "aarch64-linux" "riscv64-linux" ]; - environment.systemPackages = with pkgs; [ weechat ]; diff --git a/system/starlight/hardware-configuration.nix b/system/starlight/hardware-configuration.nix index 4d463ee..d4fe055 100644 --- a/system/starlight/hardware-configuration.nix +++ b/system/starlight/hardware-configuration.nix @@ -5,7 +5,8 @@ { imports = - [ (modulesPath + "/installer/scan/not-detected.nix") + [ + (modulesPath + "/installer/scan/not-detected.nix") ]; boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "sd_mod" ]; @@ -14,35 +15,41 @@ boot.extraModulePackages = [ ]; fileSystems."/" = - { device = "/dev/disk/by-uuid/aca21111-a488-4bc7-90a7-e61517c24818"; + { + device = "/dev/disk/by-uuid/aca21111-a488-4bc7-90a7-e61517c24818"; fsType = "btrfs"; options = [ "subvol=root" ]; }; fileSystems."/nix" = - { device = "/dev/disk/by-uuid/aca21111-a488-4bc7-90a7-e61517c24818"; + { + device = "/dev/disk/by-uuid/aca21111-a488-4bc7-90a7-e61517c24818"; fsType = "btrfs"; options = [ "subvol=nix" ]; }; fileSystems."/home" = - { device = "/dev/disk/by-uuid/aca21111-a488-4bc7-90a7-e61517c24818"; + { + device = "/dev/disk/by-uuid/aca21111-a488-4bc7-90a7-e61517c24818"; fsType = "btrfs"; options = [ "subvol=home" ]; }; fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1AC2-9317"; + { + device = "/dev/disk/by-uuid/1AC2-9317"; fsType = "vfat"; }; fileSystems."/media/archive" = - { device = "/dev/disk/by-uuid/ba796824-5165-4a95-87c2-1fb49a449138"; + { + device = "/dev/disk/by-uuid/ba796824-5165-4a95-87c2-1fb49a449138"; fsType = "btrfs"; }; fileSystems."/media/data" = - { device = "/dev/disk/by-uuid/c01b98d1-1eb9-42ce-8d05-4b9d852fca55"; + { + device = "/dev/disk/by-uuid/c01b98d1-1eb9-42ce-8d05-4b9d852fca55"; fsType = "btrfs"; }; @@ -50,7 +57,6 @@ boot.initrd.luks.devices."glimmer".device = "/dev/disk/by-uuid/43220fc3-2f33-4915-9365-59eb27b21719"; swapDevices = - [ { device = "/dev/disk/by-uuid/b134fecf-719f-45af-b317-001e413f06c4"; } - ]; + [{ device = "/dev/disk/by-uuid/b134fecf-719f-45af-b317-001e413f06c4"; }]; }