FS#17341 - [cups] downstream dbus dependency

Attached to Project: Arch Linux
Opened by Arvid Picciani (aep) - Tuesday, 01 December 2009, 23:29 GMT
Last edited by Jan de Groot (JGC) - Wednesday, 02 December 2009, 09:46 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Cups is an essential system service. Some downstream options are in violating of the arch way.
Dbus and avahi are entirely optional.
Users wishing to have optional dbus support, may add this downstream in their local packages.

attached is a patch to resolve this issue.
This task depends upon

Closed by  Jan de Groot (JGC)
Wednesday, 02 December 2009, 09:46 GMT
Reason for closing:  Not a bug
Comment by Gavin Bisesi (Daenyth) - Tuesday, 01 December 2009, 23:32 GMT
Just to clarify here, would this package then need a recompile for people who do want to use dbus and avahi? Or would it work if compiled with your patch and just have the packages installed?
Comment by Aaron Griffin (phrakture) - Tuesday, 01 December 2009, 23:35 GMT
I can agree with this one. I've tried to setup cups on a crappy headless machine before and had it pull in all sorts of crazy deps. It also looks like dbus support in cups is gnome specific, as I can't seem to find any packages we have that are kde related which need cups and dbus.

Perhaps we can provide cups-dbus and cups packages split from the same PKGBUILD?
Comment by Damjan Georgievski (damjan) - Tuesday, 01 December 2009, 23:53 GMT
I guess dbus in cups is needed for supporting Avahi (the zeroconf implementation). And Avahi allows you to find other Zeroconf printers in the network automatically.

all HP net printers I've seen support Avahi/Zeroconf/Bonjour - and that's not suprising since they want to support Apple Mac OS X.
also Avahi helps in finding other Cups servers on the network too.
Comment by Ionut Biru (wonder) - Wednesday, 02 December 2009, 00:37 GMT
avahi support is neat thing. you don't have to configure any samba to share the printer in network. it will work automagically without any configuration.
Applying that patch will disable support for that and users that want support need to recompile.
Comment by Allan McRae (Allan) - Wednesday, 02 December 2009, 01:08 GMT
So, is this because avahi/dbus pulls libx11 and deps? The Xorg stuff is still required by poppler so will still be deps... So this just removes avahi and dbus support saving your system 4Mb.
Comment by Damjan Georgievski (damjan) - Wednesday, 02 December 2009, 01:27 GMT
avahi and dbus-glib don't even depend on any X stuff.. cups depends on:

dbus-glib ->
dbus-core -> expat coreutils filesystem
glib2 -> pcre
avahi -> dbus libcap libdaemon gdbm glib2 expat
Comment by Allan McRae (Allan) - Wednesday, 02 December 2009, 01:32 GMT
pactree from pacman-contrib is your friend

avahi -> dbus -> libx11 -> ...

Comment by Damjan Georgievski (damjan) - Wednesday, 02 December 2009, 01:37 GMT
and that seem like a mistake to me,
cups probably only needs dbus-core, not dbus (which only provides /usr/bin/dbus-launch)
Comment by Allan McRae (Allan) - Wednesday, 02 December 2009, 01:45 GMT
Avahi needs dbus.

Anyway, my point was, removing the dbus/avahi support only removes those deps. All other deps brought in by these packages will still be required.

So the only benefit I see to removing support for avahi/dbus is the removal of 4Mb of packages from the dependency chain. Am I missing something?
Comment by Arvid Picciani (aep) - Wednesday, 02 December 2009, 07:43 GMT
Cups is designed to work on apple, which has neither dbus nor avahi. It shouldn't be hard for you to find the mdns configure option if you wish to have auto detection.
Comment by Jan de Groot (JGC) - Wednesday, 02 December 2009, 08:01 GMT
Apple has Bonjour, which serves the same purpose as Avahi.
Comment by Arvid Picciani (aep) - Wednesday, 02 December 2009, 09:00 GMT
Bonjour is merely a frontend to mdns, which is cross platform and does not require dbus.
However, this package does only a zeroconf implementation for specific non default convenience options anyway.
If users prefer convenience over reading the cups manual, i suggst a different more handholding oriented distro.
Comment by Jan de Groot (JGC) - Wednesday, 02 December 2009, 09:16 GMT
avahi is the general accepted dns-sd implementation used on linux and other unix-like systems. As for downstream dependencies, I checked the configure scripts, support for dbus and avahi is added as soon as you build cups on a system where it is installed. There is no such thing as a downstream added dbus dependency.
Comment by Arvid Picciani (aep) - Wednesday, 02 December 2009, 09:25 GMT
Hm you are right, the configure script will add dbus when it is available, and since you succesfully sneaked dbus into core, you can therefor close this circular argument to your favor.
Never the less, i am convinced this is an upstream problem, hence my arguments are not valid.
Please close the bug. sorry for the trouble.
Comment by Allan McRae (Allan) - Wednesday, 02 December 2009, 09:35 GMT
@Jan: you sneaked dbus support into [core]? How did you manage that? I'm sure we would have noticed all those emails discussing the decision but it appears not...

Loading...