[Résolu] slackpkg+ & kernel-headers

Forum d'aide générale sur Slackware
Avatar de l’utilisateur
Thomas
Administrateur
Messages : 432
Inscription : 08 janvier 2017, 07:14
Localisation : Anizy-le-Grand
Contact :

[Résolu] slackpkg+ & kernel-headers

Message par Thomas »

Bonjour,

Je viens de créer mon propre dépôt (avec gen_repos_file d'alienbob) pour chez moi qui contient kernel-firmware, kernel-generic, kernel-modules, kernel-source et kernel-headers. Ce dépôt est prioritaire par rapport à tous les autres.

Lorsque je fais un "slackpkg upgrade-all", tous les paquets se mettent à jour sauf kernel-headers. Si je tente un "slackpkg search kernel-headers", slackpkg me liste tous les kernel-headers existants sauf le mien, sachant qu'il n'est pas blacklister.
En attendant de trouver une solution, j'ai fait un simple "upgradepkg" pour avoir tout de même ce paquet à jour.

Mon dépôt est ici (très long) : https://ftp2.halpanet.org/slackware/sla ... .2/x86_64/
Voici ce que renvoie une recherche avec slackpkg :

Code : Tout sélectionner

root@hive64 # slackpkg search kernel-headers

Looking for kernel-headers in package list. Please wait... DONE

The list below shows all packages with name matching "kernel-headers".

[ Status           ] [ Repository               ] [ Package                                  ]
  uninstalled(masked)      slackware64                  kernel-headers-4.4.14-x86-1
  upgrade                  patches                      kernel-headers-4.4.52-x86-1 --> kernel-headers-4.4.38-x86-1

You can search specific files using "slackpkg file-search file".
Vous savez de quoi ça peut venir ? Bug de slackpkg+ ?

Edit: Le problème n'est présent que sur slackware64.
Dernière modification par Thomas le 01 mars 2017, 12:22, modifié 1 fois.
Seb
Messages : 188
Inscription : 22 février 2017, 19:07

Re: slackpkg+ & kernel-headers

Message par Seb »

Tu as essayé de lancer slackpkg via bash -x, histoire de voir ce qui se trame derrière ?

Il me semble, cependant, qu'on est pas censé changer les en-têtes du noyau qui ont servi à la compilation de la libc...

Edit: Je pense que le problème peut venir de là (/usr/libexec/slackpkg/functions.d/slackpkgplus.sh, l. 787-795) :

Code : Tout sélectionner

 X86_64=$(ls $ROOT/var/log/packages/aaa_base*x86_64* 2>/dev/null|head -1)
      for PREPO in ${REPOPLUS[*]};do
        if [ -z "$X86_64" ];then
          FILTEREXCLUDE="-(x86_64|arm)-"
        elif [ "$ALLOW32BIT" == "on" ];then
          FILTEREXCLUDE="-(arm)-"
        else
          FILTEREXCLUDE="-(x86|i[3456]86|arm)-"
        fi
Quand l'archi est en 64bits, le filtre exclut les paquets dont le champ architecture est "x86" (l. 794).
Avatar de l’utilisateur
Thomas
Administrateur
Messages : 432
Inscription : 08 janvier 2017, 07:14
Localisation : Anizy-le-Grand
Contact :

Re: slackpkg+ & kernel-headers

Message par Thomas »

Salut Seb,

Tu as raison j'ai remplacé le temps de tester :

Code : Tout sélectionner

else
          FILTEREXCLUDE="-(x86|i[3456]86|arm)-"
        fi
par

Code : Tout sélectionner

else
          FILTEREXCLUDE="-(i[3456]86|arm)-"
        fi
Et ça fonctionne très bien.

Je vais reporter le bug et voir comment je peux corriger ce bug correctement. Je considère ce problème comme résolu.

Concernant les en-têtes du noyau, je pensais comme toi jusqu'à ce que je lise ceci. D'autre part, chaque fois que Pat fait une mise à jour du noyau dans la branche stable, il met également à jour les en-têtes.

Merci Seb !
Avatar de l’utilisateur
Thomas
Administrateur
Messages : 432
Inscription : 08 janvier 2017, 07:14
Localisation : Anizy-le-Grand
Contact :

Re: [Résolu] slackpkg+ & kernel-headers

Message par Thomas »

J'ai corrigé ce bug de cette manière. Je suppose que ça fonctionne partout sans problème.

Code original :

Code : Tout sélectionner

787       X86_64=$(ls $ROOT/var/log/packages/aaa_base*x86_64* 2>/dev/null|head -1)
788       for PREPO in ${REPOPLUS[*]};do
789         if [ -z "$X86_64" ];then
790           FILTEREXCLUDE="-(x86_64|arm)-"
791         elif [ "$ALLOW32BIT" == "on" ];then
792           FILTEREXCLUDE="-(arm)-"
793         else
794           FILTEREXCLUDE="-(x86|i[3456]86|arm)-"
795         fi
Nouveau code :

Code : Tout sélectionner

787       X86_64=$(ls $ROOT/var/log/packages/aaa_base*x86_64* 2>/dev/null|head -1)
788       for PREPO in ${REPOPLUS[*]};do
789         if [ -z "$X86_64" ];then
790           FILTEREXCLUDE="-(x86_64|arm)-"
791         elif [ -n "$X86_64" ];then
792           FILTEREXCLUDE="-(arm)-"
793         elif [ "$ALLOW32BIT" == "on" ];then
794           FILTEREXCLUDE="-(arm)-"
795         else
796           FILTEREXCLUDE="-(x86|i[3456]86|arm)-"
797         fi
Seb
Messages : 188
Inscription : 22 février 2017, 19:07

Re: [Résolu] slackpkg+ & kernel-headers

Message par Seb »

Le correctif revient à être en multilib dès que tu es en 64bits (on tolère "i.86"). J'ai vérifié, et les kernel-headers sont les seuls à avoir une archi "x86" (normal, puisque c'est du texte qui traite les deux archis 32/64bits), donc tu peux te contenter de virer celle-ci du dernier filtre (« pur 64bits »), comme tu as fait pour tester.

Merci pour le pointeur, il me semblait vaguement avoir lu Pat disant un truc à se sujet, mais la flemme de fouiller (et de fait, moi aussi je mets à jour les en-têtes, mais comme je reste en stable et compile peu de choses... ) :)
Avatar de l’utilisateur
Thomas
Administrateur
Messages : 432
Inscription : 08 janvier 2017, 07:14
Localisation : Anizy-le-Grand
Contact :

Re: [Résolu] slackpkg+ & kernel-headers

Message par Thomas »

Salut,
Seb a écrit : 04 mars 2017, 10:05 Le correctif revient à être en multilib dès que tu es en 64bits (on tolère "i.86"). J'ai vérifié, et les kernel-headers sont les seuls à avoir une archi "x86" (normal, puisque c'est du texte qui traite les deux archis 32/64bits), donc tu peux te contenter de virer celle-ci du dernier filtre (« pur 64bits »), comme tu as fait pour tester.
Juste pour dire, très tardivement, que tu as raison. J'ai donc garder la même modif que pour le test. Merci encore !
Seb
Messages : 188
Inscription : 22 février 2017, 19:07

Re: [Résolu] slackpkg+ & kernel-headers

Message par Seb »

Pas de soucis, et de rien ! ;)
Répondre