Nouvelle version de pacman en test
11 janvier 2008 - admin
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
&n
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:
http://archiwain.free.fr/pacman3.1/
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/pacman.conf.new qui contient quelques modifications. Désormais, les mirroirs sont tous stockés dans un fichier unique
"/etc/pacman.d/mirrorlist".
L'ancienne syntaxe:
[extra]
Include = /etc/pacman.d/extra
est remplacée par
[extra]
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é: http://www.archlinux.org/pacman/ et biensûr posez vos question dans la rubrique paquetages de notre forum