diff options
| -rw-r--r-- | .bashrc | 8 | ||||
| -rw-r--r-- | .xinitrc | 12 | ||||
| -rw-r--r-- | README.md | 19 | ||||
| -rw-r--r-- | alacritty/alacritty.toml | 42 | ||||
| -rw-r--r-- | dunst/dunstrc | 126 | ||||
| -rw-r--r-- | fastfetch/config.jsonc | 82 | ||||
| -rw-r--r-- | fastfetch/logo.txt | 16 | ||||
| -rw-r--r-- | kitty/kitty.conf | 79 | ||||
| m--------- | nvim | 0 | ||||
| -rw-r--r-- | oxicord/config.toml | 140 | ||||
| -rw-r--r-- | oxicord/state.toml | 80 | ||||
| -rw-r--r-- | picom.conf | 149 | ||||
| -rw-r--r-- | picom/gradient-border.glsl | 58 | ||||
| -rw-r--r-- | polybar/config.ini | 1587 | ||||
| -rwxr-xr-x | polybar/scripts/check-all-updates.sh | 21 | ||||
| -rwxr-xr-x | polybar/scripts/pavolume.sh | 201 | ||||
| -rw-r--r-- | wallpaper.png | bin | 0 -> 1962763 bytes |
17 files changed, 2620 insertions, 0 deletions
@@ -0,0 +1,8 @@ +# +# ~/.bashrc +# +[[ $- != *i* ]] && return + +alias ls='ls --color=auto' +alias grep='grep --color=auto' +PS1='\033[1;32m\u\033[1;37m@\033[1;32m\h\033[1;37m \033[1;32m\W\033[1;37m> ' diff --git a/.xinitrc b/.xinitrc new file mode 100644 index 0000000..65ee83d --- /dev/null +++ b/.xinitrc @@ -0,0 +1,12 @@ +#!/bin/sh + +# Start wallpaper in background +feh --bg-fill "$HOME/Pictures/wallpaper.png" & + +polybar mainbar-xmonad & + +dunst & + +picom & + +exec tilite diff --git a/README.md b/README.md new file mode 100644 index 0000000..ef6a336 --- /dev/null +++ b/README.md @@ -0,0 +1,19 @@ +# Bance's Dotfiles + +This repo contains all the important configs for the software I use on my work computer. + +I use the [tilite](https://git.bance.dev/tilite) window manager and you can find my configs on that repo since it is configured during compile time. + +Picom is my compositor and I use [this](https://github.com/pijulius/picom) fork to get window animations. I might write my own compositor at some point to get something more lightweight. + +I use polybar for my status bar. The config is just a slightly tweaked version of the config made by DistroTube. + +Dunst is the notification daemon and is pretty simple config-wise. + +I use both alacritty and kitty terminals. Alacritty for actual terminal use and kitty for oxicord. + +Neovim is my go to text editor and all of my plugins and theming is included here. + +Fastfetch is also included here if you want my fetch config. + +I don't use any sort of display manager. I've got my .xinitrc in here which shows my startup sequence. diff --git a/alacritty/alacritty.toml b/alacritty/alacritty.toml new file mode 100644 index 0000000..d7997e3 --- /dev/null +++ b/alacritty/alacritty.toml @@ -0,0 +1,42 @@ +[font] +normal = { family = "JetBrains Mono Nerd Font Mono", style = "Regular"} +size = 7 + +[colors.primary] +background = '#101010' # base +foreground = '#cccccc' # text +# Bright and dim foreground colors +dim_foreground = '#CDD6F4' # text +bright_foreground = '#CDD6F4' # text + +# Cursor colors +[colors.cursor] +text = '#101010' # base +cursor = '#cccccc' # rosewater + +# Selection colors +[colors.selection] +text = '#dddddd' # base +background = '#282828' # rosewater + +# Normal colors +[colors.normal] +black = '#2a2a2a' # surface1 +red = '#deeeed' # red +green = '#1bfd9c' # green +yellow = '#b4b4b4' # yellow +blue = '#7a7a7a' # blue +magenta = '#66b2b2' # pink +cyan = '#cccccc' # teal +white = '#f1f1f1' # subtext1 + +# Bright colors +[colors.bright] +black = '#4a4a4a' # surface2 +red = '#708090' # red +green = '#a6ffc9' # green +yellow = '#dddddd' # yellow +blue = '#aaaaaa' # blue +magenta = '#49c4c4' # pink +cyan = '#d3d3d3' # teal +white = '#ffffff' # subtext0 diff --git a/dunst/dunstrc b/dunst/dunstrc new file mode 100644 index 0000000..a701a24 --- /dev/null +++ b/dunst/dunstrc @@ -0,0 +1,126 @@ +[global] + + ### Display ### + + # Display notifications on monitor with mouse focus + follow = mouse + # Set {width}x{height} and {x_pos}+{y_pos} + geometry = "300x30-5+60" + # Show number of hidden notifications + indicate_hidden = yes + # Shrink window if smaller than width + shrink = no + # Set transparency of notifications + transparency = 0 + # Height of whole notification + notification_height = 0 + # Height of seperators + separator_height = 2 + # Text and seperator padding + padding = 8 + # Horizontal padding + horizontal_padding = 8 + # Width of frame around window + frame_width = 3 + # Color of frame around window + frame_color = "#1bfd9c" + # Sort messages by urgency + sort = yes + # Idle seconds + idle_threshold = 0 + + ### Text ### + + # Set font of notifications + font = Iosevka 10 + # Spacing between lines + line-height = 0 + # Markup parsing + markup = full + # Message format: + # %a - appname + # %s - summary + # %b - body + # %i - iconname (with path) + # %I - iconname (without path) + # %p - progress value (if set) + # %n - progress value no extra characters + # %% - literal % + format = "<i>%s</i>\n%b" + # Align message text horizontally + alignment = center + # Align message text vertically + vertical_alignment = center + # Show age of message if message is older than x seconds + show_age_threshold = -1 + # Split notifications into multiple lines + word_wrap = no + # If message too long, add ellipsize to... + ellipsize = middle + # Ignore newlines in notifications + ignore_newline = no + # Stack duplicate notifications + stack_duplicates = true + # Hide number of duplicate notifications + hide_duplicate_count = true + # Show indicatiors for urls and actions + show_indicators = no + + ### Icons ### + + # Disable icons + icon_position = off + + ### History ### + + # Length of history + history_length = 20 + + ### Misc ### + + # Dmenu path + dmenu = /usr/bin/dmenu -p dunst: + # Browser + browser = /usr/bin/firefox -new-tab + # Always run scripts + always_run_script = true + # Title of notification + title = Dunst + # Notification class + class = Dunst + # Print notification on startup + startup_notification = false + # Dunst verbosity + verbosity = mesg + # Ignore dbus closeNotification message + ignore_dbusclose = false + + ### Mouse ### + + # Left click + mouse_left_click = close_current + # Middle click + mouse_middle_click = do_action + # Right click + mouse_right_click = do_action + +[shortcuts] + + # Close one notification + close = ctrl+space + # Close all notifications + close_all = ctrl+shift+space + +[urgency_normal] + + # Normal urgency notifications + background = "#202632" + foreground = "#ffffff" + timeout = 5 + +[urgency_critical] + + # High urgency notifications + background = "#ffffff" + foreground = "#db0101" + timeout = 0 diff --git a/fastfetch/config.jsonc b/fastfetch/config.jsonc new file mode 100644 index 0000000..c3926dc --- /dev/null +++ b/fastfetch/config.jsonc @@ -0,0 +1,82 @@ +{ + "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/master/doc/json_schema.json", + "display": { + "key": { + "width": 10 + }, + "size": { + "binaryPrefix": "jedec" + }, + "separator": "" + }, + "logo": { + "source": "~/.config/fastfetch/logo.txt", + "type": "file", + "padding": { + "top": 1, + "left": 2 + } + }, + "modules": [ + "break", + { + "type": "os", + "key": "os", + "keyColor": "yellow", + "format": "{name}" + }, + { + "type": "kernel", + "key": "ker", + "keyColor": "green" + }, + { + "type": "packages", + "key": "pkgs", + "keyColor": "cyan" + }, + { + "type": "shell", + "key": "sh", + "keyColor": "blue", + "format": "{pretty-name}" + }, + { + "type": "wm", + "key": "wm", + "keyColor": "red", + "format": "{pretty-name}" + }, + { + "type": "uptime", + "key": "up", + "keyColor": "green" + }, + { + "type": "cpu", + "key": "cpu", + "keyColor": "red", + "format": "{name}" + }, + { + "type": "memory", + "key": "ram", + "keyColor": "yellow", + "format": "{used} / {total}" + }, + { + "type": "disk", + "key": "disk", + "keyColor": "cyan", + "folders": [ + "/" + ], + "format": "{size-used} / {size-total}" + }, + "break", + { + "type": "custom", + "format": "\u001b[33mᗢ \u001b[32mᗢ \u001b[34mᗢ \u001b[31mᗢ \u001b[36mᗢ \u001b[35mᗢ \u001b[37mᗢ \u001b[97mᗢ" + } + ] +} diff --git a/fastfetch/logo.txt b/fastfetch/logo.txt new file mode 100644 index 0000000..205ddd5 --- /dev/null +++ b/fastfetch/logo.txt @@ -0,0 +1,16 @@ + It's Music +-: .-=*: + .. ... .-=*%%@#- + : :+*+=:. .:=*%@@@@%*. + :. :#@@@+ .::. =%@@@@@@%+ + :. :+- .+#@@@@#**%@@@@#-: + . :%@@@@@@@@@#=#@+.. + =@@@@@@@@@@@* . + .#@@@@@@@@@@% . + .*@@@@@@@@%- . + :-*####=. + . . + .. .. + . . + + You Should Be Dancing diff --git a/kitty/kitty.conf b/kitty/kitty.conf new file mode 100644 index 0000000..d15212a --- /dev/null +++ b/kitty/kitty.conf @@ -0,0 +1,79 @@ +confirm_os_window_close 0 +# Font settings +font_family JetBrains Mono Nerd Font Mono +font_size 10.0 + +# vim:ft=kitty + +## name: Mono Glow Lack +## author: wnkz (https://github.com/wnkz) +## license: APACHE-2.0 +## upstream: https://github.com/wnkz/monoglow.nvim/raw/main/extras/kitty/monoglow_lack.conf + +#: The basic colors + +background #101010 +foreground #cccccc +selection_background #282828 +selection_foreground #dddddd + + +#: Cursor colors + +cursor #cccccc +cursor_text_color #101010 + + +#: URL underline color when hovering with mouse + +url_color #708090 + + +#: kitty window border colors and terminal bell colors + +active_border_color #1bfd9c + + +#: Tab bar colors + +active_tab_background #dddddd +active_tab_foreground #0d0d0d +inactive_tab_background #2a2a2a +inactive_tab_foreground #7a7a7a +tab_bar_background none +tab_bar_margin_color none + + +#: The basic 16 colors + +#: black +color0 #2a2a2a +color8 #4a4a4a + +#: red +color1 #deeeed +color9 #708090 + +#: green +color2 #1bfd9c +color10 #a6ffc9 + +#: yellow +color3 #b4b4b4 +color11 #dddddd + +#: blue +color4 #7a7a7a +color12 #aaaaaa + +#: magenta +color5 #66b2b2 +color13 #49c4c4 + +#: cyan +color6 #cccccc +color14 #d3d3d3 + +#: white +color7 #f1f1f1 +color15 #ffffff diff --git a/nvim b/nvim new file mode 160000 +Subproject 7f728e7c7a2779754e5bcf54187c50abf9424a9 diff --git a/oxicord/config.toml b/oxicord/config.toml new file mode 100644 index 0000000..556164a --- /dev/null +++ b/oxicord/config.toml @@ -0,0 +1,140 @@ +# Application configuration +# +# Log level: trace, debug, info, warn, error +log_level = "info" + +# Enable mouse support +mouse = true + +# Disable user colors (monochrome mode) +disable_user_colors = false + +# Quick Switcher default sort mode +# Options: "recents", "mixed" +quick_switcher_order = "recents" + +# Editor command to use for file viewing/editing. +# Overrides $EDITOR environment variable. +# Examples: +# editor = "nvim" +# editor = "code -w" +# editor = "nano" + +[keybindings] +# Custom keybindings configuration +# Format: "Key+Modifier" = "Action" +# +# Supported Modifiers: +# - Ctrl (or Control) +# - Alt +# - Shift +# +# Supported Special Keys: +# - Esc, Enter, Tab, BackTab, Backspace, Delete, Insert +# - Home, End, PageUp, PageDown +# - Up, Down, Left, Right +# - F1 to F12 +# - Space +# +# Examples: +# "Ctrl+q" = "Quit" +# "Alt+Enter" = "SendMessage" +# "Ctrl+k" = "ToggleQuickSwitcher" +# "Shift+Up" = "ScrollUp" + +# --- Available Actions --- +# +# General: +# "Quit" +# "Logout" +# "SecureLogout" +# "ToggleHelp" +# "ToggleGuildsTree" +# "ToggleFileExplorer" +# "ToggleHiddenFiles" +# "ToggleDisplayName" +# "ToggleQuickSwitcher" +# "NextTab" +# "Cancel" +# +# Navigation & Focus: +# "FocusGuilds" +# "FocusMessages" +# "FocusInput" +# "FocusNext" +# "FocusPrevious" +# "NavigateUp" +# "NavigateDown" +# "NavigateLeft" +# "NavigateRight" +# "Select" +# "SelectFirst" +# "SelectLast" +# "Collapse" +# "MoveToParent" +# +# Scrolling: +# "ScrollDown" +# "ScrollUp" +# "ScrollToTop" +# "ScrollToBottom" +# +# Messages & Chat: +# "SendMessage" +# "Reply" +# "ReplyNoMention" +# "EditMessage" +# "DeleteMessage" +# "CopyContent" +# "CopyImage" +# "YankId" +# "YankUrl" +# "OpenAttachments" +# "JumpToReply" +# "LoadHistory" +# "ClearSelection" +# +# Input: +# "OpenEditor" +# "ClearInput" +# "Paste" + +[ui] +# Group guilds into folders +group_guilds = false + +# Use display name (Global Name) instead of username where available +use_display_name = true + +# Show image previews in chat +image_preview = true + +# Timestamp format string (chrono format) +timestamp_format = "%H:%M" + +# Show typing indicators +show_typing = true + +# Enable TachyonFX animations +enable_animations = true + +# Notification duration in seconds +notification_duration = 5 + +# If true, hide messages from blocked users completely. +# If false, show a placeholder "[blocked message]" instead. +hide_blocked_completely = false + +[notifications] +# Enable desktop notifications +desktop = true + +# Enable internal TUI notifications +internal = true + +[theme] +# Accent color (name or hex code) +accent_color = "Green" + +# Theme mode: dark, light, auto +mode = "dark" diff --git a/oxicord/state.toml b/oxicord/state.toml new file mode 100644 index 0000000..5a91661 --- /dev/null +++ b/oxicord/state.toml @@ -0,0 +1,80 @@ +last_channel_id = "971208911375978526" +quick_switcher_order = "recents" + +[[recents]] +id = "971208911375978526" +name = "laborden" +kind = "DM" +timestamp = 1771698798 + +[[recents]] +id = "1471924185352634523" +name = "tournaments-and-comp-organizing" +kind = "Channel" +guild_id = "1269657100120883235" +timestamp = 1771698765 + +[[recents]] +id = "983732738681106483" +name = "redacted.riri" +kind = "DM" +timestamp = 1771698538 + +[[recents]] +id = "1347605447204536341" +name = "naql-2on2" +kind = "Channel" +guild_id = "859580534781902918" +timestamp = 1771696971 + +[[recents]] +id = "1211716152477229056" +name = "general" +kind = "Channel" +guild_id = "867621061667061770" +timestamp = 1771695787 + +[[recents]] +id = "1238955399437357088" +name = "foss-chat" +kind = "Channel" +guild_id = "1233157017070473378" +timestamp = 1771617770 + +[[recents]] +id = "1260070815597072436" +name = "YaBoySchnieds" +kind = "DM" +timestamp = 1771614783 + +[[recents]] +id = "1289319545034768511" +name = "general" +kind = "Channel" +guild_id = "1289319544455958592" +timestamp = 1771614500 + +[[recents]] +id = "1292656678050861201" +name = "bindijr" +kind = "DM" +timestamp = 1771566729 + +[[recents]] +id = "1348604031475384390" +name = "Flynn" +kind = "DM" +timestamp = 1771551743 + +[[recents]] +id = "1436019867907129446" +name = "GooroL" +kind = "DM" +timestamp = 1771551740 + +[[recents]] +id = "859580534781902920" +name = "general-mostly-quake-stuff" +kind = "Channel" +guild_id = "859580534781902918" +timestamp = 1771523690 diff --git a/picom.conf b/picom.conf new file mode 100644 index 0000000..6d003b9 --- /dev/null +++ b/picom.conf @@ -0,0 +1,149 @@ +# ╔══════════════════════════════════════════════════════════╗ +# ║ picom.conf ║ +# ╚══════════════════════════════════════════════════════════╝ + +# ── Backend ────────────────────────────────────────────────────────────────── + +backend = "glx"; + +# ── Vsync ──────────────────────────────────────────────────────────────────── + +vsync = true; + +# ── Custom shader (gradient window borders) ─────────────────────────────────── +# Place gradient-border.glsl in ~/.config/picom/ then uncomment: +window-shader-fg-rule = [ + "/home/lanceb/.config/picom/gradient-border.glsl:focused" +]; +glx-copy-from-front = false; +use-damage = true; + +# ── Corner Rounding ─────────────────────────────────────────────────────────── + +corner-radius = 5; + +# Exclude corners on certain window types (optional – comment out if unwanted) +rounded-corners-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "class_g = 'Polybar'", + "class_g = 'Rofi'" +]; + +# ── Opacity ─────────────────────────────────────────────────────────────────── + +# Unfocused windows get 0.8 opacity +inactive-opacity = 0.8; + +# Focused / active windows are fully opaque +active-opacity = 1.0; + +# Don't let applications override opacity via EWMH hints (set true to respect them) +inactive-opacity-override = false; + +# Exclude certain windows from opacity rules +opacity-rule = [ + "100:window_type = 'dock'", + "100:window_type = 'desktop'", + "100:class_g = 'Rofi'", + "100:_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'" +]; + +# ── Background Blur ─────────────────────────────────────────────────────────── + +blur-background = true; +blur-method = "dual_kawase"; +blur-strength = 5; + +# Don't blur behind the desktop itself +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; + +# ── Shadows ─────────────────────────────────────────────────────────────────── + +shadow = true; +shadow-radius = 12; +shadow-offset-x = -6; +shadow-offset-y = -6; +shadow-opacity = 0.6; + +shadow-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; + +# ── Fading ──────────────────────────────────────────────────────────────────── + +fading = true; +fade-in-step = 0.03; +fade-out-step = 0.03; +fade-delta = 5; + +# ── Window Type Tweaks ──────────────────────────────────────────────────────── + +wintypes: +{ + normal = { fade = true; shadow = true; }; + tooltip = { fade = true; shadow = false; opacity = 0.9; focus = true; }; + dock = { shadow = false; clip-shadow-above = true; }; + dnd = { shadow = false; }; + popup_menu = { opacity = 0.95; }; + dropdown_menu = { opacity = 0.95; }; +}; + +# ── Animations ─────────────────────────────────────────────────────────────── + +animations = ({ + triggers = ["open", "show"]; + + scale-x = { + curve = "cubic-bezier(0.22, 1, 0.36, 1)"; + duration = 0.18; + start = 0.85; + end = 1; + }; + + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + +}, { + triggers = ["close", "hide"]; + + scale-x = { + curve = "cubic-bezier(0.4, 0, 1, 1)"; + duration = 0.15; + start = 1; + end = 1.1; + }; + + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + + opacity = { + curve = "linear"; + duration = 0.15; + start = "window-raw-opacity-before"; + end = 0; + }; + + shadow-opacity = "opacity"; +}); + diff --git a/picom/gradient-border.glsl b/picom/gradient-border.glsl new file mode 100644 index 0000000..0c2c25c --- /dev/null +++ b/picom/gradient-border.glsl @@ -0,0 +1,58 @@ +#version 330 + +// ── Gradient border shader for picom ───────────────────────────────────────── +// Blends a diagonal gradient (top-left → bottom-right) over the window border. +// +// COLOR_A : top-left colour — #7B2FBE (purple) +// COLOR_B : bottom-right — #2FB8BE (teal) +// +// To change colours: convert hex → float by dividing each channel by 255. + +// ── Tuneable constants ──────────────────────────────────────────────────────── + +const float BORDER_WIDTH = 4.0; // Border band thickness in pixels +const float BORDER_OPACITY = 0.95; // How strongly the gradient is applied + +// COLOR_A: #7B2FBE (vibrant purple) +const vec3 COLOR_A = vec3(0.106, 0.992, 0.612); + +// COLOR_B: #2FB8BE (cyan-teal) +const vec3 COLOR_B = vec3(0.651, 1.0, 0.788); + +// ── Picom-provided ──────────────────────────────────────────────────────────── + +in vec2 texcoord; // Fragment texture coordinate (in pixels) +uniform sampler2D tex; // Window texture + +// Picom's built-in post-processing (opacity, rounded corners, etc.) +vec4 default_post_processing(vec4 c); + +// ── Entry point ─────────────────────────────────────────────────────────────── + +vec4 window_shader() { + // Sample the original window pixel + vec4 c = texelFetch(tex, ivec2(texcoord), 0); + + // Derive texture size from the sampler + vec2 size = vec2(textureSize(tex, 0)); + + // Normalised UV (0,0) top-left → (1,1) bottom-right + vec2 uv = texcoord / size; + + // Diagonal gradient factor + float t = (uv.x + uv.y) * 0.5; + vec3 gradient = mix(COLOR_A, COLOR_B, t); + + // Border mask: 1.0 on the edge band, 0.0 in the interior + float left = smoothstep(0.0, BORDER_WIDTH, texcoord.x); + float right = smoothstep(0.0, BORDER_WIDTH, size.x - texcoord.x); + float top = smoothstep(0.0, BORDER_WIDTH, texcoord.y); + float bottom = smoothstep(0.0, BORDER_WIDTH, size.y - texcoord.y); + float mask = 1.0 - (left * right * top * bottom); + + // Blend gradient onto border region only + c.rgb = mix(c.rgb, gradient, mask * BORDER_OPACITY); + + // Let picom handle opacity, rounded corners, etc. + return default_post_processing(c); +} diff --git a/polybar/config.ini b/polybar/config.ini new file mode 100644 index 0000000..4f50609 --- /dev/null +++ b/polybar/config.ini @@ -0,0 +1,1587 @@ +# ____ _____ +# | _ \_ _| Derek Taylor (DistroTube) +# | | | || | http://www.youtube.com/c/DistroTube +# | |_| || | http://www.gitlab.com/dwt1/ +# |____/ |_| + +[global/wm] +;https://github.com/jaagr/polybar/wiki/Configuration#global-wm-settings +margin-top = 0 +margin-bottom = 0 + +[settings] +;https://github.com/jaagr/polybar/wiki/Configuration#application-settings +throttle-output = 5 +throttle-output-for = 10 +screenchange-reload = true +compositing-background = over +compositing-foreground = over +compositing-overline = over +compositing-underline = over +compositing-border = over + +; Define fallback values used by all module formats +format-foreground = #FF0000 +format-background = #00FF00 +format-underline = +format-overline = +format-spacing = +format-padding = +format-margin = +format-offset = + +[colors] +; To change color scheme, change the value inside ${color-scheme.colorXX}. +; The following color schemes can be used: +; 1. DoomOne +; 2. Dracula +; 3. GruvboxDark +; 4. MonokaiPro +; 5. Nord +; 6. OceanicNext +; 7. Palenight +; 8. SolarizedDark +; 9. SolarizedLight +; 10. TomorrowNight + +background = ${Nord.background} +foreground = ${Nord.foreground} +color0 = ${Nord.color0} +color1 = ${Nord.color1} +color2 = ${Nord.color2} +color3 = ${Nord.color3} +color4 = ${Nord.color4} +color5 = ${Nord.color5} +color6 = ${Nord.color6} +color7 = ${Nord.color7} +color8 = ${Nord.color8} +color9 = ${Nord.color9} +color10 = ${Nord.color10} +color11 = ${Nord.color11} +color12 = ${Nord.color12} +color13 = ${Nord.color13} +color14 = ${Nord.color14} +color15 = ${Nord.color15} +alert = ${Nord.color1} + +[DoomOne] +background = #dd282c34 +foreground = #bbc2cf +color0 = #1c1f24 +color1 = #ff6c6b +color2 = #98be65 +color3 = #da8548 +color4 = #51afef +color5 = #c678dd +color6 = #5699af +color7 = #abb2bf +color8 = #5b6268 +color9 = #da8548 +color10 = #4db5bd +color11 = #ecbe7b +color12 = #3071db +color13 = #a9a1e1 +color14 = #46d9ff +color15 = #dfdfdf + +[Dracula] +background = #282a36 +foreground = #f8f8f2 +color0 = #000000 +color1 = #ff5555 +color2 = #50fa7b +color3 = #f1fa8c +color4 = #bd93f9 +color5 = #ff79c6 +color6 = #8be9fd +color7 = #bfbfbf +color8 = #4d4d4d +color9 = #ff6e67 +color10 = #5af78e +color11 = #f4f99d +color12 = #caa9fa +color13 = #ff92d0 +color14 = #9aedfe +color15 = #e6e6e6 + +[GruvboxDark] +background = #282828 +foreground = #ebdbb2 +color0 = #282828 +color1 = #cc241d +color2 = #98971a +color3 = #d79921 +color4 = #458588 +color5 = #b16286 +color6 = #689d6a +color7 = #a89984 +color8 = #928374 +color9 = #fb4934 +color10 = #b8bb26 +color11 = #fabd2f +color12 = #83a598 +color13 = #d3869b +color14 = #8ec07c +color15 = #ebdbb2 + +[MonokaiPro] +background = #2D2A2E +foreground = #FCFCFA +color0 = #403E41 +color1 = #FF6188 +color2 = #A9DC76 +color3 = #FFD866 +color4 = #FC9867 +color5 = #AB9DF2 +color6 = #78DCE8 +color7 = #FCFCFA +color8 = #727072 +color9 = #FF6188 +color10 = #A9DC76 +color11 = #FFD866 +color12 = #FC9867 +color13 = #AB9DF2 +color14 = #78DCE8 +color15 = #FCFCFA + +[Nord] +background = #101010 +foreground = #cccccc +color0 = #2a2a2a +color8 = #4a4a4a +color1 = #deeeed +color9 = #708090 +color2 = #1bfd9c +color10 = #a6ffc9 +color3 = #b4b4b4 +color11 = #dddddd +color4 = #7a7a7a +color12 = #aaaaaa +color5 = #66b2b2 +color13 = #49c4c4 +color6 = #cccccc +color14 = #d3d3d3 +color7 = #f1f1f1 +color15 = #ffffff + +[OceanicNext] +background = #1b2b34 +foreground = #d8dee9 +color0 = #29414f +color1 = #ec5f67 +color2 = #99c794 +color3 = #fac863 +color4 = #6699cc +color5 = #c594c5 +color6 = #5fb3b3 +color7 = #65737e +color8 = #405860 +color9 = #ec5f67 +color10 = #99c794 +color11 = #fac863 +color12 = #6699cc +color13 = #c594c5 +color14 = #5fb3b3 +color15 = #adb5c0 + +[Palenight] +background = #292d3e +foreground = #d0d0d0 +color0 = #292d3e +color1 = #f07178 +color2 = #c3e88d +color3 = #ffcb6b +color4 = #82aaff +color5 = #c792ea +color6 = #89ddff +color7 = #d0d0d0 +color8 = #434758 +color9 = #ff8b92 +color10 = #ddffa7 +color11 = #ffe585 +color12 = #9cc4ff +color13 = #e1acff +color14 = #a3f7ff +color15 = #ffffff + +[SolarizedDark] +background = #002b36 +foreground = #839496 +color0 = #073642 +color1 = #dc322f +color2 = #859900 +color3 = #b58900 +color4 = #268bd2 +color5 = #d33682 +color6 = #2aa198 +color7 = #eee8d5 +color8 = #002b36 +color9 = #cb4b16 +color10 = #586e75 +color11 = #657b83 +color12 = #839496 +color13 = #6c71c4 +color14 = #93a1a1 +color15 = #fdf6e3 + +[SolarizedLight] +background = #fdf6e3 +foreground = #657b83 +color0 = #073642 +color1 = #dc322f +color2 = #859900 +color3 = #b58900 +color4 = #268bd2 +color5 = #d33682 +color6 = #2aa198 +color7 = #eee8d5 +color8 = #002b36 +color9 = #cb4b16 +color10 = #586e75 +color11 = #657b83 +color12 = #839496 +color13 = #fdf6e3 +color14 = #93a1a1 +color15 = #6c71c4 + +[TomorrowNight] +background = #1d1f21 +foreground = #c5c8c6 +color0 = #1d1f21 +color1 = #cc6666 +color2 = #b5bd68 +color3 = #e6c547 +color4 = #81a2be +color5 = #b294bb +color6 = #70c0ba +color7 = #373b41 +color8 = #666666 +color9 = #ff3334 +color10 = #9ec400 +color11 = #f0c674 +color12 = #81a2be +color13 = #b77ee0 +color14 = #54ced6 +color15 = #282a2e + +################################################################################ +############ MAINBAR-BSPWM ############ +################################################################################ + +[bar/mainbar-bspwm] +monitor = ${env:MONITOR} +;monitor-fallback = HDMI1 +width = 100% +height = 20 +;offset-x = 1% +;offset-y = 1% +radius = 0.0 +fixed-center = true +bottom = false +separator = + +background = ${Nord.background} +foreground = ${Nord.foreground} + +line-size = 2 +line-color = #f00 + +wm-restack = bspwm +override-redirect = true + +; Enable support for inter-process messaging +; See the Messaging wiki page for more details. +enable-ipc = true + +border-size = 0 +;border-left-size = 0 +;border-right-size = 25 +;border-top-size = 0 +;border-bottom-size = 25 +border-color = #00000000 + +padding-left = 1 +padding-right = 1 + +module-margin-left = 0 +module-margin-right = 0 + +font-0 = "Ubuntu:style=Bold:size=9;2" +font-1 = "UbuntuMono Nerd Font:style=Bold:size=18;3" +font-2 = "Font Awesome 6 Free:style=Regular:pixelsize=8;1" +font-3 = "Font Awesome 6 Free:style=Solid:pixelsize=8;1" +font-4 = "Font Awesome 6 Brands:pixelsize=8;1" + +modules-left = bspwm xwindow +modules-center = +modules-right = kernel cpu2 memory2 filesystem uptime arch-aur-updates volume date + +tray-detached = false +tray-offset-x = 0 +tray-offset-y = 0 +tray-position = right +tray-padding = 4 +tray-maxsize = 20 +tray-scale = 1.0 +tray-background = ${colors.background} + +scroll-up = bspwm-desknext +scroll-down = bspwm-deskprev + +################################################################################ +############ MAINBAR-I3 ############ +################################################################################ + +[bar/mainbar-i3] +;https://github.com/jaagr/polybar/wiki/Configuration + +monitor = ${env:MONITOR} +;monitor-fallback = HDMI1 +monitor-strict = false +override-redirect = false +bottom = false +fixed-center = true +width = 100% +height = 20 +;offset-x = 1% +;offset-y = 1% + +background = ${Nord.background} +foreground = ${Nord.foreground} + +; Background gradient (vertical steps) +; background-[0-9]+ = #aarrggbb +;background-0 = + +radius = 0.0 +line-size = 2 +line-color = #000000 + +border-size = 0 +;border-left-size = 25 +;border-right-size = 25 +;border-top-size = 0 +;border-bottom-size = 25 +border-color = #000000 + +padding-left = 1 +padding-right = 1 + +module-margin-left = 0 +module-margin-right = 0 + +font-0 = "Ubuntu:style=Bold:size=9;2" +font-1 = "UbuntuMono Nerd Font:style=Bold:size=18;3" +font-2 = "Font Awesome 6 Free:style=Regular:pixelsize=8;1" +font-3 = "Font Awesome 6 Free:style=Solid:pixelsize=8;1" +font-4 = "Font Awesome 6 Brands:pixelsize=8;1" + +modules-left = i3 xwindow +modules-center = +modules-right = arrow1 networkspeedup networkspeeddown arrow2 memory2 arrow3 cpu2 arrow2 volume arrow3 arch-aur-updates arrow2 date + +separator = +;dim-value = 1.0 + +tray-position = right +tray-detached = false +tray-maxsize = 20 +tray-background = ${colors.background} +tray-offset-x = 0 +tray-offset-y = 0 +tray-padding = 4 +tray-scale = 1.0 + +#i3: Make the bar appear below windows +;wm-restack = i3 +;override-redirect = true + +; Enable support for inter-process messaging +; See the Messaging wiki page for more details. +enable-ipc = true + +; Fallback click handlers that will be called if +; there's no matching module handler found. +click-left = +click-middle = +click-right = +scroll-up = i3wm-wsnext +scroll-down = i3wm-wsprev +double-click-left = +double-click-middle = +double-click-right = + +; Requires polybar to be built with xcursor support (xcb-util-cursor) +; Possible values are: +; - default : The default pointer as before, can also be an empty string (default) +; - pointer : Typically in the form of a hand +; - ns-resize : Up and down arrows, can be used to indicate scrolling +cursor-click = +cursor-scroll = + +################################################################################ +############ MAINBAR-HERBST ############ +################################################################################ + +[bar/mainbar-herbst] +monitor = ${env:MONITOR} +;monitor-fallback = HDMI1 +width = 100% +height = 20 +;offset-x = 1% +;offset-y = 1% +radius = 0.0 +fixed-center = true +bottom = false +separator = + +background = ${DoomOne.background} +foreground = ${DoomOne.foreground} + +line-size = 2 +line-color = #f00 + +override-redirect = true + +; Enable support for inter-process messaging +; See the Messaging wiki page for more details. +enable-ipc = true + +border-size = 0 +;border-left-size = 0 +;border-right-size = 25 +;border-top-size = 0 +;border-bottom-size = 25 +border-color = #00000000 + +padding-left = 1 +padding-right = 1 + +module-margin-left = 0 +module-margin-right = 0 + +font-0 = "Ubuntu:style=Bold:size=9;2" +font-1 = "UbuntuMono Nerd Font:style=Bold:size=18;3" +font-2 = "Font Awesome 6 Free:style=Regular:pixelsize=8;1" +font-3 = "Font Awesome 6 Free:style=Solid:pixelsize=8;1" +font-4 = "Font Awesome 6 Brands:pixelsize=8;1" + +modules-left = xmenu ewmh xwindow +modules-center = +modules-right = arrow1 networkspeedup networkspeeddown arrow2 memory2 arrow3 cpu2 arrow2 volume arrow3 arch-aur-updates arrow2 date + +tray-detached = false +tray-offset-x = 0 +tray-offset-y = 0 +tray-position = right +tray-padding = 2 +tray-maxsize = 20 +tray-scale = 1.0 +tray-background = ${colors.background} + +scroll-up = bspwm-desknext +scroll-down = bspwm-deskprev + +################################################################################ +############ MAINBAR-XMONAD ############ +################################################################################ + +[bar/mainbar-xmonad] +monitor = ${env:MONITOR} +;monitor-fallback = HDMI1 +monitor-strict = false +override-redirect = false +wm-restack = generic +width = 100% +height = 22 +;offset-x = 1% +;offset-y = 1% +radius = 0.0 +fixed-center = true +bottom = false +separator = + +background = ${Nord.background} +foreground = ${Nord.foreground} + +line-size = 2 +line-color = #f00 + +;border-size = 2 +;border-left-size = 25 +;border-right-size = 25 +;border-top-size = 0 +;border-bottom-size = 25 +border-color = #00000000 + +padding-left = 0 +; padding-right adds padding between 'date' and the edge of screen and/or systray. +padding-right = 1 + +; Enable support for inter-process messaging +; See the Messaging wiki page for more details. +enable-ipc = true + +font-0 = "Ubuntu:style=Bold:size=9;2" +font-1 = "UbuntuMono Nerd Font:style=Bold:size=18;3" +font-2 = "Font Awesome 6 Free:style=Regular:pixelsize=8;1" +font-3 = "Font Awesome 6 Free:style=Solid:pixelsize=8;1" +font-4 = "Font Awesome 6 Brands:pixelsize=8;1" + +modules-left = ewmh xwindow +modules-center = +modules-right = kernel cpu2 memory2 filesystem uptime battery arch-aur-updates volume date + +tray-detached = false +tray-offset-x = 0 +tray-offset-y = 0 +tray-padding = 2 +tray-maxsize = 20 +tray-scale = 1.0 +tray-position = right +tray-background = ${colors.background} + +################################################################################ +############ MODULE I3 ############ +################################################################################ + +[module/i3] +;https://github.com/jaagr/polybar/wiki/Module:-i3 +type = internal/i3 + +; Only show workspaces defined on the same output as the bar +; Useful if you want to show monitor specific workspaces +; on different bars. Default: false +pin-workspaces = true + +; This will split the workspace name on ':' +; Default: false +strip-wsnumbers = false + +; Sort the workspaces by index instead of the default +; sorting that groups the workspaces by output +; Default: false +index-sort = false + +; Create click handler used to focus workspace +; Default: true +enable-click = true + +; Create scroll handlers used to cycle workspaces +; Default: true +enable-scroll = true + +; Wrap around when reaching the first/last workspace +; Default: true +wrapping-scroll = false + +; Set the scroll cycle direction +; Default: true +reverse-scroll = false + +; Use fuzzy (partial) matching on labels when assigning +; icons to workspaces +; Example: code;♚ will apply the icon to all workspaces +; containing 'code' in the label +; Default: false +fuzzy-match = false + +;extra icons to choose from +;http://fontawesome.io/cheatsheet/ +; v + +ws-icon-0 = 1; +ws-icon-1 = 2; +ws-icon-2 = 3; +ws-icon-3 = 4; +ws-icon-4 = 5; +ws-icon-5 = 6; +ws-icon-6 = 7; +ws-icon-7 = 8; +ws-icon-8 = 9; +ws-icon-9 = 10; +ws-icon-default = " " + +; Available tags: +; <label-state> (default) - gets replaced with <label-(focused|unfocused|visible|urgent)> +; <label-mode> (default) +format = <label-state> <label-mode> + +label-mode = %mode% +label-mode-padding = 2 +label-mode-foreground = #000000 +label-mode-background = #FFBB00 + +; Available tokens: +; %name% +; %icon% +; %index% +; %output% +; Default: %icon% %name% +; focused = Active workspace on focused monitor +label-focused = %icon% %name% +label-focused-background = ${colors.background} +label-focused-foreground = ${colors.foreground} +label-focused-underline = #AD69AF +label-focused-padding = 2 + +; Available tokens: +; %name% +; %icon% +; %index% +; Default: %icon% %name% +; unfocused = Inactive workspace on any monitor +label-unfocused = %icon% %name% +label-unfocused-padding = 2 +label-unfocused-background = ${colors.background} +label-unfocused-foreground = ${colors.foreground} +label-unfocused-underline = + +; visible = Active workspace on unfocused monitor +label-visible = %icon% %name% +label-visible-background = ${self.label-focused-background} +label-visible-underline = ${self.label-focused-underline} +label-visible-padding = 2 + +; Available tokens: +; %name% +; %icon% +; %index% +; Default: %icon% %name% +; urgent = Workspace with urgency hint set +label-urgent = %icon% %name% +label-urgent-background = ${self.label-focused-background} +label-urgent-foreground = #db104e +label-urgent-padding = 2 + +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +################################################################################ +############ MODULE BSPWM ############ +################################################################################ + +[module/bspwm] +type = internal/bspwm +enable-click = true +enable-scroll = true +reverse-scroll = true +pin-workspaces = true + +ws-icon-0 = 1;1: dev +ws-icon-1 = 2;2: www +ws-icon-2 = 3;3: sys +ws-icon-3 = 4;4: doc +ws-icon-4 = 5;5: vbox +ws-icon-5 = 6;6: chat +ws-icon-6 = 7;7: mus +ws-icon-7 = 8;8: vid +ws-icon-8 = 9;9: gfx +ws-icon-9 = 10; +; ws-icon-0 = 1; +; ws-icon-1 = 2; +; ws-icon-2 = 3; +; ws-icon-3 = 4; +; ws-icon-4 = 5; +; ws-icon-5 = 6; +; ws-icon-6 = 7; +; ws-icon-7 = 8; +; ws-icon-8 = 9; +; ws-icon-9 = 10; +ws-icon-default = " " + +format = <label-state> <label-mode> + +label-focused = %icon% +label-focused-foreground = ${colors.foreground} +label-focused-background = ${colors.background} +label-focused-underline= ${colors.color5} +label-focused-padding = 1 +label-focused-margin = 2 + +label-occupied = %icon% +label-occupied-foreground = ${colors.foreground} +label-occupied-background = ${colors.background} +label-occupied-underline= ${colors.color2} +label-occupied-padding = 1 +label-occupied-margin = 2 + +label-urgent = %icon% +label-urgent-foreground = ${colors.foreground} +label-urgent-background = ${colors.alert} +label-urgent-underline = ${colors.alert} +label-urgent-padding = 1 +label-urgent-margin = 2 + +label-empty = %icon% +label-empty-foreground = ${colors.foreground} +label-empty-background = ${colors.background} +label-empty-padding = 1 +label-empty-margin = 2 + +label-monocle = " [MONOCLE] " +label-monocle-foreground = ${colors.color3} +label-tiled = " [TILED] " +label-tiled-foreground = ${colors.color3} +label-fullscreen = " [FULLSCREEN] " +label-fullscreen-foreground = ${colors.color3} +label-floating = " (FLOATING) " +label-floating-foreground = ${colors.color4} +label-pseudotiled = " [PSEUDOTILED] " +label-pseudotiled-foreground = ${colors.color3} +label-locked = " " +label-locked-foreground = ${colors.foreground} +label-sticky = " " +label-sticky-foreground = ${colors.foreground} +label-private = " " +label-private-foreground = ${colors.foreground} + +; Separator in between workspaces +;label-separator = | +;label-separator-padding = 10 +;label-separator-foreground = #ffb52a + +format-foreground = ${colors.foreground} +format-background = ${colors.background} + + +############################################################################### +############ MODULES ARROWS ############ +############################################################################### + +[module/arrow1] +; grey to Blue +type = custom/text +content = "%{T2} %{T-}" +content-font = 2 +content-foreground = #8d62a9 +content-background = #292d3e + +[module/arrow2] +; grey to Blue +type = custom/text +content = "%{T2} %{T-}" +content-font = 2 +content-foreground = #668bd7 +content-background = #8d62a9 + +[module/arrow3] +; grey to Blue +type = custom/text +content = "%{T2} %{T-}" +content-font = 2 +content-foreground = #8b62a9 +content-background = #668bd7 + +[module/arch-aur-updates] +type = custom/script +exec = ~/.config/polybar/scripts/check-all-updates.sh +interval = 1000 +label = Updates: %output% +format-prefix = "🗘 " +format-prefix-foreground = ${colors.color2} +format-foreground = ${colors.color2} +format-background = ${colors.background} +format-underline = ${colors.color2} +format-margin = 2 +format-padding = 0 + +[module/aur-updates] +type = custom/script +exec = cower -u | wc -l +interval = 1000 +label = Aur: %output% +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-prefix = "🗘 " +format-prefix-foreground = #FFBB00 +format-underline = #FFBB00 + +[module/backlight-acpi] +inherit = module/xbacklight +type = internal/backlight +card = intel_backlight +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-prefix-foreground = #7D49B6 +format-prefix-underline = #7D49B6 +format-underline = #7D49B6 + +[module/backlight] +;https://github.com/jaagr/polybar/wiki/Module:-backlight +type = internal/backlight + +; Use the following command to list available cards: +; $ ls -1 /sys/class/backlight/ +card = intel_backlight + +; Available tags: +; <label> (default) +; <ramp> +; <bar> +format = <label> +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +; Available tokens: +; %percentage% (default) +label = %percentage%% + +; Only applies if <ramp> is used +ramp-0 = 🌕 +ramp-1 = 🌔 +ramp-2 = 🌓 +ramp-3 = 🌒 +ramp-4 = 🌑 + +; Only applies if <bar> is used +bar-width = 10 +bar-indicator = | +bar-fill = ─ +bar-empty = ─ + +[module/battery] +;https://github.com/jaagr/polybar/wiki/Module:-battery +type = internal/battery +battery = BAT0 +adapter = AC0 +full-at = 100 + +format-charging = <animation-charging> <label-charging> +label-charging = %percentage%% +format-charging-foreground = ${colors.foreground} +format-charging-background = ${colors.background} +format-chaging-underline = #a3c725 + +format-discharging = <ramp-capacity> <label-discharging> +label-discharging = %percentage%% +format-discharging-underline = #c7ae25 +format-discharging-foreground = ${colors.foreground} +format-discharging-background = ${colors.background} + +format-full-prefix = " " +format-full-prefix-foreground = #a3c725 +format-full-underline = #a3c725 +format-full-foreground = ${colors.foreground} +format-full-background = ${colors.background} + +ramp-capacity-0 = +ramp-capacity-1 = +ramp-capacity-2 = +ramp-capacity-3 = +ramp-capacity-4 = +ramp-capacity-foreground = #c7ae25 + +animation-charging-0 = +animation-charging-1 = +animation-charging-2 = +animation-charging-3 = +animation-charging-4 = +animation-charging-foreground = #a3c725 +animation-charging-framerate = 750 + +[module/compton] +;https://github.com/jaagr/polybar/wiki/User-contributed-modules#compton +type = custom/script +exec = ~/.config/polybar/scripts/compton.sh +click-left = ~/.config/polybar/scripts/compton-toggle.sh +interval = 5 +format-foreground = ${colors.foreground} +format-background = ${colors.background} +;format-underline = #00AF02 + +[module/cpu1] +;https://github.com/jaagr/polybar/wiki/Module:-cpu +type = internal/cpu +; Seconds to sleep between updates +; Default: 1 +interval = 1 +format-foreground = ${colors.foreground} +format-background = ${colors.background} +; +format-prefix = " " +format-prefix-foreground = #cd1f3f +format-underline = #645377 + +; Available tags: +; <label> (default) +; <bar-load> +; <ramp-load> +; <ramp-coreload> +format = <label> <ramp-coreload> + +format-padding = 2 + +; Available tokens: +; %percentage% (default) - total cpu load +; %percentage-cores% - load percentage for each core +; %percentage-core[1-9]% - load percentage for specific core +label-font = 3 +label = CPU: %percentage%% +ramp-coreload-0 = ▁ +ramp-coreload-0-font = 3 +ramp-coreload-0-foreground = #aaff77 +ramp-coreload-1 = ▂ +ramp-coreload-1-font = 3 +ramp-coreload-1-foreground = #aaff77 +ramp-coreload-2 = ▃ +ramp-coreload-2-font = 3 +ramp-coreload-2-foreground = #aaff77 +ramp-coreload-3 = ▄ +ramp-coreload-3-font = 3 +ramp-coreload-3-foreground = #aaff77 +ramp-coreload-4 = ▅ +ramp-coreload-4-font = 3 +ramp-coreload-4-foreground = #fba922 +ramp-coreload-5 = ▆ +ramp-coreload-5-font = 3 +ramp-coreload-5-foreground = #fba922 +ramp-coreload-6 = ▇ +ramp-coreload-6-font = 3 +ramp-coreload-6-foreground = #ff5555 +ramp-coreload-7 = █ +ramp-coreload-7-font = 3 +ramp-coreload-7-foreground = #ff5555 + +[module/cpu2] +;https://github.com/jaagr/polybar/wiki/Module:-cpu +type = internal/cpu +; Seconds to sleep between updates +; Default: 1 +interval = 1 +format-prefix = "💻 " +format-prefix-foreground = ${colors.color4} + +; Available tags: +; <label> (default) +; <bar-load> +; <ramp-load> +; <ramp-coreload> +format = <label> +format-foreground = ${colors.color4} +format-background = ${colors.background} +format-underline = ${colors.color4} +format-margin = 2 +format-padding = 0 +label-font = 1 + + +; Available tokens: +; %percentage% (default) - total cpu load +; %percentage-cores% - load percentage for each core +; %percentage-core[1-9]% - load percentage for specific core +label = Cpu %percentage:3%% + +[module/date] +;https://github.com/jaagr/polybar/wiki/Module:-date +type = internal/date +; Seconds to sleep between updates +interval = 5 +; See "http://en.cppreference.com/w/cpp/io/manip/put_time" for details on how to format the date string +; NOTE: if you want to use syntax tags here you need to use %%{...} +date = " %a %b %d, %Y" +date-alt = " %a %b %d, %Y" +time = %l:%M%p +time-alt = %l:%M%p +format-prefix = "📅 " +format-prefix-foreground = ${colors.color4} +format-foreground = ${colors.color4} +format-background = ${colors.background} +format-underline = ${colors.color4} +format-margin = 2 +format-padding = 0 +label = "%date% %time% " + +[module/ewmh] +type = internal/xworkspaces + +pin-workspaces = true +enable-click = true +enable-scroll = false +reverse-scroll = true + +;extra icons to choose from +;http://fontawesome.io/cheatsheet/ +; v + +icon-0 = 1; +icon-1 = 2; +icon-2 = 3; +icon-3 = 4; +icon-4 = 5; +icon-5 = 6; +icon-6 = 7; +icon-7 = 8; +#icon-8 = 9; +#icon-9 = 10; +#icon-default = " " +format = <label-state> +label-monitor = %name% + +label-active = %name% +label-active-foreground = ${colors.foreground} +label-active-background = ${colors.background} +label-active-padding = 1 +label-active-underline = ${colors.color5} +label-active-margin = 2 + +label-occupied = %name% +label-occupied-background = ${colors.background} +label-occupied-padding = 1 +label-occupied-underline = ${colors.color12} +label-occupied-margin = 2 + +label-urgent = %name% +label-urgent-foreground = ${colors.foreground} +label-urgent-background = ${colors.alert} +label-urgent-underline = ${colors.alert} +label-urgent-padding = 1 +label-urgent-margin = 2 + +label-empty = %name% +label-empty-foreground = ${colors.foreground} +label-empty-padding = 1 +label-empty-margin = 2 + +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +[module/filesystem] +;https://github.com/jaagr/polybar/wiki/Module:-filesystem +type = internal/fs +; Mountpoints to display +mount-0 = / +;mount-1 = /home +;mount-2 = /var +; +; Seconds to sleep between updates. Default: 30 +interval = 30 +; Display fixed precision values. Default: false +fixed-values = false +; Spacing between entries. Default: 2 +spacing = 4 + +; Available tags: +; <label-mounted> (default) +; <bar-free> +; <bar-used> +; <ramp-capacity> +format-mounted = <label-mounted> +format-mounted-foreground = ${colors.color1} +format-mounted-background = ${colors.background} +format-mounted-underline = ${colors.color1} +format-mounted-margin = 2 +format-mounted-padding = 0 + +; Available tokens: +; %mountpoint% +; %type% +; %fsname% +; %percentage_free% +; %percentage_used% +; %total% +; %free% +; %used% +; Default: %mountpoint% %percentage_free%% +label-mounted = hdd: %free% free + +; Available tokens: +; %mountpoint% +; Default: %mountpoint% is not mounted +label-unmounted = %mountpoint% not mounted +format-unmounted-foreground = ${colors.foreground} +format-unmounted-background = ${colors.background} +;format-unmounted-underline = ${colors.alert} + +[module/kernel] +type = custom/script +exec = uname -r +tail = false +interval = 1024 +format-prefix = " 🤖 " +format-prefix-foreground = ${colors.color2} +format-foreground = ${colors.color2} +format-background = ${colors.background} +format-underline = ${colors.color2} +format-margin = 2 +format-padding = 0 + +[module/jgmenu] +type = custom/script +interval = 120 +exec = echo "ArcoLinux" +click-left = "jgmenu_run >/dev/null 2>&1 &" +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +[module/load-average] +type = custom/script +exec = uptime | grep -ohe 'load average[s:][: ].*' | awk '{ print $3" "$4" "$5"," }' | sed 's/,//g' +interval = 100 + +;HOW TO SET IT MINIMAL 10 CHARACTERS - HIDDEN BEHIND SYSTEM ICONS +;label = %output% +label = %output:10% +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-prefix = " " +format-prefix-foreground = #62FF00 +format-underline = #62FF00 + +[module/memory1] +;https://github.com/jaagr/polybar/wiki/Module:-memory +type = internal/memory +interval = 1 +; Available tokens: +; %percentage_used% (default) +; %percentage_free% +; %gb_used% +; %gb_free% +; %gb_total% +; %mb_used% +; %mb_free% +; %mb_total% +label = %percentage_used%% +label-active-font = 2 +bar-used-indicator = +bar-used-width = 10 +bar-used-foreground-0 = #3384d0 +bar-used-fill = +bar-used-empty = +bar-used-empty-foreground = #ffffff + +format = <label> <bar-used> +format-prefix = " " +format-prefix-foreground = #3384d0 +format-underline = #4B5665 +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +[module/memory2] +;https://github.com/jaagr/polybar/wiki/Module:-memory +type = internal/memory +interval = 1 +; Available tokens: +; %percentage_used% (default) +; %percentage_free% +; %gb_used% +; %gb_free% +; %gb_total% +; %mb_used% +; %mb_free% +; %mb_total% +label = %percentage_used%% +label-active-font = 2 + +format = Mem <label> +format-prefix = "💾 " +format-prefix-foreground = ${colors.color11} +format-foreground = ${colors.color11} +format-background = ${colors.background} +format-underline = ${colors.color11} +format-margin = 2 +format-padding = 0 + +[module/mpd] +;https://github.com/jaagr/polybar/wiki/Module:-mpd +type = internal/mpd +;format-online = "<label-song> <icon-prev> <icon-stop> <toggle> <icon-next>" +format-online = "<label-song> <bar-progress>" +;format-online = "<label-song> <bar-progress> <icon-prev> <icon-stop> <toggle> <icon-next>" +icon-prev = +icon-stop = +icon-play = +icon-pause = +icon-next = +label-song-maxlen = 40 +label-song-ellipsis = true +bar-progress-width = 10 +bar-progress-indicator = +bar-progress-fill = +bar-progress-empty = +bar-progress-fill-foreground = #ff0 +bar-progress-fill-background = ${colors.background} +bar-progress-indicator-foreground = ${colors.foreground} +format-online-foreground = ${colors.foreground} +format-online-background = ${colors.background} + +[module/networkspeed] +;https://github.com/jaagr/polybar/wiki/Module:-network +type = internal/network +;interface = wlp3s0 +;interface = enp14s0 +;interface = enp0s31f6 +interface = enp6s0 +label-connected = "%upspeed:7% ↓ %downspeed:7%" +format-connected = <label-connected> +format-connected-prefix = "↑ " +format-connected-prefix-foreground = ${colors.color2} +format-connected-foreground = ${colors.color2} +format-connected-background = ${colors.background} +format-connected-underline = ${colors.color2} +format-connected-margin = 2 +format-connected-padding = 0 + +[module/networkspeedup] +;https://github.com/jaagr/polybar/wiki/Module:-network +type = internal/network +;interface = wlp3s0 +;interface = enp14s0 +;interface = enp0s31f6 +interface = enp6s0 +label-connected = "%upspeed:7%" +format-connected = <label-connected> +format-connected-prefix = "↑ " +format-connected-prefix-foreground = ${colors.color6} +format-connected-foreground = ${colors.color6} +format-connected-background = ${colors.background} + +[module/networkspeeddown] +;https://github.com/jaagr/polybar/wiki/Module:-network +type = internal/network +;interface = wlp3s0 +;interface = enp14s0 +;interface = enp0s31f6 +interface = enp6s0 +label-connected = "%downspeed:7%" +format-connected = <label-connected> +format-connected-prefix = " ↓ " +format-connected-prefix-foreground = ${colors.color6} +format-connected-foreground = ${colors.color6} +format-connected-background = ${colors.background} +format-connected-margin = 6 + +[module/pacman-updates] +type = custom/script +;exec = pacman -Qu | wc -l +exec = checkupdates | wc -l +interval = 1000 +label = Repo: %output% +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-prefix = "🗘 " +format-prefix-foreground = ${colors.color2} +format-underline = ${colors.color2} +format-margin = 2 +format-padding = 0 + +[module/pavolume] +type = custom/script +tail = true +label = %output% +format-prefix = " 🔊 " +format-prefix-foreground = ${colors.color5} +exec = ~/.config/polybar/scripts/pavolume.sh --listen +click-right = exec pavucontrol +click-left = ~/.config/polybar/scripts/pavolume.sh --togmute +scroll-up = ~/.config/polybar/scripts/pavolume.sh --up +scroll-down = ~/.config/polybar/scripts/pavolume.sh --down +format-foreground = ${colors.color5} +format-background = ${colors.background} +format-underline = ${colors.color5} +format-margin = 2 +format-padding = 0 + +[module/pub-ip] +;https://linuxconfig.org/polybar-a-better-wm-panel-for-your-linux-system +type = custom/script +exec = ~/.config/polybar/scripts/pub-ip.sh +interval = 100 +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-underline = #FFBB00 +label = %output% +format-prefix = " " +format-prefix-foreground = #FFBB00 + +[module/release] +type = custom/script +exec = "(lsb_release -d | awk '{print \$2}' ; echo ' ' ; lsb_release -r | awk '{print \$2}') | tr -d '\\n'" +interval = 6000 + +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-prefix = " " +format-prefix-foreground = #62FF00 +format-underline = #62FF00 + +[module/sep] +; alternative separator +type = custom/text +content = +content-foreground = ${colors.foreground} +content-background = ${colors.background} +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +[module/spotify] +;https://github.com/NicholasFeldman/dotfiles/blob/master/polybar/.config/polybar/spotify.sh +type = custom/script +exec = ~/.config/polybar/scripts/spotify1.sh +interval = 1 + +;format = <label> +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-padding = 2 +format-underline = #0f0 +format-prefix = " " +format-prefix-foreground = #0f0 +label = %output:0:150% + +[module/temperature1] +;https://github.com/jaagr/polybar/wiki/Module:-temperature +type = internal/temperature +; Thermal zone to use +; To list all the zone types, run +; $ for i in /sys/class/thermal/thermal_zone*; do echo "$i: $(<$i/type)"; done +; Default: 0 +thermal-zone = 0 + +; Full path of temperature sysfs path +; Use `sensors` to find preferred temperature source, then run +; $ for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done +; to find path to desired file +; Default reverts to thermal zone setting +hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp1_input + +warn-temperature = 70 +format = <ramp> <label> +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-underline = #c72581 +format-warn = <ramp> <label-warn> +format-warn-underline = #c7254f +label = %temperature% +label-warn = %temperature% +label-warn-foreground = #c7254f + +ramp-0 = +ramp-1 = +ramp-2 = +ramp-3 = +ramp-4 = +ramp-foreground =${colors.foreground} + +[module/temperature2] +type = custom/script +exec = ~/.config/polybar/scripts/tempcores.sh +interval = 2 +format-padding = 1 +format-foreground = ${colors.foreground} +format-background = ${colors.background} +format-underline = #C1B93E +format-prefix-foreground = #C1B93E +label = %output:0:150:% + +[module/xmonad] +type = custom/script +exec = xmonad-log +tail = true +format-background = ${colors.background} +format-foreground = ${colors.foreground} + +[module/uptime] +;https://github.com/jaagr/polybar/wiki/User-contributed-modules#uptime +type = custom/script +exec = uptime | awk -F, '{sub(".*up ",x,$1);print $1}' +interval = 100 +label = Uptime : %output% + +format-foreground = ${colors.color13} +format-background = ${colors.background} +format-prefix = "💻 " +format-prefix-foreground = ${colors.color13} +format-underline = ${colors.color13} +format-margin = 2 +format-padding = 0 + +[module/volume] +;https://github.com/jaagr/polybar/wiki/Module:-volume +type = internal/volume +format-volume = "<label-volume> <bar-volume>" + +label-volume = " " +label-volume-foreground = #40ad4b +label-muted = muted + +bar-volume-width = 10 +bar-volume-foreground-0 = #40ad4b +bar-volume-foreground-1 = #40ad4b +bar-volume-foreground-2 = #40ad4b +bar-volume-foreground-3 = #40ad4b +bar-volume-foreground-4 = #40ad4b +bar-volume-foreground-5 = #40ad4b +bar-volume-foreground-6 = #40ad4b +bar-volume-gradient = false +bar-volume-indicator = +bar-volume-indicator-font = 2 +bar-volume-fill = +bar-volume-fill-font = 2 +bar-volume-empty = +bar-volume-empty-font = 2 +bar-volume-empty-foreground = ${colors.foreground} +format-volume-foreground = ${colors.foreground} +format-volume-background = ${colors.background} +format-muted-prefix = " " +format-muted-prefix-foreground = "#ff0000" +format-muted-foreground = ${colors.foreground} +format-muted-background = ${colors.background} + +[module/weather] +type = custom/script +interval = 10 +format = <label> +format-prefix = " " +format-prefix-foreground = #3EC13F +format-underline = #3EC13F +format-foreground = ${colors.foreground} +format-background = ${colors.background} +exec = python -u ~/.config/polybar/scripts/weather.py +tail = true + +[module/wired-network] +;https://github.com/jaagr/polybar/wiki/Module:-network +type = internal/network +interface = enp4s0 +;interface = enp14s0 +interval = 3.0 + +; Available tokens: +; %ifname% [wireless+wired] +; %local_ip% [wireless+wired] +; %essid% [wireless] +; %signal% [wireless] +; %upspeed% [wireless+wired] +; %downspeed% [wireless+wired] +; %linkspeed% [wired] +; Default: %ifname% %local_ip% +label-connected = %ifname% +label-disconnected = %ifname% disconnected + +format-connected-foreground = ${colors.foreground} +format-connected-background = ${colors.background} +format-connected-underline = #55aa55 +format-connected-prefix = " " +format-connected-prefix-foreground = #55aa55 +format-connected-prefix-background = ${colors.background} + +format-disconnected = <label-disconnected> +format-disconnected-underline = ${colors.alert} +label-disconnected-foreground = ${colors.foreground} + +[module/wireless-network] +;https://github.com/jaagr/polybar/wiki/Module:-network +type = internal/network +interface = ${env:WIRELESS} +interval = 3.0 +label-connected = %essid% + +format-connected = <label-connected> +;format-connected = <ramp-signal> <label-connected> +format-connected-foreground = ${colors.foreground} +format-connected-background = ${colors.background} +format-connected-prefix = " " +format-connected-prefix-foreground = #7e52c6 +format-connected-prefix-background = ${colors.background} +format-connected-underline = #7e52c6 + +label-disconnected = %ifname% disconnected +label-disconnected-foreground = ${colors.alert} +label-disconnected-background = ${colors.background} + +format-disconnected = <label-disconnected> +format-disconnected-foreground = ${colors.alert} +format-disconnected-background = ${colors.background} +format-disconnected-prefix = " " +format-disconnected-prefix-foreground = ${colors.alert} +format-disconnected-prefix-background = ${colors.background} +format-disconnected-underline =${colors.alert} + +ramp-signal-0 = ▁ +ramp-signal-1 = ▂ +ramp-signal-2 = ▃ +ramp-signal-3 = ▄ +ramp-signal-4 = ▅ +ramp-signal-5 = ▆ +ramp-signal-6 = ▇ +ramp-signal-7 = █ +ramp-signal-foreground = #7e52c6 + +[module/workspaces-xmonad] +type = custom/script +exec = tail -F /tmp/.xmonad-workspace-log +exec-if = [ -p /tmp/.xmonad-workspace-log ] +tail = true + +[module/xbacklight] +;https://github.com/jaagr/polybar/wiki/Module:-xbacklight +type = internal/xbacklight +format = <label> <bar> +format-prefix = " " +format-prefix-foreground = ${colors.foreground} +format-prefix-background = ${colors.background} +format-prefix-underline = #9f78e1 +format-underline = #9f78e1 +label = %percentage%% +bar-width = 10 +bar-indicator = +bar-indicator-foreground = #fff +bar-indicator-font = 2 +bar-fill = +bar-fill-font = 2 +bar-fill-foreground = #9f78e1 +bar-empty = +bar-empty-font = 2 +bar-empty-foreground = #fff +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +[module/xkeyboard] +;https://github.com/jaagr/polybar/wiki/Module:-xkeyboard +type = internal/xkeyboard +blacklist-0 = num lock + +format-prefix = " " +format-prefix-foreground = ${colors.foreground} +format-prefix-background = ${colors.background} +format-prefix-underline = #3ecfb2 +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +label-layout = %layout% +label-layout-underline = #3ecfb2 +label-indicator-padding = 2 +label-indicator-margin = 1 +label-indicator-background = ${colors.background} +label-indicator-underline = ${colors.foreground} + + +[module/xmenu] +type = custom/script +interval = 1200 +exec = echo " " +click-left = "sh ~/xmenu/xmenu.sh" +format-foreground = ${colors.foreground} +format-background = ${colors.background} + +[module/xwindow] +;https://github.com/jaagr/polybar/wiki/Module:-xwindow +type = internal/xwindow + +; Available tokens: +; %title% +; Default: %title% +label = %title% +label-maxlen = 50 + +format-prefix = "* " +format-suffix = " *" +format-foreground = ${colors.color10} +format-background = ${colors.background} +format-margin = 2 +format-padding = 0 + +##### For vim users +# vim:ft=dosini + diff --git a/polybar/scripts/check-all-updates.sh b/polybar/scripts/check-all-updates.sh new file mode 100755 index 0000000..dda6212 --- /dev/null +++ b/polybar/scripts/check-all-updates.sh @@ -0,0 +1,21 @@ +#!/bin/bash +#source https://github.com/x70b1/polybar-scripts + +# Count official repo updates +if ! updates_arch=$(checkupdates 2> /dev/null | wc -l ); then + updates_arch=0 +fi + +# Count AUR updates using yay +if ! updates_aur=$(yay -Qu --quiet 2> /dev/null | wc -l ); then + updates_aur=0 +fi + +# Total updates +updates=$(("$updates_arch" + "$updates_aur")) + +if [ "$updates" -gt 0 ]; then + echo " $updates" +else + echo "0" +fi diff --git a/polybar/scripts/pavolume.sh b/polybar/scripts/pavolume.sh new file mode 100755 index 0000000..0fd4df5 --- /dev/null +++ b/polybar/scripts/pavolume.sh @@ -0,0 +1,201 @@ +#!/usr/bin/env bash + +# finds the active sink for pulse audio and increments the volume. useful when you have multiple audio outputs and have a key bound to vol-up and down + +osd='no' +inc='2' +capvol='no' +maxvol='200' +autosync='yes' + +# Muted status +# yes: muted +# no : not muted +curStatus="no" +active_sink="" +limit=$((100 - inc)) +maxlimit=$((maxvol - inc)) + +reloadSink() { + active_sink=$(pacmd list-sinks | awk '/* index:/{print $3}') +} + +function volUp { + + getCurVol + + if [ "$capvol" = 'yes' ] + then + if [ "$curVol" -le 100 ] && [ "$curVol" -ge "$limit" ] + then + pactl set-sink-volume "$active_sink" -- 100% + elif [ "$curVol" -lt "$limit" ] + then + pactl set-sink-volume "$active_sink" -- "+$inc%" + fi + elif [ "$curVol" -le "$maxvol" ] && [ "$curVol" -ge "$maxlimit" ] + then + pactl set-sink-volume "$active_sink" "$maxvol%" + elif [ "$curVol" -lt "$maxlimit" ] + then + pactl set-sink-volume "$active_sink" "+$inc%" + fi + + getCurVol + + if [ ${osd} = 'yes' ] + then + qdbus org.kde.kded /modules/kosd showVolume "$curVol" 0 + fi + + if [ ${autosync} = 'yes' ] + then + volSync + fi +} + +function volDown { + + pactl set-sink-volume "$active_sink" "-$inc%" + getCurVol + + if [ ${osd} = 'yes' ] + then + qdbus org.kde.kded /modules/kosd showVolume "$curVol" 0 + fi + + if [ ${autosync} = 'yes' ] + then + volSync + fi + +} + +function getSinkInputs { + input_array=$(pacmd list-sink-inputs | grep -B 4 "sink: $1 " | awk '/index:/{print $2}') +} + +function volSync { + getSinkInputs "$active_sink" + getCurVol + + for each in $input_array + do + pactl set-sink-input-volume "$each" "$curVol%" + done +} + +function getCurVol { + curVol=$(pacmd list-sinks | grep -A 15 "index: $active_sink$" | grep 'volume:' | grep -E -v 'base volume:' | awk -F : '{print $3}' | grep -o -P '.{0,3}%'| sed s/.$// | tr -d ' ') +} + +function volMute { + case "$1" in + mute) + pactl set-sink-mute "$active_sink" 1 + curVol=0 + status=1 + ;; + unmute) + pactl set-sink-mute "$active_sink" 0 + getCurVol + status=0 + ;; + esac + + if [ ${osd} = 'yes' ] + then + qdbus org.kde.kded /modules/kosd showVolume ${curVol} ${status} + fi + +} + +function volMuteStatus { + curStatus=$(pacmd list-sinks | grep -A 15 "index: $active_sink$" | awk '/muted/{ print $2}') +} + +# Prints output for bar +# Listens for events for fast update speed +function listen { + firstrun=0 + + pactl subscribe 2>/dev/null | { + while true; do + { + # If this is the first time just continue + # and print the current state + # Otherwise wait for events + # This is to prevent the module being empty until + # an event occurs + if [ $firstrun -eq 0 ] + then + firstrun=1 + else + read -r event || break + if ! echo "$event" | grep -e "on card" -e "on sink" + then + # Avoid double events + continue + fi + fi + } &>/dev/null + output + done + } +} + +function output() { + reloadSink + getCurVol + volMuteStatus + if [ "${curStatus}" = 'yes' ] + then + echo "ﱝ mute" + else + if [ $curVol -gt 70 ]; then + echo "$curVol%" + elif [ $curVol -gt 30 ]; then + echo "$curVol%" + else + echo "$curVol%" + fi + fi +} #}}} + +reloadSink +case "$1" in + --up) + volUp + ;; + --down) + volDown + ;; + --togmute) + volMuteStatus + if [ "$curStatus" = 'yes' ] + then + volMute unmute + else + volMute mute + fi + ;; + --mute) + volMute mute + ;; + --unmute) + volMute unmute + ;; + --sync) + volSync + ;; + --listen) + # Listen for changes and immediately create new output for the bar + # This is faster than having the script on an interval + listen + ;; + *) + # By default print output for bar + output + ;; +esac + diff --git a/wallpaper.png b/wallpaper.png Binary files differnew file mode 100644 index 0000000..3804f77 --- /dev/null +++ b/wallpaper.png |
