Nextcloud Client

  • Done
  • quality assurance status badge
Details
4 participants
  • Nicolò Balzarotti
  • david larsson
  • Leo Prikler
  • Raghav Gururajan
Owner
unassigned
Submitted by
Raghav Gururajan
Severity
normal
R
R
R
R
N
N
Nicolò Balzarotti wrote on 16 Jan 2021 11:48
87o8hp6tu7.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me
Raghav Gururajan <rg@raghavgururajan.name> writes:

Hi!
Toggle quote (2 lines)
> Please find the attached patch-set to add Nextcloud desktop application
> to guix.
I usually don't do patch review, so don't weight too much my comments.

Why is it placed inside a new module? It should fit nicely in sync.scm

Toggle quote (1 lines)
.git shouldn't be needed

Toggle quote (1 lines)
> + (base32 "1ba9z1kv3wlrmaxsn442vn0inzbd0smvq4xkavarn1h8i0dm62hb"))))
This hash is wrong, I get 022k7b3c30dymrjc1g3ly2cac1c34gkqnvjya6p7w2j3qw2w1dm2

Toggle quote (5 lines)
> + (with-directory-excursion "src/3rdparty"
> + (for-each delete-file-recursively
> + (list
> + "libcrashreporter-qt"
> + "sqlite3")))
This can be expressed in terms of what you you are keeping instead.

Something along the line of:

