changed waybar with backup
This commit is contained in:
@@ -1,118 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# Robust Monitor Setup with Workspace Assignments
|
|
||||||
|
|
||||||
notify-send "Monitor Setup" "Starting configuration..."
|
|
||||||
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
# Phase 1: Reset State
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
#hyprctl keyword monitor "" # Clear all monitor rules
|
|
||||||
#hyprctl keyword workspace "" # Clear workspace assignments
|
|
||||||
#sleep 1
|
|
||||||
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
# Phase 2: Hardware Detection
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
MONITORS=$(hyprctl monitors -j all)
|
|
||||||
LAPTOP="eDP-1"
|
|
||||||
LID_STATE=$(cat /proc/acpi/button/lid/LID0/state | awk '{print $2}')
|
|
||||||
EXTERNAL_MONITORS=($(echo "$MONITORS" | jq -r '.[] | select(.name != "eDP-1") | .name'))
|
|
||||||
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
# Phase 3: Configuration
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
|
|
||||||
# Case 1: No externals - Laptop only
|
|
||||||
if [ ${#EXTERNAL_MONITORS[@]} -eq 0 ]; then
|
|
||||||
notify-send "Monitor Setup" "Laptop-only mode"
|
|
||||||
hyprctl keyword monitor "$LAPTOP,1920x1200@60,0x0,1.5"
|
|
||||||
sleep 1
|
|
||||||
|
|
||||||
# Assign all workspaces to laptop
|
|
||||||
for ws in {1..10}; do
|
|
||||||
hyprctl keyword "workspace $ws, monitor:$LAPTOP"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Case 2: Any external monitors
|
|
||||||
else
|
|
||||||
# Try to identify known monitors by serial
|
|
||||||
ULTRAWIDE=$(echo "$MONITORS" | jq -r '.[] | select(.serial == "303NTLE84432") | .name')
|
|
||||||
STANDARD=$(echo "$MONITORS" | jq -r '.[] | select(.serial == "H4LN801666") | .name')
|
|
||||||
|
|
||||||
# Dual monitor setup (known monitors)
|
|
||||||
if [ -n "$ULTRAWIDE" ] && [ -n "$STANDARD" ]; then
|
|
||||||
notify-send "Monitor Setup" "Dual monitor mode (Ultrawide + Standard)"
|
|
||||||
|
|
||||||
# Configure monitors
|
|
||||||
hyprctl keyword monitor "$ULTRAWIDE,5120x1440@120,0x1440,1"
|
|
||||||
sleep 1
|
|
||||||
hyprctl keyword monitor "$STANDARD,3440x1440@60,840x0,1"
|
|
||||||
sleep 1
|
|
||||||
hyprctl dispatch dpms off "$LAPTOP"
|
|
||||||
|
|
||||||
# Workspace assignments:
|
|
||||||
# 1-4 on Ultrawide, 5-10 on Standard
|
|
||||||
for ws in {1..4}; do
|
|
||||||
hyprctl keyword "workspace $ws, monitor:$ULTRAWIDE"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "$ws $ULTRAWIDE"
|
|
||||||
done
|
|
||||||
for ws in {5..9}; do
|
|
||||||
hyprctl keyword "workspace $ws, monitor:$STANDARD"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "$ws $STANDARD"
|
|
||||||
done
|
|
||||||
|
|
||||||
hyprctl keyword "workspace 10, monitor:$LAPTOP"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "10 $LAPTOP"
|
|
||||||
|
|
||||||
# Single external (any monitor)
|
|
||||||
else
|
|
||||||
EXT_MON=${EXTERNAL_MONITORS[0]}
|
|
||||||
notify-send "Monitor Setup" "Single external: $EXT_MON"
|
|
||||||
|
|
||||||
# Get max resolution
|
|
||||||
MAX_RES=$(echo "$MONITORS" | jq -r ".[] | select(.name == \"$EXT_MON\") | .availableModes[0] | \"\(.width)x\(.height)@\(.refreshRate)\"")
|
|
||||||
|
|
||||||
# Check lid state
|
|
||||||
if [ "$LID_STATE" == "closed" ]; then
|
|
||||||
# Lid closed - only external monitor
|
|
||||||
notify-send "Monitor Setup" "Lid closed - using external only"
|
|
||||||
hyprctl dispatch dpms off "$LAPTOP"
|
|
||||||
hyprctl keyword monitor "$EXT_MON,$MAX_RES,0x0,1"
|
|
||||||
sleep 1
|
|
||||||
|
|
||||||
hyprctl keyword "workspace 10, monitor:$LAPTOP"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "10 $LAPTOP"
|
|
||||||
|
|
||||||
# Assign all workspaces to external
|
|
||||||
for ws in {1..9}; do
|
|
||||||
hyprctl keyword "workspace $ws, monitor:$EXT_MON"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "$ws $EXT_MON"
|
|
||||||
done
|
|
||||||
|
|
||||||
else
|
|
||||||
# Lid open - both monitors
|
|
||||||
notify-send "Monitor Setup" "Lid open - using laptop + external"
|
|
||||||
hyprctl keyword monitor "$LAPTOP,1920x1200@60,0x0,1.5"
|
|
||||||
sleep 1
|
|
||||||
hyprctl keyword monitor "$EXT_MON,$MAX_RES,1920x0,1"
|
|
||||||
sleep 1
|
|
||||||
|
|
||||||
# Workspace assignments:
|
|
||||||
# 1-4 on laptop, 5-10 on external
|
|
||||||
for ws in {1..4}; do
|
|
||||||
hyprctl keyword "workspace $ws, monitor:$LAPTOP"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "$ws $LAPTOP"
|
|
||||||
done
|
|
||||||
for ws in {5..10}; do
|
|
||||||
hyprctl keyword "workspace $ws, monitor:$EXT_MON"
|
|
||||||
hyprctl dispatch moveworkspacetomonitor "$ws $EXT_MON"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
# Finalization
|
|
||||||
# -------------------------------------------------------------------
|
|
||||||
sleep 1
|
|
||||||
notify-send "Monitor Setup Complete" "Active configuration:\n$(hyprctl monitors)"
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Get all monitor info (including disabled)
|
|
||||||
MONITORS=$(hyprctl monitors -j all)
|
|
||||||
ALL_MONITORS=$(echo "$MONITORS" | jq -r '.[] | .name')
|
|
||||||
EXTERNAL_COUNT=$(echo "$ALL_MONITORS" | grep -v "eDP-1" | wc -l)
|
|
||||||
|
|
||||||
#echo $MONITORS
|
|
||||||
#echo $ALL_MONITORS
|
|
||||||
#echo $EXTERNAL_COUNT
|
|
||||||
|
|
||||||
# Case 1: No externals - laptop only
|
|
||||||
if [[ $EXTERNAL_COUNT -eq 0 ]]; then
|
|
||||||
hyprctl keyword monitor "eDP-1,1920x1200@60,0x0,1"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Case 2: Single external monitor
|
|
||||||
if [[ $EXTERNAL_COUNT -eq 1 ]]; then
|
|
||||||
EXT_MON=$(echo "$ALL_MONITORS" | grep -v "eDP-1")
|
|
||||||
MODES=$(echo "$MONITORS" | jq -r ".[] | select(.name == \"$EXT_MON\") | .availableModes | join(\" \")")
|
|
||||||
MAX_RES=$(echo "$MODES" | grep -oE "[0-9]+x[0-9]+@[0-9.]+" | awk -F'[@x]' '{print $1,$2,$3}' | sort -k1,1nr -k2,2nr -k3,3nr | awk '{print $1"x"$2"@"$3}' | head -n1)
|
|
||||||
|
|
||||||
hyprctl keyword monitor "eDP-1,1920x1200@60,0x0,1"
|
|
||||||
hyprctl keyword monitor "$EXT_MON,$MAX_RES,1920x0,1" # Right of laptop
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Identify our specific monitors
|
|
||||||
ULTRAWIDE=""
|
|
||||||
STANDARD_ULTRAWIDE=""
|
|
||||||
|
|
||||||
for MON in $(echo "$ALL_MONITORS"); do
|
|
||||||
echo $MON
|
|
||||||
[[ $MON == "eDP-1" ]] && continue
|
|
||||||
|
|
||||||
MODES=$(echo "$MONITORS" | jq -r ".[] | select(.name == \"$MON\") | .availableModes | join(\" \")")
|
|
||||||
|
|
||||||
echo $MODES
|
|
||||||
|
|
||||||
if [[ $MODES =~ "5120x1440" ]]; then
|
|
||||||
ULTRAWIDE=$MON
|
|
||||||
echo "Ultrawide = $ULTRAWIDE"
|
|
||||||
elif [[ $MODES =~ "3440x1440" ]]; then
|
|
||||||
STANDARD_ULTRAWIDE=$MON
|
|
||||||
echo "Standard = $STANDARD_ULTRAWIDE"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Case 3: Dual monitor setup (only if we found both our specific monitors)
|
|
||||||
if [[ -n "$ULTRAWIDE" && -n "$STANDARD_ULTRAWIDE" ]]; then
|
|
||||||
echo "dual monitors"
|
|
||||||
hyprctl keyword monitor "eDP-1,disable"
|
|
||||||
hyprctl keyword monitor "$ULTRAWIDE,5120x1440@120,0x1440,1" # 49" at bottom
|
|
||||||
hyprctl keyword monitor "$STANDARD_ULTRAWIDE,3440x1440@60,840x0,1" # 34" at top-left
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# If we get here, it's an unexpected configuration - do nothing
|
|
||||||
notify-send "Error detecting monitors, no changes"
|
|
||||||
126
waybar/.github/README.md
vendored
Normal file
126
waybar/.github/README.md
vendored
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
<div align="center">
|
||||||
|
|
||||||
|
## 🤖 mechabar
|
||||||
|
|
||||||
|
A mecha-themed, modular Waybar configuration.
|
||||||
|
|
||||||
|
|  |
|
||||||
|
| :--------------------------------------: |
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary><b>Themes</b></summary>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
**Catppuccin:**
|
||||||
|
|
||||||
|
| Mocha _(default)_ |
|
||||||
|
| :----------------------------------------------: |
|
||||||
|
|  |
|
||||||
|
|
||||||
|
| Macchiato |
|
||||||
|
| :------------------------------------------------------: |
|
||||||
|
|  |
|
||||||
|
|
||||||
|
| Frappe |
|
||||||
|
| :------------------------------------------------: |
|
||||||
|
|  |
|
||||||
|
|
||||||
|
| Latte |
|
||||||
|
| :----------------------------------------------: |
|
||||||
|
|  |
|
||||||
|
|
||||||
|
</details>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
#
|
||||||
|
|
||||||
|
### Requirements
|
||||||
|
|
||||||
|
1. [Waybar](https://github.com/Alexays/Waybar)
|
||||||
|
|
||||||
|
> [!WARNING]
|
||||||
|
> **Version 0.14.0** has an [issue](https://github.com/Alexays/Waybar/issues/4354) with wildcard includes.
|
||||||
|
> Use the `fix/v0.14.0` branch as a temporary workaround.
|
||||||
|
|
||||||
|
2. A terminal emulator _(default: **Kitty**)_
|
||||||
|
|
||||||
|
> [!IMPORTANT]
|
||||||
|
> If you use a different terminal emulator (e.g., **Ghostty**),
|
||||||
|
> you need to replace all instances of `kitty` with your terminal command:
|
||||||
|
>
|
||||||
|
> ```diff
|
||||||
|
> - "on-click": "kitty -e ..."
|
||||||
|
> + "on-click": "ghostty -e ..."
|
||||||
|
> ```
|
||||||
|
|
||||||
|
#
|
||||||
|
|
||||||
|
### Installation
|
||||||
|
|
||||||
|
1. Back up your current configuration:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mv ~/.config/waybar{,.bak}
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Clone the repository:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/sejjy/mechabar.git ~/.config/waybar
|
||||||
|
```
|
||||||
|
|
||||||
|
For **Waybar v0.14.0**:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone -b fix/v0.14.0 https://github.com/sejjy/mechabar.git ~/.config/waybar
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Run the [install script](/install.sh):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
~/.config/waybar/install.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
This makes the [scripts](/scripts/) executable and installs all dependencies listed below:
|
||||||
|
|
||||||
|
| Package | Description |
|
||||||
|
| --------------------------------: | ------------------------------------------------------------------------------ |
|
||||||
|
| `bluez` | Daemons for the bluetooth protocol stack<tr></tr> |
|
||||||
|
| _(bluetoothctl)_ `bluez-utils` | Development and debugging utilities for the bluetooth protocol stack<tr></tr> |
|
||||||
|
| `brightnessctl` | Lightweight brightness control tool<tr></tr> |
|
||||||
|
| `fzf` | Command-line fuzzy finder<tr></tr> |
|
||||||
|
| _(nmcli)_ `networkmanager` | Network connection manager and user applications<tr></tr> |
|
||||||
|
| _(checkupdates)_ `pacman-contrib` | Contributed scripts and tools for pacman systems<tr></tr> |
|
||||||
|
| `pipewire-pulse` | Low-latency audio/video router and processor - PulseAudio replacement<tr></tr> |
|
||||||
|
| `ttf-0xproto-nerd` | Patched font 0xProto from nerd fonts library |
|
||||||
|
|
||||||
|
#
|
||||||
|
|
||||||
|
### Customization
|
||||||
|
|
||||||
|
- To change the theme, copy the file with your preferred theme (e.g., `catppuccin-latte.css`) to `theme.css`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/.config/waybar
|
||||||
|
cp themes/catppuccin-latte.css theme.css
|
||||||
|
```
|
||||||
|
|
||||||
|
#
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
|
||||||
|
- [Waybar wiki](https://github.com/Alexays/Waybar/wiki)
|
||||||
|
|
||||||
|
- Man page:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
man waybar
|
||||||
|
```
|
||||||
|
|
||||||
|
#
|
||||||
|
|
||||||
|
### Credits
|
||||||
|
|
||||||
|
- Font: [0xProto](https://github.com/0xType/0xProto)
|
||||||
|
- Icons: [Nerd Fonts](https://github.com/ryanoasis/nerd-fonts)
|
||||||
|
- Themes: [Catppuccin](https://github.com/catppuccin/waybar)
|
||||||
BIN
waybar/.github/assets/catppuccin-frappe.png
vendored
Normal file
BIN
waybar/.github/assets/catppuccin-frappe.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 24 KiB |
BIN
waybar/.github/assets/catppuccin-latte.png
vendored
Normal file
BIN
waybar/.github/assets/catppuccin-latte.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
BIN
waybar/.github/assets/catppuccin-macchiato.png
vendored
Normal file
BIN
waybar/.github/assets/catppuccin-macchiato.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
BIN
waybar/.github/assets/catppuccin-mocha.png
vendored
Normal file
BIN
waybar/.github/assets/catppuccin-mocha.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
21
waybar/LICENSE
Normal file
21
waybar/LICENSE
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2025 Jesse Mirabel
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
@@ -1,489 +1,128 @@
|
|||||||
{
|
{
|
||||||
"layer": "top",
|
/*------------------------------------------------------------
|
||||||
"position": "top",
|
regression: wildcard includes are broken after v0.14.0
|
||||||
"mode": "dock",
|
- https://github.com/Alexays/Waybar/issues/4354
|
||||||
"reload_style_on_change": true,
|
- https://github.com/sejjy/mechabar/issues/31
|
||||||
"gtk-layer-shell": true,
|
------------------------------------------------------------*/
|
||||||
|
/*
|
||||||
// <<--< Positions >-->>
|
"include": [
|
||||||
|
"~/.config/waybar/modules/*.jsonc",
|
||||||
"modules-left": [
|
"~/.config/waybar/modules/custom/*.jsonc",
|
||||||
"custom/ws", // window icon
|
"~/.config/waybar/modules/hyprland/*.jsonc"
|
||||||
"custom/left1",
|
|
||||||
|
// modules that are not included by default:
|
||||||
"hyprland/workspaces", // workspaces
|
// "~/.config/waybar/modules/extras/*.jsonc"
|
||||||
"custom/right1",
|
],
|
||||||
|
*/
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
"include": [
|
||||||
],
|
// modules-left
|
||||||
|
"~/.config/waybar/modules/custom/user.jsonc",
|
||||||
"modules-center": [
|
"~/.config/waybar/modules/hyprland/workspaces.jsonc",
|
||||||
"custom/paddc",
|
"~/.config/waybar/modules/hyprland/window.jsonc",
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
// modules-center
|
||||||
|
"~/.config/waybar/modules/hyprland/windowcount.jsonc",
|
||||||
"custom/left3",
|
"~/.config/waybar/modules/temperature.jsonc",
|
||||||
"memory", // memory
|
"~/.config/waybar/modules/memory.jsonc",
|
||||||
|
"~/.config/waybar/modules/cpu.jsonc",
|
||||||
"custom/left4",
|
"~/.config/waybar/modules/custom/distro.jsonc",
|
||||||
"cpu", // cpu
|
"~/.config/waybar/modules/idle_inhibitor.jsonc",
|
||||||
"custom/leftin1",
|
"~/.config/waybar/modules/clock.jsonc",
|
||||||
|
"~/.config/waybar/modules/network.jsonc",
|
||||||
"custom/left5",
|
"~/.config/waybar/modules/bluetooth.jsonc",
|
||||||
"custom/distro", // distro icon
|
"~/.config/waybar/modules/custom/system_update.jsonc",
|
||||||
"custom/right2",
|
|
||||||
|
// modules-right
|
||||||
"custom/rightin1",
|
"~/.config/waybar/modules/mpris.jsonc",
|
||||||
"idle_inhibitor", // idle inhibitor
|
"~/.config/waybar/modules/pulseaudio.jsonc",
|
||||||
"clock#time", // time
|
"~/.config/waybar/modules/backlight.jsonc",
|
||||||
"custom/right3",
|
"~/.config/waybar/modules/battery.jsonc",
|
||||||
|
"~/.config/waybar/modules/custom/power_menu.jsonc",
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
"~/.config/waybar/modules/custom/dividers.jsonc"
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
// modules that are not included by default:
|
||||||
"custom/wireguard", // wireguard
|
// "~/.config/waybar/modules/extras/taskbar.jsonc",
|
||||||
"bluetooth", // bluetooth
|
// "~/.config/waybar/modules/extras/tray.jsonc",
|
||||||
"custom/update", // system update
|
// "~/.config/waybar/modules/extras/wireplumber.jsonc"
|
||||||
"custom/right5"
|
],
|
||||||
],
|
|
||||||
|
/*------------
|
||||||
"modules-right": [
|
layout
|
||||||
"mpris", // media info
|
------------*/
|
||||||
|
|
||||||
"custom/left6",
|
"modules-left": [
|
||||||
"pulseaudio", // output device
|
"group/user",
|
||||||
|
"custom/left_div#1",
|
||||||
"custom/left7",
|
"hyprland/workspaces",
|
||||||
"backlight", // brightness
|
"custom/right_div#1",
|
||||||
|
"hyprland/window"
|
||||||
"custom/left8",
|
],
|
||||||
"battery", // battery
|
"modules-center": [
|
||||||
|
"hyprland/windowcount",
|
||||||
"custom/leftin2",
|
"custom/left_div#2",
|
||||||
"custom/power" // power button
|
"temperature",
|
||||||
],
|
"custom/left_div#3",
|
||||||
|
"memory",
|
||||||
// <<--< Modules >-->>
|
"custom/left_div#4",
|
||||||
|
"cpu",
|
||||||
"custom/ws": {
|
"custom/left_inv#1",
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
"custom/left_div#5",
|
||||||
"return-type": "json",
|
"custom/distro",
|
||||||
"format": " ",
|
"custom/right_div#2",
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
"custom/right_inv#1",
|
||||||
"min-length": 3,
|
"idle_inhibitor",
|
||||||
"max-length": 3
|
"clock#time",
|
||||||
},
|
"custom/right_div#3",
|
||||||
|
"clock#date",
|
||||||
"hyprland/workspaces": {
|
"custom/right_div#4",
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
"network",
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
"bluetooth",
|
||||||
"persistent-workspaces": {
|
"custom/system_update",
|
||||||
"1": [],
|
"custom/right_div#5"
|
||||||
"2": [],
|
],
|
||||||
"3": [],
|
"modules-right": [
|
||||||
"4": [],
|
"mpris",
|
||||||
"5": []
|
"custom/left_div#6",
|
||||||
}
|
"group/pulseaudio",
|
||||||
},
|
"custom/left_div#7",
|
||||||
|
"backlight",
|
||||||
"hyprland/window": {
|
"custom/left_div#8",
|
||||||
"format": "{}",
|
"battery",
|
||||||
"tooltip": false,
|
"custom/left_inv#2",
|
||||||
"min-length": 5,
|
"custom/power_menu"
|
||||||
|
],
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
/*-------------
|
||||||
"":
|
options
|
||||||
"<span foreground='#458588'> </span> Hyprland",
|
-------------*/
|
||||||
|
|
||||||
// Terminal
|
// "expand-center":
|
||||||
"~": " Terminal",
|
// "expand-left":
|
||||||
"zsh": " Terminal",
|
// "expand-right":
|
||||||
"kitty": " Terminal",
|
"layer": "top",
|
||||||
|
// "output":
|
||||||
"tmux(.*)":
|
// "position":
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
"height": 0,
|
||||||
|
"width": 0,
|
||||||
// Browser
|
"margin": 0,
|
||||||
|
// "margin-top":
|
||||||
"(.*)Mozilla Firefox":
|
// "margin-left":
|
||||||
"<span foreground='#cc241d'> </span> Firefox",
|
// "margin-bottom":
|
||||||
"(.*) — Mozilla Firefox":
|
// "margin-right":
|
||||||
"<span foreground='#cc241d'> </span> $1",
|
// "no-center":
|
||||||
|
"spacing": 0,
|
||||||
"(.*)Zen Browser":
|
// "name":
|
||||||
"<span foreground='#d65d0e'> </span> Zen Browser",
|
"mode": "dock",
|
||||||
"(.*) — Zen Browser":
|
// "start_hidden":
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
// "modifier-reset":
|
||||||
|
// "exclusive":
|
||||||
// Development
|
// "fixed-center":
|
||||||
|
// "passthrough":
|
||||||
"(.*) - Visual Studio Code":
|
// "ipc":
|
||||||
"<span foreground='#458588'> </span> $1",
|
// "id":
|
||||||
"(.*)Visual Studio Code":
|
"reload_style_on_change": true
|
||||||
"<span foreground='#458588'> </span> Visual Studio Code",
|
// "on-sigusr1":
|
||||||
|
// "on-sigusr2":
|
||||||
"nvim":
|
|
||||||
"<span foreground='#98971a'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#98971a'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#d5c4a1'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#b16286'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#458588'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#458588'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#cc241d'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#458588'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#98971a'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#cc241d'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"weeks-pos": "right",
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#928374'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#d5c4a1' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#cc241d'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wireguard": {
|
|
||||||
"format": "{}",
|
|
||||||
"return-type": "json",
|
|
||||||
"interval": 10,
|
|
||||||
"exec": "~/.config/waybar/scripts/wireguard-status.sh",
|
|
||||||
"tooltip": true
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 180,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#98971a'> </span>",
|
|
||||||
"firefox": "<span foreground='#cc241d'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#928374'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,489 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"custom/wireguard", // wireguard
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#458588'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#cc241d'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#cc241d'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#d65d0e'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#458588'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#458588'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#98971a'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#98971a'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#d5c4a1'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#b16286'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#458588'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#458588'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#cc241d'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#458588'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#98971a'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#cc241d'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"weeks-pos": "right",
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#928374'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#d5c4a1' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#cc241d'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wireguard": {
|
|
||||||
"format": "{}",
|
|
||||||
"return-type": "json",
|
|
||||||
"interval": 10,
|
|
||||||
"exec": "~/.config/waybar/scripts/wireguard-status.sh",
|
|
||||||
"tooltip": true
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 180,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#98971a'> </span>",
|
|
||||||
"firefox": "<span foreground='#cc241d'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#928374'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#8aadf4'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#ed8796'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#ed8796'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#f5a97f'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#f5a97f'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#8aadf4'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#8aadf4'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#a6da95'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#a6da95'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#a6da95'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#a6da95'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#a6da95'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#a6da95'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#a5adcb'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#f5a97f'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#f5a97f'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#c6a0f6'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#8aadf4'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#8aadf4'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#ed8796'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#8aadf4'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#a6da95'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#f5a97f'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#ed8796'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#b7bdf8'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#a5adcb' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#ed8796'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#a6da95'> </span>",
|
|
||||||
"firefox": "<span foreground='#ed8796'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#b7bdf8'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
54
waybar/install.sh
Executable file
54
waybar/install.sh
Executable file
@@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
RED='\033[1;31m'
|
||||||
|
GRN='\033[1;32m'
|
||||||
|
BLU='\033[1;34m'
|
||||||
|
RST='\033[0m'
|
||||||
|
|
||||||
|
DEPS=(
|
||||||
|
bluez
|
||||||
|
bluez-utils # bluetoothctl
|
||||||
|
brightnessctl
|
||||||
|
fzf
|
||||||
|
networkmanager # nmcli
|
||||||
|
pacman-contrib # checkupdates
|
||||||
|
pipewire-pulse
|
||||||
|
ttf-0xproto-nerd
|
||||||
|
)
|
||||||
|
|
||||||
|
main() {
|
||||||
|
printf '%bInstalling dependencies...%b\n' "$BLU" "$RST"
|
||||||
|
|
||||||
|
local package
|
||||||
|
local errors=0
|
||||||
|
for package in "${DEPS[@]}"; do
|
||||||
|
if pacman -Qi "$package" > /dev/null; then
|
||||||
|
printf '[%b/%b] %s\n' "$GRN" "$RST" "$package"
|
||||||
|
else
|
||||||
|
printf '[ ] %s...\n' "$package"
|
||||||
|
|
||||||
|
if sudo pacman -S --noconfirm "$package"; then
|
||||||
|
printf '[%b+%b] %s\n' "$GRN" "$RST" "$package"
|
||||||
|
else
|
||||||
|
printf '[%bx%b] %s\n' "$RED" "$RST" "$package"
|
||||||
|
((errors++))
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
printf '\n%bMaking scripts executable...%b\n' "$BLU" "$RST"
|
||||||
|
chmod -v +x ~/.config/waybar/scripts/*.sh
|
||||||
|
|
||||||
|
pkill waybar
|
||||||
|
waybar &> /dev/null &
|
||||||
|
disown
|
||||||
|
|
||||||
|
if ((errors > 0)); then
|
||||||
|
printf '\nInstallation completed with %b%d errors%b\n' \
|
||||||
|
"$RED" "$errors" "$RST"
|
||||||
|
else
|
||||||
|
printf '\n%bInstallation complete!%b\n' "$GRN" "$RST"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
main
|
||||||
32
waybar/modules/backlight.jsonc
Normal file
32
waybar/modules/backlight.jsonc
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"backlight": {
|
||||||
|
// "interval":
|
||||||
|
"format": "{icon} {percent}%",
|
||||||
|
"format-icons": [
|
||||||
|
"", "", "", "", "", "", "", "", ""
|
||||||
|
],
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "rotate":
|
||||||
|
// "states":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
"on-scroll-up": "~/.config/waybar/scripts/backlight.sh up",
|
||||||
|
"on-scroll-down": "~/.config/waybar/scripts/backlight.sh down",
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "reverse-scrolling":
|
||||||
|
// "reverse-mouse-scrolling":
|
||||||
|
// "scroll-step":
|
||||||
|
// "min-brightness":
|
||||||
|
"tooltip": false
|
||||||
|
// "tooltip-format":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
45
waybar/modules/battery.jsonc
Normal file
45
waybar/modules/battery.jsonc
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
"battery": {
|
||||||
|
// "bat":
|
||||||
|
// "adapter":
|
||||||
|
// "design-capacity":
|
||||||
|
// "full-at":
|
||||||
|
// "interval":
|
||||||
|
"states": {
|
||||||
|
"warning": 20,
|
||||||
|
"critical": 10
|
||||||
|
},
|
||||||
|
"format": "{icon} {capacity}%",
|
||||||
|
"format-time": "{H} hr {M} min",
|
||||||
|
"format-icons": [
|
||||||
|
"", "", "", "", "", "", "", "", "", ""
|
||||||
|
],
|
||||||
|
"format-charging": " {capacity}%",
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "rotate":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Discharging: {time}",
|
||||||
|
"tooltip-format-charging": "Charging: {time}",
|
||||||
|
// "weighted-average":
|
||||||
|
// "bat-compatibility":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
"events": {
|
||||||
|
"on-discharging-warning": "notify-send 'Battery Low (20%)' -i 'battery-020'",
|
||||||
|
"on-discharging-critical": "notify-send 'Battery Critical (10%)' -u critical -i 'battery-010'",
|
||||||
|
"on-charging-100": "notify-send 'Battery Full (100%)' -i 'battery-100-charged'"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
38
waybar/modules/bluetooth.jsonc
Normal file
38
waybar/modules/bluetooth.jsonc
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
{
|
||||||
|
"bluetooth": {
|
||||||
|
// "controller":
|
||||||
|
// "format-device-preference":
|
||||||
|
"format": "",
|
||||||
|
"format-disabled": "",
|
||||||
|
"format-off": "",
|
||||||
|
"format-on": "",
|
||||||
|
"format-connected": "",
|
||||||
|
// "format-connected-battery":
|
||||||
|
// "format-no-controller":
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
"min-length": 2,
|
||||||
|
"max-length": 2,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
"on-click": "kitty -e ~/.config/waybar/scripts/bluetooth.sh",
|
||||||
|
// "on-click-middle":
|
||||||
|
"on-click-right": "bluetoothctl power off && notify-send 'Bluetooth Off' -i 'network-bluetooth-inactive' -r 1925",
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Device Addr: {device_address}",
|
||||||
|
"tooltip-format-disabled": "Bluetooth Disabled",
|
||||||
|
"tooltip-format-off": "Bluetooth Off",
|
||||||
|
"tooltip-format-on": "Bluetooth Disconnected",
|
||||||
|
"tooltip-format-connected": "Device: {device_alias}",
|
||||||
|
"tooltip-format-enumerate-connected": "Device: {device_alias}",
|
||||||
|
"tooltip-format-connected-battery": "Device: {device_alias}\nBattery: {device_battery_percentage}%",
|
||||||
|
"tooltip-format-enumerate-connected-battery": "Device: {device_alias}\nBattery: {device_battery_percentage}%"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
71
waybar/modules/clock.jsonc
Normal file
71
waybar/modules/clock.jsonc
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
{
|
||||||
|
"clock#time": {
|
||||||
|
// "interval":
|
||||||
|
"format": "{:%H:%M}",
|
||||||
|
// "timezone":
|
||||||
|
// "timezones":
|
||||||
|
// "locale":
|
||||||
|
"min-length": 5,
|
||||||
|
"max-length": 5,
|
||||||
|
// "rotate": 0,
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Standard Time: {:%I:%M %p}"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
},
|
||||||
|
|
||||||
|
/*--------------
|
||||||
|
calendar
|
||||||
|
--------------*/
|
||||||
|
|
||||||
|
"clock#date": {
|
||||||
|
// "interval":
|
||||||
|
"format": " {:%m-%d}",
|
||||||
|
// "timezone":
|
||||||
|
// "timezones":
|
||||||
|
// "locale":
|
||||||
|
"min-length": 8,
|
||||||
|
"max-length": 8,
|
||||||
|
// "rotate":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "{calendar}",
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
"calendar": {
|
||||||
|
"mode": "month",
|
||||||
|
"mode-mon-col": 6,
|
||||||
|
// "week-pos":
|
||||||
|
// "on-scroll":
|
||||||
|
"format": {
|
||||||
|
"months": "<span alpha='100%'><b>{}</b></span>",
|
||||||
|
"days": "<span alpha='90%'>{}</span>",
|
||||||
|
// "weeks":
|
||||||
|
"weekdays": "<span alpha='80%'><i>{}</i></span>",
|
||||||
|
"today": "<span alpha='100%'><b><u>{}</u></b></span>"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"actions": {
|
||||||
|
"on-click": "mode"
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
27
waybar/modules/cpu.jsonc
Normal file
27
waybar/modules/cpu.jsonc
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
"cpu": {
|
||||||
|
"interval": 10,
|
||||||
|
"format": " {usage}%",
|
||||||
|
"format-warning": " {usage}%",
|
||||||
|
"format-critical": " {usage}%",
|
||||||
|
// "format-icons":
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "rotate":
|
||||||
|
"states": {
|
||||||
|
"warning": 75,
|
||||||
|
"critical": 90
|
||||||
|
},
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
"tooltip": false
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
33
waybar/modules/custom/distro.jsonc
Normal file
33
waybar/modules/custom/distro.jsonc
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"custom/distro": {
|
||||||
|
// "exec":
|
||||||
|
// "exec-if":
|
||||||
|
// "exec-on-event":
|
||||||
|
// "hide-empty-text":
|
||||||
|
// "return-type":
|
||||||
|
// "interval":
|
||||||
|
// "restart-interval":
|
||||||
|
// "signal":
|
||||||
|
"format": "",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
// "min-length":
|
||||||
|
// "max-length":
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
"tooltip": false
|
||||||
|
// "tooltip-format":
|
||||||
|
// "escape":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
79
waybar/modules/custom/dividers.jsonc
Normal file
79
waybar/modules/custom/dividers.jsonc
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
{
|
||||||
|
/*-------------------
|
||||||
|
left dividers
|
||||||
|
-------------------*/
|
||||||
|
|
||||||
|
"custom/left_div#1": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#2": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#3": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#4": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#5": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#6": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#7": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_div#8": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
|
||||||
|
// inverse
|
||||||
|
"custom/left_inv#1": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/left_inv#2": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
|
||||||
|
/*--------------------
|
||||||
|
right dividers
|
||||||
|
--------------------*/
|
||||||
|
|
||||||
|
"custom/right_div#1": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/right_div#2": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/right_div#3": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/right_div#4": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/right_div#5": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
|
||||||
|
// inverse
|
||||||
|
"custom/right_inv#1": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false
|
||||||
|
}
|
||||||
|
}
|
||||||
33
waybar/modules/custom/power_menu.jsonc
Normal file
33
waybar/modules/custom/power_menu.jsonc
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"custom/power_menu": {
|
||||||
|
// "exec":
|
||||||
|
// "exec-if":
|
||||||
|
// "exec-on-event":
|
||||||
|
// "hide-empty-text":
|
||||||
|
// "return-type":
|
||||||
|
// "interval":
|
||||||
|
// "restart-interval":
|
||||||
|
// "signal":
|
||||||
|
"format": "",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
// "min-length":
|
||||||
|
// "max-length":
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
"on-click": "kitty -e ~/.config/waybar/scripts/power-menu.sh",
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Power Menu"
|
||||||
|
// "escape":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
33
waybar/modules/custom/system_update.jsonc
Normal file
33
waybar/modules/custom/system_update.jsonc
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"custom/system_update": {
|
||||||
|
"exec": "~/.config/waybar/scripts/system-update.sh module",
|
||||||
|
// "exec-if":
|
||||||
|
// "exec-on-event":
|
||||||
|
// "hide-empty-text":
|
||||||
|
"return-type": "json",
|
||||||
|
"interval": 3600,
|
||||||
|
// "restart-interval":
|
||||||
|
"signal": 1,
|
||||||
|
"format": "{}",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
"min-length": 2,
|
||||||
|
"max-length": 2,
|
||||||
|
"on-click": "kitty -e ~/.config/waybar/scripts/system-update.sh"
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
// "tooltip-format":
|
||||||
|
// "escape":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
83
waybar/modules/custom/user.jsonc
Normal file
83
waybar/modules/custom/user.jsonc
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
{
|
||||||
|
"group/user": {
|
||||||
|
"orientation": "horizontal",
|
||||||
|
"modules": [
|
||||||
|
"custom/trigger",
|
||||||
|
"custom/user"
|
||||||
|
],
|
||||||
|
"drawer": {
|
||||||
|
// "transition-duration":
|
||||||
|
// "transition-left-to-right":
|
||||||
|
// "children-class":
|
||||||
|
// "click-to-reveal":
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"custom/trigger": {
|
||||||
|
// "exec":
|
||||||
|
// "exec-if":
|
||||||
|
// "exec-on-event":
|
||||||
|
// "hide-empty-text":
|
||||||
|
// "return-type":
|
||||||
|
// "interval":
|
||||||
|
// "restart-interval":
|
||||||
|
// "signal":
|
||||||
|
"format": "",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
"min-length": 4,
|
||||||
|
"max-length": 4,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
"tooltip": false
|
||||||
|
// "tooltip-format":
|
||||||
|
// "escape":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
},
|
||||||
|
|
||||||
|
/*--------------
|
||||||
|
username
|
||||||
|
--------------*/
|
||||||
|
|
||||||
|
"custom/user": {
|
||||||
|
"exec": "id -un",
|
||||||
|
// "exec-if":
|
||||||
|
// "exec-on-event":
|
||||||
|
// "hide-empty-text":
|
||||||
|
// "return-type":
|
||||||
|
// "interval":
|
||||||
|
// "restart-interval":
|
||||||
|
// "signal":
|
||||||
|
"format": "{}",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
// "min-length":
|
||||||
|
// "max-length":
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
"tooltip": false
|
||||||
|
// "tooltip-format":
|
||||||
|
// "escape":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
21
waybar/modules/extras/taskbar.jsonc
Normal file
21
waybar/modules/extras/taskbar.jsonc
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"wlr/taskbar": {
|
||||||
|
// "all-outputs":
|
||||||
|
// "format":
|
||||||
|
// "icon-theme":
|
||||||
|
// "icon-size":
|
||||||
|
// "markup":
|
||||||
|
// "tooltip":
|
||||||
|
// "tooltip-format":
|
||||||
|
// "active-first":
|
||||||
|
// "sort-by-app-id":
|
||||||
|
"on-click": "activate",
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
"ignore-list": [ "kitty" ],
|
||||||
|
// "app_ids-mapping":
|
||||||
|
// "rewrite":
|
||||||
|
"cursor": true
|
||||||
|
}
|
||||||
|
}
|
||||||
13
waybar/modules/extras/tray.jsonc
Normal file
13
waybar/modules/extras/tray.jsonc
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 16,
|
||||||
|
// "show-passive-items":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
"spacing": 12,
|
||||||
|
// "reverse-direction":
|
||||||
|
// "on-update":
|
||||||
|
// "expand":
|
||||||
|
// "icons":
|
||||||
|
"cursor": true
|
||||||
|
}
|
||||||
|
}
|
||||||
82
waybar/modules/extras/wireplumber.jsonc
Normal file
82
waybar/modules/extras/wireplumber.jsonc
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
{
|
||||||
|
"group/wireplumber": {
|
||||||
|
"orientation": "horizontal",
|
||||||
|
"modules": [
|
||||||
|
"wireplumber#output",
|
||||||
|
"wireplumber#input"
|
||||||
|
],
|
||||||
|
"drawer": {
|
||||||
|
// "transition-duration":
|
||||||
|
"transition-left-to-right": false
|
||||||
|
// "children-class":
|
||||||
|
// "click-to-reveal":
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/*-------------------
|
||||||
|
output device
|
||||||
|
-------------------*/
|
||||||
|
|
||||||
|
"wireplumber#output": {
|
||||||
|
"format": "{icon} {volume}%",
|
||||||
|
"format-muted": " {volume}%",
|
||||||
|
// "format-source":
|
||||||
|
// "format-source-muted":
|
||||||
|
"format-icons": [
|
||||||
|
"", "", ""
|
||||||
|
],
|
||||||
|
// "rotate":
|
||||||
|
// "states":
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "scroll-step":
|
||||||
|
"on-click": "~/.config/waybar/scripts/volume.sh output mute",
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
"on-scroll-up": "~/.config/waybar/scripts/volume.sh output raise",
|
||||||
|
"on-scroll-down": "~/.config/waybar/scripts/volume.sh output lower",
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Device: {node_name}",
|
||||||
|
// "max-volume":
|
||||||
|
// "reverse-scrolling":
|
||||||
|
"node-type": "Audio/Sink"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
},
|
||||||
|
|
||||||
|
/*----------------
|
||||||
|
microphone
|
||||||
|
----------------*/
|
||||||
|
|
||||||
|
"wireplumber#input": {
|
||||||
|
"format": " {volume}%",
|
||||||
|
"format-muted": " {volume}%",
|
||||||
|
// "format-source":
|
||||||
|
// "format-source-muted":
|
||||||
|
// "rotate":
|
||||||
|
// "states":
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "scroll-step":
|
||||||
|
"on-click": "~/.config/waybar/scripts/volume.sh input mute",
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
"on-scroll-up": "~/.config/waybar/scripts/volume.sh input raise",
|
||||||
|
"on-scroll-down": "~/.config/waybar/scripts/volume.sh input lower",
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Device: {node_name}",
|
||||||
|
// "max-volume":
|
||||||
|
// "reverse-scrolling":
|
||||||
|
"node-type": "Audio/Source"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
}
|
||||||
|
}
|
||||||
19
waybar/modules/hyprland/window.jsonc
Normal file
19
waybar/modules/hyprland/window.jsonc
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"hyprland/window": {
|
||||||
|
"format": "{}",
|
||||||
|
"rewrite": {
|
||||||
|
"": "Desktop",
|
||||||
|
"kitty": "Terminal",
|
||||||
|
"zsh": "Terminal",
|
||||||
|
"~": "Terminal"
|
||||||
|
},
|
||||||
|
// "separate-outputs":
|
||||||
|
// "icon":
|
||||||
|
// "icon-size":
|
||||||
|
// "min-length":
|
||||||
|
// "max-length":
|
||||||
|
// "tooltip":
|
||||||
|
"swap-icon-label": false
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
12
waybar/modules/hyprland/windowcount.jsonc
Normal file
12
waybar/modules/hyprland/windowcount.jsonc
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"hyprland/windowcount": {
|
||||||
|
"format": "[{}]",
|
||||||
|
// "format-empty":
|
||||||
|
// "format-windowed":
|
||||||
|
// "format-fullscreen":
|
||||||
|
// "separate-outputs":
|
||||||
|
// "min-length":
|
||||||
|
// "max-length":
|
||||||
|
"swap-icon-label": false
|
||||||
|
}
|
||||||
|
}
|
||||||
38
waybar/modules/hyprland/workspaces.jsonc
Normal file
38
waybar/modules/hyprland/workspaces.jsonc
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
{
|
||||||
|
"hyprland/workspaces": {
|
||||||
|
// "active-only":
|
||||||
|
// "hide-active":
|
||||||
|
// "all-outputs":
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"active": "",
|
||||||
|
"default": ""
|
||||||
|
},
|
||||||
|
"persistent-workspaces": {
|
||||||
|
"*": 5
|
||||||
|
},
|
||||||
|
// "persistent-only":
|
||||||
|
// "show-special":
|
||||||
|
// "special-visible-only":
|
||||||
|
// "sort-by":
|
||||||
|
// "window-rewrite":
|
||||||
|
// "window-rewrite-default":
|
||||||
|
// "format-window-separator":
|
||||||
|
"workspace-taskbar": {
|
||||||
|
// "enable":
|
||||||
|
// "update-active-window":
|
||||||
|
// "format":
|
||||||
|
// "icon-size":
|
||||||
|
// "icon-theme":
|
||||||
|
// "orientation":
|
||||||
|
// "ignore-list":
|
||||||
|
// "on-click-window":
|
||||||
|
},
|
||||||
|
// "move-to-monitor":
|
||||||
|
// "ignore-workspaces":
|
||||||
|
"on-scroll-up": "hyprctl dispatch workspace +1",
|
||||||
|
"on-scroll-down": "hyprctl dispatch workspace -1",
|
||||||
|
// "expand":
|
||||||
|
"cursor": true
|
||||||
|
}
|
||||||
|
}
|
||||||
30
waybar/modules/idle_inhibitor.jsonc
Normal file
30
waybar/modules/idle_inhibitor.jsonc
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"idle_inhibitor": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"activated": "",
|
||||||
|
"deactivated": ""
|
||||||
|
},
|
||||||
|
// "rotate":
|
||||||
|
"min-length": 3,
|
||||||
|
"max-length": 3,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format-activated": "Keep Screen On: <span text_transform='capitalize'>{status}</span>",
|
||||||
|
"tooltip-format-deactivated": "Keep Screen On: <span text_transform='capitalize'>{status}</span>",
|
||||||
|
"start-activated": false
|
||||||
|
// "timeout":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
31
waybar/modules/memory.jsonc
Normal file
31
waybar/modules/memory.jsonc
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"memory": {
|
||||||
|
"interval": 10,
|
||||||
|
"format": " {percentage}%",
|
||||||
|
"format-warning": " {percentage}%",
|
||||||
|
"format-critical": " {percentage}%",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
"states": {
|
||||||
|
"warning": 75,
|
||||||
|
"critical": 90
|
||||||
|
},
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
36
waybar/modules/mpris.jsonc
Normal file
36
waybar/modules/mpris.jsonc
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
"mpris": {
|
||||||
|
// "player":
|
||||||
|
// "ignored-players":
|
||||||
|
// "interval":
|
||||||
|
"format": "{player_icon} {title} - {artist}",
|
||||||
|
"format-paused": "{status_icon} {title} - {artist}",
|
||||||
|
"tooltip-format": "Playing: {title} - {artist}",
|
||||||
|
"tooltip-format-paused": "Paused: {title} - {artist}",
|
||||||
|
// "enable-tooltip-len-limits":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
"player-icons": {
|
||||||
|
"default": ""
|
||||||
|
},
|
||||||
|
"status-icons": {
|
||||||
|
"paused": ""
|
||||||
|
},
|
||||||
|
// "artist-len":
|
||||||
|
// "album-len":
|
||||||
|
// "title-len":
|
||||||
|
// "dynamic-len":
|
||||||
|
// "dynamic-order":
|
||||||
|
// "dynamic-separator":
|
||||||
|
// "dynamic-importance-order":
|
||||||
|
// "truncate-hours":
|
||||||
|
// "ellipsis":
|
||||||
|
// "rotate":
|
||||||
|
// "min-length":
|
||||||
|
"max-length": 1000
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
40
waybar/modules/network.jsonc
Normal file
40
waybar/modules/network.jsonc
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"network": {
|
||||||
|
// "interface":
|
||||||
|
// "rfkill":
|
||||||
|
"interval": 10,
|
||||||
|
// "family":
|
||||||
|
"format": "",
|
||||||
|
"format-ethernet": "",
|
||||||
|
"format-wifi": "{icon}",
|
||||||
|
// "format-linked":
|
||||||
|
"format-disconnected": "",
|
||||||
|
"format-disabled": "",
|
||||||
|
// "format-alt":
|
||||||
|
"format-icons": [
|
||||||
|
"", "", "", ""
|
||||||
|
],
|
||||||
|
// "rotate":
|
||||||
|
"min-length": 2,
|
||||||
|
"max-length": 2,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
"on-click": "kitty -e ~/.config/waybar/scripts/network.sh",
|
||||||
|
// "on-click-middle":
|
||||||
|
"on-click-right": "nmcli radio wifi off && notify-send 'Wi-Fi Disabled' -i 'network-wireless-off' -r 1125",
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Gateway: {gwaddr}",
|
||||||
|
"tooltip-format-ethernet": "Interface: {ifname}",
|
||||||
|
"tooltip-format-wifi": "Network: {essid}\nIP Addr: {ipaddr}/{cidr}\nStrength: {signalStrength}%\nFrequency: {frequency} GHz",
|
||||||
|
"tooltip-format-disconnected": "Wi-Fi Disconnected",
|
||||||
|
"tooltip-format-disabled": "Wi-Fi Disabled"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
96
waybar/modules/pulseaudio.jsonc
Normal file
96
waybar/modules/pulseaudio.jsonc
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
{
|
||||||
|
"group/pulseaudio": {
|
||||||
|
"orientation": "horizontal",
|
||||||
|
"modules": [
|
||||||
|
"pulseaudio#output",
|
||||||
|
"pulseaudio#input"
|
||||||
|
],
|
||||||
|
"drawer": {
|
||||||
|
// "transition-duration":
|
||||||
|
"transition-left-to-right": false
|
||||||
|
// "children-class":
|
||||||
|
// "click-to-reveal":
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/*-------------------
|
||||||
|
output device
|
||||||
|
-------------------*/
|
||||||
|
|
||||||
|
"pulseaudio#output": {
|
||||||
|
"format": "{icon} {volume}%",
|
||||||
|
// "format-bluetooth":
|
||||||
|
"format-muted": "{icon} {volume}%",
|
||||||
|
// "format-source":
|
||||||
|
// "format-source-muted":
|
||||||
|
"format-icons": {
|
||||||
|
"default": [ "", "", "" ],
|
||||||
|
"default-muted": "",
|
||||||
|
"headphone": "",
|
||||||
|
"headphone-muted": "",
|
||||||
|
"headset": "",
|
||||||
|
"headset-muted": ""
|
||||||
|
},
|
||||||
|
// "rotate":
|
||||||
|
// "states":
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "scroll-step":
|
||||||
|
"on-click": "~/.config/waybar/scripts/volume.sh output mute",
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
"on-scroll-up": "~/.config/waybar/scripts/volume.sh output raise",
|
||||||
|
"on-scroll-down": "~/.config/waybar/scripts/volume.sh output lower",
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Output Device: {desc}"
|
||||||
|
// "max-volume":
|
||||||
|
// "ignored-sinks":
|
||||||
|
// "reverse-scrolling":
|
||||||
|
// "reverse-mouse-scrolling":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
},
|
||||||
|
|
||||||
|
/*----------------
|
||||||
|
microphone
|
||||||
|
----------------*/
|
||||||
|
|
||||||
|
"pulseaudio#input": {
|
||||||
|
"format": "{format_source}",
|
||||||
|
// "format-bluetooth":
|
||||||
|
// "format-muted":
|
||||||
|
"format-source": " {volume}%",
|
||||||
|
"format-source-muted": " {volume}%",
|
||||||
|
// "format-icons":
|
||||||
|
// "rotate":
|
||||||
|
// "states":
|
||||||
|
"min-length": 7,
|
||||||
|
"max-length": 7,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "scroll-step":
|
||||||
|
"on-click": "~/.config/waybar/scripts/volume.sh input mute",
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
"on-scroll-up": "~/.config/waybar/scripts/volume.sh input raise",
|
||||||
|
"on-scroll-down": "~/.config/waybar/scripts/volume.sh input lower",
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Input Device: {desc}"
|
||||||
|
// "max-volume":
|
||||||
|
// "ignored-sinks":
|
||||||
|
// "reverse-scrolling":
|
||||||
|
// "reverse-mouse-scrolling":
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
35
waybar/modules/temperature.jsonc
Normal file
35
waybar/modules/temperature.jsonc
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"temperature": {
|
||||||
|
"thermal-zone": 1,
|
||||||
|
// "hwmon-path":
|
||||||
|
// "hwmon-path-abs":
|
||||||
|
// "input-filename":
|
||||||
|
// "warning-threshold":
|
||||||
|
"critical-threshold": 90,
|
||||||
|
"interval": 10,
|
||||||
|
// "format-warning":
|
||||||
|
"format-critical": " {temperatureC}°C",
|
||||||
|
"format": "{icon} {temperatureC}°C",
|
||||||
|
"format-icons": [
|
||||||
|
"", "", ""
|
||||||
|
],
|
||||||
|
// "rotate":
|
||||||
|
"min-length": 8,
|
||||||
|
"max-length": 8,
|
||||||
|
// "align":
|
||||||
|
// "justify":
|
||||||
|
// "on-click":
|
||||||
|
// "on-click-middle":
|
||||||
|
// "on-click-right":
|
||||||
|
// "on-update":
|
||||||
|
// "on-scroll-up":
|
||||||
|
// "on-scroll-down":
|
||||||
|
// "smooth-scrolling-threshold":
|
||||||
|
// "tooltip":
|
||||||
|
"tooltip-format": "Temp in Fahrenheit: {temperatureF}°F"
|
||||||
|
// "menu":
|
||||||
|
// "menu-file":
|
||||||
|
// "menu-actions":
|
||||||
|
// "expand":
|
||||||
|
}
|
||||||
|
}
|
||||||
66
waybar/scripts/backlight.sh
Executable file
66
waybar/scripts/backlight.sh
Executable file
@@ -0,0 +1,66 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Adjust screen brightness and send a notification with the current level
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# - brightnessctl
|
||||||
|
# - notify-send (libnotify)
|
||||||
|
#
|
||||||
|
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||||
|
# Created: August 28, 2025
|
||||||
|
# License: MIT
|
||||||
|
|
||||||
|
VALUE=1
|
||||||
|
|
||||||
|
print-usage() {
|
||||||
|
local script=${0##*/}
|
||||||
|
|
||||||
|
cat <<- EOF
|
||||||
|
USAGE: $script [OPTIONS]
|
||||||
|
|
||||||
|
Adjust screen brightness and send a notification with the current level
|
||||||
|
|
||||||
|
OPTIONS:
|
||||||
|
up <value> Increase brightness by <value>
|
||||||
|
down <value> Decrease brightness by <value>
|
||||||
|
Default value: $VALUE
|
||||||
|
|
||||||
|
EXAMPLES:
|
||||||
|
Increase brightness:
|
||||||
|
$ $script up
|
||||||
|
|
||||||
|
Decrease brightness by 5:
|
||||||
|
$ $script down 5
|
||||||
|
EOF
|
||||||
|
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
set-brightness() {
|
||||||
|
local op
|
||||||
|
case $action in
|
||||||
|
'up') op='+' ;;
|
||||||
|
'down') op='-' ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
brightnessctl -n set "${value}%${op}" &> /dev/null
|
||||||
|
|
||||||
|
local level
|
||||||
|
level=$(brightnessctl -m | awk -F ',' '{print $4}')
|
||||||
|
|
||||||
|
notify-send "Brightness: $level" -h int:value:"$level" -i 'contrast' -r 2825
|
||||||
|
}
|
||||||
|
|
||||||
|
main() {
|
||||||
|
action=$1
|
||||||
|
value=${2:-$VALUE}
|
||||||
|
|
||||||
|
! ((value > 0)) && print-usage
|
||||||
|
|
||||||
|
case $action in
|
||||||
|
'up' | 'down') set-brightness ;;
|
||||||
|
*) print-usage ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
main "$@"
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Original script by Eric Murphy
|
|
||||||
# https://github.com/ericmurphyxyz/dotfiles/blob/master/.local/bin/battery-alert
|
|
||||||
#
|
|
||||||
# Modified by Jesse Mirabel (@sejjy)
|
|
||||||
# https://github.com/sejjy/mechabar
|
|
||||||
|
|
||||||
# This script sends a notification when the battery is full, low, or critical.
|
|
||||||
# icon theme used: tela-circle-icon-theme-dracula
|
|
||||||
#
|
|
||||||
# (see the bottom of the script for more information)
|
|
||||||
|
|
||||||
export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/1000/bus"
|
|
||||||
|
|
||||||
# battery levels
|
|
||||||
WARNING_LEVEL=20
|
|
||||||
CRITICAL_LEVEL=10
|
|
||||||
|
|
||||||
# get the battery state and percentage using upower (waybar dependency)
|
|
||||||
BAT_PATH=$(upower -e | grep BAT | head -n 1)
|
|
||||||
BATTERY_STATE=$(upower -i "$BAT_PATH" | awk '/state:/ {print $2}')
|
|
||||||
BATTERY_LEVEL=$(upower -i "$BAT_PATH" | awk '/percentage:/ {print $2}' | tr -d '%')
|
|
||||||
|
|
||||||
# prevent multiple notifications
|
|
||||||
FILE_FULL=/tmp/battery-full
|
|
||||||
FILE_WARNING=/tmp/battery-warning
|
|
||||||
FILE_CRITICAL=/tmp/battery-critical
|
|
||||||
|
|
||||||
# remove the files if the battery is no longer in that state
|
|
||||||
if [ "$BATTERY_STATE" == "discharging" ]; then
|
|
||||||
rm -f $FILE_FULL
|
|
||||||
elif [ "$BATTERY_STATE" == "charging" ]; then
|
|
||||||
rm -f "$FILE_WARNING" "$FILE_CRITICAL"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# if the battery is full and is plugged in
|
|
||||||
if [ "$BATTERY_LEVEL" -eq 100 ] && [ "$BATTERY_STATE" == "fully-charged" ] && [ ! -f $FILE_FULL ]; then
|
|
||||||
notify-send -a "state" "Battery Charged (${BATTERY_LEVEL}%)" "You might want to unplug your PC." -i "battery-full" -r 9991
|
|
||||||
touch $FILE_FULL
|
|
||||||
|
|
||||||
# if the battery is low and is discharging
|
|
||||||
elif [ "$BATTERY_LEVEL" -le $WARNING_LEVEL ] && [ "$BATTERY_STATE" == "discharging" ] && [ ! -f $FILE_WARNING ]; then
|
|
||||||
notify-send -a "state" "Battery Low (${BATTERY_LEVEL}%)" "You might want to plug in your PC." -u critical -i "battery-caution" -r 9991 -h string:fgcolor:\#fab387 -h string:frcolor:\#fab387
|
|
||||||
touch $FILE_WARNING
|
|
||||||
|
|
||||||
# if the battery is critical and is discharging
|
|
||||||
elif [ "$BATTERY_LEVEL" -le $CRITICAL_LEVEL ] && [ "$BATTERY_STATE" == "discharging" ] && [ ! -f $FILE_CRITICAL ]; then
|
|
||||||
notify-send -a "state" "Battery Critical (${BATTERY_LEVEL}%)" "Plug in your PC now." -u critical -i "battery-empty" -r 9991
|
|
||||||
touch $FILE_CRITICAL
|
|
||||||
fi
|
|
||||||
|
|
||||||
# systemd service
|
|
||||||
# Add the following to ~/.config/systemd/user/battery-level.service:
|
|
||||||
|
|
||||||
# [Unit]
|
|
||||||
# Description=Battery Level Checker
|
|
||||||
# After=graphical.target
|
|
||||||
#
|
|
||||||
# [Service]
|
|
||||||
# ExecStart=%h/.config/waybar/scripts/battery-level.sh
|
|
||||||
# Type=oneshot
|
|
||||||
|
|
||||||
# systemd timer
|
|
||||||
# Add the following to ~/.config/systemd/user/battery-level.timer:
|
|
||||||
|
|
||||||
# [Unit]
|
|
||||||
# Description=Run Battery Level Checker
|
|
||||||
#
|
|
||||||
# [Timer]
|
|
||||||
# OnBootSec=1min
|
|
||||||
# OnUnitActiveSec=1min
|
|
||||||
# Unit=battery-level.service
|
|
||||||
#
|
|
||||||
# [Install]
|
|
||||||
# WantedBy=timers.target
|
|
||||||
|
|
||||||
# enable the timer by running the following commands:
|
|
||||||
# systemctl --user daemon-reload
|
|
||||||
# systemctl --user enable --now battery-level.timer
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Original script by Eric Murphy
|
|
||||||
# https://github.com/ericmurphyxyz/dotfiles/blob/master/.local/bin/battery-alert
|
|
||||||
#
|
|
||||||
# Modified by Jesse Mirabel (@sejjy)
|
|
||||||
# https://github.com/sejjy/mechabar
|
|
||||||
|
|
||||||
# This script sends a notification when the battery is charging or discharging.
|
|
||||||
# icon theme used: tela-circle-icon-theme-dracula
|
|
||||||
#
|
|
||||||
# (see the bottom of the script for more information)
|
|
||||||
|
|
||||||
export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/1000/bus"
|
|
||||||
|
|
||||||
# get the battery state from the udev rule
|
|
||||||
BATTERY_STATE=$1
|
|
||||||
|
|
||||||
# get the battery percentage using upower (waybar dependency)
|
|
||||||
BAT_PATH=$(upower -e | grep BAT | head -n 1)
|
|
||||||
BATTERY_LEVEL=$(upower -i "$BAT_PATH" | awk '/percentage:/ {print $2}' | tr -d '%')
|
|
||||||
|
|
||||||
# set the battery charging state and icon
|
|
||||||
case "$BATTERY_STATE" in
|
|
||||||
"charging")
|
|
||||||
BATTERY_CHARGING="Charging"
|
|
||||||
BATTERY_ICON="090-charging"
|
|
||||||
;;
|
|
||||||
"discharging")
|
|
||||||
BATTERY_CHARGING="Disharging"
|
|
||||||
BATTERY_ICON="090"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# send the notification
|
|
||||||
notify-send -a "state" "Battery ${BATTERY_CHARGING} (${BATTERY_LEVEL}%)" -u normal -i "battery-${BATTERY_ICON}" -r 9991
|
|
||||||
|
|
||||||
# udev rule
|
|
||||||
# Add the following to /etc/udev/rules.d/60-power.rules:
|
|
||||||
|
|
||||||
# ACTION=="change", SUBSYSTEM=="power_supply", ATTR{type}=="Mains", ATTR{online}=="0", ENV{DISPLAY}=":0", RUN+="/usr/bin/su <username> -c '$HOME/.config/waybar/scripts/battery-state.sh discharging'"
|
|
||||||
# ACTION=="change", SUBSYSTEM=="power_supply", ATTR{type}=="Mains", ATTR{online}=="1", ENV{DISPLAY}=":0", RUN+="/usr/bin/su <username> -c '$HOME/.config/waybar/scripts/battery-state.sh charging'"
|
|
||||||
|
|
||||||
# the number 60 in the udev rule can be changed to any number between 0 and 99.
|
|
||||||
# the lower the number, the higher the priority.
|
|
||||||
#
|
|
||||||
# $USER does not work, so you have to replace "<username>" with your username.
|
|
||||||
|
|
||||||
# reload udev rules by running the following command:
|
|
||||||
# sudo udevadm control --reload-rules
|
|
||||||
@@ -1,106 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Author: Jesse Mirabel (@sejjy)
|
|
||||||
# GitHub: https://github.com/sejjy/mechabar
|
|
||||||
|
|
||||||
# Rofi config
|
|
||||||
config="$HOME/.config/rofi/bluetooth-menu.rasi"
|
|
||||||
|
|
||||||
# Rofi window override
|
|
||||||
override_disabled="mainbox { children: [ textbox-custom, listview ]; } listview { lines: 1; padding: 6px 6px 8px; }"
|
|
||||||
|
|
||||||
get_device_icon() {
|
|
||||||
local device_mac=$1
|
|
||||||
device_info=$(bluetoothctl info "$device_mac")
|
|
||||||
device_icon=$(echo "$device_info" | grep "Icon:" | awk '{print $2}')
|
|
||||||
|
|
||||||
case "$device_icon" in
|
|
||||||
"audio-headphones" | "audio-headset") echo " " ;; # Headphones
|
|
||||||
"video-display" | "computer") echo " " ;; # Monitor
|
|
||||||
"audio-input-microphone") echo " " ;; # Microphone
|
|
||||||
"input-keyboard") echo " " ;; # Keyboard
|
|
||||||
"audio-speakers") echo " " ;; # Speakers
|
|
||||||
"input-mouse") echo " " ;; # Mouse
|
|
||||||
"phone") echo " " ;; # Phone
|
|
||||||
*)
|
|
||||||
echo " " # Default
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
# Get list of paired devices
|
|
||||||
bluetooth_devices=$(bluetoothctl devices | while read -r line; do
|
|
||||||
device_mac=$(echo "$line" | awk '{print $2}')
|
|
||||||
device_name=$(echo "$line" | awk '{$1=$2=""; print substr($0, 3)}')
|
|
||||||
icon=$(get_device_icon "$device_mac")
|
|
||||||
echo "$icon $device_name"
|
|
||||||
done)
|
|
||||||
|
|
||||||
options=$(
|
|
||||||
echo " Scan for devices"
|
|
||||||
echo " Disable Bluetooth"
|
|
||||||
echo "$bluetooth_devices"
|
|
||||||
)
|
|
||||||
option=" Enable Bluetooth"
|
|
||||||
|
|
||||||
# Get Bluetooth status
|
|
||||||
bluetooth_status=$(bluetoothctl show | grep "Powered:" | awk '{print $2}')
|
|
||||||
|
|
||||||
if [[ "$bluetooth_status" == "yes" ]]; then
|
|
||||||
selected_option=$(echo -e "$options" | rofi -dmenu -i -selected-row 1 -config "${config}" -p " " || pkill -x rofi)
|
|
||||||
else
|
|
||||||
selected_option=$(echo -e "$option" | rofi -dmenu -i -selected-row 1 -config "${config}" -theme-str "${override_disabled}" -p " " || pkill -x rofi)
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Exit if no option is selected
|
|
||||||
if [ -z "$selected_option" ]; then
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Actions based on selected option
|
|
||||||
case "$selected_option" in
|
|
||||||
*"Enable Bluetooth")
|
|
||||||
notify-send "Bluetooth Enabled" -i "package-installed-outdated"
|
|
||||||
rfkill unblock bluetooth
|
|
||||||
bluetoothctl power on
|
|
||||||
sleep 1
|
|
||||||
;;
|
|
||||||
*"Disable Bluetooth")
|
|
||||||
notify-send "Bluetooth Disabled" -i "package-broken"
|
|
||||||
rfkill block bluetooth
|
|
||||||
bluetoothctl power off
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
*"Scan for devices")
|
|
||||||
notify-send "Press '?' to show help." -i "package-installed-outdated"
|
|
||||||
kitty --title ' Bluetooth TUI' bash -c "bluetui" # Launch bluetui
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
# Extract device name
|
|
||||||
device_name="${selected_option#* }"
|
|
||||||
device_name="${device_name## }"
|
|
||||||
|
|
||||||
if [[ -n "$device_name" ]]; then
|
|
||||||
# Get MAC address
|
|
||||||
device_mac=$(bluetoothctl devices | grep "$device_name" | awk '{print $2}')
|
|
||||||
|
|
||||||
# Trust and pair device
|
|
||||||
bluetoothctl trust "$device_mac" >/dev/null 2>&1
|
|
||||||
bluetoothctl pair "$device_mac" >/dev/null 2>&1
|
|
||||||
|
|
||||||
# Connect to device
|
|
||||||
bluetoothctl connect "$device_mac" &
|
|
||||||
sleep 3
|
|
||||||
connection_status=$(bluetoothctl info "$device_mac" | grep "Connected:" | awk '{print $2}')
|
|
||||||
|
|
||||||
if [[ "$connection_status" == "yes" ]]; then
|
|
||||||
notify-send "Connected to \"$device_name\"." -i "package-installed-outdated"
|
|
||||||
exit
|
|
||||||
else
|
|
||||||
notify-send "Failed to connect to \"$device_name\"." -i "package-broken"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
120
waybar/scripts/bluetooth.sh
Executable file
120
waybar/scripts/bluetooth.sh
Executable file
@@ -0,0 +1,120 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Scan, select, pair, and connect to Bluetooth devices
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# - bluetoothctl (bluez-utils)
|
||||||
|
# - fzf
|
||||||
|
# - notify-send (libnotify)
|
||||||
|
#
|
||||||
|
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||||
|
# Created: August 19, 2025
|
||||||
|
# License: MIT
|
||||||
|
|
||||||
|
RED='\033[1;31m'
|
||||||
|
RST='\033[0m'
|
||||||
|
|
||||||
|
TIMEOUT=10
|
||||||
|
|
||||||
|
get-device-list() {
|
||||||
|
bluetoothctl --timeout $TIMEOUT scan on > /dev/null &
|
||||||
|
|
||||||
|
local i num
|
||||||
|
for ((i = 1; i <= TIMEOUT; i++)); do
|
||||||
|
printf '\rScanning for devices... (%d/%d)' $i $TIMEOUT
|
||||||
|
printf '\n%bPress [q] to stop%b\n\n' "$RED" "$RST"
|
||||||
|
|
||||||
|
num=$(bluetoothctl devices | grep -c Device)
|
||||||
|
|
||||||
|
printf '\rDevices: %s' "$num"
|
||||||
|
printf '\033[3A' # move cursor up 3 lines
|
||||||
|
|
||||||
|
read -rs -n 1 -t 1
|
||||||
|
[[ $REPLY == [Qq] ]] && break
|
||||||
|
done
|
||||||
|
|
||||||
|
printf '\n%bScanning stopped.%b\n\n' "$RED" "$RST"
|
||||||
|
|
||||||
|
list=$(bluetoothctl devices | grep Device | cut -d ' ' -f 2-)
|
||||||
|
|
||||||
|
if [[ -z $list ]]; then
|
||||||
|
notify-send 'Bluetooth' 'No devices found' -i 'package-broken'
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
select-device() {
|
||||||
|
local header
|
||||||
|
header=$(printf '%-17s %s' 'Address' 'Name')
|
||||||
|
|
||||||
|
# shellcheck disable=SC1090
|
||||||
|
. ~/.config/waybar/scripts/fzf-colors.sh 2> /dev/null
|
||||||
|
|
||||||
|
local opts=(
|
||||||
|
--border=sharp
|
||||||
|
--border-label=' Bluetooth Devices '
|
||||||
|
--ghost='Search'
|
||||||
|
--header="$header"
|
||||||
|
--height=~100%
|
||||||
|
--highlight-line
|
||||||
|
--info=inline-right
|
||||||
|
--pointer=
|
||||||
|
--reverse
|
||||||
|
"${COLORS[@]}"
|
||||||
|
)
|
||||||
|
|
||||||
|
address=$(fzf "${opts[@]}" <<< "$list" | awk '{print $1}')
|
||||||
|
|
||||||
|
[[ -z $address ]] && return 1
|
||||||
|
|
||||||
|
local connected
|
||||||
|
connected=$(bluetoothctl info "$address" | grep Connected |
|
||||||
|
awk '{print $2}')
|
||||||
|
|
||||||
|
if [[ $connected == 'yes' ]]; then
|
||||||
|
notify-send 'Bluetooth' 'Already connected to this device' \
|
||||||
|
-i 'package-install'
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pair-and-connect() {
|
||||||
|
local paired
|
||||||
|
paired=$(bluetoothctl info "$address" | grep Paired | awk '{print $2}')
|
||||||
|
|
||||||
|
if [[ $paired == 'no' ]]; then
|
||||||
|
printf 'Pairing...'
|
||||||
|
|
||||||
|
if ! timeout $TIMEOUT bluetoothctl pair "$address" > /dev/null; then
|
||||||
|
notify-send 'Bluetooth' 'Failed to pair' -i 'package-purge'
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf '\nConnecting...'
|
||||||
|
|
||||||
|
if timeout $TIMEOUT bluetoothctl connect "$address" > /dev/null; then
|
||||||
|
notify-send 'Bluetooth' 'Successfully connected' -i 'package-install'
|
||||||
|
else
|
||||||
|
notify-send 'Bluetooth' 'Failed to connect' -i 'package-purge'
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
main() {
|
||||||
|
local status
|
||||||
|
status=$(bluetoothctl show | grep PowerState | awk '{print $2}')
|
||||||
|
|
||||||
|
if [[ $status == 'off' ]]; then
|
||||||
|
bluetoothctl power on > /dev/null
|
||||||
|
notify-send 'Bluetooth On' -i 'network-bluetooth-activated' -r 1925
|
||||||
|
fi
|
||||||
|
|
||||||
|
tput civis # make cursor invisible
|
||||||
|
get-device-list || exit 1
|
||||||
|
tput cnorm # make cursor visible
|
||||||
|
|
||||||
|
select-device || exit 1
|
||||||
|
pair-and-connect || exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
main
|
||||||
@@ -1,92 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Print error message for invalid arguments
|
|
||||||
print_error() {
|
|
||||||
cat <<"EOF"
|
|
||||||
Usage: ./brightnesscontrol.sh <action>
|
|
||||||
Valid actions are:
|
|
||||||
i -- <i>ncrease brightness [+2%]
|
|
||||||
d -- <d>ecrease brightness [-2%]
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
# Send a notification with brightness info
|
|
||||||
send_notification() {
|
|
||||||
brightness=$(brightnessctl info | grep -oP "(?<=\()\d+(?=%)")
|
|
||||||
notify-send -a "state" -r 91190 -i "gpm-brightness-lcd" -h int:value:"$brightness" "Brightness: ${brightness}%" -u low
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get the current brightness percentage and device name
|
|
||||||
get_brightness() {
|
|
||||||
brightness=$(brightnessctl -m | grep -o '[0-9]\+%' | head -c-2)
|
|
||||||
device=$(brightnessctl -m | head -n 1 | awk -F',' '{print $1}' | sed 's/_/ /g; s/\<./\U&/g') # Get device name
|
|
||||||
current_brightness=$(brightnessctl -m | head -n 1 | awk -F',' '{print $3}') # Get current brightness
|
|
||||||
max_brightness=$(brightnessctl -m | head -n 1 | awk -F',' '{print $5}') # Get max brightness
|
|
||||||
}
|
|
||||||
get_brightness
|
|
||||||
|
|
||||||
# Handle options
|
|
||||||
while getopts o: opt; do
|
|
||||||
case "${opt}" in
|
|
||||||
o)
|
|
||||||
case $OPTARG in
|
|
||||||
i) # Increase brightness
|
|
||||||
if [[ $brightness -lt 10 ]]; then
|
|
||||||
brightnessctl set +1%
|
|
||||||
else
|
|
||||||
brightnessctl set +2%
|
|
||||||
fi
|
|
||||||
send_notification
|
|
||||||
;;
|
|
||||||
d) # Decrease brightness
|
|
||||||
if [[ $brightness -le 1 ]]; then
|
|
||||||
brightnessctl set 1%
|
|
||||||
elif [[ $brightness -le 10 ]]; then
|
|
||||||
brightnessctl set 1%-
|
|
||||||
else
|
|
||||||
brightnessctl set 2%-
|
|
||||||
fi
|
|
||||||
send_notification
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
print_error
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
print_error
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Determine the icon based on brightness level
|
|
||||||
get_icon() {
|
|
||||||
if ((brightness <= 5)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 15)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 30)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 45)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 55)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 65)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 80)); then
|
|
||||||
icon=""
|
|
||||||
elif ((brightness <= 95)); then
|
|
||||||
icon=""
|
|
||||||
else
|
|
||||||
icon=""
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Backlight module and tooltip
|
|
||||||
get_icon
|
|
||||||
module="${icon} ${brightness}%"
|
|
||||||
|
|
||||||
tooltip="Device Name: ${device}"
|
|
||||||
tooltip+="\nBrightness: ${current_brightness} / ${max_brightness}"
|
|
||||||
|
|
||||||
echo "{\"text\": \"${module}\", \"tooltip\": \"${tooltip}\"}"
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
model=$(awk -F ': ' '/model name/{print $2}' /proc/cpuinfo | head -n 1 | sed 's/@.*//; s/ *\((R)\|(TM)\)//g; s/^[ \t]*//; s/[ \t]*$//')
|
|
||||||
|
|
||||||
# get CPU clock speeds
|
|
||||||
get_cpu_frequency() {
|
|
||||||
freqlist=$(awk '/cpu MHz/ {print $4}' /proc/cpuinfo)
|
|
||||||
maxfreq=$(sed 's/...$//' /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq)
|
|
||||||
if [ -z "$freqlist" ] || [ -z "$maxfreq" ]; then
|
|
||||||
echo "--"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
average_freq=$(echo "$freqlist" | tr ' ' '\n' | awk "{sum+=\$1} END {printf \"%.0f/%s MHz\", sum/NR, $maxfreq}")
|
|
||||||
echo "$average_freq"
|
|
||||||
}
|
|
||||||
|
|
||||||
# get CPU temp
|
|
||||||
get_cpu_temperature() {
|
|
||||||
temp=$(sensors | awk '/Package id 0/ {print $4}' | awk -F '[+.]' '{print $2}')
|
|
||||||
if [[ -z "$temp" ]]; then
|
|
||||||
temp=$(sensors | awk '/Tctl/ {print $2}' | tr -d '+°C')
|
|
||||||
fi
|
|
||||||
if [[ -z "$temp" ]]; then
|
|
||||||
temp="--"
|
|
||||||
temp_f="--"
|
|
||||||
else
|
|
||||||
temp=${temp%.*}
|
|
||||||
temp_f=$(awk "BEGIN {printf \"%.1f\", ($temp * 9 / 5) + 32}")
|
|
||||||
fi
|
|
||||||
# Celsius and Fahrenheit
|
|
||||||
echo "${temp:---} ${temp_f:---}"
|
|
||||||
}
|
|
||||||
|
|
||||||
get_temperature_icon() {
|
|
||||||
temp_value=$1
|
|
||||||
if [ "$temp_value" = "--" ]; then
|
|
||||||
icon="" # none
|
|
||||||
elif [ "$temp_value" -ge 80 ]; then
|
|
||||||
icon="" # high
|
|
||||||
elif [ "$temp_value" -ge 70 ]; then
|
|
||||||
icon="" # medium
|
|
||||||
elif [ "$temp_value" -ge 60 ]; then
|
|
||||||
icon="" # normal
|
|
||||||
else
|
|
||||||
icon="" # low
|
|
||||||
fi
|
|
||||||
echo "$icon"
|
|
||||||
}
|
|
||||||
|
|
||||||
cpu_frequency=$(get_cpu_frequency)
|
|
||||||
read -r temp_info < <(get_cpu_temperature)
|
|
||||||
temp=$(echo "$temp_info" | awk '{print $1}')
|
|
||||||
temp_f=$(echo "$temp_info" | awk '{print $2}')
|
|
||||||
thermo_icon=$(get_temperature_icon "$temp")
|
|
||||||
|
|
||||||
# high temp warning
|
|
||||||
if [ "$temp" == "--" ] || [ "$temp" -ge 80 ]; then
|
|
||||||
text_output="<span color='#f38ba8'>${thermo_icon} ${temp}°C</span>"
|
|
||||||
else
|
|
||||||
text_output="${thermo_icon} ${temp}°C"
|
|
||||||
fi
|
|
||||||
|
|
||||||
tooltip=":: ${model}\n"
|
|
||||||
tooltip+="Clock Speed: ${cpu_frequency}\nTemperature: ${temp_f}°F"
|
|
||||||
|
|
||||||
# module and tooltip
|
|
||||||
echo "{\"text\": \"$text_output\", \"tooltip\": \"$tooltip\"}"
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
CURRENT_THEME_FILE="$HOME/.config/waybar/themes/current-theme"
|
|
||||||
|
|
||||||
# Get the current theme
|
|
||||||
current_theme=$(cat "$CURRENT_THEME_FILE" 2>/dev/null || echo "")
|
|
||||||
current_theme_name="Default"
|
|
||||||
|
|
||||||
# Get the theme name
|
|
||||||
if [[ -n "$current_theme" ]]; then
|
|
||||||
current_theme_name=$(basename "$current_theme" .css)
|
|
||||||
|
|
||||||
# Convert "theme-name" to "Theme Name"
|
|
||||||
formatted_theme_name="${current_theme_name//-/ }"
|
|
||||||
formatted_theme_name=$(echo "$formatted_theme_name" | awk '{for(i=1;i<=NF;i++) $i=toupper(substr($i,1,1)) substr($i,2)}1')
|
|
||||||
else
|
|
||||||
formatted_theme_name="Default"
|
|
||||||
fi
|
|
||||||
|
|
||||||
tooltip="Theme: $formatted_theme_name"
|
|
||||||
tooltip+="\nStyle: Classic" # hard-coded for now
|
|
||||||
|
|
||||||
# Tooltip
|
|
||||||
echo "{\"tooltip\": \"$tooltip\"}"
|
|
||||||
82
waybar/scripts/fzf-colors.sh
Executable file
82
waybar/scripts/fzf-colors.sh
Executable file
@@ -0,0 +1,82 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# NOTE:
|
||||||
|
# The names, maps, and COLORS arrays are all parallel:
|
||||||
|
# - names[i]: the color name as defined in theme.css
|
||||||
|
# - maps[i]: variable to store the hex value
|
||||||
|
# - COLORS: color config passed to fzf
|
||||||
|
#
|
||||||
|
# Add themes by defining the names array in def-colors().
|
||||||
|
|
||||||
|
FILE="$XDG_CONFIG_HOME/waybar/theme.css"
|
||||||
|
|
||||||
|
def-colors() {
|
||||||
|
local theme
|
||||||
|
theme=$(sed 1q "$FILE")
|
||||||
|
|
||||||
|
declare -ga names
|
||||||
|
|
||||||
|
# Add themes here:
|
||||||
|
if [[ $theme == *"catppuccin"* ]]; then
|
||||||
|
names=(
|
||||||
|
'surface0' 'base' 'rosewater'
|
||||||
|
'red' 'text' 'red'
|
||||||
|
'mauve' 'rosewater' 'lavender'
|
||||||
|
'text' 'mauve' 'red'
|
||||||
|
'surface1' 'overlay0' 'text'
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
get-hex() {
|
||||||
|
local defs
|
||||||
|
defs=$(sed -n '3,28p' "$FILE")
|
||||||
|
|
||||||
|
local n hex
|
||||||
|
declare -gA colors
|
||||||
|
|
||||||
|
for n in "${names[@]}"; do
|
||||||
|
read -r _ _ hex < <(grep " $n " <<< "$defs")
|
||||||
|
hex=${hex%;}
|
||||||
|
|
||||||
|
colors[$n]=$hex
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
map-colors() {
|
||||||
|
local -a maps=(
|
||||||
|
'_cur_bg' '_bg' '_spinner'
|
||||||
|
'_hl' '_fg' '_header'
|
||||||
|
'_info' '_pointer' '_marker'
|
||||||
|
'_cur_fg' '_prompt' '_cur_hl'
|
||||||
|
'_sel_bg' '_border' '_label'
|
||||||
|
)
|
||||||
|
|
||||||
|
local n
|
||||||
|
local i=0
|
||||||
|
|
||||||
|
for n in "${names[@]}"; do
|
||||||
|
declare -g "${maps[i]}"="${colors[$n]}"
|
||||||
|
((i++))
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
main() {
|
||||||
|
def-colors
|
||||||
|
get-hex
|
||||||
|
map-colors
|
||||||
|
|
||||||
|
# shellcheck disable=SC2154
|
||||||
|
# These variables are defined dynamically
|
||||||
|
declare -ga COLORS=(
|
||||||
|
"--color= bg+:$_cur_bg, bg:$_bg, spinner:$_spinner"
|
||||||
|
"--color= hl:$_hl, fg:$_fg, header:$_header"
|
||||||
|
"--color= info:$_info, pointer:$_pointer, marker:$_marker"
|
||||||
|
"--color= fg+:$_cur_fg, prompt:$_prompt, hl+:$_cur_hl"
|
||||||
|
"--color=selected-bg:$_sel_bg, border:$_border, label:$_label"
|
||||||
|
)
|
||||||
|
|
||||||
|
export COLORS
|
||||||
|
}
|
||||||
|
|
||||||
|
main
|
||||||
99
waybar/scripts/network.sh
Executable file
99
waybar/scripts/network.sh
Executable file
@@ -0,0 +1,99 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Scan, select, and connect to Wi-Fi networks
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# - nmcli (networkmanager)
|
||||||
|
# - fzf
|
||||||
|
# - notify-send (libnotify)
|
||||||
|
#
|
||||||
|
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||||
|
# Created: August 11, 2025
|
||||||
|
# License: MIT
|
||||||
|
|
||||||
|
RED='\033[1;31m'
|
||||||
|
RST='\033[0m'
|
||||||
|
|
||||||
|
TIMEOUT=5
|
||||||
|
|
||||||
|
get-network-list() {
|
||||||
|
nmcli device wifi rescan 2> /dev/null
|
||||||
|
|
||||||
|
local i
|
||||||
|
for ((i = 1; i <= TIMEOUT; i++)); do
|
||||||
|
printf '\rScanning for networks... (%d/%d)' $i $TIMEOUT
|
||||||
|
printf '\033[1A' # move cursor up 1 line
|
||||||
|
|
||||||
|
list=$(timeout 1 nmcli device wifi list)
|
||||||
|
networks=$(tail -n +2 <<< "$list" | awk '$2 != "--"')
|
||||||
|
|
||||||
|
[[ -n $networks ]] && break
|
||||||
|
done
|
||||||
|
|
||||||
|
printf '\n%bScanning stopped.%b\n\n' "$RED" "$RST"
|
||||||
|
|
||||||
|
if [[ -z $networks ]]; then
|
||||||
|
notify-send 'Wi-Fi' 'No networks found' -i 'package-broken'
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
select-network() {
|
||||||
|
local header
|
||||||
|
header=$(head -n 1 <<< "$list")
|
||||||
|
|
||||||
|
# shellcheck disable=SC1090
|
||||||
|
. ~/.config/waybar/scripts/fzf-colors.sh 2> /dev/null
|
||||||
|
|
||||||
|
local opts=(
|
||||||
|
--border=sharp
|
||||||
|
--border-label=' Wi-Fi Networks '
|
||||||
|
--ghost='Search'
|
||||||
|
--header="$header"
|
||||||
|
--height=~100%
|
||||||
|
--highlight-line
|
||||||
|
--info=inline-right
|
||||||
|
--pointer=
|
||||||
|
--reverse
|
||||||
|
"${COLORS[@]}"
|
||||||
|
)
|
||||||
|
|
||||||
|
bssid=$(fzf "${opts[@]}" <<< "$networks" | awk '{print $1}')
|
||||||
|
|
||||||
|
if [[ -z $bssid ]]; then
|
||||||
|
return 1
|
||||||
|
elif [[ $bssid == '*' ]]; then
|
||||||
|
notify-send 'Wi-Fi' 'Already connected to this network' \
|
||||||
|
-i 'package-install'
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
connect-to-network() {
|
||||||
|
printf 'Connecting...\n'
|
||||||
|
|
||||||
|
if nmcli --ask device wifi connect "$bssid"; then
|
||||||
|
notify-send 'Wi-Fi' 'Successfully connected' -i 'package-install'
|
||||||
|
else
|
||||||
|
notify-send 'Wi-Fi' 'Failed to connect' -i 'package-purge'
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
main() {
|
||||||
|
local status
|
||||||
|
status=$(nmcli radio wifi)
|
||||||
|
|
||||||
|
if [[ $status == 'disabled' ]]; then
|
||||||
|
nmcli radio wifi on
|
||||||
|
notify-send 'Wi-Fi Enabled' -i 'network-wireless-on' -r 1125
|
||||||
|
fi
|
||||||
|
|
||||||
|
tput civis # make cursor invisible
|
||||||
|
get-network-list || exit 1
|
||||||
|
tput cnorm # make cursor visible
|
||||||
|
|
||||||
|
select-network || exit 1
|
||||||
|
connect-to-network
|
||||||
|
}
|
||||||
|
|
||||||
|
main
|
||||||
@@ -1,30 +1,49 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Display a power menu to perform system actions
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# - fzf
|
||||||
|
#
|
||||||
|
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||||
|
# Created: August 19, 2025
|
||||||
|
# License: MIT
|
||||||
|
|
||||||
config="$HOME/.config/rofi/power-menu.rasi"
|
LIST=(
|
||||||
|
'Lock'
|
||||||
|
'Shutdown'
|
||||||
|
'Reboot'
|
||||||
|
'Logout'
|
||||||
|
'Hibernate'
|
||||||
|
'Suspend'
|
||||||
|
)
|
||||||
|
|
||||||
actions=$(echo -e " Lock\n Shutdown\n Reboot\n Suspend\n Hibernate\n Logout")
|
main() {
|
||||||
|
# shellcheck disable=SC1090
|
||||||
|
. ~/.config/waybar/scripts/fzf-colors.sh 2> /dev/null
|
||||||
|
|
||||||
# Display logout menu
|
local opts=(
|
||||||
selected_option=$(echo -e "$actions" | rofi -dmenu -i -config "${config}" || pkill -x rofi)
|
--border=sharp
|
||||||
|
--border-label=' Power Menu '
|
||||||
|
--height=~100%
|
||||||
|
--highlight-line
|
||||||
|
--no-input
|
||||||
|
--pointer=
|
||||||
|
--reverse
|
||||||
|
"${COLORS[@]}"
|
||||||
|
)
|
||||||
|
|
||||||
# Perform actions based on the selected option
|
local selected
|
||||||
case "$selected_option" in
|
selected=$(printf '%s\n' "${LIST[@]}" | fzf "${opts[@]}")
|
||||||
*Lock)
|
|
||||||
loginctl lock-session
|
case $selected in
|
||||||
;;
|
'Lock') loginctl lock-session ;;
|
||||||
*Shutdown)
|
'Shutdown') systemctl poweroff ;;
|
||||||
systemctl poweroff
|
'Reboot') systemctl reboot ;;
|
||||||
;;
|
'Logout') loginctl terminate-session "$XDG_SESSION_ID" ;;
|
||||||
*Reboot)
|
'Hibernate') systemctl hibernate ;;
|
||||||
systemctl reboot
|
'Suspend') systemctl suspend ;;
|
||||||
;;
|
esac
|
||||||
*Suspend)
|
}
|
||||||
systemctl suspend
|
|
||||||
;;
|
main
|
||||||
*Hibernate)
|
|
||||||
systemctl hibernate
|
|
||||||
;;
|
|
||||||
*Logout)
|
|
||||||
loginctl kill-session "$XDG_SESSION_ID"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|||||||
@@ -1,86 +1,82 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Check for available updates and optionally upgrade packages on Arch Linux.
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# - checkupdates (pacman-contrib)
|
||||||
|
# - notify-send (libnotify)
|
||||||
|
# - optional: an AUR helper (aura, paru, pikaur, trizen, yay)
|
||||||
|
#
|
||||||
|
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||||
|
# Created: August 16, 2025
|
||||||
|
# License: MIT
|
||||||
|
|
||||||
# Check release
|
GRN='\033[1;32m'
|
||||||
if [ ! -f /etc/arch-release ]; then
|
BLU='\033[1;34m'
|
||||||
exit 0
|
RST='\033[0m'
|
||||||
fi
|
|
||||||
|
|
||||||
pkg_installed() {
|
TIMEOUT=5
|
||||||
local pkg=$1
|
|
||||||
|
|
||||||
if pacman -Qi "${pkg}" &>/dev/null; then
|
check-updates() {
|
||||||
return 0
|
repo=$(timeout $TIMEOUT checkupdates 2> /dev/null | wc -l)
|
||||||
elif pacman -Qi "flatpak" &>/dev/null && flatpak info "${pkg}" &>/dev/null; then
|
|
||||||
return 0
|
if [[ -n $helper ]]; then
|
||||||
elif command -v "${pkg}" &>/dev/null; then
|
aur=$(timeout $TIMEOUT "$helper" -Quaq 2> /dev/null | wc -l)
|
||||||
return 0
|
fi
|
||||||
else
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
get_aur_helper() {
|
update-packages() {
|
||||||
if pkg_installed yay; then
|
printf '\n%bUpdating pacman packages...%b\n' "$BLU" "$RST"
|
||||||
aur_helper="yay"
|
sudo pacman -Syu
|
||||||
elif pkg_installed paru; then
|
|
||||||
aur_helper="paru"
|
printf '\n%bUpdating AUR packages...%b\n' "$BLU" "$RST"
|
||||||
fi
|
"$helper" -Syu
|
||||||
|
|
||||||
|
# use signal to update the module
|
||||||
|
pkill -RTMIN+1 waybar
|
||||||
|
|
||||||
|
notify-send 'Update Complete' -i 'package-install'
|
||||||
|
printf '\n%bUpdate Complete!%b\n' "$GRN" "$RST"
|
||||||
|
read -rs -n 1 -p 'Press any key to exit...'
|
||||||
}
|
}
|
||||||
|
|
||||||
get_aur_helper
|
display-module() {
|
||||||
export -f pkg_installed
|
local tooltip="Official: $repo"
|
||||||
|
|
||||||
# Trigger upgrade
|
if [[ -n $helper ]]; then
|
||||||
if [ "$1" == "up" ]; then
|
tooltip+="\nAUR($helper): $aur"
|
||||||
trap 'pkill -RTMIN+20 waybar' EXIT
|
fi
|
||||||
command="
|
|
||||||
$0 upgrade
|
|
||||||
${aur_helper} -Syu
|
|
||||||
if pkg_installed flatpak; then flatpak update; fi
|
|
||||||
printf '\n'
|
|
||||||
read -n 1 -p 'Press any key to continue...'
|
|
||||||
"
|
|
||||||
kitty --title " System Update" sh -c "${command}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check for AUR updates
|
local total=$((repo + aur))
|
||||||
if [ -n "$aur_helper" ]; then
|
|
||||||
aur_updates=$(${aur_helper} -Qua | grep -c '^')
|
|
||||||
else
|
|
||||||
aur_updates=0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check for official repository updates
|
if ((total == 0)); then
|
||||||
official_updates=$(
|
echo "{ \"text\": \"\", \"tooltip\": \"No updates available\" }"
|
||||||
(while pgrep -x checkupdates >/dev/null; do sleep 1; done)
|
else
|
||||||
checkupdates | grep -c '^'
|
echo "{ \"text\": \"\", \"tooltip\": \"$tooltip\" }"
|
||||||
)
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Check for Flatpak updates
|
main() {
|
||||||
if pkg_installed flatpak; then
|
local arg=$1
|
||||||
flatpak_updates=$(flatpak remote-ls --updates | grep -c '^')
|
local helpers=(aura paru pikaur trizen yay)
|
||||||
else
|
local bin
|
||||||
flatpak_updates=0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Calculate total available updates
|
bin=$(command -v "${helpers[@]}" | head -n 1)
|
||||||
total_updates=$((official_updates + aur_updates + flatpak_updates))
|
helper=${bin##*/}
|
||||||
|
repo=0
|
||||||
|
aur=0
|
||||||
|
|
||||||
# Handle formatting based on AUR helper
|
case $arg in
|
||||||
if [ "$aur_helper" == "yay" ]; then
|
'module')
|
||||||
[ "${1}" == upgrade ] && printf "Official: %-10s\nAUR ($aur_helper): %-10s\nFlatpak: %-10s\n\n" "$official_updates" "$aur_updates" "$flatpak_updates" && exit
|
check-updates
|
||||||
|
display-module
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
printf '%bChecking for updates...%b' "$BLU" "$RST"
|
||||||
|
check-updates
|
||||||
|
update-packages
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
tooltip="Official: $official_updates\nAUR ($aur_helper): $aur_updates\nFlatpak: $flatpak_updates"
|
main "$@"
|
||||||
|
|
||||||
elif [ "$aur_helper" == "paru" ]; then
|
|
||||||
[ "${1}" == upgrade ] && printf "Official: %-10s\nAUR ($aur_helper): %-10s\nFlatpak: %-10s\n\n" "$official_updates" "$aur_updates" "$flatpak_updates" && exit
|
|
||||||
|
|
||||||
tooltip="Official: $official_updates\nAUR ($aur_helper): $aur_updates\nFlatpak: $flatpak_updates"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Module and tooltip
|
|
||||||
if [ $total_updates -eq 0 ]; then
|
|
||||||
echo "{\"text\":\"\", \"tooltip\":\"Packages are up to date\"}"
|
|
||||||
else
|
|
||||||
echo "{\"text\":\"\", \"tooltip\":\"${tooltip//\"/\\\"}\"}"
|
|
||||||
fi
|
|
||||||
|
|||||||
@@ -1,54 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
WAYBAR_CSS_DIR="$HOME/.config/waybar/themes/css"
|
|
||||||
WAYBAR_CSS_FILE="$HOME/.config/waybar/theme.css"
|
|
||||||
WAYBAR_JSONC_DIR="$HOME/.config/waybar/themes/jsonc"
|
|
||||||
WAYBAR_JSONC_FILE="$HOME/.config/waybar/config.jsonc"
|
|
||||||
ROFI_THEMES_DIR="$HOME/.config/rofi/themes"
|
|
||||||
ROFI_THEME_FILE="$HOME/.config/rofi/theme.rasi"
|
|
||||||
CURRENT_THEME_FILE="$HOME/.config/waybar/themes/current-theme"
|
|
||||||
|
|
||||||
for dir in "$WAYBAR_CSS_DIR" "$WAYBAR_JSONC_DIR" "$ROFI_THEMES_DIR"; do
|
|
||||||
[[ ! -d "$dir" ]] && echo "Error: $dir not found" && exit 1
|
|
||||||
done
|
|
||||||
|
|
||||||
# Get all themes
|
|
||||||
waybar_css=("$WAYBAR_CSS_DIR"/*.css)
|
|
||||||
waybar_jsonc=("$WAYBAR_JSONC_DIR"/*.jsonc)
|
|
||||||
rofi_themes=("$ROFI_THEMES_DIR"/*.rasi)
|
|
||||||
|
|
||||||
if [[ ${#waybar_css[@]} -eq 0 || ${#waybar_jsonc[@]} -eq 0 || ${#rofi_themes[@]} -eq 0 ]]; then
|
|
||||||
echo "Error: No themes found in one of the directories"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Get the current theme
|
|
||||||
current_theme=$(cat "$CURRENT_THEME_FILE" 2>/dev/null || echo "")
|
|
||||||
|
|
||||||
# Find the index of the current theme
|
|
||||||
next_theme_index=0
|
|
||||||
for i in "${!waybar_css[@]}"; do
|
|
||||||
[[ "${waybar_css[$i]}" == "$current_theme" ]] && next_theme_index=$(((i + 1) % ${#waybar_css[@]})) && break
|
|
||||||
done
|
|
||||||
|
|
||||||
# Get the new theme
|
|
||||||
new_waybar_css="${waybar_css[$next_theme_index]}"
|
|
||||||
new_waybar_jsonc="${waybar_jsonc[$next_theme_index]}"
|
|
||||||
new_rofi_theme="${rofi_themes[$next_theme_index]}"
|
|
||||||
|
|
||||||
# Save the new theme
|
|
||||||
echo "$new_waybar_css" >"$CURRENT_THEME_FILE"
|
|
||||||
|
|
||||||
declare -A theme_files=(
|
|
||||||
["$new_waybar_css"]="$WAYBAR_CSS_FILE"
|
|
||||||
["$new_waybar_jsonc"]="$WAYBAR_JSONC_FILE"
|
|
||||||
["$new_rofi_theme"]="$ROFI_THEME_FILE"
|
|
||||||
)
|
|
||||||
|
|
||||||
for src in "${!theme_files[@]}"; do
|
|
||||||
cp "$src" "${theme_files[$src]}"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Restart Waybar to apply changes
|
|
||||||
killall waybar || true
|
|
||||||
nohup waybar --config "$HOME/.config/waybar/config.jsonc" --style "$HOME/.config/waybar/style.css" >/dev/null 2>&1 &
|
|
||||||
@@ -1,123 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Define functions
|
|
||||||
print_error() {
|
|
||||||
cat <<"EOF"
|
|
||||||
Usage: ./volumecontrol.sh -[device] <actions>
|
|
||||||
...valid devices are...
|
|
||||||
i -- input device
|
|
||||||
o -- output device
|
|
||||||
p -- player application
|
|
||||||
...valid actions are...
|
|
||||||
i -- increase volume [+2]
|
|
||||||
d -- decrease volume [-2]
|
|
||||||
m -- mute [x]
|
|
||||||
EOF
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
icon() {
|
|
||||||
vol=$(pactl get-sink-volume @DEFAULT_SINK@ | awk '{print $5}' | sed 's/%//')
|
|
||||||
mute=$(pactl get-sink-mute @DEFAULT_SINK@ | awk '{print $2}')
|
|
||||||
|
|
||||||
if [ "$mute" = "yes" ] || [ "$vol" -eq 0 ]; then
|
|
||||||
icon="volume-level-muted"
|
|
||||||
elif [ "$vol" -lt 33 ]; then
|
|
||||||
icon="volume-level-low"
|
|
||||||
elif [ "$vol" -lt 66 ]; then
|
|
||||||
icon="volume-level-medium"
|
|
||||||
else
|
|
||||||
icon="volume-level-high"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
send_notification() {
|
|
||||||
icon
|
|
||||||
notify-send -a "state" -r 91190 -i "$icon" -h int:value:"$vol" "Volume: ${vol}%" -u low
|
|
||||||
}
|
|
||||||
|
|
||||||
notify_mute() {
|
|
||||||
mute=$(pactl get-sink-mute @DEFAULT_SINK@ | awk '{print $2}')
|
|
||||||
if [ "$mute" = "yes" ]; then
|
|
||||||
notify-send -a "state" -r 91190 -i "volume-level-muted" "Volume: Muted" -u low
|
|
||||||
else
|
|
||||||
icon
|
|
||||||
notify-send -a "state" -r 91190 -i "$icon" "Volume: Unmuted" -u low
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
action_volume() {
|
|
||||||
case "${1}" in
|
|
||||||
i)
|
|
||||||
# Increase volume if below 100
|
|
||||||
current_vol=$(pactl get-sink-volume @DEFAULT_SINK@ | awk '{print $5}' | sed 's/%//')
|
|
||||||
if [ "$current_vol" -lt 100 ]; then
|
|
||||||
new_vol=$((current_vol + 2))
|
|
||||||
[ "$new_vol" -gt 100 ] && new_vol=100
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ "${new_vol}%"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
d)
|
|
||||||
# Decrease volume if above 0
|
|
||||||
current_vol=$(pactl get-sink-volume @DEFAULT_SINK@ | awk '{print $5}' | sed 's/%//')
|
|
||||||
new_vol=$((current_vol - 2))
|
|
||||||
[ "$new_vol" -lt 0 ] && new_vol=0
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ "${new_vol}%"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
select_output() {
|
|
||||||
if [ "$@" ]; then
|
|
||||||
desc="$*"
|
|
||||||
device=$(pactl list sinks | grep -C2 -F "Description: $desc" | grep Name | cut -d: -f2 | xargs)
|
|
||||||
if pactl set-default-sink "$device"; then
|
|
||||||
notify-send -r 91190 "Activated: $desc"
|
|
||||||
else
|
|
||||||
notify-send -r 91190 "Error activating $desc"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
pactl list sinks | grep -ie "Description:" | awk -F ': ' '{print $2}' | sort
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Evaluate device option
|
|
||||||
while getopts iops: DeviceOpt; do
|
|
||||||
case "${DeviceOpt}" in
|
|
||||||
i)
|
|
||||||
nsink=$(pactl list sources short | awk '{print $2}')
|
|
||||||
[ -z "${nsink}" ] && echo "ERROR: Input device not found..." && exit 0
|
|
||||||
srce="--default-source"
|
|
||||||
;;
|
|
||||||
o)
|
|
||||||
nsink=$(pactl list sinks short | awk '{print $2}')
|
|
||||||
[ -z "${nsink}" ] && echo "ERROR: Output device not found..." && exit 0
|
|
||||||
srce=""
|
|
||||||
;;
|
|
||||||
p)
|
|
||||||
nsink=$(playerctl --list-all | grep -w "${OPTARG}")
|
|
||||||
[ -z "${nsink}" ] && echo "ERROR: Player ${OPTARG} not active..." && exit 0
|
|
||||||
# shellcheck disable=SC2034
|
|
||||||
srce="${nsink}"
|
|
||||||
;;
|
|
||||||
s)
|
|
||||||
# Select an output device
|
|
||||||
select_output "$@"
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
*) print_error ;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Set default variables
|
|
||||||
shift $((OPTIND - 1))
|
|
||||||
|
|
||||||
# Execute action
|
|
||||||
case "${1}" in
|
|
||||||
i) action_volume i ;;
|
|
||||||
d) action_volume d ;;
|
|
||||||
m) pactl set-sink-mute @DEFAULT_SINK@ toggle && notify_mute && exit 0 ;;
|
|
||||||
*) print_error ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
send_notification
|
|
||||||
159
waybar/scripts/volume.sh
Executable file
159
waybar/scripts/volume.sh
Executable file
@@ -0,0 +1,159 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Adjust default device volume and send a notification with the current level
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# - pactl (libpulse)
|
||||||
|
# - notify-send (libnotify)
|
||||||
|
#
|
||||||
|
# Author: Jesse Mirabel <sejjymvm@gmail.com>
|
||||||
|
# Created: September 07, 2025
|
||||||
|
# License: MIT
|
||||||
|
|
||||||
|
VALUE=1
|
||||||
|
MIN=0
|
||||||
|
MAX=100
|
||||||
|
ID=2425
|
||||||
|
|
||||||
|
print-usage() {
|
||||||
|
local script=${0##*/}
|
||||||
|
|
||||||
|
cat <<- EOF
|
||||||
|
USAGE: $script [OPTIONS]
|
||||||
|
|
||||||
|
Adjust default device volume and send a notification with the current level
|
||||||
|
|
||||||
|
OPTIONS:
|
||||||
|
input Set device as '@DEFAULT_SOURCE@'
|
||||||
|
output Set device as '@DEFAULT_SINK@'
|
||||||
|
|
||||||
|
mute Toggle device mute
|
||||||
|
|
||||||
|
raise <value> Raise volume by <value>
|
||||||
|
lower <value> Lower volume by <value>
|
||||||
|
Default value: $VALUE
|
||||||
|
|
||||||
|
EXAMPLES:
|
||||||
|
Toggle microphone mute:
|
||||||
|
$ $script input mute
|
||||||
|
|
||||||
|
Raise speaker volume:
|
||||||
|
$ $script output raise
|
||||||
|
|
||||||
|
Lower speaker volume by 5:
|
||||||
|
$ $script output lower 5
|
||||||
|
EOF
|
||||||
|
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
check-muted() {
|
||||||
|
local muted
|
||||||
|
muted=$(pactl "get-$dev_mute" "$dev" | awk '{print $2}')
|
||||||
|
|
||||||
|
local state
|
||||||
|
case $muted in
|
||||||
|
'yes') state='Muted' ;;
|
||||||
|
'no') state='Unmuted' ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "$state"
|
||||||
|
}
|
||||||
|
|
||||||
|
get-volume() {
|
||||||
|
local vol
|
||||||
|
vol=$(pactl "get-$dev_vol" "$dev" | awk '{print $5}' | tr -d '%')
|
||||||
|
|
||||||
|
echo "$vol"
|
||||||
|
}
|
||||||
|
|
||||||
|
get-icon() {
|
||||||
|
local state vol
|
||||||
|
state=$(check-muted)
|
||||||
|
vol=$(get-volume)
|
||||||
|
|
||||||
|
local icon
|
||||||
|
local new_vol=${1:-$vol}
|
||||||
|
|
||||||
|
if [[ $state == 'Muted' ]]; then
|
||||||
|
icon="$dev_icon-muted"
|
||||||
|
else
|
||||||
|
if ((new_vol < ((MAX * 33) / 100))); then
|
||||||
|
icon="$dev_icon-low"
|
||||||
|
elif ((new_vol < ((MAX * 66) / 100))); then
|
||||||
|
icon="$dev_icon-medium"
|
||||||
|
else
|
||||||
|
icon="$dev_icon-high"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "$icon"
|
||||||
|
}
|
||||||
|
|
||||||
|
toggle-mute() {
|
||||||
|
pactl "set-$dev_mute" "$dev" toggle
|
||||||
|
|
||||||
|
local state icon
|
||||||
|
state=$(check-muted)
|
||||||
|
icon=$(get-icon)
|
||||||
|
|
||||||
|
notify-send "$title: $state" -i "$icon" -r $ID
|
||||||
|
}
|
||||||
|
|
||||||
|
set-volume() {
|
||||||
|
local vol
|
||||||
|
vol=$(get-volume)
|
||||||
|
|
||||||
|
local new_vol
|
||||||
|
case $action in
|
||||||
|
'raise')
|
||||||
|
new_vol=$((vol + value))
|
||||||
|
((new_vol > MAX)) && new_vol=$MAX
|
||||||
|
;;
|
||||||
|
'lower')
|
||||||
|
new_vol=$((vol - value))
|
||||||
|
((new_vol < MIN)) && new_vol=$MIN
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
pactl "set-$dev_vol" "$dev" "${new_vol}%"
|
||||||
|
|
||||||
|
local icon
|
||||||
|
icon=$(get-icon "$new_vol")
|
||||||
|
|
||||||
|
notify-send "$title: ${new_vol}%" -h int:value:$new_vol -i "$icon" -r $ID
|
||||||
|
}
|
||||||
|
|
||||||
|
main() {
|
||||||
|
device=$1
|
||||||
|
action=$2
|
||||||
|
value=${3:-$VALUE}
|
||||||
|
|
||||||
|
! ((value > 0)) && print-usage
|
||||||
|
|
||||||
|
case $device in
|
||||||
|
'input')
|
||||||
|
dev='@DEFAULT_SOURCE@'
|
||||||
|
dev_mute='source-mute'
|
||||||
|
dev_vol='source-volume'
|
||||||
|
dev_icon='mic-volume'
|
||||||
|
title='Microphone'
|
||||||
|
;;
|
||||||
|
'output')
|
||||||
|
dev='@DEFAULT_SINK@'
|
||||||
|
dev_mute='sink-mute'
|
||||||
|
dev_vol='sink-volume'
|
||||||
|
dev_icon='audio-volume'
|
||||||
|
title='Volume'
|
||||||
|
;;
|
||||||
|
*) print-usage ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case $action in
|
||||||
|
'mute') toggle-mute ;;
|
||||||
|
'raise' | 'lower') set-volume ;;
|
||||||
|
*) print-usage ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
main "$@"
|
||||||
@@ -1,126 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Author: Jesse Mirabel (@sejjy)
|
|
||||||
# GitHub: https://github.com/sejjy/mechabar
|
|
||||||
|
|
||||||
# Rofi config
|
|
||||||
config="$HOME/.config/rofi/wifi-menu.rasi"
|
|
||||||
|
|
||||||
options=$(
|
|
||||||
echo " Manual Entry"
|
|
||||||
echo " Disable Wi-Fi"
|
|
||||||
)
|
|
||||||
option_disabled=" Enable Wi-Fi"
|
|
||||||
|
|
||||||
# Rofi window override
|
|
||||||
override_ssid="entry { placeholder: \"Enter SSID\"; } listview { lines: 0; padding: 20px 6px; }"
|
|
||||||
override_password="entry { placeholder: \"Enter password\"; } listview { lines: 0; padding: 20px 6px; }"
|
|
||||||
override_disabled="mainbox { children: [ textbox-custom, listview ]; } listview { lines: 1; padding: 6px 6px 8px; }"
|
|
||||||
|
|
||||||
# Prompt for password
|
|
||||||
get_password() {
|
|
||||||
rofi -dmenu -password -config "${config}" -theme-str "${override_password}" -p " " || pkill -x rofi
|
|
||||||
}
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
wifi_list() {
|
|
||||||
nmcli --fields "SECURITY,SSID" device wifi list |
|
|
||||||
tail -n +2 | # Skip the header line from nmcli output
|
|
||||||
sed 's/ */ /g' | # Replace multiple spaces with a single space
|
|
||||||
sed -E "s/WPA*.?\S/ /g" | # Replace 'WPA*' with a Wi-Fi lock icon
|
|
||||||
sed "s/^--/ /g" | # Replace '--' (open networks) with an open Wi-Fi icon
|
|
||||||
sed "s/ //g" | # Remove duplicate Wi-Fi lock icons
|
|
||||||
sed "/--/d" | # Remove lines containing '--' (empty SSIDs)
|
|
||||||
awk '!seen[$0]++' # Filter out duplicate SSIDs
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get Wi-Fi status
|
|
||||||
wifi_status=$(nmcli -fields WIFI g)
|
|
||||||
|
|
||||||
case "$wifi_status" in
|
|
||||||
*"enabled"*)
|
|
||||||
selected_option=$(echo "$options"$'\n'"$(wifi_list)" |
|
|
||||||
rofi -dmenu -i -selected-row 1 -config "${config}" -p " " || pkill -x rofi)
|
|
||||||
;;
|
|
||||||
*"disabled"*)
|
|
||||||
selected_option=$(echo "$option_disabled" |
|
|
||||||
rofi -dmenu -i -config "${config}" -theme-str "${override_disabled}" || pkill -x rofi)
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Extract selected SSID
|
|
||||||
read -r selected_ssid <<<"${selected_option:3}"
|
|
||||||
|
|
||||||
# Actions based on selected option
|
|
||||||
case "$selected_option" in
|
|
||||||
"")
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
*"Enable Wi-Fi")
|
|
||||||
notify-send "Scanning for networks..." -i "package-installed-outdated"
|
|
||||||
nmcli radio wifi on
|
|
||||||
nmcli device wifi rescan
|
|
||||||
sleep 3
|
|
||||||
;;
|
|
||||||
*"Disable Wi-Fi")
|
|
||||||
notify-send "Wi-Fi Disabled" -i "package-broken"
|
|
||||||
nmcli radio wifi off
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
*"Manual Entry")
|
|
||||||
# Prompt for SSID
|
|
||||||
manual_ssid=$(rofi -dmenu -config "${config}" -theme-str "${override_ssid}" -p " " || pkill -x rofi)
|
|
||||||
|
|
||||||
# Exit if no option is selected
|
|
||||||
if [ -z "$manual_ssid" ]; then
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Prompt for Wi-Fi password
|
|
||||||
wifi_password=$(get_password)
|
|
||||||
|
|
||||||
if [ -z "$wifi_password" ]; then
|
|
||||||
# Without password
|
|
||||||
if nmcli device wifi connect "$manual_ssid" | grep -q "successfully"; then
|
|
||||||
notify-send "Connected to \"$manual_ssid\"." -i "package-installed-outdated"
|
|
||||||
exit
|
|
||||||
else
|
|
||||||
notify-send "Failed to connect to \"$manual_ssid\"." -i "package-broken"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# With password
|
|
||||||
if nmcli device wifi connect "$manual_ssid" password "$wifi_password" | grep -q "successfully"; then
|
|
||||||
notify-send "Connected to \"$manual_ssid\"." -i "package-installed-outdated"
|
|
||||||
exit
|
|
||||||
else
|
|
||||||
notify-send "Failed to connect to \"$manual_ssid\"." -i "package-broken"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
# Get saved connections
|
|
||||||
saved_connections=$(nmcli -g NAME connection)
|
|
||||||
|
|
||||||
if echo "$saved_connections" | grep -qw "$selected_ssid"; then
|
|
||||||
if nmcli connection up id "$selected_ssid" | grep -q "successfully"; then
|
|
||||||
notify-send "Connected to \"$selected_ssid\"." -i "package-installed-outdated"
|
|
||||||
exit
|
|
||||||
else
|
|
||||||
notify-send "Failed to connect to \"$selected_ssid\"." -i "package-broken"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# Handle secure network connection
|
|
||||||
if [[ "$selected_option" =~ ^"" ]]; then
|
|
||||||
wifi_password=$(get_password)
|
|
||||||
fi
|
|
||||||
|
|
||||||
if nmcli device wifi connect "$selected_ssid" password "$wifi_password" | grep -q "successfully"; then
|
|
||||||
notify-send "Connected to \"$selected_ssid\"." -i "package-installed-outdated"
|
|
||||||
exit
|
|
||||||
else
|
|
||||||
notify-send "Failed to connect to \"$selected_ssid\"." -i "package-broken"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
if ! command -v nmcli &>/dev/null; then
|
|
||||||
echo "{\"text\": \"\", \"tooltip\": \"nmcli utility is missing\"}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check if Wi-Fi is enabled
|
|
||||||
wifi_status=$(nmcli radio wifi)
|
|
||||||
|
|
||||||
if [ "$wifi_status" = "disabled" ]; then
|
|
||||||
echo "{\"text\": \"\", \"tooltip\": \"Wi-Fi Disabled\"}"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
wifi_info=$(nmcli -t -f active,ssid,signal,security dev wifi | grep "^yes")
|
|
||||||
|
|
||||||
# If no ESSID is found, set a default value
|
|
||||||
if [ -z "$wifi_info" ]; then
|
|
||||||
essid="No Connection"
|
|
||||||
signal=0
|
|
||||||
tooltip="No Connection"
|
|
||||||
else
|
|
||||||
# Some defaults
|
|
||||||
ip_address="127.0.0.1"
|
|
||||||
security=$(echo "$wifi_info" | awk -F: '{print $4}')
|
|
||||||
signal=$(echo "$wifi_info" | awk -F: '{print $3}')
|
|
||||||
|
|
||||||
# Get active WiFi device, ignoring WireGuard interfaces (wg0, wg1, wg2)
|
|
||||||
active_device=$(nmcli -t -f DEVICE,TYPE,STATE device status |
|
|
||||||
grep -E 'wifi:connected$' |
|
|
||||||
grep -v -E '^(wg0|wg1|wg2):' |
|
|
||||||
awk -F: '{print $1}')
|
|
||||||
|
|
||||||
if [ -n "$active_device" ]; then
|
|
||||||
output=$(nmcli -e no -g ip4.address,ip4.gateway,general.hwaddr device show "$active_device")
|
|
||||||
|
|
||||||
ip_address=$(echo "$output" | sed -n '1p')
|
|
||||||
|
|
||||||
line=$(nmcli -e no -t -f active,bssid,chan,freq device wifi | grep "^yes")
|
|
||||||
|
|
||||||
chan=$(echo "$line" | awk -F':' '{print $8}')
|
|
||||||
freq=$(echo "$line" | awk -F':' '{print $9}')
|
|
||||||
chan="$chan ($freq)"
|
|
||||||
|
|
||||||
# Get the current Wi-Fi ESSID
|
|
||||||
essid=$(echo "$wifi_info" | awk -F: '{print $2}')
|
|
||||||
|
|
||||||
tooltip=":: ${essid}"
|
|
||||||
tooltip+="\nIP Address: ${ip_address}"
|
|
||||||
tooltip+="\nSecurity: ${security}"
|
|
||||||
tooltip+="\nChannel: ${chan}"
|
|
||||||
tooltip+="\nStrength: ${signal} / 100"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Determine Wi-Fi icon based on signal strength
|
|
||||||
if [ "$signal" -ge 80 ]; then
|
|
||||||
icon="" # Strong signal
|
|
||||||
elif [ "$signal" -ge 60 ]; then
|
|
||||||
icon="" # Good signal
|
|
||||||
elif [ "$signal" -ge 40 ]; then
|
|
||||||
icon="" # Weak signal
|
|
||||||
elif [ "$signal" -ge 20 ]; then
|
|
||||||
icon="" # Very weak signal
|
|
||||||
else
|
|
||||||
icon="" # No signal
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Module and tooltip
|
|
||||||
echo "{\"text\": \"${icon}\", \"tooltip\": \"${tooltip}\"}"
|
|
||||||
486
waybar/style.css
486
waybar/style.css
@@ -1,476 +1,12 @@
|
|||||||
|
/* ignore GTK theme */
|
||||||
|
* {
|
||||||
|
all: initial;
|
||||||
|
}
|
||||||
|
|
||||||
@import "theme.css";
|
@import "theme.css";
|
||||||
|
@import "styles/fonts.css";
|
||||||
* {
|
@import "styles/global.css";
|
||||||
min-height: 0;
|
@import "styles/modules-center.css";
|
||||||
border: none;
|
@import "styles/modules-left.css";
|
||||||
margin: 0;
|
@import "styles/modules-right.css";
|
||||||
padding: 0;
|
@import "styles/states.css";
|
||||||
}
|
|
||||||
|
|
||||||
/* ----------------------------------------------------- MAIN BACKGROUND --- */
|
|
||||||
|
|
||||||
window#waybar>box {
|
|
||||||
background: @main-bg;
|
|
||||||
margin: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* --------------------------------------------------------- DROP SHADOW --- */
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
background: @shadow;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ------------------------------------------------------------ TOOLTIPS --- */
|
|
||||||
|
|
||||||
tooltip {
|
|
||||||
background: @main-bg;
|
|
||||||
border: 1.5px solid @main-br;
|
|
||||||
border-radius: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
tooltip label {
|
|
||||||
color: @main-fg;
|
|
||||||
margin: -1.5px 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------- WORKSPACE BUTTONS and LABELS --- */
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
color: @module-fg;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: none;
|
|
||||||
margin: 2px 0;
|
|
||||||
padding: 0 2px;
|
|
||||||
transition: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
background: @hover-bg;
|
|
||||||
text-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active {
|
|
||||||
color: @active-fg;
|
|
||||||
background: @active-bg;
|
|
||||||
text-shadow: 0 0 2px rgba(0, 0, 0, 0.6);
|
|
||||||
box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.4);
|
|
||||||
margin: 2px;
|
|
||||||
padding: 0 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ------------------------------------------------------------- GENERAL --- */
|
|
||||||
|
|
||||||
#custom-ws,
|
|
||||||
#workspaces,
|
|
||||||
#window,
|
|
||||||
#custom-temperature,
|
|
||||||
#memory,
|
|
||||||
#cpu,
|
|
||||||
#idle_inhibitor,
|
|
||||||
#clock,
|
|
||||||
#custom-wifi,
|
|
||||||
#custom-wireguard,
|
|
||||||
#bluetooth,
|
|
||||||
#custom-update,
|
|
||||||
#mpris,
|
|
||||||
#pulseaudio,
|
|
||||||
#backlight,
|
|
||||||
#battery,
|
|
||||||
#custom-power {
|
|
||||||
opacity: 1;
|
|
||||||
color: @module-fg;
|
|
||||||
padding: 0 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-left1,
|
|
||||||
#custom-left2,
|
|
||||||
#custom-left3,
|
|
||||||
#custom-left4,
|
|
||||||
#custom-left5,
|
|
||||||
#custom-left6,
|
|
||||||
#custom-left7,
|
|
||||||
#custom-left8 {
|
|
||||||
margin-bottom: 0;
|
|
||||||
text-shadow: -2px 0 2px rgba(0, 0, 0, 0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-right1,
|
|
||||||
#custom-right2,
|
|
||||||
#custom-right3,
|
|
||||||
#custom-right4,
|
|
||||||
#custom-right5 {
|
|
||||||
margin-bottom: 0;
|
|
||||||
padding-right: 3px;
|
|
||||||
text-shadow: 2px 0 2px rgba(0, 0, 0, 0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ------------------------------------------------------------- MODULES --- */
|
|
||||||
|
|
||||||
/* --------------------------------------------------------- window icon --- */
|
|
||||||
|
|
||||||
#custom-ws {
|
|
||||||
background: @main-bg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-ws:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------- workspaces --- */
|
|
||||||
|
|
||||||
#custom-left1 {
|
|
||||||
color: @workspaces;
|
|
||||||
background: @main-bg;
|
|
||||||
margin-bottom: 0;
|
|
||||||
padding-left: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces {
|
|
||||||
background: @workspaces;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-right1 {
|
|
||||||
color: @workspaces;
|
|
||||||
background: @main-bg;
|
|
||||||
text-shadow: 3px 0 2px rgba(0, 0, 0, 0.4);
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* --------------------------------------------------------- temperature --- */
|
|
||||||
|
|
||||||
#custom-paddc {
|
|
||||||
padding-right: 22px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-left2 {
|
|
||||||
color: @temperature;
|
|
||||||
background: @main-bg;
|
|
||||||
padding-left: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-temperature {
|
|
||||||
background: @temperature;
|
|
||||||
padding: 0 0 0 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------------------------- memory --- */
|
|
||||||
|
|
||||||
#custom-left3 {
|
|
||||||
color: @memory;
|
|
||||||
background: @temperature;
|
|
||||||
padding-left: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#memory {
|
|
||||||
background: @memory;
|
|
||||||
padding: 0 0 0 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#memory.warning {
|
|
||||||
color: @warning;
|
|
||||||
}
|
|
||||||
|
|
||||||
#memory.critical {
|
|
||||||
color: @critical;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ----------------------------------------------------------------- cpu --- */
|
|
||||||
|
|
||||||
#custom-left4 {
|
|
||||||
color: @cpu;
|
|
||||||
background: @memory;
|
|
||||||
padding-left: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#cpu {
|
|
||||||
background: @cpu;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-leftin1 {
|
|
||||||
color: @cpu;
|
|
||||||
margin-bottom: -1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* --------------------------------------------------------- distro icon --- */
|
|
||||||
|
|
||||||
#custom-left5 {
|
|
||||||
color: @distro-bg;
|
|
||||||
background: @main-bg;
|
|
||||||
text-shadow: none;
|
|
||||||
margin-bottom: -2px;
|
|
||||||
padding-left: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-distro {
|
|
||||||
color: @distro-fg;
|
|
||||||
background: @distro-bg;
|
|
||||||
margin: 0 -1px -2px 0;
|
|
||||||
padding: 0 0 0 3px;
|
|
||||||
text-shadow: 0 0 1.5px rgba(0, 0, 0, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-right2 {
|
|
||||||
color: @distro-bg;
|
|
||||||
background: @main-bg;
|
|
||||||
text-shadow: none;
|
|
||||||
margin-bottom: -2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------------- time --- */
|
|
||||||
|
|
||||||
#custom-rightin1 {
|
|
||||||
color: @time;
|
|
||||||
margin-bottom: -1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#idle_inhibitor {
|
|
||||||
background: @time;
|
|
||||||
padding: 0 0 0 7px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#idle_inhibitor:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock.time {
|
|
||||||
background: @time;
|
|
||||||
margin-left: -2px;
|
|
||||||
padding: 0 3px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-right3 {
|
|
||||||
color: @time;
|
|
||||||
background: @date;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------------- date --- */
|
|
||||||
|
|
||||||
#clock.date {
|
|
||||||
background: @date;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock.date:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-right4 {
|
|
||||||
color: @date;
|
|
||||||
background: @tray;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------------- tray --- */
|
|
||||||
|
|
||||||
#custom-wifi {
|
|
||||||
background: @tray;
|
|
||||||
padding: 0 8px 0 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-wifi:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-wireguard {
|
|
||||||
background: @tray;
|
|
||||||
padding: 0 8px 0 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-wireguard:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#bluetooth {
|
|
||||||
background: @tray;
|
|
||||||
padding-right: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#bluetooth:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-update {
|
|
||||||
padding-right: 8px;
|
|
||||||
background: @tray;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-update:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-right5 {
|
|
||||||
color: @tray;
|
|
||||||
background: @main-bg;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------- media info --- */
|
|
||||||
|
|
||||||
#mpris {
|
|
||||||
background: @main-bg;
|
|
||||||
padding: 0 8px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpris:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
output device
|
|
||||||
*/
|
|
||||||
|
|
||||||
#custom-left6 {
|
|
||||||
color: @pulseaudio;
|
|
||||||
background: @main-bg;
|
|
||||||
padding-left: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#pulseaudio {
|
|
||||||
background: @pulseaudio;
|
|
||||||
}
|
|
||||||
|
|
||||||
#pulseaudio:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------- brightness --- */
|
|
||||||
|
|
||||||
#custom-left7 {
|
|
||||||
color: @backlight;
|
|
||||||
background: @pulseaudio;
|
|
||||||
padding-left: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#backlight {
|
|
||||||
background: @backlight;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ------------------------------------------------------------- battery --- */
|
|
||||||
|
|
||||||
#custom-left8 {
|
|
||||||
color: @battery;
|
|
||||||
background: @backlight;
|
|
||||||
padding-left: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery {
|
|
||||||
color: @module-fg;
|
|
||||||
background: @battery;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.warning {
|
|
||||||
color: @warning;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical {
|
|
||||||
color: @critical;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.charging {
|
|
||||||
color: @charging;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------------------- power button --- */
|
|
||||||
|
|
||||||
#custom-leftin2 {
|
|
||||||
color: @battery;
|
|
||||||
background: @main-bg;
|
|
||||||
margin-bottom: -1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power {
|
|
||||||
color: @main-bg;
|
|
||||||
background: @power;
|
|
||||||
text-shadow: 0 0 2px rgba(0, 0, 0, 0.6);
|
|
||||||
box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.6);
|
|
||||||
border-radius: 10px;
|
|
||||||
margin: 2px 4px 2px 0;
|
|
||||||
padding: 0 6px 0 9px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power:hover {
|
|
||||||
color: @hover-fg;
|
|
||||||
background: @hover-bg;
|
|
||||||
text-shadow: none;
|
|
||||||
box-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------------------- FONT SIZES --- */
|
|
||||||
|
|
||||||
/*
|
|
||||||
NOTE: Be careful when changing font sizes, as they
|
|
||||||
can affect alignment.
|
|
||||||
|
|
||||||
Try adjusting whole numbers first, then refine with
|
|
||||||
decimals.
|
|
||||||
|
|
||||||
If you increase or decrease a value, make the same
|
|
||||||
change to all properties in this section to keep
|
|
||||||
the layout consistent.
|
|
||||||
*/
|
|
||||||
|
|
||||||
* {
|
|
||||||
font-family: "JetBrainsMono Nerd Font";
|
|
||||||
font-size: 10px;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
tooltip label,
|
|
||||||
#window label,
|
|
||||||
#mpris {
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ----------------------------------------------- left and right arrows --- */
|
|
||||||
|
|
||||||
#custom-left1,
|
|
||||||
#custom-left2,
|
|
||||||
#custom-left3,
|
|
||||||
#custom-left4,
|
|
||||||
#custom-left5,
|
|
||||||
#custom-left6,
|
|
||||||
#custom-left7,
|
|
||||||
#custom-left8,
|
|
||||||
#custom-right1,
|
|
||||||
#custom-right2,
|
|
||||||
#custom-right3,
|
|
||||||
#custom-right4,
|
|
||||||
#custom-right5 {
|
|
||||||
font-size: 14.68px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ---------------------------------------------- left and right inverse --- */
|
|
||||||
|
|
||||||
#custom-leftin1,
|
|
||||||
#custom-leftin2,
|
|
||||||
#custom-rightin1 {
|
|
||||||
font-size: 15.5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -------------------------------------------------------------- distro --- */
|
|
||||||
|
|
||||||
#custom-distro {
|
|
||||||
font-size: 14.6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-left5,
|
|
||||||
#custom-right2 {
|
|
||||||
font-size: 15.68px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
Adjust these properties as well to keep the design
|
|
||||||
consistent.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
border-radius: 8px;
|
|
||||||
padding: 0 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active {
|
|
||||||
padding: 0 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power {
|
|
||||||
border-radius: 10px;
|
|
||||||
padding: 0 6px 0 9px;
|
|
||||||
}
|
|
||||||
|
|||||||
28
waybar/styles/fonts.css
Normal file
28
waybar/styles/fonts.css
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
* {
|
||||||
|
font-family: "0xProto Nerd Font";
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-user,
|
||||||
|
#window label,
|
||||||
|
#mpris,
|
||||||
|
tooltip label {
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active label,
|
||||||
|
#custom-distro {
|
||||||
|
font-size: 22px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power_menu {
|
||||||
|
font-size: 19px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-left_div,
|
||||||
|
#custom-left_inv,
|
||||||
|
#custom-right_div,
|
||||||
|
#custom-right_inv {
|
||||||
|
font-size: 22px;
|
||||||
|
}
|
||||||
38
waybar/styles/global.css
Normal file
38
waybar/styles/global.css
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
* {
|
||||||
|
color: @main-fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
#waybar {
|
||||||
|
background-color: @outline;
|
||||||
|
}
|
||||||
|
#waybar > box {
|
||||||
|
margin: 4px;
|
||||||
|
background-color: @main-bg;
|
||||||
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
border-radius: 16px;
|
||||||
|
min-width: 16px;
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
button:hover {
|
||||||
|
background-color: @hover-bg;
|
||||||
|
color: @hover-fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
tooltip {
|
||||||
|
border: 2px solid @main-br;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: @main-bg;
|
||||||
|
}
|
||||||
|
tooltip > box {
|
||||||
|
padding: 0 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.module,
|
||||||
|
#custom-left_div,
|
||||||
|
#custom-left_inv,
|
||||||
|
#custom-right_div,
|
||||||
|
#custom-right_inv {
|
||||||
|
margin-bottom: -1px;
|
||||||
|
}
|
||||||
119
waybar/styles/modules-center.css
Normal file
119
waybar/styles/modules-center.css
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
/*------------------
|
||||||
|
window count
|
||||||
|
------------------*/
|
||||||
|
|
||||||
|
#windowcount {
|
||||||
|
margin-right: 12px;
|
||||||
|
}
|
||||||
|
#windowcount label {
|
||||||
|
color: @hover-fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*-----------------
|
||||||
|
temperature
|
||||||
|
-----------------*/
|
||||||
|
|
||||||
|
#custom-left_div.2 {
|
||||||
|
color: @temperature;
|
||||||
|
}
|
||||||
|
#temperature {
|
||||||
|
background-color: @temperature;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*------------
|
||||||
|
memory
|
||||||
|
------------*/
|
||||||
|
|
||||||
|
#custom-left_div.3 {
|
||||||
|
background-color: @temperature;
|
||||||
|
color: @memory;
|
||||||
|
}
|
||||||
|
#memory {
|
||||||
|
background-color: @memory;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------
|
||||||
|
cpu
|
||||||
|
---------*/
|
||||||
|
|
||||||
|
#custom-left_div.4 {
|
||||||
|
background-color: @memory;
|
||||||
|
color: @cpu;
|
||||||
|
}
|
||||||
|
#cpu {
|
||||||
|
background-color: @cpu;
|
||||||
|
}
|
||||||
|
#custom-left_inv.1 {
|
||||||
|
color: @cpu;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*-----------------
|
||||||
|
distro icon
|
||||||
|
-----------------*/
|
||||||
|
|
||||||
|
#custom-left_div.5,
|
||||||
|
#custom-right_div.2 {
|
||||||
|
color: @accent;
|
||||||
|
}
|
||||||
|
#custom-distro {
|
||||||
|
padding: 0 10px 0 5px;
|
||||||
|
background-color: @accent;
|
||||||
|
color: @main-bg;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*--------------------
|
||||||
|
idle inhibitor
|
||||||
|
--------------------*/
|
||||||
|
|
||||||
|
#custom-right_inv.1 {
|
||||||
|
color: @time;
|
||||||
|
}
|
||||||
|
#idle_inhibitor {
|
||||||
|
background-color: @time;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*----------
|
||||||
|
time
|
||||||
|
----------*/
|
||||||
|
|
||||||
|
#clock.time {
|
||||||
|
padding-right: 6px;
|
||||||
|
background-color: @time;
|
||||||
|
}
|
||||||
|
#custom-right_div.3 {
|
||||||
|
background-color: @date;
|
||||||
|
color: @time;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*----------
|
||||||
|
date
|
||||||
|
----------*/
|
||||||
|
|
||||||
|
#clock.date {
|
||||||
|
padding-left: 6px;
|
||||||
|
background-color: @date;
|
||||||
|
}
|
||||||
|
#custom-right_div.4 {
|
||||||
|
background-color: @tray;
|
||||||
|
color: @date;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*-----------------
|
||||||
|
system tray
|
||||||
|
-----------------*/
|
||||||
|
|
||||||
|
#network {
|
||||||
|
background-color: @tray;
|
||||||
|
padding: 0 6px 0 4px;
|
||||||
|
}
|
||||||
|
#bluetooth {
|
||||||
|
background-color: @tray;
|
||||||
|
padding: 0 5px;
|
||||||
|
}
|
||||||
|
#custom-system_update {
|
||||||
|
background-color: @tray;
|
||||||
|
padding: 0 8px 0 2px;
|
||||||
|
}
|
||||||
|
#custom-right_div.5 {
|
||||||
|
color: @tray;
|
||||||
|
}
|
||||||
31
waybar/styles/modules-left.css
Normal file
31
waybar/styles/modules-left.css
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
/*--------------
|
||||||
|
username
|
||||||
|
--------------*/
|
||||||
|
|
||||||
|
#custom-user {
|
||||||
|
padding-right: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*----------------
|
||||||
|
workspaces
|
||||||
|
----------------*/
|
||||||
|
|
||||||
|
#custom-left_div.1,
|
||||||
|
#custom-right_div.1 {
|
||||||
|
color: @workspaces;
|
||||||
|
}
|
||||||
|
#workspaces {
|
||||||
|
padding: 0 1px;
|
||||||
|
background-color: @workspaces;
|
||||||
|
}
|
||||||
|
#workspaces button.active label {
|
||||||
|
color: @accent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*------------------
|
||||||
|
window title
|
||||||
|
------------------*/
|
||||||
|
|
||||||
|
#window {
|
||||||
|
margin-left: 12px;
|
||||||
|
}
|
||||||
59
waybar/styles/modules-right.css
Normal file
59
waybar/styles/modules-right.css
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
/*----------------
|
||||||
|
media info
|
||||||
|
----------------*/
|
||||||
|
|
||||||
|
#mpris {
|
||||||
|
padding: 0 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*------------
|
||||||
|
volume
|
||||||
|
------------*/
|
||||||
|
|
||||||
|
#custom-left_div.6 {
|
||||||
|
color: @volume;
|
||||||
|
}
|
||||||
|
#pulseaudio,
|
||||||
|
#wireplumber {
|
||||||
|
background-color: @volume;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*----------------
|
||||||
|
brightness
|
||||||
|
----------------*/
|
||||||
|
|
||||||
|
#custom-left_div.7 {
|
||||||
|
background-color: @volume;
|
||||||
|
color: @backlight;
|
||||||
|
}
|
||||||
|
#backlight {
|
||||||
|
background-color: @backlight;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*-------------
|
||||||
|
battery
|
||||||
|
-------------*/
|
||||||
|
|
||||||
|
#custom-left_div.8 {
|
||||||
|
background-color: @backlight;
|
||||||
|
color: @battery;
|
||||||
|
}
|
||||||
|
#battery {
|
||||||
|
background-color: @battery;
|
||||||
|
}
|
||||||
|
#custom-left_inv.2 {
|
||||||
|
color: @battery;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*----------------
|
||||||
|
power menu
|
||||||
|
----------------*/
|
||||||
|
|
||||||
|
#custom-power_menu {
|
||||||
|
border-radius: 16px;
|
||||||
|
padding: 0 19px 0 16px;
|
||||||
|
color: @accent;
|
||||||
|
}
|
||||||
|
#custom-power_menu:hover {
|
||||||
|
background-color: @hover-bg;
|
||||||
|
}
|
||||||
37
waybar/styles/states.css
Normal file
37
waybar/styles/states.css
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
#custom-trigger:hover,
|
||||||
|
#idle_inhibitor:hover,
|
||||||
|
#clock.date:hover,
|
||||||
|
#network:hover,
|
||||||
|
#bluetooth:hover,
|
||||||
|
#custom-system_update:hover,
|
||||||
|
#mpris:hover,
|
||||||
|
#pulseaudio:hover,
|
||||||
|
#wireplumber:hover {
|
||||||
|
color: @hover-fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* inactive state */
|
||||||
|
#idle_inhibitor.deactivated,
|
||||||
|
#mpris.paused,
|
||||||
|
#pulseaudio.output.muted,
|
||||||
|
#pulseaudio.input.source-muted,
|
||||||
|
#wireplumber.muted {
|
||||||
|
color: @hover-fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory.warning,
|
||||||
|
#cpu.warning,
|
||||||
|
#battery.warning {
|
||||||
|
color: @warning;
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature.critical,
|
||||||
|
#memory.critical,
|
||||||
|
#cpu.critical,
|
||||||
|
#battery.critical {
|
||||||
|
color: @critical;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging {
|
||||||
|
color: @charging;
|
||||||
|
}
|
||||||
118
waybar/theme.css
118
waybar/theme.css
@@ -1,75 +1,63 @@
|
|||||||
/* Gruvbox Dark */
|
/* catppuccin-mocha */
|
||||||
|
|
||||||
@define-color bg0_h #1d2021;
|
@define-color rosewater #f5e0dc;
|
||||||
@define-color bg0 #282828;
|
@define-color flamingo #f2cdcd;
|
||||||
@define-color bg1 #3c3836;
|
@define-color pink #f5c2e7;
|
||||||
@define-color bg2 #504945;
|
@define-color mauve #cba6f7;
|
||||||
@define-color bg3 #665c54;
|
@define-color red #f38ba8;
|
||||||
@define-color bg4 #7c6f64;
|
@define-color maroon #eba0ac;
|
||||||
@define-color gray #928374;
|
@define-color peach #fab387;
|
||||||
@define-color fg4 #a89984;
|
@define-color yellow #f9e2af;
|
||||||
@define-color fg3 #bdae93;
|
@define-color green #a6e3a1;
|
||||||
@define-color fg2 #d5c4a1;
|
@define-color teal #94e2d5;
|
||||||
@define-color fg1 #ebdbb2;
|
@define-color sky #89dceb;
|
||||||
@define-color fg0 #fbf1c7;
|
@define-color sapphire #74c7ec;
|
||||||
@define-color red #cc241d;
|
@define-color blue #89b4fa;
|
||||||
@define-color bright_red #fb4934;
|
@define-color lavender #b4befe;
|
||||||
@define-color green #98971a;
|
@define-color text #cdd6f4;
|
||||||
@define-color bright_green #b8bb26;
|
@define-color subtext1 #bac2de;
|
||||||
@define-color yellow #d79921;
|
@define-color subtext0 #a6adc8;
|
||||||
@define-color bright_yellow #fabd2f;
|
@define-color overlay2 #9399b2;
|
||||||
@define-color blue #458588;
|
@define-color overlay1 #7f849c;
|
||||||
@define-color bright_blue #83a598;
|
@define-color overlay0 #6c7086;
|
||||||
@define-color purple #b16286;
|
@define-color surface2 #585b70;
|
||||||
@define-color bright_purple #d3869b;
|
@define-color surface1 #45475a;
|
||||||
@define-color aqua #689d6a;
|
@define-color surface0 #313244;
|
||||||
@define-color bright_aqua #8ec07c;
|
@define-color base #1e1e2e;
|
||||||
@define-color orange #d65d0e;
|
@define-color mantle #181825;
|
||||||
@define-color bright_orange #fe8019;
|
@define-color crust #11111b;
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
bg - background
|
br - border
|
||||||
fg - foreground
|
bg - background
|
||||||
br - border
|
fg - foreground
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Main Colors */
|
/* main colors */
|
||||||
|
|
||||||
@define-color shadow shade(@bg0_h, 0.5);
|
@define-color accent @lavender;
|
||||||
@define-color main-fg @fg0;
|
@define-color main-br @subtext0;
|
||||||
@define-color main-bg @bg0_h;
|
@define-color main-bg @crust;
|
||||||
@define-color main-br @fg0;
|
@define-color main-fg @text;
|
||||||
|
@define-color hover-bg @base;
|
||||||
|
@define-color hover-fg alpha(@main-fg, 0.75);
|
||||||
|
@define-color outline shade(@main-bg, 0.5);
|
||||||
|
|
||||||
@define-color active-bg @yellow;
|
/* module colors */
|
||||||
@define-color active-fg @bg0_h;
|
|
||||||
|
|
||||||
@define-color hover-bg @bg2;
|
@define-color workspaces @mantle;
|
||||||
@define-color hover-fg alpha(@fg0, 0.75);
|
@define-color temperature @mantle;
|
||||||
|
@define-color memory @base;
|
||||||
|
@define-color cpu @surface0;
|
||||||
|
@define-color time @surface0;
|
||||||
|
@define-color date @base;
|
||||||
|
@define-color tray @mantle;
|
||||||
|
@define-color volume @mantle;
|
||||||
|
@define-color backlight @base;
|
||||||
|
@define-color battery @surface0;
|
||||||
|
|
||||||
/* Module Colors */
|
/* state colors */
|
||||||
|
|
||||||
@define-color module-fg @fg0;
|
@define-color warning @yellow;
|
||||||
@define-color workspaces @bg0;
|
@define-color critical @red;
|
||||||
|
@define-color charging @green;
|
||||||
@define-color temperature @bg0;
|
|
||||||
@define-color memory @bg1;
|
|
||||||
@define-color cpu @bg2;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @yellow;
|
|
||||||
@define-color time @bg2;
|
|
||||||
@define-color date @bg1;
|
|
||||||
@define-color tray @bg0;
|
|
||||||
|
|
||||||
@define-color pulseaudio @bg0;
|
|
||||||
@define-color backlight @bg1;
|
|
||||||
@define-color battery @bg2;
|
|
||||||
@define-color power @yellow;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @bright_orange;
|
|
||||||
@define-color critical @bright_red;
|
|
||||||
@define-color charging @fg0;
|
|
||||||
|
|||||||
63
waybar/themes/catppuccin-frappe.css
Normal file
63
waybar/themes/catppuccin-frappe.css
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
/* catppuccin-frappe */
|
||||||
|
|
||||||
|
@define-color rosewater #f2d5cf;
|
||||||
|
@define-color flamingo #eebebe;
|
||||||
|
@define-color pink #f4b8e4;
|
||||||
|
@define-color mauve #ca9ee6;
|
||||||
|
@define-color red #e78284;
|
||||||
|
@define-color maroon #ea999c;
|
||||||
|
@define-color peach #ef9f76;
|
||||||
|
@define-color yellow #e5c890;
|
||||||
|
@define-color green #a6d189;
|
||||||
|
@define-color teal #81c8be;
|
||||||
|
@define-color sky #99d1db;
|
||||||
|
@define-color sapphire #85c1dc;
|
||||||
|
@define-color blue #8caaee;
|
||||||
|
@define-color lavender #babbf1;
|
||||||
|
@define-color text #c6d0f5;
|
||||||
|
@define-color subtext1 #b5bfe2;
|
||||||
|
@define-color subtext0 #a5adce;
|
||||||
|
@define-color overlay2 #949cbb;
|
||||||
|
@define-color overlay1 #838ba7;
|
||||||
|
@define-color overlay0 #737994;
|
||||||
|
@define-color surface2 #626880;
|
||||||
|
@define-color surface1 #51576d;
|
||||||
|
@define-color surface0 #414559;
|
||||||
|
@define-color base #303446;
|
||||||
|
@define-color mantle #292c3c;
|
||||||
|
@define-color crust #232634;
|
||||||
|
|
||||||
|
/*
|
||||||
|
br - border
|
||||||
|
bg - background
|
||||||
|
fg - foreground
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* main colors */
|
||||||
|
|
||||||
|
@define-color accent @lavender;
|
||||||
|
@define-color main-br @subtext0;
|
||||||
|
@define-color main-bg @crust;
|
||||||
|
@define-color main-fg @text;
|
||||||
|
@define-color hover-bg @base;
|
||||||
|
@define-color hover-fg alpha(@main-fg, 0.75);
|
||||||
|
@define-color outline shade(@main-bg, 0.5);
|
||||||
|
|
||||||
|
/* module colors */
|
||||||
|
|
||||||
|
@define-color workspaces @mantle;
|
||||||
|
@define-color temperature @mantle;
|
||||||
|
@define-color memory @base;
|
||||||
|
@define-color cpu @surface0;
|
||||||
|
@define-color time @surface0;
|
||||||
|
@define-color date @base;
|
||||||
|
@define-color tray @mantle;
|
||||||
|
@define-color volume @mantle;
|
||||||
|
@define-color backlight @base;
|
||||||
|
@define-color battery @surface0;
|
||||||
|
|
||||||
|
/* state colors */
|
||||||
|
|
||||||
|
@define-color warning @yellow;
|
||||||
|
@define-color critical @red;
|
||||||
|
@define-color charging @green;
|
||||||
63
waybar/themes/catppuccin-latte.css
Normal file
63
waybar/themes/catppuccin-latte.css
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
/* catppuccin-latte */
|
||||||
|
|
||||||
|
@define-color rosewater #dc8a78;
|
||||||
|
@define-color flamingo #dd7878;
|
||||||
|
@define-color pink #ea76cb;
|
||||||
|
@define-color mauve #8839ef;
|
||||||
|
@define-color red #d20f39;
|
||||||
|
@define-color maroon #e64553;
|
||||||
|
@define-color peach #fe640b;
|
||||||
|
@define-color yellow #df8e1d;
|
||||||
|
@define-color green #40a02b;
|
||||||
|
@define-color teal #179299;
|
||||||
|
@define-color sky #04a5e5;
|
||||||
|
@define-color sapphire #209fb5;
|
||||||
|
@define-color blue #1e66f5;
|
||||||
|
@define-color lavender #7287fd;
|
||||||
|
@define-color text #4c4f69;
|
||||||
|
@define-color subtext1 #5c5f77;
|
||||||
|
@define-color subtext0 #6c6f85;
|
||||||
|
@define-color overlay2 #7c7f93;
|
||||||
|
@define-color overlay1 #8c8fa1;
|
||||||
|
@define-color overlay0 #9ca0b0;
|
||||||
|
@define-color surface2 #acb0be;
|
||||||
|
@define-color surface1 #bcc0cc;
|
||||||
|
@define-color surface0 #ccd0da;
|
||||||
|
@define-color base #eff1f5;
|
||||||
|
@define-color mantle #e6e9ef;
|
||||||
|
@define-color crust #dce0e8;
|
||||||
|
|
||||||
|
/*
|
||||||
|
br - border
|
||||||
|
bg - background
|
||||||
|
fg - foreground
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* main colors */
|
||||||
|
|
||||||
|
@define-color accent @lavender;
|
||||||
|
@define-color main-br @subtext0;
|
||||||
|
@define-color main-bg @crust;
|
||||||
|
@define-color main-fg @text;
|
||||||
|
@define-color hover-bg @base;
|
||||||
|
@define-color hover-fg alpha(@main-fg, 0.75);
|
||||||
|
@define-color outline shade(@main-bg, 0.5);
|
||||||
|
|
||||||
|
/* module colors */
|
||||||
|
|
||||||
|
@define-color workspaces @mantle;
|
||||||
|
@define-color temperature @mantle;
|
||||||
|
@define-color memory @base;
|
||||||
|
@define-color cpu @surface0;
|
||||||
|
@define-color time @surface0;
|
||||||
|
@define-color date @base;
|
||||||
|
@define-color tray @mantle;
|
||||||
|
@define-color volume @mantle;
|
||||||
|
@define-color backlight @base;
|
||||||
|
@define-color battery @surface0;
|
||||||
|
|
||||||
|
/* state colors */
|
||||||
|
|
||||||
|
@define-color warning @yellow;
|
||||||
|
@define-color critical @red;
|
||||||
|
@define-color charging @green;
|
||||||
63
waybar/themes/catppuccin-macchiato.css
Normal file
63
waybar/themes/catppuccin-macchiato.css
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
/* catppuccin-macchiato */
|
||||||
|
|
||||||
|
@define-color rosewater #f4dbd6;
|
||||||
|
@define-color flamingo #f0c6c6;
|
||||||
|
@define-color pink #f5bde6;
|
||||||
|
@define-color mauve #c6a0f6;
|
||||||
|
@define-color red #ed8796;
|
||||||
|
@define-color maroon #ee99a0;
|
||||||
|
@define-color peach #f5a97f;
|
||||||
|
@define-color yellow #eed49f;
|
||||||
|
@define-color green #a6da95;
|
||||||
|
@define-color teal #8bd5ca;
|
||||||
|
@define-color sky #91d7e3;
|
||||||
|
@define-color sapphire #7dc4e4;
|
||||||
|
@define-color blue #8aadf4;
|
||||||
|
@define-color lavender #b7bdf8;
|
||||||
|
@define-color text #cad3f5;
|
||||||
|
@define-color subtext1 #b8c0e0;
|
||||||
|
@define-color subtext0 #a5adcb;
|
||||||
|
@define-color overlay2 #939ab7;
|
||||||
|
@define-color overlay1 #8087a2;
|
||||||
|
@define-color overlay0 #6e738d;
|
||||||
|
@define-color surface2 #5b6078;
|
||||||
|
@define-color surface1 #494d64;
|
||||||
|
@define-color surface0 #363a4f;
|
||||||
|
@define-color base #24273a;
|
||||||
|
@define-color mantle #1e2030;
|
||||||
|
@define-color crust #181926;
|
||||||
|
|
||||||
|
/*
|
||||||
|
br - border
|
||||||
|
bg - background
|
||||||
|
fg - foreground
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* main colors */
|
||||||
|
|
||||||
|
@define-color accent @lavender;
|
||||||
|
@define-color main-br @subtext0;
|
||||||
|
@define-color main-bg @crust;
|
||||||
|
@define-color main-fg @text;
|
||||||
|
@define-color hover-bg @base;
|
||||||
|
@define-color hover-fg alpha(@main-fg, 0.75);
|
||||||
|
@define-color outline shade(@main-bg, 0.5);
|
||||||
|
|
||||||
|
/* module colors */
|
||||||
|
|
||||||
|
@define-color workspaces @mantle;
|
||||||
|
@define-color temperature @mantle;
|
||||||
|
@define-color memory @base;
|
||||||
|
@define-color cpu @surface0;
|
||||||
|
@define-color time @surface0;
|
||||||
|
@define-color date @base;
|
||||||
|
@define-color tray @mantle;
|
||||||
|
@define-color volume @mantle;
|
||||||
|
@define-color backlight @base;
|
||||||
|
@define-color battery @surface0;
|
||||||
|
|
||||||
|
/* state colors */
|
||||||
|
|
||||||
|
@define-color warning @yellow;
|
||||||
|
@define-color critical @red;
|
||||||
|
@define-color charging @green;
|
||||||
63
waybar/themes/catppuccin-mocha.css
Normal file
63
waybar/themes/catppuccin-mocha.css
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
/* catppuccin-mocha */
|
||||||
|
|
||||||
|
@define-color rosewater #f5e0dc;
|
||||||
|
@define-color flamingo #f2cdcd;
|
||||||
|
@define-color pink #f5c2e7;
|
||||||
|
@define-color mauve #cba6f7;
|
||||||
|
@define-color red #f38ba8;
|
||||||
|
@define-color maroon #eba0ac;
|
||||||
|
@define-color peach #fab387;
|
||||||
|
@define-color yellow #f9e2af;
|
||||||
|
@define-color green #a6e3a1;
|
||||||
|
@define-color teal #94e2d5;
|
||||||
|
@define-color sky #89dceb;
|
||||||
|
@define-color sapphire #74c7ec;
|
||||||
|
@define-color blue #89b4fa;
|
||||||
|
@define-color lavender #b4befe;
|
||||||
|
@define-color text #cdd6f4;
|
||||||
|
@define-color subtext1 #bac2de;
|
||||||
|
@define-color subtext0 #a6adc8;
|
||||||
|
@define-color overlay2 #9399b2;
|
||||||
|
@define-color overlay1 #7f849c;
|
||||||
|
@define-color overlay0 #6c7086;
|
||||||
|
@define-color surface2 #585b70;
|
||||||
|
@define-color surface1 #45475a;
|
||||||
|
@define-color surface0 #313244;
|
||||||
|
@define-color base #1e1e2e;
|
||||||
|
@define-color mantle #181825;
|
||||||
|
@define-color crust #11111b;
|
||||||
|
|
||||||
|
/*
|
||||||
|
br - border
|
||||||
|
bg - background
|
||||||
|
fg - foreground
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* main colors */
|
||||||
|
|
||||||
|
@define-color accent @lavender;
|
||||||
|
@define-color main-br @subtext0;
|
||||||
|
@define-color main-bg @crust;
|
||||||
|
@define-color main-fg @text;
|
||||||
|
@define-color hover-bg @base;
|
||||||
|
@define-color hover-fg alpha(@main-fg, 0.75);
|
||||||
|
@define-color outline shade(@main-bg, 0.5);
|
||||||
|
|
||||||
|
/* module colors */
|
||||||
|
|
||||||
|
@define-color workspaces @mantle;
|
||||||
|
@define-color temperature @mantle;
|
||||||
|
@define-color memory @base;
|
||||||
|
@define-color cpu @surface0;
|
||||||
|
@define-color time @surface0;
|
||||||
|
@define-color date @base;
|
||||||
|
@define-color tray @mantle;
|
||||||
|
@define-color volume @mantle;
|
||||||
|
@define-color backlight @base;
|
||||||
|
@define-color battery @surface0;
|
||||||
|
|
||||||
|
/* state colors */
|
||||||
|
|
||||||
|
@define-color warning @yellow;
|
||||||
|
@define-color critical @red;
|
||||||
|
@define-color charging @green;
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
/* Catppuccin Frappe */
|
|
||||||
|
|
||||||
@define-color rosewater #f2d5cf;
|
|
||||||
@define-color flamingo #eebebe;
|
|
||||||
@define-color pink #f4b8e4;
|
|
||||||
@define-color mauve #ca9ee6;
|
|
||||||
@define-color red #e78284;
|
|
||||||
@define-color maroon #ea999c;
|
|
||||||
@define-color peach #ef9f76;
|
|
||||||
@define-color yellow #e5c890;
|
|
||||||
@define-color green #a6d189;
|
|
||||||
@define-color teal #81c8be;
|
|
||||||
@define-color sky #99d1db;
|
|
||||||
@define-color sapphire #85c1dc;
|
|
||||||
@define-color blue #8caaee;
|
|
||||||
@define-color lavender #babbf1;
|
|
||||||
@define-color text #c6d0f5;
|
|
||||||
@define-color subtext1 #b5bfe2;
|
|
||||||
@define-color subtext0 #a5adce;
|
|
||||||
@define-color overlay2 #949cbb;
|
|
||||||
@define-color overlay1 #838ba7;
|
|
||||||
@define-color overlay0 #737994;
|
|
||||||
@define-color surface2 #626880;
|
|
||||||
@define-color surface1 #51576d;
|
|
||||||
@define-color surface0 #414559;
|
|
||||||
@define-color base #303446;
|
|
||||||
@define-color mantle #292c3c;
|
|
||||||
@define-color crust #232634;
|
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
|
||||||
bg - background
|
|
||||||
fg - foreground
|
|
||||||
br - border
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Main Colors */
|
|
||||||
|
|
||||||
@define-color shadow shade(@crust, 0.5);
|
|
||||||
@define-color main-fg @text;
|
|
||||||
@define-color main-bg @crust;
|
|
||||||
@define-color main-br @text;
|
|
||||||
|
|
||||||
@define-color active-bg @overlay2;
|
|
||||||
@define-color active-fg @crust;
|
|
||||||
|
|
||||||
@define-color hover-bg @surface0;
|
|
||||||
@define-color hover-fg alpha(@text, 0.75);
|
|
||||||
|
|
||||||
/* Module Colors */
|
|
||||||
|
|
||||||
@define-color module-fg @text;
|
|
||||||
@define-color workspaces @mantle;
|
|
||||||
|
|
||||||
@define-color temperature @mantle;
|
|
||||||
@define-color memory @base;
|
|
||||||
@define-color cpu @surface0;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @overlay2;
|
|
||||||
@define-color time @surface0;
|
|
||||||
@define-color date @base;
|
|
||||||
@define-color tray @mantle;
|
|
||||||
|
|
||||||
@define-color pulseaudio @mantle;
|
|
||||||
@define-color backlight @base;
|
|
||||||
@define-color battery @surface0;
|
|
||||||
@define-color power @overlay2;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @yellow;
|
|
||||||
@define-color critical @red;
|
|
||||||
@define-color charging @text;
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
/* Catppuccin Latte */
|
|
||||||
|
|
||||||
@define-color rosewater #dc8a78;
|
|
||||||
@define-color flamingo #dd7878;
|
|
||||||
@define-color pink #ea76cb;
|
|
||||||
@define-color mauve #8839ef;
|
|
||||||
@define-color red #d20f39;
|
|
||||||
@define-color maroon #e64553;
|
|
||||||
@define-color peach #fe640b;
|
|
||||||
@define-color yellow #df8e1d;
|
|
||||||
@define-color green #40a02b;
|
|
||||||
@define-color teal #179299;
|
|
||||||
@define-color sky #04a5e5;
|
|
||||||
@define-color sapphire #209fb5;
|
|
||||||
@define-color blue #1e66f5;
|
|
||||||
@define-color lavender #7287fd;
|
|
||||||
@define-color text #4c4f69;
|
|
||||||
@define-color subtext1 #5c5f77;
|
|
||||||
@define-color subtext0 #6c6f85;
|
|
||||||
@define-color overlay2 #7c7f93;
|
|
||||||
@define-color overlay1 #8c8fa1;
|
|
||||||
@define-color overlay0 #9ca0b0;
|
|
||||||
@define-color surface2 #acb0be;
|
|
||||||
@define-color surface1 #bcc0cc;
|
|
||||||
@define-color surface0 #ccd0da;
|
|
||||||
@define-color base #eff1f5;
|
|
||||||
@define-color mantle #e6e9ef;
|
|
||||||
@define-color crust #dce0e8;
|
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
|
||||||
bg - background
|
|
||||||
fg - foreground
|
|
||||||
br - border
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Main Colors */
|
|
||||||
|
|
||||||
@define-color shadow shade(@crust, 0.5);
|
|
||||||
@define-color main-fg @text;
|
|
||||||
@define-color main-bg @crust;
|
|
||||||
@define-color main-br @text;
|
|
||||||
|
|
||||||
@define-color active-bg @overlay2;
|
|
||||||
@define-color active-fg @crust;
|
|
||||||
|
|
||||||
@define-color hover-bg @surface0;
|
|
||||||
@define-color hover-fg alpha(@text, 0.75);
|
|
||||||
|
|
||||||
/* Module Colors */
|
|
||||||
|
|
||||||
@define-color module-fg @text;
|
|
||||||
@define-color workspaces @mantle;
|
|
||||||
|
|
||||||
@define-color temperature @mantle;
|
|
||||||
@define-color memory @base;
|
|
||||||
@define-color cpu @surface0;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @overlay2;
|
|
||||||
@define-color time @surface0;
|
|
||||||
@define-color date @base;
|
|
||||||
@define-color tray @mantle;
|
|
||||||
|
|
||||||
@define-color pulseaudio @mantle;
|
|
||||||
@define-color backlight @base;
|
|
||||||
@define-color battery @surface0;
|
|
||||||
@define-color power @overlay2;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @yellow;
|
|
||||||
@define-color critical @red;
|
|
||||||
@define-color charging @text;
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
/* Catppuccin Macchiato */
|
|
||||||
|
|
||||||
@define-color rosewater #f4dbd6;
|
|
||||||
@define-color flamingo #f0c6c6;
|
|
||||||
@define-color pink #f5bde6;
|
|
||||||
@define-color mauve #c6a0f6;
|
|
||||||
@define-color red #ed8796;
|
|
||||||
@define-color maroon #ee99a0;
|
|
||||||
@define-color peach #f5a97f;
|
|
||||||
@define-color yellow #eed49f;
|
|
||||||
@define-color green #a6da95;
|
|
||||||
@define-color teal #8bd5ca;
|
|
||||||
@define-color sky #91d7e3;
|
|
||||||
@define-color sapphire #7dc4e4;
|
|
||||||
@define-color blue #8aadf4;
|
|
||||||
@define-color lavender #b7bdf8;
|
|
||||||
@define-color text #cad3f5;
|
|
||||||
@define-color subtext1 #b8c0e0;
|
|
||||||
@define-color subtext0 #a5adcb;
|
|
||||||
@define-color overlay2 #939ab7;
|
|
||||||
@define-color overlay1 #8087a2;
|
|
||||||
@define-color overlay0 #6e738d;
|
|
||||||
@define-color surface2 #5b6078;
|
|
||||||
@define-color surface1 #494d64;
|
|
||||||
@define-color surface0 #363a4f;
|
|
||||||
@define-color base #24273a;
|
|
||||||
@define-color mantle #1e2030;
|
|
||||||
@define-color crust #181926;
|
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
|
||||||
bg - background
|
|
||||||
fg - foreground
|
|
||||||
br - border
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Main Colors */
|
|
||||||
|
|
||||||
@define-color shadow shade(@crust, 0.5);
|
|
||||||
@define-color main-fg @text;
|
|
||||||
@define-color main-bg @crust;
|
|
||||||
@define-color main-br @text;
|
|
||||||
|
|
||||||
@define-color active-bg @overlay2;
|
|
||||||
@define-color active-fg @crust;
|
|
||||||
|
|
||||||
@define-color hover-bg @surface0;
|
|
||||||
@define-color hover-fg alpha(@text, 0.75);
|
|
||||||
|
|
||||||
/* Module Colors */
|
|
||||||
|
|
||||||
@define-color module-fg @text;
|
|
||||||
@define-color workspaces @mantle;
|
|
||||||
|
|
||||||
@define-color temperature @mantle;
|
|
||||||
@define-color memory @base;
|
|
||||||
@define-color cpu @surface0;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @overlay2;
|
|
||||||
@define-color time @surface0;
|
|
||||||
@define-color date @base;
|
|
||||||
@define-color tray @mantle;
|
|
||||||
|
|
||||||
@define-color pulseaudio @mantle;
|
|
||||||
@define-color backlight @base;
|
|
||||||
@define-color battery @surface0;
|
|
||||||
@define-color power @overlay2;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @yellow;
|
|
||||||
@define-color critical @red;
|
|
||||||
@define-color charging @text;
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
/* Catppuccin Mocha */
|
|
||||||
|
|
||||||
@define-color rosewater #f5e0dc;
|
|
||||||
@define-color flamingo #f2cdcd;
|
|
||||||
@define-color pink #f5c2e7;
|
|
||||||
@define-color mauve #cba6f7;
|
|
||||||
@define-color red #f38ba8;
|
|
||||||
@define-color maroon #eba0ac;
|
|
||||||
@define-color peach #fab387;
|
|
||||||
@define-color yellow #f9e2af;
|
|
||||||
@define-color green #a6e3a1;
|
|
||||||
@define-color teal #94e2d5;
|
|
||||||
@define-color sky #89dceb;
|
|
||||||
@define-color sapphire #74c7ec;
|
|
||||||
@define-color blue #89b4fa;
|
|
||||||
@define-color lavender #b4befe;
|
|
||||||
@define-color text #cdd6f4;
|
|
||||||
@define-color subtext1 #bac2de;
|
|
||||||
@define-color subtext0 #a6adc8;
|
|
||||||
@define-color overlay2 #9399b2;
|
|
||||||
@define-color overlay1 #7f849c;
|
|
||||||
@define-color overlay0 #6c7086;
|
|
||||||
@define-color surface2 #585b70;
|
|
||||||
@define-color surface1 #45475a;
|
|
||||||
@define-color surface0 #313244;
|
|
||||||
@define-color base #1e1e2e;
|
|
||||||
@define-color mantle #181825;
|
|
||||||
@define-color crust #11111b;
|
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
|
||||||
bg - background
|
|
||||||
fg - foreground
|
|
||||||
br - border
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Main Colors */
|
|
||||||
|
|
||||||
@define-color shadow shade(@crust, 0.5);
|
|
||||||
@define-color main-fg @text;
|
|
||||||
@define-color main-bg @crust;
|
|
||||||
@define-color main-br @text;
|
|
||||||
|
|
||||||
@define-color active-bg @overlay2;
|
|
||||||
@define-color active-fg @crust;
|
|
||||||
|
|
||||||
@define-color hover-bg @surface0;
|
|
||||||
@define-color hover-fg alpha(@text, 0.75);
|
|
||||||
|
|
||||||
/* Module Colors */
|
|
||||||
|
|
||||||
@define-color module-fg @text;
|
|
||||||
@define-color workspaces @mantle;
|
|
||||||
|
|
||||||
@define-color temperature @mantle;
|
|
||||||
@define-color memory @base;
|
|
||||||
@define-color cpu @surface0;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @overlay2;
|
|
||||||
@define-color time @surface0;
|
|
||||||
@define-color date @base;
|
|
||||||
@define-color tray @mantle;
|
|
||||||
|
|
||||||
@define-color pulseaudio @mantle;
|
|
||||||
@define-color backlight @base;
|
|
||||||
@define-color battery @surface0;
|
|
||||||
@define-color power @overlay2;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @yellow;
|
|
||||||
@define-color critical @red;
|
|
||||||
@define-color charging @text;
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
/* Gruvbox Dark */
|
|
||||||
|
|
||||||
@define-color bg0_h #1d2021;
|
|
||||||
@define-color bg0 #282828;
|
|
||||||
@define-color bg1 #3c3836;
|
|
||||||
@define-color bg2 #504945;
|
|
||||||
@define-color bg3 #665c54;
|
|
||||||
@define-color bg4 #7c6f64;
|
|
||||||
@define-color gray #928374;
|
|
||||||
@define-color fg4 #a89984;
|
|
||||||
@define-color fg3 #bdae93;
|
|
||||||
@define-color fg2 #d5c4a1;
|
|
||||||
@define-color fg1 #ebdbb2;
|
|
||||||
@define-color fg0 #fbf1c7;
|
|
||||||
@define-color red #cc241d;
|
|
||||||
@define-color bright_red #fb4934;
|
|
||||||
@define-color green #98971a;
|
|
||||||
@define-color bright_green #b8bb26;
|
|
||||||
@define-color yellow #d79921;
|
|
||||||
@define-color bright_yellow #fabd2f;
|
|
||||||
@define-color blue #458588;
|
|
||||||
@define-color bright_blue #83a598;
|
|
||||||
@define-color purple #b16286;
|
|
||||||
@define-color bright_purple #d3869b;
|
|
||||||
@define-color aqua #689d6a;
|
|
||||||
@define-color bright_aqua #8ec07c;
|
|
||||||
@define-color orange #d65d0e;
|
|
||||||
@define-color bright_orange #fe8019;
|
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
|
||||||
bg - background
|
|
||||||
fg - foreground
|
|
||||||
br - border
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Main Colors */
|
|
||||||
|
|
||||||
@define-color shadow shade(@bg0_h, 0.5);
|
|
||||||
@define-color main-fg @fg0;
|
|
||||||
@define-color main-bg @bg0_h;
|
|
||||||
@define-color main-br @fg0;
|
|
||||||
|
|
||||||
@define-color active-bg @yellow;
|
|
||||||
@define-color active-fg @bg0_h;
|
|
||||||
|
|
||||||
@define-color hover-bg @bg2;
|
|
||||||
@define-color hover-fg alpha(@fg0, 0.75);
|
|
||||||
|
|
||||||
/* Module Colors */
|
|
||||||
|
|
||||||
@define-color module-fg @fg0;
|
|
||||||
@define-color workspaces @bg0;
|
|
||||||
|
|
||||||
@define-color temperature @bg0;
|
|
||||||
@define-color memory @bg1;
|
|
||||||
@define-color cpu @bg2;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @yellow;
|
|
||||||
@define-color time @bg2;
|
|
||||||
@define-color date @bg1;
|
|
||||||
@define-color tray @bg0;
|
|
||||||
|
|
||||||
@define-color pulseaudio @bg0;
|
|
||||||
@define-color backlight @bg1;
|
|
||||||
@define-color battery @bg2;
|
|
||||||
@define-color power @yellow;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @bright_orange;
|
|
||||||
@define-color critical @bright_red;
|
|
||||||
@define-color charging @fg0;
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
/* Gruvbox Light */
|
|
||||||
|
|
||||||
@define-color bg0_h #f9f5d7;
|
|
||||||
@define-color bg0 #fbf1c7;
|
|
||||||
@define-color bg1 #ebdbb2;
|
|
||||||
@define-color bg2 #d5c4a1;
|
|
||||||
@define-color bg3 #bdae93;
|
|
||||||
@define-color bg4 #a89984;
|
|
||||||
@define-color gray #928374;
|
|
||||||
@define-color fg4 #7c6f64;
|
|
||||||
@define-color fg3 #665c54;
|
|
||||||
@define-color fg2 #504945;
|
|
||||||
@define-color fg1 #3c3836;
|
|
||||||
@define-color fg0 #282828;
|
|
||||||
@define-color red #cc241d;
|
|
||||||
@define-color bright_red #9d0006;
|
|
||||||
@define-color green #98971a;
|
|
||||||
@define-color bright_green #79740e;
|
|
||||||
@define-color yellow #d79921;
|
|
||||||
@define-color bright_yellow #b57614;
|
|
||||||
@define-color blue #458588;
|
|
||||||
@define-color bright_blue #076678;
|
|
||||||
@define-color purple #b16286;
|
|
||||||
@define-color bright_purple #8f3f71;
|
|
||||||
@define-color aqua #689d6a;
|
|
||||||
@define-color bright_aqua #427b58;
|
|
||||||
@define-color orange #d65d0e;
|
|
||||||
@define-color bright_orange #af3a03;
|
|
||||||
|
|
||||||
@define-color white #ffffff;
|
|
||||||
@define-color black #000000;
|
|
||||||
|
|
||||||
/*
|
|
||||||
bg - background
|
|
||||||
fg - foreground
|
|
||||||
br - border
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Main Colors */
|
|
||||||
|
|
||||||
@define-color shadow shade(@bg0_h, 0.5);
|
|
||||||
@define-color main-fg @fg0;
|
|
||||||
@define-color main-bg @bg0_h;
|
|
||||||
@define-color main-br @fg0;
|
|
||||||
|
|
||||||
@define-color active-bg @yellow;
|
|
||||||
@define-color active-fg @bg0_h;
|
|
||||||
|
|
||||||
@define-color hover-bg @bg2;
|
|
||||||
@define-color hover-fg alpha(@fg0, 0.75);
|
|
||||||
|
|
||||||
/* Module Colors */
|
|
||||||
|
|
||||||
@define-color module-fg @fg0;
|
|
||||||
@define-color workspaces @bg0;
|
|
||||||
|
|
||||||
@define-color temperature @bg0;
|
|
||||||
@define-color memory @bg1;
|
|
||||||
@define-color cpu @bg2;
|
|
||||||
@define-color distro-fg @black;
|
|
||||||
@define-color distro-bg @yellow;
|
|
||||||
@define-color time @bg2;
|
|
||||||
@define-color date @bg1;
|
|
||||||
@define-color tray @bg0;
|
|
||||||
|
|
||||||
@define-color pulseaudio @bg0;
|
|
||||||
@define-color backlight @bg1;
|
|
||||||
@define-color battery @bg2;
|
|
||||||
@define-color power @yellow;
|
|
||||||
|
|
||||||
/* State Colors */
|
|
||||||
|
|
||||||
@define-color warning @bright_orange;
|
|
||||||
@define-color critical @bright_red;
|
|
||||||
@define-color charging @fg0;
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/home/saeijou/.config/waybar/themes/css/gruvbox-dark.css
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#8caaee'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#e78284'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#e78284'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#ef9f76'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#ef9f76'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#8caaee'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#8caaee'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#a6d189'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#a6d189'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#a6d189'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#a6d189'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#a6d189'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#a6d189'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#a5adce'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#ef9f76'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#ef9f76'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#ca9ee6'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#8caaee'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#8caaee'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#e78284'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#8caaee'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#a6d189'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#ef9f76'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#e78284'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#babbf1'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#a5adce' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#e78284'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#a6d189'> </span>",
|
|
||||||
"firefox": "<span foreground='#e78284'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#babbf1'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#1e66f5'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#d20f39'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#d20f39'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#fe640b'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#fe640b'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#1e66f5'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#1e66f5'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#40a02b'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#40a02b'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#40a02b'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#40a02b'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#40a02b'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#40a02b'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#6c6f85'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#fe640b'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#fe640b'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#8839ef'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#1e66f5'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#1e66f5'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#d20f39'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#1e66f5'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#40a02b'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#fe640b'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#d20f39'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#7287fd'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#6c6f85' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#d20f39'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#40a02b'> </span>",
|
|
||||||
"firefox": "<span foreground='#d20f39'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#7287fd'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#8aadf4'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#ed8796'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#ed8796'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#f5a97f'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#f5a97f'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#8aadf4'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#8aadf4'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#a6da95'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#a6da95'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#a6da95'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#a6da95'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#a6da95'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#a6da95'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#a5adcb'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#f5a97f'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#f5a97f'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#c6a0f6'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#8aadf4'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#8aadf4'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#ed8796'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#8aadf4'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#a6da95'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#f5a97f'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#ed8796'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#b7bdf8'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#a5adcb' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#ed8796'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#a6da95'> </span>",
|
|
||||||
"firefox": "<span foreground='#ed8796'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#b7bdf8'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#89b4fa'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#f38ba8'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#f38ba8'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#fab387'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#fab387'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#89b4fa'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#89b4fa'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#a6adc8'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#fab387'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#fab387'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#cba6f7'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#89b4fa'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#89b4fa'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#f38ba8'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#89b4fa'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#a6e3a1'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#fab387'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#f38ba8'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#b4befe'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#a6adc8' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#f38ba8'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#a6e3a1'> </span>",
|
|
||||||
"firefox": "<span foreground='#f38ba8'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#b4befe'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#458588'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#cc241d'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#cc241d'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#d65d0e'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#458588'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#458588'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#98971a'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#98971a'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#d5c4a1'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#b16286'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#458588'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#458588'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#cc241d'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#458588'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#98971a'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#cc241d'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#928374'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#d5c4a1' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#cc241d'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#98971a'> </span>",
|
|
||||||
"firefox": "<span foreground='#cc241d'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#928374'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,478 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"mode": "dock",
|
|
||||||
"reload_style_on_change": true,
|
|
||||||
"gtk-layer-shell": true,
|
|
||||||
|
|
||||||
// <<--< Positions >-->>
|
|
||||||
|
|
||||||
"modules-left": [
|
|
||||||
"custom/ws", // window icon
|
|
||||||
"custom/left1",
|
|
||||||
|
|
||||||
"hyprland/workspaces", // workspaces
|
|
||||||
"custom/right1",
|
|
||||||
|
|
||||||
"custom/paddw",
|
|
||||||
"hyprland/window" // window title
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-center": [
|
|
||||||
"custom/paddc",
|
|
||||||
"custom/left2",
|
|
||||||
"custom/temperature", // temperature
|
|
||||||
|
|
||||||
"custom/left3",
|
|
||||||
"memory", // memory
|
|
||||||
|
|
||||||
"custom/left4",
|
|
||||||
"cpu", // cpu
|
|
||||||
"custom/leftin1",
|
|
||||||
|
|
||||||
"custom/left5",
|
|
||||||
"custom/distro", // distro icon
|
|
||||||
"custom/right2",
|
|
||||||
|
|
||||||
"custom/rightin1",
|
|
||||||
"idle_inhibitor", // idle inhibitor
|
|
||||||
"clock#time", // time
|
|
||||||
"custom/right3",
|
|
||||||
|
|
||||||
"clock#date", // date
|
|
||||||
"custom/right4",
|
|
||||||
|
|
||||||
"custom/wifi", // wi-fi
|
|
||||||
"bluetooth", // bluetooth
|
|
||||||
"custom/update", // system update
|
|
||||||
"custom/right5"
|
|
||||||
],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"mpris", // media info
|
|
||||||
|
|
||||||
"custom/left6",
|
|
||||||
"pulseaudio", // output device
|
|
||||||
|
|
||||||
"custom/left7",
|
|
||||||
"backlight", // brightness
|
|
||||||
|
|
||||||
"custom/left8",
|
|
||||||
"battery", // battery
|
|
||||||
|
|
||||||
"custom/leftin2",
|
|
||||||
"custom/power" // power button
|
|
||||||
],
|
|
||||||
|
|
||||||
// <<--< Modules >-->>
|
|
||||||
|
|
||||||
"custom/ws": {
|
|
||||||
"exec": "~/.config/waybar/scripts/current-theme.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": " ",
|
|
||||||
"on-click": "~/.config/waybar/scripts/theme-switcher.sh",
|
|
||||||
"min-length": 3,
|
|
||||||
"max-length": 3
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
||||||
"persistent-workspaces": {
|
|
||||||
"1": [],
|
|
||||||
"2": [],
|
|
||||||
"3": [],
|
|
||||||
"4": [],
|
|
||||||
"5": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"hyprland/window": {
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false,
|
|
||||||
"min-length": 5,
|
|
||||||
|
|
||||||
"rewrite": {
|
|
||||||
// Desktop
|
|
||||||
"":
|
|
||||||
"<span foreground='#458588'> </span> Hyprland",
|
|
||||||
|
|
||||||
// Terminal
|
|
||||||
"~": " Terminal",
|
|
||||||
"zsh": " Terminal",
|
|
||||||
"kitty": " Terminal",
|
|
||||||
|
|
||||||
"tmux(.*)":
|
|
||||||
"<span foreground='#a6e3a1'> </span> Tmux",
|
|
||||||
|
|
||||||
// Browser
|
|
||||||
|
|
||||||
"(.*)Mozilla Firefox":
|
|
||||||
"<span foreground='#cc241d'> </span> Firefox",
|
|
||||||
"(.*) — Mozilla Firefox":
|
|
||||||
"<span foreground='#cc241d'> </span> $1",
|
|
||||||
|
|
||||||
"(.*)Zen Browser":
|
|
||||||
"<span foreground='#d65d0e'> </span> Zen Browser",
|
|
||||||
"(.*) — Zen Browser":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
// Development
|
|
||||||
|
|
||||||
"(.*) - Visual Studio Code":
|
|
||||||
"<span foreground='#458588'> </span> $1",
|
|
||||||
"(.*)Visual Studio Code":
|
|
||||||
"<span foreground='#458588'> </span> Visual Studio Code",
|
|
||||||
|
|
||||||
"nvim":
|
|
||||||
"<span foreground='#98971a'> </span> Neovim",
|
|
||||||
"nvim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
"vim":
|
|
||||||
"<span foreground='#98971a'> </span> Vim",
|
|
||||||
"vim (.*)":
|
|
||||||
"<span foreground='#98971a'> </span> $1",
|
|
||||||
|
|
||||||
// Media
|
|
||||||
|
|
||||||
"(.*)Spotify":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify",
|
|
||||||
"(.*)Spotify Premium":
|
|
||||||
"<span foreground='#98971a'> </span> Spotify Premium",
|
|
||||||
|
|
||||||
"OBS(.*)":
|
|
||||||
"<span foreground='#504945'> </span> OBS Studio",
|
|
||||||
|
|
||||||
"VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> VLC Media Player",
|
|
||||||
"(.*) - VLC media player":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1",
|
|
||||||
|
|
||||||
"(.*) - mpv":
|
|
||||||
"<span foreground='#b16286'> </span> $1",
|
|
||||||
|
|
||||||
"qView": " qView",
|
|
||||||
|
|
||||||
"(.*).jpg": " $1.jpg",
|
|
||||||
"(.*).png": " $1.png",
|
|
||||||
"(.*).svg": " $1.svg",
|
|
||||||
|
|
||||||
// Social
|
|
||||||
|
|
||||||
"vesktop":
|
|
||||||
"<span foreground='#458588'> </span> Discord",
|
|
||||||
|
|
||||||
"• Discord(.*)": "Discord$1",
|
|
||||||
"(.*)Discord(.*)":
|
|
||||||
"<span foreground='#458588'> </span> $1Discord$2",
|
|
||||||
|
|
||||||
// Documents
|
|
||||||
|
|
||||||
"ONLYOFFICE Desktop Editors":
|
|
||||||
"<span foreground='#cc241d'> </span> OnlyOffice Desktop",
|
|
||||||
|
|
||||||
"(.*).docx":
|
|
||||||
"<span foreground='#458588'> </span> $1.docx",
|
|
||||||
"(.*).xlsx":
|
|
||||||
"<span foreground='#98971a'> </span> $1.xlsx",
|
|
||||||
"(.*).pptx":
|
|
||||||
"<span foreground='#d65d0e'> </span> $1.pptx",
|
|
||||||
"(.*).pdf":
|
|
||||||
"<span foreground='#cc241d'> </span> $1.pdf",
|
|
||||||
|
|
||||||
// System
|
|
||||||
"Authenticate": " Authenticate"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/temperature": {
|
|
||||||
"exec": "~/.config/waybar/scripts/cpu-temp.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"memory": {
|
|
||||||
"states": {
|
|
||||||
"warning": 75,
|
|
||||||
"critical": 90
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": " {percentage}%",
|
|
||||||
"format-critical": " {percentage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Memory Used: {used:0.1f} GB / {total:0.1f} GB",
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 7,
|
|
||||||
"max-length": 7
|
|
||||||
},
|
|
||||||
|
|
||||||
"cpu": {
|
|
||||||
"format": " {usage}%",
|
|
||||||
"tooltip": false,
|
|
||||||
"interval": 5,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/distro": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"activated": " ",
|
|
||||||
"deactivated": " "
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format-activated": "Presentation Mode",
|
|
||||||
"tooltip-format-deactivated": "Idle Mode",
|
|
||||||
"start-activated": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#time": {
|
|
||||||
"format": "{:%H:%M}",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Standard Time: {:%I:%M %p}",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock#date": {
|
|
||||||
"format": " {:%m-%d}",
|
|
||||||
"tooltip-format": "<tt>{calendar}</tt>",
|
|
||||||
|
|
||||||
"calendar": {
|
|
||||||
"mode": "month",
|
|
||||||
"mode-mon-col": 6,
|
|
||||||
"on-click-right": "mode",
|
|
||||||
|
|
||||||
"format": {
|
|
||||||
"months":
|
|
||||||
"<span color='#928374'><b>{}</b></span>",
|
|
||||||
"weekdays":
|
|
||||||
"<span color='#504945' font='7'>{}</span>",
|
|
||||||
"today":
|
|
||||||
"<span color='#cc241d'><b>{}</b></span>"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
"actions": {
|
|
||||||
"on-click": "mode",
|
|
||||||
"on-click-right": "mode"
|
|
||||||
},
|
|
||||||
|
|
||||||
"min-length": 8,
|
|
||||||
"max-length": 8
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/wifi": {
|
|
||||||
"exec": "~/.config/waybar/scripts/wifi-status.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/wifi-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Network Manager TUI' bash -c nmtui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"bluetooth": {
|
|
||||||
"format": "",
|
|
||||||
"format-disabled": "",
|
|
||||||
"format-connected": "",
|
|
||||||
"format-connected-battery": "",
|
|
||||||
|
|
||||||
"tooltip-format":
|
|
||||||
"{num_connections} connected",
|
|
||||||
"tooltip-format-disabled":
|
|
||||||
"Bluetooth Disabled",
|
|
||||||
"tooltip-format-connected":
|
|
||||||
"{device_enumerate}",
|
|
||||||
"tooltip-format-enumerate-connected":
|
|
||||||
"{device_alias}",
|
|
||||||
"tooltip-format-enumerate-connected-battery":
|
|
||||||
":: {device_alias}: {device_battery_percentage}%",
|
|
||||||
|
|
||||||
"on-click": "~/.config/waybar/scripts/bluetooth-menu.sh",
|
|
||||||
"on-click-right": "kitty --title ' Bluetooth TUI' bash -c bluetui",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/update": {
|
|
||||||
"exec": "~/.config/waybar/scripts/system-update.sh",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"on-click": "hyprctl dispatch exec '~/.config/waybar/scripts/system-update.sh up'",
|
|
||||||
"interval": 30,
|
|
||||||
"min-length": 1,
|
|
||||||
"max-length": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpris": {
|
|
||||||
"format": "{player_icon} {title} - {artist}",
|
|
||||||
"format-paused": "{status_icon} {title} - {artist}",
|
|
||||||
|
|
||||||
"player-icons": {
|
|
||||||
"default": " ",
|
|
||||||
"spotify": "<span foreground='#98971a'> </span>",
|
|
||||||
"firefox": "<span foreground='#cc241d'> </span>"
|
|
||||||
},
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "<span color='#928374'>\u200A\u200A\u2009\u2009</span>"
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Playing: {title} - {artist}",
|
|
||||||
"tooltip-format-paused": "Paused: {title} - {artist}",
|
|
||||||
"min-length": 5,
|
|
||||||
"max-length": 35
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{icon} {volume}%",
|
|
||||||
"format-muted": " {volume}%",
|
|
||||||
|
|
||||||
"format-icons": {
|
|
||||||
"default": ["", "", ""],
|
|
||||||
"headphone": "",
|
|
||||||
"headset": ""
|
|
||||||
},
|
|
||||||
|
|
||||||
"tooltip-format": "Device: {desc}",
|
|
||||||
"on-click": "~/.config/waybar/scripts/volume-control.sh -o m",
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/volume-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/volume-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"backlight": {
|
|
||||||
"format": "{icon} {percent}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
||||||
"tooltip": false,
|
|
||||||
"on-scroll-up": "~/.config/waybar/scripts/brightness-control.sh -o i",
|
|
||||||
"on-scroll-down": "~/.config/waybar/scripts/brightness-control.sh -o d",
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"battery": {
|
|
||||||
"states": {
|
|
||||||
"warning": 20,
|
|
||||||
"critical": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"format": "{icon} {capacity}%",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", ""],
|
|
||||||
"format-charging": " {capacity}%",
|
|
||||||
|
|
||||||
"tooltip-format": "Discharging: {time}",
|
|
||||||
"tooltip-format-charging": "Charging: {time}",
|
|
||||||
"interval": 1,
|
|
||||||
"min-length": 6,
|
|
||||||
"max-length": 6
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/power": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false,
|
|
||||||
// "tooltip-format": "Power Menu",
|
|
||||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
|
||||||
},
|
|
||||||
|
|
||||||
// <<--< Padding >-->>
|
|
||||||
|
|
||||||
"custom/paddw": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
"custom/paddc": {
|
|
||||||
"format": " ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Arrows
|
|
||||||
|
|
||||||
"custom/left1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left6": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left7": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/left8": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Arrows
|
|
||||||
|
|
||||||
"custom/right1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right3": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right4": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/right5": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Left Inverse
|
|
||||||
|
|
||||||
"custom/leftin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/leftin2": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
|
|
||||||
// Right Inverse
|
|
||||||
|
|
||||||
"custom/rightin1": {
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user