PROJET AUTOBLOG


Le blog de Seboss666

Site original : Le blog de Seboss666

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Un démarrage « graphique » sur Manjaro

mercredi 15 mai 2019 à 18:30

L’idée de masquer le plus possible les messages du démarrage d’un OS Linux avec un joli logo animé est intéressante. On peut la constater chez Fedora, chez Ubuntu, et Tuxicoman a montré comment procéder sous Debian (c’est d’ailleurs lui qui m’a inspiré ce billet). Mais pas chez ArchLinux ou Manjaro. Sur cette dernière, une solution différente et un peu technique a été proposée, elle demande quelques manipulations, que je vais détailler ici.

En effet, ça repose sur l’installation de quelques paquets et la modification de fichiers de configuration, tout ça en mode administrateur. Le résultat est intéressant cependant, parfaitement stable chez moi, donc ne boudons pas notre plaisir de bricoler un peu.

On commence par installer deux paquets : bootsplash-systemd et bootsplash-theme-manjaro. Il existe plusieurs thèmes, j’ai fait l’essai avec celui-là, il n’est pas le plus joli mais ça permet de valider le fonctionnement (j’y reviens tout à l’heure). Certains thèmes sont présents dans les dépôts, d’autres seront à installer par d’autres biais :

$ yay -Ss bootsplash
aur/bootsplash-theme-bgrt 0.1-1 (+2 0.04%) 
    BGRT bootsplash theme
aur/exquisite 1.0.0-1 (+3 0.00%) 
    Bootsplash program able to render in Framebuffer, or X11 (Enlightenmen17 component)
extra/bootsplash-theme-xfce 0.1-3 (42.7 KiB 658.0 KiB) 
    Bootsplash Theme XFCE Logo
extra/bootsplash-theme-vendor 0.1-2 (25.6 KiB 540.0 KiB) 
    Bootsplash Theme Vendor Logo
extra/bootsplash-theme-manjaro 0.1-2 (25.8 KiB 625.0 KiB) (Installed)
    Bootsplash Theme Manjaro Logo
extra/bootsplash-theme-kde 0.1-3 (27.4 KiB 658.0 KiB) 
    Bootsplash Theme KDE Logo
extra/bootsplash-theme-illyria 0.1-2 (26.9 KiB 663.0 KiB) 
    Bootsplash Theme Illyria Logo
extra/bootsplash-theme-gnome 0.1-2 (32.2 KiB 720.0 KiB) 
    Bootsplash Theme Gnome Logo
extra/bootsplash-theme-arch 0.1-2 (31.1 KiB 695.0 KiB) 
    Bootsplash Theme Arch Linux Logo
extra/bootsplash-theme-amd 0.1-2 (28.9 KiB 652.0 KiB) 
    Bootsplash Theme AMD Logo
extra/bootsplash-systemd 0.1.2-1 (14.2 KiB 23.0 KiB) (Installed)
    Systemd service files for Bootsplash

On peut donc ensuite s’attaquer aux fichiers de configurations, à commencer par /etc/mkinitcpio.conf. Ce fichier est responsable de la configuration des images de démarrage système contenant notamment le noyau. A chaque mise à jour noyau, mkinitcpio va reconstruire les images de démarrages pour chaque version installée (sous Manjaro, vous pouvez avoir plusieurs versions installées très simplement), en suivant les paramètres de ce fichier de configuration. Il faut identifier la ligne qui commence par « HOOKS= », et ajouter un élément à la fin de la liste :

HOOKS="base udev autodetect modconf block keyboard keymap resume filesystems fsck bootsplash-manjaro"

Ici, on ajoute bootsplash-manjaro à la fin, manjaro étant le nom du thème, à adapter à la situation. On peut ensuite relancer la construction des initramfs (via root ou sudo) :

$ sudo mkinitcpio -P
==> Building image from preset: /etc/mkinitcpio.d/linux418.preset: 'default'
  -> -k /boot/vmlinuz-4.18-x86_64 -c /etc/mkinitcpio.conf -g /boot/initramfs-4.18-x86_64.img
==> Starting build: 4.18.20-1-MANJARO
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [resume]
  -> Running build hook: [filesystems]
  -> Running build hook: [fsck]
  -> Running build hook: [bootsplash-manjaro]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-4.18-x86_64.img
==> Image generation successful

Le deuxième fichier, c’est /etc/default/grub. C’est celui qui sert de base à la construction du menu qui vous permet de choisir le noyau voire le système d’exploitation (dans le cadre d’un multi-boot) que vous souhaitez utiliser lors du démarrage de la machine. Ici, le minimum vital pour que le bootsplash fonctionne, j’ai fait cette modification :

#Ligne originale
#GRUB_CMDLINE_LINUX_DEFAULT="quiet resume=UUID=bd3d39da-18e6-425a-ae41-34cbaba1f79d"

#Ligne modifiée
GRUB_CMDLINE_LINUX_DEFAULT="bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash resume=UUID=bd3d39da-18e6-425a-ae41-34cbaba1f79d"

Une fois encore, bootsplash-themes/manjaro/bootsplash contient le nom du thème qui doit être chargé, donc il faut adpater en fonction de celui-ci. Notez bien qu’on enlève la directive quiet, qui dans le démarrage par défaut masque les messages de démarrage des services, pour n’afficher que les infos finales des partitions, et d’éventuels messages d’erreur (ce que j’avais sur le Chromebook avec le 4.14 avec la carte son mal supportée).

Il faut ensuite mettre le menu à jour en lançant la commande update-grub :

