summary refs log tree commit diff stats
path: root/sysconf/thinklappi.nix
diff options
context:
space:
mode:
authorsils <sils@sils.li>2023-01-20 18:45:09 +0100
committersils <sils@sils.li>2023-01-20 18:45:09 +0100
commit2343104396e086bd763d994c2372dbfa03ccb85f (patch)
tree2ed068483e1c37d109d0955b8b44bf3c3c493835 /sysconf/thinklappi.nix
parentFix: declare xdg-portal (diff)
downloadnix-config-2343104396e086bd763d994c2372dbfa03ccb85f.tar.gz
nix-config-2343104396e086bd763d994c2372dbfa03ccb85f.zip
Structure: Move configuration.nix into host specific file
This ensures that nixos-rebuild uses flakes and will probably have
advantages in case I'll ever want to deploy multiple machines using this
config.
Diffstat (limited to 'sysconf/thinklappi.nix')
-rw-r--r--sysconf/thinklappi.nix66
1 files changed, 66 insertions, 0 deletions
diff --git a/sysconf/thinklappi.nix b/sysconf/thinklappi.nix
new file mode 100644
index 0000000..4904ffd
--- /dev/null
+++ b/sysconf/thinklappi.nix
@@ -0,0 +1,66 @@
+{
+  config,
+  pkgs,
+  ...
+}: let
+  compiledLayout = pkgs.runCommand "keyboard-layout" {} ''
+    ${pkgs.xorg.xkbcomp}/bin/xkbcomp ${../files/neoqwertz.xkb} $out
+  '';
+in {
+  imports = [
+    ../hardware/basesystem.nix
+    ../env.nix
+    ../nix.nix
+    ../packages.nix
+    ../users.nix
+    ../zsh.nix
+    ../flatpak.nix # Mainly for minecraft
+
+    # Desktop Environment to use
+    ../desktop/plasma.nix
+  ];
+
+  services = {
+    printing.enable = true;
+    xserver = {
+      layout = "de";
+      #xkbVariant = ",neo";
+      xkbOptions = "grp:win_space_toggle";
+      displayManager.sessionCommands = "${pkgs.xorg.xkbcomp}/bin/xkbcomp ${compiledLayout} $DISPLAY";
+    };
+    pipewire = {
+      enable = true;
+      alsa.enable = true;
+      alsa.support32Bit = true;
+      pulse.enable = true;
+      jack.enable = true;
+    };
+  };
+
+  hardware = {
+    bluetooth.enable = true;
+    pulseaudio.enable = false;
+  };
+  security.rtkit.enable = true;
+
+  environment.systemPackages = [pkgs.xorg.xkbcomp];
+
+  i18n.defaultLocale = "en_US.UTF-8";
+
+  networking = {
+    hostName = "thinklappi";
+    networkmanager.enable = true;
+  };
+
+  time.timeZone = "Europe/Berlin";
+
+  console = {
+    font = "Lat2-Terminus16";
+    keyMap = "de";
+    #useXkbConfig = true; # use xkbOptions in tty.
+  };
+
+  programs.ssh.startAgent = true;
+
+  system.stateVersion = "23.05";
+}