diff --git a/flake.lock b/flake.lock
index 01dd182c..fbb04965 100644
--- a/flake.lock
+++ b/flake.lock
@@ -86,19 +86,36 @@
         "type": "github"
       }
     },
+    "nixpkgs-unstable_2": {
+      "locked": {
+        "lastModified": 1718160348,
+        "narHash": "sha256-9YrUjdztqi4Gz8n3mBuqvCkMo4ojrA6nASwyIKWMpus=",
+        "owner": "NixOS",
+        "repo": "nixpkgs",
+        "rev": "57d6973abba7ea108bac64ae7629e7431e0199b6",
+        "type": "github"
+      },
+      "original": {
+        "owner": "NixOS",
+        "ref": "nixos-unstable",
+        "repo": "nixpkgs",
+        "type": "github"
+      }
+    },
     "opdavies-nvim": {
       "inputs": {
         "nixpkgs": [
           "nixpkgs"
         ],
-        "nixpkgs-2305": "nixpkgs-2305"
+        "nixpkgs-2305": "nixpkgs-2305",
+        "nixpkgs-unstable": "nixpkgs-unstable_2"
       },
       "locked": {
-        "lastModified": 1718010124,
-        "narHash": "sha256-nnsPTbO4FhNYmm4PlhYjTFqcmnOvuB2OXAOv/8NC7f4=",
+        "lastModified": 1718217733,
+        "narHash": "sha256-gsx71BY4IFk4449YQEhsS+n8NiWRcsxncNhfvYqeewU=",
         "owner": "opdavies",
         "repo": "opdavies.nvim",
-        "rev": "b00cef78afe53a421d6e7115dd8139ccddf01db4",
+        "rev": "2453186ee1c97e5e21f081bd9efa06f3b7ca9682",
         "type": "github"
       },
       "original": {
diff --git a/lib/nixos/configuration.nix b/lib/nixos/configuration.nix
index 8b606680..d2f0d2f1 100644
--- a/lib/nixos/configuration.nix
+++ b/lib/nixos/configuration.nix
@@ -115,7 +115,11 @@ in
   # Enable sound with pipewire.
   sound.enable = true;
   hardware.pulseaudio.enable = false;
-  security.rtkit.enable = true;
+
+  security = {
+    polkit.enable = true;
+    rtkit.enable = true;
+  };
 
   services.pipewire = {
     enable = true;
diff --git a/lib/nixos/default.nix b/lib/nixos/default.nix
index 9c994420..17f875d8 100644
--- a/lib/nixos/default.nix
+++ b/lib/nixos/default.nix
@@ -37,8 +37,9 @@ inputs.nixpkgs.lib.nixosSystem {
       };
     }
 
+    (import ./modules/awesome.nix)
     (import ./modules/gnome.nix)
-    (import ./modules/sway.nix { inherit inputs username; })
+    # (import ./modules/sway.nix { inherit inputs username; })
 
     configuration
     hardwareConfiguration
diff --git a/lib/nixos/home-manager/desktop.nix b/lib/nixos/home-manager/desktop.nix
index 91d1927d..878638c7 100644
--- a/lib/nixos/home-manager/desktop.nix
+++ b/lib/nixos/home-manager/desktop.nix
@@ -6,6 +6,8 @@
 }:
 {
   imports = [
+    ./modules/autorandr.nix
+    ./modules/awesome.nix
     ./modules/copyq.nix
     ./modules/dunst.nix
     ./modules/espanso.nix
@@ -13,7 +15,7 @@
     ./modules/feh.nix
     ./modules/flameshot.nix
     ./modules/kanshi.nix
-    ./modules/sway.nix
+    # ./modules/sway.nix
     ./modules/mpv.nix
   ];
 }
diff --git a/lib/nixos/home-manager/modules/autorandr.nix b/lib/nixos/home-manager/modules/autorandr.nix
new file mode 100644
index 00000000..a057098b
--- /dev/null
+++ b/lib/nixos/home-manager/modules/autorandr.nix
@@ -0,0 +1,52 @@
+{ username, ... }: {
+  services.autorandr.enable = true;
+
+  xdg.configFile."autorandr/postswitch" = {
+    executable = true;
+    text = ''
+      #!/usr/bin/env bash
+
+      feh --randomize --bg-scale /home/${username}/Pictures/Wallpaper/*;
+    '';
+  };
+
+  programs.autorandr = {
+    enable = true;
+
+    profiles = let
+      fingerprint =
+        "00ffffffffffff000daef21400000000161c0104a51f117802ee95a3544c99260f505400000001010101010101010101010101010101363680a0703820402e1e240035ad10000018000000fe004e3134304843472d4751320a20000000fe00434d4e0a202020202020202020000000fe004e3134304843472d4751320a2000bb";
+      name = "eDP-1";
+    in {
+      default = {
+        fingerprint = { "${name}" = fingerprint; };
+
+        config = {
+          "${name}" = {
+            enable = true;
+            mode = "1920x1080";
+          };
+        };
+      };
+
+      desktop = {
+        config = {
+          "${name}".enable = false;
+
+          "HDMI-1" = {
+            enable = true;
+            mode = "2560x1440";
+            primary = true;
+            rate = "59.95";
+          };
+        };
+
+        fingerprint = {
+          "${name}" = fingerprint;
+          "HDMI-1" =
+            "00ffffffffffff004c2d1710424e58432b1f0103803f24782ac8b5ad50449e250f5054bfef80714f810081c081809500a9c0b300010108e80030f2705a80b0588a0078682100001e000000fd00324b1e873c000a202020202020000000fc004c5532385235350a2020202020000000ff0048345a524130303132380a20200183020335f04961120313041f10605f2309070783010000e305c0006b030c002000b83c2000200167d85dc401788003e20f81e3060501023a801871382d40582c450078682100001e023a80d072382d40102c458078682100001e04740030f2705a80b0588a0078682100001e565e00a0a0a029503020350078682100001a000049";
+        };
+      };
+    };
+  };
+}
diff --git a/lib/nixos/home-manager/modules/awesome.nix b/lib/nixos/home-manager/modules/awesome.nix
new file mode 100644
index 00000000..eb470a9f
--- /dev/null
+++ b/lib/nixos/home-manager/modules/awesome.nix
@@ -0,0 +1,6 @@
+{
+  xsession.windowManager.awesome = {
+    enable = true;
+    noArgb = true;
+  };
+}
diff --git a/lib/nixos/modules/awesome.nix b/lib/nixos/modules/awesome.nix
new file mode 100644
index 00000000..6f82ce12
--- /dev/null
+++ b/lib/nixos/modules/awesome.nix
@@ -0,0 +1,9 @@
+{ pkgs, ... }:
+{
+  environment.systemPackages = with pkgs; [ nitrogen ];
+
+  services.xserver.windowManager.awesome = {
+    enable = true;
+    noArgb = true;
+  };
+}
diff --git a/lib/nixos/modules/gnome.nix b/lib/nixos/modules/gnome.nix
index bbb5ad27..a1f019e3 100644
--- a/lib/nixos/modules/gnome.nix
+++ b/lib/nixos/modules/gnome.nix
@@ -4,9 +4,9 @@
   services.xserver = {
     desktopManager.gnome.enable = true;
 
-    displayManager.gdm = {
+    displayManager.sddm = {
       enable = true;
-      wayland = true;
+      # wayland = true;
     };
   };