about summary refs log tree commit diff
path: root/machines
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2017-06-22 01:10:57 +0200
committeraszlig <aszlig@redmoonstudios.org>2017-06-22 01:22:49 +0200
commit3cc287e2683537722bdc15694b92c5985f9a1c4f (patch)
tree42fabc46c315bb80aab6a2b5530122a52270778d /machines
parent3e94e96826f522c31e054bae1b5fd1af2cbfb309 (diff)
Move devhell's machines into machines/
In his configuration he had machine_common.nix which was imported from
the other machine_*.nix files. However in order to start modularizing
I've converted machine_common.nix into a proper NixOS module which now
resides in modules/user/devhell/profiles/base.nix and can be simply
activated via:

  vuizvui.user.devhell.profiles.base.enable = true;

Apart from that I've removed the following configuration definitiens
from machine_common.nix:

  nix.binaryCaches = [
    "https://headcounter.org/hydra/"
    "https://cache.nixos.org/"
  ];
  nix.requireSignedBinaryCaches = true;
  nix.binaryCachePublicKeys = [
    "headcounter.org:/7YANMvnQnyvcVB6rgFTdb8p5LG1OTXaO+21CaOSBzg="
    "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
  ];
  nix.nixPath = lib.mkOptionDefault [
    "nixpkgs=/home/dev/git/remote/other_github/nixpkgs"
  ];

The reason for removing them is because we already handle that via the
vuizvui core modules (modules/core/common.nix).

I've tested this by evaluating the machines by temporarily setting
"allowUnfree = true" (which is part of another module I didn't migrate
yet) and it succeeds.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Cc: @devhell
Diffstat (limited to 'machines')
-rw-r--r--machines/default.nix5
-rw-r--r--machines/devhell/eris.nix60
-rw-r--r--machines/devhell/skunkworks.nix79
-rw-r--r--machines/devhell/titan.nix62
4 files changed, 206 insertions, 0 deletions
diff --git a/machines/default.nix b/machines/default.nix
index a976bbc4..151576f8 100644
--- a/machines/default.nix
+++ b/machines/default.nix
@@ -12,6 +12,11 @@ with import ../lib;
       tyree   = callMachine ./aszlig/managed/tyree.nix {};
     };
   };
+  devhell = {
+    eris       = callMachine devhell/eris.nix {};
+    skunkworks = callMachine devhell/skunkworks.nix {};
+    titan      = callMachine devhell/titan.nix {};
+  };
   labnet = {
     labtops = callNetwork ./labnet/labtops.nix {};
   };
