Add noctalia module and removed waybar and other configurations no longer needed with noctalia

This commit is contained in:
2026-06-02 12:22:05 +02:00
parent bcf0c17c51
commit ca285c92f7
8 changed files with 42 additions and 371 deletions

View File

@ -35,8 +35,8 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
quickshell = { noctalia = {
url = "github:outfoxxed/quickshell"; url = "github:noctalia-dev/noctalia-shell/v5";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
@ -78,6 +78,7 @@
cookiez-assets, cookiez-assets,
home-manager, home-manager,
plasma-manager, plasma-manager,
noctalia,
nixos-hardware, nixos-hardware,
aagl, aagl,
stylix, stylix,

View File

@ -0,0 +1,12 @@
{
inputs,
pkgs,
...
}: {
imports = [
];
environment.systemPackages = with pkgs; [
inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
];
}

View File

@ -0,0 +1,9 @@
{inputs, ...}: {
imports = [
inputs.noctalia.homeModules.default
];
programs.noctalia = {
enable = true;
};
}

View File

@ -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": "<tt><small>{calendar}</small></tt>",
"calendar": {
"mode": "year",
"mode-mon-col": 3,
"weeks-pos": "right",
"on-scroll": 1,
"on-click-right": "mode",
"format": {
"months": "<span color='#f5e0dc'><b>{}</b></span>",
"days": "<span color='#cdd6f4'><b>{}</b></span>",
"weeks": "<span color='#fab387'><b>W{}</b></span>",
"weekdays": "<span color='#f5c2e7'><b>{}</b></span>",
"today": "<span color='#cba6f7'><b><u>{}</u></b></span>"
}
},
"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": [
"󰂎",
"󰁺",
"󰁻",
"󰁼",
"󰁽",
"󰁾",
"󰁿",
"󰂀",
"󰂁",
"󰂂",
"󰁹"
]
}
}

View File

@ -1,4 +0,0 @@
{...}: {
# xdg.configFile."waybar/config.jsonc".source = ./config.jsonc;
# xdg.configFile."waybar/style.css".source = ./style.css;
}

View File

@ -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;
}

View File

@ -16,12 +16,8 @@
]; ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
#mako
fuzzel
waybar
xwayland-satellite xwayland-satellite
lxsession #Needed for things like gparted lxsession #Needed for things like gparted
inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
]; ];
programs = { programs = {
@ -35,7 +31,6 @@
#services.xserver.displayManager.sddm.enable = true; #services.xserver.displayManager.sddm.enable = true;
xdg.portal = { xdg.portal = {
#Needed for waybar
enable = true; enable = true;
extraPortals = [pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr]; extraPortals = [pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr];
config.common.default = "*"; config.common.default = "*";

View File

@ -5,31 +5,13 @@
}: { }: {
imports = [ imports = [
inputs.niri.homeModules.niri 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 = { programs.niri = {
package = pkgs.niri; package = pkgs.niri;
enable = true; 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 = '' config = ''
input { input {
keyboard { keyboard {
@ -87,14 +69,8 @@
} }
} }
spawn-at-startup "${pkgs.waybar}/bin/waybar" spawn-at-startup "noctalia"
spawn-at-startup "${pkgs.mako}/bin/mako" spawn-at-startup "lxpolkit"
//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"
hotkey-overlay { hotkey-overlay {
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup. // Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
@ -109,10 +85,10 @@
draw-border-with-background false draw-border-with-background false
} }
layer-rule { // layer-rule {
match namespace="^awww-daemonbackdrop$" // match namespace="^awww-daemonbackdrop$"
place-within-backdrop true // place-within-backdrop true
} // }
output "eDP-1" { output "eDP-1" {
mode "2880x1920@120.000" mode "2880x1920@120.000"
@ -123,24 +99,26 @@
binds { binds {
Mod+Shift+Minus { show-hotkey-overlay; } 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+T hotkey-overlay-title="Open a Terminal: kitty" { spawn "kitty"; }
Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; } Mod+D hotkey-overlay-title="Run an Application" { spawn-sh "noctalia msg panel-toggle launcher"; }
Super+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; } 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"; } 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"; } XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "noctalia msg volume-up"; }
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; } XF86AudioLowerVolume allow-when-locked=true { spawn-sh "noctalia msg volume-down"; }
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; } XF86AudioMute allow-when-locked=true { spawn-sh "noctalia msg volume-mute"; }
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; } XF86AudioMicMute allow-when-locked=true { spawn-sh "noctalia msg mic-mute"; }
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; } XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; } XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; } XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; } XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
XF86MonBrightnessUp 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 "brightnessctl" "--class=backlight" "set" "10%-"; } XF86MonBrightnessDown allow-when-locked=true { spawn-sh "noctalia msg brightness-down"; }
Mod+O repeat=false { toggle-overview; } Mod+O repeat=false { toggle-overview; }