Go to file
Ingo Feinerer 9ac721c23f Use the sioctl_open(3) OpenBSD API to access vol
Starting with OpenBSD 6.7 regular users cannot access raw audio devices
anymore, for improved security.

Instead use the sioctl_open(3) API to access and manipulate audio
controls exposed by sndiod(8). On the first call a permanent connection
is established with the running sndiod daemon, and call-back functions
are registered which are triggered when audio controls are changed
(e.g., a USB headset is attached) or when the volume is modified. On
subsequent calls we poll for changes; if there are no volume changes
this costs virtually nothing.

Joint work with Alexandre Ratchov
2020-11-30 21:24:33 +01:00
components Use the sioctl_open(3) OpenBSD API to access vol 2020-11-30 21:24:33 +01:00
LICENSE Add native OpenBSD support for mute/volume 2019-02-13 13:35:44 +01:00
Makefile Add separator module 2020-11-30 21:15:13 +01:00
README Add OS-support notice to README 2019-02-16 17:05:04 +01:00
arg.h Remove unnecessary blank lines after license-notice 2017-08-13 23:31:56 +02:00
config.def.h Use the sioctl_open(3) OpenBSD API to access vol 2020-11-30 21:24:33 +01:00
config.mk Use the sioctl_open(3) OpenBSD API to access vol 2020-11-30 21:24:33 +01:00
slstatus.1 Add a -1 option flag 2020-11-30 21:23:56 +01:00
slstatus.c Add a -1 option flag 2020-11-30 21:23:56 +01:00
slstatus.h Add separator module 2020-11-30 21:15:13 +01:00
util.c Follow International System of Units spacing rules 2019-02-17 16:53:56 +01:00
util.h Change uint64_t to uintmax_t 2018-07-07 10:50:25 +02:00

README

slstatus - suckless status
==========================
slstatus is a suckless status monitor for window managers that use WM_NAME
(e.g. dwm) or stdin to fill the status bar.


Features
--------
- Battery percentage/state/time left
- CPU usage
- CPU frequency
- Custom shell commands
- Date and time
- Disk status (free storage, percentage, total storage and used storage)
- Available entropy
- Username/GID/UID
- Hostname
- IP address (IPv4 and IPv6)
- Kernel version
- Keyboard indicators
- Keymap
- Load average
- Network speeds (RX and TX)
- Number of files in a directory (hint: Maildir)
- Memory status (free memory, percentage, total memory and used memory)
- Swap status (free swap, percentage, total swap and used swap)
- Temperature
- Uptime
- Volume percentage (OSS/ALSA)
- WiFi signal percentage and ESSID


Requirements
------------
Currently slstatus works on FreeBSD, Linux and OpenBSD.
In order to build slstatus you need the Xlib header files.


Installation
------------
Edit config.mk to match your local setup (slstatus is installed into the
/usr/local namespace by default).

Afterwards enter the following command to build and install slstatus (if
necessary as root):

    make clean install


Running slstatus
----------------
See the man page for details.


Configuration
-------------
slstatus can be customized by creating a custom config.h and (re)compiling the
source code. This keeps it fast, secure and simple.


Todo
----
Cleaning up the whole codebase it the goal before thinking about a release.