Questions sur l'installation et la configuration de Manjaro Linux.
Répondre

gestion des pacnew sous manjaro

#1Messageil y a 11 ans

salut :bjr:

petite remarque préalable :

il manque une rubrique sur le forum relative aux problème de paquetages. C'est potentiellement récurrent sous un système à base d'arch, donc si les admins me lisent...

Ma question :

je vois que les maj comportant des dizaines voir centaines de paquets s'enchainent sans le moindre problème de dépendances, et ça me convainc de passer un jour sous manjaro.

Cependant une question (de taille) demeure : la création de pacnew s'enchaine.
Comme rien n'est indiqué ni dans les posts sur le forum de manjaro.org mentionnant les maj des dépôts ni dans les wikis de manjaro je les ai laissés volontairement en partant du principe que manjaro est une distro orientée débutants et que tout devrait bien se passer comme ça . Pour l'instant pas de clash ..

Maintenant quelqu'un peut-il préciser comment manjaro envisage de traiter ceux-ci dans l'optique d'une distro orientée usagers intermédiaires ?
Cette problèmatique est-elle réglée en amont par le paquet manjaro-system ? Ou bien y a -t-il une info sur le site uniquement au cas où il faut les traiter et le cas échéant donc il faut-il généralement les ignorer ?

Merci si vous avez glané des infos officielles de manjaro sur le sujet.

@ +

gestion des pacnew sous manjaro

#2Messageil y a 11 ans

je crois qu'on en a déjà parlé sur un autre fil, mais c'est pas grave, je te résume ça...

il y a création d'un pacnew lorsque Pacman voit que le fichier de configuration est modifié; malgré ça, Pacman ne lit pas le fichier, il connait juste la somme md5 (ou sha1, je sais plus) du fichier original, et le compare à celle du fichier en place; une modif mineure (comme la traduction ou l'ajout de commentaires) provoquera la création d'un pacnew.
et même si le fichier a vraiment été modifié de façon notable, il reste un point à considérer; généralement, dans la nouvelle version d'un logiciel, il est plus courant qu'on aie ajouté des options plutôt que supprimer ou modifier; donc la différence entre l'ancien et le nouveau fichier est qu'il y a plus d'options dans le nouveau; concrètement, quand une option est manquante (puisqu'on utilise l'ancien fichier), le logiciel utilise la configuration par défaut (mais comme cette option n'existait pas avant, ça se voit pas).

tu vois donc que dans tous les cas, il est rare de devoir impérativement intervenir...

et quand ce sera le cas, il faut considérer que les paquets de Manjaro sont passés d'abord par Arch, et que s'il y avait besoin de modifier un truc, les devs manjaro le savent avant de publier le paquet, et donc nous préviendront...

gestion des pacnew sous manjaro

#3Messageil y a 11 ans

gestion des pacnew sous manjaro

#4Messageil y a 11 ans

salut ewolnux :

j'ai bien compris le pourquoi/comment de la génération des pacnews je depuis presqu'un an sous arch. Et cette gestion sans outil peut-être prise de tête (personnellement j'utilise meld pour ça)

ceci dit si manjaro ne communique pas sur cette problèmatique contrairement à arch qui en fait une question quasi-centrale, j'en déduis deux choses

soit ya pas lieu de se prendre la tête :bien
soit ya un oubli manifeste de com que j'attribue à la volonté de vouloir faire simple

et même si comme le dit loubrix :

il reste un point à considérer; généralement, dans la nouvelle version d'un logiciel, il est plus courant qu'on aie ajouté des options plutôt que supprimer ou modifier; donc la différence entre l'ancien et le nouveau fichier est qu'il y a plus d'options dans le nouveau; concrètement, quand une option est manquante (puisqu'on utilise l'ancien fichier), le logiciel utilise la configuration par défaut (mais comme cette option n'existait pas avant, ça se voit pas).


c'est précisément ce point qui me questionne car une nouvelle version d'un logiciel peut parfaitement ne pas fonctionner si je fichier de conf qui va normalement avec n'est pas correctement renseigné dans notre cas par exple où ça pointerait vers l'ancien fichier. contrairement à ce que suggère loubrix.

De ce point de vue la confrontation systématique pacmachinchose et pacnew me semble souhaitable afin de fusionner les nouvelles options en cas de besoin dans un nouveau fichier afin de ne rien manquer.
J'espère que dans le cas contraire Manjaro , communique sur les éventuelles lignes à insérer obligatoirement dans pacmachinchose :sourire:

gestion des pacnew sous manjaro

#5Messageil y a 11 ans

note que je n'ai pas dit que cétait une généralité, mais le cas le plus courant...

pour en revenir à Manjaro, je crois que la directive première est la facilité, et donc, les devs s'arrangent pour qu'on n'ait pas à intervenir sur des fichiers textes.
il me semble que le paquet clé est "manjaro-system", car j'ai remarqué que celui-ci éxécute des scripts lors de ses mises à jour.

d'ailleurs, si on y réfléchit, il n'est pas très compliqué, dans la mesure où on est déjà averti du changement qu'il va y avoir (puisque testé par Archlinux), de créer des scripts qui récupèrent la configuration initiale du fichier et la replace dans le nouveau (en tenant compte des éventuels changement de syntaxe).

