about summary refs log tree commit diff
path: root/modules/user/aszlig/profiles/base.nix
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2015-03-18 03:25:38 +0100
committeraszlig <aszlig@redmoonstudios.org>2015-03-18 03:25:38 +0100
commitec2b45fb836842abb89a14088ea84365a45019ae (patch)
tree6ccceecb4b36d4871bd0056d7772ce1046f95120 /modules/user/aszlig/profiles/base.nix
parent187c673adf3c6a9a7afd8934ee41df7941f28cbf (diff)
Move common{-workstation}.nix into profiles.
Both files are specific to my machines only and need to be generalized
in order to be useful for anyone else.

Moving these files has a few other censequences, such that we now need
to automatically import the module-list.nix in callMachine.

Speaking of module-list.nix, the file is now alphabetically sorted.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Diffstat (limited to 'modules/user/aszlig/profiles/base.nix')
-rw-r--r--modules/user/aszlig/profiles/base.nix64
1 files changed, 64 insertions, 0 deletions
diff --git a/modules/user/aszlig/profiles/base.nix b/modules/user/aszlig/profiles/base.nix
new file mode 100644
index 00000000..aa984544
--- /dev/null
+++ b/modules/user/aszlig/profiles/base.nix
@@ -0,0 +1,64 @@
+{ config, pkgs, lib, ... }:
+
+let
+  cfg = config.vuizvui.user.aszlig.profiles.base;
+
+in {
+  options.vuizvui.user.aszlig.profiles.base = {
+    enable = lib.mkEnableOption "Base profile for aszlig";
+  };
+
+  config = lib.mkIf cfg.enable {
+    nix = {
+      package = pkgs.nixUnstable;
+      useChroot = true;
+      readOnlyStore = true;
+      extraOptions = ''
+        build-cores = 0
+        auto-optimise-store = true
+      '';
+    };
+
+    boot.loader.grub = {
+      enable = true;
+      version = 2;
+    };
+
+    hardware.cpu.intel.updateMicrocode = true;
+
+    users.defaultUserShell = "/var/run/current-system/sw/bin/zsh";
+
+    networking.wireless.enable = false;
+    networking.firewall.enable = false;
+    networking.useNetworkd = true;
+
+    i18n.consoleKeyMap = "dvorak";
+
+    programs.ssh.startAgent = false;
+    programs.ssh.extraConfig = ''
+      ServerAliveInterval 60
+    '';
+
+    services.nixosManual.showManual = false;
+
+    environment.systemPackages = with pkgs; [
+      binutils
+      cacert
+      file
+      htop
+      iotop
+      psmisc
+      unrar
+      unzip
+      vim
+      vlock
+      wget
+      xz
+      zsh
+    ];
+
+    nixpkgs.config = import ../../../../nixpkgs/config.nix;
+    system.fsPackages = with pkgs; [ sshfsFuse ];
+    time.timeZone = "Europe/Berlin";
+  };
+}