Update
This commit is contained in:
@@ -0,0 +1,553 @@
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[bar]
|
||||
fill =
|
||||
empty =
|
||||
indicator = ⏽
|
||||
; Nerd font : , ⏽, 樂 籠 錄 , 雷 絛
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/volume]
|
||||
type = internal/alsa
|
||||
|
||||
; Soundcard to be used
|
||||
; Usually in the format hw:# where # is the card number
|
||||
; You can find the different card numbers in `/proc/asound/cards`
|
||||
master-soundcard = default
|
||||
speaker-soundcard = default
|
||||
headphone-soundcard = default
|
||||
|
||||
; Name of the master, speaker and headphone mixers
|
||||
; Use the following command to list available mixer controls:
|
||||
; $ amixer scontrols | sed -nr "s/.*'([[:alnum:]]+)'.*/\1/p"
|
||||
; If master, speaker or headphone-soundcard isn't the default,
|
||||
; use `amixer -c # scontrols` instead where # is the number
|
||||
; of the master, speaker or headphone soundcard respectively
|
||||
;
|
||||
; Default: Master
|
||||
master-mixer = Master
|
||||
|
||||
; Optionally define speaker and headphone mixers
|
||||
; Default: none
|
||||
;;speaker-mixer = Speaker
|
||||
; Default: none
|
||||
;;headphone-mixer = Headphone
|
||||
|
||||
; NOTE: This is required if headphone_mixer is defined
|
||||
; Use the following command to list available device controls
|
||||
; $ amixer controls | sed -r "/CARD/\!d; s/.*=([0-9]+).*name='([^']+)'.*/printf '%3.0f: %s\n' '\1' '\2'/e" | sort
|
||||
; You may also need to use `amixer -c # controls` as above for the mixer names
|
||||
; Default: none
|
||||
;;headphone-id = 9
|
||||
|
||||
; Use volume mapping (similar to amixer -M and alsamixer), where the increase in volume is linear to the ear
|
||||
; Default: false
|
||||
;;mapped = true
|
||||
|
||||
; 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> <bar-volume>
|
||||
|
||||
; Available tags:
|
||||
; <label-muted> (default)
|
||||
; <ramp-volume>
|
||||
; <bar-volume>
|
||||
format-muted-prefix =
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default)
|
||||
label-volume = %percentage%%
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default
|
||||
label-muted = " Mute"
|
||||
label-muted-foreground = ${color.COLOR_R}
|
||||
|
||||
; Only applies if <ramp-volume> is used
|
||||
ramp-volume-0 =
|
||||
ramp-volume-1 =
|
||||
ramp-volume-2 =
|
||||
|
||||
; Only applies if <bar-volume> is used
|
||||
bar-volume-width = 10
|
||||
bar-volume-gradient = false
|
||||
|
||||
bar-volume-indicator = ${bar.indicator}
|
||||
bar-volume-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-volume-fill = ${bar.fill}
|
||||
bar-volume-foreground-0 = ${color.FOREGROUND}
|
||||
bar-volume-foreground-1 = ${color.FOREGROUND}
|
||||
bar-volume-foreground-2 = ${color.FOREGROUND}
|
||||
bar-volume-foreground-3 = ${color.FOREGROUND}
|
||||
bar-volume-foreground-4 = ${color.FOREGROUND}
|
||||
|
||||
bar-volume-empty = ${bar.empty}
|
||||
bar-volume-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
; If defined, it will replace <ramp-volume> when
|
||||
; headphones are plugged in to `headphone_control_numid`
|
||||
; If undefined, <ramp-volume> will be used for both
|
||||
; Only applies if <ramp-volume> is used
|
||||
ramp-headphones-0 =
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/bna-bar]
|
||||
type = custom/text
|
||||
|
||||
content = " NA"
|
||||
content-prefix = 盛
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/backlight-bar]
|
||||
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 = <bar>
|
||||
format-prefix = "盛 "
|
||||
; 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-gradient = false
|
||||
|
||||
bar-indicator = ${bar.indicator}
|
||||
bar-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-fill = ${bar.fill}
|
||||
bar-foreground-0 = ${color.FOREGROUND}
|
||||
bar-foreground-1 = ${color.FOREGROUND}
|
||||
bar-foreground-2 = ${color.FOREGROUND}
|
||||
bar-foreground-3 = ${color.FOREGROUND}
|
||||
bar-foreground-4 = ${color.FOREGROUND}
|
||||
|
||||
bar-empty = ${bar.empty}
|
||||
bar-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/brightness-bar]
|
||||
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 = <bar>
|
||||
format-prefix = "盛 "
|
||||
; 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-gradient = false
|
||||
|
||||
bar-indicator = ${bar.indicator}
|
||||
bar-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-fill = ${bar.fill}
|
||||
bar-foreground-0 = ${color.FOREGROUND}
|
||||
bar-foreground-1 = ${color.FOREGROUND}
|
||||
bar-foreground-2 = ${color.FOREGROUND}
|
||||
bar-foreground-3 = ${color.FOREGROUND}
|
||||
bar-foreground-4 = ${color.FOREGROUND}
|
||||
|
||||
bar-empty = ${bar.empty}
|
||||
bar-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/battery_bar]
|
||||
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 = <bar-capacity>
|
||||
format-charging-prefix = " "
|
||||
|
||||
; Available tags:
|
||||
; <label-discharging> (default)
|
||||
; <bar-capacity>
|
||||
; <ramp-capacity>
|
||||
; <animation-discharging>
|
||||
format-discharging = <bar-capacity>
|
||||
format-discharging-prefix = " "
|
||||
|
||||
; Available tags:
|
||||
; <label-full> (default)
|
||||
; <bar-capacity>
|
||||
; <ramp-capacity>
|
||||
format-full = <label-full>
|
||||
format-full-prefix = " "
|
||||
|
||||
; 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)
|
||||
label-full = "Full"
|
||||
|
||||
; Only applies if <bar-capacity> is used
|
||||
bar-capacity-width = 10
|
||||
bar-capacity-gradient = false
|
||||
|
||||
bar-capacity-indicator = ${bar.indicator}
|
||||
bar-capacity-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-capacity-fill = ${bar.fill}
|
||||
bar-capacity-foreground-0 = ${color.green}
|
||||
bar-capacity-foreground-1 = ${color.green}
|
||||
bar-capacity-foreground-2 = ${color.yellow}
|
||||
bar-capacity-foreground-3 = ${color.yellow}
|
||||
bar-capacity-foreground-4 = ${color.red}
|
||||
|
||||
bar-capacity-empty = ${bar.empty}
|
||||
bar-capacity-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/cpu_bar]
|
||||
type = internal/cpu
|
||||
|
||||
; Seconds to sleep between updates
|
||||
; Default: 1
|
||||
interval = 0.5
|
||||
|
||||
; Available tags:
|
||||
; <label> (default)
|
||||
; <bar-load>
|
||||
; <ramp-load>
|
||||
; <ramp-coreload>
|
||||
;;format = <label> <ramp-coreload>
|
||||
format = <bar-load> <label>
|
||||
format-prefix = " "
|
||||
|
||||
; Available tokens:
|
||||
; %percentage% (default) - total cpu load averaged over all cores
|
||||
; %percentage-sum% - Cumulative load on all cores
|
||||
; %percentage-cores% - load percentage for each core
|
||||
; %percentage-core[1-9]% - load percentage for specific core
|
||||
label = "%percentage%%"
|
||||
|
||||
; Only applies if <bar-load> is used
|
||||
bar-load-width = 10
|
||||
bar-load-gradient = false
|
||||
|
||||
bar-load-indicator = ${bar.indicator}
|
||||
bar-load-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-load-fill = ${bar.fill}
|
||||
bar-load-foreground-0 = ${color.FOREGROUND}
|
||||
bar-load-foreground-1 = ${color.FOREGROUND}
|
||||
bar-load-foreground-2 = ${color.FOREGROUND}
|
||||
bar-load-foreground-3 = ${color.FOREGROUND}
|
||||
bar-load-foreground-4 = ${color.FOREGROUND}
|
||||
|
||||
bar-load-empty = ${bar.empty}
|
||||
bar-load-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/filesystem_bar]
|
||||
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 = <bar-used> <label-mounted>
|
||||
format-mounted-prefix = " "
|
||||
|
||||
; Available tags:
|
||||
; <label-unmounted> (default)
|
||||
format-unmounted = <label-unmounted>
|
||||
format-unmounted-prefix = " "
|
||||
|
||||
; Available tokens:
|
||||
; %mountpoint%
|
||||
; %type%
|
||||
; %fsname%
|
||||
; %percentage_free%
|
||||
; %percentage_used%
|
||||
; %total%
|
||||
; %free%
|
||||
; %used%
|
||||
; Default: %mountpoint% %percentage_free%%
|
||||
label-mounted = %used%/%total%
|
||||
|
||||
; Available tokens:
|
||||
; %mountpoint%
|
||||
; Default: %mountpoint% is not mounted
|
||||
label-unmounted = %mountpoint%: not mounted
|
||||
|
||||
; Only applies if <bar-used> is used
|
||||
bar-used-width = 10
|
||||
bar-used-gradient = false
|
||||
|
||||
bar-used-indicator = ${bar.indicator}
|
||||
bar-used-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-used-fill = ${bar.fill}
|
||||
bar-used-foreground-0 = ${color.FOREGROUND}
|
||||
bar-used-foreground-1 = ${color.FOREGROUND}
|
||||
bar-used-foreground-2 = ${color.FOREGROUND}
|
||||
bar-used-foreground-3 = ${color.FOREGROUND}
|
||||
bar-used-foreground-4 = ${color.FOREGROUND}
|
||||
|
||||
bar-used-empty = ${bar.empty}
|
||||
bar-used-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/memory_bar]
|
||||
type = internal/memory
|
||||
|
||||
; Seconds to sleep between updates
|
||||
; Default: 1
|
||||
interval = 2
|
||||
|
||||
; Available tags:
|
||||
; <label> (default)
|
||||
; <bar-used>
|
||||
; <bar-free>
|
||||
; <ramp-used>
|
||||
; <ramp-free>
|
||||
; <bar-swap-used>
|
||||
; <bar-swap-free>
|
||||
; <ramp-swap-used>
|
||||
; <ramp-swap-free>
|
||||
format = <bar-used> <label>
|
||||
format-prefix = " "
|
||||
|
||||
; Available tokens:
|
||||
; %percentage_used% (default)
|
||||
; %percentage_free%
|
||||
; %gb_used%
|
||||
; %gb_free%
|
||||
; %gb_total%
|
||||
; %mb_used%
|
||||
; %mb_free%
|
||||
; %mb_total%
|
||||
; %percentage_swap_used%
|
||||
; %percentage_swap_free%
|
||||
; %mb_swap_total%
|
||||
; %mb_swap_free%
|
||||
; %mb_swap_used%
|
||||
; %gb_swap_total%
|
||||
; %gb_swap_free%
|
||||
; %gb_swap_used%
|
||||
|
||||
label = "%mb_used%"
|
||||
|
||||
; Only applies if <bar-used> is used
|
||||
bar-used-width = 10
|
||||
bar-used-gradient = false
|
||||
|
||||
bar-used-indicator = ${bar.indicator}
|
||||
bar-used-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-used-fill = ${bar.fill}
|
||||
bar-used-foreground-0 = ${color.FOREGROUND}
|
||||
bar-used-foreground-1 = ${color.FOREGROUND}
|
||||
bar-used-foreground-2 = ${color.FOREGROUND}
|
||||
bar-used-foreground-3 = ${color.FOREGROUND}
|
||||
bar-used-foreground-4 = ${color.FOREGROUND}
|
||||
|
||||
bar-used-empty = ${bar.empty}
|
||||
bar-used-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/mpd_bar]
|
||||
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 = 1
|
||||
|
||||
; 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 = <label-song> <bar-progress> <label-time>
|
||||
format-online-prefix = ﱘ
|
||||
|
||||
;format-playing = ${self.format-online}
|
||||
;format-paused = ${self.format-online}
|
||||
;format-stopped = ${self.format-online}
|
||||
|
||||
; Available tags:
|
||||
; <label-offline>
|
||||
format-offline = <label-offline>
|
||||
format-offline-prefix = ﱘ
|
||||
|
||||
; Available tokens:
|
||||
; %artist%
|
||||
; %album-artist%
|
||||
; %album%
|
||||
; %date%
|
||||
; %title%
|
||||
; Default: %artist% - %title%
|
||||
label-song = " %artist% - %title%"
|
||||
label-song-maxlen = 25
|
||||
label-song-ellipsis = true
|
||||
|
||||
; Available tokens:
|
||||
; %elapsed%
|
||||
; %total%
|
||||
; Default: %elapsed% / %total%
|
||||
label-time = %elapsed% / %total%
|
||||
|
||||
; Available tokens:
|
||||
; None
|
||||
label-offline = " Offline"
|
||||
|
||||
; Only applies if <icon-X> is used
|
||||
icon-play =
|
||||
icon-pause =
|
||||
icon-stop =
|
||||
icon-prev =
|
||||
icon-next =
|
||||
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 = ${color.primary}
|
||||
toggle-off-foreground = ${color.COLOR_R}
|
||||
|
||||
; Only applies if <bar-progress> is used
|
||||
bar-progress-width = 10
|
||||
bar-progress-gradient = false
|
||||
|
||||
bar-progress-indicator = ${bar.indicator}
|
||||
bar-progress-indicator-foreground = ${color.FOREGROUND}
|
||||
|
||||
bar-progress-fill = ${bar.fill}
|
||||
bar-progress-foreground-0 = ${color.FOREGROUND}
|
||||
|
||||
bar-progress-empty = ${bar.empty}
|
||||
bar-progress-empty-foreground = ${color.FOREGROUND}
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
@@ -0,0 +1,28 @@
|
||||
[color]
|
||||
|
||||
BACKGROUND = #01161b
|
||||
FOREGROUND = #66FFFF
|
||||
ALTBACKGROUND = #022a34
|
||||
ALTFOREGROUND = #00cccc
|
||||
ACCENT = #007B82
|
||||
|
||||
BLACK = #01161b
|
||||
RED = #007b82
|
||||
GREEN = #028c94
|
||||
YELLOW = #039ca4
|
||||
BLUE = #04acb5
|
||||
MAGENTA = #05bbc5
|
||||
CYAN = #06ccd7
|
||||
WHITE = #a3b5b8
|
||||
ALTBLACK = #01161b
|
||||
ALTRED = #007b82
|
||||
ALTGREEN = #028c94
|
||||
ALTYELLOW = #039ca4
|
||||
ALTBLUE = #04acb5
|
||||
ALTMAGENTA = #05bbc5
|
||||
ALTCYAN = #06ccd7
|
||||
ALTWHITE = #a3b5b8
|
||||
|
||||
COLOR_R = #ff0000
|
||||
COLOR_G = #00ff00
|
||||
COLOR_Y = #ffff00
|
||||
@@ -0,0 +1,309 @@
|
||||
## 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 = ./bars.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 = false
|
||||
|
||||
; 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 = 25
|
||||
|
||||
; 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
|
||||
underline-size = 2
|
||||
underline-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-bottom-size = 2
|
||||
;border-bottom-color = ${color.primary}
|
||||
|
||||
; Number of spaces to add at the beginning/end of the bar
|
||||
; Individual side values can be defined using:
|
||||
; padding-{left,right}
|
||||
padding = 1
|
||||
|
||||
; 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:pixelsize=12;4"
|
||||
|
||||
; Modules are added to one of the available blocks
|
||||
; modules-left = cpu ram
|
||||
; modules-center = xwindow xbacklight
|
||||
; modules-right = ipc clock
|
||||
|
||||
;modules-left = launcher workspaces google github reddit gmail twitter
|
||||
;modules-center =
|
||||
;modules-right = mpd updates alsa battery network date sysmenu
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[bar/top]
|
||||
inherit = bar/main
|
||||
border-bottom-size = 1
|
||||
border-bottom-color = ${color.ACCENT}
|
||||
modules-left = menu sep cpu sep used-memory sep filesystem
|
||||
modules-center = i3
|
||||
modules-right = updates sep checknet sep battery sep date sep sysmenu
|
||||
enable-ipc = true
|
||||
|
||||
[bar/bottom]
|
||||
inherit = bar/main
|
||||
bottom = true
|
||||
border-top-size = 1
|
||||
border-top-color = ${color.ACCENT}
|
||||
modules-left = mpd
|
||||
modules-center = network_ext
|
||||
modules-right = volume sep backlight-bar
|
||||
enable-ipc = true
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
; The separator will be inserted between the output of each module
|
||||
separator =
|
||||
|
||||
; 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
|
||||
|
||||
; 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.BACKGROUND}
|
||||
|
||||
; 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
+43
@@ -0,0 +1,43 @@
|
||||
#!/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 top -c "$DIR"/config.ini &
|
||||
MONITOR=$mon polybar -q bottom -c "$DIR"/config.ini &
|
||||
done
|
||||
}
|
||||
|
||||
# Execute functions
|
||||
if [[ ! -f "$RFILE" ]]; then
|
||||
fix_modules
|
||||
touch "$RFILE"
|
||||
fi
|
||||
launch_bar
|
||||
File diff suppressed because it is too large
Load Diff
+21
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
|
||||
count=0
|
||||
connected="說"
|
||||
disconnected="ﲁ"
|
||||
|
||||
ID="$(ip link | awk '/state UP/ {print $2}')"
|
||||
|
||||
while true; do
|
||||
if (ping -c 1 archlinux.org || ping -c 1 google.com || ping -c 1 bitbucket.org || ping -c 1 github.com || ping -c 1 sourceforge.net) &>/dev/null; then
|
||||
if [[ $ID == e* ]]; then
|
||||
echo "$connected Online" ; sleep 25
|
||||
else
|
||||
echo "$connected Online" ; sleep 25
|
||||
fi
|
||||
else
|
||||
echo "$disconnected Offline" ; sleep 5
|
||||
fi
|
||||
done
|
||||
+117
@@ -0,0 +1,117 @@
|
||||
#!/usr/bin/bash
|
||||
#
|
||||
# checkupdates: Safely print a list of pending updates.
|
||||
#
|
||||
# Copyright (c) 2013 Kyle Keen <keenerd@gmail.com>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
declare -r myname='checkupdates'
|
||||
declare -r myver='1.0.0'
|
||||
|
||||
plain() {
|
||||
(( QUIET )) && return
|
||||
local mesg=$1; shift
|
||||
printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1
|
||||
}
|
||||
|
||||
msg() {
|
||||
(( QUIET )) && return
|
||||
local mesg=$1; shift
|
||||
printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1
|
||||
}
|
||||
|
||||
msg2() {
|
||||
(( QUIET )) && return
|
||||
local mesg=$1; shift
|
||||
printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1
|
||||
}
|
||||
|
||||
ask() {
|
||||
local mesg=$1; shift
|
||||
printf "${BLUE}::${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&1
|
||||
}
|
||||
|
||||
warning() {
|
||||
local mesg=$1; shift
|
||||
printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
|
||||
}
|
||||
|
||||
error() {
|
||||
local mesg=$1; shift
|
||||
printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
|
||||
}
|
||||
|
||||
# check if messages are to be printed using color
|
||||
unset ALL_OFF BOLD BLUE GREEN RED YELLOW
|
||||
if [[ -t 2 && ! $USE_COLOR = "n" ]]; then
|
||||
# prefer terminal safe colored and bold text when tput is supported
|
||||
if tput setaf 0 &>/dev/null; then
|
||||
ALL_OFF="$(tput sgr0)"
|
||||
BOLD="$(tput bold)"
|
||||
BLUE="${BOLD}$(tput setaf 4)"
|
||||
GREEN="${BOLD}$(tput setaf 2)"
|
||||
RED="${BOLD}$(tput setaf 1)"
|
||||
YELLOW="${BOLD}$(tput setaf 3)"
|
||||
else
|
||||
ALL_OFF="\e[1;0m"
|
||||
BOLD="\e[1;1m"
|
||||
BLUE="${BOLD}\e[1;34m"
|
||||
GREEN="${BOLD}\e[1;32m"
|
||||
RED="${BOLD}\e[1;31m"
|
||||
YELLOW="${BOLD}\e[1;33m"
|
||||
fi
|
||||
fi
|
||||
readonly ALL_OFF BOLD BLUE GREEN RED YELLOW
|
||||
|
||||
|
||||
if (( $# > 0 )); then
|
||||
echo "${myname} v${myver}"
|
||||
echo
|
||||
echo "Safely print a list of pending updates"
|
||||
echo
|
||||
echo "Usage: ${myname}"
|
||||
echo
|
||||
echo 'Note: Export the "CHECKUPDATES_DB" variable to change the path of the temporary database.'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if ! type -P fakeroot >/dev/null; then
|
||||
error 'Cannot find the fakeroot binary.'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -z $CHECKUPDATES_DB ]]; then
|
||||
CHECKUPDATES_DB="${TMPDIR:-/tmp}/checkup-db-${USER}/"
|
||||
fi
|
||||
|
||||
trap 'rm -f $CHECKUPDATES_DB/db.lck' INT TERM EXIT
|
||||
|
||||
DBPath="$(pacman-conf DBPath)"
|
||||
if [[ -z "$DBPath" ]] || [[ ! -d "$DBPath" ]]; then
|
||||
DBPath="/var/lib/pacman/"
|
||||
fi
|
||||
|
||||
mkdir -p "$CHECKUPDATES_DB"
|
||||
ln -s "${DBPath}/local" "$CHECKUPDATES_DB" &> /dev/null
|
||||
if ! fakeroot -- pacman -Sy --dbpath "$CHECKUPDATES_DB" --logfile /dev/null &> /dev/null; then
|
||||
error 'Cannot fetch updates'
|
||||
exit 1
|
||||
fi
|
||||
pacman -Qu --dbpath "$CHECKUPDATES_DB" 2> /dev/null | grep -v '\[.*\]'
|
||||
|
||||
exit 0
|
||||
|
||||
# vim: set noet:
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
|
||||
|
||||
NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg
|
||||
|
||||
get_total_updates() { UPDATES=$(checkupdates 2>/dev/null | wc -l); }
|
||||
|
||||
while true; do
|
||||
get_total_updates
|
||||
|
||||
# notify user of updates
|
||||
if hash notify-send &>/dev/null; then
|
||||
if (( UPDATES > 50 )); then
|
||||
notify-send -u critical -i $NOTIFY_ICON \
|
||||
"You really need to update!!" "$UPDATES New packages"
|
||||
elif (( UPDATES > 25 )); then
|
||||
notify-send -u normal -i $NOTIFY_ICON \
|
||||
"You should update soon" "$UPDATES New packages"
|
||||
elif (( UPDATES > 2 )); then
|
||||
notify-send -u low -i $NOTIFY_ICON \
|
||||
"$UPDATES New packages"
|
||||
fi
|
||||
fi
|
||||
|
||||
# when there are updates available
|
||||
# every 10 seconds another check for updates is done
|
||||
while (( UPDATES > 0 )); do
|
||||
if (( UPDATES == 1 )); then
|
||||
echo " $UPDATES"
|
||||
elif (( UPDATES > 1 )); then
|
||||
echo " $UPDATES"
|
||||
else
|
||||
echo " None"
|
||||
fi
|
||||
sleep 10
|
||||
get_total_updates
|
||||
done
|
||||
|
||||
# when no updates are available, use a longer loop, this saves on CPU
|
||||
# and network uptime, only checking once every 30 min for new updates
|
||||
while (( UPDATES == 0 )); do
|
||||
echo " None"
|
||||
sleep 1800
|
||||
get_total_updates
|
||||
done
|
||||
done
|
||||
Reference in New Issue
Block a user