Spec URL: http://gauret.free.fr/fichiers/rpms/fedora/sunbird/sunbird.spec SRPM URL: http://gauret.free.fr/fichiers/rpms/fedora/sunbird/sunbird-0.7-3.fc7.src.rpm Description: Mozilla Sunbird™ is a cross-platform calendar application, built upon Mozilla Toolkit. Our goal is to bring Mozilla-style ease-of-use to your calendar, without tying you to a particular storage solution. This package also builds the Thunderbird Lightning extension, and the WCAP addition to this extension. Packaging extensions for Mozilla products is known to be pretty tricky, so I based my work on the awsome job done by the mugshot packager : https://www.redhat.com/archives/fedora-devel-list/2007-April/msg00859.html I've tested many combinations, it seems to work fine. The script I'm using is very heavily commented, and could be re-used in other extension packages if needed.
*** Bug 249234 has been marked as a duplicate of this bug. ***
Okay Im getting a metric buttload of errors from rpmlint associated with jar file manifests. Since this is the first time I've encountered this error message I'm gonna have to read up on its context a bit. example: sunbird.i386: E: no-jar-manifest /usr/lib/sunbird-0.7/chrome/en-US.jar Src.rpm rpmlint is just issuing warnings. rpmlint sunbird-0.7-3.fc7.src.rpm sunbird.src: W: strange-permission mozilla-extension-update.sh 0755 sunbird.src: W: strange-permission get-sunbird-source.sh 0755 rpmlint on the debuginfo is pooping out lots of permission workings as well. example: sunbird-debuginfo.i386: W: spurious-executable-perm /usr/src/debug/mozilla/caps/include/nsPrincipal.h -jef
> no-jar-manifest Right, I have no idea where this comes from, but firefox has the same, so I'm not too worried > strange-permission that's because I'm made the two scripts executable, I believe it can be ignored. Only one of them is actually used in the package, and it's installed with "install -m 755", so there shouldn't be any permission problem. > debuginfo Hmm, I have no idea how to fix debuginfo rpm problems. To me it's a black box, I just make sure it's not empty (that would mean my binaries were stripped on install), but that's all I know. I can't find much information in the wiki either...
Okay basic operation seems to work.. I can add my gmail ical calendar. One thing though.. on first start up I am getting chrome error dialogs. No idea what that is from. Can i pass some verbosity argument to sunbird cmdline to find out? Subsequent startups do not produce the dialog errors. Take a look at this screencast to see the error dialogs. http://people.fedoraproject.org/~jspaleta/reviews/sunbird/sunbird-startup.ogg -jef
Problem... Extension xpi's will not install as regular user until sunbird is run as root once. I'm not sure what's going on but I can definitely reproduce it. That has to be something fixable in the packaging. This maybe the root problem associated with the chrome error dialogs I'm seeing at first run of sunbird as a normal user. Also sunbird extension tools opens firefox when looking for extensions..and then attempts to install the extension in firefox and not sunbird..leading to failure to install. To install extensions you have to manually download the xpi and install from the local filesystem location. I'm not sure this is a packaging problem or just a general sunbird issue. -jef
I get the same startup errors the first time, I'm trying to find out where that comes from. However, I was able to install the gcalendar provider as my user without problem (https://addons.mozilla.org/en-US/sunbird/addon/4631). It does have to be downloaded by hand and imported from the filesystem, true, but I have no idea how to change that (IIRC it's the same with thunderbird). I tried with another sunbird extension just to be sure, and it also installs fine, after the error message about the failed chrome registration (which I'm looking into).
OK, I've fixed the "Chrome Registration Failed" error (missing file). Please have a look. * Tue Oct 30 2007 Aurelien Bompard <abompard> 0.7-4 - rename the mozilla-lightning subpackage to thunderbird-lightning since it's a thunderbird extension - create a "chrome.manifest" file to avoir "Chrome Registration Failed" message http://gauret.free.fr/fichiers/rpms/fedora/sunbird/sunbird-0.7-4.fc7.src.rpm
one additional thought here. The sunbird package essentially carries the full library stack. Just as firefox and thunderbird do. A couple of questions. Do you have a way to get security notices so as to get a jump of security issues in the library stack? aka gecko-libs as firefox's virtual provides calls it. Is sunbird ready to move over to use xulrunner when its available, to avoid having to provide a duplicate software stack? Once xulrunner is introduced there is going to be a lot of pressure to have everything mozilla based use the common library stack. And it definitely is going to make security issues less of a hassle. -jef
Concerning security notices, I plan to follow sunbird's updates as closely as possible. Usually the Mozilla Foundation updates the product's version when a security issue is found, so I'll just update at that point. About XulRunner, I don't know, but I think Sunbird should be able to run off it. I didn't test it though, but I'm eager to see xulrunner deployed too. In the meantime, I think the current sunbird package is useful as-is.
havent forgot about it. I should be able to get through the formal items tonite or tomorrow. -jef
(In reply to comment #3) > Hmm, I have no idea how to fix debuginfo rpm problems. To me it's a black box, I > just make sure it's not empty (that would mean my binaries were stripped on > install), but that's all I know. I can't find much information in the wiki either... If you haven't solved this yet... it's usually caused by the source included in the debuginfo files having non-0644 permissions. Try running this: find . -type f -print | xargs chmod a-x across the source after you unpack it. (If you need more fine grained control because of scripts in the package, you might have to add '-name \*\.c -o -name \*\.h' or such)
*** Bug 312901 has been marked as a duplicate of this bug. ***
I've fixed the debuginfo problem with the suggested find. I've also switched to the official tarball, which is now available on the FTP. http://gauret.free.fr/fichiers/rpms/fedora/sunbird/sunbird-0.7-5.fc8.src.rpm
(In reply to comment #12) > *** Bug 312901 has been marked as a duplicate of this bug. *** Ehh.. That bug is about a hardware problem, black screen when returning from suspend on certain laptops... Number typo?
I just mock-d on fedora-8-x86_64 and: $ sunbird *** buffer overflow detected ***: /usr/lib64/sunbird-0.7/sunbird-bin terminated ======= Backtrace: ========= /lib64/libc.so.6(__fortify_fail+0x32)[0x3d3a6ea362] /lib64/libc.so.6[0x3d3a6e8a90] /lib64/libc.so.6[0x3d3a6e90bb] /usr/lib64/sunbird-0.7/sunbird-bin[0x4045ed] /usr/lib64/sunbird-0.7/sunbird-bin[0x40a861] /usr/lib64/sunbird-0.7/sunbird-bin[0x406703] /lib64/libc.so.6(__libc_start_main+0xf4)[0x3d3a61e074] /usr/lib64/sunbird-0.7/sunbird-bin(__gxx_personality_v0+0x1a1)[0x403999] ======= Memory map: ======== ... Anyone else ytried that on 64bit?
(gdb) bt #0 0x0000003d3a630ec5 in raise () from /lib64/libc.so.6 #1 0x0000003d3a632970 in abort () from /lib64/libc.so.6 #2 0x0000003d3a66b0db in __libc_message () from /lib64/libc.so.6 #3 0x0000003d3a6ea362 in __fortify_fail () from /lib64/libc.so.6 #4 0x0000003d3a6e8a90 in __chk_fail () from /lib64/libc.so.6 #5 0x0000003d3a6e90bb in __realpath_chk () from /lib64/libc.so.6 #6 0x00000000004045ed in XRE_GetBinaryPath (argv0=0x7169 <Address 0x7169 out of bounds>, aResult=0x7fff6571d280) at /usr/include/bits/stdlib.h:46 #7 0x000000000040a861 in nsXREDirProvider::Initialize (this=0x7fff6571d490, aXULAppDir=<value optimized out>) at nsXREDirProvider.cpp:119 #8 0x0000000000406703 in XRE_main (argc=2, argv=0x7fff6571db88, aAppData=0x618040) at nsAppRunner.cpp:2265 #9 0x0000003d3a61e074 in __libc_start_main () from /lib64/libc.so.6 #10 0x0000000000403999 in _start () (gdb) up 6 #6 0x00000000004045ed in XRE_GetBinaryPath (argv0=0x7169 <Address 0x7169 out of bounds>, aResult=0x7fff6571d280) at /usr/include/bits/stdlib.h:46 46 return __realpath_chk (__name, __resolved, __bos (__resolved)); (gdb) up #7 0x000000000040a861 in nsXREDirProvider::Initialize (this=0x7fff6571d490, aXULAppDir=<value optimized out>) at nsXREDirProvider.cpp:119 119 nsresult rv = XRE_GetBinaryPath(gArgv[0], getter_AddRefs(lf)); (gdb) print gA gActivatedNotification gAppData gArgc gArgv gAtomTable (gdb) print gArgv[0] $3 = 0x7fff6571e7a5 "/usr/lib64/sunbird-0.7/sunbird-bin" (gdb) Will recompile with more debugging information. I won't like to pollute this bug -- should I clone it away?
Actually, the problem exists on i386 as well as on x86_64. Did anyone else spot this and/or is working on fix or should I? And some suggestion for the packager: Please disable automatic updates from mozilla.org.
> And some suggestion for the packager: Please disable automatic updates from > mozilla.org. Done: http://gauret.free.fr/fichiers/rpms/fedora/sunbird/sunbird-0.7-6.fc8.src.rpm
Aurelien: Have you actually tried to build it in mock and run it? If yes, for which release?
I am also wondering whether language packs can be included, in a manner similar to firefox?
Answering my own question -- I see you the langpacks tarball is actually included. Aurelien: Downloading the whole srpm 90M srpm over the slow link takes more than an hour. Would it be possible for you to just post link to the patch and the new SRPM?
Created attachment 290555 [details] Fix for FORTIFY_SOURCE abort of sunbird during startup This is the fix for problem described in comment #15
Also, please change the description in the desktop file from "Sunbird" to "Sunbird Calendar".
I'd strongly encourage requiring this package to build against xulrunner before allowing it into rawhide. Also, if this package provides any .sos that the gecko-devel environment also provides (such as libxpcom.so etc), it may cause apps to break that require the .so if those are not manually stripped from the auto provides generator, ala find-external-requires from the firefox rpm.
Builds fine for EL-5/i386 and F-8/x86_64 I rolled a new revision (sunbird-0.7-7) that includes the changes I proposed in comment #23 and comment #22. New and changed SPEC and SOURCES are available here: http://people.redhat.com/lkundrak/patches/sunbird/
RPMlint: sunbird.i386: W: symlink-should-be-relative /usr/share/icons/hicolor/128x128/apps/sunbird.png /usr/lib/sunbird-0.7/icons/mozicon128.png
The language packs don't work for me (It might be as well an upstream issue): 1.) There's no GUI way to configure the language 2.) I can force the language by changing "general.useragent.locale" to the locale name 3.) because of 1.) sunbird should use the system's locale. I believe this is done by setting "intl.locale.matchOS" to true. It doesn't work either. I believe 3.) should be done the way firefox does it -- by supplying the default prefs file: http://cvs.fedoraproject.org/viewcvs/*checkout*/rpms/firefox/F-8/firefox-redhat-default-prefs.js Possibly other preferences are interesting (the Vendor string would apply when loading calendars from http/WebDAV).
Also i see wearnings like this in the error console ("chrome://navigator-region/locale/region.properties" is the default value of "general.useragent.contentlocale"): No chrome package registered for chrome://navigator-region/locale/region.properties .
Guys, I'm very sorry but due to a policy change at work, I won't be able to maintain sunbird for Fedora in the long run. So I'd better stop now. But please feel free to reuse my srpm for future improvements if you feel like it. Sorry again.
Aurelien: I am very sorry to heard that. Unless anyone else wants to, I will take over the package and also try to build the xulrunner version for Fedora 9, though it might take me some time.
Lubomir, We are maintaining lightning extension internally in Red Hat, This package is really interesting, Can we take this package over jointly?
Huziafa, yes, I kind of knew that, but this did not come to my mind as I do not use Thunderbird at all. I'd take the formal responsibility to roll srpms for review, apply for cvs and import it, and will gladly accept all improvements, especially in the lightning part and also results of testing. With pkgdb package can have multiple people being in initial bugzilla cc and receiving cvs notifications, and there's no reason for not having cvsextras commits allowed. Thanks in advance!
A new revision: http://people.redhat.com/lkundrak/sunbird-0.7-8.fc8/ (I omited the lightning-sunbird-0.7-source.tar.bz2 file -- please get it from upstream if you do not have it -- it's huge and I'm not going to upload it anywhere) * Mon Jan 21 2008 Lubomir Kundrak <lkundrak> 0.7-8 - Streamlined BuildRequires a bit - Do not provide stuff that has to be provided by firefox - Do not require what's in our fileset - Removed redundant and useless Source0 without upstream By sanitizing the provides/requires I believe all blockers to be sloved for pre-xulrunner releases. The good news is that sunbird seems to build with xulrunner sdk rather nicely, so there's no need to worry about Fedora 9. This won't do any harm in F9 though. One outstanding issue is use of system language, which I believe to be an upstream bug. I'll investigate that a bit. Marek: Could you please have a look at the package? Huzaifa: I'd appreciate if you find time to look at the thunderbird plugin, I gave it no testing at all. I'm especially interested if local languages work.
I compiled the SRPM on Fedora 8 (x86_64) successfully. Unfortunately, local languages (at least German) do not work in Thunderbird/Lightning. I can't even install de.xpi from the language pack manually due to an "unknown error" (-203). I can provide the detailed log message from error console if necessary.
Felix: The langpack issue with sunbird is an upstream issue. I suspect it might be the case with lightning too. Could you please check? I'll search for a fix or file an upstream bug once my vacation is over (2008-02-06). I'd do it now if I hadn't trouble typing due to a kind of a stupid injury of a hand.
Lubomir: Okay, I found that using 'sunbird -uilocale de' will start sunbird with German localization as expected. The Fedora Firefox start script in /usr/bin does some hacks to pass the correct locale to Firefox. Maybe this should be the same for sunbird? Lightning seems to be different, though: First off all, its UI is English, too. But I noticed that I don't see an langpacks for Lightning when I look in the Add-ons menu. The thunderbird-lightning rpm does not contain any jars which do contain localizations. Upstream lightning xpi files contain localizations as calendar-$LANG.jar in the /chrome folder.
Latest package is working fine, spec file looks sane and rpmlint output is adequate. Please, don't forgot to implement the wrapper for language issue. APPROVED.
New Package CVS Request ======================= Package Name: sunbird Short Description: Mozilla Sunbird Calendar Owners: lkundrak Branches: F-8 EL-5 Cvsextras Commits: yes
cvs done.
Huzaifa: I forgot to request creation of the ACLs for you. Now your action is needed to create them -- Please add yourself here[ [1] and check all ACLs. [1] https://admin.fedoraproject.org/pkgdb/packages/name/sunbird Importing to CVS now.
Any sense in putting Sunbird into repo? Thunderbird 3 will bring same functionality.
Jakub: Nonexistent applications are generally poor replacement over existing ones :)
*** Bug 237137 has been marked as a duplicate of this bug. ***