Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
ressource:logiciel:foxdot_troop:configuration_serveur_troop_debian_10 [2021/09/28 22:54]
emoc créée
ressource:logiciel:foxdot_troop:configuration_serveur_troop_debian_10 [2022/02/01 15:42] (Version actuelle)
grandk
Ligne 1: Ligne 1:
 +{{tag> livecoding troop foxdot em}}
 +
 ====== Configuration d'un serveur Troop sur debian 10 ====== ====== Configuration d'un serveur Troop sur debian 10 ======
  
-But : avoir un ordinateur capable de lancer rapidement un serveur troop pour liveocder ​de la musique à plusieurs sans passer une plombe à régler des petits bidules techniques...+Page créée le 28 septembre 2021 / Projet en cours 
 + 
 +But : avoir un ordinateur capable de lancer rapidement un serveur troop pour livecoder ​de la musique à plusieurs sans passer une plombe à régler des petits bidules techniques... ​\\ 
 +En somme : une machine avec un bouton on-off et qui affiche l'​adresse IP, la version de troop nécessaire en gros caractères! 
 + 
 +Pour se faire, un [[materiel:​inventaire_client_leger_hp_t510#​cl21meridion|client léger M73]] est utilisé (CL21 Meridion) 
 + 
 +===== Configuration ===== 
 + 
 +Système : Debian 10.9 Buster avec LXDE 
 + 
 +**Réglage des polices** : 
 + 
 +  * en commande ''​lxappearance'',​ puis régler la police en 8 
 +  * dans //​menu/​préférences/​openbox configuration manager// : passer les tailles de police en 8 
 +  * cliquer droit sur le bureau / préférences du bureau : changer la taille de police en 8 
 + 
 +**Configuration du dongle wifi ( Realtek ​ RTL8188CUS)** ... 
 + 
 +Ajouter les paquets non-free dans ''/​etc/​apt/​sources.list''​ 
 + 
 +  deb http://​deb.debian.org/​debian/​ buster main contrib non-free 
 +  deb-src http://​deb.debian.org/​debian/​ buster main contrib non-free 
 +   
 +  deb http://​security.debian.org/​debian-security buster/​updates main contrib non-free 
 +  deb-src http://​security.debian.org/​debian-security buster/​updates main contrib non-free  
 + 
 +Suivant le modèle de clé wifi il peut être nécessaire d'​installer des paquets. Pour identifier un firmware manquant, dans un terminal taper 
 +  sudo dmesg |grep firm 
 +Puis rechercher dans votre moteur de recherche préféré le paquet qui fourni le firmware désiré, par exemple pour une clé Ralink RT5370 identifiée 148f:5370, le firmware rt2870.bin est fourni par le paquet firmware-ralink 
 + 
 +Puis en commande 
 +  su                                   # passer en root 
 +  apt-get update ​                      # mise à jour de la liste des paquets 
 +  apt install firmware-realtek ​        # installer les drivers wifi 
 + 
 +Le module est reconnu mais n'​apparait pas dans wicd, pour qu'il apparaisse il a fallu récupérer le nom de l'​interface wifi avec ''​ip ad''​ et l'​écrire dans les préférences de wicd (parametres généraux / interfaces réseau / interface sans fil), puis actualiser. Il peut être nécessaire de redémarrer la machine. \\ 
 + 
 +**Installation de quelques paquets logiciels** 
 +  su                                   # passer en root 
 +  apt-get update ​                      # mise à jour de la liste des paquets 
 +  apt install htop terminator git      # outils de base 
 + 
 +**Installation pip** (python2 et python3 sont pré-installés sur Debian 10) [[https://​computingforgeeks.com/​how-to-install-pip-2-pip-3-on-debian/​|source]] 
 +  su 
 +  apt install python-pip ​              # installer pip2, confirmer avec pip --version ou pip2 --version 
 +  apt install python3-venv python3-pip # installer pip3,​ confirmer avec pip3 --version  
 +  apt install python3-tk ​              # pour tkinter 
 +  pip3 install tk 
 + 
 +**Installation supercollider** 
 +  su 
 +  apt install supercollider 
 + 
 +**Installer foxdot** 
 +  su 
 +  pip3 install FoxDot 
 +  exit 
 + 
 +Démarrer supercollider (dans LXDE : menu //démarrer / son et vidéo / supercollider IDE// ) 
 +Dans l'​éditeur de supercollider,​ écrire la ligne suivante, puis <​key>​CTRL</​key>​+<​key>​ENTER</​key>​ pour l'​activer 
 +  Quarks.install("​FoxDot"​) 
 +Puis dans le menu //​Language//,​ choisir //Recompile class library// 
 + 
 +(Je n'​installe pas les sc3-plugins,​ nécessaires pour certains effets : https://​github.com/​supercollider/​sc3-plugins) 
 + 
 +Ensuite on démarre avec FoxDot.start dans l'IDE de supercollider (et CTRL+ENTER),​ ça c'est si tout marche bien, dans le cas présent, ça n'a pas marché aussi vite (cf problème avec jackd ci-dessous) 
 + 
 +**Installer troop** \\ 
 + 
 +Récupérer depuis github : https://​github.com/​Qirky/​Troop ​ \\ 
 +Décompresser,​ puis pour démarrer 
 +  python3 /​home/​xor/​troop-0.10.3/​run-server.py 
 +Eventuellement 
 +  python3 /​home/​xor/​troop-0.10.3/​run-client.py 
 + 
 + 
 +==== Problèmes rencontrés et résolus ==== 
 + 
 +=== Problème avec jackd === 
 + 
 +Lancer FoxDot.start déclenchait le message suivant : 
 +  could not initialize audio. 
 +  Server '​localhost'​ exited with exit code 0.  
 +Du à un problème avec jackd qui n'​arrivait pas à se lancer ...\\ 
 +En fait la carte audio n'est pas hw:0 (on peut s'en rendre compte avec le résultat de ''​aplay -l''​ ) 
 +Il faut lancer jackd au préalable, sur la bonne carte audio hardware ( [[https://​github.com/​jackaudio/​jack2/​issues/​312|source]] ) 
 +  pulseaudio -k              # stopper pulseaudio 
 +  jackd -rd alsa -d hw:1     # lancer jackd sur la bonne carte audio! 
 + 
 +===== Démarrage ===== 
 + 
 +Procédure pour démarrer FoxDot et Troop **(à retester)** 
 + 
 +  pulseaudio -k              # stopper pulseaudio, peut-être superflu 
 +  jackd -rd alsa -d hw:1     # lancer jackd sur la bonne carte audio! 
 +  # dans l'IDE supercollider : 
 +  # FoxDot.start suivi de CTRL + ENTER 
 +  python3 -m FoxDot & 
 +  #  
 +  python3 /​home/​xor/​troop-0.10.3/​run-server.py 
 +  # dans un autre terminal 
 +  python3 /​home/​xor/​troop-0.10.3/​run-client.py & 
 + 
 +===== Démarrage automatique ===== 
 + 
 +**TO BE CONTINUED...**
  
 +démarrer tout, récupérer l'​adresse IP, créer un fichier html à la volée et l'​afficher avec xdg-open
  
 +Le script ressemble à ça : (et fonctionne!)
 +<​code>​
 +pulseaudio -k                          # arrêter pulseaudio
 +jackd -rd alsa -d hw:1 &               # démarrer jack sur la carte audio adaptée à cet ordi
 +sleep 2
 +sclang /​home/​xor/​troop-0.10.3/​start_foxdot.scd &    # démarrer le serveur supercollider et foxdot ​
 +sleep 6
 +python3 -m FoxDot &                    # démarrer un IDE foxdot ​           ​
 +sleep 4
 +python3 /​home/​xor/​troop-0.10.3/​run-server.py --port=57890 --password="​ok"​ &  # serveur troop
 +sleep 3
 +variable=`hostname -I`                 # récupérer l'​adresse IP dans une variable
 +echo $variable
 +# créer un fichier HTML avec les infos du serveur
 +echo "<​html><​h1>​Pour se connecter au serveur Troop : </​h1><​h1>​IP : $variable</​h1><​h1>​Port : 57890</​h1><​h1>​password : ok</​h1></​html>"​ > troop.html
 +sleep 2
 +xdg-open ./​troop.html ​                 # afficher le fichier (le navigateur sera choisi automatiquement)
 +sleep 2
 +python3 /​home/​xor/​troop-0.10.3/​run-client.py &  # ouvrir un client troop 
 +echo "tout est lancé"​
 +</​code>​
  
 +C'est un peu cracra et il reste à le lancer au démarrage, peut être configurer le client automatiquement aussi
  
 +**TO BE CONTINUED...**
  • ressource/logiciel/foxdot_troop/configuration_serveur_troop_debian_10.1632862448.txt.gz
  • Dernière modification: 2021/09/28 22:54
  • par emoc