d'ailleurs, regarde le script que je trouve dans le dernier manjaro-system

#!/bin/bash

PACKAGEVERSION="20130114"
SYSTEMVERSION="$PACKAGEVERSION"

err() {
    ALL_OFF="\e[1;0m"
    BOLD="\e[1;1m"
    RED="${BOLD}\e[1;31m"
   local mesg=$1; shift
   printf "${RED}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}

msg() {
    ALL_OFF="\e[1;0m"
    BOLD="\e[1;1m"
    GREEN="${BOLD}\e[1;32m"
   local mesg=$1; shift
   printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
}


if [ -f /var/lib/manjaro-system/version ]; then
   . /var/lib/manjaro-system/version
fi


post_install() {
   post_upgrade
}

post_upgrade() {
   # remove linux-meta
   for pkg in $(echo "linux linux-headers bbswitch broadcom-wl catalyst catalyst-legacy cdfs fcpci fcpcmcia lirc ndiswrapper nvidia nvidia-legacy nvidiabl open-vm-tools-modules r8168 rt3562sta vhba-module virtualbox-host-modules virtualbox-guest-modules") ; do
      for rmpkg in $(pacman -Qq | grep ${pkg}) ; do
         if [ "${pkg}" == "${rmpkg}" ] ; then
            removepkgs="${removepkgs} ${rmpkg}"
         fi
      done
   done
   if [ "x${removepkgs}" != "x" ]; then
      msg "Removing linux-meta pkgs ..."
      rm /var/lib/pacman/db.lck
      pacman --noconfirm --noprogress -Rdd ${removepkgs} > /dev/null 2>&1
      msg "Removing linux-meta pkgs - done"
   fi

   # remove symlinks if fontconfig < 2.10.1
   if [ "$(pacman -Qq fontconfig | grep 'fontconfig')" == "fontconfig" ]; then
   if [ "$(pacman -Q fontconfig | cut -d- -f1 | cut -d" " -f2 | sed -e 's/\.//g')" -lt "2101" ]; then
      msg "fixing fontconfig ..."
      # System operation
      rm -f /etc/fonts/conf.d/20-unhint-small-vera.conf
      rm -f /etc/fonts/conf.d/29-replace-bitmap-fonts.conf
      rm -f /etc/fonts/conf.d/30-metric-aliases.conf
      rm -f /etc/fonts/conf.d/30-urw-aliases.conf
      rm -f /etc/fonts/conf.d/40-nonlatin.conf
      rm -f /etc/fonts/conf.d/45-latin.conf
      rm -f /etc/fonts/conf.d/49-sansserif.conf
      rm -f /etc/fonts/conf.d/50-user.conf
      rm -f /etc/fonts/conf.d/51-local.conf
      rm -f /etc/fonts/conf.d/60-latin.conf
      rm -f /etc/fonts/conf.d/65-fonts-persian.conf
      rm -f /etc/fonts/conf.d/65-nonlatin.conf
      rm -f /etc/fonts/conf.d/69-unifont.conf
      rm -f /etc/fonts/conf.d/80-delicious.conf
      rm -f /etc/fonts/conf.d/90-synthetic.conf
   fi
   fi

   # Update system version
   echo "SYSTEMVERSION=\"$PACKAGEVERSION\"" > /var/lib/manjaro-system/version
}

le script enlève certains meta-paquets et les liens symboliques de fontconfig si la précédente version est inférieure à 2.10.1: on a bien là une correction de mise à jour, et au passage, pour fontconfig, il fallait le faire à la main sous Arch (pour les méta-paquets j'ai rien trouvé, mais ça doit être interne à Manjaro)

gestion des pacnew sous manjaro

#6Messageil y a 11 ans

merci loubrix pour cette explication très circonstanciée.

on peut voir que manjaro c'est du sérieux. Avec ça si on entend pas causer des pacnew générés c'est qu'il ya rien à faire ;-)

gestion des pacnew sous manjaro

#7Messageil y a 11 ans

ou bien que ça s'est fait sans que tu le saches...

à l'avenir je jetterai un oeil dans chaque nouveau manjaro-system pour voir ce qu'il fait.

gestion des pacnew sous manjaro

#8Messageil y a 11 ans

:bjr: Loubrix

Hier j'ai fait une installation de la version cinnamon.

Quand j'ai fait les mises à jour, j'ai vu deux créations de pacnew :

- /etc/locale.gen.pacnew (il y a un locale.gen.bak)

- /etc/systemd/logind.conf.pacnew (il y a un logind.conf)

gestion des pacnew sous manjaro

#9Messageil y a 11 ans

pour locale.gen c'est normal: ce fichier est configuré pour ta localisation par l'installeur, alors que celui fourni avec le paquet est vierge (aucune locale décommentée); le bak doit être celui du live...

pour logind, la configuration est différente dans les deux fichiers, mais comme j'ai encore quelques problème de compréhension de Systemd, je préfère pas te dire de c......ies

gestion des pacnew sous manjaro

#10Messageil y a 11 ans

Finalement, celui en .bak on peut le virer ?

gestion des pacnew sous manjaro

#11Messageil y a 11 ans

normalement oui: la configuration qui est dedans est vierge
Répondre