From 609a3322a0312ba5e8786693a65958d791a10124 Mon Sep 17 00:00:00 2001
From: bullshar-k <273740932+bullshar-k@users.noreply.github.com>
Date: Sun, 31 May 2026 16:14:17 -0400
Subject: [PATCH] commit
---
config.jsonc | 235 +++++++++++++++++++++++++++++++++++
install.sh | 3 +-
mango/config.conf | 104 ++++++++++++++++
mango/config.jsonc | 90 ++++++++++++++
mango/style.css | 104 ++++++++++++++++
style.css | 299 +++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 834 insertions(+), 1 deletion(-)
create mode 100644 config.jsonc
create mode 100644 mango/config.conf
create mode 100644 mango/config.jsonc
create mode 100644 mango/style.css
create mode 100755 style.css
diff --git a/config.jsonc b/config.jsonc
new file mode 100644
index 0000000..069aa18
--- /dev/null
+++ b/config.jsonc
@@ -0,0 +1,235 @@
+[
+ {
+ "layer": "top",
+ "position": "top",
+ "height": 36,
+ "margin-top": 7,
+ "margin-left": 446,
+ "margin-right": 446,
+ "spacing": 6,
+ "modules-left": [
+ "image",
+ "dwl/tags",
+ "dwl/window"
+ ],
+ "modules-center": [
+ "cpu",
+ "temperature",
+ "memory",
+ "disk",
+ "network"
+ ],
+ "modules-right": [
+ "custom/layout",
+ "tray",
+ "custom/notifications",
+ "battery",
+ "pulseaudio",
+ "clock",
+ "custom/power"
+ ],
+ "image": {
+ "exec": "$HOME/.config/waybar/scripts/fedora-logo-themed.sh",
+ "size": 18,
+ "interval": "once",
+ "tooltip": false
+ },
+ "dwl/tags": {
+ "num-tags": 9,
+ "tag-labels": [
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "6",
+ "7",
+ "8",
+ "9"
+ ]
+ },
+ "dwl/window": {
+ "format": "{title}",
+ "max-length": 50,
+ "rewrite": {
+ "(.*) \u2014 Mozilla Firefox": "\uf279 $1",
+ "(.*) - Chromium": "\uf268 $1",
+ "(.*) - Visual Studio Code": "\uf121 $1",
+ "(.*) - zed": "\uf121 $1",
+ "(.*) - Discord": "\uf392 $1",
+ "(.*) - Steam": "\uf1b6 $1"
+ }
+ },
+ "cpu": {
+ "format": "\uf4bc {usage}%",
+ "interval": 2,
+ "tooltip": true,
+ "tooltip-format": "CPU: {usage}%"
+ },
+ "temperature": {
+ "format": "\uf2c9 {temperatureC}\u00b0",
+ "interval": 2,
+ "tooltip": true,
+ "tooltip-format": "CPU Temp: {temperatureC}\u00b0C"
+ },
+ "memory": {
+ "format": "\uefcd {used:0.1f}G",
+ "interval": 2,
+ "tooltip": true,
+ "tooltip-format": "RAM: {used:0.1f}GB / {total:0.1f}GB ({percentage}%)"
+ },
+ "disk": {
+ "format": "\uf07a {used}",
+ "interval": 30,
+ "path": "/",
+ "tooltip": true,
+ "tooltip-format": "Disk: {used} / {total} ({percentage_used}%)"
+ },
+ "network": {
+ "format-wifi": "\uf07a {bandwidthDownBytes} \uf07a {bandwidthUpBytes}",
+ "format-ethernet": "\uf07a {bandwidthDownBytes} \uf07a {bandwidthUpBytes}",
+ "format-disconnected": "\uf1eb Offline",
+ "interval": 2,
+ "tooltip": true,
+ "tooltip-format-wifi": "WiFi: {essid} ({signalStrength}%)\nDown: {bandwidthDownBits}\nUp: {bandwidthUpBits}",
+ "tooltip-format-ethernet": "Ethernet: {ifname}\nDown: {bandwidthDownBits}\nUp: {bandwidthUpBits}"
+ },
+ "custom/layout": {
+ "exec": "$HOME/.config/mango/bin/layout-switcher.sh",
+ "interval": 1,
+ "return-type": "json",
+ "on-click": "python3 $HOME/.config/mango/bin/layout-picker.py",
+ "tooltip": true
+ },
+ "tray": {
+ "icon-size": 16,
+ "spacing": 8,
+ "show-passive-items": true
+ },
+ "custom/notifications": {
+ "format": "{}",
+ "exec": "$HOME/.config/waybar/scripts/notifications.sh",
+ "interval": 2,
+ "return-type": "json",
+ "on-click": "makoctl dismiss --all",
+ "on-click-right": "makoctl restore"
+ },
+ "battery": {
+ "states": {
+ "warning": 30,
+ "critical": 15
+ },
+ "format": "{icon} {capacity}%",
+ "format-icons": [
+ "\uf244",
+ "\uf243",
+ "\uf242",
+ "\uf241",
+ "\uf240"
+ ],
+ "format-charging": "\uf0e7 {capacity}%",
+ "format-plugged": "\uf1e6 {capacity}%",
+ "tooltip": true,
+ "tooltip-format": "{timeTo} {capacity}%"
+ },
+ "pulseaudio": {
+ "format": "{icon} {volume}%",
+ "format-muted": "\uf2e2 Muted",
+ "format-icons": {
+ "default": [
+ "\uf026",
+ "\uf027",
+ "\uf028"
+ ]
+ },
+ "on-click": "pavucontrol",
+ "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +5%",
+ "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -5%",
+ "tooltip": true,
+ "tooltip-format": "{desc}"
+ },
+ "clock": {
+ "format": "{:%I:%M %p %a, %b %d}",
+ "tooltip": true,
+ "tooltip-format": "{calendar}",
+ "calendar": {
+ "mode": "month",
+ "weeks-pos": "right",
+ "on-scroll": 1,
+ "format": {
+ "months": "{}",
+ "weekdays": "{}",
+ "today": "{}"
+ }
+ }
+ },
+ "custom/power": {
+ "format": "\uf011",
+ "tooltip": "Session Menu",
+ "on-click": "python3 $HOME/.config/waybar/scripts/logout-menu.py"
+ },
+ "output": [
+ "DP-1",
+ "DP-2"
+ ]
+ },
+ {
+ "output": "HDMI-A-1",
+ "layer": "top",
+ "position": "top",
+ "height": 36,
+ "margin-top": 7,
+ "margin-left": 50,
+ "margin-right": 50,
+ "spacing": 6,
+ "modules-left": [
+ "image#fedora",
+ "dwl/tags#vertical"
+ ],
+ "modules-center": [],
+ "modules-right": [
+ "clock#vertical",
+ "custom/power#vertical"
+ ],
+ "image#fedora": {
+ "exec": "$HOME/.config/waybar/scripts/fedora-logo-themed.sh",
+ "size": 18,
+ "interval": "once",
+ "tooltip": false
+ },
+ "dwl/tags#vertical": {
+ "num-tags": 9,
+ "tag-labels": [
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "6",
+ "7",
+ "8",
+ "9"
+ ]
+ },
+ "clock#vertical": {
+ "format": "{:%I:%M %p}",
+ "tooltip": true,
+ "tooltip-format": "{calendar}",
+ "calendar": {
+ "mode": "month",
+ "weeks-pos": "right",
+ "on-scroll": 1,
+ "format": {
+ "months": "{}",
+ "weekdays": "{}",
+ "today": "{}"
+ }
+ }
+ },
+ "custom/power#vertical": {
+ "format": "\uf011",
+ "tooltip": "Session Menu",
+ "on-click": "python3 $HOME/.config/waybar/scripts/logout-menu.py"
+ }
+ }
+]
diff --git a/install.sh b/install.sh
index fa5b253..078256d 100644
--- a/install.sh
+++ b/install.sh
@@ -1,8 +1,9 @@
curl -sS https://starship.rs/install.sh | sh
-sudo pacman -S kitty fastfetch
+sudo pacman -S kitty fastfetch swaybg waybar
cp starship.toml ~/.config
cp kitty.conf ~/.config/kitty
cp current-theme.conf ~/.config/kitty
cp -r Moga-Neon-Magenta /usr/share/icons
cp .bashrc ~/
+
diff --git a/mango/config.conf b/mango/config.conf
new file mode 100644
index 0000000..b46e8af
--- /dev/null
+++ b/mango/config.conf
@@ -0,0 +1,104 @@
+#shark's mostly stolen mangowm conffig
+
+#monitor config, change as needed
+monitorrule=name:Virtual-1,width:2048,height:1152,refresh:60,x:0,y:0
+
+#cursor
+cursor_theme=Bibata-Modern-Ice
+cursor_size=24
+
+#color scheme
+rootcolor=0x000000ff
+bordercolor=0xfffcffff
+focuscolor=0xffabfcff
+urgentcolor=0x888888ff
+#border
+borderpx=3
+gappih=5
+gappiv=5
+gappoh=10
+gappov=10
+
+#tiling type fair
+tagrule=id:1,monitor_name:Virtual-1,layout_name:fair
+
+#anims
+animations=1
+layer_animations=1
+animation_type_open=slide
+animation_type_close=slide
+layer_animation_type_open=slide
+layer_animation_type_close=slide
+
+#startup
+exec-once=/usr/lib/xdg-desktop-portal-wlr &
+exec-once=wl-clip-persist -clipboard regular --reconnect-tries 0 &
+exec-once=wl-paste --type text --watch cliphist store &
+exec-once=swaybg -i /home/shark/walls/felix.jpg -m fill &
+exec-once=waybar
+
+#keyboard
+repeat_rate=25
+repeat_delay=600
+numlockon=0
+xkb_rules_layout=us,de
+xkb_rules_options=grp:alt_caps_toggle
+
+#binds
+#core
+bind=SUPER,R,spawn,kitty
+bind=SUPER,d,spawn,librewolf
+bind=SUPER,w,killclient
+
+#focusing
+bind=SUPER,Tab,focusstack,next
+bind=ALT,Left,focusdir,left
+bind=ALT,Right,focusdir,right
+bind=ALT,Up,focusdir,up
+bind=ALT,Down,focusdir,down
+
+#swapping
+bind=SUPER+SHIFT,Up,exchange_client,up
+bind=SUPER+SHIFT,Down,exchange_client,down
+bind=SUPER+SHIFT,Left,exchange_client,left
+bind=SUPER+SHIFT,Right,exchange_client,right
+
+#floating
+bind=SUPER+SHIFT,f,togglefloating
+
+#tag switch
+bind=SUPER,Left,viewtoleft,0
+bind=SUPER,Right,viewtoright,0
+bind=CTRL+SUPER,Left,tagtoleft,0
+bind=CTRL+SUPER,Right,tagtoright,0
+
+#view tags
+bind=Ctrl,1,view,1,0
+bind=Ctrl,2,view,2,0
+bind=Ctrl,3,view,3,0
+bind=Ctrl,4,view,4,0
+bind=Ctrl,5,view,5,0
+bind=Ctrl,6,view,6,0
+bind=Ctrl,7,view,7,0
+bind=Ctrl,8,view,8,0
+bind=Ctrl,9,view,9,0
+
+#screenshot
+bind=NONE,Print,spawn_shell,g=$(slurp -d) && [ -n "$g" ] && grim -g "$g" $HOME/Pictures/Screenshots/$(date +%d%H%M%S).png
+
+#audio
+bind=NONE,XF86AudioRaiseVolume,spawn,wpctl set-volume @DEFAULT_SINK@ 5%+
+bind=NONE,XF86AudioLowerVolume,spawn,wpctl set-volume @DEFAULT_SINK@ 5%-
+bind=NONE,XF86AudioMute,spawn,wpctl set-mute @DEFAULT_SINK@ toggle
+bind=SHIFT,XF86AudioMute,spawn,wpctl set-mute @DEFAULT_SOURCE@ toggle
+
+#resize
+mousebind=SUPER,btn_left,moveresize,curmove
+mousebind=NONE,btn_middle,togglemaximizescreen,0
+mousebind=SUPER,btn_right,moveresize,curresize
+
+#etc keybinds, DONT REMOVE!!!
+bind=SUPER+SHIFT,R,reload_config
+bind=SUPER+SHIFT,M,quit
+
+
diff --git a/mango/config.jsonc b/mango/config.jsonc
new file mode 100644
index 0000000..765a381
--- /dev/null
+++ b/mango/config.jsonc
@@ -0,0 +1,90 @@
+//-*- mode: jsonc -*-
+{
+ "layer": "top",
+ "position": "top",
+ "height": 30,
+ "spacing": 4,
+
+ // Choose the order of the modules
+ "modules-left": [
+ "ext/workspaces",
+ "custom/sep",
+ "ext/window",
+ "custom/sep"
+ ],
+ "modules-center": [
+ ],
+
+ "modules-right": [
+ "custom/sep",
+ "network",
+ "custom/sep",
+ "cpu",
+ "custom/sep",
+ "memory",
+ "custom/sep",
+ "disk",
+ "custom/sep",
+ "clock",
+ "custom/sep",
+ "tray"
+ ],
+
+ // Modules configuration
+ "ext/workspaces": {
+ "disable-scroll": true,
+ "all-outputs": true,
+ "warp-on-scroll": false,
+ "format": "{name}",
+ "persistent-workspaces": {
+ "*" : 9
+ }
+ },
+ "ext/window" : {
+ "max-length": 40,
+ "seperate-outputs": false
+ },
+ "tray": {
+ // "icon-size": 21,
+ "spacing": 10
+ // "icons": {
+ // "blueman": "bluetooth",
+ // "TelegramDesktop": "$HOME/.local/share/icons/hicolor/16x16/apps/telegram.png"
+ // }
+ },
+ "clock": {
+ "format-alt": "{:%Y-%m-%d}"
+ },
+ "cpu": {
+ "format": "CPU: {usage}%",
+ "tooltip": false
+ },
+ "memory": {
+ "format": "Mem: {used}GiB"
+ },
+ "disk": {
+ "interval": 60,
+ "path": "/",
+ "format": "Disk: {free}"
+ },
+ "battery": {
+ "states": {
+ "good": 95,
+ "warning": 30,
+ "critical": 15
+ },
+ "format": "Bat: {capacity}% {icon} {time}",
+ "format-plugged": "{capacity}% ",
+ "format-alt": "Bat {capacity}%",
+ "format-time": "{H}:{M}",
+ "format-icons": ["", "", "", "", ""]
+ },
+ "network": {
+ "format": "Online",
+ "format-disconnected": "Disconnected ⚠"
+ },
+ "custom/sep": {
+ "format" : "|",
+ "interval" : 0
+ }
+}
diff --git a/mango/style.css b/mango/style.css
new file mode 100644
index 0000000..77a1a37
--- /dev/null
+++ b/mango/style.css
@@ -0,0 +1,104 @@
+@define-color bg #1a1b26;
+@define-color fg #a9b1d6;
+@define-color blk #32344a;
+@define-color red #f7768e;
+@define-color grn #9ece6a;
+@define-color ylw #e0af68;
+@define-color blu #7aa2f7;
+@define-color mag #ad8ee6;
+@define-color cyn #0db9d7;
+@define-color brblk #444b6a;
+@define-color white #ffffff;
+
+* {
+ font-family: "JetBrainsMono Nerd Font", monospace;
+ font-size: 16px;
+ font-weight: bold;
+}
+
+window#waybar {
+ background-color: @bg;
+ color: @fg;
+}
+
+#workspaces button {
+ padding: 0 6px;
+ color: @cyn;
+ background: transparent;
+ border-bottom: 3px solid @bg;
+}
+#workspaces button.active {
+ color: @cyn;
+ border-bottom: 3px solid @mag;
+}
+#workspaces button.empty {
+ color: @white;
+}
+#workspaces button.empty.active {
+ color: @cyn;
+ border-bottom: 3px solid @mag;
+}
+
+#workspaces button.urgent {
+ background-color: @red;
+}
+
+button:hover {
+ background: inherit;
+ box-shadow: inset 0 -3px #ffffff;
+}
+
+#clock,
+#custom-sep,
+#battery,
+#cpu,
+#memory,
+#disk,
+#network,
+#tray {
+ padding: 0 8px;
+ color: @white;
+}
+
+#custom-sep {
+ color: @brblk;
+}
+
+#clock {
+ color: @cyn;
+ border-bottom: 4px solid @cyn;
+}
+
+#battery {
+ color: @mag;
+ border-bottom: 4px solid @mag;
+}
+
+#disk {
+ color: @ylw;
+ border-bottom: 4px solid @ylw;
+}
+
+#memory {
+ color: @mag;
+ border-bottom: 4px solid @mag;
+}
+
+#cpu {
+ color: @grn;
+ border-bottom: 4px solid @grn;
+}
+
+#network {
+ color: @blu;
+ border-bottom: 4px solid @blu;
+}
+
+#network.disconnected {
+ background-color: @red;
+}
+
+#tray {
+ background-color: #2980b9;
+}
+
diff --git a/style.css b/style.css
new file mode 100755
index 0000000..789ab16
--- /dev/null
+++ b/style.css
@@ -0,0 +1,299 @@
+/* ─── Noctalia-inspired Waybar stylesheet ─── */
+/* GruvboxAlt dark colors, floating bar with 12px radius */
+
+* {
+ all: initial;
+ font-family:
+ "JetBrainsMono Nerd Font", "JetBrains Mono", "Font Awesome 6 Free",
+ monospace;
+ font-size: 13px;
+ font-weight: 500;
+}
+
+/* ─── Main Bar ─── */
+#waybar {
+ background-color: rgba(29, 32, 33, 0.85);
+ color: #ebdbb2;
+ border-radius: 8px;
+ padding: 4px 8px;
+}
+
+/* ─── Module Sections ─── */
+.modules-left,
+.modules-center,
+.modules-right {
+ padding: 0 4px;
+}
+
+/* ─── Individual Modules ─── */
+#image,
+#tags,
+#window,
+#cpu,
+#temperature,
+#memory,
+#disk,
+#network,
+#tray,
+#custom-notifications,
+#battery,
+#pulseaudio,
+#clock,
+#custom-layout,
+#custom-power,
+#custom-power#vertical {
+ padding: 4px 10px;
+ margin: 2px 3px;
+ border-radius: 8px;
+ background-color: transparent;
+}
+
+/* ─── Fedora Logo (Image) ─── */
+#image,
+#image#fedora {
+ padding: 4px 8px;
+ margin: 2px 3px;
+ border-radius: 8px;
+ background-color: transparent;
+}
+
+/* ─── Workspaces (dwl/tags) ─── */
+#tags,
+#tags#vertical {
+ background-color: transparent;
+ padding: 2px 6px;
+}
+
+#tags button,
+#tags#vertical button {
+ padding: 2px 7px;
+ margin: 0 2px;
+ color: #665c54;
+ background-color: transparent;
+ border-radius: 6px;
+ transition: all 0.2s ease;
+}
+
+/* Occupied workspace */
+#tags button.occupied,
+#tags#vertical button.occupied {
+ color: #d79921;
+}
+
+/* Empty workspace */
+#tags button.empty,
+#tags#vertical button.empty {
+ color: #665c54;
+}
+
+/* Focused workspace */
+#tags button.focused,
+#tags button.active,
+#tags#vertical button.focused,
+#tags#vertical button.active {
+ color: #282828;
+ background-color: #b8bb26;
+ font-weight: bold;
+}
+
+/* Urgent workspace */
+#tags button.urgent,
+#tags#vertical button.urgent {
+ color: #cc241d;
+ background-color: rgba(204, 36, 29, 0.2);
+}
+
+/* Hover effect */
+#tags button:hover,
+#tags#vertical button:hover {
+ background-color: rgba(184, 187, 38, 0.3);
+ color: #ebdbb2;
+}
+
+#tags button.focused:hover,
+#tags button.active:hover,
+#tags#vertical button.focused:hover,
+#tags#vertical button.active:hover {
+ background-color: #b8bb26;
+ color: #282828;
+}
+
+#tags button {
+ padding: 2px 5px;
+ margin: 0 2px;
+ color: #665c54;
+ background-color: transparent;
+ border-radius: 6px;
+ transition: all 0.2s ease;
+}
+
+/* Occupied workspace */
+#tags button.occupied {
+ color: #d79921;
+}
+
+/* Empty workspace */
+#tags button.empty {
+ color: #665c54;
+}
+
+/* Focused workspace */
+#tags button.focused,
+#tags button.active {
+ color: #282828;
+ background-color: #b8bb26;
+ font-weight: bold;
+}
+
+/* Urgent workspace */
+#tags button.urgent {
+ color: #cc241d;
+ background-color: rgba(204, 36, 29, 0.2);
+}
+
+/* Hover effect */
+#tags button:hover {
+ background-color: rgba(184, 187, 38, 0.3);
+ color: #ebdbb2;
+}
+
+#tags button.focused:hover,
+#tags button.active:hover {
+ background-color: #b8bb26;
+ color: #282828;
+}
+
+/* ─── Active Window (dwl/window) ─── */
+#window {
+ color: #ebdbb2;
+ background-color: transparent;
+}
+
+/* ─── Center System Stats ─── */
+#cpu {
+ color: #fb4934;
+}
+
+#temperature {
+ color: #fe8019;
+}
+
+#temperature.critical {
+ color: #cc241d;
+ background-color: rgba(204, 36, 29, 0.2);
+}
+
+#memory {
+ color: #d79921;
+}
+
+#disk {
+ color: #b8bb26;
+}
+
+#network {
+ color: #8ec07c;
+}
+
+#network.disconnected {
+ color: #928374;
+}
+
+/* ─── System Tray ─── */
+#tray {
+ background-color: transparent;
+ padding: 4px 8px;
+}
+
+#tray > .passive {
+ -gtk-icon-effect: dim;
+}
+
+#tray > .needs-attention {
+ -gtk-icon-effect: highlight;
+ background-color: rgba(214, 93, 14, 0.3);
+}
+
+/* ─── Notifications ─── */
+#custom-notifications {
+ color: #689d6a;
+}
+
+#custom-notifications.has-notifications {
+ color: #fb4934;
+}
+
+/* ─── Battery ─── */
+#battery {
+ color: #689d6a;
+}
+
+#battery.warning {
+ color: #d79921;
+}
+
+#battery.critical {
+ color: #cc241d;
+}
+
+#battery.charging,
+#battery.plugged {
+ color: #b8bb26;
+}
+
+/* ─── Pulseaudio ─── */
+#pulseaudio {
+ color: #83a598;
+}
+
+#pulseaudio.muted {
+ color: #928374;
+}
+
+/* ─── Clock ─── */
+#clock,
+#clock#vertical {
+ color: #ebdbb2;
+ background-color: transparent;
+ font-weight: 600;
+}
+
+/* ─── Layout Switcher ─── */
+#custom-layout {
+ color: #8ec07c;
+ padding: 4px 10px;
+ margin: 2px 3px;
+ border-radius: 8px;
+ background-color: transparent;
+}
+
+#custom-layout:hover {
+ background-color: rgba(142, 192, 124, 0.15);
+}
+
+/* ─── Power Button ─── */
+#custom-power,
+#custom-power#vertical {
+ color: #fb4934;
+ background-color: transparent;
+ font-size: 14px;
+ padding: 2px 12px;
+}
+
+#custom-power:hover,
+#custom-power#vertical:hover {
+ background-color: rgba(251, 73, 52, 0.15);
+}
+
+/* ─── Tooltip ─── */
+tooltip {
+ background-color: rgba(29, 32, 33, 0.95);
+ border: 1px solid rgba(80, 73, 69, 0.8);
+ border-radius: 8px;
+ padding: 8px;
+}
+
+tooltip label {
+ color: #ebdbb2;
+ padding: 4px;
+}