mbox series

[bug#62635,0/2] gnu: geary: Add missing dependency, use g-expressions.

Message ID 9uT-ndM-7Ha4KhKGJfuVdxauTOVx993n3g2pOtQdAPYEaMdytH_QMe-5yw1mc3f3QDraZKqVwUadOYVIFJjIEk9aRvuMDVwmv3VyYiPCUKE=@protonmail.com
Headers show
Series gnu: geary: Add missing dependency, use g-expressions. | expand

Message

J. Sims April 3, 2023, 1:58 a.m. UTC
Hello,

It turns out Geary needs `evolution-data-server' to launch. These patches 1. add that as an input; and 2. migrate it to g-expressions.

Thanks,
Juli

Comments

Ludovic Courtès May 6, 2023, 4:20 p.m. UTC | #1
Hi Juliana,

"J. Sims" <jtsims@protonmail.com> skribis:

> It turns out Geary needs `evolution-data-server' to launch. These patches 1. add that as an input; and 2. migrate it to g-expressions.

The patches LGTM.

However, in the meantime, the ‘core-updates’ branch was merged and now
‘geary’ fails to build (both before and after applying your patches).
Could you take a look and send a second version?

Thank you and apologies for the delay!

Ludo’.
Juliana Sims May 15, 2023, 1:55 p.m. UTC | #2
Hi there,

Just wanted to ping this patch thread so it doesn't get forgotten for 
too long.

Thanks,
Juli
Liliana Marie Prikler May 15, 2023, 6:20 p.m. UTC | #3
Hi Juliana,

Am Montag, dem 15.05.2023 um 09:55 -0400 schrieb Juliana Sims:
> Hi there,
> 
> Just wanted to ping this patch thread so it doesn't get forgotten for
> too long.
I still don't understand what exactly we gain or lose from adding
evolution-data-server as an input.  Have you looked into that?

Cheers
Juliana Sims May 16, 2023, 1:36 a.m. UTC | #4
Hello,

> I still don't understand what exactly we gain or lose from adding
> evolution-data-server as an input.  Have you looked into that?

When I submitted the initial patch series, Geary was failing to launch 
despite building successfully and being run under a GNOME environment. 
Adding evolution-data-server to the profile solved the issue, and given 
the lack of indication in the error message that that would resolve the 
problem, I thought it would be helpful to add as an input.

However. In attempting to reproduce this problem just now by running a 
version of Geary without evolution-data-server as an input or in the 
profile, it appears this problem... No longer exists? Which is a bit 
bizarre... Regardless, I'm happy to remove evolution-data-server as an 
input.

While I'm here, I've noticed there are some inputs in both 
native-inputs and inputs; namely, glib, gsettings-desktop-schemas, and 
gmime. Do you happen to know if these are likely to actually be 
required in both sets of inputs? Removing glib and 
gsettings-desktop-schemas from inputs seems not to cause issues - the 
program builds and launches fine - but this may simply be because I'm 
on GNOME; because these are dependencies of dependencies and thus 
exposed in the environment of the package; or it may be that this would 
cause issues in specific functionality that isn't tested in the tests 
that are run and isn't invoked except in specific situations. I'm not 
experienced enough with GNOME applications to know; I mostly just 
wanted to be able to read and write my email and my preferred 
application for doing so had stopped working XD If you happen to know 
if they can be safely removed from one or the other set of inputs, I 
would like to minimize the set of inputs; if you don't happen to know, 
I'll just leave it alone.

Thanks for asking more about evolution-data-server. I don't know why it 
was required before, but it's good to know it's not now; I'll go ahead 
and remove the commit adding it from my local branch and send up a new 
patch set when you get back to me.

- Juli
Liliana Marie Prikler May 16, 2023, 4:19 a.m. UTC | #5
Am Montag, dem 15.05.2023 um 21:36 -0400 schrieb Juliana Sims:
> When I submitted the initial patch series, Geary was failing to
> launch despite building successfully and being run under a GNOME
> environment.  Adding evolution-data-server to the profile solved the
> issue, and given the lack of indication in the error message that
> that would resolve the problem, I thought it would be helpful to add
> as an input.
It is true that Geary, like Evolution, needs a running Evolution Data
Server to function correctly.  However, this dependency is most often
met by adding evolution-data-server to the operating-system packages,
as not doing so causes other evolution-data-server-related issues IIRC.

> While I'm here, I've noticed there are some inputs in both 
> native-inputs and inputs; namely, glib, gsettings-desktop-schemas,
> and gmime.  Do you happen to know if these are likely to actually be 
> required in both sets of inputs?  Removing glib and 
> gsettings-desktop-schemas from inputs seems not to cause issues - the
> program builds and launches fine - but this may simply be because I'm
> on GNOME; because these are dependencies of dependencies and thus 
> exposed in the environment of the package; or it may be that this
> would cause issues in specific functionality that isn't tested in the
> tests that are run and isn't invoked except in specific situations.
It makes a difference for cross-builds, so you would have to check
those.  In my personal experience, glib:bin and gobject-introspection
often come up as native inputs in the GNOME world, whereas glib sans
bin, gsettings-desktop-schemas and gmime are mostly regular inputs.


Cheers
Juliana Sims May 16, 2023, 5:10 a.m. UTC | #6
Hi,
Le mar, mai 16 2023 at 06:19:13 +0200, Liliana Marie Prikler 
<liliana.prikler@gmail.com> a écrit :
>> It is true that Geary, like Evolution, needs a running Evolution Data
> Server to function correctly.  However, this dependency is most often
> met by adding evolution-data-server to the operating-system packages,
> as not doing so causes other evolution-data-server-related issues 
> IIRC.

It's probably beyond the scope of this current patch set, but is this 
something that should be communicated to users somehow? I would never 
have figured out about evolution-data-server if my friend hadn't 
recognized the error message. (There are similar situations where other 
packages require some non-dependency package to work/use all 
functionality, so the solution to this would ideally be bigger than 
just Geary and thus out of scope.)

>> It makes a difference for cross-builds, so you would have to check
> those.

Apparently librsvg is in the dependency graph for Geary, which is a 
Rust library, meaning cross builds are not currently an option. So in 
addition to removing the commit adding evolution-data-server as an 
input, I've added another commit removing the redundant native-input 
packages; feel free to simply drop the patch if the patch set looks 
good otherwise and this is deemed a frivolous or unnecessary change. I 
know dropping these native-inputs doesn't cause any issues because I'm 
sending this email using the very Geary package I am about to submit 
patches for :D

Anyway, patches incoming!

Thanks,
Juli
Liliana Marie Prikler May 16, 2023, 3:25 p.m. UTC | #7
Am Dienstag, dem 16.05.2023 um 01:10 -0400 schrieb Juliana Sims:
> Hi,
> Le mar, mai 16 2023 at 06:19:13 +0200, Liliana Marie Prikler 
> <liliana.prikler@gmail.com> a écrit :
> > > It is true that Geary, like Evolution, needs a running Evolution
> > > Data
> > Server to function correctly.  However, this dependency is most
> > often met by adding evolution-data-server to the operating-system
> > packages, as not doing so causes other evolution-data-server-
> > related issues IIRC.
> 
> It's probably beyond the scope of this current patch set, but is this
> something that should be communicated to users somehow? I would never
> have figured out about evolution-data-server if my friend hadn't 
> recognized the error message. (There are similar situations where
> other packages require some non-dependency package to work/use all 
> functionality, so the solution to this would ideally be bigger than 
> just Geary and thus out of scope.)
The bigger picture here are services: combinations of packages and
configuration to ensure that "everything" functions as intended.

> > It makes a difference for cross-builds, so you would have to check
> > those.
> 
> Apparently librsvg is in the dependency graph for Geary, which is a 
> Rust library, meaning cross builds are not currently an option. So in
> addition to removing the commit adding evolution-data-server as an 
> input, I've added another commit removing the redundant native-input 
> packages; feel free to simply drop the patch if the patch set looks 
> good otherwise and this is deemed a frivolous or unnecessary change.
> I  know dropping these native-inputs doesn't cause any issues because
> I'm sending this email using the very Geary package I am about to
> submit patches for :D
LGTM, just running some checks and afterwards scheduling for push on
Sunday.

Cheers