Votre navigateur est obsolète !

Pour une expériencenet et une sécurité optimale, mettez à jour votre navigateur. Mettre à jour maintenant

×

Serge SIMON

Serge SIMON

Ingénieur informatique Java/J2EE

53 ans
Permis de conduire
MONTBELIARD (25200) France
En poste En recherche active
Ingénieur informatique Java/J2EE, efficace, curieux, autonome.
CV réalisé sur DoYouBuzz
tail -f /serge/activity blog.tensin.org
How to work on windows with gradle and WSL (windows bash)
05 mars 2019
Nowadays, it’s quite easy to have access to an embedded linux installation under Windows, allowing to use command line tools (like maven or gradle) right from that terminal. One problem still remains : everything executed inside that local shell installation will have absolute paths, not known by windows. This is going to be problematic when one is willing to use gradle in the terminal and eclipse under windows, as the generated .
Missing pacman keys under ArchLinux/ARM
28 oct. 2018
When trying to install a package through pacman and in case of that kind of errors File ... is corrupted (invalid or corrupted package (PGP signature) : 23:31 root@callisto ~# upd :: Synchronizing package databases... core is up to date extra is up to date community is up to date alarm is up to date aur is up to date :: Starting full system upgrade... resolving dependencies... looking for conflicting packages.
How to quickly switch all containers as always restarted.
28 oct. 2018
Just use the following command to update all containers (even if they are running) : docker ps -q | while read CONTAINER_ID ; do docker update --restart=always "$CONTAINER_ID" done
Alias to quickly clean containers logs
28 oct. 2018
Containers’ logs are stored in json under the /var/lib/containers/ folder. Easiest way to retrieve them is to use the docker inspect command on each running container in order to retrieve the exact path. Hence the following script will do the job (to be stored in a docker-clean-logs.sh file) : #!/bin/zsh docker ps -a -q | while read DOCKER_ID ; do LOG_FILE=$(docker inspect --format='{{.LogPath}}' $DOCKER_ID) CONTAINER_NAME=$(docker inspect --format='{{.Name}}' $DOCKER_ID) if [[ !
Extraction des ressources graphiques au sein de l'.apk Xiaomi Home
13 août 2018
Etapes Télécharger le fichier .apk en ligne (par ex. depuis un site au hasard - les manipulations ci-dessous, à effectuer dans un shell sous linux, sont sans danger) : curl -sLo mi-home.apk "" Extraire le fichier se trouvant sous assets/plugin_config/plugin_config_cn.json unzip -p mi-home.apk assets/plugin_config/plugin_config_cn.json > plugin_config_cn.json Tester via jq que le fichier est correct : cat plugin_config_cn.json | jq Utiliser jq pour naviguer au sein de toutes les balises.
Configuration en mode bridge d'une box Numéricable et d'un routeur en frontal
04 août 2018
Au niveau de la BOX Numéricable elle-même. ETAPE 1. Switcher la BOX en mode “bridge” au lieu de “routeur” : revient à ajouter l’adresse MAC de la patte WAN du routeur (une seule adresse est possible) (attention la box NC continue de montrer un état « routeur »). ETAPE 2. Retirer toutes les redirections de ports : elles ne seront plus utilisées. ETAPE 3. Retirer le DHCP : l’ensemble du réseau local sera servi uniquement par le DHCP du routeur.
Commandes ALEXA
04 août 2018
Commandes Alexa Alarmes et minuteurs Bluetooth Calendrier Appels et messages Loisirs et nourriture Fêtes Vocabulaire et définitions Listes et à-faire Mathématiques & conversions Médias Divers Actualités Notifications Acheter en ligne Clin d’oeil & Amusant Recherche Sports Météo Commandes Alexa Commandes pour contrôler Alexa. Alexa, aide Alexa, muet Alexa, non-muet Alexa, stop Alexa, plus fort Alexa, moins fort Alexa, mets le volume plus fort Alexa, mets le volume moins fort Alexa, volume [1 à 10] Alexa, active [skill] Alexa, désactive [skill] Alexa, ouvre [skill] Alarmes et minuteurs Pour la gestion du temps.
Ad blocking on ASUS routers
04 août 2018
Ad blocking on ASUS routers. Blocking ads can be done in several ways : either by using local solutions on each computer / device (at the browser or system level), for example : ublock Origin on Chrome / FireFox through a dedicated extension (browser level) DNS66 on android (system level) either by setting up an ads blocking system at the local network level any computer with dnsmasq rules, … a dedicated PiHole installation.
Chroniques visuelles : playlists
27 déc. 2017
Top 2018 Bilan (Re-)Découvertes Mentions à part Semi-parcours 2018 Bilan Mentions à part Top 2017 Bilan Mentions à part (Re-)Découvertes Top 2016 Semi-parcours 2016 Top 2015 Top 2014 Top 2013 Bilan Mentions à part Top 2012 Bilan Mentions à part Non-écoutés (Re-)Découvertes Top 2011 Top 2010 Bilan Mentions à part Top 2018 Lien : http://dvdtator.canalblog.com/archives/2018/12/28/36974181.html
RFXCOM to MQTT
27 sept. 2017
Le boîtier RFXCOM, en version LAN (connecté par prise RJ-45 et non par USB), modèle RFXCOM Récepteur LAN RF 433.92 + 310-Mhz, 1 interface COM que j’avais acheté en 2008 traînait depuis quelques temps dans un placard, n’étant pas compatible avec OpenHAB 1.x. La version 2.0.x a apporté une compatibilité partielle, actuellement cassée en version 2.1.x. Afin de recabler ces sondes en y passant le moins de temps possible, il a donc été nécessaire de reconfigurer un hub xPL et d’ajouter un script PERL pour convertir les événements xPL en topics MQTT, auxquels OpenHAB sera abonné.
Limiting bandwidth while copying
23 sept. 2017
Not possible through cp, but one may use rsyncinstead. Limit is in kb/s. The additionnal flag --progress may be used if needed. rsync -av --bwlimit=5000 $UNXDOWN// .
Figeages du daemon Docker
27 juil. 2017
Analyse de l’état interne. Génération d’un thread dump via kill -SIGUSR1 $(pidof dockerd). Dans les logs du journal journalctl -xe on trouve alors : juil. 27 21:22:52 ns350873 dockerd[1763]: time="2017-07-27T21:22:52.918617952+02:00" level=info msg="goroutine stacks written to /var/run/docker/goroutine-stacks-2017-07-27T212252+0200.log" Et dans le fichier référencé, rechercher les threads locked. Certains sont normaux (runtime.gopark, runtime.goexit - souvent présents depuis le lancement), d’autres non comme : goroutine 15702 [syscall, 129 minutes, locked to thread]: github.
Montage SAMBA sous linux en ligne de commande
28 mai 2017
Dans le cas d’une erreur (particulièrement peu explicite) de type : mount error(5): Input/output error Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) Il faut ajouter le paramètre sec=ntlm dans les options du montage. mount -t cifs //192.168.8.176/Private$ /mnt/external/laptop -o username="sersimon",sec=ntlm,domain=CORP Remarque : ne pas mettre de / après le path CIFS. Et splitter le username / domain (i.e., “CORP\username” ne fonctionne pas). Pour tester manuellement l’accès (sans montage) :
Installer et configurer ArchLinux sur raspberry pi
17 mai 2017
Installation Post installations Update du système, installation des packages utiles Clavier FR et timezone Switch du shell vers zsh Configuration réseau Changement du password root Blocage connexion SSH par login/password et publication clés SSH Crontab Envoi de mails Firmware / système Firmware raspi-config Packages AUR Optimisation FS Caméra Configuration Streaming avec VLC Streaming avec mjpg-streamer Streaming avec VL42RtspServer Bluetooth (sur Raspberry PI 3) WiFi (sur Raspberry PI 3) Installation de java (oracle) Manuellement Depuis AUR Tests Cleanups Liens supplémentaires Installation Archlinux est probablement un des meilleurs choix pour Raspberry de par le principe de rolling-release (permettant de ne jamais avoir à réinstaller le système).
Configuration d'un repository authentifié sous Gradle
28 avr. 2017
Pour permettre l’accès depuis gradle a un repository sécurisé, il suffit de définir un nouveau repository au sein du fichier build.gradle : repositories { maven { credentials { username repoUser password repoPassword } url "https://ciq-repository.mpsa.com/repository/virtual/" } mavenCentral() } Puis, afin de préciser les logins et password (les entrées ci-dessus étant juste des clés), ajouter au sein du fichier gradle.properties du fichier ou au sein de la configuration globale gradle (dans le répertoire home de l’utilisateur courant) :
CloudAtCost : installation d'un VPS sous windows
05 janv. 2017
Sur le panel, demander l’installation d’un nous VPS de type “Windows 2012 Server” Une fois l’installation terminée, se logguer avec la console pour vérifier que tout fonctionne (notamment le réseau) Depuis un PC distant, par exemple sous Windows, lancer une session RDP : WIN + R puis mstsc.exe Renseigner l’adresse IP visible dans le panel CloudAtCost Renseigner Administrator comme compte de connexion Tuner au besoin les paramètres du déport d’affichage selon la bande passante disponible Il est possible d’enregistrer toutes ces infos (depuis cet écran de configuration) en un fichier .
Installation d'archlinux sur VPS (même si non proposé)
05 janv. 2017

