Nouvelle version de pacman en test

Une nouvelle version de pacman (le gestionnaire de paquetages d'archlinux) est disponible en test. Cette version 3.1.0 est publiée pour le moment dans le dépôt [testing].

Cette version contient de nombreuses modifications de pacman mais aussi de makepkg comme le montre le changelog ci-dessous:


3.1.0         – paths are now specified as absolute paths (or defaulting to under the specified root directory)
             – all paths can be specified in pacman.conf or on command line
             – updates to pacman clean operation- now cleans uninstalled packages and old sync DBs (FS#8061)
             – remove all hardcoded paths and allow them to be set at configure/build time
             – single mirrorfile- pacman substitutes the repository name in mirror file when $repo is found (FS#6389)
             – New config file options: ShowSize, TotalDownload, IgnoreGroup, UseDelta
             – all scripts have been gettext-ized and can be translated
             – added testdb utility to check pacman DBs for common problems
             – huge additions to pactest suite
             – remove -F/–freshen operation
             – add –ignoregroup option (FS#1592)
             – –ignore and –ignoregroup accept comma separated lists
             – add –needed option for –sync
             – massive optimization and speedup for –owns
             – add -q/–quiet option for -Ss/-Sl and -Q? output (FS#8470)
             – add –asdeps option (install reason: dependency) (FS#7193)
             – replace "Total Package Size" with "Total Download Size" (FS#4182)
             – fix -Q options to work on installed packages AND package files
             – change -Q/–query options to act as filters and increase their flexibility
             – -U/-A <url> now downloads to cachedir (FS#6404)
             – install and build dates are localized
             – optdepends support
             – delta support
             – versioned provisions support
             – versioned conflicts support
             – add < and > operators for versioned dependencies and conflicts
             – bash completion updates
             – mirrorlist updates
             – removed ABS script from codebase (now a separate project)
             – allow multiple pacman cache directories
             – all manpages are now generated using Asciidoc (FS#7312)
             – moved parseconfig from backend library to frontend
             – clean up and refactoring of the ENTIRE codebase
               – remove many useless #ifdefs
               – split many too-long functions
bsp; – portability updates: compiles and passes tests on BSD and  Darwin (switching libdownload->libfetch)
               – clean up build process
               – use of static code analysis
               – memory leak fixes all over the place
               – fix overzealous use of macros
               – entire codebase builds with -pedantic GCC option

             – libalpm-specific changes:
               – moved location of sync DBs into their own folder to thwart
                 deletion and remove naming limitations
               – REQUIREDBY entries are no longer used in local DB but are
                 computed on the fly when needed, which should resolve
                 phantom dependency issues (FS#7639)
               – ensure we export everything that should be public
               – fix some const correctness issues
               – add list tail ptr shortcut to make last element lookups O(1)
               – database dates are stored as seconds from epoch
               – removed SHA1 support
               – drop in new MD5 library
               – implement topological sorting for dependencies
               – do case sensitive compare in parse_descfile (FS#8081)
               – remove hardcoded architectures
               – conflicts checking speedups and fixes
               – move lockfile location to inside the DB
               – remove gettext calls from DEBUG messages
               – remove faulty diskspace checking
               – move functions out of alpm.c to where they belong
               – rewrite of file extraction code (FS#7484)

             – makepkg-specific changes:
               – entire script has been functionalized
               – only runs in fakeroot when necessary
               – hard linked manpages are now compressed (FS#5392)
               – built-in versionpkg support
               – arch=('any') support (FS#8153)
               – clean up and prettify the output
               – replace tar/cpio/unzip with bsdtar (FS#7485)
               – add –ignorearch option (FS#7355)
               – improved error handling
               – downloads straight to $SRCDEST to avoid copies (FS#7271)
               – support for multiple download protocols (FS#4404)
               – remove –usesudo option, use it by default
               – add –asroot option to discourage building as root
               – add $srcdir and $pkgdir variables (FS#7278)
               – add source package creation option
             – rankmirrors- allow reading from stdin (FS#8043)
             – and many other updates: 198 bugs/FRs closed since 3.0.0 release
             – switch to GIT for source code management

Les testeurs de pacman 3.1 peuvent trouver une version compatible de yaourt à cette adresse:

Comment se passe la mise à jour ?
Une fois la nouvelle version de pacman installée, il est conseillé de sauvegarder le fichier /etc/pacman.conf et de le remplacer par le nouveau fichier /etc/ qui contient quelques modifications. Désormais, les mirroirs sont tous stockés dans un fichier unique
L'ancienne syntaxe:

Include = /etc/pacman.d/extra

est remplacée par

Include = /etc/pacman.d/mirrorlist

Ensuite, un nettoyage de la base de données s'impose avec la commande pacman -Sc.
Répondez "o" à la question "Voulez-vous supprimer les dépôts non utilisés" puis relancer une synchronisation avec pacman -Sy.

Le fichier makepkg.conf a lui aussi subit quelques évolution et il est préférable de le remplacer par le nouveau fichier /etc/makepkg.conf.pacnew.
Enfin, le programme abs n'est plus fournit avec pacman. Pensez à lancer pacman -S abs.

Pour plus d'infos, le site de pacman qui a lui aussi évolué: et biensûr posez vos question dans la rubrique paquetages de notre forum