Je m’étais promis que ma dernière installation de Fedora (22?) serait la dernière, qu’à présent j’avais grandis et que je pouvais finalement, passé 30 ans, me poser un peu sur le système à utiliser. Bah non. L’appel de la nouveauté et le goût d’un système instable m’ont de nouveau fait plonger dans les méandres des distributions Linux à installer sur mon matériel…
Après avoir un peu fouillé distrowatch, je pensais repasser sur Arch grâce à Arch-Anywhere, pour une installation d’ArchLinux en 30 secondes-montre-en-main (en vrai, c’est plus proche de 45-50 minutes, surtout quand on a explosé son quota de téléchargement chez son FAI adoré et qu’on se retrouve limité à 300kB/s).
Bon. En fait, je n’ai plus l’âge de tripatouiller une distribution de barbu: ArchLinux, c’est passé. Après l’installation,
Slim m’annonçait une disposition clavier en en-US
avec un KDE derrière en fr-BE
. Pas envie de chipoter, je voulais un truc qui “juste marche”.
Bref, Solus. En fait, c’est ‘achement rafraîchissant: le système est hyper réactif (mais vraiment hein: ça boot en 2 secondes après que Grub se soit chargé, sur du matériel relativement récent).
Outils et programmation #
Si vous devez installer un environnement de développement, pensez toujours à ajouter *-devel
à l’installation; par exemple python-devel
ou ruby-devel
, sans quoi vous n’aurez pas les librairies, et a priori, il y aura peu de choses qui fonctionneront… :)
Pour Ruby, on doit aller un chouia plus loin, puisque l’installation des Development Tools se fait grâce à la commande sudo gem update --system
. Après cela, aucun soucis pour installer compass
avec gem install compass
.
Autres bonnes nouvelles: vscode et atom sont intégrés directement dans les dépôts de la distribution. Parmi les third parties, on trouve également Android Studio, Idea, SublimeText3 et PyCharm. Le choix est là, et c’est le top.
Carte d’identité électronique #
En Belgique, on a une carte d’identité électronique, avec une puce, un code PIN, et on peut faire plein plein de choses super utiles avec (comme remplir sa déclaration d’impôts). Il y a deux paquets à prendre en compte pour cela (le middleware et le viewer); tout est expliqué sur la page d’accueil du projet pour les principales distributions. Pour les autres, il y a les sources :) Solus faisant partie “des autres”, il y a quelques dépendances à résoudre avant d’arriver à compiler le nécessaire:
sudo pisi install pcsc-lite-devel libusb-devel libgtk-3-devel openjdk-8
./configure
make
sudo make install
On a aussi besoin des drivers ccid
, qui ne sont pas dispos dans les dépôts. On peut les télécharger
ici, et les installer en suivant la manière classique (./configure; make; sudo make install
). L’installation nous informe qu’il ne faut surtout pas oublier de copier le fichier src/92_pcscd_ccid.rules
dans le répertoire /etc/udev/rules.d/
. A l’occasion, il faudra que je creuse pourquoi cette étape n’est pas effectuée en même temps que l’installation…
Démarrez ensuite pcscd
en mode foreground avec les traces de debug avec les options -f -d
. Cela vous permettra de vérifier et valider que votre lecteur USB est correctement détecté. Si cela coince, vous devrez vous débrouillez pour trouver les pilotes ccid compatible avec votre matériel. Par exemple avec un lecteur ACR38
en USB: dmesg
le détecte bien, mais pcscd
ne comprend que dalle. Il suffit alors de télécharger le pilote ccid sur le site du constructeur, de l’installer, et de redémarrer les démons:
$ dmesg
[ 710.951271] usb 2-3: new full-speed USB device number 8 using xhci_hcd
[ 711.122192] usb 2-3: New USB device found, idVendor=072f, idProduct=9000
[ 711.122194] usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 711.122196] usb 2-3: Product: ACR38 USB Reader
[ 711.122197] usb 2-3: Manufacturer: ACS
$ sudo pcscd -f -d
ccid_usb.c:313:OpenUSBByName() Using: /usr/lib64/pcsc/drivers/ifd-acsccid.bundle/Contents/Info.plist
ccid_usb.c:331:OpenUSBByName() ifdManufacturerString: Advanced Card Systems Ltd.
ccid_usb.c:332:OpenUSBByName() ifdProductString: ACS CCID driver
ccid_usb.c:333:OpenUSBByName() Copyright: This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later
ccid_usb.c:706:OpenUSBByName() Found Vendor/Product: 072F/9000 (ACS ACR38U)
ccid_usb.c:708:OpenUSBByName() Using USB bus/device: 2/9
acr38cmd.c:519:ACR38_SetCardVoltage() cardVoltage: 0
acr38cmd.c:600:ACR38_SetCardType() cardType: 0
ccid.c:728:ccid_open_hack_post() Firmware: ACR38-1100
Et voilà! Un peu plus compliqué que sur une autre distribution, mais cela fonctionne :)
Le pilote Firefox fonctionnera (pour peu que vous l’ayez installé, forcément). Par contre, avec les traces de pcscd
, on a vraiment l’impression que ce module consomme énormément. Quand vous ne l’utilisez pas, il peut être intéressant de le désactiver complètement. On perdrait en confort ce qu’on gagnerait en performances.