diff --git a/machines/devhell/eris.nix b/machines/devhell/eris.nix
new file mode 100644
index 00000000..2aa83b9f
--- /dev/null
+++ b/machines/devhell/eris.nix
@@ -0,0 +1,60 @@
+{ config, pkgs, lib, ... }:
+
+{
+  vuizvui.user.devhell.profiles.base.enable = true;
+
+  boot = {
+    loader = {
+      timeout = 2;
+      systemd-boot = {
+        enable = true;
+      };
+
+      efi.canTouchEfiVariables = true;
+    };
+
+    initrd = {
+      availableKernelModules = [ "ehci_pci" "ahci" "usb_storage" ];
+      kernelModules = [ "fuse" ];
+      postDeviceCommands = ''
+        echo noop > /sys/block/sda/queue/scheduler
+      '';
+    };
+
+    kernelModules = [ "tp_smapi" ];
+    extraModulePackages = [ config.boot.kernelPackages.tp_smapi ];
+  };
+
+  hardware = {
+    opengl = {
+      extraPackages = [ pkgs.vaapiIntel ];
+    };
+  };
+
+  fileSystems."/" = {
+    device = "/dev/disk/by-uuid/4788e218-db0f-4fd6-916e-e0c484906eb0";
+    fsType = "btrfs";
+    options = [
+      "autodefrag"
+      "space_cache"
+      "compress=lzo"
+      "noatime"
+      "ssd"
+    ];
+  };
+
+  swapDevices = [ ];
+
+  nix = {
+    maxJobs = 4;
+    extraOptions = ''
+      auto-optimise-store = true
+    '';
+  };
+
+  i18n = {
+    consoleFont = "lat9w-16";
+    consoleKeyMap = "uk";
+    defaultLocale = "en_GB.UTF-8";
+  };
+}
diff --git a/machines/devhell/skunkworks.nix b/machines/devhell/skunkworks.nix
new file mode 100644
index 00000000..04ef71e8
--- /dev/null
+++ b/machines/devhell/skunkworks.nix
@@ -0,0 +1,79 @@
+{ config, pkgs, lib, ... }:
+
+{
+  vuizvui.user.devhell.profiles.base.enable = true;
+
+  boot = {
+    loader.grub = {
+      enable = true;
+      version = 2;
+      devices = [
+        "/dev/disk/by-id/ata-ST31500541AS_6XW0NK21"
+        "/dev/disk/by-id/ata-ST31500541AS_6XW0P0CW"
+        "/dev/disk/by-id/ata-Samsung_SSD_850_EVO_250GB_S21PNSAG848626F"
+        "/dev/disk/by-id/ata-Samsung_SSD_850_EVO_250GB_S21PNSAG848674K"
+      ];
+    };
+
+    initrd = {
+      availableKernelModules = [ "ehci_pci" "ahci" "firewire_ohci" "usbhid" "usb_storage" ];
+      kernelModules = [ "fuse" ];
+    };
+
+    kernelParams = [ "pci=noaer" ];
+    kernelModules = [ "kvm-intel" ];
+    extraModulePackages = [ ];
+    blacklistedKernelModules = [ "pcspkr" ];
+  };
+
+  hardware = {
+    opengl = {
+      extraPackages = [ pkgs.vaapiVdpau ];
+    };
+  };
+
+  fileSystems."/" = {
+    label = "nixos";
+    fsType = "btrfs";
+    options = [
+      "autodefrag"
+      "space_cache"
+      "compress=lzo"
+      "noatime"
+      "ssd"
+    ];
+  };
+
+  fileSystems."/home" = {
+    label = "home";
+    fsType = "btrfs";
+    options = [
+      "autodefrag"
+      "space_cache"
+      "compress=lzo"
+      "noatime"
+    ];
+  };
+
+  swapDevices = [
+    { device = "/dev/disk/by-uuid/16bd9abd-6af5-4a24-8ea5-58adc51e9641"; }
+    { device = "/dev/disk/by-uuid/279708cb-f9c3-4a37-a064-80ff85a66f88"; }
+    { device = "/dev/disk/by-uuid/0c2409c3-e824-4759-a9ad-9bfcea1e73bb"; }
+    { device = "/dev/disk/by-uuid/3f1835a8-5587-4963-9b6c-66ecb36059de"; }
+  ];
+
+  nix.maxJobs = 8;
+
+  i18n = {
+    consoleFont = "lat9w-16";
+    consoleKeyMap = "dvorak";
+    defaultLocale = "en_US.UTF-8";
+  };
+
+  powerManagement.powerUpCommands = ''
+    ${pkgs.hdparm}/sbin/hdparm -B 255 \
+  /dev/disk/by-id/ata-ST31500541AS_6XW0NK21
+    ${pkgs.hdparm}/sbin/hdparm -B 255 \
+  /dev/disk/by-id/ata-ST31500541AS_6XW0P0CW
+  '';
+}
diff --git a/machines/devhell/titan.nix b/machines/devhell/titan.nix
new file mode 100644
index 00000000..605fc714
--- /dev/null
+++ b/machines/devhell/titan.nix
@@ -0,0 +1,62 @@
+{ config, pkgs, lib, ... }:
+
+{
+  vuizvui.user.devhell.profiles.base.enable = true;
+
+  boot = {
+    loader = {
+      timeout = 2;
+      systemd-boot = {
+        enable = true;
+      };
+
+      efi.canTouchEfiVariables = true;
+    };
+
+    initrd = {
+      availableKernelModules = [ "xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
+      kernelModules = [ "fuse" ];
+    };
+
+    kernelModules = [ "kvm-intel" ];
+    extraModulePackages = [ ];
+
+    kernelParams = [ "elevator=noop" ];
+  };
+
+  hardware = {
+    opengl = {
+      enable = true;
+      extraPackages = [ pkgs.libvdpau-va-gl pkgs.vaapiVdpau pkgs.vaapiIntel ];
+    };
+  };
+
+  fileSystems."/" = {
+    device = "/dev/disk/by-uuid/09d1155f-e7dd-4754-ae01-44da2517d5f0";
+    fsType = "btrfs";
+    options = [
+      "autodefrag"
+      "space_cache"
+      "compress=lzo"
+      "noatime"
+      "ssd"
+    ];
+  };
+
+  swapDevices = [
+    { device = "/dev/disk/by-uuid/fecde631-8661-4a0e-88e6-5ce5b551847a"; }
+  ];
+
+  nix = {
+    maxJobs = 4;
+    extraOptions = ''
+      auto-optimise-store = true
+    '';
+  };
+
+  i18n = {
+    consoleFont = "lat9w-16";
+    consoleKeyMap = "uk";
+    defaultLocale = "en_GB.UTF-8";
+  };
+}