$ sudo update-grub
Generating grub configuration file ...
Found background: /usr/share/grub/background.png
Found linux image: /boot/vmlinuz-4.19-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-4.19-x86_64.img
Found initrd fallback image: /boot/initramfs-4.19-x86_64-fallback.img
Found linux image: /boot/vmlinuz-4.18-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-4.18-x86_64.img
Found initrd fallback image: /boot/initramfs-4.18-x86_64-fallback.img
Found memtest86+ image: /boot/memtest86+/memtest.bin

Voilà, c’est fini, il ne reste plus qu’à redémarrer et à contempler le premier résultat. Voir un logo c’est quand même plus agréable que des messages texte, et si les messages vous intéressent quand même, un appui sur la touche échap vous ravira.

Quelques raffinements supplémentaires, parce que j’ai une carte Intel

Pour être honnête, le résultat n’est pas 100% parfait. En effet, il reste encore des « clignotements » pendant le démarrage, lié à plusieurs étapes de configuration de l’écran. Heureusement, j’ai du matériel Intel, fabricant très actif sous Linux qui propose notamment un raffinement : fastboot, qui permet justement d’éviter les multiples reconfigurations jusqu’à ce que X démarre (ou Wayland, notamment sur Fedora). Pour l’activer, il y a plusieurs méthodes, j’ai choisi d’ajouter l’option au démarrage de grub. Retour donc dans le fichier /etc/default/grub, pour obtenir le résultat suivant :

GRUB_CMDLINE_LINUX_DEFAULT="bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash i915.fastboot=1 resume=UUID=bd3d39da-18e6-425a-ae41-34cbaba1f79d"

Et un petit coup d’update-grub pour parfaire le tableau.

Mais ce n’est pas tout. J’ai aussi découvert qu’on pouvait faire un truc en plus, au petit nom de « Early KMS » (on remercie une fois de plus le wiki d’ArchLinux), qui permet de charger le module graphique plus tôt qu’en temps normal. Il faut retourner cette-fois dans /etc/mkinitcpio.conf, et chercher la ligne qui commence par « MODULES= » :

#Ligne d'origine
#MODULES=""

#Ligne modifiée
MODULES="i915"

Une fois encore, il faut relancer la construction avec mkinitcpio -P, et un dernier reboot pour tout valider. Il doit être possible de faire la même chose pour les autres cartes graphiques dont les pilotes exploitent KMS, je vous laisse chercher.

En tout cas, ça fonctionne vraiment pas mal, il resterait éventuellement la transition entre le logo de chargement et la mire de login de Cinnamon, la transition est plutôt abrupte, mais là je n’ai rien trouvé de probant pour l’adoucir. Un simple fondu, ça devrait pas être compliqué non ?

Prochaine étape : faire son propre thème, l’installation sur Chromebook, tester l’alternative

Je n’ai pas encore compris tous les détails techniques sur la création du thème, mais grosso modo tout est documenté dans ce dépôt, donc quand j’aurai compris, et si je suis motivé, je me ferai mon propre thème.

Les autres distributions, comme le montre tuxicoman sous Debian, reposent plutôt sur une autre méthode, Plymouth, qui existe depuis assez longtemps maintenant, et dont l’installation est également possible sur Manjaro, c’est documenté sur leur Wiki qui explique les petites spécificités par rapport à ArchLinux. J’avais déjà essayé sur ma première installation à l’époque quand j’utilisais encore KDE, ça ne s’était pas vraiment bien passé. Je n’avais jamais retenté, c’est peut-être l’occasion. Je vais même peut-être utiliser le Chromebook pour ça.

PS : comme je n’ai pas la science infuse, ma base de travail a été ce post du forum Manjaro, qui centralise en anglais tout ce dont on a besoin pour mettre en place bootsplash.

J’ai du son sur mon Chromebook !

lundi 13 mai 2019 à 18:30

Ouais ça parait bizarre dit comme ça, mais c’est un des dommages collatéraux de la suppression de ChromeOS sur le Chromebook. Je n’ai pas voulu abandonner comme ça, et j’ai finalement eu la solution, et vu certains de mes résultats de recherche, y’a vraiment besoin de faire quelque chose de propre en français.

Une recherche compliquée, des résultats, comment dire…

Entre des bugs résolus de manière très spécifiques à certains OS (GalliumOS), voire à certains Chromebooks, je n’ai pas vu grand chose de générique ou d’adapté à mon cas. Pire, sur le forum Ubuntu-fr, on trouve un champion qui a lancé un truc de la mort, qui ne fonctionne que pour Ubuntu semble-t-il vu le contenu de la commande, et le mec ne semble pas plus curieux de ce que ça fait dans le détail; alors que dans le tas y’a des suppressions de fichiers de configuration système, pépouze.

Mais j’ai fini par trouver mon bonheur, et j’ai décidé de faire un petit récapitulatif/pas à pas pour que vous puissiez avoir toutes les cartes en main si jamais d’aventure vous seriez concernés.

Celeron N2840, un Atom qui ne dit pas son nom

Depuis pas mal d’années, Intel découpe sa gamme de processeurs avec la hiérarchie suivante, du plus au moins puissant :

Core > Pentium > Celeron > Atom

Au départ, les trois premiers partageaient la même architecture, et donc la même plateforme technique sous-jacente, ce qui inclut des dépendances comme le son qui nous occupe aujourd’hui. Mais ils ont par moment décidé de brouiller les pistes, avec, et c’est le cas ici, un Celeron basé sur une architecture Atom, plateforme Bay Trail pour être précis, avec toutes les spécificités qui s’y rapportent, en premier lieu un soin en matière de support logiciel beaucoup trop orienté Windows et ChromeOS.

Le symptôme, c’est un lspci :

