Bon j'ai passé ma soirée à jouer un peu avec sunbird et je vais donc faire part de mes avancées, et ça va être long…
Pour rappel, le projet sunbird a été abandonné à la version 1.0b1 et les add-ons ne sont donc plus dispo sur le site de la fondation mozilla.
1) J'ai encore une fois tenté la compilation à partir des sources pour en faire une application localisée. Résultat : néant. Il faut trouver le l10n correspondant.

Pour la compilation en elle même, j'ai suivi ce qui est dit
ici. J'ai choisi d'ajouter (il y avait des problèmes avant sans cette option)
ac_add_options --enable-chrome-format=jar
et
ac_add_options --disable-tests
pour aller le plus loin possible dans la compilation.
Le soucis c'est que j'obtiens toujours une erreur quelque soit la version que je compile (1.0b1,…)

:
Code : Tout sélectionner
c++ -o sunbird-bin -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -fno-strict-aliasing -fshort-wchar -pthread -pipe -DNDEBUG -DTRIMMED -g -Os -freorder-blocks -fomit-frame-pointer nsCalendarApp.o -lpthread -Wl,-rpath-link,/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/mozilla/dist/bin:/usr/lib:/usr/local/lib:/lib -Wl,-rpath-link,/usr/local/lib -L../../../mozilla/dist/bin -L../../../mozilla/dist/lib -lxul -L/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/mozilla/dist/bin -lxpcom -lmozalloc -lxul `/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/mozilla/dist/sdk/bin/nspr-config --prefix=/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/mozilla/dist --libdir=/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/mozilla/dist/lib --libs` -ldbus-glib-1 -ldbus-1 -lpthread -lrt -lgobject-2.0 -lglib-2.0 -Wl,--whole-archive -ljemalloc -Wl,--no-whole-archive -ldl -lm
nsCalendarApp.o: In function `nsCOMPtr<nsILocalFile>::StartAssignment()':
/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/calendar/sunbird/app/../../../mozilla/dist/include/nsCOMPtr.h:866: undefined reference to `nsCOMPtr_base::begin_assignment()'
nsCalendarApp.o: In function `~nsACString_internal':
/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/calendar/sunbird/app/../../../mozilla/dist/include/nsTSubstring.h:113: undefined reference to `nsACString_internal::Finalize()'
nsCalendarApp.o: In function `~nsCOMPtr':
/home/thomas/sunbird-beta/comm-beta/objdir-sb-release/calendar/sunbird/app/../../../mozilla/dist/include/nsCOMPtr.h:488: undefined reference to `nsCOMPtr_base::~nsCOMPtr_base()'
/usr/bin/ld: sunbird-bin: hidden symbol `_ZN13nsCOMPtr_baseD2Ev' isn't defined
/usr/bin/ld: final link failed: Bad value
collect2: erreur: ld a retourné 1 code d'état d'exécution
Je ne sais pas quoi faire pour passer outre.
2) FoolEcho propose d'utiliser la version hg, mais c'est «moisi»

ici puisque c'est plus maintenu et que mélodie veut juste la dernière version dispo. (Si vous trouvez un dépot qui est toujours mis à jour je suis preneur pour rejouer un peu à la compilation.)
Donc je pense que pour le moment, je vais laisser de côté la compilation à partir des sources pour le 64 bits.
3) J'ai eu une lueur d'espoir (et j'y crois encore

) en farfouillant dans les pages
http://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird.* et je suis arrivé sur des versions localisées
ici. Mais c'est la version 1.0b2 ! que je ne trouve pas.

Par contre il y a le .xpi qui correspond à la version 1.0b2.
En modifiant le contenu du fichier install.rdf, je peux rendre compatible l'extension, mais au redémarrage toujours en en-US.
En copiant le contenu du xpi (c'est un zip en fait) là où il faut dans /opt/sunbird après une installation suivant mon pkgbuild (sans le fr-langage-pack.tar.bz2) j'ai sunbird en fr
Grande question est ce que ce coup ci c'est viable ? Pour le coup on pourrait faire des versions localisées pour toute les langues si besoins (à la manière du firefox-hg-.*).
J'ai pas mal raconté ma vie, mais au moins vous savez ce que j'ai tenté et ou j'en suis (pour ceux qui aurait d'autre idées).
Pour finir voilà donc le pkgbuild que j'utilise.
ATTENTION il n'est pas bon : certains fichiers ne sont pas supprimés à la désinstallation ! c'est juste pour avoir une idée de comment faire.
pkgbuild :
Code : Tout sélectionner
# Maintainer: Mr_Men <tetcheve(at)gmail(dot)com>
pkgname=sunbird-beta-fr
pkgver=1.0b1
pkgrel=1
pkgdesc='Standalone calendar from mozilla.org, beta build binaries'
url='http://www.mozilla.org/projects/sunbird'
arch=('i686' 'x86_64')
depends=('gtk2' 'alsa-lib' 'java-environment' 'libxt' 'desktop-file-utils' 'nss' 'dbus-glib')
install=$pkgname.install
provides=('sunbird')
license=('MPL' 'GPL' 'LGPL')
if test "$CARCH" == i686; then
source=("http://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird/releases/$pkgver/linux-$CARCH/fr/sunbird-$pkgver.tar.bz2"
"sunbird.desktop")
md5sums=('3b88e08266f5293253b5da543bc9342c' 'bfdfe3e01cbd58e32f89bfbe906a506b')
else
source=("http://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird/releases/$pkgver/linux-$CARCH/en-US/sunbird-$pkgver.tar.bz2"
"sunbird.desktop"
'http://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird/nightly/latest-comm-1.9.1-l10n/sunbird-1.0b2pre.fr.langpack.xpi')
md5sums=('39da36d2500c4b19972c31f492fa5c47' 'bfdfe3e01cbd58e32f89bfbe906a506b' '3a324dd3dc2a403e9e93f1fee32862ae')
noextract=("sunbird-1.0b2pre.fr.langpack.xpi")
fi
package() {
cd $srcdir
install -d $pkgdir/{usr/{bin,share/{applications,pixmaps}},opt}
cp -r sunbird/ $pkgdir/opt/$pkgname-$pkgver
ln -s /opt/$pkgname-$pkgver/sunbird $pkgdir/usr/bin/$pkgname
install -m644 $srcdir/sunbird.desktop $pkgdir/usr/share/applications/
install -m644 $srcdir/sunbird/icons/mozicon128.png $pkgdir/usr/share/pixmaps/${pkgname}-icon.png
mkdir TEMP
cd TEMP
unzip ../sunbird-1.0b2pre.fr.langpack.xpi
install -m644 chrome/{calendar-fr.jar,calendar-timezones-fr.jar,fr.jar,sunbird-fr.jar} $pkgdir/opt/$pkgname-$pkgver/chrome/
install -m644 defaults/pref/sunbird-l10n.js $pkgdir/opt/$pkgname-$pkgver/defaults/pref/sunbird-l10n.js
}
sunbird-beta-fr.install :
sunbird.desktop :
Code : Tout sélectionner
[Desktop Entry]
Name=Sunbird Beta
GenericName=Calendrier
Icon=sunbird-beta-icon
Type=Application
Categories=Application;Office;Calendar
MimeType=text/calendar;text/x-vcalendar
Encoding=UTF-8
Exec=sunbird
Terminal=false
MultipleArgs=false
StartupNotify=false
]
Merci d'avoir lu jusqu'au bout

maintenant
