about summary refs log tree commit diff
path: root/machines/mmrnmhrm.nix
diff options
context:
space:
mode:
Diffstat (limited to 'machines/mmrnmhrm.nix')
-rw-r--r--machines/mmrnmhrm.nix67
1 files changed, 67 insertions, 0 deletions
diff --git a/machines/mmrnmhrm.nix b/machines/mmrnmhrm.nix
new file mode 100644
index 00000000..7f966c02
--- /dev/null
+++ b/machines/mmrnmhrm.nix
@@ -0,0 +1,67 @@
+{ pkgs, ... }:
+
+with pkgs.lib;
+with import ../lib;
+
+{
+  imports = singleton ../common-workstation.nix;
+
+  nix.maxJobs = 2;
+
+  boot = let
+    linuxVuizvui = pkgs.buildLinux {
+      inherit (pkgs.kernelSourceVuizvui) version src;
+
+      kernelPatches = singleton pkgs.vuizvuiKernelPatches.bfqsched;
+      configfile = generateKConf (import ./mmrnmhrm-kconf.nix);
+      allowImportFromDerivation = true;
+    };
+  in rec {
+    kernelPackages = pkgs.recurseIntoAttrs
+      (pkgs.linuxPackagesFor linuxVuizvui kernelPackages);
+
+    loader.grub.devices = map (i: "/dev/disk/by-id/${i}") [
+      "ata-WDC_WD10EZEX-00BN5A0_WD-WCC3F5756955"
+      "ata-WDC_WD10EZEX-00BN5A0_WD-WCC3F5790537"
+    ];
+  };
+
+  networking.hostName = "mmrnmhrm";
+
+  fileSystems = {
+    "/" = {
+      label = "root";
+      fsType = "btrfs";
+      options = concatStringsSep "," [
+        "autodefrag"
+        "space_cache"
+        "compress=lzo"
+        "noatime"
+      ];
+    };
+  };
+
+  swapDevices = [
+    { label = "swap1"; }
+    { label = "swap2"; }
+  ];
+
+  services.synergy.server.enable = true;
+  services.synergy.server.configFile = ../cfgfiles/synergy.conf;
+
+  systemd.services."synergy-server".serviceConfig.CPUSchedulingPolicy = "rr";
+  systemd.services."synergy-server".serviceConfig.CPUSchedulingPriority = 50;
+
+  services.xserver.videoDrivers = [ "nouveau" ];
+  services.xserver.xrandrHeads = [ "DVI-I-1" "VGA-1" ];
+
+  vuizvui.i3.workspaces."1" = {
+    label = "XMPP";
+    assign = singleton { class = "^(?:Tkabber|Gajim)\$"; };
+  };
+
+  vuizvui.i3.workspaces."3" = {
+    label = "Chromium";
+    assign = singleton { class = "^Chromium(?:-browser)?\$"; };
+  };
+}