From 43fa5a76e2cd35616c6dde8d711d642ff1b9bf51 Mon Sep 17 00:00:00 2001 From: Mx Kookie Date: Mon, 21 Dec 2020 06:23:30 +0100 Subject: code dump --- infra/libkookie/build | 1 + infra/libkookie/roots/uwu.nix | 110 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 infra/libkookie/roots/uwu.nix (limited to 'infra/libkookie') diff --git a/infra/libkookie/build b/infra/libkookie/build index 227620c8519a..4ce8da17effb 100755 --- a/infra/libkookie/build +++ b/infra/libkookie/build @@ -24,6 +24,7 @@ function build { ## Build and output build path for debugging function debug { + build "$@" echo "Build path: $OUT" exec build "$@" } diff --git a/infra/libkookie/roots/uwu.nix b/infra/libkookie/roots/uwu.nix new file mode 100644 index 000000000000..a292ba04a228 --- /dev/null +++ b/infra/libkookie/roots/uwu.nix @@ -0,0 +1,110 @@ +/* TOP LEVEL DEVICE CONFIGURATION FOR + * + * uwu (Thinkpad X230) + * + * This file only contains settings that are specific to this one + * device (hardware and things outside of nix, like partitions). + * + * This file is part of LIBKOOKIE, a collection of nix expressions. + * LIBKOOKIE is licensed under the GPL-3.0 (or later) -- see LICENSE + */ + +{ lib, config, pkgs, ... }: + + +let + forActiveUsers = (attrs: + lib.listToAttrs (map (u: lib.nameValuePair "${u}" ({ ... }: attrs)) + [ "spacekookie" ])); +in +{ + nixpkgs.config.allowUnfree = true; + + imports = [ + + + # ../legacy/nix + # ../legacy/base + # ../legacy/docker + # ../legacy/workstation + # ../legacy/workstation/hardware/trackpoint + ]; + + libkookie = { + activeUsers = [ "spacekookie" ]; + userPath = ../configuration/users; + }; + + libkookie.emacs = { + enable = true; + }; + + # libkookie.ui.i3.enable = true; + + home-manager.users = forActiveUsers { + imports = []; + }; + + boot.kernelModules = [ "kvm-intel" ]; + boot.initrd.availableKernelModules = + [ "xhci_pci" "ehci_pci" "ahci" "sd_mod" "sdhci_pci" ]; + hardware.enableRedistributableFirmware = true; + + boot.loader.grub = { + copyKernels = true; + device = "/dev/sda"; + zfsSupport = true; + enableCryptodisk = true; + }; + + boot.extraModprobeConfig = "options kvm_item nested=1"; + boot.zfs.devNodes = "/dev"; # FIXME: Why do I set this? + boot.cleanTmpDir = true; + boot.tmpOnTmpfs = true; + boot.supportedFilesystems = [ "zfs" "exfat" ]; + + services.zfs.autoSnapshot.enable = true; + + fileSystems."/" = { + device = "zroot"; + fsType = "zfs"; + + encrypted = { + enable = true; + label = "lvm"; + blkDev = "/dev/disk/by-uuid/f1440abd-99e3-46a8-aa36-7824972fee54"; + }; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/672c497c-18aa-4b00-ac95-78e810363d81"; + fsType = "ext3"; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/bd3d5c22-eed0-4371-ae25-456b8dfe9356"; } + ]; + + nix.maxJobs = lib.mkDefault 4; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + + programs.java.enable = true; + + # owo + networking.hostName = "uwu"; + networking.hostId = "a82ecf29"; + networking.wireguard.interfaces."intranet" = { + ips = [ "10.13.12.3" ]; + privateKeyFile = "/var/lib/wg/private"; + peers = [ + { publicKey = "ugHG/NOqM/9hde9EmWpu7XsCpjT3WQbjLK99IGHtdjQ="; + allowedIPs = [ "10.13.12.0/24" "10.172.171.0/24" ]; + endpoint = "hyperion.kookie.space:51820"; + persistentKeepalive = 25; } + ]; + }; + + system.stateVersion = "19.03"; + users.users.spacekookie.hashedPassword = "$6$rounds=1000000$22ypycQ2AlCCv8iC$RrzyAbCX3D518nCgfR3MTqZhfK.GAclme7EQlKTlqH4oV1YvGd/aHdTfe59iMpf/J18tqEO2aSXsevTVQz2yW."; + +} -- cgit v1.2.3