$ lspci |grep -i audio
00:1b.0 Audio device: Intel Corporation Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller (rev 0e)

Cette saloperie est peut-être marquée officiellement supportée depuis le noyau 4.15, il semblerait que la détection des bons paramètres de configuration ne soit pas au top. Et en effet, malgré plusieurs essais avec 4.18, 4.19, 5.0 (merci Manjaro), j’ai invariablement la « Sortie factice » dans Pulseaudio; et le boulet que je suis a oublié de faire des captures d’écran pour vous montrer à quoi ça ressemble.

Identifier la réelle carte pour faire la bonne recherche, et trouver la solution

C’est souvent le cas au niveau du son, mais techniquement en dessous, la partie matérielle gérant le son est faite par un fabricant différent, même si c’est marqué « Intel » dessus. Pour avoir plus de détails, il faut utiliser aplay :

$ aplay -l
**** Liste des Périphériques Matériels PLAYBACK ****
carte 0: PCH [HDA Intel PCH], périphérique 3: HDMI 0 [HDMI 0]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 0: PCH [HDA Intel PCH], périphérique 7: HDMI 1 [HDMI 1]
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 1: chtmax98090 [chtmax98090], périphérique 0: 1 []
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0
carte 1: chtmax98090 [chtmax98090], périphérique 1: Deep-Buffer Audio (*) []
  Sous-périphériques: 1/1
  Sous-périphérique #0: subdevice #0

Le terme intéressant ici, c’est chtmax98090. Une recherche Qwant sur ce terme m’a donné beaucoup plus de résultats intéressants que précédemment. Je suis notamment tombé sur un post qui résume plusieurs manipulations pour traiter les irritants sur un Dell Chromebook 11. Il y a un paragraphe spécifique sur le son, et c’est presque exactement ce que je cherche.

Je pense même que cette procédure est la bonne à suivre si vous n’avez pas sous la main un outil de feignant comme AUR, qui propose un paquet tout prêt, ce qui a réduit les étapes dans mon cas à :

D’ailleurs, si vous clonez manuellement le dépôt et que vous copiez les fichiers au bon endroit, je conseille tout de même le reboot, les commandes indiquées après notamment concernant pulseaudio n’ont plus cours.

Pas encore parfait parfait

En effet, j’ai encore quelques glitches légers, à commencer par les notifications Telegram qui « grésillent », alors qu’une lecture de fichier opus ou flac fonctionnent sans problème sous VLC, pareil pour les vidéos YouTube. Par contre, la lecture de vidéos full-hd en H264 ne se fait pas en matériel sur VLC ou Firefox, j’ai donc encore un peu de boulot côté vaapi pour régler les dernières vis du carburateur et ça sera vraiment parfait.

WoeUSB, un petit utilitaire bien pratique pour créer vos ISO Windows

jeudi 9 mai 2019 à 18:30

Je n’en avais pas parlé lors de ma migration de mon PC de jeu sous Windows 10, mais pour créer la clé USB j’étais tout simplement passé par l’utilitaire officiel de Microsoft, donc la simplicité est l’efficacité ne m’ont jamais fait défaut. Pour le passage au SSD de ma petite soeur, il était question également de mettre son vieillissant Windows 7 à la retraite et basculer sur Windows 10, LTSC (le nouveau nom de la LTSB que j’avais sélectionné, mais en version 1809 quand je suis en 1607). Mais je cherchais un moyen de créer la clé d’installation sans avoir besoin de Windows justement.

J’avais gardé un article vieux de deux ans sous le coude dans mes marque-pages pour m’occuper de ce problème, mais il ne m’avait encore jamais réellement servi. C’est désormais chose faite, et c’est parfait pour ce qu’on cherche à faire, à savoir un support USB pour l’installation de Windows, compatible avec 7/8.x/10, 32 et 64bit.

Le programme s’appelle donc WoeUSB, c’est un fork de feu WinUSB, et il est activement maintenu puisque la dernière version en date a moins d’un mois. Il est installable relativement facilement sur quantité de distributions Linux, évidemment je l’ai fait sur Manjaro grâce à AUR. Attention cependant : j’ai installé le paquet « woeusb » qui compile avec wxgtk2, mais si ça pose des problèmes notamment sous Gnome, préférez le paquet « woeusb-git », qui au final fait le même boulot mais compile avec wxgtk3 ce qui améliore l’intégration et donc limite potentiellement les bugs (je n’en ai pas eu sous Cinnamon).

L’interface, comme vous pouvez le voir sur le dépôt GitHub, est très simple, on sélectionne l’image, on sélectionne le périphérique (qui doit être démonté, j’ai eu une erreur parce que j’avais nettoyé la clé juste avant dans Nemo), j’ai remis « NTFS » pour la forme au niveau du système de fichiers, et on clique sur « install », ça formate la clé et fait le nécessaire pour que celle-ci soit opérationnelle. Ça a mis du temps parce que ma clé commence manifestement à donner des signes de faiblesse (5Mo/s, pour de l’USB3 qui tapait dans les 30 avant, c’est un peu moche), mais en dehors de ça l’installation sur la clé s’est déroulée sans problème.

Idem pour l’installation du Windows sur le Samsung 850 Evo 500Go remis en service pour l’occasion, suite à une migration de ma « grosse bertha » sur son petit frère le 860 Evo 1To. Ma frangine est aux anges, son Windows et ses jeux démarrent vite, PUBG est enfin fonctionnel avec quelques réglages bien sentis et une mise à jour bienvenue des pilotes (nécessaires comme j’ai pu le découvrir récemment avec mon premier écran bleu à cause de l’anti-cheat de merde, le même qui empêche de jouer sous Linux), et comme on garde le disque dur original, il n’y avait qu’à transférer les données essentielles pour retrouver rapidement un environnement aux petits oignons. Surtout que nous sommes en vacances chez ma mère, qui comme vous le savez désormais, dispose d’une connexion fibre qui envoie du bois, très pratique pour récupérer les éléments manquants 🙂

