PROJET AUTOBLOG


De l’épice pour la pensée

Site original : De l’épice pour la pensée

⇐ retour index

court (1) : un clavier en mappage français

vendredi 9 mars 2018 à 08:49

Sous OpenBSD, vous pouvez réparer votre machine d'au moins deux façons différentes :

Dans les deux cas, le mappage du clavier est en anglais. Alors :

kbd fr

ps : ce message fait suite à un "dd" malencontreux sur /dev/rsd1c qui était en fait / ...

Se fabriquer un lecteur de salon léger et pratique

vendredi 2 mars 2018 à 14:14

Dans cet article, on va décrire la mise en place d'une station vidéo pour salon. Quelques contraintes sont à respecter :

Matériel


J'ai récupéré un ordinateur chez un *cash du coin. C'est pas le moins cher, mais ça permet d'éviter de laisser un ordinateur aller en déchetterie.

J'y ajoute un mini clavier sans fil. C'est tip top ces trucs, et ça contient une batterie donc très facile à recharger par USB.

Installer OpenBSD


Ça, c'est fastoche, ça prend quelques minutes. On crée un utilisateur qu'on nommera pour l'exemple "watcher".

On prévoit quand même quelques optimisations au niveau du système de fichier en activant les softdeps :

sed -i 's/rw,/rw,softdep,/g' /etc/fstab

Et on prépare l'installation de futurs paquets :

echo https://ftp.fr.openbsd.org/pub/OpenBSD > /etc/installurl

Enfin, on met à jour en lançant

syspatch

Vous voudrez peut-être réduire le temps d'attente au démarrage :

echo "set timeout 1" > /etc/boot.conf

Pour augmenter les performances graphiques, on peut aussi ajouter cette ligne dans /etc/sysctl.conf

machdep.allowaperture=1

Configurer l'autologin


On se sert de xenodm, le gestionnaire de connexion par défaut sous OpenBSD.
Afin d'automatiquement lancer la session de l'utilisateur configuré lors de l'installation, on suit les recommandations du wiki, à savoir éditer /etc/X11/xenodm/xenodm-config et ajouter :

DisplayManager._0.autoLogin:    watcher

On crée un fichier ~/.xsession pour l'utilisateur qui contiendra ces lignes :

. ~/.profile
xsetroot -solid black &
# son au max
mixerctl outputs.master=255,255
lutecium Videos/ &
cwm

Nous verrons ensuite à quoi correspond ce "lutecium".
Remarquez qu'on utilise un gestionnaire de fenêtres intégré à OpenBSD, pas besoin de l'installer.
Pensez à rendre ce fichier exécutable :

chmod +x ~/.xsession

Reste à activer xenodm :

rcctl enable xenodm && rcctl start xenodm

Chargement des langues et utf-8


Certaines applications en ont besoin, alors on précise dans le fichier ~/.profile de l'utilisateur ces lignes :

LC_CTYPE="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_ALL='fr_FR.UTF-8'
LANG='fr_FR.UTF-8'
export LC_CTYPE LC_MESSAGES LC_ALL LANG
export ENV=$HOME/.kshrc

Permettre l'extinction


On édite le fichier /etc/doas.conf pour permettre à l'utilisateur d'éteindre la machine en utilisant doas sans entrer de mot de passe :

cat /etc/doas.conf
permit nopass :wheel  cmd /sbin/shutdown
permit nopass :wheel  cmd /sbin/reboot

Installation de l'interface


La plupart du temps, c'est kodi qu'on installe. Sauf que je le trouve extrêmement lourd et plein de fonctionnalités qui ne me sont pas du tout utiles. Notez que si vous avez des alternatives à proposer, je suis preneur ;).
J'ai donc codé un petit truc, qui certes ne paie pas de mine mais fait ce que je veux : afficher mes fichiers et retenir lesquels ont déjà été vus. Ça s'appelle lutecium et ça ressemble à ça :

(ne faîtes pas attention aux exemples, c'était des tests...)

Notez que on pourrait très bien utiliser ranger ou encore noice dans un terminal, mais ça ne garde pas une trace des épisodes déjà vus.

Pour m'en servir, il me faut python3, la bibliothèque tkinter, et un lecteur de vidéos (mpv).

pkg_add -z python-tkinter-3* mpv
ln -s /usr/local/bin/python3.6 /usr/local/bin/python3

Ensuite, j'installe lutecium dans /usr/local/bin :

ftp -o /usr/local/bin/lutecium http://dev.yeuxdelibad.net/tk-tools/Lu/lutecium
chmod +x /usr/local/bin/lutecium

Et voilà, on peut choisir sa vidéo avec le clavier.

Récupérer les vidéos


Là, c'est chacun sa façon de faire.
Certains feront un montage NFS, d'autres une synchronisation... Pour ma part je fais un peu les deux :

Dans /etc/fstab :

192.168.1.2:/mnt/data/ /mnt/NFS nfs rw,nodev,nosuid,soft,noatime 0 0

Ensuite, ajout d'une tâche cron :

crontab -e
@hourly /usr/local/bin/rsync -az --delete /mnt/NFS/ /home/watcher/Videos/

Lecture automatique si on insère une clé USB

Afin de lancer une lecture automatique des fichiers présents sur, par exemple, une clé USB insérée, j'utilise hotplugd.

pkg_add fuse hotplug-diskmount
rcctl enable hotplugd

On complète ensuite le fichier /etc/hotplug/attach :

#!/bin/sh

DEVCLASS=${1}
DEVNAME=${2}
LOGIN="watcher"
MOUNTPOINT=/home/${LOGIN}/usb

case "${DEVCLASS}" in
    2)
        mkdir -p -m 1777 "${MOUNTPOINT}"
        mount -o nodev,nosuid,noatime /dev/"${DEVNAME}"i "${MOUNTPOINT}"
        su "${LOGIN}" -c "DISPLAY=:0 mpv --alang=en,fr --slang=fr --save-position-on-quit  --fullscreen --keep-open=no \"${MOUNTPOINT}\"/*"
        ;;
