Spec URL: http://cicku.me/smuxi.spec SRPM URL: http://cicku.me/smuxi-0.9-1.fc21.src.rpm Description: Smuxi is an irssi-inspired, flexible, user-friendly and cross-platform IRC client for sophisticated users, targeting the GNOME desktop. Smuxi is based on the client-server model: The core application (engine) can be placed onto a server which is connected to the Internet around-the-clock; one or more frontends then connect to the core. This way, the connection to IRC can be kept up even when all frontends have been closed. The combination of screen and irssi served as example for this architecture. Smuxi also supports the regular single application mode. This behaves like a typical IRC client; it doesn't need separate core management and utilizes a local engine that is used by the local frontend client. Fedora Account System Username: cicku
Mono is Fedora needs update and after then this package is compilable.
s/is F/in F/.
The needed Mono version is lower (>= 2.6) if you disable the JabbR engine. In the Debian source package I detect if Mono is current enough and enable/disable the JabbR version, e.g.: https://github.com/meebey/smuxi/blob/master/debian/rules#L9
(In reply to Mirco Bauer from comment #3) > The needed Mono version is lower (>= 2.6) if you disable the JabbR engine. > In the Debian source package I detect if Mono is current enough and > enable/disable the JabbR version, e.g.: > https://github.com/meebey/smuxi/blob/master/debian/rules#L9 I want to bring more functions to users, and in fact, Fedora mono will be updated to 3.2.3 soon(Yes, we are only waiting for arm hfp support ready).
I understand, but I didn't mean to disable JabbR always, only if the Mono version is too old. Which Mono version is in fedora currently? Maybe I can supply a patch that allows to build it on that version then... With Mono 3.2 on armhf, oh yes that will make smuxi-server on raspberry pi awesome :-)
(In reply to Mirco Bauer from comment #5) > I understand, but I didn't mean to disable JabbR always, only if the Mono > version is too old. Which Mono version is in fedora currently? Maybe I can > supply a patch that allows to build it on that version then... > > With Mono 3.2 on armhf, oh yes that will make smuxi-server on raspberry pi > awesome :-) You can search mono-devel in http://pkgs.org to get the information. This website is very helpful for comparing pkg version in different distros. Very old now: [rpmaker@fab dev]$ rpm -qa |grep mono-devel mono-devel-2.10.8-5.fc20.i686
I am not aware of any build issues with Smuxi 0.9 on Mono 2.10.8, that is what Debian Stable and Testing contains and successfully compiled Smuxi 0.9. So do you have a compile issue? (because of your comment it needs a newer version to compile)
Just had the dinner. Well build is aborted: + ./configure --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-frontend-stfl checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether UID '1000' is supported by ustar format... yes checking whether GID '1000' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking whether to enable maintainer-specific portions of Makefiles... no checking for pkg-config... /usr/bin/pkg-config checking build system type... i686-redhat-linux-gnu checking host system type... i686-redhat-linux-gnu checking how to print strings... printf checking for style of include used by make... GNU checking for i686-redhat-linux-gnu-gcc... no checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... none checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert i686-redhat-linux-gnu file names to i686-redhat-linux-gnu format... func_convert_file_noop checking how to convert i686-redhat-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for i686-redhat-linux-gnu-objdump... no checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for i686-redhat-linux-gnu-dlltool... no checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for i686-redhat-linux-gnu-ar... no checking for ar... ar checking for archiver @FILE support... @ checking for i686-redhat-linux-gnu-strip... no checking for strip... strip checking for i686-redhat-linux-gnu-ranlib... no checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for i686-redhat-linux-gnu-mt... no checking for mt... no checking if : is a manifest tool... no checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking whether NLS is requested... yes checking for intltool >= 0.25... 0.50.2 found checking for intltool-update... /usr/bin/intltool-update checking for intltool-merge... /usr/bin/intltool-merge checking for intltool-extract... /usr/bin/intltool-extract checking for xgettext... /usr/bin/xgettext checking for msgmerge... /usr/bin/msgmerge checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for perl... /usr/bin/perl checking for perl >= 5.8.1... 5.18.1 checking for XML::Parser... ok checking for msgfmt... (cached) /usr/bin/msgfmt checking for gmsgfmt... (cached) /usr/bin/msgfmt checking for xgettext... (cached) /usr/bin/xgettext checking for msgmerge... (cached) /usr/bin/msgmerge checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for shared library run path origin... done checking for CFPreferencesCopyAppValue... no checking for CFLocaleCopyCurrent... no checking for GNU gettext in libc... yes checking whether to use NLS... yes checking where the gettext function comes from... libc checking for git version... no checking for i686-redhat-linux-gnu-pkg-config... (cached) /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for MONO_MODULE... yes checking for mono... /usr/bin/mono checking for gmcs... /usr/bin/gmcs checking for Mono 2.0 GAC for System.dll... found checking for Mono 2.0 GAC for System.Core.dll... found checking for Mono 2.0 GAC for System.Xml.dll... found checking for Mono 2.0 GAC for System.Runtime.Remoting.dll... found checking for Mono 2.0 GAC for Mono.Posix.dll... found checking for LOG4NET... yes checking for NINI... yes checking for xbuild... /usr/bin/xbuild checking for xbuild... (cached) /usr/bin/xbuild checking for Mono 2.0 GAC for System.dll... found checking for Mono 2.0 GAC for Mono.Posix.dll... found checking for xbuild... (cached) /usr/bin/xbuild checking for Mono 2.0 GAC for System.dll... found checking for Mono 2.0 GAC for System.Core.dll... found checking for Mono 2.0 GAC for Mono.Posix.dll... found checking for Mono 2.0 GAC for System.Xml.dll... found checking for xbuild... (cached) /usr/bin/xbuild checking for Mono >= 2.6... yes checking for Mono 2.0 GAC for System.dll... found checking for Mono 2.0 GAC for System.Core.dll... found checking for Mono 2.0 GAC for System.Data.dll... found checking for Mono 2.0 GAC for System.Runtime.Serialization.dll... found checking for Mono 2.0 GAC for System.Web.dll... found checking for Mono 2.0 GAC for System.Xml.dll... found checking for Mono 2.0 GAC for System.Xml.Linq.dll... found checking for Mono 2.0 GAC for System.dll... found checking for Mono 2.0 GAC for System.Configuration.dll... found checking for Mono 2.0 GAC for System.Core.dll... found checking for Mono 2.0 GAC for System.Data.dll... found checking for Mono 2.0 GAC for System.Drawing.dll... found checking for Mono 2.0 GAC for System.Web.dll... found checking for Mono 2.0 GAC for System.Web.Extensions.dll... found checking for Mono 2.0 GAC for System.Xml.dll... found checking for Mono 2.0 GAC for System.Xml.Linq.dll... found checking for xbuild... (cached) /usr/bin/xbuild checking for Mono >= 2.10... yes checking for 4.0 compiler... no configure: error: You need to compile with a 4.0 compiler (dmcs) for JabbR support (or use --disable-engine-jabbr) error: Bad exit status from /var/tmp/rpm-tmp.J5J3mD (%build)
Ignore the last comment. If I set build without jabbr support, the build process is perfect. So I just need a 4.0 compiler now.
You can override the compiler with: ./configure MCS=/usr/bin/dmcs
I wanted to try out the spec file, but it seems it has become a 404 :( Could you please attach the spec file to this report? Thanks!
(In reply to Bart Verwilst from comment #11) > I wanted to try out the spec file, but it seems it has become a 404 :( > Could you please attach the spec file to this report? > > Thanks! I've re-uploaded the things you desire ;) Current inprogress SPEC generates configuration file for building: Configuration summary for smuxi 0.9 (tarball) * Installation prefix: /usr * Build profile: debug * Compiler: /usr/bin/dmcs * Target CLI runtime: 4.0 * Engines ------- Core: (db4o: included) IRC: yes XMPP: yes Twitter: yes Campfire: yes JabbR: yes * Frontends --------- GNOME: yes (IRC: yes XMPP: yes) + Messaging Menu (indicate: Ubuntu <= 12.04, messaging-menu: Ubuntu >= 12.04) - indicate: no - messaging-menu: no + Notifications: yes + Spell Checking: yes + D-Bus: yes Ncurses: no STFL: yes SWF (WinForms): no WPF: no Test: yes Summary: 1. Ncurses support hasn't been implemented, so it's unavailable now. 2. SWF/WPF is used for Windows. 3. Messaging Menu is used for Ubuntu, I'm not sure if it deserves a packaging try for Fedora(I think not). And: 1. I still haven't decided how many subpackages should I split out, awaiting answers from Mirco. He was busy ;) 2. Eithor smuxi or smuxi-server has similar warnings during running: Symbol file /usr/lib/smuxi/smuxi-engine-campfire.dll.mdb is not a mono symbol file Symbol file /usr/lib/smuxi/smuxi-engine-jabbr.dll.mdb is not a mono symbol file Ideas are welcome.
Configure summary looks good to me and I agree to 1) 2) 3) of it. For the package split I suggest to follow the upstream and downstream packaging I do in Debian: * smuxi-engine: smuxi-engine* libraries, smuxi-server.exe and all other private libraries (SmartIrcr4net, Twitterizer, ServiceStack, etc) * smuxi-frontend-gnome: smuxi-frontend-gnome* * smuxi-frontend-stfl: smuxi-frontend-stfl This the smallest possible split that still allows to install a) server-only without X11/GUI dependencies, b) just the GNOME frontend c) just the console frontend
Oh and the .mdb warnings are a bug in the Smuxi build system, but are harmless and can be ignored/skipped from the packages.
If it helps here are the exact files patterns for the package split: smuxi-engine http://anonscm.debian.org/gitweb/?p=pkg-cli-apps/packages/smuxi.git;a=blob;f=debian/smuxi-engine.install;hb=HEAD smuxi-frontend-gnome http://anonscm.debian.org/gitweb/?p=pkg-cli-apps/packages/smuxi.git;a=blob;f=debian/smuxi-frontend-gnome.install;hb=HEAD smuxi-frontend-stfl http://anonscm.debian.org/gitweb/?p=pkg-cli-apps/packages/smuxi.git;a=blob;f=debian/smuxi-frontend-stfl.install;hb=HEAD
I was looking for this in Fedora and came across this review. Could the spec files be re-uploaded once more? (Not fully committed here yet, but I am interested in helping this along.)
(In reply to Jeff Peeler from comment #16) > I was looking for this in Fedora and came across this review. Could the spec > files be re-uploaded once more? (Not fully committed here yet, but I am > interested in helping this along.) Yes, I'd like to finish this one ASAP.
Hey Christopher, I'm glad you're still interested. Do you have another URL to provide? I was hoping to find the spec at your original location (http://cicku.me/smuxi.spec), but am currently getting a 404 not found.
Hi Christopher. I have a smuxi-0.11 src-package almost ready for the review. Please, let me know if you are still interested to it; maybe we can co-maintain this package with Jeff, too.
(In reply to Antonio Trande from comment #19) > Hi Christopher. > > I have a smuxi-0.11 src-package almost ready for the review. > Please, let me know if you are still interested to it; maybe we can > co-maintain this package with Jeff, too. Does your src package have the suggested package split?
(In reply to Mirco Bauer from comment #20) > (In reply to Antonio Trande from comment #19) > > Hi Christopher. > > > > I have a smuxi-0.11 src-package almost ready for the review. > > Please, let me know if you are still interested to it; maybe we can > > co-maintain this package with Jeff, too. > > Does your src package have the suggested package split? I have splitted in this way: smuxi smuxi-engine smuxi-frontend-gnome smuxi-stfl smuxi-devel and I have a doubt if we must use 'gautil' to register all .dll files. http://fedoraproject.org/wiki/Packaging:Mono#gacutil_in_a_spec_file However, 'gautil' fails with Failure adding assembly bin/debug/?.dll to the cache: Attempt to install an assembly without a strong name
Smuxi's libs are private and thus not signed. Unsigned assemblies can't be installed into the GAC. The stfl package should be called smuxi-frontend-stfl because it is also a frontend like GNOME.
(In reply to Mirco Bauer from comment #22) > Smuxi's libs are private and thus not signed. Unsigned assemblies can't be > installed into the GAC. The stfl package should be called > smuxi-frontend-stfl because it is also a frontend like GNOME. Okay. My package is ready. I'm waiting for a reply from Christopher, if he will not make contact in some days, i close this review and take this package according to the policies for stalled package reviews.
*** This bug has been marked as a duplicate of bug 1177926 ***