Bref, si dans le futur vous vous retrouvez dans cette situation, à savoir installer un Windows en ayant seulement un PC Linux sous la main, vous savez comment faire 😉

Mes sources d’informations sur l’actualité informatique

mercredi 1 mai 2019 à 10:30

Récemment Denis a indiqué qu’il s’était un peu planté dans sa veille et qu’il avait raté une annonce qu’il considérait important. S’il est évident que l’on ne peut pas tout savoir tant l’actualité est vaste dans pas mal de domaines, il s’est demandé comment certains d’entre nous procédions pour garder un œil sur un univers vaste. et j’ai l’honneur d’être directement cité, alors go, voyons comment je procède.

Twitter

Ce n’est pas ma principale source, mais certains sites ne permettent de suivre leur actualité que comme ça (ou on veut suivre une personne qui intervient à plusieurs endroits, et Twitter est donc plus adapté à ce cas). C’est assez facile, la liste des comptes auquel je suis abonné est publique, donc je vous laisse la parcourir pour vous faire une idée. De temps en temps je fais une passe dessus pour vérifier si je n’ai pas quelques comptes à faire sauter.

Les flux RSS

Technologie magnifique s’il en est, présente sur ce blog et sur quantité d’autres sites, que j’utilise aussi pour YouTube désormais en lieu et place des notifications mail. J’en ai fait une présentation il y a quelques années maintenant et elle est toujours d’actualité, puisque le format n’a pas bougé depuis. La liste s’est construite au fil du temps, continue d’évoluer au gré des fermetures et des découvertes, je catégorise à peu près aussi bien que sur le blog, autant dire que c’est pas la joie, mais ça fait le taf.

Je ne vais pas mentionner l’intégralité des flux (il y en a plus de 80), seulement en citer quelques uns d’importance, mais on va quand même tenter de catégoriser un poil.

Information généraliste

C’est relativement simple, sur l’information française, j’ai principalement Next INpact et INpact Hardware, puisque je suis abonné premium de la première heure. Je participe beaucoup moins au forum désormais (pour ne pas dire plus du tout, ce qui n’est pas une bonne chose mais j’ai beaucoup moins de temps libre…). Developpez.com élargit pas mal son spectre initial ces derniers temps, même si, comme j’ai pu le constater, leurs inspirations ne sont pas toujours très originales. Generation-NT est un des rares généralistes à suivre un peu l’actualité spatiale, en dehors des gros titres autour de SpaceX ou de la première photo d’un trou noir.

Univers Freebox et FrAndroid me maintiennent à jour sur la partie télécom sur certains sujets qui ne sont pas abordés ailleurs. Touslesdrivers.com me permet de couvrir le matériel qui ne fait pas les gros titres, tout comme Cowcotland. Enfin, pour couvrir pas mal de choses, le Journal du Hacker ratisse large, entre blogs persos, d’entreprises, sites d’actualités, c’est mine de rien à la fois un outil de curation et de découvertes qui fait plaisir à voir, bien que je n’y contribue pas moi-même.

Je contrebalance cet aspect beaucoup trop francophone par Slashdot et Phoronix. Les sujets sont nombreux, ne traversent parfois pas l’océan atlantique virtuel (surtout quand le sujet est assez lié à la société américaine), il n’est pas exclus que je dégraisse un peu côté sources francophones pour rattraper un peu ce qui se passe côté ricain, car pour notre plus grand malheur c’est encore de là que viennent toutes les évolutions du net (hébergement, services, abus).

Les blogs

Pour certains blogs, le Journal du Hacker est redondant, car je les suis en direct. Je citerai pêle-mêle Stéphane Bortzmeyer, Minimachines, du fait d’être tenu par une seule personne, tient plus du blog même si la qualité de travail de Pierre est remarquable, Zwindler, et Carl Chenet. Parfois, je vois passer des infos sympathiques sur BlogMotion.

La sécurité

Pour finir dans les sources pertinentes, j’ai quelques « crochets » dans le domaine de la sécurité, principalement sous la forme de podcast avec le Comptoir Sécu et NoLimitSecu, mais je suis également le Google Online Security Blog, Krebs on Security, et ZATAZ parce que même si on peut critiquer la personnalité de Damien, ça permet de se rendre compte qu’il n’y a pas que les sociétés américaines qui sont laxistes avec la sécurité des données. Je complète ça avec une petite chaîne YouTube, Khaos Farbauti Ibn Oblivion, parce qu’il fait parfois des streams nommés « un Hacker en train de Hacker », où il s’attaque à des exercices de CTF, le genre de trucs qu’on pratique dans des conventions comme LeHack (ex Nuit du hack).


Voilà, le reste n’a pas vraiment trait à l’informatique ou les technologies, donc pas la peine de les évoquer, ce n’est pas nécessairement un panel parfait (ça n’existe pas), mais ça fait déjà pas mal de choses qui passent devant les yeux. A noter que sur toutes ces sources, je ne lis pas forcément l’intégralité de tous les articles (j’ai une vie à côté), il m’arrive par contre d’aller lire les articles de plusieurs sources qui traitent de la même information, c’est toujours intéressant de pouvoir comparer les points de vue. Mais ça suffit pour marquer dans un coin de son esprit qu’un truc s’est passé, qu’une nouvelle techno fait du bruit, et si besoin, je vais refouiller soit dans les archives de FreshRSS, soit via Qwant pour creuser le sujet.

