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; +}