1.9 KiB
1.9 KiB
Slideshow
The below commands will setup feh
as a slideshow on your display.
Important Notes
feh
will crash if there are no photos for it to use as a slideshow- You will likely want to tweak the
feh
command invocation below. These are great settings as a starting point but you'll probably want to make adjustments for your use case. - This setup uses
incron
to restartfeh
when photos are deleted from the pictures folder. Without this piecefeh
will crash if a picture is removed from the pictures directory prior tofeh
rescaning the pictures directory. - We default to
DejaVuSansMono
as the font for display of EXIF data and filename. This is an open font and looks great on most displays. Anyfontconfig
font can be used in its place. Adjust according to your preferences.
Setup
pacman -S feh imagemagick ttf-dejavu
# reload 86400 is to refresh the list of images daily -- tune for preferred number of seconds
# slideshow-delay is number of seconds (as a float) between images ; tune accordingly
useradd -s /usr/bin/nologin -m feh
chmod a+rx /tank/pictures
pacman -S acl
setfacl -m "u:feh:rX" /tank/pictures
setfacl -dm "u:feh:rX" /tank/pictures
pacman -S incron
cat > /etc/incron.d/feh <<EOF
/tank/pictures IN_DELETE systemctl restart greetd
EOF
systemctl enable --now incrond
cat > /usr/local/bin/feh-slideshow.sh <<EOF
#!/bin/bash
/usr/bin/feh --auto-zoom --borderless --fullscreen --hide-pointer --image-bg black --randomize --recursive \
--slideshow-delay 300 --reload 86400 \
--draw-tinted --draw-exif --draw-filename \
--fontpath /usr/share/fonts/TTF/ --font DejaVuSansMono/10 \
--verbose \
/tank/pictures
EOF
chmod a+x /usr/local/bin/feh-slideshow.sh
cat >> /etc/greetd/config.toml <<EOF
[initial_session]
command = "/usr/bin/cage /usr/local/bin/feh-slideshow.sh"
user = "feh"
EOF
systemctl restart greetd