C’est pas sorcier, mais ça fait le taf. Cette liste est aussi en constant mouvement, parce que mes maintenances sur les liens morts me rappellent que les sites, ça va ça vient, et ça meurt parfois. J’attends maintenant de voir dans mes flux les articles sur vos propres méthodes de veille informatique. Cyrille est dispensé 😛

Quel système d’exploitation je recommanderais ?

lundi 29 avril 2019 à 18:30

En fait, cette question n’est qu’une partie d’un message reçu récemment sur Twitter, celle qui de plus me semble la plus compliquée à traiter. Parce que si le choix est une des forces qui anime le monde de l’open-source et du libre, c’est aussi une de ses plus grandes faiblesses pour les nouveaux arrivants.

Pour rentre à César ce qui lui appartient, voici le tweet en question :

<script async src="https://platform.twitter.com/widgets.js" charset="utf-8">

Pour le système d’exploitation que j’utilise moi-même, j’évacue tout de suite, c’est Manjaro Linux, avec le bureau Cinnamon sur mon laptop principal, et XFCE sur le Chromebook récemment ressuscité ainsi que dans la machine virtuelle que j’utilise sur mon installation Windows pour gérer mes connexions SSH sans avoir à changer de machine. Mais c’est un système d’exploitation basé sur ArchLinux, qui demande quand même de solides connaissances au quotidien, surtout lorsqu’il s’agit de sortir des clous. Et pour les visiteurs les plus récents sur le blog, j’avais relaté tout le parcours initiatique qui m’a mené à la découverte de cette distribution dont je suis tombé amoureux.

Comment séparer les critères de sélection ?

En effet, certains vont classer par niveau global de l’utilisateur visé, de philosophie (guéguerre de fixed/rolling), de bureau (guéguerre Gnome/KDE), d’autres vont nous rebâcher l’anti-systemd-isme primaire, de format de paquets… Vous vous souvenez en introduction quand je disais que le choix c’était un problème ? Il peut l’être aussi même quand on est habitué 🙁

Pour ma part j’ai envie de me concentrer sur quelques éléments particuliers : les besoins de l’utilisateur, son niveau d’expertise, et son matériel. Pourquoi ? Depuis que je participe régulièrement aux Premier Samedi du Libre, je constate souvent, pour les gens qui reviennent après avoir été « libérés », qu’au moins deux de ces points sont trop souvent oubliés par les installateurs. Avant de rentrer dans les choix possibles, détaillons un peu chacun des critères.

Les besoins de l’utilisateur

Avant même de dire qu’on va virer un système pour le remplacer par un autre, il convient de faire un état des lieux des usages en cours. Par exemple, si vous êtes un accroc à l’application Kindle d’Amazon et que certaines fonctionnalités vous sont indispensables, vous ne pourrez pas retrouver ça sous Linux simplement, car l’application n’existe pas. Vous utilisez des tableaux avancés dans Microsoft Excel ? Ils ne s’ouvriront probablement pas correctement sous LibreOffice malgré les efforts des développeurs pour assurer une compatibilité avec les formats simili-ouverts du géant américain, ce qui vous forcera soit à refaire vos tableaux, soit bosser en ligne (Office 365, payant), soit tenter votre chance avec Wine, ce que je ne recommande pas.

Dans les outils de communication ce n’est pas toujours la joie non plus, et par exemple vous serez déçu de ne pas avoir d’application Whatsapp (découverte récente du dernier PSL), il est toutefois possible de tenter le coup avec la version web, mais je vous laisserai tester, notamment si vous utilisez un autre navigateur que Chrome/Chromium, étant donné la feignantise des développeurs avec la plupart des outils webrtc qui fonctionnent mal avec Firefox parce que le navigateur n’est tout simplement pas testé… Si par malheur comme moi votre employeur utilise Office 365 et donc Skype Business comme outil de communication, y compris comme passerelle téléphonique, à part une application développée en Inde et dont la licence vaut 50$/an par utilisateur pour être exploitable, c’est mort.

Voilà donc ce qu’il faut faire avant de se dire qu’on va péter du Windows, inventorier tout, et ça va aussi avec le matériel qui est utilisé.

Le matériel, mais pas seulement le PC

Ça aussi c’est un oubli plus que fréquent et pourtant, quand on a un peu d’expérience on sait que ça peut vite être l’enfer avec des fabricants qui ne jouent pas le jeu. Il est certes très facile de faire un premier essai du PC via une clé USB, ça permet de savoir comment on doit s’en sortir par la suite s’il manque un ou deux bouts de périphériques parce que les firmware ne peuvent pas être redistribués avec le noyau (coucou Broadcom de m….e, qu’on retrouve chez Apple et Dell notamment). Mais souvent les personnes ne pensent pas nécessairement à apporter leurs périphériques autres, et ça peut être une webcam dédiée de meilleure qualité que celles intégrées dans les laptops, des périphériques gaming dont le support sera très aléatoire (même si ça s’améliore, une fois encore pas toujours du fait des fabricants), une tablette de dessin obscure, ou, le problème le plus courant, une imprimante multi-fonctions.

