GNU bug report logs - #47104
[PATCH 1/2] gnu: Add grumble.

Previous Next

Package: guix-patches;

Reported by: "jgart" <jgart <at> dismail.de>

Date: Fri, 12 Mar 2021 16:26:02 UTC

Severity: normal

Tags: patch

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 47104 in the body.
You can then email your comments to 47104 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#47104; Package guix-patches. (Fri, 12 Mar 2021 16:26:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "jgart" <jgart <at> dismail.de>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 12 Mar 2021 16:26:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "jgart" <jgart <at> dismail.de>
To: guix-patches <at> gnu.org
Subject: [PATCH 1/2] gnu: Add grumble.
Date: Fri, 12 Mar 2021 16:25:07 +0000
[Message part 1 (text/plain, inline)]
Hi Guix!

Here is grumble, an alternative mumble server implemented in golang.

go-github-com-gorilla-websocket was the only dependency we needed to package for it.

Now, to create a grumble-service-type :)

This was packaged by myself, donotshake, and Raghav Gururajan while communicating on a grumble instance and pair programming over tmate. All the co-authors are listed in the commit message.

Thank you,

jgart

libremiami.org
mumble.libremiami.org
[0001-gnu-Add-go-github-com-gorilla-websocket.patch (application/octet-stream, attachment)]
[0002-gnu-Add-grumble.patch (application/octet-stream, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#47104; Package guix-patches. (Fri, 12 Mar 2021 20:38:02 GMT) Full text and rfc822 format available.

Message #8 received at 47104 <at> debbugs.gnu.org (full text, mbox):

From: Leo Prikler <leo.prikler <at> student.tugraz.at>
To: jgart <jgart <at> dismail.de>, 47104 <at> debbugs.gnu.org
Subject: Re: [bug#47104] [PATCH 1/2] gnu: Add grumble.
Date: Fri, 12 Mar 2021 21:37:50 +0100
Hi jgart,

Am Freitag, den 12.03.2021, 16:25 +0000 schrieb jgart:
> Now, to create a grumble-service-type :)
I know you mean this somewhat jokingly, but is there anything (apart
maybe from the name of the binary), that would keep you from reusing
murmur-service-type?

> @@ -4809,7 +4810,7 @@ test results.")
>  (define-public go-github-com-golang-protobuf-proto
>    (package
>      (name "go-github-com-golang-protobuf-proto")
> -    (version "1.3.1")
> +    (version "1.3.5")
>      (source (origin
>                (method git-fetch)
>                (uri (git-reference
> @@ -4818,7 +4819,7 @@ test results.")
>                (file-name (git-file-name name version))
>                (sha256
>                 (base32
> -                "15am4s4646qy6iv0g3kkqq52rzykqjhm4bf08dk0fy2r58knpsy
> l"))))
> +                "1gkd1942vk9n8kfzdwy1iil6wgvlwjq7a3y5jc49ck4lz9rhmgk
> q"))))
>      (build-system go-build-system)
>      (arguments
>       '(#:import-path "github.com/golang/protobuf/proto"
Please refrain from silently bumping other packages 😉

> +      (version (git-version "0.0.0" revision commit))
Three 0s is a bit much for a package, that has declared 1.0~devel since
its inception.  Are there even plans to release this ever?

Apart from the above, there are some other question, that I'd like to
ask before greenlighting this patch.
1. Is this package in its current state usable?
2. Is it still maintained upstream?  It is a little stretch to say
Grumble is undergoing active development after a year of no activity.
3. https://github.com/mumble-voip/grumble#project-status lists quite a
few features that are lacking, but does it maybe contain features, that
would make it worth packaging?

If the answer is "no" to any of the above, I'm not too sure whether it
would be wise to have this in Guix upstream.  If LibreMiami wanted to
host grumble instances on Guix regardless, perhaps a channel might be a
better fit?

> This was packaged by myself, donotshake, and Raghav Gururajan while
> communicating on a grumble instance[...].
I'm not sure whether our broadcasting regulations would require you to
label this patch as product placement, but thanks for the info, I
guess.

Regards,
Leo






Information forwarded to guix-patches <at> gnu.org:
bug#47104; Package guix-patches. (Sun, 18 Apr 2021 17:26:02 GMT) Full text and rfc822 format available.

Message #11 received at 47104 <at> debbugs.gnu.org (full text, mbox):

From: "jgart" <jgart <at> dismail.de>
To: 47104 <at> debbugs.gnu.org
Cc: raghavgururajan <at> disroot.org, Raghav Gururajan <rg <at> raghavgururajan.name>
Subject: grumble status update
Date: Sun, 18 Apr 2021 17:25:06 +0000
Hi Leo,

> I know you mean this somewhat jokingly, but is there anything (apart
> maybe from the name of the binary), that would keep you from reusing
> murmur-service-type?

See here: 

https://github.com/mumble-voip/grumble/issues/21
https://github.com/mumble-voip/grumble/pull/26

There are more sources related to the grumble config that's currently implemented that I can't locate at the moment. 

I remember reading that they didn't necessarily want to maintain feature parity with the grumble config format.

> 1. Is this package in its current state usable?

I would say yes. We packaged grumble while talking over grumble. It feels pretty solid. 

Grumble also has an active fork as a library and being used by wahay: https://wahay.org/

It is currently 16 commits ahead of upstream:

https://github.com/digitalautonomy/grumble

> 2. Is it still maintained upstream?  It is a little stretch to say
> Grumble is undergoing active development after a year of no activity. 

It sounds like the project maintainers of the upstream grumble project are very slow to review pull requests. It sounds like they are too busy with other projects/work.

See the complaint here by one of the contributors that chimed in when I opened an issue:

https://github.com/mumble-voip/grumble/issues/76

> 3. https://github.com/mumble-voip/grumble#project-statuslists quite a
> few features that are lacking, but does it maybe contain features, that
> would make it worth packaging?

See https://github.com/mumble-voip/grumble/issues/76

"... Grumble has the distinguishing feature of native support for Websockets (because I was a lot worse at C++ back then and so I contributed a patch here instead), and Murmur will probably not have that for the foreseeable future. You could of course just configure a proxy in front of Murmur if you need this. A lot of the plans for work we were making a few years ago pointed towards Grumble being more focused on ease-of-use and these small workloads I talked about above. It makes sense: the Murmur static binary has issues and so a Grumble static (just how Go works) binary that you can download and run, trivially configure and easily negotiate certs over LE (unfortunately never happened due to LE issues, but it would be viable now), accessible over the Web could fulfil a sort of "batteries-included" user-friendly niche."

> If the answer is "no" to any of the above, I'm not too sure whether it
> would be wise to have this in Guix upstream.  If LibreMiami wanted to
> host grumble instances on Guix regardless, perhaps a channel might be a
> better fit?

We can put this in a LibreMiami channel with a service for it if you insist it not be included in upstream guix. 

If upstream grumble picks up development then I can send a patch again for review.

That said, can you take the patch for go-github-com-gorilla-websocket?

We will need go-github-com-gorilla-websocket for many other packages that we're working on. One of them being the hugo static site generator that we're working on with Ryan Prior.

Relatedly, we're planning on packaging wahay (https://wahay.org/). 

wahay depends on the fork of grumble that I linked above. 

Should we package only the fork of grumble in that case and not upstream grumble?

all the best,

jgart




Information forwarded to guix-patches <at> gnu.org:
bug#47104; Package guix-patches. (Sun, 18 Apr 2021 18:33:01 GMT) Full text and rfc822 format available.

Message #14 received at 47104 <at> debbugs.gnu.org (full text, mbox):

From: Leo Prikler <leo.prikler <at> student.tugraz.at>
To: jgart <jgart <at> dismail.de>, 47104 <at> debbugs.gnu.org
Cc: raghavgururajan <at> disroot.org, Raghav Gururajan <rg <at> raghavgururajan.name>
Subject: Re: grumble status update
Date: Sun, 18 Apr 2021 20:31:55 +0200
Hi jgart,

Am Sonntag, den 18.04.2021, 17:25 +0000 schrieb jgart:
> Hi Leo,
> 
> > I know you mean this somewhat jokingly, but is there anything
> > (apart
> > maybe from the name of the binary), that would keep you from
> > reusing
> > murmur-service-type?
> 
> See here: 
> 
> https://github.com/mumble-voip/grumble/issues/21
> https://github.com/mumble-voip/grumble/pull/26
> 
> There are more sources related to the grumble config that's currently
> implemented that I can't locate at the moment. 
> 
> I remember reading that they didn't necessarily want to maintain
> feature parity with the grumble config format.
That's… disappointing.

> > 1. Is this package in its current state usable?
> 
> I would say yes. We packaged grumble while talking over grumble. It
> feels pretty solid. 
> 
> Grumble also has an active fork as a library and being used by wahay:
> https://wahay.org/
> 
> It is currently 16 commits ahead of upstream:
> 
> https://github.com/digitalautonomy/grumble
This doesn't really look active to me either.  It appears as though
they diverged at some point and simultaneously came to a halt.  Now
wahay is still active, but that's a different beast.

> > 2. Is it still maintained upstream?  It is a little stretch to say
> > Grumble is undergoing active development after a year of no
> > activity. 
> 
> It sounds like the project maintainers of the upstream grumble
> project are very slow to review pull requests. It sounds like they
> are too busy with other projects/work.
> 
> See the complaint here by one of the contributors that chimed in when
> I opened an issue:
> 
> https://github.com/mumble-voip/grumble/issues/76
I take that as a "Maybe, but actually no".

> > 3. https://github.com/mumble-voip/grumble#project-statuslists quite
> > a
> > few features that are lacking, but does it maybe contain features,
> > that
> > would make it worth packaging?
> 
> See https://github.com/mumble-voip/grumble/issues/76
> 
> "... Grumble has the distinguishing feature of native support for
> Websockets (because I was a lot worse at C++ back then and so I
> contributed a patch here instead), and Murmur will probably not have
> that for the foreseeable future. You could of course just configure a
> proxy in front of Murmur if you need this. A lot of the plans for
> work we were making a few years ago pointed towards Grumble being
> more focused on ease-of-use and these small workloads I talked about
> above. It makes sense: the Murmur static binary has issues and so a
> Grumble static (just how Go works) binary that you can download and
> run, trivially configure and easily negotiate certs over LE
> (unfortunately never happened due to LE issues, but it would be
> viable now), accessible over the Web could fulfil a sort of
> "batteries-included" user-friendly niche."
W.r.t. ease-of-use I don't think it should be too difficult to get
murmur + certbot working in Guix.  All I can recall from the Debian
(yeah, I know) server, that I currently run murmur on, is that you need
to get your hook for restarting murmur right.

> > If the answer is "no" to any of the above, I'm not too sure whether
> > it
> > would be wise to have this in Guix upstream.  If LibreMiami wanted
> > to
> > host grumble instances on Guix regardless, perhaps a channel might
> > be a
> > better fit?
> 
> We can put this in a LibreMiami channel with a service for it if you
> insist it not be included in upstream guix. 
It is not so much me insisting rather than me thinking, that channels
fit such "niche" uses better.  As far as I can tell, Guix tries to make
system services as secure as possible and having a service with glaring
security flaws is not really a good fit in that scenario.  See also the
recent removal of mongodb.

> If upstream grumble picks up development then I can send a patch
> again for review.
Please do so.

> That said, can you take the patch for go-github-com-gorilla-
> websocket?
> 
> We will need go-github-com-gorilla-websocket for many other packages
> that we're working on. One of them being the hugo static site
> generator that we're working on with Ryan Prior.
While the package description itself LGTM, the patch inadvertently
version bumps some Go protobuf package.  If it's okay with you and
Ryan, I think the better solution would be to send a clean patch along
with hugo or perhaps separately.

> Relatedly, we're planning on packaging wahay (https://wahay.org/). 
> 
> wahay depends on the fork of grumble that I linked above. 
> 
> Should we package only the fork of grumble in that case and not
> upstream grumble?
Again, since wahay has no public release and LibreMiami might want to
tail upstream, I think that this would be a better fit outside of Guix.
As for the differences in their versions of grumble, I honestly don't
know what to do.  Guix usually tries not to vendor packages and this
might mean using upstream grumble for wahay, but the grumble fork might
also implement features, that are necessary for wahay.

This is just my personal opinion, but right now Guix seems to have
about 70 "no release" comments, some of which are actually "no release
since".  I don't think there's a reason to bump this number unless the
developer has a good reason not to assign version numbers (other than
"it's not ready yet", which is a perfect reason not to assign version
numbers, but also a perfect reason to refrain from packaging it), which
does not seem to hold here.

Regards,
Leo





Information forwarded to guix-patches <at> gnu.org:
bug#47104; Package guix-patches. (Sun, 18 Apr 2021 19:17:01 GMT) Full text and rfc822 format available.

Message #17 received at 47104 <at> debbugs.gnu.org (full text, mbox):

From: "jgart" <jgart <at> dismail.de>
To: "Leo Prikler" <leo.prikler <at> student.tugraz.at>, 47104 <at> debbugs.gnu.org
Cc: raghavgururajan <at> disroot.org, rprior <at> protonmail.com,
 Raghav Gururajan <rg <at> raghavgururajan.name>
Subject: Re: grumble status update
Date: Sun, 18 Apr 2021 19:16:35 +0000
> It is not so much me insisting rather than me thinking, that channels
> fit such "niche" uses better. As far as I can tell, Guix tries to make
> system services as secure as possible and having a service with glaring
> security flaws is not really a good fit in that scenario. See also the
> recent removal of mongodb.

I also agree that this will be a good use case for a guix channel. Thanks for the advice on that.

We'll move grumble and wahay (tbd) to our channel for community testing and experimentation. 

> While the package description itself LGTM, the patch inadvertently
> version bumps some Go protobuf package. If it's okay with you and
> Ryan, I think the better solution would be to send a clean patch along
> with hugo or perhaps separately.

I'll resend a patch for go-github-com-gorilla-websocket soon. 

Hugo might be a while. It's a beast of a package:

https://github.com/ryanprior/guix-packages/blob/master/testing/hugo.scm
https://github.com/ryanprior/guix-packages/blob/master/testing/new-hugo-deps.org

It definitely doesn't resemble the one in nixpkgs :)

https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/applications/misc/hugo/default.nix#L36

Thank you for taking the time to review our patches.

all the best,

jgart

April 18, 2021 2:32 PM, "Leo Prikler" <leo.prikler <at> student.tugraz.at> wrote:

> Hi jgart,
> 
> Am Sonntag, den 18.04.2021, 17:25 +0000 schrieb jgart:
> 
>> Hi Leo,
>> 
>> I know you mean this somewhat jokingly, but is there anything
>> (apart
>> maybe from the name of the binary), that would keep you from
>> reusing
>> murmur-service-type?
>> 
>> See here:
>> 
>> https://github.com/mumble-voip/grumble/issues/21
>> https://github.com/mumble-voip/grumble/pull/26
>> 
>> There are more sources related to the grumble config that's currently
>> implemented that I can't locate at the moment.
>> 
>> I remember reading that they didn't necessarily want to maintain
>> feature parity with the grumble config format.
> 
> That's… disappointing.
> 
>> 1. Is this package in its current state usable?
>> 
>> I would say yes. We packaged grumble while talking over grumble. It
>> feels pretty solid.
>> 
>> Grumble also has an active fork as a library and being used by wahay:
>> https://wahay.org
>> 
>> It is currently 16 commits ahead of upstream:
>> 
>> https://github.com/digitalautonomy/grumble
> 
> This doesn't really look active to me either. It appears as though
> they diverged at some point and simultaneously came to a halt. Now
> wahay is still active, but that's a different beast.
> 
>> 2. Is it still maintained upstream? It is a little stretch to say
>> Grumble is undergoing active development after a year of no
>> activity.
>> 
>> It sounds like the project maintainers of the upstream grumble
>> project are very slow to review pull requests. It sounds like they
>> are too busy with other projects/work.
>> 
>> See the complaint here by one of the contributors that chimed in when
>> I opened an issue:
>> 
>> https://github.com/mumble-voip/grumble/issues/76
> 
> I take that as a "Maybe, but actually no".
> 
>> 3. https://github.com/mumble-voip/grumble#project-statuslists quite
>> a
>> few features that are lacking, but does it maybe contain features,
>> that
>> would make it worth packaging?
>> 
>> See https://github.com/mumble-voip/grumble/issues/76
>> 
>> "... Grumble has the distinguishing feature of native support for
>> Websockets (because I was a lot worse at C++ back then and so I
>> contributed a patch here instead), and Murmur will probably not have
>> that for the foreseeable future. You could of course just configure a
>> proxy in front of Murmur if you need this. A lot of the plans for
>> work we were making a few years ago pointed towards Grumble being
>> more focused on ease-of-use and these small workloads I talked about
>> above. It makes sense: the Murmur static binary has issues and so a
>> Grumble static (just how Go works) binary that you can download and
>> run, trivially configure and easily negotiate certs over LE
>> (unfortunately never happened due to LE issues, but it would be
>> viable now), accessible over the Web could fulfil a sort of
>> "batteries-included" user-friendly niche."
> 
> W.r.t. ease-of-use I don't think it should be too difficult to get
> murmur + certbot working in Guix. All I can recall from the Debian
> (yeah, I know) server, that I currently run murmur on, is that you need
> to get your hook for restarting murmur right.
> 
>> If the answer is "no" to any of the above, I'm not too sure whether
>> it
>> would be wise to have this in Guix upstream. If LibreMiami wanted
>> to
>> host grumble instances on Guix regardless, perhaps a channel might
>> be a
>> better fit?
>> 
>> We can put this in a LibreMiami channel with a service for it if you
>> insist it not be included in upstream guix.
> 
> It is not so much me insisting rather than me thinking, that channels
> fit such "niche" uses better. As far as I can tell, Guix tries to make
> system services as secure as possible and having a service with glaring
> security flaws is not really a good fit in that scenario. See also the
> recent removal of mongodb.
> 
>> If upstream grumble picks up development then I can send a patch
>> again for review.
> 
> Please do so.
> 
>> That said, can you take the patch for go-github-com-gorilla-
>> websocket?
>> 
>> We will need go-github-com-gorilla-websocket for many other packages
>> that we're working on. One of them being the hugo static site
>> generator that we're working on with Ryan Prior.
> 
> While the package description itself LGTM, the patch inadvertently
> version bumps some Go protobuf package. If it's okay with you and
> Ryan, I think the better solution would be to send a clean patch along
> with hugo or perhaps separately.
> 
>> Relatedly, we're planning on packaging wahay (https://wahay.org).
>> 
>> wahay depends on the fork of grumble that I linked above.
>> 
>> Should we package only the fork of grumble in that case and not
>> upstream grumble?
> 
> Again, since wahay has no public release and LibreMiami might want to
> tail upstream, I think that this would be a better fit outside of Guix.
> As for the differences in their versions of grumble, I honestly don't
> know what to do. Guix usually tries not to vendor packages and this
> might mean using upstream grumble for wahay, but the grumble fork might
> also implement features, that are necessary for wahay.
> 
> This is just my personal opinion, but right now Guix seems to have
> about 70 "no release" comments, some of which are actually "no release
> since". I don't think there's a reason to bump this number unless the
> developer has a good reason not to assign version numbers (other than
> "it's not ready yet", which is a perfect reason not to assign version
> numbers, but also a perfect reason to refrain from packaging it), which
> does not seem to hold here.
> 
> Regards,
> Leo




Reply sent to Maxim Cournoyer <maxim.cournoyer <at> gmail.com>:
You have taken responsibility. (Wed, 22 Jun 2022 18:52:01 GMT) Full text and rfc822 format available.

Notification sent to "jgart" <jgart <at> dismail.de>:
bug acknowledged by developer. (Wed, 22 Jun 2022 18:52:01 GMT) Full text and rfc822 format available.

Message #22 received at 47104-done <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: "jgart" <jgart <at> dismail.de>
Cc: raghavgururajan <at> disroot.org, Leo Prikler <leo.prikler <at> student.tugraz.at>,
 47104-done <at> debbugs.gnu.org, rprior <at> protonmail.com,
 Raghav Gururajan <rg <at> raghavgururajan.name>
Subject: Re: bug#47104: [PATCH 1/2] gnu: Add grumble.
Date: Wed, 22 Jun 2022 14:51:39 -0400
Hello,

"jgart" <jgart <at> dismail.de> writes:

>> It is not so much me insisting rather than me thinking, that channels
>> fit such "niche" uses better. As far as I can tell, Guix tries to make
>> system services as secure as possible and having a service with glaring
>> security flaws is not really a good fit in that scenario. See also the
>> recent removal of mongodb.
>
> I also agree that this will be a good use case for a guix channel. Thanks for the advice on that.
>
> We'll move grumble and wahay (tbd) to our channel for community testing and experimentation. 

OK.

Closing this tracker then.

Thanks,

Maxim




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 21 Jul 2022 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 251 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.