Re: Building GTK programs without installing systemd-sysv?

2019-08-17 Thread Adam Borowski
On Sat, Aug 17, 2019 at 01:53:32PM +0100, Ian Jackson wrote:
> Adam Borowski writes ("Re: Building GTK programs without installing 
> systemd-sysv?"):
> > On Wed, Aug 14, 2019 at 01:47:47PM +0200, Philipp Kern wrote:
> > > You want dbus-x11 instead of dbus-user-session then, I think.
> > 
> > For this and related issues, I wonder if it would be better to replace the
> > virtual package pair of {default-,}dbus-session-bus with a real dummy
> > package that has:
> > Depends: dbus-x11 | systemd-sysv, dbus-user-session | dbus-x11
> > 
> > This would pull in dbus-user-session for systemd users, dbus-x11 for any
> > other init.
> > 
> > (The idea might be bogus -- I haven't slept since Monday morning; anyone up
> > for beersigning near Frankfurt airport until late evening?)

> Obviously it's slightly a bodge but these kind of issues involving
> dbus-user-session seem common enough that it would probably be worth
> doing this as a workaround, if it would be effective.  (Which it seems
> like it probably would be.)
> 
> Adam, have you tested this (on both systemd and sysvinit systems) ?

Alas, not yet -- I've barely returned from Brazil, and my TODO list is
bursting at seams.  Might be good to get feedback first, as talk is cheap.

There are also two separate issues:
* apt failing to find a solution, despite it existing
* functionality of both dbus implementations

For now, we can fix the first part quite easily.


Meow!
-- 
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian is one big family.  Including that weird uncle
⢿⡄⠘⠷⠚⠋⠀ and ultra-religious in-laws.
⠈⠳⣄



Re: Building GTK programs without installing systemd-sysv?

2019-08-17 Thread Ian Jackson
Adam Borowski writes ("Re: Building GTK programs without installing 
systemd-sysv?"):
> On Wed, Aug 14, 2019 at 01:47:47PM +0200, Philipp Kern wrote:
> > You want dbus-x11 instead of dbus-user-session then, I think.
> 
> For this and related issues, I wonder if it would be better to replace the
> virtual package pair of {default-,}dbus-session-bus with a real dummy
> package that has:
> Depends: dbus-x11 | systemd-sysv, dbus-user-session | dbus-x11
> 
> This would pull in dbus-user-session for systemd users, dbus-x11 for any
> other init.
> 
> (The idea might be bogus -- I haven't slept since Monday morning; anyone up
> for beersigning near Frankfurt airport until late evening?)

I didn't see any response to this and I don't immediately see why it
would be a bad idea.

Obviously it's slightly a bodge but these kind of issues involving
dbus-user-session seem common enough that it would probably be worth
doing this as a workaround, if it would be effective.  (Which it seems
like it probably would be.)

Adam, have you tested this (on both systemd and sysvinit systems) ?

Thanks,
Ian.

(at the Worldcon in Dublin so not got the bandwidth to check this
myself.)

-- 
Ian JacksonThese opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.



Re: Building GTK programs without installing systemd-sysv?

2019-08-15 Thread Simon McVittie
On Thu, 15 Aug 2019 at 20:51:36 +, Thorsten Glaser wrote:
> I discovered that using the second alternative for *conf
> worked: put this into /etc/apt/preferences:
> 
> Package: dconf-gsettings-backend
> Pin: version *
> Pin-Priority: -1
> 
> This will cause gconf-gsettings-backend to be used during
> the build instead, which does not depend on systemd-sysv.

This seems like a bug in gconf-gsettings-backend. gconf versions since
2012 need a D-Bus session bus just as much as dconf does: they have a
similar architecture (clients use D-Bus to talk to a server that handles
writes, to provide change notification and avoid write conflicts),
except that GConf stores many tiny XML files and has a lot more D-Bus
round-trips (because in GConf, reads are also done via D-Bus).

I suspect gconf-gsettings-backend should probably not have Provides
on gconf-backend, since it won't be used unless you specifically ask
for it with GSETTINGS_BACKEND=gconf (because GConf is obsolete, and
automatically storing settings in it would invite apparent data loss
when you install dconf-gsettings-backend, GLib prefers that one, and
the settings in GConf are no longer read) so the practical effect is
that your settings are probably not stored.

smcv



Re: Building GTK programs without installing systemd-sysv?

2019-08-15 Thread Thorsten Glaser
Hi Simon,

I ran into the same problem… in a chroot. Due to some bug,
systemd-sysv just did not want to install under cowbuilder
for some time.

I discovered that using the second alternative for *conf
worked: put this into /etc/apt/preferences:

Package: dconf-gsettings-backend
Pin: version *
Pin-Priority: -1

This will cause gconf-gsettings-backend to be used during
the build instead, which does not depend on systemd-sysv.

gl hf,
//mirabilos
-- 
This space for rent.

https://paypal.me/mirabilos to support my work.



Re: Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Philipp Kern
On 8/14/2019 2:24 PM, Simon Richter wrote:
> The long term question remains though -- I dimly remember that we once had
> the same discussion about a library pulling in rpcbind, and that made a lot
> of people very unhappy at the time.

As Holger said: Then use a chroot. With policy-rc.d you can deny service
startup, which is also what the builders do.

Kind regards
Philipp Kern



Re: Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Andrey Rahmatullin
On Wed, Aug 14, 2019 at 02:24:26PM +0200, Simon Richter wrote:
> The long term question remains though -- I dimly remember that we once had
> the same discussion about a library pulling in rpcbind, and that made a lot
> of people very unhappy at the time.
There was also http://bugs.debian.org/658541 for libimobiledevice and
usbmuxd (it is now Recommends).

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Re: Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Simon Richter
Hi,

On Wed, Aug 14, 2019 at 01:47:47PM +0200, Philipp Kern wrote:

> You want dbus-x11 instead of dbus-user-session then, I think.

Ah, that works, and aptitude is able to resolve that automatically (but apt
gets confused). So the immediate solution works for me and I'll file a bug
against apt. Thanks a lot!

The long term question remains though -- I dimly remember that we once had
the same discussion about a library pulling in rpcbind, and that made a lot
of people very unhappy at the time.

   Simon



Re: Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Adam Borowski
On Wed, Aug 14, 2019 at 01:47:47PM +0200, Philipp Kern wrote:
> On 8/14/2019 12:40 PM, Simon Richter wrote:
> > I have a few users who do test builds of kicad on my server, so I'd like to
> > provide the necessary build dependencies, but since a few days, the
> > dependency chain
> > 
> > libwxgtk3.0-gtk3-dev
> >   libwxgtk3.0-gtk3-0v5
> > libgtk-3-0
> >   libgtk-3-common
> > dconf-gsettings-backend
> >   dconf-service
> > dbus-user-session
> >   libpam-systemd
> > systemd-sysv
> > 
> > stops gtk upgrades from happening because I have pinned systemd-sysv to
> > -100 to avoid repeating the last unfortunate incident where I had to drive
> > to the colo facility.
> 
> You want dbus-x11 instead of dbus-user-session then, I think.

For this and related issues, I wonder if it would be better to replace the
virtual package pair of {default-,}dbus-session-bus with a real dummy
package that has:
Depends: dbus-x11 | systemd-sysv, dbus-user-session | dbus-x11

This would pull in dbus-user-session for systemd users, dbus-x11 for any
other init.

(The idea might be bogus -- I haven't slept since Monday morning; anyone up
for beersigning near Frankfurt airport until late evening?)


Meow!
-- 
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian is one big family.  Including that weird uncle
⢿⡄⠘⠷⠚⠋⠀ and ultra-religious in-laws.
⠈⠳⣄



Re: Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Philipp Kern
On 8/14/2019 12:40 PM, Simon Richter wrote:
> I have a few users who do test builds of kicad on my server, so I'd like to
> provide the necessary build dependencies, but since a few days, the
> dependency chain
> 
> libwxgtk3.0-gtk3-dev
>   libwxgtk3.0-gtk3-0v5
> libgtk-3-0
>   libgtk-3-common
> dconf-gsettings-backend
>   dconf-service
> dbus-user-session
>   libpam-systemd
> systemd-sysv
> 
> stops gtk upgrades from happening because I have pinned systemd-sysv to
> -100 to avoid repeating the last unfortunate incident where I had to drive
> to the colo facility.

You want dbus-x11 instead of dbus-user-session then, I think.

Kind regards
Philipp Kern



Re: Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Holger Levsen
On Wed, Aug 14, 2019 at 12:40:24PM +0200, Simon Richter wrote:
> And in the long run: would it make sense to require that packages that are
> build dependencies of something can be installed without starting any
> service?

why not build in your favorite container?


-- 
cheers,
Holger

---
   holger@(debian|reproducible-builds|layer-acht).org
   PGP fingerprint: B8BF 5413 7B09 D35C F026 FE9D 091A B856 069A AA1C


signature.asc
Description: PGP signature


Building GTK programs without installing systemd-sysv?

2019-08-14 Thread Simon Richter
Hi,

I have a few users who do test builds of kicad on my server, so I'd like to
provide the necessary build dependencies, but since a few days, the
dependency chain

libwxgtk3.0-gtk3-dev
  libwxgtk3.0-gtk3-0v5
libgtk-3-0
  libgtk-3-common
dconf-gsettings-backend
  dconf-service
dbus-user-session
  libpam-systemd
systemd-sysv

stops gtk upgrades from happening because I have pinned systemd-sysv to
-100 to avoid repeating the last unfortunate incident where I had to drive
to the colo facility.

Does anyone with more insight into which of these dependencies are actually
hard requirements have a suggestion if we could demote one of them to a
Recommends?

And in the long run: would it make sense to require that packages that are
build dependencies of something can be installed without starting any
service?

   Simon