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 Nouvelles Archlinux.fr