Are you running a Window Manager without a DE? Ever experienced the inconvenience of running xrandr
to set resolution, feh
for wallpaper, light
for brightness, and i3lock
for lockscreen? (I use these tools, in my case)
I wrote displayctl to eradicate these problems. Now you can handle these tasks with a single script!
- imagemagick
- ffmpeg
- xrandr
- light
- i3lock-color
Currently it only supports manual installation, sorry! Supports for several common distributions will be added later!
- Manual Installation
$ git clone https://github.com/aesophor/displayctl.git
$ cd displayctl && cp displayctl ~/.local/bin/displayctl
Add this line to your ~/.Xresources
! displayctl
#include "/home/aesophor/.x/displayctlrc"
Then create the configuration file in ~/.x/displayctlrc
! displayctlrc
! ===================================================================================
Display.monitor: eDP1
Display.dpi: 112
Display.resolution: 1680x1050
Display.brightness: 30
Display.wallpaper: /home/aesophor/Pictures/Wallpapers/Nature/Rainy.jpeg
Display.lockscreen: /home/aesophor/Pictures/Wallpapers/Landscape/Pebble.jpeg
Each time after modifying displayctlrc, run
xrdb -merge ~/.Xresources
Lockscreen cache can be located at /tmp/lock_cache.png
. It will be stored there for faster lockscreen invocation.
To use the lockscreen with another effect, run displayctl -c
to clear the cache first.
$ displayctl # Restore resolution, brightness, and wallpaper to last session
$ displayctl -d # Restore resolution and brightness to last session
$ displayctl -l # Invoke lockscreen (i3lock-color required)
$ displayctl -l -d -b # Invoke lockscreen with dim + blur effect
$ displayctl -w -d -b # Set wallpaper with dim + blur effect
$ displayctl -e 1280x800 # Mirrors display to an external monitor
$ displayctl -c # Clears lockscreen cache
The effects demonstrated below can be applied to Desktop Wallpapers as well.
Available under the MIT License.