Bug 294001

Summary: Review Request: mumble - low-latency, high quality voice chat software
Product: [Fedora] Fedora Reporter: Martin Jürgens <ma>
Component: Package ReviewAssignee: Michel Lind <michel>
Status: CLOSED DEFERRED QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: fedora-package-review, marc, notting, slicer
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-01-22 16:04:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 201449    
Attachments:
Description Flags
updated .spec
none
updated 2nd .spec none

Description Martin Jürgens 2007-09-17 21:05:35 UTC
Spec URL: http://gamesplace.info/mumble.spec
SRPM URL: http://gamesplace.info/mumble-1.0.0-37.2.src.rpm
Description: Mumble is a low-latency, high quality voice chat software primarily intended for use while gaming.

Comment 1 Michel Lind 2007-09-22 18:23:54 UTC
* The following BRs are superfluous:

boost (pulled in by boost-devel)
qt4 (pulled in by qt4-devel)
gcc-c++ (in standard build environment)
libstdc++ (pulled in by gcc-c++)
libstdc++-devel (pulled in by gcc-c++)
autoconf (pulled in by automake and libtool)
automake (pulled in by libtool)


* Separate licenses with 'and' (instead of comma), and add versioning info (so
"BSD and GPLv2" -- see http://fedoraproject.org/wiki/Packaging/LicensingGuidelines)

It seems that the GPL bit is only because the package links against Qt.
According to the Trolltech GPL exception, the terms of the GPL does not apply to
linked software that are BSD-licensed:

http://trolltech.com/products/qt/gplexception

so in this case license can probably be set to only BSD. If you think otherwise,
please put a comment above the License field, as specified in the licensing
guidelines.


Comment 2 Martin Jürgens 2007-10-16 18:51:12 UTC
> gcc-c++ (in standard build environment)

The build environment which I use does not ship with it by default. Except
updated .spec soon ;)

Comment 3 Martin Jürgens 2007-11-06 13:17:26 UTC
Created attachment 249031 [details]
updated .spec

this is the updated .spec file. Please have especially a look at the part which
adds the server service. I was not sure how to disable it at installation time.

Comment 4 Michel Lind 2007-11-15 02:21:26 UTC
* service startup: You might want to edit murmur.init:

# chkconfig: 35 90 12

the 35 in that line specifies that it will be started at runlevel 3 and 5, and
'man chkconfig' says to put a - in place of the runlevels if you don't want it
started.


* Groups:
The Group needs to be changed -- see /usr/share/doc/rpm-4.4.2.2/GROUPS. Looking
at pulseaudio's use of groups might be instructive as it does roughly the same
thing, so:

mumble  : Applications/Multimedia
-server : System Environment/Daemons
-devel  : Development/Libraries

(any chance the original spec was written for Mandriva?)

Also, this is probably more convention than requirement, but we don't normally
use macros for things like %__install , %__ln_s and %__mkdir.


* %install section needs 'rm -rf %{buildroot}' as well

* use spaces or tabs for indentation, but do not mix both (probably use less
whitespace as well; some lines are longer than 80 characters)



Comment 5 Martin Jürgens 2007-11-15 16:49:13 UTC
Created attachment 260011 [details]
updated 2nd .spec

This is the next .spec fixing the issues that you mentioned ( I hope ). 

Next coming is PulseAudio support via padsp, but I currently have to do some
testing.

Comment 6 Martin Jürgens 2007-11-15 17:09:32 UTC
> (any chance the original spec was written for Mandriva?)

No, I took it from Packman (repository for OpenSuSE)

Comment 7 Michel Lind 2007-11-15 17:49:46 UTC
- the buildroot clean-up in %install should happen _before_ all the other steps,
not after (otherwise you'll never get anything installed)

- for desktop-file-install, not sure you can add X-Red-Hat-Base . It's not a
core package

- You mispelled %{_includedir} and %{_libdir} in %files devel

- Last thing: the fields at the top of the file (name, version, etc.) are still
tabbed a bit too much. Could you perhaps reduce the tabulation a bit?

Looks almost ready. Is there any way to test mumble with only one machine?


Comment 8 Martin Jürgens 2007-11-15 18:09:59 UTC
I have changed the things you noted there. When everything works well, you will
find updated .RPMS here: http://koji.fedoraproject.org/koji/taskinfo?taskID=243381

In Mumble, there is a public server list. Just join some and see if there are
people to speak to.

Before inclusion, I'd like to do the following things:

- Render mumble-devel and mumble-debuginfo installable, currently I do not know
what is wrong. Maybe you can help me
- Change default option selection to OSS (does not work with PulseAudio's ALSA
emulation)
- Add startscript which checks for the existance of padsp and uses it against of
direct OSS access

Comment 9 Thorvald Natvig 2007-11-15 21:11:46 UTC
The -devel package is wrong. The Linux version of Mumble does not support 
plugins, and the library you've put in there is the OpenGL overlay library, 
which is a part of Mumble and cannot be used by any other application. It 
should be moved to the base package, and the -devel package should be removed. 
The base package should include the mumble-overlay script which uses the 
OpenGL overlay.

In current SVN, there are manpages for mumble, murmurd and mumble-overlay. 
There are also proper icons of different size for the hicolor theme.

There's also a murmur.ini.system which is suitable for a systemwide 
installation, which places the database in /var/lib/murmur, logfile in /var/
log/murmur, pidfile in /var/run/murmur etc. There's also a fairly complete 
init script which handles proper systemwide initialization, but it's made for 
Ubuntu (sorry). If it can't be used as is, I'd strongly recommend using it as 
a base, especially the part which runs murmur under a dedicated user instead 
of root. You should also add the murmur.conf to /etc/dbus-1/system.d/

You need to register the mumble:// protocol so it's handled by mumble.


Comment 10 Martin Jürgens 2007-11-15 21:53:36 UTC
Hi, nice to meet you here ;)