(let ((preserved-3rdparty-files
'("QProgressIndicator" "qtlockedfile" "qtokenizer"
"qtsingleapplication" "kmessagewidget")))
(with-directory-excursion "src/3rdparty"
(for-each
(lambda (directory)
(simple-format #t "deleting: ~A\n" directory)
(delete-file-recursively directory))
(lset-difference string=?
(scandir ".")
(cons* "." ".." preserved-3rdparty-files))))
#t)

Toggle quote (5 lines)
> + (add-after 'remove-thirdparty 'patch-plugin-dirs
> + (lambda* (#:key outputs #:allow-other-keys)
> + (substitute* "shell_integration/libcloudproviders/CMakeLists.txt"
> + (("PKGCONFIG_GETVAR\\(dbus-1 session_bus_services_dir
> _install_dir\\)")
This line is too long, you can use something like
("PKGCONFIG_GETVAR\\(.*") instead.

Toggle quote (1 lines)
> + "set(_install_dir> \"${CMAKE_INSTALL_PREFIX}/share/dbus-1/services\")"))
Other long line, maybe string-append.

Toggle quote (5 lines)
> + (substitute* "shell_integration/dolphin/CMakeLists.txt"
> + (("ON CACHE")
> + "OFF CACHE"))
> + #t))

Why?

Toggle quote (5 lines)
> + (add-before 'check 'pre-check
> + (lambda _
> + (setenv "HOME" (getcwd))
> + #t))

It's missing a comment on why this is needed (like qttest tries to create
$HOME/.qttest/config/autostart/)
Toggle quote (2 lines)
> + (license license:gpl2+)))

Unbundled dependencies have different licenses
QprogressIndicator is under expat while others lgpl2.1+ if I'm not wrong

Also, I tried removing ruby and python-sphinx from the dependencies and
it did build fine, so be sure all of them are needed (or are they used
for some optional feature?).

Thanks
R
R
R
Raghav Gururajan wrote on 16 Jan 2021 15:42
Re: [bug#45889] Nextcloud Desktop (v4)
0ac1a1a7-825a-0737-268f-b41502db0045@raghavgururajan.name
Hi Nicolò!

Toggle quote (2 lines)
> Why is it placed inside a new module? It should fit nicely in sync.scm

Nextcloud is a big project. There will be other packages like server,
plugins etc., which can then be added to this module. Concept is similar
to linphone.scm.

Toggle quote (2 lines)
> .git shouldn't be needed

Updated in v5.

Toggle quote (2 lines)
> This hash is wrong, I get 022k7b3c30dymrjc1g3ly2cac1c34gkqnvjya6p7w2j3qw2w1dm2

Updated in v5.

Toggle quote (15 lines)
> Something along the line of:
>
> (let ((preserved-3rdparty-files
> '("QProgressIndicator" "qtlockedfile" "qtokenizer"
> "qtsingleapplication" "kmessagewidget")))
> (with-directory-excursion "src/3rdparty"
> (for-each
> (lambda (directory)
> (simple-format #t "deleting: ~A\n" directory)
> (delete-file-recursively directory))
> (lset-difference string=?
> (scandir ".")
> (cons* "." ".." preserved-3rdparty-files))))
> #t)

The snippet didn't work, but I added comments in v5.

Toggle quote (3 lines)
> This line is too long, you can use something like
> ("PKGCONFIG_GETVAR\\(.*") instead.

If I use this, it causes parsing error.

Toggle quote (2 lines)
> Other long line, maybe string-append.

Ah, I have been advised before not to break lines like this via
string-append.

Toggle quote (2 lines)
> Why?

Added comments in v5.

Toggle quote (4 lines)
> It's missing a comment on why this is needed (like qttest tries to create
> $HOME/.qttest/config/autostart/)
>> + (license license:gpl2+)))

Added comments in v5.

Toggle quote (3 lines)
> Unbundled dependencies have different licenses
> QprogressIndicator is under expat while others lgpl2.1+ if I'm not wrong

Updated in v5.

Toggle quote (4 lines)
> Also, I tried removing ruby and python-sphinx from the dependencies and
> it did build fine, so be sure all of them are needed (or are they used
> for some optional feature?).

Ruby is for patch-shebangs phase. Sphinx was looked for during configure
phase, but doesn't seem to do anything, so I removed it in v5.

Thanks so much for the review. :-)

Regards,
RG.
R
R
R
Raghav Gururajan wrote on 18 Jan 2021 10:39
Nextcloud Client
(address . control@debbugs.gnu.org)
cdf2ee01-7471-94b2-5080-06df3c8eaced@raghavgururajan.name
retitle 45889 Nextcloud Client
D
D
david larsson wrote on 24 Jan 2021 19:45
Re: [bug#45889] Nextcloud Client (v6)
(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
9f96608f9d5c992a4c31dee90139e7e9@selfhosted.xyz
On 2021-01-17 15:44, Raghav Gururajan wrote:
Toggle quote (2 lines)
>

Hi,

Thank you for working on this! I have tried to package this myself but
haven't much success beyond being able to login and sync things and to
receive notifications via libnotify. However, this patch also doesn't
succeeed in a fully functional nextcloud-desktop, yet - though I hope
you do succeed!

I tried this out, and started it with --log-window (or similar) and it
complained about qt-graphical-effect, so I suggest you add it to
propagated-inputs to have that error go away. And as a general tip -
start nextcloud-desktop with the log-window flag.

I wish you best of luck in completing it!

Best regards,
David
R
R
Raghav Gururajan wrote on 1 Feb 2021 16:07
(name . david larsson)(address . david.larsson@selfhosted.xyz)
6fed2af8-4ca6-9269-2c99-10999a1dde46@raghavgururajan.name
Hi David!

Toggle quote (6 lines)
> Thank you for working on this! I have tried to package this myself but
> haven't much success beyond being able to login and sync things and to
> receive notifications via libnotify. However, this patch also doesn't
> succeeed in a fully functional nextcloud-desktop, yet - though I hope
> you do succeed!

I can confirm that this patch-set is functional. I haven't faced any
issues. Please let me know which function(s) didn't work for you. I'll
look into them. :-)

Toggle quote (5 lines)
> I tried this out, and started it with --log-window (or similar) and it
> complained about qt-graphical-effect, so I suggest you add it to
> propagated-inputs to have that error go away. And as a general tip -
> start nextcloud-desktop with the log-window flag.

Ah thanks! Yeah, it needed qtgraphicaleffects. Added them in v7. Also,
the application excepts that the system runs either gnome-keyring or
kwallet.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 1 Feb 2021 16:13
Nextcloud Client (v7)
(address . 45889@debbugs.gnu.org)
609483b4-c583-cbf0-4b2a-4daf6c4feb98@raghavgururajan.name

From 1f8ae09541505a39e2e011bce6fb6fdf12a5bde7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Sat, 30 Jan 2021 11:42:12 -0500
Subject: [PATCH 2/3] gnu: kwayland: Disable failing tests.

* gnu/packages/kde-frameworks.scm (kwayland) [arguments]<#:phases>
['disable-failing-tests]: New phase.
---
gnu/packages/kde-frameworks.scm | 6 ++++++
1 file changed, 6 insertions(+)

Toggle diff (19 lines)
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 8c2028b978..cf5840f3f3 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -1049,6 +1049,12 @@ integration with a custom editor as well as a ready-to-use
(arguments
`(#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ (substitute* "autotests/client/CMakeLists.txt"
+ ((" add_test\\(NAME kwayland-testPlasmaWindowModel COMMAND testPlasmaWindowModel\\)")
+ ""))
+ #t))
(add-before 'check 'check-setup
(lambda _
(setenv "XDG_RUNTIME_DIR" "/tmp")
--
2.30.0
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 9 Feb 2021 11:22
8b239920351c99a887835c98fd9a3892b9cfd0f5.camel@student.tugraz.at
Hello,

Am Montag, den 01.02.2021, 10:13 -0500 schrieb Raghav Gururajan:
Toggle quote (1 lines)
> Subject: [PATCH 1/3] gnu: Add appstream.
Mostly LGTM.

Toggle quote (2 lines)
> + (native-inputs
> + `(("cmake" ,cmake)
Is cmake really needed? I know that meson falls back to cmake if pkg-
config fails and also supports output to cmake, but meson/ninja should
be the default.

Toggle quote (1 lines)
> Subject: [PATCH 2/3] gnu: kwayland: Disable failing tests.
LGTM, we might want to push that independently.

Toggle quote (4 lines)
> + (let ((keep '( ;; Not available in Guix.
> + "QProgressIndicator" "kmessagewidget"
> "qtlockedfile"
> + "qtokenizer" "qtsingleapplication")))
Could you try packaging those for Guix as well?

Toggle quote (8 lines)
> + #:imported-modules
> + (,@%qt-build-system-modules
> + (guix build glib-or-gtk-build-system))
> + #:modules
> + ((guix build qt-build-system)
> + ((guix build glib-or-gtk-build-system)
> + #:prefix glib-or-gtk:)
> + (guix build utils))
As with your telegram patch, I personally think the ordering is wrong
here.

Toggle quote (4 lines)
> + (("PKGCONFIG_GETVAR\\(dbus-1 session_bus_services_dir
> _install_dir\\)")
> + "set(_install_dir
> \"${CMAKE_INSTALL_PREFIX}/share/dbus-1/services\")"))
You might want to regexp the middle part in case it is changed.

Toggle quote (5 lines)
> + ;; Turn-off the use of absolute Qt paths for
> installation.
> + (substitute* "shell_integration/dolphin/CMakeLists.txt"
> + (("ON CACHE")
> + "OFF CACHE"))
What does this achieve exactly?

Btw. slightly off-topic, but if you're planning to reply to this patch-
set and send v8 at roughly the same time, please collapse it to a
single message as you're already using a "patches as attachments"
style. Having everything in a single message makes it a little easier
for me to respond and Evolution can save all attachments to a directory
just fine.

Regards,
Leo
L
L
Leo Prikler wrote on 9 Feb 2021 13:53
6cb70873281335aa8dca026dcd3c91e64d2d9e93.camel@student.tugraz.at
Am Montag, den 01.02.2021, 10:13 -0500 schrieb Raghav Gururajan:
Toggle quote (1 lines)
> Subject: [PATCH 2/3] gnu: kwayland: Disable failing tests.
It seems the test you've disabled is no longer the only failing one.
Upstream kwayland builds by disabling tests altogether, so you can skip
this patch if you don't want to investigate further. If you do want to
investigate further, I suggest doing those patches separately from
Nextcloud.

Toggle quote (12 lines)
> 17/45 Test #17: kwayland-testWindowmanagement ..............Child
> aborted***Exception: 0.17 sec
> qt.qpa.xcb: could not connect to display
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even
> though it was found.
> This application failed to start because no Qt platform plugin could
> be initialized. Reinstalling the application may fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl,
> offscreen, vnc, xcb, wayland-egl, wayland, wayland-xcomposite-egl,
> wayland-xcomposite-glx.

Regards,
Leo
R
R
Raghav Gururajan wrote on 13 Feb 2021 21:36
Re: Nextcloud Client (v8)
3c07544c-97fe-88b1-2e80-ec5cfb87d4ec@raghavgururajan.name
Hi Leo!

Toggle quote (4 lines)
> Is cmake really needed? I know that meson falls back to cmake if pkg-
> config fails and also supports output to cmake, but meson/ninja should
> be the default.

Yes, it is used to generate `.cmake` files inder '[out]/lib/cmake'.

Toggle quote (2 lines)
> Could you try packaging those for Guix as well?

They don't have dedicated build scripts.

Toggle quote (3 lines)
> As with your telegram patch, I personally think the ordering is wrong
> here.

I changed it in v8.

Toggle quote (2 lines)
> You might want to regexp the middle part in case it is changed.

I could use PKGCONFIG_GETVAR\\(.+\\) but that would conflict with other
PKGCONFIG_GETVAR lines now or in future.

Toggle quote (2 lines)
> What does this achieve exactly?

It configures the build-system to install modules in output "out"
instead of Qt's (input) path.

I have attached v8 with this email.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 13 Feb 2021 22:47
73f0495c29ee82c2a16a96cc2825f19bd88b4ab4.camel@student.tugraz.at
Hi Raghav,

Am Samstag, den 13.02.2021, 15:36 -0500 schrieb Raghav Gururajan:
Toggle quote (9 lines)
> Hi Leo!
>
> > Is cmake really needed? I know that meson falls back to cmake if
> > pkg-
> > config fails and also supports output to cmake, but meson/ninja
> > should
> > be the default.
>
> Yes, it is used to generate `.cmake` files inder '[out]/lib/cmake'.
Fair enough.

Toggle quote (3 lines)
> > Could you try packaging those for Guix as well?
>
> They don't have dedicated build scripts.
That may be an issue. You might want to check which of those are
perhaps optional, so that you don't need to pull them in. For example
it appears you're also deleting libcrashreporter-qt with no
replacement.

kmessagewidget appears to be a part of KDE core. If anything there is
strictly necessary for building, we should perhaps define a package
variant, that has a slightly patched kmessagewidget. qtlockedfile and
qtsingleapplication appear to be part of [1], a sort of metapackage,
from which you could spawn multiple descriptions. For qtokenizer, I am
really not sure.

Toggle quote (5 lines)
> > As with your telegram patch, I personally think the ordering is
> > wrong
> > here.
>
> I changed it in v8.
LGTM.

Toggle quote (5 lines)
> > You might want to regexp the middle part in case it is changed.
>
> I could use PKGCONFIG_GETVAR\\(.+\\) but that would conflict with
> other
> PKGCONFIG_GETVAR lines now or in future.
Okay, but you can do something like PKGCONFIG_GETVAR\\(.+
_install_dir\\), assuming that such variables should generally only be
bound once. To be honest, I don't know enough CMake to tell, whether
that is a good idea, however.

Toggle quote (4 lines)
> > What does this achieve exactly?
>
> It configures the build-system to install modules in output "out"
> instead of Qt's (input) path.
In that case, the comment should probably read something along the
lines of "Make sure, that <X> is installed under $prefix."

Regards,
Leo

R
R
Raghav Gururajan wrote on 14 Feb 2021 00:54
8f88bef4-cf4d-5bcc-e0bb-979dc0ce1efd@raghavgururajan.name
Hi Leo!

Toggle quote (5 lines)
> That may be an issue. You might want to check which of those are
> perhaps optional, so that you don't need to pull them in. For example
> it appears you're also deleting libcrashreporter-qt with no
> replacement.

I tried building with each one of them, but build fails without them
(except libcrashreporter-qt).

Toggle quote (7 lines)
> kmessagewidget appears to be a part of KDE core. If anything there is
> strictly necessary for building, we should perhaps define a package
> variant, that has a slightly patched kmessagewidget. qtlockedfile and
> qtsingleapplication appear to be part of [1], a sort of metapackage,
> from which you could spawn multiple descriptions. For qtokenizer, I am
> really not sure.

Thanks for the info. This package doesn't have an option or code to use
packaged ones.

Toggle quote (5 lines)
> Okay, but you can do something like PKGCONFIG_GETVAR\\(.+
> _install_dir\\), assuming that such variables should generally only be
> bound once. To be honest, I don't know enough CMake to tell, whether
> that is a good idea, however.

Changed in v9.

Toggle quote (3 lines)
> In that case, the comment should probably read something along the
> lines of "Make sure, that <X> is installed under $prefix."

Changed in v9.

v9 is attached.

Regards,
RG.
Attachment: OpenPGP_signature
R
L
L
Leo Prikler wrote on 14 Feb 2021 11:53
Re: Nextcloud Client (v8)
f831226a3e96539ceae6467436c60988a08a33c5.camel@student.tugraz.at
Hi Raghav,

Am Samstag, den 13.02.2021, 18:54 -0500 schrieb Raghav Gururajan:
Toggle quote (10 lines)
> Hi Leo!
>
> > That may be an issue. You might want to check which of those are
> > perhaps optional, so that you don't need to pull them in. For
> > example
> > it appears you're also deleting libcrashreporter-qt with no
> > replacement.
>
> I tried building with each one of them, but build fails without them
> (except libcrashreporter-qt).
Interesting. Is this due to CMakeLists picking up, that they're
missing and not replacing them with core stuff?

Toggle quote (13 lines)
> > kmessagewidget appears to be a part of KDE core. If anything there
> > is
> > strictly necessary for building, we should perhaps define a package
> > variant, that has a slightly patched kmessagewidget. qtlockedfile
> > and
> > qtsingleapplication appear to be part of [1], a sort of
> > metapackage,
> > from which you could spawn multiple descriptions. For qtokenizer,
> > I am
> > really not sure.
>
> Thanks for the info. This package doesn't have an option or code to
> use packaged ones.
Perhaps you can patch the CMakeLists to add such support?
Alternatively, you might want to delete them and unpack the upstream
ones to their locations.

Toggle quote (8 lines)
> > Okay, but you can do something like PKGCONFIG_GETVAR\\(.+
> > _install_dir\\), assuming that such variables should generally only
> > be
> > bound once. To be honest, I don't know enough CMake to tell,
> > whether
> > that is a good idea, however.
>
> Changed in v9.
Note, that you're missing a space here. This would also match
PKGCONFIG_GETVAR(pkg var foobar_install_dir).

Toggle quote (4 lines)
> > In that case, the comment should probably read something along the
> > lines of "Make sure, that <X> is installed under $prefix."
>
> Changed in v9.
LGTM.

Regards,
Leo
R
R
Raghav Gururajan wrote on 18 Feb 2021 21:23
Re: Nextcloud Client (v10)
67f2ff73-c6e0-743f-d873-0a488fa05e31@raghavgururajan.name
Hi Leo!

Toggle quote (7 lines)
> Interesting. Is this due to CMakeLists picking up, that they're
> missing and not replacing them with core stuff?
>
> Perhaps you can patch the CMakeLists to add such support?
> Alternatively, you might want to delete them and unpack the upstream
> ones to their locations.

I have asked upstream and they are looking into providing options to use
distribution packages.

So once they update the source in the next-release, I will update the
package and remove the 3rdparty directory completely. :-)

Toggle quote (3 lines)
> Note, that you're missing a space here. This would also match
> PKGCONFIG_GETVAR(pkg var foobar_install_dir).

Changed in v10.

V10 is attached.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 18 Feb 2021 23:26
29553b60ceb47530cd0bda7f84badb80b8daab74.camel@student.tugraz.at
Hi Raghav!

Am Donnerstag, den 18.02.2021, 15:23 -0500 schrieb Raghav Gururajan:
Toggle quote (14 lines)
> Hi Leo!
>
> > Interesting. Is this due to CMakeLists picking up, that they're
> > missing and not replacing them with core stuff?
> >
> > Perhaps you can patch the CMakeLists to add such support?
> > Alternatively, you might want to delete them and unpack the
> > upstream
> > ones to their locations.
>
> I have asked upstream and they are looking into providing options to
> use
> distribution packages.
> https://github.com/nextcloud/desktop/issues/2929#issuecomment-780548919
Good to know.

Toggle quote (3 lines)
> So once they update the source in the next-release, I will update
> the
> package and remove the 3rdparty directory completely. :-)
In the meantime, would you mind packaging those 3rdparty sources from
their respective origins and add them in at build time? That way, all
we'd need to transition from pseudo-unbundled to actually unbundled
would be to drop one phase.

Toggle quote (4 lines)
> > Note, that you're missing a space here. This would also match
> > PKGCONFIG_GETVAR(pkg var foobar_install_dir).
>
> Changed in v10.
LGTM.

Regards,
Leo
R
R
Raghav Gururajan wrote on 21 Feb 2021 18:04
7d1a2db6-5da9-80f6-d160-128d2200935b@raghavgururajan.name
Hi Leo!

Toggle quote (5 lines)
> In the meantime, would you mind packaging those 3rdparty sources from
> their respective origins and add them in at build time? That way, all
> we'd need to transition from pseudo-unbundled to actually unbundled
> would be to drop one phase.

I was about to start doing it via 'copy-inputs, then noticed the source
content differs with the ones at QtSolutions. The files of
QtSingleApplication and QtLockedFile at QtSolutions were not modified
for many years, whereas, the files of QtSingleApplication and
QtLockedFile at nextcloud was last modified in 2020.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 21 Feb 2021 18:45
1c216cbfd761c8ce77b2402cf9a88ad8772b2331.camel@student.tugraz.at
Hi Raghav,

Am Sonntag, den 21.02.2021, 12:04 -0500 schrieb Raghav Gururajan:
Toggle quote (16 lines)
> Hi Leo!
>
> > In the meantime, would you mind packaging those 3rdparty sources
> > from
> > their respective origins and add them in at build time? That way,
> > all
> > we'd need to transition from pseudo-unbundled to actually unbundled
> > would be to drop one phase.
>
> I was about to start doing it via 'copy-inputs, then noticed the
> source
> content differs with the ones at QtSolutions. The files of
> QtSingleApplication and QtLockedFile at QtSolutions were not
> modified
> for many years, whereas, the files of QtSingleApplication and
> QtLockedFile at nextcloud was last modified in 2020.
Looking at QtSingleApplication, the changes made by Nextcloud seem
rather cosmetic, so packaging the upstream version, which also had
"cosmetic" changes to it since their shared ancestor should not be an
issue.

Regards,
Leo
R
R
Raghav Gururajan wrote on 21 Feb 2021 19:09
Re: Nextcloud Client (v11)
15559ce0-8f6b-1ff7-e5d1-7c3f3f5292f9@raghavgururajan.name
Hi Leo!

Toggle quote (5 lines)
> Looking at QtSingleApplication, the changes made by Nextcloud seem
> rather cosmetic, so packaging the upstream version, which also had
> "cosmetic" changes to it since their shared ancestor should not be an
> issue.

Ah Cool!

I have attached v11.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 21 Feb 2021 19:22
a12417aacdba96059634f679281904da7b321795.camel@student.tugraz.at
Hi Raghav,

Am Sonntag, den 21.02.2021, 13:09 -0500 schrieb Raghav Gururajan:
Toggle quote (9 lines)
> Hi Leo!
>
> > Looking at QtSingleApplication, the changes made by Nextcloud seem
> > rather cosmetic, so packaging the upstream version, which also had
> > "cosmetic" changes to it since their shared ancestor should not be
> > an
> > issue.
>
> Ah Cool!
Just in case I've been unclear, "upstream" here means "not bundled".

Toggle quote (1 lines)
> I have attached v11.
Did you by chance mess up the patch numbering?

Toggle quote (1 lines)
> +(define-module (gnu packages nextcloud)
I just now noticed, that this would be a good fit for sync, which
already hosts owncloud-client.

Toggle quote (1 lines)
> + (version "3.1.2")
For the record, upstream updated to 3.1.3 three days ago. Time flies.

Regards,
Leo
R
R
Raghav Gururajan wrote on 21 Feb 2021 19:22
792b04ff-61bb-ab6f-46f7-9186be25ba7b@raghavgururajan.name
Hi Leo!

Toggle quote (2 lines)
> I have attached v11.

Ignore v11. The build fails. There are missing classes in the
QtSolutions source. So v10 is the viable patch-set.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 21 Feb 2021 19:50
Re: Nextcloud Client (v12)
95a467cd-e1b8-9f68-588e-163a6105e891@raghavgururajan.name
Hi Leo!

Toggle quote (4 lines)
>> +(define-module (gnu packages nextcloud)
> I just now noticed, that this would be a good fit for sync, which
> already hosts owncloud-client.

This new module is for nextcloud suite of packages. nextcloud-client,
nextcloud-server, nextcloud-spreed, nextcloud-deck, nextcloud-news ...
nextcloud-foobar.

Toggle quote (3 lines)
>> + (version "3.1.2")
> For the record, upstream updated to 3.1.3 three days ago. Time flies.

Wow! Okay, I have made v12.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 21 Feb 2021 20:37
f8fc183a9f28096a1f587860828ca4c30db337ab.camel@student.tugraz.at
Am Sonntag, den 21.02.2021, 13:50 -0500 schrieb Raghav Gururajan:
Toggle quote (11 lines)
> Hi Leo!
>
> > > +(define-module (gnu packages nextcloud)
> > I just now noticed, that this would be a good fit for sync, which
> > already hosts owncloud-client.
>
> This new module is for nextcloud suite of packages. nextcloud-
> client,
> nextcloud-server, nextcloud-spreed, nextcloud-deck, nextcloud-news
> ...
> nextcloud-foobar.
Still seems pretty sync to me, especially since it's just the client
for now.

Toggle quote (1 lines)
> There are missing classes in the QtSolutions source.
(X) Doubt

It appears the Nextcloud variant has an added namespace layer, that one
should easily be able to strip via substitute*. I do wonder where that
comes from, though, it seems to have been there "forever".

Regards,
Leo
R
R
Raghav Gururajan wrote on 22 Feb 2021 18:29
Re: Nextcloud Client (v13)
12599035-d671-b417-d70c-89d694f3ccd9@raghavgururajan.name
Hi Leo!

Toggle quote (3 lines)
> Still seems pretty sync to me, especially since it's just the client
> for now.

Circular-dependency when putting it in sync.scm. So we'll keep it as is
I guess.

Toggle quote (6 lines)
> (X) Doubt
>
> It appears the Nextcloud variant has an added namespace layer, that one
> should easily be able to strip via substitute*. I do wonder where that
> comes from, though, it seems to have been there "forever".

No idea! Thanks for fixing the build errors.

Also, I cannot package them separately because the build script is not
viable. No libraries gets built, except for .o files. Also, INSTALL.txt
deals with Windows and MacOS.

I have attached v13.

Regards,
RG.
Attachment: OpenPGP_signature
R
L
L
Leo Prikler wrote on 23 Feb 2021 18:58
df1c11b05a7a2920efe4859a9cf8ad66ee4dbf93.camel@student.tugraz.at
Hi Raghav,

Am Dienstag, den 23.02.2021, 09:27 -0500 schrieb Raghav Gururajan:
Toggle quote (13 lines)
> + (let* ((qtsolutions (assoc-ref inputs "qtsolutions")))
> + (for-each
> + (lambda (dir)
> + (copy-recursively
> + (string-append qtsolutions "/" dir "/src")
> + (string-append "src/3rdparty/" dir)))
> + '("qtlockedfile" "qtsingleapplication")))
> + (with-directory-excursion "src/gui"
> + (substitute* `("application.h" "application.cpp")
> + (("SharedTools::QtSingleApplication")
> "QtSingleApplication")
> + (("slotParseMessage\\(const QString &(msg)?.*\\)")
> + "slotParseMessage(const QString &msg)")))
Being the one who helped review this, I of course know, what it does,
but others might not, so this probably deserves a (short) comment.

Toggle quote (12 lines)
> + ("qtsolutions"
> + ,(origin
> + (method git-fetch)
> + (uri
> + (git-reference
> + (url "https://github.com/qtproject/qt-solutions")
> + (commit "9568abd142d581b67b86a5f63d823a34b0612702")))
> + (file-name
> + (git-file-name "qtsolutions" "9568abd"))
> + (sha256
> + (base32
> "17fnmassflm3vxi0krpr6fff368jy38cby31a48rban4nqqmgx7n"))))
I'm still not convinced, that this can't be made a package or perhaps
multiple packages, one per "solution". Each of the folder seems to
contain a project file, which to be fair do have some non-Unix-related
install declarations, but it should at least install a statically
linked package *somewhere*. We can go from there.

Alternatively, as I see this as a source, that will get copied around
in the same way I copied libgd from gedit, you can at least extract the
origin into a function in qt.scm, potentially named qt-solutions.

Regards,
Leo
R
R
Raghav Gururajan wrote on 9 Mar 2021 07:00
Re: Nextcloud Client (v15)
e6a29632-3161-a559-fc6d-fed0a928ffde@raghavgururajan.name
Hi Leo!

Toggle quote (11 lines)
> I'm still not convinced, that this can't be made a package or perhaps
> multiple packages, one per "solution". Each of the folder seems to
> contain a project file, which to be fair do have some non-Unix-related
> install declarations, but it should at least install a statically
> linked package *somewhere*. We can go from there.
>
> Alternatively, as I see this as a source, that will get copied around
> in the same way I copied libgd from gedit, you can at least extract the
> origin into a function in qt.scm, potentially named qt-solutions.


In attached v15, I have:

[1] Packaged QtSolutions.
[2] Removed QtLockedFile, QtSingleApplication, and KMessageWidget from
3rdparty.
[3] Patched the source to use KMessageWidget from KWidgetsAddons, and,
to use QtLockedFile and QtSingleApplication from QtSolutions.

\o/

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 9 Mar 2021 08:03
31701971d849e72506ed4105c92b2ad85d3aa6be.camel@student.tugraz.at
Hi Raghav,

Toggle quote (15 lines)
> Subject: [PATCH 2/3] gnu: Add qtsolutions.
> + (version
> + (git-version "0" revision commit))

> + (file-name
> + (git-file-name name version))

> + (("qt5")
> + "qt")

> + (("-head")
> + "")

> + (("SUBDIRS\\+=examples")
> + ""))
Try not to arbitrarily use too many new lines. If you break Scheme
code in such a manner for no good reason, it will look odd.

Toggle quote (2 lines)
> + (("toAscii")
> + "toLatin1"))
Why not to UTF-8? Is the input already UTF-8 and we want to convert it
to a single-byte character set?

Toggle quote (2 lines)
> + (("\\$\\$PWD")
> + (assoc-ref outputs "out")))
You should install the shared libraries in the install phase.

Toggle quote (6 lines)
> + (list
> + "qtlockedfile"
> + "qtpropertybrowser"
> + "qtservice"
> + "qtsingleapplication"
> + "qtsoap")
Use '(...) for fixed input.

Toggle quote (13 lines)
> Subject: [PATCH 3/3] gnu: Add nextcloud-client.
> + (commit
> + (string-append "v" version)))

> + ((" \\.\\./3rdparty/qtlockedfile/?.*")
> + "")
> + ((" \\.\\./3rdparty/qtsingleapplication/?.*")
> + "")
> + ((" \\.\\./3rdparty/kmessagewidget/?.*")
> + "")
> + ((" list\\(APPEND 3rdparty_SRC
> \\.\\./3rdparty/?.*\\)")
> + "")
I'm starting to grow a little suspicious about matching the leading
spaces. You probably want to lead this (and similar stuff in 0001)
with [ \t]*.

Toggle quote (12 lines)
> + (("\\$\\{CMAKE_SOURCE_DIR\\}/src/3rdparty/qtlockedf
> ile")
> + (string-append (assoc-ref inputs "qtsolutions")
> + "/include/qtlockedfile/"))
> + (("\\$\\{CMAKE_SOURCE_DIR\\}/src/3rdparty/qtsinglea
> pplication")
> + (string-append (assoc-ref inputs "qtsolutions")
> + "/include/qtsingleapplication/"))
> + (("\\$\\{CMAKE_SOURCE_DIR\\}/src/3rdparty/kmessagew
> idget")
> + (string-append (assoc-ref inputs "kwidgetsaddons")
> + "/include/KF5/KWidgetsAddons/"))
LGTM, but probably deserves a comment.
Also, you might skip the stuff leading up to /3rdparty, i.e. have
".*/3rdparty/qtlockedfile", etc. Perhaps this gives you enough wiggle
room to do lockedfile and single application on the same line, but it
doesn't hurt if it doesn't.

Toggle quote (5 lines)
> + (("\\$\\{synclib_NAME\\}")
> + (string-append "${synclib_NAME} "
> + "QtSolutions_LockedFile "
> + "QtSolutions_SingleApplication "
> + "KF5WidgetsAddons")))
Definitely deserves a comment and perhaps a less broad match?

Toggle quote (5 lines)
> + (substitute* '("application.h" "application.cpp")
> + (("SharedTools::QtSingleApplication")
> + "QtSingleApplication")
> + (("slotParseMessage\\(const QString &(msg)?.*\\)")
> + "slotParseMessage(const QString &msg)")))
Also deserves a comment about QtSingleApplication differences.

Toggle quote (3 lines)
> + (string-append "set(_install_dir
> \"${CMAKE_INSTALL_PREFIX}"
> + "/share/dbus-1/services\")")))
Would the raw string here exceed a line?

Toggle quote (2 lines)
> + ;; All ThirdParty (except QtProgressIndicator)
> + license:lgpl2.1+
This is now just qtokenizer, right?

Regards,
Leo
R
R
Raghav Gururajan wrote on 9 Mar 2021 11:50
Re: Nextcloud Client (v16)
f6b923c8-1f26-3d57-602e-83d9488a85e8@raghavgururajan.name
Hi Leo!

Toggle quote (3 lines)
> Try not to arbitrarily use too many new lines. If you break Scheme
> code in such a manner for no good reason, it will look odd.

Done.

Toggle quote (2 lines)
> Why not to UTF-8?

Done.

Toggle quote (2 lines)
> You should install the shared libraries in the install phase.

Done.

Toggle quote (2 lines)
> Use '(...) for fixed input.

Done.

Toggle quote (4 lines)
> I'm starting to grow a little suspicious about matching the leading
> spaces. You probably want to lead this (and similar stuff in 0001)
> with [ \t]*.

Done.

Toggle quote (2 lines)
> LGTM, but probably deserves a comment.

Done.

Toggle quote (2 lines)
> Definitely deserves a comment and perhaps a less broad match?

Done the comment.

I think this is perfect match. The mentioned libraries will get linked
wherever synclib gets linked. Also, this patch is compatible with
current master, which is different from this version.

Toggle quote (2 lines)
> Also deserves a comment about QtSingleApplication differences.

Done.

Toggle quote (2 lines)
> Would the raw string here exceed a line?

Yep!

Toggle quote (2 lines)
> This is now just qtokenizer, right?

Changed.

Please find the attached v16.

Regards,
RG.
From f17fadd96e03b7507aa8c6aed1054ef976ed3e45 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Tue, 9 Mar 2021 02:14:56 -0500
Subject: [PATCH 2/3] gnu: Add qtsolutions.

* gnu/packages/qt.scm (qtsolutions): New variable.
---
gnu/packages/qt.scm | 92 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 92 insertions(+)

Toggle diff (105 lines)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 11e69ff5db..d5d4258f88 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -105,6 +105,98 @@
#:use-module (gnu packages xml)
#:use-module (srfi srfi-1))
+(define-public qtsolutions
+ (let ((commit "9568abd142d581b67b86a5f63d823a34b0612702")
+ (revision "53"))
+ (package
+ (name "qtsolutions")
+ (version
+ (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://code.qt.io/cgit/qt-solutions/qt-solutions")
+ (commit commit)))
+ (file-name
+ (git-file-name name version))
+ (sha256
+ (base32 "17fnmassflm3vxi0krpr6fff368jy38cby31a48rban4nqqmgx7n"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No target
+ #:imported-modules
+ ((guix build copy-build-system)
+ ,@%gnu-build-system-modules)
+ #:modules
+ (((guix build copy-build-system)
+ #:prefix copy:)
+ (guix build gnu-build-system)
+ (guix build utils))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* (find-files "." "common.pri")
+ ;; Remove prefix in library names.
+ (("qt5") "qt")
+ ;; Remove suffix in library names.
+ (("-head") ""))
+ ;; Disable building of examples.
+ (substitute* (find-files "." "\\.pro$")
+ (("SUBDIRS\\+=examples") ""))
+ ;; Fix deprecated functions.
+ (substitute* "qtsoap/src/qtsoap.cpp"
+ (("toAscii") "toUtf8"))
+ #t))
+ (replace 'configure
+ (lambda _
+ (for-each (lambda (solution)
+ (with-directory-excursion solution
+ (invoke "./configure" "-library")
+ (invoke "qmake")))
+ '("qtlockedfile" "qtpropertybrowser" "qtservice"
+ "qtsingleapplication" "qtsoap"))
+ #t))
+ (replace 'build
+ (lambda _
+ (for-each (lambda (solution)
+ (with-directory-excursion solution
+ (invoke "make")))
+ '("qtlockedfile" "qtpropertybrowser" "qtservice"
+ "qtsingleapplication" "qtsoap"))
+ #t))
+ (replace 'install
+ (lambda args
+ (for-each (lambda (solution)
+ (with-directory-excursion solution
+ (apply (assoc-ref copy:%standard-phases 'install)
+ #:install-plan
+ `(("src" ,(string-append "include/" solution)
+ #:include-regexp ("\\.h$"))
+ ("lib" "lib"))
+ args)))
+ '("qtlockedfile" "qtpropertybrowser" "qtservice"
+ "qtsingleapplication" "qtsoap")))))))
+ (inputs
+ `(("qtbase" ,qtbase)))
+ (synopsis "Qt Solutions")
+ (description "QtSolutions are set of components that extends Qt.
+@itemize
+@item QtLockedFile: A class that extends QFile with advisory locking functions.
+@item QtPropertyBrowser: A framework that enables the user to edit a set of
+properties.
+@item QtService: A component useful for developing Windows services and Unix
+daemons.
+@item QtSingleApplication: A component that provides support for applications
+that can be only started once per user.
+@item QtSoap: A component that provides basic web service support with version
+1.1 of the SOAP protocol.
+@end itemize\n")
+ (home-page "https://doc.qt.io/archives/qq/qq09-qt-solutions.html")
+ (license license:lgpl2.1+))))
+
(define-public qt5ct
(package
(name "qt5ct")
--
2.30.1
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 9 Mar 2021 12:39
e888578e2a4f0b938040a6d6b6af611e32e72f37.camel@student.tugraz.at
Hi Raghav,

Mostly LGTM.

Am Dienstag, den 09.03.2021, 05:50 -0500 schrieb Raghav Gururajan:
Toggle quote (8 lines)
> > Definitely deserves a comment and perhaps a less broad match?
>
> Done the comment.
>
> I think this is perfect match. The mentioned libraries will get
> linked
> wherever synclib gets linked. Also, this patch is compatible with
> current master, which is different from this version.
Perhaps the comment should reflect that a little better. You might
also want to expand that during the unvendoring in the snippet, so that
it's less confusing.

Toggle quote (3 lines)
> + `(("src" ,(string-append
> "include/" solution)
> + #:include-regexp ("\\.h$"))
I think you should unvendor dependencies between the solutions, so that
you can put them in "include/" directly (like putting the solutions in
"/lib").

Regards,
Leo
R
R
Raghav Gururajan wrote on 9 Mar 2021 13:29
49a02ef9-be2a-1abf-3b2c-bb99471620ee@raghavgururajan.name
Hi Leo!

Toggle quote (4 lines)
> Perhaps the comment should reflect that a little better. You might
> also want to expand that during the unvendoring in the snippet, so that
> it's less confusing.

Done.

Toggle quote (4 lines)
> I think you should unvendor dependencies between the solutions, so that
> you can put them in "include/" directly (like putting the solutions in
> "/lib").

Done.

Please find the attached v17.

Regards,
RG.
From a957e967b10cb1ad87e5e01239b90b954f9eb532 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Tue, 9 Mar 2021 02:14:56 -0500
Subject: [PATCH 2/3] gnu: Add qtsolutions.

* gnu/packages/qt.scm (qtsolutions): New variable.
---
gnu/packages/qt.scm | 95 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 95 insertions(+)

Toggle diff (108 lines)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 11e69ff5db..96efbce7fc 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -105,6 +105,101 @@
#:use-module (gnu packages xml)
#:use-module (srfi srfi-1))
+(define-public qtsolutions
+ (let ((commit "9568abd142d581b67b86a5f63d823a34b0612702")
+ (revision "53"))
+ (package
+ (name "qtsolutions")
+ (version
+ (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/qtproject/qt-solutions")
+ (commit commit)))
+ (file-name
+ (git-file-name name version))
+ (sha256
+ (base32 "17fnmassflm3vxi0krpr6fff368jy38cby31a48rban4nqqmgx7n"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; No target
+ #:imported-modules
+ ((guix build copy-build-system)
+ ,@%gnu-build-system-modules)
+ #:modules
+ (((guix build copy-build-system)
+ #:prefix copy:)
+ (guix build gnu-build-system)
+ (guix build utils))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* (find-files "." "common.pri")
+ ;; Remove prefix in library names.
+ (("qt5") "qt")
+ ;; Remove suffix in library names.
+ (("-head") ""))
+ ;; Disable building of examples.
+ (substitute* (find-files "." "\\.pro$")
+ (("SUBDIRS\\+=examples") ""))
+ ;; Fix deprecated functions.
+ (substitute* "qtsoap/src/qtsoap.cpp"
+ (("toAscii") "toUtf8"))
+ #t))
+ (replace 'configure
+ (lambda _
+ (for-each (lambda (solution)
+ (with-directory-excursion solution
+ (invoke "./configure" "-library")
+ (invoke "qmake")))
+ '("qtlockedfile" "qtpropertybrowser" "qtservice"
+ "qtsingleapplication" "qtsoap"))
+ #t))
+ (replace 'build
+ (lambda _
+ (for-each (lambda (solution)
+ (with-directory-excursion solution
+ (invoke "make")))
+ '("qtlockedfile" "qtpropertybrowser" "qtservice"
+ "qtsingleapplication" "qtsoap"))
+ #t))
+ (replace 'install
+ (lambda args
+ ;; Remove an redundant header file,
+ ;; before it gets attempted for installation.
+ (delete-file "qtsingleapplication/src/qtlockedfile.h")
+ (for-each (lambda (solution)
+ (with-directory-excursion solution
+ (apply (assoc-ref copy:%standard-phases 'install)
+ #:install-plan
+ '(("src" "include"
+ #:include-regexp ("\\.h$"))
+ ("lib" "lib"))
+ args)))
+ '("qtlockedfile" "qtpropertybrowser" "qtservice"
+ "qtsingleapplication" "qtsoap")))))))
+ (inputs
+ `(("qtbase" ,qtbase)))
+ (synopsis "Qt Solutions")
+ (description "QtSolutions are set of components that extends Qt.
+@itemize
+@item QtLockedFile: A class that extends QFile with advisory locking functions.
+@item QtPropertyBrowser: A framework that enables the user to edit a set of
+properties.
+@item QtService: A component useful for developing Windows services and Unix
+daemons.
+@item QtSingleApplication: A component that provides support for applications
+that can be only started once per user.
+@item QtSoap: A component that provides basic web service support with version
+1.1 of the SOAP protocol.
+@end itemize\n")
+ (home-page "https://doc.qt.io/archives/qq/qq09-qt-solutions.html")
+ (license license:lgpl2.1+))))
+
(define-public qt5ct
(package
(name "qt5ct")
--
2.30.1
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 9 Mar 2021 13:43
Re: Nextcloud Client (v17)
078fd1ea26421b2939f5691fd69f098b8bf52856.camel@student.tugraz.at
Am Dienstag, den 09.03.2021, 07:29 -0500 schrieb Raghav Gururajan:
Toggle quote (8 lines)
> Hi Leo!
>
> > Perhaps the comment should reflect that a little better. You might
> > also want to expand that during the unvendoring in the snippet, so
> > that
> > it's less confusing.
>
> Done.
The comment certainly improved FSVO improved, but it somehow does not
reduce my bikeshedding mood. In particular, I feel like we ought to do
this in the snippet.

Toggle quote (7 lines)
> > I think you should unvendor dependencies between the solutions, so
> > that
> > you can put them in "include/" directly (like putting the solutions
> > in
> > "/lib").
>
> Done.
You just masked an install error without actually unvendoring
dependencies.

Regards,
Leo
R
R
Raghav Gururajan wrote on 9 Mar 2021 16:16
Re: Nextcloud Client (v18)
899fd264-18bf-44b2-2175-1dfc6a64b9c0@raghavgururajan.name
Hi Leo!

Toggle quote (4 lines)
> The comment certainly improved FSVO improved, but it somehow does not
> reduce my bikeshedding mood. In particular, I feel like we ought to do
> this in the snippet.

Moved to snippet.

Toggle quote (3 lines)
> You just masked an install error without actually unvendoring
> dependencies.

Done.

Please find the attached v18.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 10 Mar 2021 00:24
9cf48e290f86798fc3c82a574ef52572a0566b7f.camel@student.tugraz.at
Am Dienstag, den 09.03.2021, 10:16 -0500 schrieb Raghav Gururajan:
Toggle quote (16 lines)
> Hi Leo!
>
> > The comment certainly improved FSVO improved, but it somehow does
> > not
> > reduce my bikeshedding mood. In particular, I feel like we ought
> > to do
> > this in the snippet.
>
> Moved to snippet.
>
> > You just masked an install error without actually unvendoring
> > dependencies.
>
> Done.
>
> Please find the attached v18.
I've applied some cosmetic and less cosmetic changes, reviewed the
licenses and pushed nextcloud as
82a2f182c59cd9adef4991e0adfb575fec95e52d.

Regards,
Leo
Closed
R
R
Raghav Gururajan wrote on 10 Mar 2021 04:46
69ce413a-cb2b-b0de-d12d-0c9bfa353ade@raghavgururajan.name
Hi Leo!

Toggle quote (5 lines)
>> Please find the attached v18.
> I've applied some cosmetic and less cosmetic changes, reviewed the
> licenses and pushed nextcloud as
> 82a2f182c59cd9adef4991e0adfb575fec95e52d.

Thanks so much for helping me with every step of the way. I appreciate
it. :-)

Regards,
RG.
Attachment: OpenPGP_signature
Closed
R
R
Raghav Gururajan wrote on 11 Mar 2021 07:45
b51df972-f763-3f85-0004-ca07fa9e4ea7@raghavgururajan.name
Hi Leo!

Toggle quote (8 lines)
>>> Please find the attached v18.
>> I've applied some cosmetic and less cosmetic changes, reviewed the
>> licenses and pushed nextcloud as
>> 82a2f182c59cd9adef4991e0adfb575fec95e52d.
>
> Thanks so much for helping me with every step of the way. I appreciate
> it. :-)

I have named the package wrong. Could you please merge the attached
patch please?

Thank you!

Regards,
RG.
From 587bda258971642915e19b7017d99b15c3ea7308 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Thu, 11 Mar 2021 01:39:49 -0500
Subject: [PATCH] gnu: Rename "nextcloud-client" to "nextcloud-desktop".

* gnu/packages/sync.scm (nextcloud-client): Rename to nextcloud-desktop.
---
gnu/packages/sync.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (18 lines)
diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index 2b64117dc6..d8e0855e06 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -68,9 +68,9 @@
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls))
-(define-public nextcloud-client
+(define-public nextcloud-desktop
(package
- (name "nextcloud-client")
+ (name "nextcloud-desktop")
(version "3.1.3")
(source
(origin
--
2.30.1
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 11 Mar 2021 07:49
4872912a500463eff900bd0e2d3cceb11da42e43.camel@student.tugraz.at
Am Donnerstag, den 11.03.2021, 01:45 -0500 schrieb Raghav Gururajan:
Toggle quote (14 lines)
> Hi Leo!
>
> > > > Please find the attached v18.
> > > I've applied some cosmetic and less cosmetic changes, reviewed
> > > the
> > > licenses and pushed nextcloud as
> > > 82a2f182c59cd9adef4991e0adfb575fec95e52d.
> >
> > Thanks so much for helping me with every step of the way. I
> > appreciate
> > it. :-)
>
> I have named the package wrong. Could you please merge the attached
> patch please?
I don't see the name "nextcloud-client" as particularly problematic.
It follows the same scheme as owncloud-client, which it is a fork of
IIUC. What would be the reason to prefer nextcloud-desktop?

Regards,
Leo
R
R
Raghav Gururajan wrote on 11 Mar 2021 08:44
36cbcaf5-c39a-6bfe-52d4-5209a93a3138@raghavgururajan.name
Hi Leo!

Toggle quote (4 lines)
> I don't see the name "nextcloud-client" as particularly problematic.
> It follows the same scheme as owncloud-client, which it is a fork of
> IIUC. What would be the reason to prefer nextcloud-desktop?

The upstream uses the name 'desktop' (nextcloud/desktop in contrast to
owncloud/client).

Also, It will be distinct from nextcloud-cli, if we get one in guix.

Regards,
RG.
Attachment: OpenPGP_signature
D
D
david larsson wrote on 12 Mar 2021 10:25
Re: bug#45889: Nextcloud Client (v18)
31b6267165d774f283c35a6ec6f7c232@selfhosted.xyz
On 2021-03-10 00:24, Leo Prikler wrote:
Toggle quote (24 lines)
> Am Dienstag, den 09.03.2021, 10:16 -0500 schrieb Raghav Gururajan:
>> Hi Leo!
>>
>> > The comment certainly improved FSVO improved, but it somehow does
>> > not
>> > reduce my bikeshedding mood. In particular, I feel like we ought
>> > to do
>> > this in the snippet.
>>
>> Moved to snippet.
>>
>> > You just masked an install error without actually unvendoring
>> > dependencies.
>>
>> Done.
>>
>> Please find the attached v18.
> I've applied some cosmetic and less cosmetic changes, reviewed the
> licenses and pushed nextcloud as
> 82a2f182c59cd9adef4991e0adfb575fec95e52d.
>
> Regards,
> Leo

This is great news! I have really been looking forward to this. Thank
you both for almost 3 months of great work on this!

Best regards,
David
R
?