Cron, python et QNap

J’ai un tit script python qui tourne quotidiennement au travers du cron.

A titre de rappel, il faut changer le fichier:

/etc/config/crontab

Lancer le process pour persister le changement:

crontab /etc/config/crontab

Redémarrer crontab:

/etc/init.d/crond.sh restart

Et c’est bon ! Vous pouvez vérifier que c’est en ordre au travers du classique

crontab -l

Comme tout cron, faites attention à la variable d’env $PATH et utilisez des path absolus ;-)

Posted in Linux at March 11th, 2018. Comments Off on Cron, python et QNap.

Install ansible

I created a little ansible playbook to install my dev machine. But I need to install… :'( some thing to get ansible work.

So it’s the right way to do it

  • Clone ansible repo into /opt/ansible
  • Chown -R it as your usual user.
  • Install python (2)
  • pip install –upgrade pip

And the following error got the following answers:

  • pyconfig.h missing => python-devel
  • /usr/lib/rpm/redhat/redhat-hardened-cc1 missing => redhat-rpm-config
  • fatal error: openssl/opensslv.h => openssl-devel

After you can continue deps installs for ansible

  • sudo pip install paramiko PyYAML Jinja2 httplib2 six

With a improved/modernized crypto lib

  • rpm -e –nodeps python-crypto; pip install pycrypto

As useful dependency you can add

  • yamllint

You have to run it manually for the moment, but still really useful

 

Thanks to throskam a script is now available on github: https://github.com/lgnap/ansible-bootstrap.

It’s only for Fedora & my user for the moment (pay attention to the little lgnap hardcoded) but it’s not really difficult to adapt it.

Posted in Au quotidien, Linux at January 15th, 2017. Comments Off on Install ansible.

Systemd pour python-pygame

Et oui, init.d c’est fini, mort et enterré. Place à systemd désormais.

Donc pour lancer le joli petit pi-radio qui n’est rien d’autre qu’un petit script en python de façon automatique il m’en fallait un.

pi-radio.service

Comme j’ai un peu souffert pour le faire fonctionner correctement il est judicieux de vous le filer (il est dans le repo) mais surtout de l’expliquer.

[Unit]
Description=Launch Pi Radio
Wants=network-online.target
After=network-online.target

[Service]
Environment=MPD_HOST=192.168.0.XX
ExecStart=/usr/bin/python -u radioplayer.py

[Install]
WantedBy=multi-user.target

Explications

Je vous ferai grâce d’une explication ligne par ligne mais vous indiquerais plutôt pourquoi telle ou telle valeur.

  • Wants & After: sans réseau il ne fonctionnera pas vu que mon mpd est sur une autre machine.
  • Environment: spécifie une adresse différente pour la connexion sur mpd (par défault il se connecte sur localhost: cfr la doc de MPC pr en savoir plus)
  • ExecStart: le switch -u est utilisé et CAPITAL pour débugguer à travers systemd. Visiblement python par défault bufferise le stdout & stderr et cela nous prive des détails à travers le journalctl lors du débugguage
  • WorkingDir: Le script en l’état n’a visiblement pas conscience d’où il se trouve et si on le lance en l’état il ne retrouve pas ses fichiers images. Il faut donc le forcer à se lancer depuis un working directory donné le hash 64d08ee permet dorénavant de se passer du working directory

Read More…

Posted in Vidéo & Audio at February 6th, 2016. Comments Off on Systemd pour python-pygame.

Minecraft: Overviewer config

J’ai pas mal cherché pour trouver des fonctions permettant d’afficher certaines choses sur overviewer, et au final j’ai du mettre la main à la pâte moi-même faute de fonctions utiles.

Comme vous pourrez le lire dans le code j’ai fait le choix d’afficher :

  • les spawners
  • les panneaux vides
  • les panneaux “pleins” (avec du texte donc)
  • les coffres vides (histoire de voir où on peut nettoyer un peu)
  • les coffres contenant des choses (avec une distinction entre ceux des ‘caves’ et ceux de ‘surface’)
  • les positions offlines des players

Si vous avez un peu d’expérience en python et que j’ai fait des bourdes où que vous avez des best-practices, n’hésitez pas à me le dire (j’avais jamais fait de python de ma vie avant), c’est pour cela que j’ai mis le fichier de config sur un repo GitHub.

Le repository à forker : https://github.com/lgnap/Overviewer-config/

Posted in Minecraft at May 17th, 2013. 2 Comments.