Page 1 sur 1

[pacman] Le mettre en français

Publié : mar. 26 sept. 2006, 12:34
par geekitus
Bonjour

Nous travaillons sur le projet "pacman en français" basé sur pacman-i18n qui ne semble plus être actif.

Code : Tout sélectionner

ROADMAP :
faire le man de pacman en FR
sortir la version 2.9.8  ce weekend.

Voici le premier paquet de test :

http://sleguillerm.free.fr/linux/archli ... pkg.tar.gz

pour installer le paquet :

pacman -Uf http://sleguillerm.free.fr/linux/archli ... pkg.tar.gz

Le PKGBUILD :

Code : Tout sélectionner

pkgname=pacman-fr
pkgver=2.9.6
pkgrel=1
pkgdesc="A .tar.gz based package manager with dependency support"
url="http://www.archlinux.org/pacman"

backup=('etc/pacman.conf' 'etc/makepkg.conf' 'etc/abs/abs.conf' \
        etc/pacman.d/{current,release,extra,unstable,community})

makedepends=('libtar')

source=(http://sleguillerm.free.fr/linux/archlinux/pacmanfr/$pkgname-$pkgver.tar.bz2 \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/pacman.conf \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/sortmirrors.pl \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/sortmirrors \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/abs \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/abs.conf \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.arch \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.extra \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.unstable \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.community \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/current \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/release \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/extra \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/unstable \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/community)

md5sums=(0f06ffdbd523460d878cbf2dd8d2b091 '831265c184f5a21f728c96ec1196a22b'\
         'd84103bbe2889a580ac990bf19885b21' '6774445034c8aef4d371fc2083a09266'\
         '24e6571bf97787d1a5f28a7d5275e150' '15c19ba9e5f862540aebab9a2c8585ea'\
         '2c564a8760ec0dac96082f1855d153d1' 'f83885f6c431e4e7f8b131fe444ac0d2'\
         '02f6d1c2a508516edb9c56fea20dd846' '5045908a109d066da5469cbc6e5d4c79'\
         '9036681e4beb145f5d844c5cd1d68033' '3b0a803492500a236b868fd39d2ac2ec'\
         '7681cc08fe6e9214bf6d54060486eafb' '8d5dad3910060ea2a2dd52488b52cff7'\
         'd0bc60ea6a8c5b491e94622bf376c723')

build() {
  cd $startdir/src/$pkgname
  sh autogen.sh

  ./configure --prefix=/usr

  mkdir -p $startdir/pkg/usr/share/locale/fr/LC_MESSAGES/ 

  make || return 1
  make DESTDIR=$startdir/pkg install
  make DESTDIR=$startdir/pkg installi18n
  make DESTDIR=$startdir/pkg ipoi18n
  make DESTDIR=$startdir/pkg mani18n

  mkdir -p $startdir/pkg/var/abs/local
  install -D -m644 ../pacman.conf $startdir/pkg/etc/pacman.conf
  install -D -m755 ../sortmirrors.pl $startdir/pkg/usr/bin/sortmirrors.pl
  install -D -m755 ../sortmirrors $startdir/pkg/usr/bin/sortmirrors
  install -D -m755 ../abs $startdir/pkg/usr/bin/abs
  install -D -m644 ../abs.conf $startdir/pkg/etc/abs/abs.conf

  for fn in supfile.{arch,extra,unstable,community}; do
    install -D -m644 ../$fn $startdir/pkg/etc/abs/$fn
  done

  for fn in current release extra unstable community; do
    install -D -m644 ../$fn $startdir/pkg/etc/pacman.d/$fn
  done

  # set the correct architecture...
  sed -i "s|i686|$CARCH|g" $startdir/pkg/etc/pacman.d/*
  sed -i "s|i686|$CARCH|g" $startdir/pkg/etc/makepkg.conf
}

Publié : mar. 26 sept. 2006, 13:27
par wain
Ah voilà un projet qui n'aurait jamais du s'arrêter en si bon chemin. Je suis content que l'aventure reprenne !

c'est ok pour moi tout ce compile et s'installe bien :)
Il faudrait juste ajouté un conflicts=('pacman') je pense dans le pkgbuild.

Tu peux me dire en quoi et comment je peux t'aider stp ?

Publié : mar. 26 sept. 2006, 13:51
par geekitus
En fait je ne peux pas vraiment tester chez moi (archlinux est uniquement en chroot).. donc il faut des testeurs :)

De plus il y a pacman 3 ... que je veux packager (déjà utilisé par frugalware) .. .. et qui est déjà multilingue.. tu peux t'occuper de pacman 3 si tu veux ?

(source dispo sur le repo de frugalware (sous darcs) , mais je peux les mettres sur mon FTP)

Publié : mar. 26 sept. 2006, 14:50
par pappy
Sympa, ça va bien avec l'iso en français

Publié : mer. 27 sept. 2006, 00:00
par wain
geekitus a écrit :En fait je ne peux pas vraiment tester chez moi (archlinux est uniquement en chroot).. donc il faut des testeurs :)

De plus il y a pacman 3 ... que je veux packager (déjà utilisé par frugalware) .. .. et qui est déjà multilingue.. tu peux t'occuper de pacman 3 si tu veux ?

(source dispo sur le repo de frugalware (sous darcs) , mais je peux les mettres sur mon FTP)
ok trop tard pour ce soir, mais je le fais demain.

Publié : mer. 27 sept. 2006, 12:39
par wain
Bon je fais un pkgbuild là.
Je vais tester en chroot pour pas tout péter. Je pense qu'il faut quand même beaucoup adapter pour que ça tourne correctement sous Arch.

Publié : mer. 27 sept. 2006, 12:44
par warnaud
En fait les pkgbuilds pour les pkg frugalware ne sont pas les mêmes, la syntaxe est différente.

la compilation plante

Publié : mer. 27 sept. 2006, 13:44
par wain
Voici le début du PKGBUILD:

Code : Tout sélectionner

pkgname=pacman
pkgver=3.4.0
pkgrel=1
pkgdesc="A .tar.bz2 based package manager with dependency support"
url="http://www.archlinux.org/"
backup=(etc/{makepkg,pacman}.conf etc/pacman.d/{current,release,extra,community})
depends=('libarchive>=1.3.1')
makedepends=('doxygen' 'po4a' 'swig')
groups=('base' 'chroot-core')
archs=('i686' 'x86_64' 'ppc')
source=( \
http://ftp.frugalware.org/pub/other/pacman/releases/$pkgname-$pkgver.tar.gz \
http://darcs.frugalware.org/patches/pacman/20060921112741-e2957-cf054231389c346a54b1e2c22fb13ed817f93d61.patch \
http://darcs.frugalware.org/patches/pacman/20060925084615-e2957-993c1d139b613cf43812813bdad2aaf4a30b26fe.patch \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/pacman.conf \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/sortmirrors.pl \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/sortmirrors \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/abs \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/abs.conf \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.arch \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.extra \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.unstable \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/supfile.community \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/current \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/release \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/extra \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/unstable \
http://sleguillerm.free.fr/linux/archlinux/pacmanfr/community)


build() {
  #cd $startdir/src/
  #darcs get --partial http://darcs.frugalware.org/repos/pacman
  cd $startdir/src/$pkgname-$pkgver
  sh autogen.sh

  ./configure --prefix=/usr

  #mkdir -p $startdir/pkg/usr/share/locale/fr/LC_MESSAGES/

  make || return 1
  make DESTDIR=$startdir/pkg install

  mkdir -p $startdir/pkg/var/abs/local
  install -D -m644 ../pacman.conf $startdir/pkg/etc/pacman.conf
  install -D -m755 ../sortmirrors.pl $startdir/pkg/usr/bin/sortmirrors.pl
  install -D -m755 ../sortmirrors $startdir/pkg/usr/bin/sortmirrors
  install -D -m755 ../abs $startdir/pkg/usr/bin/abs
  install -D -m644 ../abs.conf $startdir/pkg/etc/abs/abs.conf

  for fn in supfile.{arch,extra,unstable,community}; do
    install -D -m644 ../$fn $startdir/pkg/etc/abs/$fn
  done

  for fn in current release extra unstable community; do
    install -D -m644 ../$fn $startdir/pkg/etc/pacman.d/$fn
  done

  # set the correct architecture... 
  sed -i "s|i686|$CARCH|g" $startdir/pkg/etc/pacman.d/*
  sed -i "s|i686|$CARCH|g" $startdir/pkg/etc/makepkg.conf
}
Chez moi c'est:

Code : Tout sélectionner

format_zip.o): In function `archive_read_format_zip_read_data':
: undefined reference to `inflateInit2_'
collect2: ld returned 1 exit status
make[3]: *** [pacman.static] Error 1
make[3]: Leaving directory `/var/abs/local/pacman3/src/pacman-3.4.0/src/pacman'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/abs/local/pacman3/src/pacman-3.4.0/src/pacman'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/abs/local/pacman3/src/pacman-3.4.0'
make: *** [all] Error 2
:(

idem avec la version darcs (de développement).

Publié : mer. 27 sept. 2006, 20:54
par geekitus
il faut ajouter :

Code : Tout sélectionner

 sed -i "s|/share/automake/mkinstalldirs|/share/automake-1.9/mkinstalldirs|g" autogen.sh
ce qui donne :

Code : Tout sélectionner

cd $startdir/src/$pkgname-$pkgver
sed -i "s|/share/automake/mkinstalldirs|/share/automake-1.9/mkinstalldirs|g" autogen.sh
sh autogen.sh 

Publié : mer. 27 sept. 2006, 23:16
par wain
Bon en recompilant libarchive (sans supprimer les *.la) et en installant quelques dépendances, le package se compile bien:

Code : Tout sélectionner

# Last Modified: Tue, 26 Sep 2006 00:28:06 +0200
# Maintainer: VMiklos <vmiklos@frugalware.org>
# Contributor: wain <wain@archlinux.fr>
pkgname=pacman
pkgver=3.4.0
pkgrel=1
pkgdesc="A .tar.bz2 based package manager with dependency support"
url="http://www.archlinux.org/"
backup=(etc/{makepkg,pacman}.conf etc/pacman.d/{current,release,extra,community})
depends=('libarchive>=1.3.1')
makedepends=('doxygen' 'po4a' 'swig' 'e2fsprogs' 'lftp' 'libalpm')
archs=('i686' 'x86_64' 'ppc')
source=( \
http://ftp.frugalware.org/pub/other/pacman/releases/$pkgname-$pkgver.tar.gz \
http://darcs.frugalware.org/patches/pacman/20060921112741-e2957-cf054231389c346a54b1e2c22fb13ed817f93d61.patch \
http://darcs.frugalware.org/patches/pacman/20060925084615-e2957-993c1d139b613cf43812813bdad2aaf4a30b26fe.patch \
pacman.conf \
sortmirrors.pl \
sortmirrors \
abs \
abs.conf \
makepkg.conf \
supfile.arch \
supfile.extra \
supfile.unstable \
supfile.community \
current \
release \
extra \
unstable \
community)


build() {
  #cd $startdir/src/
  #darcs get --partial http://darcs.frugalware.org/repos/pacman
  cd $startdir/src/$pkgname-$pkgver
  sed -i "s|/share/automake/mkinstalldirs|/share/automake-1.9/mkinstalldirs|g" autogen.sh
  sh autogen.sh
  ./configure --prefix=/usr
  make || return 1
  make DESTDIR=$startdir/pkg install
  mkdir -p $startdir/pkg/var/abs/local
  install -D -m644 ../pacman.conf $startdir/pkg/etc/pacman.conf
  install -D -m755 ../sortmirrors.pl $startdir/pkg/usr/bin/sortmirrors.pl
  install -D -m755 ../sortmirrors $startdir/pkg/usr/bin/sortmirrors
  install -D -m755 ../abs $startdir/pkg/usr/bin/abs
  install -D -m644 ../abs.conf $startdir/pkg/etc/abs/abs.conf
  install -D -m644 ../makepkg.conf $startdir/pkg/etc/makepkg.conf

  for fn in supfile.{arch,extra,unstable,community}; do
    install -D -m644 ../$fn $startdir/pkg/etc/abs/$fn
  done

  for fn in current release extra unstable community; do
    install -D -m644 ../$fn $startdir/pkg/etc/pacman.d/$fn
  done

  # set the correct architecture... 
  sed -i "s|i686|$CARCH|g" $startdir/pkg/etc/pacman.d/*
  sed -i "s|i686|$CARCH|g" $startdir/pkg/etc/makepkg.conf
}
par contre cette version de pacman (pour frugalware) n'accepte pas le format de paquet d'archlinux .pkg.tar.gz.
Il faudrait donc modifier le code pour qu'il puisse installer et mettre à jour des paquets.
-> à suivre