diff --git a/flake.nix b/flake.nix
index 5ad88dc..125600b 100644
--- a/flake.nix
+++ b/flake.nix
@@ -35,8 +35,8 @@
inputs.nixpkgs.follows = "nixpkgs";
};
- quickshell = {
- url = "github:outfoxxed/quickshell";
+ noctalia = {
+ url = "github:noctalia-dev/noctalia-shell/v5";
inputs.nixpkgs.follows = "nixpkgs";
};
@@ -78,6 +78,7 @@
cookiez-assets,
home-manager,
plasma-manager,
+ noctalia,
nixos-hardware,
aagl,
stylix,
diff --git a/modules/noctalia/default.nix b/modules/noctalia/default.nix
new file mode 100644
index 0000000..f0e9b21
--- /dev/null
+++ b/modules/noctalia/default.nix
@@ -0,0 +1,12 @@
+{
+ inputs,
+ pkgs,
+ ...
+}: {
+ imports = [
+ ];
+
+ environment.systemPackages = with pkgs; [
+ inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
+ ];
+}
diff --git a/modules/noctalia/home.nix b/modules/noctalia/home.nix
new file mode 100644
index 0000000..139e611
--- /dev/null
+++ b/modules/noctalia/home.nix
@@ -0,0 +1,9 @@
+{inputs, ...}: {
+ imports = [
+ inputs.noctalia.homeModules.default
+ ];
+
+ programs.noctalia = {
+ enable = true;
+ };
+}
diff --git a/modules/waybar/config.jsonc b/modules/waybar/config.jsonc
deleted file mode 100644
index 7820ff6..0000000
--- a/modules/waybar/config.jsonc
+++ /dev/null
@@ -1,153 +0,0 @@
-{
- "layer": "top",
- "position": "top",
- "modules-left": [
- "custom/launcher",
- "hyprland/workspaces",
- "cpu",
- "memory"
-
- ],
- "modules-center": [
- "hyprland/window"
- ],
- "spacing": 4,
- "modules-right": [
- "tray",
- "wireplumber",
- "network",
- "backlight",
- "clock",
- "battery",
- "custom/power"
- ],
- "backlight": {
- "device": "intel_backlight",
- "format": "{percent}% {icon}",
- "format-icons": ["", ""]
- },
- "hyprland/workspaces": {
- "format": "{name}",
- "persistent-workspaces": {
- "1": [],
- "2": [],
- "3": []
- }
- },
- "hyprland/window": {
- "icon": false,
- "separate-outputs": true,
- "format": "{}"
- },
- "tray": {
- "icon-size": 15,
- "spacing": 7
- },
- "clock": {
- "format": "{:%H:%M} ",
- "format-alt": "{:%A, %B %d, %Y (%R)}",
- "tooltip-format": "{calendar}",
- "calendar": {
- "mode": "year",
- "mode-mon-col": 3,
- "weeks-pos": "right",
- "on-scroll": 1,
- "on-click-right": "mode",
- "format": {
- "months": "{}",
- "days": "{}",
- "weeks": "W{}",
- "weekdays": "{}",
- "today": "{}"
- }
- },
- "actions": {
- "on-click-right": "mode",
- "on-click-forward": "tz_up",
- "on-click-backward": "tz_down",
- "on-scroll-up": "shift_up",
- "on-scroll-down": "shift_down"
- }
- },
- "cpu": {
- "interval": 1,
- "format": "CPU {usage:>2}% {icon0}{icon1}{icon2}{icon3}",
- "format-icons": [
- "▁",
- "▂",
- "▃",
- "▄",
- "▅",
- "▆",
- "▇",
- "█"
- ],
- "on-click": "kitty -e btop"
- },
- "memory": {
- "interval": 30,
- "format": "MEM {used:0.1f}G/{total:0.1f}G"
- },
- "network": {
- "format": " Disabled",
- "format-wifi": " ",
- "format-ethernet": " ",
- "format-disconnected": "⚠",
- "tooltip": true,
- "tooltip-format": "{ifname}\n{ipaddr}",
- "tooltip-format-wifi": "{essid} {ifname}\n{ipaddr}\nstrength: {signalStrength}%",
- "on-click": "networkmanager_dmenu"
- },
- "custom/launcher": {
- "format": " ",
- "tooltip": false,
- "on-click": "wofi -c ~/.config/wofi/config -I"
- },
- "custom/power": {
- "format": " ",
- "on-click": "~/.config/wofi/scripts/power.sh",
- "tooltip": false
- },
- "wireplumber": {
- "scroll-step": 10,
- "format": "{volume}% {icon} ",
- "format-bluetooth": "{icon} {volume}%",
- "format-muted": "muted ",
- "on-click": "pavucontrol",
- "format-icons": {
- "headphones": "",
- "handsfree": "",
- "headset": "",
- "phone": "",
- "portable": "",
- "car": "",
- "default": [
- "",
- ""
- ]
- }
- },
- "battery": {
- "states": {
- "warning": 30,
- "critical": 15
- },
- "format": "{capacity}% {icon}",
- "format-charging": " {capacity}%",
- "format-pluged": " {capacity}%",
- "format-full": " {capacity}%",
- "format-icons": [
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- ""
- ]
- }
-}
diff --git a/modules/waybar/home.nix b/modules/waybar/home.nix
deleted file mode 100644
index 5349047..0000000
--- a/modules/waybar/home.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{...}: {
- # xdg.configFile."waybar/config.jsonc".source = ./config.jsonc;
- # xdg.configFile."waybar/style.css".source = ./style.css;
-}
diff --git a/modules/waybar/style.css b/modules/waybar/style.css
deleted file mode 100644
index a2dfbb0..0000000
--- a/modules/waybar/style.css
+++ /dev/null
@@ -1,167 +0,0 @@
-* {
- font-family: "JetBrainsMono Nerd Font", sans-serif;
- font-size: 13px;
-}
-
-window#waybar {
- background-color: transparent;
-}
-
-window > box {
- margin-top: 0px;
- margin-left: 10px;
- margin-right: 10px;
- padding-left: 4px;
- padding-right: 4px;
-}
-
-#window {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 12px 8px 8px;
- margin: 0px 0;
-}
-
-window#waybar.empty #window {
- background: rgba(12, 12, 12, 0);
-}
-
-.modules-left {
- padding: 3px;
-}
-
-.modules-right {
- padding: 3px;
-}
-
-.modules-center {
- padding: 3px;
-}
-
-#workspaces {
- background-color: #202020;
- border-radius: 20px;
- padding: 4px 4px 4px 6px;
- margin: 4px 0;
-}
-
-#workspaces button {
- min-height: 0;
- padding: 0 7px;
- margin-right: 2px;
- color: #f5e0dc;
-}
-
-#workspaces button.urgent {
- color: #f5e0dc;
- animation-name: blink;
- animation-duration: 0.5s;
- animation-timing-function: linear;
- animation-iteration-count: infinite;
- animation-direction: alternate;
-}
-
-#workspaces button.empty {
- color: #cdd6f4;
-}
-
-#workspaces button.visible {
- color: #89dceb;
-}
-
-#workspaces button.active {
- color: #fab387;
-}
-
-@keyframes blink {
- to {
- color: #202020;
- background-color: #dcf5f3;
- }
-}
-
-#custom-launcher {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 8px 8px 4px;
- margin: 4px 0;
- color: #89dceb;
-}
-
-#custom-power {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 12px 8px 8px;
- margin: 4px 0;
-}
-
-#cpu {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 8px 8px 20px;
- margin: 4px 0;
- color: #f2cdcd;
-}
-
-#memory {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 8px 8px 20px;
- margin: 4px 0;
- color: #fab387;
-}
-
-#wireplumber {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 8px 8px 20px;
- margin: 4px 0;
- color: #f9e2af;
-}
-
-#wireplumber.muted {
- color: #f38ba8;
-}
-
-#clock {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 10px 10px 10px;
- margin: 4px 0;
- color: #94e2d5;
-}
-
-#network {
- background-color: #202020;
- color: #cdd6f4;
- border-radius: 20px;
- padding: 8px;
- margin: 4px 0;
-}
-
-#network.disabled {
- color: #f38ba8;
-}
-
-#tray {
- background-color: #202020;
- border-radius: 20px;
- padding: 8px 12px 8px 12px;
- margin: 4px 0;
-}
-
-#battery {
- background-color: #202020;
- color: #cdd6f4;
- border-radius: 20px;
- padding: 8px;
- margin: 4px 0;
-}
-
-#backlight {
- background-color: #202020;
- color: #cdd6f4;
- border-radius: 20px;
- padding: 8px;
- margin: 4px 0;
-}
diff --git a/niri/default.nix b/niri/default.nix
index c95ba40..2ba1820 100644
--- a/niri/default.nix
+++ b/niri/default.nix
@@ -16,12 +16,8 @@
];
environment.systemPackages = with pkgs; [
- #mako
- fuzzel
- waybar
xwayland-satellite
lxsession #Needed for things like gparted
- inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
];
programs = {
@@ -35,7 +31,6 @@
#services.xserver.displayManager.sddm.enable = true;
xdg.portal = {
- #Needed for waybar
enable = true;
extraPortals = [pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr];
config.common.default = "*";
diff --git a/niri/home.nix b/niri/home.nix
index 249411a..5cea454 100644
--- a/niri/home.nix
+++ b/niri/home.nix
@@ -5,31 +5,13 @@
}: {
imports = [
inputs.niri.homeModules.niri
- ../modules/waybar/home.nix
+ ../modules/noctalia/home.nix
];
- xdg.configFile."mako/config".text = ''
- default-timeout=5000
- ignore-timeout=1
- '';
-
programs.niri = {
package = pkgs.niri;
enable = true;
- #xwayland.enable = true;
- # config = ''
- # binds {
- # Super+Return { spawn "kitty"; }
- # Super+Space { spawn "fuzzel"; }
- # Super+Q { close-window; }
- # Super+Left { focus-column-left; }
- # Super+Right { focus-column-right; }
- # Super+Up { focus-workspace-up; }
- # Super+Down { focus-workspace-down; }
- # Super+L { spawn "hyprlock"; }
- # Super+Shift+E { "quit"; }
- # }
- # '';
+
config = ''
input {
keyboard {
@@ -87,14 +69,8 @@
}
}
- spawn-at-startup "${pkgs.waybar}/bin/waybar"
- spawn-at-startup "${pkgs.mako}/bin/mako"
- //spawn-sh-at-startup "${awwwPkg}/bin/awww-daemon --no-cache & sleep 1; ${awwwPkg}/bin/awww img ${inputs.cookiez-assets}/wallpapers/pixel-desert.png"
- spawn-sh-at-startup "${awwwPkg}/bin/awww-daemon --no-cache"
- spawn-sh-at-startup "until ${awwwPkg}/bin/awww query >/dev/null 2>&1; do :; done; ${awwwPkg}/bin/awww img --transition-type none ${inputs.cookiez-assets}/wallpapers/pixel-desert.png"
-
- spawn-sh-at-startup "${awwwPkg}/bin/awww-daemon --no-cache --namespace backdrop"
- spawn-sh-at-startup "until ${awwwPkg}/bin/awww query -n backdrop >/dev/null 2>&1; do :; done; ${awwwPkg}/bin/awww img -n backdrop --transition-type none ${inputs.cookiez-assets}/wallpapers/pixel-desert.png"
+ spawn-at-startup "noctalia"
+ spawn-at-startup "lxpolkit"
hotkey-overlay {
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
@@ -109,10 +85,10 @@
draw-border-with-background false
}
- layer-rule {
- match namespace="^awww-daemonbackdrop$"
- place-within-backdrop true
- }
+ // layer-rule {
+ // match namespace="^awww-daemonbackdrop$"
+ // place-within-backdrop true
+ // }
output "eDP-1" {
mode "2880x1920@120.000"
@@ -123,24 +99,26 @@
binds {
Mod+Shift+Minus { show-hotkey-overlay; }
+ Mod+Shift+S hotkey-overlay-title="Make a screenshot selection" { spawn-sh "noctalia msg screenshot-region";}
+
Mod+T hotkey-overlay-title="Open a Terminal: kitty" { spawn "kitty"; }
- Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
- Super+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; }
+ Mod+D hotkey-overlay-title="Run an Application" { spawn-sh "noctalia msg panel-toggle launcher"; }
+ Super+L hotkey-overlay-title="Lock the Screen" { spawn-sh "noctalia msg session lock"; }
Super+Alt+S allow-when-locked=true hotkey-overlay-title=null { spawn-sh "pkill orca || exec orca"; }
- XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
- XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
- XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
- XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
+ XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "noctalia msg volume-up"; }
+ XF86AudioLowerVolume allow-when-locked=true { spawn-sh "noctalia msg volume-down"; }
+ XF86AudioMute allow-when-locked=true { spawn-sh "noctalia msg volume-mute"; }
+ XF86AudioMicMute allow-when-locked=true { spawn-sh "noctalia msg mic-mute"; }
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
- XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
- XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
+ XF86MonBrightnessUp allow-when-locked=true { spawn-sh "noctalia msg brightness-up"; }
+ XF86MonBrightnessDown allow-when-locked=true { spawn-sh "noctalia msg brightness-down"; }
Mod+O repeat=false { toggle-overview; }