Compare commits

..

No commits in common. "69de4ca87b2a580af9e49932eb68b352b9d51916" and "e51fb08bfcc0ea7e53f2152770db3734e90aa691" have entirely different histories.

11 changed files with 36 additions and 127 deletions

View file

@ -69,6 +69,8 @@ with lib;
wireplumber # media session manager wireplumber # media session manager
libgtop # system monitor library libgtop # system monitor library
bluez # Bluetooth support bluez # Bluetooth support
bluez-tools # Bluetooth tools
blueman # Bluetooth manager
power-profiles-daemon # power profiles power-profiles-daemon # power profiles
grimblast # screenshot tool grimblast # screenshot tool
wf-recorder # screen recording tool wf-recorder # screen recording tool

View file

@ -7,7 +7,6 @@
./hyprpolkitagent.nix ./hyprpolkitagent.nix
./wofi.nix ./wofi.nix
./swaync.nix ./swaync.nix
./scripts.nix
./swaylock.nix ./swaylock.nix
]; ];
} }

View file

@ -32,14 +32,11 @@ in
# Default monitor configuration # Default monitor configuration
monitor = "monitor = , preferred, auto, 1"; monitor = "monitor = , preferred, auto, 1";
windowrulev2 = [ windowrulev2 = [
"float, class:^(?i)chrome-nngceckbapebfimnlniiiahkandclblb-Default$, initialtitle:^_crx_nngceckbapebfimnlniiiahkandclblb$" "float, class:.*blueman-manager.*"
"center, class:^(?i)chrome-nngceckbapebfimnlniiiahkandclblb-Default$, initialtitle:^_crx_nngceckbapebfimnlniiiahkandclblb$" "size 700 500, class:.*blueman-manager.*"
"size 720 600, class:^(?i)chrome-nngceckbapebfimnlniiiahkandclblb-Default$, initialtitle:^_crx_nngceckbapebfimnlniiiahkandclblb$" "center, class:.*blueman-manager.*"
"float, class:.*blueman-manager.*" ];
"size 700 500, class:.*blueman-manager.*"
"center, class:.*blueman-manager.*"
];
# Input configuration # Input configuration
input = { input = {

View file

@ -1,10 +0,0 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
(writeShellScriptBin "toggle-airplane-mode" (builtins.readFile ./scripts/toggle-airplane-mode.sh))
(writeShellScriptBin "toggle-power-profile" (builtins.readFile ./scripts/toggle-power-profile.sh))
(writeShellScriptBin "wofi-wifi-menu" (builtins.readFile ./scripts/wofi-wifi-menu.sh))
(writeShellScriptBin "wofi-bluetooth-menu" (builtins.readFile ./scripts/wofi-bluetooth-menu.sh))
(writeShellScriptBin "confirm-action" (builtins.readFile ./scripts/confirm-action.sh))
];
}

View file

@ -1,14 +0,0 @@
#!/usr/bin/env bash
COMMAND_TO_RUN="$1"
PROMPT_MESSAGE="$2"
if [ -z "$PROMPT_MESSAGE" ]; then
PROMPT_MESSAGE="Are you sure?"
fi
choice=$(echo -e "No\nYes" | wofi --dmenu --location center -p "$PROMPT_MESSAGE")
if [ "$choice" == "Yes" ]; then
eval "$COMMAND_TO_RUN"
fi

View file

@ -1,6 +0,0 @@
#!/usr/bin/env bash
if [ "$(nmcli radio all)" = "enabled" ]; then
nmcli radio all off
else
nmcli radio all on
fi

View file

@ -1,6 +0,0 @@
#!/usr/bin/env bash
if [ "$(powerprofilesctl get)" = "performance" ]; then
powerprofilesctl set balanced
else
powerprofilesctl set performance
fi

View file

@ -1,21 +0,0 @@
#!/usr/bin/env bash
devices=$(bluetoothctl devices | awk '{print $2, $3}')
if [ -z "$devices" ]; then
options="󰂲 Power On\n󰂬 Scan for devices"
else
options="$devices\n󰂲 Power Off\n󰂬 Scan for devices"
fi
chosen=$(echo -e "$options" | wofi --dmenu --location 3 --yoffset 40 --xoffset -20 -p "Bluetooth")
case "$chosen" in
"󰂲 Power On") bluetoothctl power on;;
"󰂲 Power Off") bluetoothctl power off;;
"󰂬 Scan for devices") bluetoothctl scan on;;
*)
mac=$(echo "$chosen" | awk '{print $1}')
bluetoothctl connect "$mac"
;;
esac

View file

@ -1,24 +0,0 @@
#!/usr/bin/env bash
# Get a list of available Wi-Fi networks
nets=$(nmcli --terse --fields SSID,SECURITY,BARS device wifi list | sed '/^--/d' | sed 's/\\:/__/g')
# Get the current connection status
connected_ssid=$(nmcli -t -f active,ssid dev wifi | egrep '^yes' | cut -d: -f2)
if [[ ! -z "$connected_ssid" ]]; then
toggle="󰖪 Toggle Wi-Fi Off"
else
toggle="󰖩 Toggle Wi-Fi On"
fi
# Present the menu to the user
chosen_network=$(echo -e "$toggle\n$nets" | wofi --dmenu --location 3 --yoffset 40 --xoffset -20 -p "Wi-Fi Networks")
# Perform an action based on the user's choice
if [ "$chosen_network" = "$toggle" ]; then
nmcli radio wifi $([ "$connected_ssid" = "" ] && echo "on" || echo "off")
elif [ ! -z "$chosen_network" ]; then
ssid=$(echo "$chosen_network" | sed 's/__/\\:/g' | awk -F' ' '{print $1}')
nmcli device wifi connect "$ssid"
fi

