New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Inclusion in Debian ? #3
Comments
Ping ? |
Already done:
What needs to happen next:
Alternatively: there was some discussions to include this module straight in pipewire, cf. neutrinolabs/xrdp#2023 (comment). Pipewire upstream was willing to accept the module, however the author @Hiero32 never followed up, as far as I know. Is there still a plan to include this module upstream, is anyone aware of anything? |
They're all good points @elboulangero. Arguments for upstreaming
Arguments against upstreaming
Personally I'm leaning towards not upstreaming, but that's just my view. @metalefty, @jsorg71, @Nexarian, @Hiero32 - do you have views on this? Please add to either section in the list above. @elboulangero - regardless of the outcome of the above discussion, would you like a release of the current module? If so, I'll look at addressing some of cosmetic issues. We have at least one spelling mistake ( |
Hi, I'm not part of the project so this is only my humble opinion, but I would find it more logical if it was included in XRDP distribution, rather than PipeWire. This way, maintainers of XRDP packages in distributions would only need to add PipeWire headers as build depends, and the module could be built automatically. Then, it can be shipped in a separate binary package depending on PipeWire, as not to make the whole XRDP package depend on PipeWire. On the other hand, maintenance from the PipeWire team would of course be greatly useful, but as said above, it would be difficult for them to test it, as it would need a ready to use XRDP server, which is completely out of scope for their project. |
@matt335672 Thank you for summarizing the pros and cons of upstreaming vs separate module.
Yep, if that's Ok with you, I'd be happy with that. Then I can kickstart an attempt to get this into Debian proper, as I have a bit of bandwidth these days. @MoonSweep Apparently, in terms of build depends, there are not dependency on xrdp, so it's not shocking it it becomes part of pipewire. It will not make pipewire depend on xrdp at build time. And I suppose that, even if it's part of pipewire, it will still be under the form of a module, so it can be shipped as a separate package if needed. Cheers |
Well, this version works and people are using it. I see no reason to mess about with getting the spacing consistent at this stage, or to fix spellings. We can do that for the next release, or for getting the module into pipewire itself. @metalefty - would you like to make a release so this is signed with your key? I'm happy to make one, but using the same signing key as xrdp seems to make more sense to me. |
I would rather like to keep maintaining by us because it is easier to build out-of-tree modules compared to PulseAudio as you mentioned, however, I personally happy to push this to upstream if PipeWire team is willing to maintain. I will make a release soon with sign. |
I made a release. The tarball is not added to the release because it does not include submodules, unlike xrdp main source. pulseaudio-module-xrdp also does not have a tarball other than generated by GitHub. Let me know if it is needed. https://github.com/neutrinolabs/pipewire-module-xrdp/releases/tag/v0.1 |
That looks fine to me - thanks. @elboulangero - is that enough for you to be getting on with? |
All I need is a tag, and I see a tag |
|
Hi, sorry to insist, but... In #1037111, your update states that "this module will not be included in pipewire upstream, and it will be maintained by neutrinolabs (which is the upstream for xrdp already)". In that case, wouldn't it be much simpler to include the module in the Are the maintainers of Regards, -- |
Hi @MoonSweep I think 'simpler' may depend on your perspective. From ours, two separate projects are simpler, particularly as this module is effectively an interface between pipewire audio and xrdp. We only control one side of that arrangement. I note that in the past, Debian have packaged two tarballs from us in the same Debian package - that might be an option here if you want to make things easier for the users:- https://snapshot.debian.org/package/xrdp/0.9.1-1/ Thoughts? |
Hi @matt335672
I don't quite understand why it's simpler, but I won't insist on that point. It's just that, even if it doesn't need
Not simpler for the users, but for the maintainers (both are maintained by a team, Debian Remote) . Those two tarballs are the Adding a new tarball wouldn't be easier for them, on the contrary, since they would need - I guess - to add new steps in But if this work is already done upstream, and You could even do that for them if you think that it wouldn't be fair to add work for them without asking (I admit I didn't think about this until now), or even join the team if you like (since you're already a maintainer IIUC), it would still be much less work for you than creating a new package, having it included in Debian, and maintaining it on the long term. Sorry if I'm not clear, English is not my native language ^^' |
I think you're plenty clear enough @MoonSweep - it's probably me that's not being clear. My apologies. The For xrdp-0.9.1, Debian decided to package the two tarballs from us as a single Debian package. The reason was, that, for this version Debian decided to make the For 0.9.6-1, Debian decided to make these two packages separate (Changelogs here and here). That's a decision that Debian Remote took without consulting us. We're absolutely fine with that. You would expect Debian Remote to not only grasp the finer details around Debian packaging, but to understand the needs of their user community better than upstream (i.e. xrdp, and other projects). Other projects provide a single tarball which is split into several Debian packages. This doesn't apply to xrdp, but does (for example) to pulseaudio. In other words, there's no real tie between the number of tarballs we deliver, and how the various distributions (not only Debian) present that software to their users. That's a decision for them, and not for us. I don't think our decision regarding our own project deliverables makes it any easier or harder for the distro packagers. They're competent engineers, and providing we stick to standard packaging and configuration tools they can cope easily with anything we throw over the wall to them. Other distros have made use of xrdp and xorgxrdp being separate deliverables. Arch currently has two packages, Given the above background, at the moment it seemed sensible to me to deliver the pipewire audio driver in the same way that xorgxrdp is delivered. The two are both 'interface packages'. They are similar in that:-
|
I understand your point. I won't make any more comments on this. |
Hello, I opened 3 MR so far. !7 and #10 are mostly about tidying up. !8 is really needed for inclusion in Debian though, thanks to this change we can safely install the module on a system where pipewire is not installed, and in this case it won't do anything (the xdg autostart script will just exit early). @metalefty If it's all good for you, I'd be happy if you could merge those 3 PRs, tag a new version, and then I'll be good to proceed with Debian packaging, and upload the package in Debian. Thanks thanks thanks! |
Fully agree with @metalefty here! Upstream knows best how to handle their stuff, and whether it's better to split in different Git reps, or ship it all in a single Git repo. Downstreams (eg. Linux distros in this case) will adjust accordingly, and will then know best how it should be distributed (eg. one package, or split into several packages) so that it fits in the distro as a whole. In this case I'm pretty happy that it's a separate Git repo. It's all about pipewire, therefore it will be maintained within the Debian team that already maintains the pipewire and wireplumber packages. If ever there are changes in the pipewire lib that requires a rebuild and/or adjustments in the module, they will be able to help with it, without having to deal with the whole xrdp repo. I think it's just perfect as it is :) |
Hi @elboulangero, I also do package maintenance in FreeBSD project so I think understand the manners of both sides. It is very grateful to submit useful changes from downstream to upstream. Unfortunately, PipeWire is not yet my area, so I won't be able to review your changes from corner to corner. However, your changes look nothing weird, we're happy to accept them. Your contribution is definitely helpful, thanks! |
Merged all PRs and created a new tag. |
Actually I quoted a part from @matt335672 in my comment above, sorry for the confusion. @metalefty Thanks for merging! I updated the Debian packaging, and now waiting for one last round of feedback from Dylan, before uploading the package to Debian. Almost there! |
Fine by me @elboulangero! Thanks for the effort you're putting into this. Having a pre-built module to do this work will help enormously with user issues. |
The package It means that it's uploaded, and waiting from review from the FTP masters, before it's accepted in Debian unstable. This step can take an unpredictable amount of time. I'll ping again here when the package is accepted. |
Great news ! Thanks for all your efforts :) |
And now in Debian unstable: https://tracker.debian.org/pkg/pipewire-module-xrdp We can close this issue, Thanks everyone for following up until the end! |
I think the thanks are mostly due to you @elboulangero ! I'll close this now then. |
Hi,
I used to use the old
pulseaudio-module-xrdp
and it was cumbersome to compile, needing to run various scripts to extract the required headers and run some scripts, etc.Now this new
pipewire-module-xrdp
has a much more streamlined compilation process, needing only some build dependencies and no extra steps from the common Debian package building tools (./bootstrap
is not even required, asdpkg-buildpackage
runsautoreconf
by itself before the usual./configure
,make
andmake install
). Moreover, more and more desktops move away frompulseaudio
topipewire
.So, my question is, do you plan to include this module into Debian ? Or even better, include it in the main
xrdp
source code ? This would be even better, since package maintainers could then createxrdp
packages with audio redirection working out-of-the-box.If you plan to ship it separated from
xrdp
main source code, I can provide thedebian/
directory I wrote (all you'll have to do is change my e-mail address and maybe check and fix thecopyright
file).Regards,
--
Raphaël
The text was updated successfully, but these errors were encountered: