Olaf Kolkman fbd41a72f1
First Try
2025-05-06 19:41:26 +02:00

675 lines
16 KiB
INI

;; ┌────────────────────────────────────────────────────────────────┐
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀│
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█│
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀│
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
;; └────────────────────────────────────────────────────────────────┘
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/alsa]
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> <label-volume>
; Available tags:
; <label-muted> (default)
; <ramp-volume>
; <bar-volume>
format-muted = <label-muted>
format-muted-prefix =
; Available tokens:
; %percentage% (default)
label-volume = %percentage%%
; Available tokens:
; %percentage% (default
label-muted = " Muted"
label-muted-foreground = ${color.foreground-alt}
; Only applies if <ramp-volume> is used
ramp-volume-0 =
ramp-volume-1 =
ramp-volume-2 =
; 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/cpu]
type = internal/cpu
; Seconds to sleep between updates
; Default: 1
interval = 1
; Available tags:
; <label> (default)
; <bar-load>
; <ramp-load>
; <ramp-coreload>
;;format = <label> <ramp-coreload>
format = <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%%"
; Spacing between individual per-core ramps
;;ramp-coreload-spacing = 1
;;ramp-coreload-0 = ${cpu.load0}
;;ramp-coreload-1 = ${cpu.load1}
;;ramp-load-0 = ${cpu.load0}
;;ramp-load-1 = ${cpu.load1}
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[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 = " %a, %d %b %Y"
; Available tags:
; <label> (default)
format = <label>
; Available tokens:
; %date%
; %time%
; Default: %date%
label = %time%
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[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 = true
; Spacing between entries
; Default: 2
;;spacing = 4
; Available tags:
; <label-mounted> (default)
; <bar-free>
; <bar-used>
; <ramp-capacity>
format-mounted = <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 = " %free%"
; Available tokens:
; %mountpoint%
; Default: %mountpoint% is not mounted
label-unmounted = " %mountpoint%: not mounted"
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/memory]
type = internal/memory
; Seconds to sleep between updates
; Default: 1
interval = 1
; 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 = <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 <ramp-used> is used
;;ramp-used-0 = ${memory.used0}
;;ramp-used-1 = ${memory.used1}
;;ramp-used-2 = ${memory.used2}
; Only applies if <ramp-free> is used
;;ramp-free-0 = ${memory.free0}
;;ramp-free-1 = ${memory.free1}
;;ramp-free-2 = ${memory.free2}
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[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 = 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> <icon-prev> <toggle> <icon-next>
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-next =
icon-prev =
icon-seekf =
icon-seekb =
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.secondary}
; 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, just add 2 module definitions. For example
[module/wired-network]
type = internal/network
interface = eth0
; 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 = <label-connected>
format-connected-prefix =
; Available tags:
; <label-disconnected> (default)
format-disconnected = <label-disconnected>
format-disconnected-prefix =
; 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 = "%{A1:networkmanager_dmenu &:} %essid%%{A}"
; Available tokens:
; %ifname% [wireless+wired]
; Default: (none)
label-disconnected = "%{A1:networkmanager_dmenu &:} Offline%{A}"
;;label-disconnected-foreground = #66ffffff
; 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 =
; 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/pulseaudio]
type = internal/pulseaudio
; Sink to be used, if it exists (find using `pacmd list-sinks`, name field)
; If not, uses default sink
; sink = @pulseaudiosink@
; 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>
format-muted-prefix =
; Available tokens:
; %percentage% (default)
label-volume = %percentage%%
; Available tokens:
; %percentage% (default
label-muted = " Muted"
label-muted-foreground = ${color.foreground-alt}
; Only applies if <ramp-volume> is used
ramp-volume-0 =
ramp-volume-1 =
ramp-volume-2 =
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/temperature]
type = internal/temperature
; Seconds to sleep between updates
; Default: 1
interval = 0.5
; 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/hwmon2/temp1_input
hwmon-path = /sys/devices/pci0000:00/0000:00:01.3/0000:01:00.0/hwmon/hwmon0/temp1_input
; Threshold temperature to display warning label (in degrees celsius)
; Default: 80
warn-temperature = 65
; Whether or not to show units next to the temperature tokens (°C, °F)
; Default: true
units = true
; Available tags:
; <label> (default)
; <ramp>
format = <ramp> <label>
; Available tags:
; <label-warn> (default)
; <ramp>
format-warn = <ramp> <label-warn>
; Available tokens:
; %temperature% (deprecated)
; %temperature-c% (default, temperature in °C)
; %temperature-f% (temperature in °F)
label = %temperature-c%
; Available tokens:
; %temperature% (deprecated)
; %temperature-c% (default, temperature in °C)
; %temperature-f% (temperature in °F)
label-warn = "%temperature-c%"
label-warn-foreground = ${color.secondary}
; Requires the <ramp> tag
; The icon selection will range from 0 to `warn-temperature`
; with the current temperature as index.
ramp-0 =
ramp-1 =
ramp-2 =
ramp-3 =
ramp-4 =
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/keyboard]
type = internal/xkeyboard
; List of indicators to ignore
blacklist-0 = num lock
blacklist-1 = scroll lock
; Available tags:
; <label-layout> (default)
; <label-indicator> (default)
format = <label-layout> <label-indicator>
format-prefix =
; Available tokens:
; %layout%
; %name%
; %number%
; Default: %layout%
label-layout = " %layout%"
; Available tokens:
; %name%
; Default: %name%
label-indicator-on = %name%
label-indicator-on-foreground = ${color.primary}
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[module/title]
type = internal/xwindow
; Available tags:
; <label> (default)
format = <label>
format-prefix =
; Available tokens:
; %title%
; Default: %title%
label = " %title%"
label-maxlen = 30
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
[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
; Emacs, Calendar, News (General)
icon-0 = 1;
; Terminal, Emacs (IDE)
icon-1 = 2;
; Slack, Dev Tools Browser
icon-2 = 3;
; Chat, News (Financial)
icon-3 = 4;
; Apple Music, Media
icon-4 = 5;
; Monitoring, Emacs (Journal)
icon-5 = 6;
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
; Available tokens:
; %name%
; Default: %name%
label-monitor = %name%
; Available tokens:
; %name%
; %icon%
; %index%
; Default: %icon% %name%
label-active = %icon%
label-active-foreground = ${color.primary}
label-active-overline = ${color.primary}
; Available tokens:
; %name%
; %icon%
; %index%
; Default: %icon% %name%
label-occupied = %icon%
label-occupied-foreground = ${color.alternate}
; Available tokens:
; %name%
; %icon%
; %index%
; Default: %icon% %name%
label-urgent = %icon%
label-urgent-foreground = ${color.secondary}
; Available tokens:
; %name%
; %icon%
; %index%
; Default: %icon% %name%
label-empty = %icon%
label-active-padding = 2
label-urgent-padding = 2
label-occupied-padding = 2
label-empty-padding = 2
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_