Petit test amusant: Manjaro est-elle compatible Arch ?
Publié : 08 déc 2013, 15:42
Hello à tous,
voyant que beaucoup de gens avaient testé "la grande soeur" ces derniers temps, je me suis posé une question: jusqu'à quel point Manjaro est-elle compatible avec sa grande soeur ?
et pour tester ça, je me suis livré à une expérience amusante: mettre à jour une Manjaro grâce aux dépôts Arch
Attention: j'ai fait ce test dans Virtualbox; ceux qui voudraient le faire sur une vraie installation le font à leurs risques et périls
et finalement, testé sur mon install principale, ça fonctionne très bien, mais il faut quand même savoir un peu ce qu'on fait
Je suis donc parti d'une installation de Manjaro-xfce-i686 (une 0.8.7) faite il y a quelques temps dans Virtualbox (la différence se situe dans la présence des modules virtualbox-guest).
et plus récemment, je viens de le faire sur une install qui comportait Kde/Kf5 (installée par Net-edition il y a un an), en pilote libre (ça devrait pas être aussi simple en pilote proprio), avec pas mal de logiciels tiers installés: sans soucis...
j'ai bien sûr mis à jour cette installation avant toute chose.
voici les étapes:
1) téléchargement du paquet Arch "pacman-mirrorlist" ici (dépôt Arch)
2) installation de ce paquet:
3) le paquet a posé un *.pacnew donc on supprime /etc/pacman.d/mirrorlist et on renomme /etc/pacman.d/mirrorlist.pacnew en /etc/pacman.d/mirrorlist
4) on a plus de pacman-mirrors, et le mirrorlist de Arch est fourni entièrement désactivé (commenté), donc il faut l'éditer et dé-commenter un des dépôts (de préférence proche de chez soi).
5) modifier /etc/pacman.conf et supprimer les deux références au paquet manjaro-system (les lignes "HoldPkg" et "SyncFirst")
6) synchro des nouveaux dépôts:
ne pas encore mettre à jour (bien qu'à mon avis ça marcherait à ce stade)
7) installer le noyau Arch et son module virtualbox-guest (attention les paquets n'ont pas le même nom que sous Manjaro)
le paquet du noyau n'est pas scripté pour la mise à jour de Grub, donc penser à le faire manuellement:
8) on serre les fesses et on redémarre; choisir "Linux" dans le menu de Grub pour booter sur le noyau Arch.
curieusement, aucun message d'erreur dans le boot...
9) mise à jour du reste du système:
une erreur du paquet lsb-release peut être by-passé par l'option --force; on s'aperçoit aussi que quelques paquets Manjaro étaient plus récents que ceux de Arch (Xfwm par exemple).
10) les paquets spécifiques à Manjaro apparaissent maintenant comme "étranger", il faudra probablement les supprimer (y compris le noyau Manjaro); les paquets plus récents seront mis à jour plus tard grâce au rythme éfreiné de Arch, inutile de downgrader...
la personnalisation de Manjaro va sûrement rester pour certains trucs, et être remplacée pour d'autres...
11) les dépendances de certains paquets vers des paquets Manjaro (pacman ---> manjaro-system); il suffit de réinstaller les paquets pour avoir les dépendances Arch, et pouvoir finir de désinstaller les paquets Manjaro. de toute façon, la réinstallation de Pacman s'impose vu la différence entre celui de Manjaro et celui de Arch.
12) il faut aussi réinstaller Yaourt car la version de Manjaro est différente et en plus ça permet de récupérer une config par défaut plus saine (édition des PKGBUILDs notamment)
13) il faut faire la chasse aux fichiers n'appartenant à aucun paquet que Manjaro aurait pu laisser; pour ça, j'ai trouvé un petit script, Pacman-disowned:
on le lance comme ça
et le fichier non-db.txt contiendra la liste de tous les fichiers qui n'appartiennent à aucun paquet; cette liste est juste une base de recherche, car tous les fichiers orphelins ne sont pas nécessairement indésirables. par exemple, beaucoup de fichiers de conf dans /etc n'appartiennent à aucun paquets, parce qu'ils ont été créé par des scripts ou autres utilitaires, mais ils sont utiles. il y a aussi un certains nombres de fichiers en rapport avec Virtualbox (extensions) ou Hplip (plugins) dans /usr/share.
il faut donc faire bien attention à ce qu'on supprime.
14) Octopi-notifier n'est pas du tout adapté pour Arch, Kalu est plus pratique: on peut régler la fréquence de vérif et on a les news de Arch; le soucis est que le Octopi de AUR donne 4 paquets (aucune fonction pour les PKGBUILDs scindés dans Yaourt), et il faut ensuite désinstaller ceux dont on n'a pas besoin.
alors, amusant ?
voyant que beaucoup de gens avaient testé "la grande soeur" ces derniers temps, je me suis posé une question: jusqu'à quel point Manjaro est-elle compatible avec sa grande soeur ?
et pour tester ça, je me suis livré à une expérience amusante: mettre à jour une Manjaro grâce aux dépôts Arch
Attention: j'ai fait ce test dans Virtualbox; ceux qui voudraient le faire sur une vraie installation le font à leurs risques et périls
et finalement, testé sur mon install principale, ça fonctionne très bien, mais il faut quand même savoir un peu ce qu'on fait
Je suis donc parti d'une installation de Manjaro-xfce-i686 (une 0.8.7) faite il y a quelques temps dans Virtualbox (la différence se situe dans la présence des modules virtualbox-guest).
et plus récemment, je viens de le faire sur une install qui comportait Kde/Kf5 (installée par Net-edition il y a un an), en pilote libre (ça devrait pas être aussi simple en pilote proprio), avec pas mal de logiciels tiers installés: sans soucis...
j'ai bien sûr mis à jour cette installation avant toute chose.
voici les étapes:
1) téléchargement du paquet Arch "pacman-mirrorlist" ici (dépôt Arch)
2) installation de ce paquet:
sudo pacman -U /home/david/Téléchargement/pacman-mirrorlist- 20130830-1-any.pkg.tar.xz
3) le paquet a posé un *.pacnew donc on supprime /etc/pacman.d/mirrorlist et on renomme /etc/pacman.d/mirrorlist.pacnew en /etc/pacman.d/mirrorlist
4) on a plus de pacman-mirrors, et le mirrorlist de Arch est fourni entièrement désactivé (commenté), donc il faut l'éditer et dé-commenter un des dépôts (de préférence proche de chez soi).
5) modifier /etc/pacman.conf et supprimer les deux références au paquet manjaro-system (les lignes "HoldPkg" et "SyncFirst")
6) synchro des nouveaux dépôts:
sudo pacman -Syy
ne pas encore mettre à jour (bien qu'à mon avis ça marcherait à ce stade)
7) installer le noyau Arch et son module virtualbox-guest (attention les paquets n'ont pas le même nom que sous Manjaro)
sudo pacman -S linux virtualbox-guest-modules
le paquet du noyau n'est pas scripté pour la mise à jour de Grub, donc penser à le faire manuellement:
sudo update-grub
8) on serre les fesses et on redémarre; choisir "Linux" dans le menu de Grub pour booter sur le noyau Arch.
curieusement, aucun message d'erreur dans le boot...
9) mise à jour du reste du système:
sudo pacman -Syu
une erreur du paquet lsb-release peut être by-passé par l'option --force; on s'aperçoit aussi que quelques paquets Manjaro étaient plus récents que ceux de Arch (Xfwm par exemple).
10) les paquets spécifiques à Manjaro apparaissent maintenant comme "étranger", il faudra probablement les supprimer (y compris le noyau Manjaro); les paquets plus récents seront mis à jour plus tard grâce au rythme éfreiné de Arch, inutile de downgrader...
la personnalisation de Manjaro va sûrement rester pour certains trucs, et être remplacée pour d'autres...
11) les dépendances de certains paquets vers des paquets Manjaro (pacman ---> manjaro-system); il suffit de réinstaller les paquets pour avoir les dépendances Arch, et pouvoir finir de désinstaller les paquets Manjaro. de toute façon, la réinstallation de Pacman s'impose vu la différence entre celui de Manjaro et celui de Arch.
12) il faut aussi réinstaller Yaourt car la version de Manjaro est différente et en plus ça permet de récupérer une config par défaut plus saine (édition des PKGBUILDs notamment)
13) il faut faire la chasse aux fichiers n'appartenant à aucun paquet que Manjaro aurait pu laisser; pour ça, j'ai trouvé un petit script, Pacman-disowned:
#!/bin/sh
tmp=${TMPDIR-/tmp}/pacman-disowned-$UID-$$
db=$tmp/db
fs=$tmp/fs
mkdir "$tmp"
trap 'rm -rf "$tmp"' EXIT
pacman -Qlq | sort -u > "$db"
find /etc /opt /usr ! -name lost+found \( -type d -printf '%p/\n' -o -print \) | sort > "$fs"
comm -23 "$fs" "$db"
on le lance comme ça
./pacman-disowned > non-db.txt
et le fichier non-db.txt contiendra la liste de tous les fichiers qui n'appartiennent à aucun paquet; cette liste est juste une base de recherche, car tous les fichiers orphelins ne sont pas nécessairement indésirables. par exemple, beaucoup de fichiers de conf dans /etc n'appartiennent à aucun paquets, parce qu'ils ont été créé par des scripts ou autres utilitaires, mais ils sont utiles. il y a aussi un certains nombres de fichiers en rapport avec Virtualbox (extensions) ou Hplip (plugins) dans /usr/share.
il faut donc faire bien attention à ce qu'on supprime.
14) Octopi-notifier n'est pas du tout adapté pour Arch, Kalu est plus pratique: on peut régler la fréquence de vérif et on a les news de Arch; le soucis est que le Octopi de AUR donne 4 paquets (aucune fonction pour les PKGBUILDs scindés dans Yaourt), et il faut ensuite désinstaller ceux dont on n'a pas besoin.
alors, amusant ?