View file

@ -9,7 +9,7 @@
"com.spotify.Client" "com.spotify.Client"
]; ];
positionX = "right"; positionX = "center";
positionY = "top"; positionY = "top";
layer = "overlay"; layer = "overlay";
control-center-layer = "top"; control-center-layer = "top";
@ -86,17 +86,17 @@
{ {
label = "󰐥"; label = "󰐥";
tooltip = "Shutdown"; tooltip = "Shutdown";
command = "confirm-action 'systemctl poweroff' 'Shutdown?'"; command = "systemctl poweroff";
} }
{ {
label = "󰜉"; label = "󰜉";
tooltip = "Reboot"; tooltip = "Reboot";
command = "confirm-action 'systemctl reboot' 'Reboot?'"; command = "systemctl reboot";
} }
{ {
label = "󰍃"; label = "󰍃";
tooltip = "Logout"; tooltip = "Logout";
command = "confirm-action 'hyprctl dispatch exit' 'Logout?'"; command = "hyprctl dispatch exit";
} }
{ {
label = "󰤄"; label = "󰤄";
@ -113,7 +113,7 @@
{ {
label = "󰖩"; label = "󰖩";
tooltip = "WiFi Settings"; tooltip = "WiFi Settings";
command = "wofi-wifi-menu"; command = "nm-connection-editor";
} }
# Bluetooth (requires bluez/bluetoothctl, blueman optional) # Bluetooth (requires bluez/bluetoothctl, blueman optional)
@ -125,26 +125,7 @@
{ {
label = "󰂯"; label = "󰂯";
tooltip = "Bluetooth Settings"; tooltip = "Bluetooth Settings";
command = "wofi-bluetooth-menu"; command = "blueman-manager";
}
# Media
{
label = "󰍭";
tooltip = "Toggle Mic Mute";
command = "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
}
# Toggles
{
label = "󰀝";
tooltip = "Toggle Airplane Mode";
command = "toggle-airplane-mode";
}
{
label = "󰓅";
tooltip = "Toggle Power Profile";
command = "toggle-power-profile";
} }
]; ];
}; };

View file

@ -23,6 +23,7 @@
modules-center = [ modules-center = [
"clock" "clock"
"temperature" "temperature"
"custom/notifications"
"cpu" "cpu"
"memory" "memory"
"disk" "disk"
@ -32,8 +33,8 @@
"pulseaudio" "pulseaudio"
"network" "network"
"bluetooth" "bluetooth"
"custom/notifications"
"hyprland/language" "hyprland/language"
"custom/power"
]; ];
# Workspaces configuration # Workspaces configuration
@ -84,9 +85,6 @@
"󰕾" "󰕾"
]; ];
}; };
scroll-step = 5;
on-click = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
on-click-right = "swaync-client -t -sw";
}; };
"custom/notifications" = { "custom/notifications" = {
@ -111,9 +109,7 @@
}; };
# Clock # Clock
clock = { clock.format = "{:%Y-%m-%d} {:%H:%M}";
format = "{:%b %d, %H:%M}";
};
temperature = { temperature = {
thermal-zone = 2; thermal-zone = 2;
@ -147,8 +143,7 @@
tooltip-format = "{ifname} via {gwaddr} "; tooltip-format = "{ifname} via {gwaddr} ";
format-linked = "󰈀 {ifname} (No IP)"; format-linked = "󰈀 {ifname} (No IP)";
format-disconnected = "󰖪 Disconnected"; format-disconnected = "󰖪 Disconnected";
on-click = "wofi-wifi-menu"; format-alt = "{ifname}: {ipaddr}/{cidr}";
on-click-right = "nmcli radio wifi toggle";
}; };
bluetooth = { bluetooth = {
@ -159,8 +154,7 @@
tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}"; tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}";
tooltip-format-enumerate-connected = "{device_alias}\t{device_address}"; tooltip-format-enumerate-connected = "{device_alias}\t{device_address}";
tooltip-format-enumerate-connected-battery = "{device_alias}\t{device_address}\t{device_battery_percentage}%"; tooltip-format-enumerate-connected-battery = "{device_alias}\t{device_address}\t{device_battery_percentage}%";
on-click = "wofi-bluetooth-menu"; on-click = "blueman-manager";
on-click-right = "bluetoothctl power toggle";
}; };
# Keyboard input (language) # Keyboard input (language)
@ -169,6 +163,12 @@
format-en = "EN"; format-en = "EN";
format-ja = "JP"; format-ja = "JP";
}; };
"custom/power" = {
format = "";
tooltip = false;
on-click = "wlogout";
};
}; };
}; };
@ -227,7 +227,8 @@
#disk, #disk,
#network, #network,
#bluetooth, #bluetooth,
#language { #language,
#custom-power {
padding: 0 8px; padding: 0 8px;
color: #c0caf5; color: #c0caf5;
margin: 2px; margin: 2px;
@ -237,6 +238,16 @@
color: #f7768e; color: #f7768e;
} }
#custom-power {
color: #f7768e;
padding: 0 10px;
}
#custom-power:hover {
background: rgba(247, 118, 142, 0.2);
border-radius: 5px;
}
#network.disconnected { #network.disconnected {
color: #f7768e; color: #f7768e;
} }