Et même les plus amicaux en matière de support, HP en tête, se prennent les pieds dans le tapis parfois, à l’image des dernières versions de leurs packages qu’ils destinent à CentOS/RedHat, dans lequel ils listent une dépendance inexistante, bravo. On a ceux qui font un package par modèle d’imprimante, alors même qu’une série se base sur le même matériel et donc pourrait unifier le support pour simplifier la vie aux utilisateurs, ceux qui n’ont tout simplement pas envie de considérer un autre univers que Windows et MacOS, et pourtant… MacOS utilise CUPS, l’a racheté à cette fin et le maintient de manière ouverte (pour le moment), ce qui permis à l’univers Linux de bénéficier de tout le travail de simplification de l’installation, ce que j’ai pu constater moi-même avec l’imprimante réseau de ma mère, dont j’ai pu utiliser tous les éléments (imprimante et scanner), en quelques clics sans forcer : détection, installation du pilote, tests imprimante, test scanner, ça fonctionne presque mieux que sous Windows où le scanner ne fonctionne désormais plus qu’une fois qu’on a imprimé quelque chose, magie magie… La réflexion est un peu moins pertinente pour des imprimantes 3D, car dans beaucoup de cas désormais celles-ci sont indépendantes et reposent sur des formats de fichiers documentés et facile à produire sous Linux, fichiers qu’on dépose ensuite sur carte SD à fournir à l’imprimante qui bosse alors toute seule.

C’est beaucoup, beaucoup plus rare, mais sur mon PC de bureau j’ai également eu droit à un joli raté de ma carte graphique Nvidia de l’époque avec le pilote propriétaire, sur la détection en DVI des résolutions et fréquences de rafraîchissement supportées par mon écran principal d’alors, un 22″ LED full HD, pour lequel toutes les distributions testées alors me proposaient uniquement du 640×480, soit une résolution très basse, qui n’est pas 16/9°, autant dire inexploitable. Et l’écran n’est pas nécessairement en cause, en VGA ça fonctionnait parfaitement, mais on voyait bien que la conversion numérique/analogique n’était pas au top, l’image étant légèrement plus floue (testé sous Windows ET Linux).

Ah, je ne l’ai pas évoqué non plus mais l’âge du matériel est à prendre en compte. Trop ancien, les pilotes risquent d’avoir disparu du noyau faute de mainteneur (la moitié des cartes Wifi de l’ère Centrino en témoigne, Intel les ayant abandonné faute de développeurs connaissant le matériel pour le maintenir). Trop récent, les pilotes risquent de ne pas exister du tout, ou alors en version expérimentale dans une version du noyau qui n’existe pas encore packagée pour le système d’exploitation. J’en avais moi-même fait les frais avec mon laptop LDLC, la plateforme Broadwell venait de sortir, j’ai mis six mois à avoir une mise en veille qui fonctionne sans planter à la sortie, et c’était soit écran noir, puis écran mais plus de WiFi, à devoir éteindre l’ordinateur car le matériel était bloqué en sommeil… D’ailleurs je n’ai jamais pu dépasser la version 4.9 du noyau sur cette machine, toutes les versions suivantes provoquaient des instabilités.

Et encore, dites vous que la situation est bien meilleure qu’il y a quinze ans, où j’avais du compiler à la main le pilote de ma carte réseau pour qu’elle soit supportée, ensuite c’était une nouvelle révision du Realtek 8139 qui n’était pas supportée (la D, alors que la C était pleinement opérationnelle), bref c’était une autre époque. Tout ça pour dire que là aussi il faut donc faire un inventaire le plus exhaustif possible avant de se lancer, ou être conscient qu’il faudra soit réadapter son matériel (typiquement, mieux choisir son fabricant et ses modèles d’ordinateur portable, son imprimante, ), soit passer du temps pour adapter le logiciel (changement de noyau, compilation manuelle de modules, etc).

Le niveau de l’utilisateur

C’est peut-être le point le plus important au final. Il faut savoir que la majorité des personnes qui possèdent un ordinateur le subit au quotidien, n’arrivent pas ou pire ne veulent pas faire l’effort d’apprendre à le contrôler pour arrêter justement de le subir. Dans ce cas-là, même avec un inventaire logiciel bien préparé, avec les alternatives les mieux adaptées sélectionnées, la période d’adaptation peut s’avérer douloureuse quand on n’arrive pas à faire l’effort mental de chercher sa fonctionnalité dans un autre menu que celui qu’on a mécaniquement mémorisé. Si si, j’ai entendu des personnes astreintes à l’utilisation intensive d’outils Microsoft pester quand certaines fonctions ont changé de menu, sous prétexte qu’elles avaient l’habitude de les trouver à un endroit et que pour elles ça ne parait pas logique des les déplacer ailleurs. Un sujet sur lequel Cyrille pourrait en dire bien plus avec le personnel de son collège/lycée tiens, qui en reste à Office 2007 justement pour cette raison 🙂

Un exemple ? Le pompon même. Un jour une dame d’un age certain pense qu’on peut installer Linux sur son ordinateur pour empêcher sa fille de s’en servir et d’installer tout et n’importe quoi. C’est pas faux, mais c’est faisable aussi sous Windows, et à force de discuter avec elle et de voir qu’elle était déjà bien en souffrance avec son ordinateur sous Windows (elle ne comprenait même pas la notion de navigateur web), j’ai préféré ajouter un peu de configuration multi-utilisateurs sur son Windows et ne rien bousculer d’autre. En effet, si elle est déjà perdue et ne sait pas se servir de son Windows, vu l’état de l’expérience utilisateur sous Linux (au mieux équivalente, souvent pire), il était impossible d’améliorer la situation pour ce qu’elle voulait faire. Dites vous qu’elle ne sait plus « créer de dossier depuis le passage de Windows 8.1 à Windows 10 », parce que l’interface a changé de couleur. Oui, on en est là, et cette personne est loin d’être seule, et ce n’est pas lié à son âge.

