aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie
diff options
context:
space:
mode:
authorMx Kookie <kookie@spacekookie.de>2020-12-21 06:23:30 +0100
committerMx Kookie <kookie@spacekookie.de>2020-12-26 17:24:42 +0100
commit43fa5a76e2cd35616c6dde8d711d642ff1b9bf51 (patch)
tree8fb2eafb9fd96ccd3c5e4f2ba881183fa93f824f /infra/libkookie
parentf6ebd12ffbede1eef55fecbfbc26f5075a3e5527 (diff)
code dump
Diffstat (limited to 'infra/libkookie')
-rwxr-xr-xinfra/libkookie/build1
-rw-r--r--infra/libkookie/roots/uwu.nix110
2 files changed, 111 insertions, 0 deletions
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 = [
+ <home-manager/nixos>
+ <modules>
+ # ../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.";
+
+}