esac

On oublie pas le chmod +x /etc/hotplug/attach. ;)

Vous pouvez faire de même avec un script "detach" :

 cat /etc/hotplug/detach
#!/bin/sh

DEVCLASS=$1
DEVNAME=$2

case $DEVCLASS in
    2)
        /sbin/umount "/mnt/${DEVNAME}"
        exit 0
        ;;
esac
exit 0

Bien qu'on puisse faire nettement moins spécifique comme configuration, avec celle-ci ça fonctionne bien et je sais exactement où sont montées les clés USB. À chaque fois qu'une d'entre elle est branchée, hop ça lit tout ce qui est dessus.

§

Mot de la fin

Ça sera tout pour cette petite présentation. Le clavier est petit, mais me permet de modifier le volume du son, faire pause, accélérer... Tout ce qu'il me faut en fait ;)
Vos idées et suggestions sont les bienvenues, je suis certain qu'on peut améliorer tout ça ;)

edit : j'ai ajouté l'heure à lutecium

tooter en toute simplicité

mercredi 28 février 2018 à 11:24

Fervent utilisateur de dmenu ; un petit outil qui fait gagner un temps fou ; j'ai pondu un petit script qui permet d'écrire ce qui me passe par la tête sur mon compte mastodon.

Il faut juste toot d'installé et configuré pour envoyer des messages (il faut juste le lancer en console avant).
Ensuite, vient le script proprement dit, que j'associe éventuellement à un raccourci clavier pour aller plus vite :

#!/bin/sh
# envoie un mot sur mastodon
# il faut l'outil toot déjà configuré pour poster

# Les couleurs de dmenu
SB="#44475a"
SF="#8be9fd"
NB="#282a36"
NF="#f8f8f2"
FN="Hack-10"
COLORS="-fn $FN -nb $NB -nf $NF -sb $SB -sf $SF"

# Le prompt, ce que dmenu vous "dit"
P="toot:"
OPTION="$COLORS -p $P "


msg=$(echo "" | dmenu $OPTION) 
if [ "$msg" != "" ]; then 
	toot post "$msg"
fi

exit 0

On écrit son message, on valide par entrée, et pouf, c'est envoyé.

Pour que ça soit plus rigolo, voici une version qui affiche la timeline :

#!/bin/sh
# envoie un mot sur mastodon
# il faut l'outil toot déjà configuré pour poster

# Les couleurs de dmenu
SB="#44475a"
SF="#8be9fd"
NB="#282a36"
NF="#f8f8f2"
FN="Hack-10"
COLORS="-fn $FN -nb $NB -nf $NF -sb $SB -sf $SF"

# Le prompt, ce que dmenu vous "dit"
P="toot:"
OPTION="$COLORS -l 32 -p $P "


msg=$(toot timeline | dmenu $OPTION) 
if [ "$msg" != "" ]; then 
	toot post "$msg"
fi

exit 0

et ça ressemble à ça :

Annonce déménagement

dimanche 25 février 2018 à 09:22

Utilisateurs/utilisatrices du CHATONS 3hg.fr et ouaf.xyz ;
Lecteurs/lectrices de ce site ;

Je vais bientôt déménager.
Par conséquent, mon serveur auto-hébergé aussi.
Une coupure des services est donc à prévoir au cours du mois de mars, j'espère la plus courte possible.

Dans le même temps, la gestion des comptes mail est améliorée pour les utilisateurs du CHATONS. Veillez désormais à bien renseigner votre adresse mail complète en guise de nom d'utilisateur (dans le webmail ainsi que dans votre client de messagerie si vous utilisez thunderbird).

Désolé pour le désagrément causé, c'est pour que ça fonctionne encore mieux ensuite :)

Déménagement du serveur

jeudi 22 février 2018 à 13:18

Je vais bientôt déménager, donc mon serveur auto-hébergé aussi.
Jusqu'à présent, je n'ai pas été embêté par mon fournisseur d'accès à internet (OVH) lors de ce genre de procédure, mais une coupure de quelques heures est possible dans les prochaines semaines.
Heureusement, ça devrait être un déménagement définitif cette fois ^^