applications
-
[Android] Application Automate
Automate est une application pour ordiphone sous Android permettant de programmer des scripts ou de lancer une série d'actions à l'aide de briques à la façon de Node-Red. Cette application est très puissante et offre un éventail de possibilités inouï, notamment en domotique. Vous trouverez sur cet artcile comment je l'utilise pour piloter mon ampli Yamaha : [Yamaha Ampli RX-V677] Pilotage par le réseau via l'API xml de Yamaha.
Site officiel : https://llamalab.com/automate/
La version gratuite est limitée à 30 blocs travaillant simultanément, sans publicité ou autre désagrément, ce qui est largement suffisant pour découvrir la puissance de cette application. Je vous conseille, comme moi, de soutenir ses développeur⋅euses en payant les 3,90€ demandés 😉 pour lever cette limitation, somme très raisonnable au demeurant.
Il faut dire qu'il faut prendre le temps de rentrer dans cette application mais avec le cas de mon ampli très particulier, je me suis rendu compte de sa puissance.Appli sur le store : https://play.google.com/store/apps/details?id=com.llamalab.automate
Je mets sur cette page des info et des liens utiles.
A- Comment accéder à des droits avec des privilèges élevés
Certaines actions nécessitent des droits avec des privilèges élevés comme par exemple "tuer" une application (commande "App Kill"). Il est donc nécessaire de paramétrer Automate pour le lui permettre.
Source : https://llamalab.com/automate/doc/adb.html.Dans Automate, aller dans "Settings" -> "Privileged service start method" et choisir "Android Debug Bridge (ADB). Ensuite, Automate guide l'utilisateur⋅rice pour réaliser les réglages dans Android en indiquant chaque étape.
À partir d'Android 11 (comme pour mon ordiphone Xiaomi), il faut simplement activer le debugage sans fil par wifi (Wireless debugging option) dans le mode développeur. Puis appairer l'ordiphone pour lui permettre de communiquer avec Automate, en restant appuyer sur l'option "débugage sans fil". -
[Virt-Manager] Informations, astuces utiles
Je recence sur cette page des informations utiles concernant l'utilisation de Virtual Machine Manager ou Virt-Manager sous GNU/Linux.
Tutoriel expliquant comment utiliser Virt-Manager avec une machine virtuelle sous Primtux8 : https://documentation.primtux.fr/books/manuel-de-ladministrateur/page/installation-en-machine-virtuelle-avec-virt-manager
Site officiel : https://virt-manager.org/.
Virt-Manager est équivalent à VirtualBox mais est plus léger et tout aussi performant. J'ai découvert ce système de virtualisation basé sur Qemu/KVM via cet article : https://www.citizenz.info/article/virtmanager-vs-virtualbox-une-belle-surprise.D'une manière générale, on trouve pas mal d'outils permettant d'interagir entre la machine hôte (host) et la machine virtuelle invitée (guest) sur ce site https://www.spice-space.org/.
A- Installation sous Linux Mint 22.1 / Ubuntu / Debian :
apt install bridge-utils virt-manager
Pour pouvoir émuler un Raspberry Pi 4 :
sudo apt install qemu-system-arm qemu-efi-arm
Remarque : J'ai essayé de compilé un Qemu plus récent pour disposer de l'émulation pour un Raspberry Pi 4 mais le fonctionnement avec Virt-Manager n'a pas été possible sous Linux Mint 22.1...
B- Pour permettre le partage du presse-papier entre l'hote et l'invité sous Windows 10 :
Dans la machine virtuelle sous Windows 10, il faut installer le paquet "spice-guest-tools.exe" : https://www.spice-space.org/download/windows/spice-guest-tools/spice-guest-tools-latest.exe.
C- Pour permettre le partage d'un dossier entre l'hote et l'invité sous Windows 10 :
Source : https://www.debugpoint.com/kvm-share-folder-windows-guest/
Remarque : C'est plus compliqué que sous VirtualBox...D- Réinstaller complètement Virt-Manager/Qemu/KVM :
Après avoir compilé la dernière version de Qemu et essayé de l'installée, j'ai corrompu Virt-Manager. Il a donc fallu le ré-installer proprement sans supprimer les images des machines virtuelles déjà existantes à condition qu'elles n'aient pas été enregistrées dans le dossier /var/lib/libvirt. Pour cela, saisir les commandes suivantes :
Dans le dossier où on a compilé, lancer la commande pour supprimer les modules dans /usr/local/bin :
sudo make uninstall
sudo apt purge --auto-remove qemu qemu-system* libvirt* virt-manager
sudo rm -rf /var/lib/libvirt /var/log/libvirtRemarque : le dossier contenant les images se trouve dans le dossier suivant : /etc/libvirt (À NE PAS SUPPRIMER !!!).
-
Développer en html, css et javascript
Page aide-mémoire pour m'aider à développer des applications web...
Les applications web ont l'énorme avantage d'être utilisables à travers un navigateur web et sont donc interopérables par défaut quels que soient les systèmes d'exploitation et le matériel (tablettes par exemple).Ressources en ligne :
- Développer des applications html5 de A à Z : http://diveintohtml5.info
- Créer des Web applications : https://www.freecodecamp.org/news/build-a-pwa-from-scratch-with-html-css-and-javascript/
I- Choix de l'outil pour développer : VSCodium
Après quelques recherches sur Internet, j'ai choisi VSCodium qu'on peut installer dans Ubuntu. C'est la version libre de VSCode proposé par Microsoft (oui, oui...) et qui dispose de nombreuses extensions : https://github.com/VSCodium/vscodium. Je dois reconnaître que pour une fois Microsoft propose une application très intéressante avec des outils facilitant grandement la programmation : visualiseur MarkDown pour les ReadMe, visualiseur HTML, erreurs de syntaxes,...
Autre bonne surprise : VSCode est intégré dans Gitlab et en particulier la forge https://forge.apps.education.fr/, ce qui permet de ré-investir ses connaissances/habitudes !!!
Du coup, on peut installer l'extension "Gitlab Workflow" pour lier VSCodium et le dépôt Gitlab du projet : https://blog.jbriault.fr/vscode-gitlab-workflow/.Extensions utiles de VSCodium (attention certaines nécessite NodeJS) :
- GitLab Workflow de GitLab
- Live Preview de Microsoft
- open in browser de TechER
- vscode-icons de VSCode Icons Team
- Svelte for VS Code de Svelte (NodeJS)
- ESLint (NodeJS)
A- Pour lier ses dossiers locaux avec le Gitlab de la Forge Éduc
- Voir ce tutoriel permettant de se connecter avec un jeton en https : https://forge.apps.education.fr/laurent.abbal/utiliser-la-forge-avec-vscodium-ou-visual-studio-code
- Il est aussi possible de se connecter par clé ssh :
- Pour générer une clé ssh sur son ordi sous Linux Mint dans le dossier caché de son home ".ssh" :
ssh-keygen -t ed25519
- Dans son dossier .ssh, on va ouvrir avec un éditeur , la clé publique se terminant par l'extension ".pub" et on la copie dans le presse papier.
- Sur le site Gitlab, https://forge.apps.education.fr dans son compte, on va dans les préférences et on ajoute cette clé SSH en collant le contenu du presse-papier.
- Pour vérifier si une clé fonctionne et qu'il n'y a pas de refus d'accès avec le message "Permission denied (publickey)", dans le terminal de son ordinateur on tape :
ssh -Tv
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. - Si tout se passe bien, on pourra se connecter à partir de VSCodium au Gitlab de la Forge et cloner un des projets qui nous appartient. Pour cela, dans le site gitlab, on va sur le projet à cloner, on clique sur le bouton bleu "Code" et on copie le contenu du champ "Cloner avec SSH" qui commence avec "
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. :xxxxxxxxxxxxxxxxxxxxxx". - Dans VSCodium, dans une nouvelle fenêtre, on ouvre le panneau de commande avec CTRL+Maj+P, on recherche et on choisit "git: Cloner", puis on indique l'adresse de la forge https://forge.apps.education.fr/nom_de_son_groupe_gitlab et il suffira de choisir le projet qui nous intéresse.
- Pour générer une clé ssh sur son ordi sous Linux Mint dans le dossier caché de son home ".ssh" :
B- Comment jongler avec différents projets sur la Forge avec VSCodium
Si l'on travaille sur des projets différents dans la Forge, par défaut VSCodium s'ouvre sur le dernier. Pour en changer, il faut ouvrir une nouvelle fenêtre (CTRL+Maj+N)dans VSCodium et choisir le dossier local contenant les sources : la synchronisation se mettra en place automatiquement (grâce au dossier caché .git).
II- Tutoriels
Pour commencer, il est nécessaire de suivre des tutoriels...
-
Utiliser l'application ScottieGo Edu sous Linux Mint 22.1
Afin de tester différents outils pour l'apprentissage de la programmation, l'Éducation Nationale a proposé de tester un kit robotique. Parmis ces outils, il y a le jeu Scottie Go qui utilise une application qui ne fonctionne nativement que sous Android et Windows (GRRR !!!). J'ai écris à l'éditeur pour lui demander de proposer une version fonctionnant sous GNU/Linux mais c'est resté lettre morte... Il faut vraiment que l'institution se pose la question de l'interopérabilité des outils qu'elle propose car en l'état, ce n'est pas utilisable avec Primtux.
Je me suis donc résolu, à contre-coeur, a essayé de faire fonctionner Scottie Go sous GNU/Linux à l'aide de Wine/PlayOnLinux, sachant que ça n'est pas à la portée de tous et toutes.
Après pas mal d'essais infructueux, j'ai réussi à lancer l'application à l'aide de PlayOnLinux (mais on verra qu'elle n'est pas complètement fonctionnelle).
I- Installation de PlayOnLinux et de ScottieGoEdu
PlayOnLinux permet d'utiliser plusieurs configurations de Wine et ainsi de faire de nombreux tests.
A- Nettoyage/Ré-initialisation de Wine
- On va partir sur une installation propre avec les commandes suivantes :
sudo apt remove --purge wine winehq-stable winehq-devel winehq-staging winetricks playonlinux
sudo apt autoremove
rm -rf ~/.wine ~/.wine-rdworks ~/.config/wine
- Puis on redémarre avec la commande : sudo reboot
B- Réglages dans PlayOnLinux
- On installe PlayOnLinux avec la commande :
sudo apt install playonlinux -y
- On installe Winetricks (permet d'installer des dll Windows dans Linux) avec la commande :
sudo apt install winetricks
- Dans un terminal, on lance PlayOnLinux avec la commande (le & permet de garder la main dans le terminal) :
playonlinux &
- Dans PlayOnLinux, on va dans le menu "Outils" → "Gérer les versions de Wine" → Dans l'onglet "Versions de Wine (x86)" qui correspond à la version 32 bits, on récupère Wine 8.1-staging et on l'installe sur son ordinateur.
- On crée ensuite un conteneur (lecteur virtuel), en cliquant sur le bouton "Configurer" → puis "Nouveau" → "32 bits windows installation" → on choisit la version wine 8.1 (la version 8.1-staging n'apparaît pas...) → on donne un nom de conteneur par exemple "ScottieGo".
- Au bout de quelques instants (le temps que Wine se configure), on voit apparaître ce nouveau disque virtuel "ScottieGo" et on clique dessus pour voir ses 5 onglets de paramétrages :
- Dans l'onglet "Général", on choisit la version 8.1-staging et on accepte le changement dans le message d'avertissement (warning).
- Dans l'onglet "Wine", on clique sur l'icone "Configurer Wine" :
- Dans la configuration, on choisit la version "Windows 10".
- Dans l'onglet "Staging", on coche "Enable CSMT...", "Enable VAAPI..." et "Hide Wine version from applications".
- Pour valider ces changements → on clique sur "OK".
- Dans l'onglet "Divers", on clique sur "Lancer un .exe dans ce disque virtuel" → on choisit le programme "Install_ScottieGoEdu.exe" et on procède à son installation. À la fin, on accepte de redémarrer Windows.
- On revient dans l'onglet "Général", et on clique sur le bouton "Créer un nouveau raccourci depuis ce disque virtuel" → on choisit le programme "ScottieGoEdu.exe" et une fois installée, on clique sur "Je ne veux pas créer d'autres icônes".
On a maintenant une icône "ScottieGoEdu" sur la page d'accueil de PlayOnLinux qui va nous permettre d'exécuter cette application.
Tout fonctionne sauf quen l'état, il n'est pas possible d'utiliser de caméra pour pouvoir autocorriger !!! Pourtant les caméras sont bien détectées (quand j'en branche une, j'ai bien 2 caméras sélectionnables avec celle intégrée sur mon ordinateur) mais rien ne s'affiche. Il va falloir creuser la gestion des caméras dans Wine...
II- Paramétrer les caméras pour les utiliser dans Wine
PHASE DE RECHERCHE - NON FONCTIONNEL
Pour savoir quelles caméras sont détectées sous Linux Mint, on tape la commande suivante :
v4l2-ctl --list-devices
Là, on récupère le chemin correspondant à la caméra que l'on souhaite utiliser et qui sera de la forme : /dev/videoX (remplacer le X par le n° de la webcam). Ensuite on crée un lien symbolique renvoyant vers cette caméra dans son disque virtuel PlayOnLinux :
ln -s /dev/videoX ~/.PlayOnLinux/wineprefix/ScottieGo/dosdevices/webcam0
Installation de DirectShow avec la commande dans le terminal de PlayOnLinux :
WINEPREFIX=~/.PlayOnLinux/wineprefix/ScottieGo winetricks quartz devenum directshow