Tips en Trucs 2026

Opdrachten uitvoeren na inactiviteit van de gebruiker

Een moderne werkplek vereist vaak urenlange productiviteit van gebruikers, maar wat gebeurt er als je even van de computer weggaat? Om het energieverbruik te beheersen en de beveiliging te verbeteren, is het handig om een ​​Bash-script te maken dat het systeem automatisch in de slaapstand zet na een periode van inactiviteit.

Ons Bash-script gebruikt daarvoor swayidle, een opdracht die reageert op gebruikersactiviteit. Swayidle werkt enkel onder Wayland, wie nog X11 gebruikt, kan gebruik maken van xprintidle en de tutorial Bash Script to Suspend the System after User Inactivity.

We starten met het installeren van swayidle:

dany@pindabook:~$ sudo apt install swayidle
[sudo] wachtwoord voor dany:  
Installeren:                               
 swayidle

Samenvatting:
 Opwaarderen: 0, Installeren: 1, Verwijderen: 0, Niet opwaarderen: 0
 Downloadgrootte: 16,8 kB
 Benodigde ruimte: 60,4 kB / 84,6 GB beschikbaar

Ophalen:1 http://deb.debian.org/debian trixie/main amd64 swayidle amd64 1.8.0-1 [16,8 kB]
16,8 kB opgehaald in 0s (400 kB/s)    
Voorheen niet geselecteerd pakket swayidle wordt geselecteerd.
(Database wordt ingelezen ... 206609 bestanden en mappen momenteel geïnstalleerd.)
Uitpakken van .../swayidle_1.8.0-1_amd64.deb wordt voorbereid...
Bezig met uitpakken van swayidle (1.8.0-1) ...
Instellen van swayidle (1.8.0-1) ...
Bezig met afhandelen van triggers voor man-db (2.13.1-1) ...

En testen de werking met de volgende opdracht:

dany@pindabook:~$ swayidle -w timeout 10 "echo Geen muis- of toetsenbordhandelingen" resume "echo Terug activiteit"
Geen muis- of toetsenbordhandelingen
Terug activiteit
Geen muis- of toetsenbordhandelingen
Terug activiteit
^Cdany@pindabook:~$  

De verschillende onderdelen van de opdracht

Gebruik de sneltoets Ctrl+c om de opdracht af te breken. Druk nogmaals Ctrl+c om de prompt terug aan het begin van de regel te plaatsen.

Daar swayidle op de achtergrond gebruikersactiviteit volgt, kan het voorkomen dat swayidle toch nog actief is. Indien je dit merkt, voer dan de volgende opdracht uit om alle swayidle activiteiten af te breken:

dany@pindabook:~$ killall swayidle  
swayidle: geen proces gevonden

Wat in het voorbeeld hierboven dus niet nodig was.

Energie besparen

Hoewel je zelf kunt bepalen welke opdrachten je laat uit voeren bij inactiviteit en het hervatten, gaan we als voorbeeld het laptopscherm dimmen bij inactiviteit. Eerst bepalen we de maximale helderheidsinstelling. In een KDE omgeving vraag je dit op met:

dany@pindabook:~$ qdbus6 org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl org.kde.Solid.PowerManagement.Actions.BrightnessControl.brightnessMax
10000

Dit gaf op mijn laptop de waarde 10000 op. M.a.w. een helderheidsniveau van 100% komt overeen met 10000. Met wat eenvoudige wiskunde, kom je al snel te weten dat een 1% helderheidstoename of -afname overeen komt met een waardetoename of -afname van 100.

Om het scherm bij inactiviteit te dimmen naar 10% en terug naar 60% bij activiteit gebruik je de volgende ellenlange opdracht:

dany@pindabook:~$ swayidle -w timeout 10 'qdbus6 org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl org.kde.Solid.PowerManagement.Actions.BrightnessControl.setBrightness 1000' resume 'qdbus6 org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl org.kde.Solid.PowerManagement.Actions.BrightnessControl.setBrightness 6000'
^Cdany@pindabook:~$

Test de opdracht en breek deze dan uiteindelijk af met de sneltoets Ctrl+c.

Automatiseren met een automatisch startend script

Maak het script aan met een teksteditor (bijv. nano):

dany@pindabook:~$ nano idledim.sh

Maak het volgende script aan:

 GNU nano 8.4                                                                                idledim.sh                                                                                      S   
#!/bin/bash
# Schermhelderheid verlagen bij 10 seconden inactiviteit
swayidle -w timeout 10 'qdbus6 org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl org.kde.Solid.PowerManagement.Actions.BrightnessControl.setBrightness 1000' resume 'qdbus6 org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl org.kde.Solid.PowerManagement.Actions.BrightnessControl.setBrightness 6000'


                                                                                   [ 15 regels geschreven ]
^G Hulp          ^O Opslaan       ^F Zoeken        ^K Knippen       ^T Opdracht      ^C Positie       M-U Terugdraaien M-A Markering    M-] Naar haakje  M-B Voorgaande    Terug
^X Afsluiten     ^R Inlezen       ^\ Vervangen     ^U Plakken       ^J Uitvullen     ^/ Naar regel    M-E Herdoen      M-6 Kopiëren     ^B Terugzoeken   M-F Volgende      Vooruit

Sla het script op met de sneltoets Ctrl+s en sluit de teksteditor nano af met Ctrl+x.

Voor je dit script automatisch laat starten, test je de werking met de opdracht:

dany@pindabook:~$ bash idledim.sh
^Cdany@pindabook:~$  

Als het script goed werkt, kan je de timeout van 10 seconden aanpassen naar elke gewenste waarde.

Autostart

Om het script automatisch te starten bij het opstarten van de KDE omgeving, start je Systeeminstellingen.

In de categorie Systeem start je het onderdeel Autostart (of zoek rechtstreeks naar Autostart).

Open de keuzelijst + Nieuwe Toevoegen en start de opdracht + Aanmeldscript....

Blader naar en open het script Home/idledim.sh.

Om het script automatisch te kunnen starten, moet het uitvoerbaar zijn. M.a.w. als de knop verschijnt, is dit niet het geval en klik je op de knop om het script alsnog uitvoerbaar te maken.

Sluit Systeeminstellingen en sla de aanpassingen indien nodig op en herstart het systeem.

Om te kijken of het script werkt, kan je naast inactief zijn, je dit ook nagaan in de Systeeminstellingen in het onderdeel Autostart door op het item idledim.sh te kikken waarmee je het logboek van het script kunt raadplegen. Bovenaan kan je met de knop / het script ook manueel stoppen en starten.

swayidle

Swayidle verwijderen