OSD for wayland.
Project description
wlosd
An on-screen display for Wayland compositors.
You might also be interested in wledges which provides active edges for Wayland compositors.
Supported Desktops
Tested on Sway, but should work on all Wayland compositors that support the Layer Shell protocol. More precisely, it should work on all desktops supported by gtk4-layer-shell.
Installation
Dependencies:
Debian/Ubuntu:
sudo apt install libgirepository-1.0-dev gcc libcairo2-dev pkg-config python3-dev gir1.2-gtk-4.0 libgtk4-layer-shell-dev
pip install pygobject
Fedora:
sudo dnf install gcc gobject-introspection-devel cairo-gobject-devel pkg-config python3-devel gtk4 gtk4-layer-shell-devel
pip install pygobject
Arch Linux:
sudo pacman -S python cairo pkgconf gobject-introspection gtk4 gcc gtk4-layer-shell
pip install pygobject
For other distributions, you will need:
- Python 3: instructions
- pygobject: instructions
- gtk4-layer-shell: instructions
Install wlosd:
From PyPi:
pip install wlosd
Or clone this repository.
Usage
wlosd reads commands from standard input. For example, run in a terminal:
cat - | wlosd
show --end-mark END test
Some text.
More text.
END
(don't kill the process yet)
This should display the two lines before END in the centre of the currently
focused display, on top of all other windows. The text is transparent to all
input events. Pango markup
can be used in the text. The --css command line argument (e.g. wlosd --css style.css) can be used to pass a GTK4 style sheet (see style.css for example, and
overview and
properties for documentation).
To hide the text:
hide test
To see all available commands:
help
To quit:
quit
A more useful way to run wlosd would be to put something along the following lines somewhere in your startup scripts:
rm -f "${XDG_RUNTIME_DIR}/wlosdpipe"
mkfifo "${XDG_RUNTIME_DIR}/wlosdpipe"
tail -f "${XDG_RUNTIME_DIR}/wlosdpipe" | wlosd &
And send commands to wlosd like this:
printf -- 'show --end-mark END test\nSome text.\nEND\n' > "${XDG_RUNTIME_DIR}/wlosdpipe"
License
MIT, see LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wlosd-1b1.tar.gz.
File metadata
- Download URL: wlosd-1b1.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f6276c9c817659a3e875af4fd3159fd86dc168c24ab2cfb5b0f7e9d8557afc9
|
|
| MD5 |
5888fec81412abd744e2eaf4047da360
|
|
| BLAKE2b-256 |
c89575ac76726ed5aefbcd37bd436fb0eff1bc0d487125b7cfbab0258ee6f563
|
File details
Details for the file wlosd-1b1-py3-none-any.whl.
File metadata
- Download URL: wlosd-1b1-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4be5712013d7221cd7a970a50957d8bbee6d1f112a34a0964544805527da2871
|
|
| MD5 |
b3069e89434dd03cd4fb95782a6cd34c
|
|
| BLAKE2b-256 |
7a4cead1cd0b47638046a1c6bba7b09c0ba4928e0ae8dd863f2b07553a0706da
|