Switch back to using nm-connection-editor and blueman-manager
Adjust positioning to be on the bottom left corner, to fit better with waybar position
This commit is contained in:
parent
44a2cb9c6b
commit
f0cc42a1ae
|
@ -77,6 +77,7 @@
|
|||
printing.enable = true;
|
||||
tumbler.enable = true;
|
||||
udisks2.enable = true;
|
||||
blueman.enable = config.hardware.bluetooth.enable;
|
||||
gnome.sushi.enable = true;
|
||||
gvfs = {
|
||||
enable = true;
|
||||
|
|
|
@ -248,10 +248,10 @@
|
|||
"pin, org.kde.polkit-kde-authentication-agent-1|Pinentry|pinentry-qt|gcr-prompter"
|
||||
"dimaround, org.kde.polkit-kde-authentication-agent-1|Pinentry|pinentry-qt|gcr-prompter"
|
||||
"stayfocused, org.kde.polkit-kde-authentication-agent-1|Pinentry|pinentry-qt|gcr-prompter"
|
||||
# Audio control panel
|
||||
"float, pavucontrol"
|
||||
"size 800 600, pavucontrol"
|
||||
"move onscreen 100%-820 50,pavucontrol"
|
||||
# PulseAudio, Network and Bluetooth control panels
|
||||
"float, pavucontrol|nm-connection-editor|.blueman-manager-wrapped"
|
||||
"size 800 600, pavucontrol|nm-connection-editor|.blueman-manager-wrapped"
|
||||
"move onscreen 50 100%-615,pavucontrol|nm-connection-editor|.blueman-manager-wrapped"
|
||||
# File browser and picker dialog
|
||||
"float, org.gnome.Nautilus|xdg-desktop-portal-gtk"
|
||||
"size 800 600, org.gnome.Nautilus|xdg-desktop-portal-gtk"
|
||||
|
|
|
@ -10,270 +10,265 @@
|
|||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
settings.main =
|
||||
let
|
||||
terminal = "${config.programs.alacritty.package}/bin/alacritty -e";
|
||||
in
|
||||
{
|
||||
name = "main";
|
||||
layer = "top";
|
||||
position = "left";
|
||||
# Layout
|
||||
"modules-left" = [
|
||||
"hyprland/workspaces"
|
||||
"mpris"
|
||||
];
|
||||
"modules-center" = [ ];
|
||||
"modules-right" = [
|
||||
"custom/notification"
|
||||
"pulseaudio"
|
||||
"network"
|
||||
"bluetooth"
|
||||
"clock#calendar"
|
||||
"clock"
|
||||
"backlight"
|
||||
"battery"
|
||||
"custom/weather"
|
||||
"systemd-failed-units"
|
||||
"tray"
|
||||
];
|
||||
# Module config
|
||||
"hyprland/workspaces" = {
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
"1" = "";
|
||||
"2" = "";
|
||||
"3" = "";
|
||||
"4" = "";
|
||||
"5" = "";
|
||||
"6" = "";
|
||||
"7" = "";
|
||||
default = "";
|
||||
};
|
||||
all-outputs = false;
|
||||
persistent-workspaces = {
|
||||
"1" = [ ];
|
||||
"2" = [ ];
|
||||
"3" = [ ];
|
||||
"4" = [ ];
|
||||
"5" = [ ];
|
||||
"6" = [ ];
|
||||
"7" = [ ];
|
||||
};
|
||||
settings.main = {
|
||||
name = "main";
|
||||
layer = "top";
|
||||
position = "left";
|
||||
# Layout
|
||||
"modules-left" = [
|
||||
"hyprland/workspaces"
|
||||
"mpris"
|
||||
];
|
||||
"modules-center" = [ ];
|
||||
"modules-right" = [
|
||||
"custom/notification"
|
||||
"pulseaudio"
|
||||
"network"
|
||||
"bluetooth"
|
||||
"clock#calendar"
|
||||
"clock"
|
||||
"backlight"
|
||||
"battery"
|
||||
"custom/weather"
|
||||
"systemd-failed-units"
|
||||
"tray"
|
||||
];
|
||||
# Module config
|
||||
"hyprland/workspaces" = {
|
||||
format = "{icon}";
|
||||
format-icons = {
|
||||
"1" = "";
|
||||
"2" = "";
|
||||
"3" = "";
|
||||
"4" = "";
|
||||
"5" = "";
|
||||
"6" = "";
|
||||
"7" = "";
|
||||
default = "";
|
||||
};
|
||||
"hyprland/window" = {
|
||||
"format" = "{title}";
|
||||
"max-length" = 50;
|
||||
"rewrite" = {
|
||||
"(.*) - GNU Emacs at (.*)" = " $1 [$2]";
|
||||
"(alacritty.*)" = " $1";
|
||||
"(.*) - mpv" = " $1";
|
||||
"swayimg: (.*)" = " $1";
|
||||
"swappy" = " swappy";
|
||||
"(?:/nix/.*)(btm)" = " Resource Usage [$1]";
|
||||
"(?:/nix/.*)(cava)" = " Music Visualiser [$1]";
|
||||
"Mozilla Firefox" = " $1";
|
||||
"(.*) — Mozilla Firefox" = " $1";
|
||||
"Nyxt - (.*)" = " $1";
|
||||
"(.*) - Chromium" = " $1";
|
||||
"(Signal.*)" = " $1";
|
||||
"(WhatsApp for Linux.*)" = " $1";
|
||||
"((?:.*)WebCord.*)" = " $1";
|
||||
"(Cartridges.*)" = " $1";
|
||||
"([Ss]team.*)" = " $1";
|
||||
"(Prism Launcher.*)" = " Minecraft ($1)";
|
||||
"(.*)(?: *)PrusaSlicer-(.*)" = " $1 PrusaSlicer ($2)";
|
||||
"(.*)(?: *)PrusaSlicer G-code Viewer-(.*)" = " $1 G-code Viewer ($2)";
|
||||
"FreeCAD (.*)" = " FreeCAD $1";
|
||||
"(.*) - Blender.* " = " $1";
|
||||
"(Remmina Remote Desktop Client)" = " $1";
|
||||
"(NoMachine|Nxplayer.bin)(?: *)(.*)" = " $1 $2";
|
||||
};
|
||||
};
|
||||
mpris = {
|
||||
"format" = "{player_icon}\n{status_icon}";
|
||||
"tooltip-format" = "{player_icon} ({player}) {status_icon}\n{title}\n{album}\n{artist}";
|
||||
"interval" = 1;
|
||||
"dynamic-order" = [
|
||||
"album"
|
||||
"artist"
|
||||
"title"
|
||||
"position"
|
||||
"length"
|
||||
];
|
||||
"player-icons" = {
|
||||
"default" = "";
|
||||
};
|
||||
"status-icons" = {
|
||||
"playing" = "";
|
||||
"paused" = "";
|
||||
"stopped" = "";
|
||||
};
|
||||
"ignored-players" = [
|
||||
"com"
|
||||
"org"
|
||||
"firefox"
|
||||
];
|
||||
};
|
||||
pulseaudio = {
|
||||
scroll-step = 5;
|
||||
format = "{format_source}\n{icon}";
|
||||
# format-muted = "{format_source} {icon}";
|
||||
format-source = "";
|
||||
format-source-muted = "";
|
||||
format-icons = {
|
||||
car = "";
|
||||
default = [
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
default-muted = "";
|
||||
hands-free = "";
|
||||
headset = "";
|
||||
phone = "";
|
||||
portable = "";
|
||||
headphone = "";
|
||||
};
|
||||
tooltip = true;
|
||||
tooltip-format = "{desc} ({volume}%)";
|
||||
on-click = "${pkgs.pavucontrol}/bin/pavucontrol";
|
||||
on-click-right = "${config.services.avizo.package}/bin/volumectl %";
|
||||
on-scroll-up = "${config.services.avizo.package}/bin/volumectl -u + 5";
|
||||
on-scroll-down = "${config.services.avizo.package}/bin/volumectl -u - 5";
|
||||
};
|
||||
network = {
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
format-wifi = "{icon}";
|
||||
format-ethernet = "";
|
||||
format-linked = "";
|
||||
format-disconnected = "";
|
||||
tooltip-format = "{essid} ({signalStrength}%)";
|
||||
on-click = "${terminal} ${pkgs.networkmanager}/bin/nmtui";
|
||||
};
|
||||
bluetooth = {
|
||||
format = "";
|
||||
format-disabled = "";
|
||||
format-off = "";
|
||||
format-on = "";
|
||||
format-connected = "";
|
||||
tooltip-format = "{status} | {device_alias}";
|
||||
on-click = "${terminal} ${pkgs.bluez}/bin/bluetoothctl";
|
||||
};
|
||||
"clock#calendar" =
|
||||
let
|
||||
size = "${toString config.stylix.fonts.sizes.popups}pt";
|
||||
in
|
||||
{
|
||||
format = "";
|
||||
tooltip-format = "<span size='${size}'>{calendar}</span>";
|
||||
calendar = {
|
||||
mode = "month";
|
||||
weeks-pos = "left";
|
||||
on-scroll = 1;
|
||||
format =
|
||||
let
|
||||
scheme = config.lib.stylix.scheme.withHashtag;
|
||||
in
|
||||
{
|
||||
months = "<span color='${scheme.red}'><b>{}</b></span>";
|
||||
weeks = "<span color='${scheme.cyan}'><i>W{}</i></span>";
|
||||
weekdays = "<span color='${scheme.orange}'><u>{}</u></span>";
|
||||
days = "<span color='${scheme.base05}'>{}</span>";
|
||||
today = "<span color='${scheme.magenta}'><b><u>{}</u></b></span>";
|
||||
};
|
||||
};
|
||||
actions = {
|
||||
on-scroll-up = "shift_up";
|
||||
on-scroll-down = "shift_down";
|
||||
};
|
||||
};
|
||||
clock = {
|
||||
format = "{:%H\n%M}";
|
||||
tooltip = false;
|
||||
};
|
||||
backlight = {
|
||||
format = "{icon}";
|
||||
tooltip-format = "{percent}%";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
battery = {
|
||||
states = {
|
||||
warning = 20;
|
||||
critical = 10;
|
||||
};
|
||||
format = "{icon}";
|
||||
format-time = "{H}:{m}";
|
||||
format-charging = "";
|
||||
format-plugged = "";
|
||||
# format-warning = "{icon}{capacity}%";
|
||||
# format-critical = "{icon}{capacity}% ({time})";
|
||||
tooltip-format = "{capacity}% | {power}W | {time}";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
"systemd-failed-units" = {
|
||||
hide-on-ok = true;
|
||||
format = "";
|
||||
system = true;
|
||||
user = false;
|
||||
};
|
||||
"custom/notification" =
|
||||
let
|
||||
makoctl = "${config.services.mako.package}/bin/makoctl";
|
||||
jq = "${pkgs.jq}/bin/jq";
|
||||
in
|
||||
{
|
||||
exec = "( ${makoctl} list | ${jq} -e '.data[] | length > 0' >/dev/null && echo '' ) || echo '' ";
|
||||
format = "{}";
|
||||
tooltip = false;
|
||||
on-click = "${makoctl} dismiss -a";
|
||||
interval = 3;
|
||||
};
|
||||
"custom/weather" =
|
||||
let
|
||||
date-format = "%Y-%m-%d";
|
||||
custom-indicator = "{ICON}"; # "{temp_C}°C({FeelsLikeC}°C)";
|
||||
in
|
||||
{
|
||||
format = "{}";
|
||||
tooltip = true;
|
||||
interval = 900; # Every 15 minutes
|
||||
exec = ''${pkgs.wttrbar}/bin/wttrbar --location Didcot --date-format "${date-format}" --custom-indicator "${custom-indicator}"'';
|
||||
return-type = "json";
|
||||
};
|
||||
tray = {
|
||||
icon-size = 20;
|
||||
show-passive-items = true;
|
||||
spacing = 5;
|
||||
all-outputs = false;
|
||||
persistent-workspaces = {
|
||||
"1" = [ ];
|
||||
"2" = [ ];
|
||||
"3" = [ ];
|
||||
"4" = [ ];
|
||||
"5" = [ ];
|
||||
"6" = [ ];
|
||||
"7" = [ ];
|
||||
};
|
||||
};
|
||||
"hyprland/window" = {
|
||||
"format" = "{title}";
|
||||
"max-length" = 50;
|
||||
"rewrite" = {
|
||||
"(.*) - GNU Emacs at (.*)" = " $1 [$2]";
|
||||
"(alacritty.*)" = " $1";
|
||||
"(.*) - mpv" = " $1";
|
||||
"swayimg: (.*)" = " $1";
|
||||
"swappy" = " swappy";
|
||||
"(?:/nix/.*)(btm)" = " Resource Usage [$1]";
|
||||
"(?:/nix/.*)(cava)" = " Music Visualiser [$1]";
|
||||
"Mozilla Firefox" = " $1";
|
||||
"(.*) — Mozilla Firefox" = " $1";
|
||||
"Nyxt - (.*)" = " $1";
|
||||
"(.*) - Chromium" = " $1";
|
||||
"(Signal.*)" = " $1";
|
||||
"(WhatsApp for Linux.*)" = " $1";
|
||||
"((?:.*)WebCord.*)" = " $1";
|
||||
"(Cartridges.*)" = " $1";
|
||||
"([Ss]team.*)" = " $1";
|
||||
"(Prism Launcher.*)" = " Minecraft ($1)";
|
||||
"(.*)(?: *)PrusaSlicer-(.*)" = " $1 PrusaSlicer ($2)";
|
||||
"(.*)(?: *)PrusaSlicer G-code Viewer-(.*)" = " $1 G-code Viewer ($2)";
|
||||
"FreeCAD (.*)" = " FreeCAD $1";
|
||||
"(.*) - Blender.* " = " $1";
|
||||
"(Remmina Remote Desktop Client)" = " $1";
|
||||
"(NoMachine|Nxplayer.bin)(?: *)(.*)" = " $1 $2";
|
||||
};
|
||||
};
|
||||
mpris = {
|
||||
"format" = "{player_icon}\n{status_icon}";
|
||||
"tooltip-format" = "{player_icon} ({player}) {status_icon}\n{title}\n{album}\n{artist}";
|
||||
"interval" = 1;
|
||||
"dynamic-order" = [
|
||||
"album"
|
||||
"artist"
|
||||
"title"
|
||||
"position"
|
||||
"length"
|
||||
];
|
||||
"player-icons" = {
|
||||
"default" = "";
|
||||
};
|
||||
"status-icons" = {
|
||||
"playing" = "";
|
||||
"paused" = "";
|
||||
"stopped" = "";
|
||||
};
|
||||
"ignored-players" = [
|
||||
"com"
|
||||
"firefox"
|
||||
];
|
||||
};
|
||||
pulseaudio = {
|
||||
scroll-step = 5;
|
||||
format = "{format_source}\n{icon}";
|
||||
# format-muted = "{format_source} {icon}";
|
||||
format-source = "";
|
||||
format-source-muted = "";
|
||||
format-icons = {
|
||||
car = "";
|
||||
default = [
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
default-muted = "";
|
||||
hands-free = "";
|
||||
headset = "";
|
||||
phone = "";
|
||||
portable = "";
|
||||
headphone = "";
|
||||
};
|
||||
tooltip = true;
|
||||
tooltip-format = "{desc} ({volume}%)";
|
||||
on-click = "${pkgs.pavucontrol}/bin/pavucontrol";
|
||||
on-click-right = "${config.services.avizo.package}/bin/volumectl %";
|
||||
on-scroll-up = "${config.services.avizo.package}/bin/volumectl -u + 5";
|
||||
on-scroll-down = "${config.services.avizo.package}/bin/volumectl -u - 5";
|
||||
};
|
||||
network = {
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
format-wifi = "{icon}";
|
||||
format-ethernet = "";
|
||||
format-linked = "";
|
||||
format-disconnected = "";
|
||||
tooltip-format = "{essid} ({signalStrength}%)";
|
||||
on-click = "${pkgs.networkmanagerapplet}/bin/nm-connection-editor";
|
||||
};
|
||||
bluetooth = {
|
||||
format = "";
|
||||
format-disabled = "";
|
||||
format-off = "";
|
||||
format-on = "";
|
||||
format-connected = "";
|
||||
tooltip-format = "{status} | {device_alias}";
|
||||
on-click = "${pkgs.blueman}/bin/blueman-manager";
|
||||
};
|
||||
"clock#calendar" =
|
||||
let
|
||||
size = "${toString config.stylix.fonts.sizes.popups}pt";
|
||||
in
|
||||
{
|
||||
format = "";
|
||||
tooltip-format = "<span size='${size}'>{calendar}</span>";
|
||||
calendar = {
|
||||
mode = "month";
|
||||
weeks-pos = "left";
|
||||
on-scroll = 1;
|
||||
format =
|
||||
let
|
||||
scheme = config.lib.stylix.scheme.withHashtag;
|
||||
in
|
||||
{
|
||||
months = "<span color='${scheme.red}'><b>{}</b></span>";
|
||||
weeks = "<span color='${scheme.cyan}'><i>W{}</i></span>";
|
||||
weekdays = "<span color='${scheme.orange}'><u>{}</u></span>";
|
||||
days = "<span color='${scheme.base05}'>{}</span>";
|
||||
today = "<span color='${scheme.magenta}'><b><u>{}</u></b></span>";
|
||||
};
|
||||
};
|
||||
actions = {
|
||||
on-scroll-up = "shift_up";
|
||||
on-scroll-down = "shift_down";
|
||||
};
|
||||
};
|
||||
clock = {
|
||||
format = "{:%H\n%M}";
|
||||
tooltip = false;
|
||||
};
|
||||
backlight = {
|
||||
format = "{icon}";
|
||||
tooltip-format = "{percent}%";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
battery = {
|
||||
states = {
|
||||
warning = 20;
|
||||
critical = 10;
|
||||
};
|
||||
format = "{icon}";
|
||||
format-time = "{H}:{m}";
|
||||
format-charging = "";
|
||||
format-plugged = "";
|
||||
# format-warning = "{icon}{capacity}%";
|
||||
# format-critical = "{icon}{capacity}% ({time})";
|
||||
tooltip-format = "{capacity}% | {power}W | {time}";
|
||||
format-icons = [
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
""
|
||||
];
|
||||
};
|
||||
"systemd-failed-units" = {
|
||||
hide-on-ok = true;
|
||||
format = "";
|
||||
system = true;
|
||||
user = false;
|
||||
};
|
||||
"custom/notification" =
|
||||
let
|
||||
makoctl = "${config.services.mako.package}/bin/makoctl";
|
||||
jq = "${pkgs.jq}/bin/jq";
|
||||
in
|
||||
{
|
||||
exec = "( ${makoctl} list | ${jq} -e '.data[] | length > 0' >/dev/null && echo '' ) || echo '' ";
|
||||
format = "{}";
|
||||
tooltip = false;
|
||||
on-click = "${makoctl} dismiss -a";
|
||||
interval = 3;
|
||||
};
|
||||
"custom/weather" =
|
||||
let
|
||||
date-format = "%Y-%m-%d";
|
||||
custom-indicator = "{ICON}"; # "{temp_C}°C({FeelsLikeC}°C)";
|
||||
in
|
||||
{
|
||||
format = "{}";
|
||||
tooltip = true;
|
||||
interval = 900; # Every 15 minutes
|
||||
exec = ''${pkgs.wttrbar}/bin/wttrbar --location Didcot --date-format "${date-format}" --custom-indicator "${custom-indicator}"'';
|
||||
return-type = "json";
|
||||
};
|
||||
tray = {
|
||||
icon-size = 20;
|
||||
show-passive-items = true;
|
||||
spacing = 5;
|
||||
};
|
||||
};
|
||||
style =
|
||||
let
|
||||
scheme = config.lib.stylix.scheme.withHashtag;
|
||||
|
|
Loading…
Reference in a new issue