web-dev-qa-db-fra.com

Comment télécharger le code source avec Pacman sur Arch Linux?

J'utilise Arch Linux . Je veux faire la même chose que apt-get source coreutils; est-il possible de télécharger des sources avec Pacman ? Je n'ai pas trouvé de solution dans les pages de manuel .

Comment puis-je obtenir le code source d'un package?

40
Ning Sun

Mise à jour 2018:

L'outil abs décrit ci-dessous a été obsolète et avec son point de terminaison rsync a été supprimé depuis la mi-2017.

L'outil asp fournit désormais des fonctionnalités similaires. Plus d'informations ici .


Comme déjà mentionné, vous pouvez utiliser l'ABS (Arch Build System):

Installez-le à l'aide de pacman:

Sudo pacman -S base-devel abs

Tout d'abord, téléchargez l'arborescence ABS:

Sudo abs

Ensuite, obtenez un package spécifique:

Sudo abs [package_name]

Copiez ensuite le package, dont vous souhaitez avoir la source, à partir de l'arborescence abs locale (par exemple /var/abs/core/findutils) vers un autre répertoire, par exemple /home/blabla/abs

Exécutez ensuite makepkg:

  • si vous voulez seulement obtenir les sources et ne voulez pas construire le paquet, vous pouvez exécuter makepkg -od

  • sinon exécutez makepkg -s, qui gérera alors automatiquement toutes les dépendances du package

  • attention becaouse makepkg écrasera vos modifications, utilisez makepkg -e pour construire vos sources locales à la place

Si vous souhaitez installer le package que vous avez créé, exécutez

pacman -U name-of-package.xz
20
kilian
  1. pacman -S asp
  2. dites si vous voulez le code source de la commande Linux find

    1. savoir à quel package la commande find appartient: pacman -Qo $(which find). Le résultat est "/ usr/bin/find appartient à findutils 4.4.2-3".
  3. asp export findutils

  4. cd findutils
    makepkg -o
    

Vous avez maintenant votre code source.

39
McBear Holden

Edit: Cette réponse est obsolète en raison de changements sur ABS.

Vous obtenez les sources du package à partir du référentiel Arch Linux SVN, appelé ABS.

Trouvez d'abord le package en ligne: http://www.archlinux.org/packages/?q=coreutils

Ensuite, sur la page des détails du package, sur le côté droit, utilisez les liens SVN, par exemple: http://repos.archlinux.org/wsvn/packages/coreutils/trunk/

Et là, vous avez un doux bouton "Télécharger", dans ce cas cela mène à: http://repos.archlinux.org/wsvn/packages/coreutils/trunk/?op=dl&isdir=1

C'est un peu plus compliqué que apt-get source. Mais peut-être que vous trouvez un outil sur AUR qui fait le travail pour vous, par exemple yaourt prend en charge la construction à partir de sources et leur exportation.

3
ypnos