Update
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
[color]
|
||||
|
||||
BACKGROUND = #001A38
|
||||
FOREGROUND = #9ebcc8
|
||||
ALTBACKGROUND = #002652
|
||||
ALTFOREGROUND = #253a42
|
||||
ACCENT = #216B90
|
||||
|
||||
BLACK = #001A38
|
||||
RED = #BF4371
|
||||
GREEN = #D6A174
|
||||
YELLOW = #015089
|
||||
BLUE = #216B90
|
||||
MAGENTA = #577396
|
||||
CYAN = #BF658F
|
||||
WHITE = #9ebcc8
|
||||
ALTBLACK = #6e838c
|
||||
ALTRED = #BF4371
|
||||
ALTGREEN = #D6A174
|
||||
ALTYELLOW = #015089
|
||||
ALTBLUE = #216B90
|
||||
ALTMAGENTA = #577396
|
||||
ALTCYAN = #BF658F
|
||||
ALTWHITE = #9ebcc8
|
||||
@@ -0,0 +1,320 @@
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
;; Global WM Settings
|
||||
|
||||
[global/wm]
|
||||
; Adjust the _NET_WM_STRUT_PARTIAL top value
|
||||
; Used for top aligned bars
|
||||
margin-bottom = 0
|
||||
|
||||
; Adjust the _NET_WM_STRUT_PARTIAL bottom value
|
||||
; Used for bottom aligned bars
|
||||
margin-top = 0
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
;; File Inclusion
|
||||
; include an external file, like module file, etc.
|
||||
|
||||
include-file = ../../system.ini
|
||||
include-file = ./colors.ini
|
||||
include-file = ./modules.ini
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
;; Bar Settings
|
||||
|
||||
[bar/main]
|
||||
; Use either of the following command to list available outputs:
|
||||
; If unspecified, the application will pick the first one it finds.
|
||||
; $ polybar -m | cut -d ':' -f 1
|
||||
; $ xrandr -q | grep " connected" | cut -d ' ' -f1
|
||||
monitor = ${env:MONITOR:}
|
||||
|
||||
; Use the specified monitor as a fallback if the main one is not found.
|
||||
monitor-fallback =
|
||||
|
||||
; Require the monitor to be in connected state
|
||||
; XRandR sometimes reports my monitor as being disconnected (when in use)
|
||||
monitor-strict = false
|
||||
|
||||
; Tell the Window Manager not to configure the window.
|
||||
; Use this to detach the bar if your WM is locking its size/position.
|
||||
override-redirect = false
|
||||
|
||||
; Put the bar at the bottom of the screen
|
||||
bottom = true
|
||||
|
||||
; Prefer fixed center position for the `modules-center` block
|
||||
; When false, the center position will be based on the size of the other blocks.
|
||||
fixed-center = true
|
||||
|
||||
; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%),
|
||||
; the percentage can optionally be extended with a pixel offset like so:
|
||||
; 50%:-10, this will result in a width or height of 50% minus 10 pixels
|
||||
width = 100%
|
||||
height = 38
|
||||
|
||||
; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
|
||||
; the percentage can optionally be extended with a pixel offset like so:
|
||||
; 50%:-10, this will result in an offset in the x or y direction
|
||||
; of 50% minus 10 pixels
|
||||
offset-x = 0%
|
||||
offset-y = 0%
|
||||
|
||||
; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
|
||||
background = ${color.BACKGROUND}
|
||||
|
||||
; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023)
|
||||
foreground = ${color.FOREGROUND}
|
||||
|
||||
; Background gradient (vertical steps)
|
||||
; background-[0-9]+ = #aarrggbb
|
||||
;;background-0 =
|
||||
|
||||
; Value used for drawing rounded corners
|
||||
; Note: This shouldn't be used together with border-size because the border
|
||||
; doesn't get rounded
|
||||
; Individual top/bottom values can be defined using:
|
||||
; radius-{top,bottom}
|
||||
radius-top = 0.0
|
||||
radius-bottom = 0.0
|
||||
|
||||
; Under-/overline pixel size and argb color
|
||||
; Individual values can be defined using:
|
||||
; {overline,underline}-size
|
||||
; {overline,underline}-color
|
||||
line-size = 6
|
||||
line-color = ${color.ACCENT}
|
||||
|
||||
; Values applied to all borders
|
||||
; Individual side values can be defined using:
|
||||
; border-{left,top,right,bottom}-size
|
||||
; border-{left,top,right,bottom}-color
|
||||
; The top and bottom borders are added to the bar height, so the effective
|
||||
; window height is:
|
||||
; height + border-top-size + border-bottom-size
|
||||
; Meanwhile the effective window width is defined entirely by the width key and
|
||||
; the border is placed withing this area. So you effectively only have the
|
||||
; following horizontal space on the bar:
|
||||
; width - border-right-size - border-left-size
|
||||
border-top-size = 0
|
||||
border-color = ${color.ACCENT}
|
||||
|
||||
; Number of spaces to add at the beginning/end of the bar
|
||||
; Individual side values can be defined using:
|
||||
; padding-{left,right}
|
||||
padding = 2
|
||||
|
||||
; Number of spaces to add before/after each module
|
||||
; Individual side values can be defined using:
|
||||
; module-margin-{left,right}
|
||||
module-margin-left = 0
|
||||
module-margin-right = 0
|
||||
|
||||
; Fonts are defined using <font-name>;<vertical-offset>
|
||||
; Font names are specified using a fontconfig pattern.
|
||||
; font-0 = "Iosevka Nerd Font:size=10;3"
|
||||
; font-1 = MaterialIcons:size=10
|
||||
; font-2 = Termsynu:size=8;-1
|
||||
; font-3 = FontAwesome:size=10
|
||||
; See the Fonts wiki page for more details
|
||||
|
||||
font-0 = "Iosevka Nerd Font:size=10;3"
|
||||
font-1 = "Iosevka Nerd Font:size=12;3"
|
||||
font-2 = "Iosevka Nerd Font:size=6;3"
|
||||
|
||||
; Modules are added to one of the available blocks
|
||||
; modules-left = cpu ram
|
||||
; modules-center = xwindow xbacklight
|
||||
; modules-right = ipc clock
|
||||
|
||||
;; Available modules
|
||||
;;
|
||||
;alsa backlight battery
|
||||
;bspwm cpu date
|
||||
;filesystem github i3
|
||||
;subscriber demo memory
|
||||
;menu-apps mpd wired-network
|
||||
;wireless-network network pulseaudio
|
||||
;name_you_want temperature my-text-label
|
||||
;backlight keyboard title workspaces
|
||||
;;
|
||||
;; User modules
|
||||
;checknetwork updates window_switch launcher powermenu sysmenu menu
|
||||
;;
|
||||
;; Bars
|
||||
;cpu_bar memory_bar filesystem_bar mpd_bar
|
||||
;volume backlight battery_bar
|
||||
|
||||
modules-left = date sep mpd
|
||||
modules-center = i3
|
||||
modules-right = volume sep2 backlight sep2 battery sep2 network
|
||||
|
||||
; The separator will be inserted between the output of each module
|
||||
separator =
|
||||
|
||||
; This value is used to add extra spacing between elements
|
||||
; @deprecated: This parameter will be removed in an upcoming version
|
||||
spacing = 0
|
||||
|
||||
; Opacity value between 0.0 and 1.0 used on fade in/out
|
||||
dim-value = 1.0
|
||||
|
||||
; Value to be used to set the WM_NAME atom
|
||||
; If the value is empty or undefined, the atom value
|
||||
; will be created from the following template: polybar-[BAR]_[MONITOR]
|
||||
; NOTE: The placeholders are not available for custom values
|
||||
wm-name = i3
|
||||
|
||||
; Locale used to localize various module data (e.g. date)
|
||||
; Expects a valid libc locale, for example: sv_SE.UTF-8
|
||||
locale =
|
||||
|
||||
; Position of the system tray window
|
||||
; If empty or undefined, tray support will be disabled
|
||||
; NOTE: A center aligned tray will cover center aligned modules
|
||||
;
|
||||
; Available positions:
|
||||
; left
|
||||
; center
|
||||
; right
|
||||
; none
|
||||
tray-position = none
|
||||
|
||||
; If true, the bar will not shift its
|
||||
; contents when the tray changes
|
||||
tray-detached = false
|
||||
|
||||
; Tray icon max size
|
||||
tray-maxsize = 16
|
||||
|
||||
; DEPRECATED! Since 3.3.0 the tray always uses pseudo-transparency
|
||||
; Enable pseudo transparency
|
||||
; Will automatically be enabled if a fully transparent
|
||||
; background color is defined using `tray-background`
|
||||
; tray-transparent = false
|
||||
|
||||
; Background color for the tray container
|
||||
; ARGB color (e.g. #f00, #ff992a, #ddff1023)
|
||||
; By default the tray container will use the bar
|
||||
; background color.
|
||||
tray-background = ${color.ALTBACKGROUND}
|
||||
|
||||
; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
|
||||
tray-offset-x = 0
|
||||
tray-offset-y = 0
|
||||
|
||||
; Pad the sides of each tray icon
|
||||
tray-padding = 0
|
||||
|
||||
; Scale factor for tray clients
|
||||
tray-scale = 1.0
|
||||
|
||||
; Restack the bar window and put it above the
|
||||
; selected window manager's root
|
||||
;
|
||||
; Fixes the issue where the bar is being drawn
|
||||
; on top of fullscreen window's
|
||||
;
|
||||
; Currently supported WM's:
|
||||
; bspwm
|
||||
; i3 (requires: `override-redirect = true`)
|
||||
wm-restack = i3
|
||||
|
||||
; Set a DPI values used when rendering text
|
||||
; This only affects scalable fonts
|
||||
; dpi =
|
||||
|
||||
; 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 =
|
||||
scroll-down =
|
||||
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 =
|
||||
|
||||
;; WM Workspace Specific
|
||||
|
||||
; bspwm
|
||||
;;scroll-up = bspwm-desknext
|
||||
;;scroll-down = bspwm-deskprev
|
||||
;;scroll-up = bspc desktop -f prev.local
|
||||
;;scroll-down = bspc desktop -f next.local
|
||||
|
||||
;i3
|
||||
;;scroll-up = i3wm-wsnext
|
||||
;;scroll-down = i3wm-wsprev
|
||||
;;scroll-up = i3-msg workspace next_on_output
|
||||
;;scroll-down = i3-msg workspace prev_on_output
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
;; Application Settings
|
||||
|
||||
[settings]
|
||||
; The throttle settings lets the eventloop swallow up til X events
|
||||
; if they happen within Y millisecond after first event was received.
|
||||
; This is done to prevent flood of update event.
|
||||
;
|
||||
; For example if 5 modules emit an update event at the same time, we really
|
||||
; just care about the last one. But if we wait too long for events to swallow
|
||||
; the bar would appear sluggish so we continue if timeout
|
||||
; expires or limit is reached.
|
||||
throttle-output = 5
|
||||
throttle-output-for = 10
|
||||
|
||||
; Time in milliseconds that the input handler will wait between processing events
|
||||
;throttle-input-for = 30
|
||||
|
||||
; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events
|
||||
screenchange-reload = false
|
||||
|
||||
; Compositing operators
|
||||
; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t
|
||||
compositing-background = source
|
||||
compositing-foreground = over
|
||||
compositing-overline = over
|
||||
compositing-underline = over
|
||||
compositing-border = over
|
||||
|
||||
; Define fallback values used by all module formats
|
||||
;format-foreground =
|
||||
;format-background =
|
||||
;format-underline =
|
||||
;format-overline =
|
||||
;format-spacing =
|
||||
;format-padding =
|
||||
;format-margin =
|
||||
;format-offset =
|
||||
|
||||
; Enables pseudo-transparency for the bar
|
||||
; If set to true the bar can be transparent without a compositor.
|
||||
pseudo-transparency = false
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
;; __________ ______
|
||||
;; / ____/ __ \/ ____/
|
||||
;; / __/ / / / / /_
|
||||
;; / /___/ /_/ / __/
|
||||
;; /_____/\____/_/
|
||||
;;
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
|
||||
CARD="$(light -L | grep 'backlight' | head -n1 | cut -d'/' -f3)"
|
||||
INTERFACE="$(ip link | awk '/state UP/ {print $2}' | tr -d :)"
|
||||
RFILE="$DIR/.module"
|
||||
|
||||
# Fix backlight and network modules
|
||||
fix_modules() {
|
||||
if [[ -z "$CARD" ]]; then
|
||||
sed -i -e 's/backlight/bna/g' "$DIR"/config.ini
|
||||
elif [[ "$CARD" != *"intel_"* ]]; then
|
||||
sed -i -e 's/backlight/brightness/g' "$DIR"/config.ini
|
||||
fi
|
||||
|
||||
if [[ "$INTERFACE" == e* ]]; then
|
||||
sed -i -e 's/network/ethernet/g' "$DIR"/config.ini
|
||||
fi
|
||||
}
|
||||
|
||||
# Launch the bar
|
||||
launch_bar() {
|
||||
# Terminate already running bar instances
|
||||
killall -q polybar
|
||||
|
||||
# Wait until the processes have been shut down
|
||||
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
|
||||
|
||||
# Launch the bar
|
||||
for mon in $(polybar --list-monitors | cut -d":" -f1); do
|
||||
MONITOR=$mon polybar -q main -c "$DIR"/config.ini &
|
||||
done
|
||||
}
|
||||
|
||||
# Execute functions
|
||||
if [[ ! -f "$RFILE" ]]; then
|
||||
fix_modules
|
||||
touch "$RFILE"
|
||||
fi
|
||||
launch_bar
|
||||
@@ -0,0 +1,850 @@
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[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 = true
|
||||
|
||||
; Sort the workspaces by index instead of the default
|
||||
; sorting that groups the workspaces by output
|
||||
; Default: false
|
||||
index-sort = true
|
||||
|
||||
; 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 = true
|
||||
|
||||
; ws-icon-[0-9]+ = label;icon
|
||||
; NOTE: The label needs to match the name of the i3 workspace
|
||||
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 =
|
||||
; NOTE: You cannot skip icons, e.g. to get a ws-icon-6
|
||||
; you must also define a ws-icon-5.
|
||||
|
||||
; Available tags:
|
||||
; <label-state> (default) - gets replaced with <label-(focused|unfocused|visible|urgent)>
|
||||
; <label-mode> (default)
|
||||
format = <label-state><label-mode>
|
||||
format-background = ${color.BACKGROUND}
|
||||
|
||||
; Available tokens:
|
||||
; %mode%
|
||||
; Default: %mode%
|
||||
label-mode = [%mode%]
|
||||
label-mode-padding = 1
|
||||
label-mode-foreground = ${color.YELLOW}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; %output%
|
||||
; Default: %icon% %name%
|
||||
label-focused = %icon%
|
||||
label-focused-foreground = ${color.RED}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; %output%
|
||||
; Default: %icon% %name%
|
||||
label-unfocused = %icon%
|
||||
label-unfocused-foreground = ${color.FOREGROUND}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; %output%
|
||||
; Default: %icon% %name%
|
||||
label-visible = %icon%
|
||||
label-visible-foreground = ${color.CYAN}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; %output%
|
||||
; Default: %icon% %name%
|
||||
label-urgent = %icon%
|
||||
label-urgent-foreground = ${color.GREEN}
|
||||
|
||||
; Paddings
|
||||
label-focused-padding = 1
|
||||
label-unfocused-padding = 1
|
||||
label-visible-padding = 1
|
||||
label-urgent-padding = 1
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/bspwm]
|
||||
type = internal/bspwm
|
||||
|
||||
pin-workspaces = true
|
||||
inline-mode = false
|
||||
|
||||
enable-click = true
|
||||
enable-scroll = true
|
||||
reverse-scroll = true
|
||||
|
||||
fuzzy-match = true
|
||||
|
||||
; ws-icon-[0-9]+ = label;icon
|
||||
; Note that the label needs to correspond with the bspwm workspace name
|
||||
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-default =
|
||||
|
||||
format = <label-state>
|
||||
format-font = 2
|
||||
|
||||
label-monitor = %name%
|
||||
|
||||
; If any values for label-dimmed-N are defined, the workspace/mode
|
||||
; colors will get overridden with those values if the monitor is out of focus
|
||||
; To only override workspaces in a specific state, use:
|
||||
; label-dimmed-focused
|
||||
; label-dimmed-occupied
|
||||
; label-dimmed-urgent
|
||||
; label-dimmed-empty
|
||||
;label-dimmed-foreground = ${color.FOREGROUND}
|
||||
;label-dimmed-underline = ${color.YELLOW}
|
||||
;label-dimmed-focused-background = ${color.BACKGROUND}
|
||||
|
||||
label-focused = %name%
|
||||
label-focused-foreground = ${color.RED}
|
||||
;label-focused-underline = ${color.RED}
|
||||
label-focused-padding = 1
|
||||
|
||||
label-occupied = %name%
|
||||
label-occupied-foreground = ${color.CYAN}
|
||||
;label-occupied-underline = ${color.CYAN}
|
||||
label-occupied-padding = 1
|
||||
|
||||
label-urgent = %name%
|
||||
label-urgent-foreground = ${color.GREEN}
|
||||
;label-urgent-underline = ${color.GREEN}
|
||||
label-urgent-padding = 1
|
||||
|
||||
label-empty = %name%
|
||||
label-empty-foreground = ${color.FOREGROUND}
|
||||
label-empty-padding = 1
|
||||
|
||||
; Separator in between workspaces
|
||||
label-separator = ""
|
||||
label-separator-padding = 0
|
||||
label-separator-foreground = ${color.ALTBACKGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/mod]
|
||||
type = internal/bspwm
|
||||
|
||||
format = [<label-mode>]
|
||||
format-background = ${color.BACKGROUND}
|
||||
format-foreground = ${color.YELLOW}
|
||||
;format-underline = ${color.BACKGROUND}
|
||||
;format-overline = ${color.BACKGROUND}
|
||||
format-padding = 1
|
||||
|
||||
label-monocle = "Monocle"
|
||||
label-tiled = "Tiled"
|
||||
|
||||
label-floating = ", Float"
|
||||
label-pseudotiled = ", Pseudo"
|
||||
label-fullscreen = ", Full"
|
||||
|
||||
label-locked = " | Locked"
|
||||
label-sticky = " | Sticky"
|
||||
label-private = " | Private"
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/volume]
|
||||
type = internal/pulseaudio
|
||||
|
||||
; Sink to be used, if it exists (find using `pacmd list-sinks`, name field)
|
||||
; If not, uses default sink
|
||||
sink =
|
||||
|
||||
; Use PA_VOLUME_UI_MAX (~153%) if true, or PA_VOLUME_NORM (100%) if false
|
||||
; Default: true
|
||||
use-ui-max = false
|
||||
|
||||
; Interval for volume increase/decrease (in percent points)
|
||||
; Default: 5
|
||||
interval = 5
|
||||
|
||||
; Available tags:
|
||||
; <label-volume> (default)
|
||||
; <ramp-volume>
|
||||
; <bar-volume>
|
||||
format-volume = <ramp-volume> <label-volume>
|
||||
|
||||
; Available tags:
|
||||
; <label-muted> (default)
|
||||
; <ramp-volume>
|
||||
; <bar-volume>
|
||||
format-muted = <label-muted>
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
label-volume = %percentage%%
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default
|
||||
format-muted-prefix = 婢
|
||||
format-muted-prefix-foreground = ${color.ALTFOREGROUND}
|
||||
format-muted-font = 2
|
||||
label-muted = " Mute"
|
||||
label-muted-foreground = ${color.ALTFOREGROUND}
|
||||
|
||||
; Only applies if <ramp-volume> is used
|
||||
ramp-volume-0 = 奄
|
||||
ramp-volume-1 = 奔
|
||||
ramp-volume-2 = 奔
|
||||
ramp-volume-3 = 墳
|
||||
ramp-volume-4 = 墳
|
||||
ramp-volume-foreground = ${color.YELLOW}
|
||||
ramp-volume-font = 2
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/bna]
|
||||
type = custom/text
|
||||
|
||||
content = " NA"
|
||||
content-prefix =
|
||||
content-prefix-font = 2
|
||||
content-prefix-foreground = ${color.RED}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/backlight]
|
||||
type = internal/xbacklight
|
||||
|
||||
; Use the following command to list available cards:
|
||||
; $ ls -1 /sys/class/backlight/
|
||||
card = intel_backlight
|
||||
|
||||
; Available tags:
|
||||
; <label> (default)
|
||||
; <ramp>
|
||||
; <bar>
|
||||
format = <ramp> <label>
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
label = %percentage%%
|
||||
|
||||
; Only applies if <ramp> is used
|
||||
|
||||
ramp-0 =
|
||||
ramp-1 =
|
||||
ramp-2 =
|
||||
ramp-3 =
|
||||
ramp-4 =
|
||||
ramp-5 =
|
||||
ramp-6 =
|
||||
ramp-7 =
|
||||
ramp-8 =
|
||||
ramp-9 =
|
||||
ramp-font = 2
|
||||
ramp-foreground = ${color.CYAN}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/brightness]
|
||||
type = internal/backlight
|
||||
|
||||
; Use the following command to list available cards:
|
||||
; $ ls -1 /sys/class/backlight/
|
||||
card = ${system.sys_graphics_card}
|
||||
|
||||
enable-scroll = true
|
||||
|
||||
; Available tags:
|
||||
; <label> (default)
|
||||
; <ramp>
|
||||
; <bar>
|
||||
format = <ramp> <label>
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
label = %percentage%%
|
||||
|
||||
; Only applies if <ramp> is used
|
||||
|
||||
ramp-0 =
|
||||
ramp-1 =
|
||||
ramp-2 =
|
||||
ramp-3 =
|
||||
ramp-4 =
|
||||
ramp-5 =
|
||||
ramp-6 =
|
||||
ramp-7 =
|
||||
ramp-8 =
|
||||
ramp-9 =
|
||||
ramp-font = 2
|
||||
ramp-foreground = ${color.CYAN}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/battery]
|
||||
type = internal/battery
|
||||
|
||||
; This is useful in case the battery never reports 100% charge
|
||||
full-at = 99
|
||||
|
||||
; Use the following command to list batteries and adapters:
|
||||
; $ ls -1 /sys/class/power_supply/
|
||||
battery = ${system.sys_battery}
|
||||
adapter = ${system.sys_adapter}
|
||||
|
||||
; If an inotify event haven't been reported in this many
|
||||
; seconds, manually poll for new values.
|
||||
;
|
||||
; Needed as a fallback for systems that don't report events
|
||||
; on sysfs/procfs.
|
||||
;
|
||||
; Disable polling by setting the interval to 0.
|
||||
;
|
||||
; Default: 5
|
||||
poll-interval = 2
|
||||
|
||||
; see "man date" for details on how to format the time string
|
||||
; NOTE: if you want to use syntax tags here you need to use %%{...}
|
||||
; Default: %H:%M:%S
|
||||
time-format = %H:%M
|
||||
|
||||
; Available tags:
|
||||
; <label-charging> (default)
|
||||
; <bar-capacity>
|
||||
; <ramp-capacity>
|
||||
; <animation-charging>
|
||||
format-charging = <animation-charging> <label-charging>
|
||||
; Available tags:
|
||||
; <label-discharging> (default)
|
||||
; <bar-capacity>
|
||||
; <ramp-capacity>
|
||||
; <animation-discharging>
|
||||
format-discharging = <ramp-capacity> <label-discharging>
|
||||
|
||||
; Available tags:
|
||||
; <label-full> (default)
|
||||
; <bar-capacity>
|
||||
; <ramp-capacity>
|
||||
;format-full = <ramp-capacity> <label-full>
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
; %time%
|
||||
; %consumption% (shows current charge rate in watts)
|
||||
|
||||
label-charging = %percentage%%
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
; %time%
|
||||
; %consumption% (shows current discharge rate in watts)
|
||||
label-discharging = %percentage%%
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
format-full = <label-full>
|
||||
format-full-font = 2
|
||||
format-full-prefix = " "
|
||||
format-full-prefix-foreground = ${color.GREEN}
|
||||
label-full = %percentage%%
|
||||
|
||||
; Only applies if <ramp-capacity> is used
|
||||
ramp-capacity-0 =
|
||||
ramp-capacity-1 =
|
||||
ramp-capacity-2 =
|
||||
ramp-capacity-3 =
|
||||
ramp-capacity-4 =
|
||||
ramp-capacity-foreground = ${color.BLUE}
|
||||
ramp-capacity-font = 2
|
||||
; Only applies if <bar-capacity> is used
|
||||
;bar-capacity-width = 10
|
||||
|
||||
; Only applies if <animation-charging> is used
|
||||
animation-charging-0 =
|
||||
animation-charging-1 =
|
||||
animation-charging-2 =
|
||||
animation-charging-3 =
|
||||
animation-charging-4 =
|
||||
animation-charging-foreground = ${color.GREEN}
|
||||
animation-charging-font = 2
|
||||
; Framerate in milliseconds
|
||||
animation-charging-framerate = 750
|
||||
|
||||
; Only applies if <animation-discharging> is used
|
||||
;;animation-discharging-0 =
|
||||
;;animation-discharging-1 =
|
||||
;;animation-discharging-2 =
|
||||
;;animation-discharging-3 =
|
||||
;;animation-discharging-4 =
|
||||
;;animation-discharging-5 =
|
||||
;;animation-discharging-6 =
|
||||
;;animation-discharging-7 =
|
||||
;;animation-discharging-8 =
|
||||
|
||||
; Framerate in milliseconds
|
||||
;animation-discharging-framerate = 500
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/date]
|
||||
type = internal/date
|
||||
|
||||
; Seconds to sleep between updates
|
||||
interval = 1.0
|
||||
|
||||
; 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 = %Y-%m-%d%
|
||||
|
||||
; Optional time format
|
||||
time = %I:%M %p
|
||||
|
||||
; if `date-alt` or `time-alt` is defined, clicking
|
||||
; the module will toggle between formats
|
||||
;;date-alt = %A, %d %B %Y
|
||||
#time-alt = %d/%m/%Y%
|
||||
time-alt = %b %d, %G
|
||||
|
||||
; Available tags:
|
||||
; <label> (default)
|
||||
|
||||
format = <label>
|
||||
format-prefix = " "
|
||||
format-font = 2
|
||||
format-prefix-foreground = ${color.CYAN}
|
||||
format-padding = 0
|
||||
|
||||
; Available tokens:
|
||||
; %date%
|
||||
; %time%
|
||||
; Default: %date%
|
||||
label = %time%
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/mpd]
|
||||
type = internal/mpd
|
||||
|
||||
; Host where mpd is running (either ip or domain name)
|
||||
; Can also be the full path to a unix socket where mpd is running.
|
||||
;;host = 127.0.0.1
|
||||
;;port = 6600
|
||||
;;password = mysecretpassword
|
||||
|
||||
; Seconds to sleep between progressbar/song timer sync
|
||||
; Default: 1
|
||||
interval = 2
|
||||
|
||||
; Available tags:
|
||||
; <label-song> (default)
|
||||
; <label-time>
|
||||
; <bar-progress>
|
||||
; <toggle> - gets replaced with <icon-(pause|play)>
|
||||
; <toggle-stop> - gets replaced with <icon-(stop|play)>
|
||||
; <icon-random>
|
||||
; <icon-repeat>
|
||||
; <icon-repeatone> (deprecated)
|
||||
; <icon-single> - Toggle playing only a single song. Replaces <icon-repeatone>
|
||||
; <icon-consume>
|
||||
; <icon-prev>
|
||||
; <icon-stop>
|
||||
; <icon-play>
|
||||
; <icon-pause>
|
||||
; <icon-next>
|
||||
; <icon-seekb>
|
||||
; <icon-seekf>
|
||||
format-online-prefix = " "
|
||||
format-online-prefix-font = 2
|
||||
format-online-prefix-foreground = ${color.MAGENTA}
|
||||
;format-online = <label-song> <toggle>
|
||||
format-online = <label-song> <icon-prev> <toggle> <icon-next>
|
||||
;format-online-font = 2
|
||||
|
||||
format-playing = ${self.format-online}
|
||||
format-paused = <label-song> <toggle>
|
||||
;format-stopped = ${self.format-online}
|
||||
|
||||
; Available tags:
|
||||
; <label-offline>
|
||||
;format-offline = <label-offline>
|
||||
|
||||
; Available tokens:
|
||||
; %artist%
|
||||
; %album-artist%
|
||||
; %album%
|
||||
; %date%
|
||||
; %title%
|
||||
; Default: %artist% - %title%
|
||||
label-song = "%title%"
|
||||
label-song-maxlen = 25
|
||||
label-song-ellipsis = true
|
||||
|
||||
; Available tokens:
|
||||
; %elapsed%
|
||||
; %total%
|
||||
; Default: %elapsed% / %total%
|
||||
;;abel-time = %elapsed% / %total%
|
||||
|
||||
; Available tokens:
|
||||
; None
|
||||
label-offline = "MPD is offline"
|
||||
|
||||
; Only applies if <icon-X> is used
|
||||
icon-play =
|
||||
icon-play-font = 2
|
||||
icon-play-foreground = ${color.GREEN}
|
||||
icon-pause =
|
||||
icon-pause-font = 2
|
||||
icon-pause-foreground = ${color.YELLOW}
|
||||
icon-stop =
|
||||
icon-stop-foreground = ${color.RED}
|
||||
icon-prev = 玲
|
||||
icon-prev-font = 2
|
||||
icon-prev-foreground = ${color.CYAN}
|
||||
icon-next = 怜
|
||||
icon-next-font = 2
|
||||
icon-next-foreground = ${color.CYAN}
|
||||
icon-seekb = ⏪
|
||||
icon-seekf = ⏩
|
||||
icon-random = 🔀
|
||||
icon-repeat = 🔁
|
||||
icon-repeatone = 🔂
|
||||
icon-single = 🔂
|
||||
icon-consume = ✀
|
||||
|
||||
; Used to display the state of random/repeat/repeatone/single
|
||||
; Only applies if <icon-[random|repeat|repeatone|single]> is used
|
||||
;;toggle-on-foreground = #ff
|
||||
;;toggle-off-foreground = #55
|
||||
|
||||
; Only applies if <bar-progress> is used
|
||||
;;bar-progress-width = 45
|
||||
;;bar-progress-indicator = |
|
||||
;;bar-progress-fill = ─
|
||||
;;bar-progress-empty = ─
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
; If you use both a wired and a wireless network, Add both modules in config.ini
|
||||
[module/ethernet]
|
||||
type = internal/network
|
||||
interface = ${system.sys_network_interface}
|
||||
|
||||
interval = 1.0
|
||||
accumulate-stats = true
|
||||
unknown-as-up = true
|
||||
|
||||
format-connected = <label-connected>
|
||||
format-connected-prefix = "歷 "
|
||||
format-connected-prefix-foreground = ${color.MAGENTA}
|
||||
format-connected-prefix-font = 2
|
||||
format-connected-background = ${color.BACKGROUND}
|
||||
|
||||
format-disconnected = <label-disconnected>
|
||||
format-disconnected-prefix = "轢 "
|
||||
format-disconnected-prefix-font = 2
|
||||
format-disconnected-prefix-foreground = ${color.ALTFOREGROUND}
|
||||
format-disconnected-background = ${color.BACKGROUND}
|
||||
|
||||
label-connected = "%{A1:~/.config/i3/scripts/network_menu &:}%downspeed% | %upspeed%%{A}"
|
||||
label-disconnected = "%{A1:~/.config/i3/scripts/network_menu &:}Offline%{A}"
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
; Normal Module
|
||||
[module/network]
|
||||
type = internal/network
|
||||
interface = ${system.sys_network_interface}
|
||||
|
||||
; Seconds to sleep between updates
|
||||
; Default: 1
|
||||
interval = 1.0
|
||||
|
||||
; Test connectivity every Nth update
|
||||
; A value of 0 disables the feature
|
||||
; NOTE: Experimental (needs more testing)
|
||||
; Default: 0
|
||||
;ping-interval = 3
|
||||
|
||||
; @deprecated: Define min width using token specifiers (%downspeed:min% and %upspeed:min%)
|
||||
; Minimum output width of upload/download rate
|
||||
; Default: 3
|
||||
;;udspeed-minwidth = 5
|
||||
|
||||
; Accumulate values from all interfaces
|
||||
; when querying for up/downspeed rate
|
||||
; Default: false
|
||||
accumulate-stats = true
|
||||
|
||||
; Consider an `UNKNOWN` interface state as up.
|
||||
; Some devices have an unknown state, even when they're running
|
||||
; Default: false
|
||||
unknown-as-up = true
|
||||
|
||||
; Available tags:
|
||||
; <label-connected> (default)
|
||||
; <ramp-signal>
|
||||
format-connected = <ramp-signal> <label-connected>
|
||||
|
||||
; Available tags:
|
||||
; <label-disconnected> (default)
|
||||
|
||||
format-disconnected-prefix = "睊 "
|
||||
format-disconnected-font = 2
|
||||
format-disconnected-prefix-foreground = ${color.ALTFOREGROUND}
|
||||
format-disconnected = <label-disconnected>
|
||||
|
||||
; Available tags:
|
||||
; <label-connected> (default)
|
||||
; <label-packetloss>
|
||||
; <animation-packetloss>
|
||||
;;format-packetloss = <animation-packetloss> <label-connected>
|
||||
|
||||
; Available tokens:
|
||||
; %ifname% [wireless+wired]
|
||||
; %local_ip% [wireless+wired]
|
||||
; %local_ip6% [wireless+wired]
|
||||
; %essid% [wireless]
|
||||
; %signal% [wireless]
|
||||
; %upspeed% [wireless+wired]
|
||||
; %downspeed% [wireless+wired]
|
||||
; %linkspeed% [wired]
|
||||
; Default: %ifname% %local_ip%
|
||||
;label-connected = "%essid% %downspeed:8% %upspeed:8%"
|
||||
label-connected = "%{A1:~/.config/i3/scripts/network_menu &:}%essid%%{A}"
|
||||
;;label-connected-foreground = #eefafafa
|
||||
|
||||
; Available tokens:
|
||||
; %ifname% [wireless+wired]
|
||||
; Default: (none)
|
||||
label-disconnected = "%{A1:~/.config/i3/scripts/network_menu &:}Offline%{A}"
|
||||
label-disconnected-foreground = ${color.ALTFOREGROUND}
|
||||
|
||||
; Available tokens:
|
||||
; %ifname% [wireless+wired]
|
||||
; %local_ip% [wireless+wired]
|
||||
; %local_ip6% [wireless+wired]
|
||||
; %essid% [wireless]
|
||||
; %signal% [wireless]
|
||||
; %upspeed% [wireless+wired]
|
||||
; %downspeed% [wireless+wired]
|
||||
; %linkspeed% [wired]
|
||||
; Default: (none)
|
||||
;label-packetloss = %essid%
|
||||
;label-packetloss-foreground = #eefafafa
|
||||
|
||||
; Only applies if <ramp-signal> is used
|
||||
ramp-signal-0 = 直
|
||||
ramp-signal-1 = 直
|
||||
ramp-signal-2 = 直
|
||||
ramp-signal-3 = 直
|
||||
ramp-signal-4 = 直
|
||||
ramp-signal-foreground = ${color.MAGENTA}
|
||||
ramp-signal-font = 2
|
||||
|
||||
; Only applies if <animation-packetloss> is used
|
||||
;;animation-packetloss-0 = ⚠
|
||||
;;animation-packetloss-0-foreground = #ffa64c
|
||||
;;animation-packetloss-1 = ⚠
|
||||
;;animation-packetloss-1-foreground = #000000
|
||||
; Framerate in milliseconds
|
||||
;;animation-packetloss-framerate = 500
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/workspaces]
|
||||
type = internal/xworkspaces
|
||||
|
||||
; 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
|
||||
|
||||
; Create click handler used to focus desktop
|
||||
; Default: true
|
||||
enable-click = true
|
||||
|
||||
; Create scroll handlers used to cycle desktops
|
||||
; Default: true
|
||||
enable-scroll = true
|
||||
|
||||
; icon-[0-9]+ = <desktop-name>;<icon>
|
||||
; NOTE: The desktop name needs to match the name configured by the WM
|
||||
; You can get a list of the defined desktops using:
|
||||
; $ xprop -root _NET_DESKTOP_NAMES
|
||||
icon-0 = 1;ﱡ
|
||||
icon-1 = 2;ﱡ
|
||||
icon-2 = 3;ﱡ
|
||||
icon-3 = 4;ﱡ
|
||||
icon-4 = 5;ﱡ
|
||||
icon-default = ﱡ
|
||||
|
||||
; Available tags:
|
||||
; <label-monitor>
|
||||
; <label-state> - gets replaced with <label-(active|urgent|occupied|empty)>
|
||||
; Default: <label-state>
|
||||
format = <label-state>
|
||||
format-padding = 0
|
||||
format-font = 2
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; Default: %name%
|
||||
label-monitor = %name%
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; Default: %icon% %name%
|
||||
label-active = ﱢ
|
||||
label-active-foreground = ${color.RED}
|
||||
label-active-background = ${color.BACKGROUND}
|
||||
;;label-active-underline = ${color.RED}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; Default: %icon% %name%
|
||||
label-occupied = ﱢ
|
||||
label-occupied-foreground = ${color.CYAN}
|
||||
label-occupied-background = ${color.BACKGROUND}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; Default: %icon% %name%
|
||||
label-urgent = ﱢ
|
||||
label-urgent-foreground = ${color.GREEN}
|
||||
label-urgent-background = ${color.BACKGROUND}
|
||||
;;label-urgent-underline = ${color.red}
|
||||
|
||||
; Available tokens:
|
||||
; %name%
|
||||
; %icon%
|
||||
; %index%
|
||||
; Default: %icon% %name%
|
||||
label-empty = %icon%
|
||||
label-empty-foreground = ${color.CYAN}
|
||||
|
||||
label-active-padding = 1
|
||||
label-urgent-padding = 1
|
||||
label-occupied-padding = 1
|
||||
label-empty-padding = 1
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/menu]
|
||||
type = custom/text
|
||||
|
||||
content =
|
||||
content-font = 2
|
||||
content-foreground = ${color.ACCENT}
|
||||
content-padding = 0
|
||||
|
||||
click-left = ~/.config/i3/scripts/rofi_launcher
|
||||
click-right = ~/.config/i3/scripts/rofi_runner
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/sysmenu]
|
||||
type = custom/text
|
||||
|
||||
content =
|
||||
content-font = 2
|
||||
content-foreground = ${color.RED}
|
||||
content-padding = 0
|
||||
|
||||
click-left = ~/.config/i3/scripts/rofi_powermenu
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/sep]
|
||||
type = custom/text
|
||||
content =
|
||||
content-font = 3
|
||||
|
||||
content-foreground = ${color.FOREGROUND}
|
||||
content-background = ${color.BACKGROUND}
|
||||
content-padding = 3
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/sep2]
|
||||
type = custom/text
|
||||
content =
|
||||
content-font = 3
|
||||
|
||||
content-foreground = ${color.BACKGROUND}
|
||||
content-background = ${color.BACKGROUND}
|
||||
content-padding = 2
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
;; __________ ______
|
||||
;; / ____/ __ \/ ____/
|
||||
;; / __/ / / / / /_
|
||||
;; / /___/ /_/ / __/
|
||||
;; /_____/\____/_/
|
||||
;;
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
Reference in New Issue
Block a user