about summary refs log tree commit diff
path: root/nixos/kompakt/configuration.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/kompakt/configuration.nix')
-rw-r--r--nixos/kompakt/configuration.nix70
1 files changed, 70 insertions, 0 deletions
diff --git a/nixos/kompakt/configuration.nix b/nixos/kompakt/configuration.nix
index 1c64427..4d4c007 100644
--- a/nixos/kompakt/configuration.nix
+++ b/nixos/kompakt/configuration.nix
@@ -16,6 +16,10 @@
   # Or completely disable extraction and managemement of them completely:
   # hardware.asahi.extractPeripheralFirmware = false;
 
+  boot.kernelParams = [
+    "console=tty1"
+  ];
+
   boot.supportedFilesystems = [ "zfs" ];
 
   networking.hostName = "kompakt";
@@ -39,6 +43,72 @@
 
   sound.enable = true;
 
+  fonts = {
+    fontDir.enable = true;
+
+    fonts = with pkgs; [
+      dina-font
+      jetbrains-mono
+      sarasa-gothic
+      siji
+      emacs-all-the-icons-fonts
+      twemoji-color-font
+      (nerdfonts.override { fonts = [ "Iosevka" "JetBrainsMono" ]; })
+    ];
+
+    fontconfig = {
+      enable = true;
+
+      defaultFonts = {
+        serif = [
+          "Sarasa Gothic C"
+          "Sarasa Gothic J"
+          "Sarasa Gothic K"
+        ];
+
+        sansSerif = [
+          "Sarasa Gothic C"
+          "Sarasa Gothic J"
+          "Sarasa Gothic K"
+        ];
+
+        monospace = [
+          "Dina"
+          "Iosevka Nerd Font"
+          "JetBrainsMono Nerd Font"
+        ];
+
+        emoji = [
+          "Siji"
+          "Twitter Color Emoji"
+        ];
+      };
+    };
+  };
+
+  services.greetd = {
+    enable = true;
+    vt = 2;
+
+    settings.default_session.command = "${pkgs.greetd.tuigreet}/bin/tuigreet -t -c sway";
+  };
+
+  programs = {
+    sway.enable = true;
+    sway.extraPackages = lib.mkForce [ ];
+
+    zsh.enable = true;
+    zsh.enableCompletion = false;
+  };
+
+  xdg.portal = {
+    enable = true;
+    extraPortals = with pkgs; [
+      xdg-desktop-portal-gtk
+      xdg-desktop-portal-wlr
+    ];
+  };
+
   sops.defaultSopsFile = ./secrets/secrets.yaml;
   sops.secrets.root-password.neededForUsers = true;
   sops.secrets.sefidel-password.neededForUsers = true;