> The -devel package is wrong. The Linux version of Mumble does not support 
> plugins, and the library you've put in there is the OpenGL overlay library, 
> which is a part of Mumble and cannot be used by any other application. It 
> should be moved to the base package, and the -devel package should be removed. 

Done. Main package now contains 
%{_includedir}/mumble_plugin.h
%{_libdir}/libmumble.*

> In current SVN there are lots of new things

Do you have a date when SVN will get the new Mumble version? I would not like to
get lots of things out of SVN and put them as Sources / Patches to the package.

> You need to register the mumble:// protocol so it's handled by mumble.

Will do that when I have the time.

Comment 11 Martin Jürgens 2007-11-15 21:57:40 UTC
slicer, do you have a mimetypes XML file that follows the freedesktop.org Shared
MIME-info Database specification ready to go or do I have to create one?

Comment 12 Martin Jürgens 2007-11-15 21:59:01 UTC
Nevermind.. Somewhat confused

Comment 13 Thorvald Natvig 2007-11-15 22:04:05 UTC
the shared whatnow? I thought that was only for registering mime types, not for 
registering protocols? I have a mumble.protocol for KDE integration, and 
there's a gconf.defaults which the debhelper scripts does some magic to as part 
of the debuild process. If there is an easier and more portable way, please let 
me know.
(Where, oh where, is the Unified Linux Binary Archive?)


Comment 14 Thorvald Natvig 2007-11-15 22:05:40 UTC
mumble_plugin.h is Win32 specific for now, so don't include it in the package.

The current SVN will become 1.1.1 a few days after I'm back from SC07. In the 
meantime, I recommend you just package SVN as a dummy tarball (perl scripts/
release.pl will do it) and work against that, as many of the changes in the 
1.1.1 branch are packaging fixes, adding things to make murmurd be systemwide 
installable in an easy way and also add all the missing icons, gconf files, 
init scripts etc.


Comment 15 Martin Jürgens 2007-11-16 19:06:16 UTC
Where can I find the gconf.defaults? Also, I am curious  where I can find the
source of the Debian package. It may be useful, also.

Comment 16 Thorvald Natvig 2007-11-16 19:56:23 UTC
They are both in the SVN tree.

Comment 17 Thorvald Natvig 2007-12-03 10:10:41 UTC
1.1.1 is now officially released, and should have everything needed to create 
a good system-wide installation.

Comment 18 Martin Jürgens 2007-12-03 11:18:14 UTC
great news ;) but why has the mumble.gconf-defaults in the scripts directory
disappeard?

Comment 19 Thorvald Natvig 2007-12-03 15:10:59 UTC
That file is actually usefull for multiple distros? If so, copy it out of the 
debian/ dir for now and I'll move it back in the next release.

Comment 20 Martin Jürgens 2007-12-03 15:35:39 UTC
Seems so to me.. At least some packages (including Pidgin and Totem) make gconf
entries using it.

Comment 21 Michel Lind 2008-01-13 18:18:21 UTC
Martin, any chance of having some updated packages soon? Thanks.

Comment 22 Martin Jürgens 2008-01-13 18:41:14 UTC
I received the following mail:

::::

Is there any chance you would like some assistance in building this 
setup?  I currently am working on a spec file that fully installs the 
mumble server and client on fedora 8.  This is a pulse audio setup with 
a working festival txt-to-speech implementation.   Slicer mentioned that 
it would be a good idea if I work with you guys if you can use the help.  

I posted my builds in the forums for now just to get people going using 
it, but my end destination is to put out a virtual server build, qemu 
and vmware.  

I am a 15 year Unix Server Architect, with lots of experience 
scripting/admin/building things.   I'd really like to get some input 
building murmur for redhat/fedora.


Thanks

David McKeon

:::

As I am very busy currently, I told him that a review request is here and that
it would be great if he could carry on with packaging mumble (may be that you
have received that mail, also). I sadly do not know what the status on his side
is, but I will compose a mail.

Comment 23 Marc Wiriadisastra 2008-01-22 04:13:30 UTC
Whats the situation with this package I'm interested in this package as well. 
Did you need/want some help with this?

Comment 24 Michel Lind 2008-01-22 15:14:20 UTC
Martin was looking at handing it over to David -- Martin, what's going on there?
Probably least confusing if we close this ticket and then David or Marc can open
their own.

Comment 25 Martin Jürgens 2008-01-22 16:04:52 UTC
Michel, I did not get any reply from David again. Closing because of that.

Comment 26 Marc Wiriadisastra 2008-01-23 00:53:46 UTC
I'm currently packaging 1.1.2 I will start a new bug when it is ready and I'll
link to this bug so that anyone that is viewing it knows where to go.

Comment 27 Marc Wiriadisastra 2008-01-23 06:51:42 UTC
I have opened another request here
https://bugzilla.redhat.com/show_bug.cgi?id=429809