Subject: Re: bug#25787: [PATCH 6/6] gnu: Add Clementine.

From: Pierre Langlois <[email-masked]>
Date: Sun, 29 Oct 2017 20:11:59 +0000

Hi Ricardo

Ricardo Wurmus writes:

> Hi Pierre,
>
> I have taken your patches and implemented the suggested changes. 
> The
> only remaining problem is that Clementine seems to bundle a lot 
> of
> libraries, which is why I’m not comfortable with pushing the 
> updated
> version as is.

Thanks a lot for looking at this! I'm sorry I've left this 
dragging for
so long, let me get my act together and complete this :-).

About the bundling, I agree this is problematic and I'm afraid I 
haven't
been able to get rid of all of them. The remaining libs still 
bundled
are:

  - qxt: It appears to have gone unmaintained and Clementine devs 
  have
    updated it for it to work with qt5.

  - qtsingleapplication: Needs packaging. I might take a stab at 
  it but
    I'm not sure I'll have the time. But, the CMakeLists.txt file 
    says
    the bundled version is patched so I'm unsure just packaging it 
    will
    be enough.

  - gmock: We have gmock in our googletest package but the tests
    segfault with it. The bundled version might be too old.

  - qsqlite: They have bundled the QT sqlite driver:
~~~(CMakeList.txt)
# Build our copy of QSqlLiteDriver.
# We do this because we can't guarantee that the driver shipped 
  with Qt exposes the
# raw sqlite3_ functions required for FTS support. This way we 
  know that those symbols
# exist at compile-time and that our code links to the same sqlite 
  library as the
# Qt driver.
~~~
  I tried to build a version a qtbase with sqlite-with-fts3 as 
  input
  instead of sqlite, to see if that could be a replacement. But 
  the
  symbols where still not found so I'm unsure what to do here.

  Finally, I haven't had the time to look at those last two:
  - qocoa
  - qtiocompressor

I was able to unbundle "libmygpo-qt" (new package) and "sha2" 
(replaced
by openssl).

>
> QJson is not found, but it is used by a bundled library anyway, 
> so I
> think the bundling should be fixed first.

So, as it turns out only libmygpo-qt's QT4 version was depending 
on
qjson, so this is no longer necessary for clementine!

>
> Attached is the updated version of the Clementine patch.

Thanks again! I have update the patch to remove the unbundled libs 
and
enabled testing.

Pierre