Mechabar
A mecha-themed, modular Waybar configuration
Install / Use
/learn @sejjy/MechabarREADME
🤖 mechabar
A mecha-themed, modular Waybar configuration.
|
|
| :----------------------------------------: |
<ins><b>Catppuccin:</b></ins>
| Mocha (default) |
| :------------------------------------------------: |
|
|
| Macchiato |
| :--------------------------------------------------------: |
|
|
| Frappe |
| :--------------------------------------------------: |
|
|
| Latte |
| :------------------------------------------------: |
|
|
Feel free to open a pull request to add new themes! :^)
</details> </div>Prerequisites
[!IMPORTANT] If you have v0.14.0 installed, clone the
fix/v0.14.0branch instead.
- A terminal emulator (default: Kitty)
[!IMPORTANT] If you use a different emulator, replace all
kittycommands accordingly. For example:- "on-click": "kitty -e ..." + "on-click": "ghostty -e ..."
Installation
-
Back up your current config:
mv ~/.config/waybar{,.bak} -
Clone the repository:
git clone https://github.com/sejjy/mechabar.git ~/.config/waybar<a name="clone-fix-branch">For Waybar v0.14.0</a>:
git clone -b fix/v0.14.0 https://github.com/sejjy/mechabar.git ~/.config/waybar -
Install the dependencies and restart Waybar:
<details> <summary>Dependencies (6)</summary>~/.config/waybar/install| Package | Command | Description | | ---------------------- | --------------- | ------------------------------------------------------------------------------ | |
</details>bluez-utils|bluetoothctl| Development and debugging utilities for the bluetooth protocol stack<tr></tr> | |brightnessctl|brightnessctl| Lightweight brightness control tool<tr></tr> | |fzf|fzf| Command-line fuzzy finder<tr></tr> | |networkmanager|nmcli| Network connection manager and user applications<tr></tr> | |pacman-contrib|checkupdates| Contributed scripts and tools for pacman systems<tr></tr> | |otf-commit-mono-nerd| - | Patched font Commit Mono from nerd fonts library |
Configuration
<details> <summary><code>user.jsonc</code></summary>The leftmost module has no default function and is reserved for custom use. You can configure it to run any command. For example:
// modules/custom/user.jsonc
"custom/user": {
// Run your script
"on-click": "/path/to/my/script",
// Restart Waybar
"on-click-right": "pkill -SIGUSR2 waybar",
}
</details>
<details>
<summary>Binds</summary>
You can define keybinds to interact with modules using their respective scripts. For example:
# ~/.config/hypr/hyprland.conf
$scripts = ~/.config/waybar/scripts
$mod = Super
$terminal = kitty
# Launch CLI
bind = $mod, B, exec, $terminal -e $scripts/bluetooth
bind = $mod, N, exec, $terminal -e $scripts/network
bind = $mod, O, exec, $terminal -e $scripts/power
bind = $mod, U, exec, $terminal -e $scripts/update
# Toggle off Bluetooth/Wi-Fi
bind = $mod Alt, B, exec, $scripts/bluetooth off
bind = $mod Alt, N, exec, $scripts/network off
# Refresh `custom/update` module
bind = $mod Alt, U, exec, pkill -RTMIN+1 waybar
# Adjust volume
bindl = , XF86AudioMicMute, exec, $scripts/volume input mute
bindl = , XF86AudioMute, exec, $scripts/volume output mute
bindel = , XF86AudioLowerVolume, exec, $scripts/volume output lower
bindel = , XF86AudioRaiseVolume, exec, $scripts/volume output raise
# Adjust brightness
bindel = , XF86MonBrightnessDown, exec, $scripts/backlight down
bindel = , XF86MonBrightnessUp, exec, $scripts/backlight up
</details>
<details>
<summary>Icons</summary>
You can search for icons on Nerd Fonts: Cheat Sheet ↗. For example:
battery charging
For consistency, most modules use icons from Material Design, prefixed with
nf-md:
nf-md battery charging
</details>
<details open>
<summary>Theme</summary>
Copy your preferred theme from the themes directory to theme.css.
For example:
cd ~/.config/waybar
cp themes/catppuccin-latte.css theme.css
</details>
References
Related Skills
node-connect
336.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
336.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
82.8kCommit, push, and open a PR
