diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf index 5ffe76d..ae8f72d 100644 --- a/config/hypr/hyprland.conf +++ b/config/hypr/hyprland.conf @@ -1,5 +1,3 @@ - -# ╭────────────────────────────────────────────────────────────────────╮ # _ _ _ _ # | | | |_ _ _ __ _ __| | __ _ _ __ __| | # | |_| | | | | '_ \| '__| |/ _` | '_ \ / _` | @@ -15,7 +13,7 @@ # ╰──────────────────────────────────────────────────────────╯ # Execute your favorite apps at launch -exec-once = waybar & hyprpaper & mako +exec-once = pipewire & ironbar & hyprpaper & mako # ╭──────────────────────────────────────────────────────────╮ # │ Config │ @@ -106,7 +104,8 @@ master { $mainMod = SUPER -$menu = bemenu-run -iwn --binding vim --vim-esc-exits --scrollbar autohide --fixed-height --counter always -l 20 -P '>' -p 'Open:' -B 2 -R 5 --cw '5x' --fn 'JetBrainsMono 13' --bdr '##$tealAlpha' --ab '##$baseAlpha' --af '##$textAlpha' --fb '##$baseAlpha' --ff '##$textAlpha' --cf '##$mauveAlpha' --hb '##$surface0Alpha' --hf '##$tealAlpha' --nb '##$baseAlpha' --nf '##$textAlpha' --tb '##$mauveAlpha' --tf '##$baseAlpha' --scb '##$surface0Alpha' --scf '##$mauveAlpha' +# $menu = bemenu-run -iwn --binding vim --vim-esc-exits --scrollbar autohide --fixed-height --counter always -l 20 -P '>' -p 'Open:' -B 2 -R 5 --cw '5x' --fn 'JetBrainsMono 13' --bdr '##$tealAlpha' --ab '##$baseAlpha' --af '##$textAlpha' --fb '##$baseAlpha' --ff '##$textAlpha' --cf '##$mauveAlpha' --hb '##$surface0Alpha' --hf '##$tealAlpha' --nb '##$baseAlpha' --nf '##$textAlpha' --tb '##$mauveAlpha' --tf '##$baseAlpha' --scb '##$surface0Alpha' --scf '##$mauveAlpha' +$menu = rofi -show drun # ── Spawn ───────────────────────────────────────────────────────────── bind = $mainMod SHIFT, E, exit, @@ -121,15 +120,15 @@ bind = $mainMod SHIFT, Print, exec, grim -g "$(slurp -d)" - | wl-copy # screenshot area and edit it bind = $mainMod CTRL, Print, exec, grim -g "$(slurp -d)" - | swappy -f - -bind = $mainMod, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+ -bind = $mainMod, XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%- -bind = $mainMod, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle -bind = $mainMod, XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle -bind = $mainMod, XF86AudioPlay, exec, playerctl play-pause -bind = $mainMod, XF86AudioNext, exec, playerctl next -bind = $mainMod, XF86AudioPrev, exec, playerctl previous -bind = $mainMod, XF86MonBrightnessUp, exec, brightnessctl set +5% -bind = $mainMod, XF86MonBrightnessDown, exec, brightnessctl set 5%- +bind = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+ +bind = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%- +bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bind = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bind = , XF86AudioPlay, exec, playerctl play-pause +bind = , XF86AudioNext, exec, playerctl next +bind = , XF86AudioPrev, exec, playerctl previous +bind = , XF86MonBrightnessUp, exec, brightnessctl set +5% +bind = , XF86MonBrightnessDown, exec, brightnessctl set 5%- # ── Window Options ──────────────────────────────────────────────────── bind = $mainMod SHIFT, space, togglefloating, diff --git a/config/waybar/config b/config/waybar/config index ab5596c..700eac6 100644 --- a/config/waybar/config +++ b/config/waybar/config @@ -1,147 +1,128 @@ { - // "layer": "top", // Waybar at top layer - // "height": 30, // Waybar height (to be removed for auto height) - "spacing": 4, // Gaps between modules (4px) - // Choose the order of the modules - "modules-left": [ - "hyprland/workspaces", - ], - "modules-center": [ - "tray" - ], - "modules-right": [ - "idle_inhibitor", - "pulseaudio", - "network", - "battery", - "clock" - ], - // Modules configuration - "hyprland/workspaces": { - "disable-scroll": true, - "warp-on-scroll": true, + "layer":"top", + "position":"top", + "reload_style_on_change":true, + + "height":20, + "margin-bottom":5, + "margin-left": 5, + "margin-right":5, + + "modules-left":["hyprland/workspaces"], + "modules-center":["clock"], + "modules-right":[ + "custom/notification", + "idle_inhibitor", + "network", + "bluetooth", + "backlight", + "wireplumber", + "clock#time", + "battery", + "custom/power" + ], + + "hyprland/workspaces": { + "all-outputs": true, + "format": "{icon}", + "format-icons": { + "1": "✨", + "2": "🌈", + "3": "💕", + "4": "🎄", + "5": "🌊", + "6": "🌷", + "7": "🪷", + "8": "😽", + "9": "🌙", + "10": "🦋", + }, + "on-scroll-up": "hyprctl dispatch workspace e+1 1>/dev/null", + "on-scroll-down": "hyprctl dispatch workspace e-1 1>/dev/null", + "sort-by-number": true, + "active-only": false, + }, + "backlight":{ + "format": "󱩖 {percent}% ", + "device": "intel_backlight", + "on-scroll-down": "brightnessctl s 5%-", + "on-scroll-up": "brightnessctl s +5%" + }, + + "idle_inhibitor": { "format": "{icon}", "format-icons": { - "1": "", - "2": "", - "3": "", - "9": "", - "10": "󰌳", - "default": "" - } + "activated": "", + "deactivated": "" + }, + "tooltip": "true" }, - "keyboard-state": { - "numlock": true, - "capslock": true, - "format": "{name} {icon}", - "format-icons": { - "locked": "", - "unlocked": "" - } + + "wireplumber": { + "on-click": "pavucontrol", + "on-click-right": "amixer sset Master toggle 1>/dev/null", + "format": "{icon} {volume}%", + "format-muted": " Muted", + "format-icons": { + "headphone": " ", + "hands-free": " ", + "headset": " ", + "phone": " ", + "portable": " ", + "car": " ", + "default": [" ", " ", " "] + }, + }, + + "network": { + "format-wifi": " {essid} ", + "format-ethernet": " {ifname}", + "format-linked": " {ifname} (No IP)", + "format": " Connected", + "format-disconnected": " Disconnected", + "interval": 60, + "on-click":"~/.config/rofi/rofi-wifi-menu.sh" }, - "mpd": { - "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ", - "format-disconnected": "Disconnected ", - "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ", - "unknown-tag": "N/A", + "clock": { + "format": " {:%A %e %B}" + }, + "clock#time": { + "format": " {:%H:%M}" + }, + "battery": { "interval": 2, - "consume-icons": { - "on": " " - }, - "random-icons": { - "off": " ", - "on": " " - }, - "repeat-icons": { - "on": " " - }, - "single-icons": { - "on": "1 " - }, - "state-icons": { - "paused": "", - "playing": "" - }, - "tooltip-format": "MPD (connected)", - "tooltip-format-disconnected": "MPD (disconnected)" - }, - "idle_inhibitor": { - "format": "{icon}", - "format-icons": { - "activated": "󰅶", - "deactivated": "󰾪" - } - }, - "tray": { - // "icon-size": 21, - "spacing": 10 - }, - "clock": { - // "timezone": "America/New_York", - "format": "{:%I:%M}", - "tooltip-format": "{:%Y %B}\n{calendar}", - "format-alt": "{:%Y-%m-%d}" - }, - "cpu": { - "format": "{usage}% ", - "tooltip": false - }, - "memory": { - "format": "{}% " - }, - "temperature": { - // "thermal-zone": 2, - // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", - "critical-threshold": 80, - // "format-critical": "{temperatureC}°C {icon}", - "format": "{temperatureC}°C {icon}", - "format-icons": ["", "", ""] - }, - "backlight": { - // "device": "acpi_video1", - "format": "{percent}% {icon}", - "format-icons": ["", "", "", "", "", "", "", "", ""] - }, - "battery": { "states": { - // "good": 95, + "good": 95, "warning": 30, "critical": 15 }, - "format": "{capacity}% {icon}", - "format-charging": "{capacity}% ", - "format-plugged": "{capacity}% ", - "format-alt": "{time} {icon}", - // "format-good": "", // An empty format will hide the module - // "format-full": "", - "format-icons": ["", "", "", "", ""] + "format": "{icon} {capacity}%", + "format-charging": " {capacity}%", + "format-plugged": " {capacity}%", + "format-icons": [ + "", + "", + "", + "", + "" + ] }, - "network": { - // "interface": "wlp2*", // (Optional) To force the use of this interface - "format-wifi": "{essid} ({signalStrength}%) ", - "format-ethernet": "{ipaddr}/{cidr} ", - "tooltip-format": "{ifname} via {gwaddr} ", - "format-linked": "{ifname} (No IP) ", - "format-disconnected": "Disconnected ⚠", - "format-alt": "{ifname}: {ipaddr}/{cidr}" + "bluetooth":{ + "format-on": " Turned On", + "format-off": " Turned Off", + "format-disabled": " Disabled", + "format-connected": " Connected", + "format": " Disabled", + "on-click":"blueman-manager &" }, - "pulseaudio": { - // "scroll-step": 1, // %, can be a float - "format": "{volume}% {icon} {format_source}", - "format-bluetooth": "{volume}% {icon} {format_source}", - "format-bluetooth-muted": " {icon} {format_source}", - "format-muted": " {format_source}", - "format-source": "{volume}% ", - "format-source-muted": "", - "format-icons": { - "headphone": "", - "hands-free": "", - "headset": "", - "phone": "", - "portable": "", - "car": "", - "default": ["", "", ""] - }, - "on-click": "pavucontrol" + + "custom/power":{ + "format":"", + "on-click":"~/.config/rofi/powermenu/type-4/powermenu.sh" + }, + "custom/notification":{ + "format": "󱅫", + "on-click": "swaync-client -t -sw" } + } diff --git a/config/waybar/style-bkp.css b/config/waybar/style-bkp.css new file mode 100644 index 0000000..c6f1913 --- /dev/null +++ b/config/waybar/style-bkp.css @@ -0,0 +1,179 @@ +@import "./themes/catppuccin-macchiato.css"; + +@keyframes blink_red { + to { + background-color: @red; + color: @base; + } +} + +* { + /* `otf-font-awesome` is required to be installed for icons */ + font-family: JetBrainsMono Roboto, Helvetica, Arial, sans-serif; + font-size: 1rem; +} + +box.modules-left, +box.modules-center, +box.modules-right { + border-radius: 1rem; + background-color: @base; +} + +.warning, +.critical, +.urgent { + animation-name: blink_red; + animation-duration: 800ms; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} + +#mode, +#clock, +#memory, +#temperature, +#cpu, +#custom-weather, +#mpd, +#idle_inhibitor, +#backlight, +#pulseaudio, +#network, +#battery, +#custom-powermenu, +#custom-cava-internal, +#custom-launcher, +#tray, +#disk, +#custom-pacman, +#custom-scratchpad-indicator { + padding: 0 0.6rem; + background-color: @red; +} + +/* Bar */ +window#waybar { + background-color: transparent; +} + +window > box { + background-color: transparent; + margin: 5px 11px; + margin-bottom: 0; +} + +window#waybar button:not(:first-child), +window#waybar button:not(:last-child) { + border-radius: 0; +} + +window#waybar button:first-child { + border-radius: 1rem 0 0 1rem; +} + +window#waybar button:last-child { + border-radius: 0 1rem 1rem 0; +} + +/* Workspaces */ +#workspaces button { + padding: 0.2rem 0.75rem; + color: @text; +} + +#workspaces button label { + background-color: transparent; + font-size: 1.2rem; +} + +#workspaces button:not(:first-child) label { + /* Fix fontawesome miss alignment, depends of the padding above and font size */ + margin-right: 0.45rem; +} + +#workspaces button.focused { + color: @teal; + background-color: alpha(@teal, 0.15); +} + +#workspaces button:hover { + /* border: .2px solid transparent; */ + background: alpha(@blue, 0.15); + color: @blue; + border-color: transparent; + box-shadow: inherit; + text-shadow: inherit; +} + +/* Tooltip */ +tooltip { + background-color: @base; +} + +tooltip label { + color: @rosewater; +} + +/* battery */ +#battery { + color: @mauve; + padding-right: 1.15rem; +} +#battery.full { + color: @green; +} +#battery.charging { + color: @teal; +} +#battery.discharging { + color: @peach; +} +#battery.critical:not(.charging) { + color: @pink; +} +#custom-powermenu { + color: @red; +} + +#memory { + color: @peach; +} +#cpu { + color: @blue; +} +#clock { + color: @rosewater; +} +#idle_inhibitor { + color: @green; + padding-right: 0.9rem; +} +#temperature { + color: @sapphire; +} +#backlight { + color: @green; +} +#pulseaudio { + color: @mauve; /* not active */ +} +#network { + color: @pink; /* not active */ +} +#network.disconnected { + color: @foreground; /* not active */ +} +#disk { + color: @maroon; +} +#custom-pacman { + color: @sky; +} +#custom-scratchpad-indicator { + color: @yellow; +} +#custom-weather { + color: @red; +} diff --git a/config/waybar/style.css b/config/waybar/style.css index c6f1913..7b6d2ac 100644 --- a/config/waybar/style.css +++ b/config/waybar/style.css @@ -1,179 +1,69 @@ @import "./themes/catppuccin-macchiato.css"; -@keyframes blink_red { - to { - background-color: @red; - color: @base; - } -} - -* { - /* `otf-font-awesome` is required to be installed for icons */ +*{ + font-size: 13px; font-family: JetBrainsMono Roboto, Helvetica, Arial, sans-serif; - font-size: 1rem; + color: @text; +} +#waybar { + background: transparent; + border-radius: 5px; +} +#workspaces{ + border-radius:5px; + box-shadow:0px 0px black; } box.modules-left, box.modules-center, box.modules-right { - border-radius: 1rem; + border-radius: 6px; background-color: @base; } -.warning, -.critical, -.urgent { - animation-name: blink_red; - animation-duration: 800ms; - animation-timing-function: linear; - animation-iteration-count: infinite; - animation-direction: alternate; -} - -#mode, -#clock, -#memory, -#temperature, -#cpu, -#custom-weather, -#mpd, -#idle_inhibitor, -#backlight, -#pulseaudio, +#workspaces, #network, +#backlight, +#wireplumber, +#clock, #battery, -#custom-powermenu, -#custom-cava-internal, -#custom-launcher, -#tray, -#disk, -#custom-pacman, -#custom-scratchpad-indicator { +#idle_inhibitor, +#bluetooth, +#custom-power, +#custom-notification{ padding: 0 0.6rem; - background-color: @red; } -/* Bar */ -window#waybar { - background-color: transparent; +#network, +#wireplumber, +#backlight, +#bluetooth{ + margin:0px; +} +#backlight, +#bluetooth{ + border-radius:0px; +} +#wireplumber{ + border-radius: 0px 5px 5px 0px; } -window > box { - background-color: transparent; - margin: 5px 11px; - margin-bottom: 0; +#idle_inhibitor, +#clock, +#workspaces, +#custom-lizzy, +#custom-power, +#battery, +#custom-notification{ + border-radius: 5px; } -window#waybar button:not(:first-child), -window#waybar button:not(:last-child) { - border-radius: 0; +#idle_inhibitor.activated{ + color:#e57474; } -window#waybar button:first-child { - border-radius: 1rem 0 0 1rem; -} - -window#waybar button:last-child { - border-radius: 0 1rem 1rem 0; -} - -/* Workspaces */ -#workspaces button { - padding: 0.2rem 0.75rem; - color: @text; -} - -#workspaces button label { - background-color: transparent; - font-size: 1.2rem; -} - -#workspaces button:not(:first-child) label { - /* Fix fontawesome miss alignment, depends of the padding above and font size */ - margin-right: 0.45rem; -} - -#workspaces button.focused { - color: @teal; - background-color: alpha(@teal, 0.15); -} - -#workspaces button:hover { - /* border: .2px solid transparent; */ - background: alpha(@blue, 0.15); - color: @blue; - border-color: transparent; - box-shadow: inherit; - text-shadow: inherit; -} - -/* Tooltip */ -tooltip { - background-color: @base; -} - -tooltip label { - color: @rosewater; -} - -/* battery */ -#battery { - color: @mauve; - padding-right: 1.15rem; -} -#battery.full { - color: @green; -} -#battery.charging { - color: @teal; -} -#battery.discharging { - color: @peach; -} -#battery.critical:not(.charging) { - color: @pink; -} -#custom-powermenu { - color: @red; -} - -#memory { - color: @peach; -} -#cpu { - color: @blue; -} -#clock { - color: @rosewater; -} -#idle_inhibitor { - color: @green; - padding-right: 0.9rem; -} -#temperature { - color: @sapphire; -} -#backlight { - color: @green; -} -#pulseaudio { - color: @mauve; /* not active */ -} -#network { - color: @pink; /* not active */ -} -#network.disconnected { - color: @foreground; /* not active */ -} -#disk { - color: @maroon; -} -#custom-pacman { - color: @sky; -} -#custom-scratchpad-indicator { - color: @yellow; -} -#custom-weather { - color: @red; +#custom-power{ +color:#c47fd5; +margin-right:10px; +padding-right:14px; }