# SketchyBar config (translated from Waybar) This is a translation of a Hyprland/Waybar setup (`config` + `style.css`) into an equivalent [SketchyBar](https://github.com/FelixKratz/SketchyBar) config for macOS. Layout, fonts, and colours mirror the originals as closely as macOS allows. ## Install ```sh # 1. SketchyBar + the font your CSS references brew tap FelixKratz/formulae brew install sketchybar brew install --cask font-anonymice-nerd-font # "AnonymicePro Nerd Font" # 2. Drop these files in place cp -r .config/sketchybar ~/.config/ # (or move this folder there) chmod +x ~/.config/sketchybar/sketchybarrc ~/.config/sketchybar/plugins/*.sh # 3. Start it brew services start sketchybar ``` ## Optional dependencies (items self-hide / degrade gracefully without them) | Item | Needs | Install | |-------------|--------------------------------|---------------------------------| | workspaces | yabai (tiling WM) for `space` | `brew install koekeishiya/formulae/yabai` | | bluetooth | `blueutil` | `brew install blueutil` | | brightness | `brightness` CLI | `brew install brightness` | | weather | `curl` (built in) | — | > **Spaces / yabai:** the `space` component needs yabai, which needs SIP partially > disabled. If you'd rather not touch SIP, [AeroSpace](https://github.com/nikitabobko/AeroSpace) > is a SIP-free tiling WM — swap the `space` loop for its `aerospace_workspace_change` > event and point `click_script` at `aerospace workspace $sid`. ## Module mapping | Waybar | SketchyBar | Notes | |-----------------------|-----------------------------------|-------| | hyprland/workspaces | `space` items (yabai) | number icon, dim→white for active (Waybar's 3px top-border → `icon.highlight`) | | hyprland/window | `front_app` | shows app name; window *title* needs a yabai query (noted in plugin) | | clock | `clock` | same `%a %d %b %H:%M` format | | battery (BAT0) | `battery` | `pmset`; same icons, warning@25 / critical@10, charging bolt | | bluetooth | `bluetooth` | `blueutil`; on/off/connected glyphs, click toggles power | | network | `network` | ip + wifi/ethernet/off glyph (cidr & RSSI dropped — not exposed on macOS) | | pulseaudio | `volume` | native `volume_change`; volume% + icon, mute glyph | | backlight | `brightness` | `brightness` CLI; scroll to adjust (flaky on Apple Silicon) | | custom/storage | `storage` | `df /`; warning@80 / critical@90 | | custom/weather | `weather` | `wttr.in` in °F, click opens wttr.in | | custom/mail | `mail` | Mail.app unread count (swap for your provider) | | custom/spotify | `spotify` | native `media_change`; title–artist, click play/pause | | idle_inhibitor | `caffeinate` | click toggles `caffeinate`; lock/unlock glyphs | ## Omitted (no macOS/SketchyBar equivalent) - **tray** — the macOS menu bar already renders status/menu-extra icons. - **privacy** (screenshare/mic) — macOS shows camera/mic indicators natively. - **hyprland/submap** — yabai has no submap concept. - **battery#num2** (BAT1) — Macs have a single battery. Colours in `colors.sh` and glyphs in `icons.sh` are taken verbatim from your `style.css` and `config` (glyphs are byte-for-byte identical).