Certains hébergeurs en ligne de serveurs dédiés ou VPS ne proposent pas toutes les distributions Linux lors de l’installation d’une machine : c’est le cas de CloudAtCost 1, qui propose des VPS à vie (facturé donc une seule fois en tout et pour tout), mais qui ne propose que des distributions Linux classiques (à ce jour, Debian, Ubuntu, CentOS, etc.) et notamment pas Archlinux 2.

Grafana
01 janv. 2017

Cet article présente l’installation d’une stack TICK permettant d’aggréger des métriques d’un ou plusieurs système, puis de les publier sur un dashboard.

Chaîne de publication automatisée d'un blog sous Hugo
01 janv. 2017

Ce blog a été reconfiguré sous Hugo (https://gohugo.io/), un générateur statique de pages HTML à partir de pages markdown, extrêmement souple et rapide (quelques millisecondes pour générer un grand nombre de pages).

Miroirs ArchLinux
31 déc. 2016

Sous Archlinux, pour créer un fichier mirroirs (/etc/pacman.d/mirrorlist) à jour et trié par vitesse de download, il suffit d’utiliser la commande reflector (à installer avec pacman -S reflector).

Awesome awesome lists
31 déc. 2016
“Awesomes lists” Liste Lien Awesome-awesome-awesome https://github.com/t3chnoboy/awesome-awesome-awesome/ Awesome-awesome-awesome https://github.com/jonatasbaldin/awesome-awesome-awesome/ Awesome Awesomeness https://github.com/bayandin/awesome-awesomeness/ Awesome https://github.com/sindresorhus/awesome/ Awesome Rust https://github.com/kud1ing/awesome-rust/ Awesome Java https://github.com/akullpp/awesome-java/ Awesome Electronics https://github.com/monostable/awesome-electronics/ Awesome Compilers https://github.com/aalhour/awesome-compilers/ Awesome subreddits https://github.com/iCHAIT/awesome-subreddits/ Awesome Hacking https://github.com/Hack-with-Github/Awesome-Hacking/ Awesome Vue.js https://github.com/vuejs/awesome-vue/ Awesome PHP https://github.com/ziadoz/awesome-php/ Awesome sysadmin https://github.
mdadm, ajout d'un disque supplémentaire
04 mai 2015

Rappel des opérations à réaliser pour ajouter un nouveau disque au sein d’une baie RAID existante et gérée par mdadm.

df customisé
04 mai 2015
function df { /usr/bin/df --output=target,source,fstype,size,used,pcent,avail -kh $1|grep -v ^none|(read header;echo "$header";sort) } A ajouter dans un fichier ~/.profile (bash), ~/.zshrc (zsh) ou de manière globale /etc/zsh/zshrc (zsh). Permet d’obtenir au final ce layout épuré : 23:42 root@jupiter ~# df Monté sur Sys. de fichiers Type Taille Utilisé Uti% Dispo / /dev/sdc2 ext4 63G 5,8G 10% 54G /boot /dev/sdc1 vfat 511M 73M 15% 439M /dev dev devtmpfs 16G 0 0% 16G /home /dev/sdc4 ext4 493G 317G 68% 151G /mnt/external/backups /dev/sdl1 ext4 1,8T 428G 25% 1,3T /mnt/external/usb1 /dev/sdb1 ext4 4,6T 4,5T 100% 19G /mnt/external/usb2 /dev/sdh1 ext4 4,6T 4,3T 95% 273G /mnt/external/usb4 /dev/sda1 ext4 4,6T 4,2T 98% 94G /mnt/external/usb5 /dev/sdn1 ext4 7,3T 3,9T 56% 3,1T /mnt/internal/raid /dev/md0 ext4 11T 11T 100% 106G /mnt/internal/sata /dev/sde1 ext4 1,8T 1,8T 100% 3,9G Plutôt que celui ci-dessous avec la commande par défaut, layout que personnellement j’avais fini par trouver totalement illisible :
Démarrer une virtualbox en plein écran sur un desktop dédié
12 déc. 2012
En trois lignes : démarrer la machine virtuelle avec la commande VirtualBox et les bons paramètres (startvm et fullscreen) récupérer l’ID de la fenêtre démarrée avec wmctrl positionner, toujours avec wmctrl, cette fenêtre sur un autre desktop Fonctionne parfaitement dans mon cas sur Ubuntu + Cinnamon. La version longue (à enregistrer dans un .sh, dont le premier paramètre sera le nom de la virtualbox et le deuxième le numéro du desktop) :
Eclipse, astuces & optimisations
21 août 2012
Ci-dessous les slides d’une présentation (réalisée et diffusée au travail au sein d’une équipe de développeurs) détaillant un certain nombre d’astuces, de raccourcis-claviers, d’optimisations, de plugins, que l’on gagne à connaître quand on utilise Eclipse comme IDE de développement Java. Il y a un peu de tout, chaque développeur en connaît forcément une bonne partie, mais peut-être pas tout. Cette présentation ne se veut aucunement exhaustive, c’est juste un moyen de centraliser un certain nombre d’informations à même de permettre de mieux utiliser l’outil.
Convertir une image virtuelle VMDK (VMWare) au format VirtualBox (VDI)
21 août 2012
vboxmanage clonehd image-source.vmdk image-destination.vdi -format VDI Ce qui s’avère plus efficace et plus direct que de faire un transfert logique avec un outil de clonage comme CloneZilla.
PS3MediaServer et boîtier Sony SMP-N200
08 mai 2012
Sony propose depuis quelques mois un boîtier multimédia dont le coeur est issu de celui de la PS3 : le boîter Sony SMP-N200. La navigation dans les menus reprend celle du XMB de la PS3. Pour accéder depuis ce boîtier, par le réseau, au contenu diffusé par PS3MediaServer, il faut utiliser la configuration suivante (adaptée depuis le fichier de configuration du lecteur BluRay de Sony). Fichier à placer au niveau de la configuration de PS3MediaServer : renderers/SMP-N200.
En finir avec les répertoires 'target/' de Maven
10 avr. 2012
Pour ne plus être pollué par le contenu des répertoires target/ de Maven (contenant notamment les classes compilées) lorsque l’on travaille sous Eclipse, il suffit de les marquer en derived. Ceci permet d’indiquer à Eclipse que le contenu de ce répertoire ne doit pas être pris en compte lors des recherches, lors des mécanismes de navigation type “Open Type” (CTRL+T), etc. C’est un vrai gain de temps sur de gros projets (sans compter que le résultat des recherches est dès lors plus clair).
Colorer différemment le background de vos sessions SSH
10 mars 2011
Pour mettre en couleur le fond d’un terminal sous Linux, il n’y a guère de solutions … Jusqu’ici le plus simple était de jouer avec les profils de Gnome-Terminal (ou autre) et d’associer à tous les onglets la même couleur de fond. Par contre pour avoir une couleur différente sur chaque onglet, c’était jusqu’ici mission impossible, ce qui au demeurant est relativement étonnant, pour ma part j’aurais besoin de cette fonctionnalité :
Choix du workspace Eclipse à utiliser au démarrage via un launcher interactif (Linux)
09 mars 2011
Comme je travaille avec plusieurs workspaces Eclipse (regroupant chaque plusieurs projets Eclipse corrélés entre eux, par ex. tous les modules d’un même projet, ou tous mes projets personnels Java ou PHP, ou tous mes projets de tests, etc.), il est beaucoup plus pratique pour moi de choisir le workspace sur lequel je veux travailler directement en démarrant Eclipse (plutôt que de switcher après coup). De fait, tous mes raccourcis Eclipse pointent en fait sur le script ci-dessous.
01 janv. 2001
Links http://www.amber-online.de/en/geograph.htm http://www.amber-online.de/en/maplist.htm https://inkarnate.com/ https://imgur.com/tWQmsSy http://www.oocities.org/_suhuy_/castle.html References From the books Amber-online.de PrimaMUSH Amber Geography This information is adapted from Strange Bedfellows PrimalMUSH This information is what most Amberites know: visitors and non-family members would not know all of it. Amber, Shadow and Reality Amber Castle Amber City Kolvir Rebma Tir-na Nog’th Arden Northern and Southern Oceans Golden Circle Amber, Shadow and Reality Shadows (people) who come to reside in Amber for a time begin to take on the appearance and attributes of natives.
01 janv. 2001
RUST Links Communities : REDDIT : https://www.reddit.com/r/rust Awesome Rust : https://github.com/awesome-rust-com/awesome-rust https://github.com/rust-unofficial/awesome-rust Users : https://users.rust-lang.org/ Frameworks : Tokio : https://github.com/tokio-rs/tokio + https://docs.rs/tokio/1.0.1/tokio/ Termion : https://github.com/redox-os/termion TUI-rs : https://github.com/fdehau/tui-rs Bevy (game engine) : https://bevyengine.org/ Druid (GUI) : https://github.com/linebender/druid Diesel (ORM ) : https://github.com/diesel-rs/diesel Piston (graphic library) : https://github.com/PistonDevelopers/piston CoreUtils https://github.com/uutils/coreutils Nannou (creative coding framework) : https://github.com/nannou-org/nannou Documentations : RustStarterKit : https://wiki.alopex.li/RustStarterKit2020 Cheat-rs : https://cheats.rs/ RUST option in one figure : https://www.
01 janv. 2001
Fractals Links Reddit Generative https://www.reddit.com/r/generative/ Golang implementation : Gobrot : https://github.com/esimov/gobrot https://www.reddit.com/r/golang/comments/jy9kq6/a_fractal_i_rendered_in_go_without_any_external/ RUST implementation : https://github.com/abour/fractal https://www.reddit.com/r/rust/comments/jyziio/a_fractal_i_rendered_with_rust_without_any/