Cette faiblesse trop courante du niveau de l’utilisateur pourra être en partie compensée si son parc logiciel est déjà bien préparé, typiquement, quand j’avais procédé à mon propre inventaire, la plupart des logiciels que j’utilise, en dehors de quelques jeux, sont des logiciels open-source et/ou multi-plateformes, donc même sans avoir mon niveau d’adaptation, se dire qu’on utilisera le même navigateur web (80% des usages sur PC de nos jours), le même lecteur audio/vidéo, la même suite bureautique, le même client mail, le même client vpn, les mêmes outils de communication et de téléchargement, ça rassure pas mal.

Ce niveau sera aussi à pondérer dans le choix d’un système d’exploitation, car la communauté qui porte ledit système sera essentielle le jour où l’utilisateur sera en difficulté pour arriver à ses fins, parfois sur des trucs aussi bêtes que changer la sensibilité d’une souris ou activer le tap-to-clic d’un touchpad, fonction dont je ne comprend pas la désactivation par défaut sur la plupart des systèmes, alors que ça devrait être de base ! En effet, si on choisit un système certes léger, mais à l’interface très peu ergonomique, et utilisée par dix personnes dans le monde, alors trouver une information qui n’est pas nécessairement triviale ou documentée relèvera du parcours du combattant, et l’utilisateur en sera alors réduit à subir de nouveau son appareil, ce qui n’est pas le but recherché.

Bon alors du coup, on choisit quoi ?

On a défini les critères, mais je vais faire un aparté sur quelques spécificités sans solution. Si vous avez un Macbook, restez sous MacOS, il n’y a pas meilleur support matériel, à moins d’avoir une machine ancienne dont on a su dégrossir les angles saillants comme la webcam ou l’autonomie. Ensuite, si vous envisagez l’achat d’une machine pour y installer Linux, essayez de trouver un modèle fourni sans système. D’une part ça économisera un peu en évitant de filer de la tune pour rien à Microsoft, de plus, ça permettra de disposer d’une machine par nature plus ouverte à l’installation de n’importe quel OS en comparaison avec les machines pré-installées sous Windows dont les UEFI sont souvent presque verrouillés pour ne pas vous laisser le contrôle. Comme sur Smartphone. Enfin, en lien avec l’inventaire des logiciels et usages, s’il y a des points bloquants comme certains jeux vidéos, restez sous Windows.

Ceci étant posé, il est temps de se plonger dans le vif du sujet. Je vais tenter de rester concis, mais vous me connaissez, ça peut déborder vite…

Si votre machine a entre deux et huit ans

Je privilégierai, par ordre de niveau de connaissances du moins musclé à Mr Univers :

Je n’ai précisé le bureau que pour les deux premiers paliers, par principe je considère que dès qu’on cherche à installer ArchLinux, on sait quel bureau on veut utiliser, ou en tout cas on sait s’adapter à pas mal de situations et donc au bureau qu’on utilise. XUbuntu utilise le bureau XFCE, qui paraîtra un peu austère, mais l’ergonomie est la plus proche qu’on peut trouver de Windows, surtout avec le menu Whisker qui devrait être par défaut. Le support LTS permettra de ne pas se soucier de mises à jour majeure pendant une longue période (la dernière a soufflé sa première bougie, elle en a encore six voir), et l’univers Ubuntu étant très populaire, il sera très facile de trouver de l’aide, voire même une solution déjà documentée sur un problème. OpenSUSE Leap est une bonne alternative avec un bureau un peu plus gourmand, mais l’intégration faite par les allemands, notamment pour les applications qui ne sont pas orientées KDE comme Firefox et Thunderbird, est remarquable. Cependant, la communauté est plus restreinte, les disponibilités logicielles peuvent aussi être moins larges, donc un peu plus d’effort sera peut-être à fournir. Si le bureau KDE vous intéresse il existe bien une variante Kubuntu, il faudrait que je repasse dessus mais la dernière fois que j’avais essayé la stabilité n’était pas top.

Au passage, si possible j’évite Gnome comme la peste, il ne donne pas assez de contrôle sur ce qu’on peut faire avec et j’ai vu pas mal de monde souffrir face à lui; moi également, mais je finis souvent soit par trouver ce que je cherche, soit par découvrir que ce n’est pas possible. Et même chez Canonical ils n’arrivent pas à lui faire faire tout ce qu’ils voudraient avec, mais comme ils préfèrent abandonner leurs propres solutions, j’ai envie de dire qu’ils l’ont cherché.

Au niveau de l’univers ArchLinux, si vous rencontrez des problèmes avec un noyau trop récent, Manjaro propose des outils bien pratiques pour tester et basculer rapidement sur plusieurs noyaux, là où vous devrez vous débrouiller tout seul sous ArchLinux pour arriver au même résultat :

$ mhwd-kernel -l
available kernels:
   * linux316
   * linux318
   * linux414
   * linux419
   * linux420
   * linux44
   * linux49
   * linux50
   * linux51
   * linux419-rt
   * linux50-rt

L’installation tient ensuite en une ligne, et au reboot vous pouvez aller sélectionner le noyau que vous voulez (le plus récent est sélectionné par défaut). En contrepartie, il arrive que des mises à jour soient retardées chez Manjaro, pour trouver un moyen de préparer autant que possible le terrain quand certains paquets sont susceptibles de poser problème (mise à jour majeure qui change de dépendances, de format de fichier de configuration, de chemins, etc).

Enfin, Linux From Scratch est beaucoup plus destiné à l’apprentissage qu’à un usage quotidien (sauf si vous êtes fous), car son principe est d’installer chaque composant en compilant tout à la main, étape par étape, là où Gentoo propose un gestionnaire de paquets qui permet d’avoir un minimum de sécurité quant aux dépendances à utiliser.

 

