about summary refs log tree commit diff
path: root/modules
diff options
context:
space:
mode:
authordevhell <devhell@mailfresser.de>2022-12-05 12:43:58 +0000
committerdevhell <devhell@mailfresser.de>2022-12-05 12:43:58 +0000
commit2ff13ca70b4cca8aad20b36eea026e3481ada632 (patch)
tree5dd8395f432b236f6ecc6a6a6d5c287e013e0947 /modules
parent32b8af8c826fb7be143e692d3f13b9572841d318 (diff)
treewide: switch from Xorg to wayland/sway
Diffstat (limited to 'modules')
-rw-r--r--modules/user/devhell/profiles/base.nix15
-rw-r--r--modules/user/devhell/profiles/packages.nix1
-rw-r--r--modules/user/devhell/profiles/services.nix68
3 files changed, 49 insertions, 35 deletions
diff --git a/modules/user/devhell/profiles/base.nix b/modules/user/devhell/profiles/base.nix
index 238c9eb1..3a4afe70 100644
--- a/modules/user/devhell/profiles/base.nix
+++ b/modules/user/devhell/profiles/base.nix
@@ -119,6 +119,16 @@ in {
     };
 
     environment = {
+      sessionVariables = {
+        XDG_SESSION_TYPE = "wayland";
+        XDG_CURRENT_DESKTOP = "sway";
+        MOZ_ENABLE_WAYLAND = "1";
+        MOZ_USE_XINPUT2 = "1";
+        SDL_VIDEODRIVER = "wayland";
+        QT_QPA_PLATFORM = "wayland-egl";
+        QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
+        XKB_DEFAULT_LAYOUT = "gb";
+      };
       shellInit = ''
         export GPG_AGENT_INFO=$HOME/.gnupg/S.gpg-agent
         export LIBVIRT_DEFAULT_URI=qemu:///system
@@ -135,6 +145,11 @@ in {
       shells = [ pkgs.zsh ];
     };
 
+    xdg.portal = {
+      enable = true;
+      extraPortals = with pkgs; [ xdg-desktop-portal-wlr xdg-desktop-portal-gtk ];
+    };
+
     fonts = {
       fontconfig = {
         enable = true;
diff --git a/modules/user/devhell/profiles/packages.nix b/modules/user/devhell/profiles/packages.nix
index 554962e9..43400ac3 100644
--- a/modules/user/devhell/profiles/packages.nix
+++ b/modules/user/devhell/profiles/packages.nix
@@ -202,6 +202,7 @@ in {
       ntfs3g
       ntfsprogs
       obs-studio
+      onefetch
       oneshot
       openssl
       p7zip
diff --git a/modules/user/devhell/profiles/services.nix b/modules/user/devhell/profiles/services.nix
index 2ede83a7..76d9d62a 100644
--- a/modules/user/devhell/profiles/services.nix
+++ b/modules/user/devhell/profiles/services.nix
@@ -25,13 +25,44 @@ in {
 
     location.provider = "geoclue2";
 
+    programs.sway = {
+      enable = true;
+      wrapperFeatures.gtk = true;
+      extraPackages = with pkgs; [
+        rofi-wayland
+        alacritty
+        waybar
+        i3status-rust
+        swayidle
+        swaylock-effects
+        wl-clipboard
+        swaybg
+      ];
+    };
+
+    services.greetd = {
+      enable = true;
+      settings = {
+        default_session = {
+          command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd sway";
+          user = "greeter";
+          vt = 3;
+        };
+      };
+    };
+
+    services.dbus.packages = [ pkgs.mako ];
+
     services = {
       pcscd.enable = true;
       gpm.enable = true;
       openssh.enable = true;
       udisks2.enable = true;
-      redshift.enable = true;
       haveged.enable = true;
+      redshift = {
+        enable = true;
+        package = pkgs.gammastep;
+      };
       geoclue2 = {
         enable = true;
         enable3G = false;
@@ -49,7 +80,7 @@ in {
       };
 
       picom = {
-        enable = true;
+        enable = false;
         vSync = true;
         backend = "glx";
         fade = true;
@@ -78,39 +109,6 @@ in {
       socketActivation = true;
     };
 
-    services.xserver = {
-      displayManager.defaultSession = "none+i3";
-      displayManager.lightdm = {
-        enable = true;
-        greeters.mini = {
-          enable = true;
-          user = "dev";
-          extraConfig = ''
-            [greeter]
-            show-password-label = true
-            password-label-text = ❯
-            show-input-cursor = false
-            [greeter-theme]
-            border-color = "#3B4252"
-            text-color = "#4C566A"
-            window-color = "#3B4252"
-            layout-space = 5
-            password-background-color = "#3B4252"
-            border-width = 0px
-            password-border-width = 0px
-          '';
-        };
-      };
-    };
-
-    services.xserver.windowManager.i3 = {
-      enable = true;
-      package = pkgs.i3-gaps;
-      extraPackages = with pkgs; [
-        polybar multilockscreen rofi i3-auto-layout
-      ];
-    };
-
     services.journald.extraConfig = ''
       SystemMaxUse = 50M
     '';