Need help with dwm-bar?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

joestandring
242 Stars 54 Forks GNU General Public License v3.0 104 Commits 2 Opened issues

Description

A modular statusbar for dwm

Services available

!
?

Need anything else?

Contributors list

# 253,823
Shell
HTML
CSS
dwm
56 commits
# 392,632
Shell
dwm
statusb...
6 commits
# 218,479
bible
Raspber...
C
C++
2 commits
# 102,428
Angular
polling
Socket....
C++
1 commit
# 197,018
Telegra...
golang
Shell
apk
1 commit
# 526,708
HTML
CSS
Shell
dwm
1 commit
# 124,905
tcl
nix
nginx-r...
ffmpeg
1 commit

dwm-bar

A modular statusbar for dwm screenshot ko-fi

Table of Contents

Either the official Spotify client or spotifyd can be used. Unfortunately, only spotifyd can provide track position and shuffle status

[▶ The Unicorns - Tuff Ghost 0:43/2:56 🔀]
Dependencies:
spotify/spotifyd, playerctl

dwm_date

Displays the current date and time

[🕰 Mon 06-05-19 21:31:58]

dwm_mail

Displays the current number of emails in an inbox

[📫 2]

dwm_weather

Displays the current weather provided by wttr.in

Please remember wttr.in has a limited number of requests, so this module may occasionally not be able to recieve weather information when experiencing high traffic.

[☀ +20°C]

dwm_networkmanager

Displays the current network connection, private IP, and public IP using NetworkManager

[🌐 enp7s0: 192.168.0.1/24 | 185.199.109.153]
Dependencies:
NetworkManager, curl

dwm_wpa

Displays the current network connection and private IP using wpacli

[襤 My-Wifi 192.168.0.3]
Dependencies: ```wpacli```

dwm_vpn

Displays the current VPN connections with OpenVPN or Wireguard

[🔒 Sweden - Stockholm]
Dependencies:
NetworkManager, NetworkManager-openvpn (for OpenVPN connections)

dwm_ccurse

Displays the next appointment from calcurse

[💡 18/04/19 19:00 20:00 Upload dwm_ccurse]
Dependencies:
calcurse

dwm_transmission

Displays the current status of a torrent with transmission-remote

[⏬ archlinux-2019.06.01... | 92% 1min ⬆3.4 ⬇1.5]
Dependencies:
transmission-remote

dwm_backlight

Displays the current backlight level with xbacklight

[☀ 80]
Dependencies:
xbacklight

dwm_connman

Shows network information IP, SSID, WLan strength (if connected to WLan) using connman.

[🌐 192.169.189.12 HomeNetworkName 53%]
Dependencies:
connman

dwm_loadavg

Displays the average system load

[⏱ 0.14 0.17 0.18]

dwmsolarpanel

Displays how much power is being produced from your solar panels

[💡 3.012 W ]

dwm_currency

Displays the current rate of your currency in comparison to the USD provided by rate.sx

[💡 1.225 ]
Dependencies:
curl

Installation

  1. Clone and enter the repository:
    $ git clone https://github.com/joestandring/dwm-bar
    $ cd dwm-bar
    
  2. Install Dependencies from dep/YourDisto.txt
  • For Arch Linux
$ sudo pacman -S $(dep/arch.txt)
  • For Fedora Linux
$ sudo dnf install $(dep/fedora.txt)

:warning: There are no dnf packages for spotyfyd, pamixer and cmus. If you want to utilise these packages, please install them manually as shown in the corresponding gihub repos.

  1. Make the script executable
    $ chmod +x dwm_bar.sh
    

Configuration

dwm-bar supports the extrabar patch for dwm. This allows the user to add a second status bar at the bottom of the screen. To add the second bar:

  1. Patch dwm with the the extrabar plugin
  2. Comment out the line
    xsetroot -name "$upperbar"
    in
    dwm_bar.sh
  3. Uncomment the line
    xsetroot -name "$upperbar;$lowerbar"
    in
    dwm_bar.sh
  4. Append functions underneath
    upperbar=""
    and
    lowerbar=""
    . For example: ``` # Append results of each func one by one to the upperbar string upperbar="" upperbar="$upperbar$(dwm_myupperfunction)"

Append results of each func one by one to the lowerbar string

lowerbar="" lowerbar="$lowerbar$(dwm_mylowerfunction)" ```

Recommendations

To make the most out of Unicode support, consider using a font that includes many Unicode characters. For example: * Nerd Fonts * Siji * Font Awesome

While not always necessary, it's a good idea to specify these fonts in your dwm config.

Quick Start

Simply run the script and dwm should display your bar:

$ ./dwm_bar.sh
Most likely, you will need to change some values for functions to get them to work - these are outlined with a comment for functions where this is likely the case. If you would like your bar to be displayed when X starts, add this to your .xinitrc file before launching dwm. For example, if the script is located in /home/$USER/dwm-bar/: ```

Statusbar

/home/$USER/dwm-bar/dwm_bar.sh &

Start dwm

exec dwm ```

Customizing

dwm-bar is completely modular, meaning you can mix and match functions to your heart's content. It's functions are located in the bar-functions/ subdirectory and included in dwmbar.sh If you want to make your own function, for example, dwmmyfunction.sh, you should create it in the bar-functions/ subdirectory before including it in dwm_bar.sh and adding it to the xsetroot command: ```

Import the modules

. "$DIR/bar-functions/dwm_myfucntion"

while true do xsetroot -name "$(dwmmyfunction)" sleep 1 done

You can also decide to use Unicode or plaintext identifiers for functions by altering the
$IDENTIFIER
value. For example, set to
"unicode"
,
dwm
mail

will display:
[📫 0]
Whereas, if it is not set it will display:
[MAIL 0] ```

Contributing

See CONTRIBUTING.md before contributing.

Acknowledgements

Code for some functions was modified from: * Klemens Nanni * @boylemic * Parket Johnson * suckless.org * @mcallistertyler95

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.