Existe-t-il une application pour Ubuntu qui verrouille l’ordinateur après un laps de temps défini (par exemple 30 minutes)? J'en ai besoin pour que les enfants limitent le temps qu'ils passent à regarder des dessins animés. Par exemple. 30 minutes à regarder, puis les verrous de l’ordinateur obligeant un parent à le déverrouiller.
Pour Windows, j'ai utilisé l'application Eyes Relax. Elle affiche un écran noir et une barre de progression verte (le temps restant pour déverrouiller l'ordinateur) et nécessite un mot de passe pour annuler le verrouillage.
Un programme bien supérieur appelé multi-timer
a été créé: ne minuterie pour configurer différentes alarmes simultanément
Bien qu'il existe des applications tierces pour ce faire, vous pouvez créer les vôtres. Résumé des étapes:
lock-screen-timer
lock-screen-timer
lock-screen-timer
comme un exécutableEdit 1 (19 nov. 2016): Version finale. Avertissements de verrouillage imminents à 15, 10, 5, 3, 2 et 1 minute restants avec message et son. Utilisez zenity pour obtenir le nombre de minutes (30 par défaut).
Edit 2 (Nov 20,2016): Changement de code pour supprimer le script en veille précédent.
Edit 3 (Jan 20,2017): Révisez le code de script précédent. Ajouter un message d'information si la version précédente était déjà en cours d'exécution et terminée.
Éditer 4 (4 février 2017): Exécuter en boucle pour plusieurs comptes à rebours sans avoir à re-cliquer sur l'icône du bureau. c.-à-d. blanchisserie le soir - 16 minutes pour le cycle de rinçage (assouplissant), 13 minutes pour charger la sécheuse, 58 minutes pour la sortir de la sécheuse.
Éditer 5 (11 février 2017): Écrire les minutes restantes dans /tmp/lock-screen-timer-remaining
. Cela permet aux autres programmes d’afficher la durée avant que l’écran ne soit verrouillé.
Edit 6 (août 07,2017): Modifiez le fichier de travail /tmp/
en ~/.
pour prendre en charge plusieurs utilisateurs du réseau.
EDIT: Notez que le script dépend de ogg123 pour jouer le son de rappel. Ce programme fait partie du paquet vorbis-tool du référentiel des univers. Le script présenté ici tente également d’utiliser le script script hotplugtv trouvé ici.
Éditez 8 (12 nov. 2017): Ajoutez la prise en charge de WSL (Windows 10 Subsystem for Linux). Notez que vous devez ajouter VcXsrv
et ubuntu-desktop
ou xubuntu-desktop
(recommandé) pour utiliser l'interface graphique Linux dans WSL. L’affichage du temps restant dans la zone de notification et dans la zone de notification de Windows 10 nécessite de compléter ce que indicator-sysmonitor
fait sous Linux. Un futur script powershell.exe
est prévu pour la prise en charge de la zone de notification Windows 10.
Éditer 9 (19 février 1818): Correction de l'animation ne contenant pas la séquence \
de la pizza en rotation "|, /, \".
lock-screen-timer
Ouvrez le Terminal
en utilisant Ctrl+Alt+T et type:
gedit lock-screen-timer
lock-screen-timer
Revenez à cet écran et copiez le code suivant en le mettant en surbrillance et en appuyant sur Ctrl+C:
#!/bin/bash
# NAME: lock-screen-timer
# PATH: $HOME/bin
# DESC: Lock screen in x minutes
# CALL: Place on Desktop or call from Terminal with "lock-screen-timer 99"
# DATE: Created Nov 19, 2016. Last revision May 30, 2018.
# UPDT: Updated to support WSL (Windows Subsystem for Linux)
# Remove hotplugtv. Replace ogg with paplay.
# Cohesion with multi-timer. New sysmonitor indicator style.
# NOTE: Time defaults to 30 minutes.
# If previous version is sleeping it is killed.
# Zenity is used to pop up entry box to get number of minutes.
# If zenity is closed with X or Cancel, no screen lock timer is launched.
# Pending lock warning displayed on-screen at set intervals.
# Write time remaining to ~/.lock-screen-timer-remaining
MINUTES="$1" # Optional parameter 1 when invoked from terminal.
# if no parameters set default MINUTES to 30
if [ $# == 0 ]; then
MINUTES=30
fi
DEFAULT="$MINUTES" # When looping, minutes count down to zero. Save deafult for subsequent timers.
# Check if lock screen timer already running
pID=$(pgrep -f "${0##*/}") # All PIDs matching lock-screen-timer name
PREVIOUS=$(echo "$pID" | grep -v ^"$$") # Strip out this running copy ($$$)
if [ "$PREVIOUS" != "" ]; then
kill "$PREVIOUS"
rm ~/.lock-screen-timer-remaining
zenity --info --title="Lock screen timer already running" --text="Previous lock screen timer has been terminated."
fi
# Running under WSL (Windows Subsystem for Linux)?
if cat /proc/version | grep Microsoft; then
WSL_running=true
else
WSL_running=false
fi
while true ; do # loop until cancel
# Get number of minutes until lock from user
MINUTES=$(zenity --entry --title="Lock screen timer" --text="Set number of minutes until lock" --entry-text="$DEFAULT")
RESULT=$? # Zenity return code
if [ $RESULT != 0 ]; then
break ; # break out of timer lock screen loop and end this script.
fi
DEFAULT="$MINUTES" # Save deafult for subsequent timers.
if [[ $MINUTES == 0 ]] || [[ $MINUTES == "" ]]; then
break ; # zero minutes considered cancel.
fi
# Loop for X minutes, testing each minute for alert message.
(( ++MINUTES ))
while (( --MINUTES > 0 )); do
case $MINUTES in 1|2|3|5|10|15|30|45|60|120|480|960|1920)
notify-send --urgency=critical --icon=/usr/share/icons/gnome/256x256/status/appointment-soon.png "Locking screen in ""$MINUTES"" minute(s)." ;
if [[ $WSL_running == true ]]; then
powershell.exe -c '(New-Object Media.SoundPlayer "C:\Windows\Media\notify.wav").PlaySync();'
else
paplay /usr/share/sounds/freedesktop/stereo/complete.oga ;
fi
;;
esac;
# Record number of minutes remaining to file other processes can read.
echo "Lock screen in: $MINUTES Minutes" > ~/.lock-screen-timer-remaining
sleep 60
done
rm ~/.lock-screen-timer-remaining # Remove work file others can see our progress with
if [[ $WSL_running == true ]]; then
# Call lock screen for Windows 10
rundll32.exe user32.dll,LockWorkStation
else
# Call screen saver lock for Ubuntu versions > 14.04.
dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
fi
done # End of while loop getting minutes to next lock screen
exit 0 # Closed dialog box or "Cancel" selected.
Revenez ensuite à la fenêtre vide gedit
et collez le code à l'aide de Ctrl+V. Enregistrez le fichier et quittez l'éditeur pour revenir à l'invite de commande.
lock-screen-timer
comme un exécutableMaintenant, nous devons rendre le script exécutable en tapant:
chmod +x lock-screen-timer
Avant d'appeler le script depuis l'interface graphique, nous l'appellerons depuis le terminal afin de voir si des messages d'erreur sont affichés:
~/lock-screen-timer
Vous êtes invité à entrer le nombre de minutes:
Définissez le nombre de minutes souhaité et cliquez sur OK pour démarrer le chronomètre. Lorsqu'il reste 15, 10, 5, 3, 2 et 1 minute, un son système est entendu et une bulle apparaît indiquant que l'écran sera verrouillé. Une fois l'écran verrouillé, vous devez entrer votre mot de passe pour le déverrouiller.
Nautilus définit ce qui se produit lorsque l'on double-clique sur un script exécutable lorsqu'il s'agit de la fenêtre d'affichage des fichiers ou d'un lien sur le bureau. Le comportement normal consiste à éditer le script en utilisant gedit
. Nous voulons changer ce comportement pour qu'il soit exécuté.
Démarrez Nautilus et accédez au répertoire contenant lock-screen-timer
. Cliquez dessus une fois pour le mettre en évidence. Passez la souris sur la barre de menu supérieure jusqu'à ce que le menu "Fichier Éditer ..." apparaisse, utilisez:
Edit
Properties
Behavior
Executable Text Files
Run executable text files when they are opened
De la section précédente, lock-screen-timer
a toujours le focus. Sinon, naviguez jusqu'au script et cliquez une fois dessus pour le mettre en évidence. Alors utilisez:
Make Link
.Link to lock-screen-timer
.Maintenant, vous pouvez double-cliquer sur le lien de raccourci sur le bureau et le script est exécuté. Une boîte de dialogue apparaît pour obtenir le nombre de minutes. Deux boutons sont présentés Cancel et OK. Si vous cliquez sur la touche X
pour fermer la fenêtre, la procédure est identique à la sélection de Cancel.
Une fois que le chronomètre est en marche et que vous double-cliquez dessus, la première copie en cours est "tuée". Vous pouvez maintenant commencer un nouveau compte à rebours de verrouillage du scren ou cliquer sur Cancel pour pas de compte à rebours.
Pendant le fonctionnement de l’écran de verrouillage, il enregistre le nombre de minutes restantes dans le fichier ~/.lock-screen-timer-remaining
. Vous pouvez consulter ce fichier à l'aide de la commande watch
ou l'afficher dans la barre d'état de la barre d'état système/de l'application Ubuntu, comme indiqué en haut de cette réponse. Pour afficher le temps restant dans la zone de notification, suivez les instructions de ce Q & A: ( BASH peut-il afficher le tableau de bord en tant qu'indicateur d'application? ).
Vous voudrez peut-être utiliser quelque chose comme Mkahawa , qui est utilisé pour administrer les cybercafés.