Si votre machine a moins de deux ans

Ben en fait, on va retrouver pas mal de monde, ce qui va être logique :

Je laisse XUbuntu LTS en tête car malgré une version qui parait un peu ancienne du noyau, Canonical importe des éléments de support matériel supplémentaire de noyaux plus récents, ce que fait également RedHat/CentOS (ce qui fait que leur noyau 3.10 est un joli frankenstein en 2019). Mieux, dans la durée de vie de la distribution, le noyau est régulièrement mis à jour vers une version plus récente, selon un modèle appelé LTS Enablement Stack, qui consiste à récupérer le noyau et/ou le serveur graphique (ainsi que quelques autres dépendances si besoin) des distributions non-LTS sorties entre temps pour améliorer le support au cours de la vie de la distribution. En résumé, si vous installez XUbuntu LTS 18.04.2, celle-ci utilisera le noyau de la 19.04, ce qui sera bien plus rassurant sur le support matériel.

J’ai choisi de remplacer OpenSUSE par Fedora car le noyau embarqué risque de poser plus de problème avec du matériel trop récent. Fedora est un système dont les nouvelles versions sortent fréquemment (9 mois), avec une volonté de fraîcheur logicielle vraiment forte avec une communauté bien active même si plus restreinte que sur Ubuntu, elle existe en version KDE qui donnera plus de contrôle que Gnome, même si l’intégration n’est pas forcément d’aussi bonne qualité. L’offre logicielle est assez large, mais elle est un peu plus rugueuse, à priori du même niveau qu’OpenSUSE je dirais.

Quand aux autres OS, de par la fraîcheur des paquets, et donc le noyau, le support sera facilement assuré, et dans les cas les plus exotiques, eh bien ma foi, si vous vous aventurez dessus soit vous savez ce que vous faites soit vous avez la volonté de chercher les solutions et de mettre méchamment les mains dans le cambouis.

Pas de Debian, Mint, Parabola & co ?

Ça parait gonflé, moi qui n’utilise que du Debian sur mes serveurs persos, qu’ils soient hébergés chez un professionnel ou chez moi. Mais justement, ce sont des serveurs, et là on parle de machines qui ont besoin d’afficher autre chose que du texte brut en gris clair sur fond noir. Debian est intéressante sur quelques points, la stabilité à tout prix, et la disponibilité sur un nombre d’architectures assez impressionnant et peu courant. Mais le prix justement de tout ça est une offre logicielle limite déjà dépassée à sa sortie pour des machines destinées à la bureautique et au jeu récent, autant dire qu’au bout de deux ans c’est naphtaline à tous les étages.

Pour Mint, j’ai vu plusieurs fois les priorités changer en termes de suivis de paquets par rapport à Ubuntu, j’ai donc du mal à la recommander, mais c’est une distribution tout à fait capable, elle est d’ailleurs celle qui est à l’origine de l’environnement de bureau Cinnamon, que j’utilise actuellement sur Manjaro, vous pouvez donc tout à fait la tester et pourquoi pas l’adopter, dernièrement ils ont fait le choix de n’utiliser que des bases Ubuntu LTS, la philosophie de base reste la même.

Parabola, Trisquel et compagnies ont des buts louables, mais ce ne sont pas des OS destinés à des êtres humains. Comprenez, moi aussi j’aimerais que tout le matériel soit exploitable avec du logiciel 100% open-source (voire libre, encore que la différence est floue pour les béotiens), mais ça ne sera probablement jamais le cas tant que ce sont des sociétés devant faire du bénéfice, et donc protégeant leurs travaux pour en tirer profit, qui concevront le matériel. Et donc ces distributions ne pourront jamais être utilisables par le commun des mortels, parce que trouver la matériel compatible est un enfer.

Pour tous les autres OS, je vous laisse faire une check-list de leurs faiblesses et cocher celle(s) qui permet de comprendre pourquoi je ne les mentionne pas. J’ai aussi volontairement laissé de côté les systèmes spécialisés pour me concentrer sur des usages plus généralistes. Pour des besoins spécialisés, éducation, créations audio, il y a de quoi faire, très souvent basé sur une des distributions que j’ai pu mentionner, en terme de support on est donc souvent sur du bon.

Et les autres questions ?

Les autres questions du tweet feront l’objet d’un autre billet, celui-ci fait déjà plus de 3300 mots, ce qui est bien suffisant. En guise de teasing, l’open-source consiste au minimum à publier le code du logiciel que l’on développe, plutôt que de le garder dans son coin. Par exemple, si Microsoft publie le code de l’éditeur Visual Studio Code, ce n’est pas le cas de son environnement de développement Visual Studio qui lui reste un monstre entièrement fermé. La suite dans un prochain article, où on parlera contribution, communautés, modèles financiers…


PS : Ces recommandations ne sont évidemment pas absolues, elles sont en grande partie basées sur ma propre expérience des distributions. Sur serveur, j’ai eu l’occasion de manipuler du Debian, du CentOS, du RedHat, de l’Ubuntu, du SunOS, et très occasionnellement d’autres trucs un peu exotiques. Sur client, j’ai commencé avec du KDE2 à l’époque sur Mandrake 8.2, jusqu’à Mandriva 10.2, puis tentative de Debian (XFCE et Gnome), Ubuntu (Gnome, LXDE, et Unity), jusqu’au parcours qui a abouti à mon utilisation quotidienne de Manjaro depuis plus de quatre ans (KDE, XFCE, Deepin, Cinnamon). Je n’ai pas la science infuse, si vous pensez que d’autres distributions pourraient avoir leur place intermédiaire dans mes classements, vous savez où sont les commentaires 🙂