unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* %desktop-services now depends on Qt 5, via colord
       [not found] ` <20180621165418.1C11520349@vcs0.savannah.gnu.org>
@ 2018-07-14 18:00   ` Mark H Weaver
  2018-07-14 19:26     ` Efraim Flashner
  0 siblings, 1 reply; 10+ messages in thread
From: Mark H Weaver @ 2018-07-14 18:00 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: guix-devel

Hi Tobias,

me@tobias.gr (Tobias Geerinckx-Rice) writes:

> nckx pushed a commit to branch master
> in repository guix.
>
> commit 407ef4b38ad394e0b63320b029d95afdd3da6888
> Author: Tobias Geerinckx-Rice <me@tobias.gr>
> Date:   Tue Jun 19 20:02:42 2018 +0200
>
>     gnu: hplip: Add Qt GUI support.
>     
>     Some tools (like ‘hp-toolbox’) still refuse to launch, but at least
>     others (like ‘hp-systrax’) now seem to work.
>     
>     * gnu/packages/cups.scm (hplip)[arguments]: Add #configure-flags for Qt.
>     [inputs]: Add python-gobject and python-pyqt.

Until this commit, it was possible to build a desktop system without Qt.
No longer.

This commit effectively added most of Qt 5 as a new dependency of
'colord' (via 'sane-backends' and 'hplip'), which in turn means that
_any_ GuixSD system that uses %desktop-services now depends on Qt 5
libraries, including:

   qtbase
   qtconnectivity
   qtdeclarative
   qtlocation
   qtmultimedia
   qtsensors
   qtserialport
   qtsvg
   qttools
   qtwebchannel
   qtwebsockets
   qtx11extras
   qtxmlpatterns

I would greatly prefer to preserve a straightforward way to build a
desktop system, e.g. a GNOME system, without building Qt 5.

Thoughts?

       Mark

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-14 18:00   ` %desktop-services now depends on Qt 5, via colord Mark H Weaver
@ 2018-07-14 19:26     ` Efraim Flashner
  2018-07-14 20:32       ` Nils Gillmann
  2018-07-16 16:49       ` Mark H Weaver
  0 siblings, 2 replies; 10+ messages in thread
From: Efraim Flashner @ 2018-07-14 19:26 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1864 bytes --]

On Sat, Jul 14, 2018 at 02:00:38PM -0400, Mark H Weaver wrote:
> Hi Tobias,
> 
> me@tobias.gr (Tobias Geerinckx-Rice) writes:
> 
> > nckx pushed a commit to branch master
> > in repository guix.
> >
> > commit 407ef4b38ad394e0b63320b029d95afdd3da6888
> > Author: Tobias Geerinckx-Rice <me@tobias.gr>
> > Date:   Tue Jun 19 20:02:42 2018 +0200
> >
> >     gnu: hplip: Add Qt GUI support.
> >     
> >     Some tools (like ‘hp-toolbox’) still refuse to launch, but at least
> >     others (like ‘hp-systrax’) now seem to work.
> >     
> >     * gnu/packages/cups.scm (hplip)[arguments]: Add #configure-flags for Qt.
> >     [inputs]: Add python-gobject and python-pyqt.
> 
> Until this commit, it was possible to build a desktop system without Qt.
> No longer.
> 
> This commit effectively added most of Qt 5 as a new dependency of
> 'colord' (via 'sane-backends' and 'hplip'), which in turn means that
> _any_ GuixSD system that uses %desktop-services now depends on Qt 5
> libraries, including:
> 
>    qtbase
>    qtconnectivity
>    qtdeclarative
>    qtlocation
>    qtmultimedia
>    qtsensors
>    qtserialport
>    qtsvg
>    qttools
>    qtwebchannel
>    qtwebsockets
>    qtx11extras
>    qtxmlpatterns
> 
> I would greatly prefer to preserve a straightforward way to build a
> desktop system, e.g. a GNOME system, without building Qt 5.
> 
> Thoughts?
> 
>        Mark
> 

It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
leave hplip as-is and have sane-backends depend on a Qt-less
hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-14 19:26     ` Efraim Flashner
@ 2018-07-14 20:32       ` Nils Gillmann
  2018-07-16 16:49       ` Mark H Weaver
  1 sibling, 0 replies; 10+ messages in thread
From: Nils Gillmann @ 2018-07-14 20:32 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Efraim Flashner transcribed 2.9K bytes:
> On Sat, Jul 14, 2018 at 02:00:38PM -0400, Mark H Weaver wrote:
> > Hi Tobias,
> > 
> > me@tobias.gr (Tobias Geerinckx-Rice) writes:
> > 
> > > nckx pushed a commit to branch master
> > > in repository guix.
> > >
> > > commit 407ef4b38ad394e0b63320b029d95afdd3da6888
> > > Author: Tobias Geerinckx-Rice <me@tobias.gr>
> > > Date:   Tue Jun 19 20:02:42 2018 +0200
> > >
> > >     gnu: hplip: Add Qt GUI support.
> > >     
> > >     Some tools (like ‘hp-toolbox’) still refuse to launch, but at least
> > >     others (like ‘hp-systrax’) now seem to work.
> > >     
> > >     * gnu/packages/cups.scm (hplip)[arguments]: Add #configure-flags for Qt.
> > >     [inputs]: Add python-gobject and python-pyqt.
> > 
> > Until this commit, it was possible to build a desktop system without Qt.
> > No longer.
> > 
> > This commit effectively added most of Qt 5 as a new dependency of
> > 'colord' (via 'sane-backends' and 'hplip'), which in turn means that
> > _any_ GuixSD system that uses %desktop-services now depends on Qt 5
> > libraries, including:
> > 
> >    qtbase
> >    qtconnectivity
> >    qtdeclarative
> >    qtlocation
> >    qtmultimedia
> >    qtsensors
> >    qtserialport
> >    qtsvg
> >    qttools
> >    qtwebchannel
> >    qtwebsockets
> >    qtx11extras
> >    qtxmlpatterns
> > 
> > I would greatly prefer to preserve a straightforward way to build a
> > desktop system, e.g. a GNOME system, without building Qt 5.
> > 
> > Thoughts?
> > 
> >        Mark
> > 
> 
> It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
> leave hplip as-is and have sane-backends depend on a Qt-less
> hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?

Yes, please. This was my criticism for not making a hplip-qt like I was told
when I worked on it.

Furtermore it might be time to make a "minimal" (subjective) and
"normal" desktop sets for services.

> -- 
> Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
> GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
> Confidentiality cannot be guaranteed on emails sent or received unencrypted

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-14 19:26     ` Efraim Flashner
  2018-07-14 20:32       ` Nils Gillmann
@ 2018-07-16 16:49       ` Mark H Weaver
  2018-07-19 14:54         ` Ludovic Courtès
  1 sibling, 1 reply; 10+ messages in thread
From: Mark H Weaver @ 2018-07-16 16:49 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Hi Efraim,

Efraim Flashner <efraim@flashner.co.il> writes:
> It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
> leave hplip as-is and have sane-backends depend on a Qt-less
> hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?

I haven't looked closely, but that sounds like a good approach.

     Thanks!
       Mark

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-16 16:49       ` Mark H Weaver
@ 2018-07-19 14:54         ` Ludovic Courtès
  2018-07-19 18:20           ` Efraim Flashner
  2018-07-19 18:57           ` Brett Gilio
  0 siblings, 2 replies; 10+ messages in thread
From: Ludovic Courtès @ 2018-07-19 14:54 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Hello,

Mark H Weaver <mhw@netris.org> skribis:

> Efraim Flashner <efraim@flashner.co.il> writes:
>> It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
>> leave hplip as-is and have sane-backends depend on a Qt-less
>> hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?
>
> I haven't looked closely, but that sounds like a good approach.

+1 for not having Qt in %desktop-services.

Ludo’.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-19 14:54         ` Ludovic Courtès
@ 2018-07-19 18:20           ` Efraim Flashner
  2018-07-26 13:33             ` Ludovic Courtès
  2018-07-27 22:08             ` Mark H Weaver
  2018-07-19 18:57           ` Brett Gilio
  1 sibling, 2 replies; 10+ messages in thread
From: Efraim Flashner @ 2018-07-19 18:20 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 957 bytes --]

On Thu, Jul 19, 2018 at 04:54:39PM +0200, Ludovic Courtès wrote:
> Hello,
> 
> Mark H Weaver <mhw@netris.org> skribis:
> 
> > Efraim Flashner <efraim@flashner.co.il> writes:
> >> It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
> >> leave hplip as-is and have sane-backends depend on a Qt-less
> >> hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?
> >
> > I haven't looked closely, but that sounds like a good approach.
> 
> +1 for not having Qt in %desktop-services.
> 

I feel like I got volunteered to make the patch ;p.

I also changed the documentation to suggest using 'hplip-minimal' in the
cups service, since that's another place where it could be brought in
easily.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #1.2: 0001-gnu-Add-hplip-minimal.patch --]
[-- Type: text/plain, Size: 4538 bytes --]

From b8c78ac0b6904c92cb4253c0eec72818469d90cf Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Thu, 19 Jul 2018 21:16:43 +0300
Subject: [PATCH] gnu: Add hplip-minimal.

* gnu/packages/cups.scm (hplip-minimal): New variable.
* gnu/packages/scanner.scm (sane-backends)[inputs]: Replace hplip with
hplip-minimal.
* doc/guix.texi (Printing Services): Change example code to use
hplip-minimal in place of hplip. Add note explaining when use hplip.
---
 doc/guix.texi            |  8 ++++++--
 gnu/packages/cups.scm    | 19 +++++++++++++++++--
 gnu/packages/scanner.scm |  3 ++-
 3 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 84347d156..541119d1e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -12141,7 +12141,7 @@ secure connections to the print server.
 
 Suppose you want to enable the Web interface of CUPS and also add
 support for Epson printers @i{via} the @code{escpr} package and for HP
-printers @i{via} the @code{hplip} package.  You can do that directly,
+printers @i{via} the @code{hplip-minimal} package.  You can do that directly,
 like this (you need to use the @code{(gnu packages cups)} module):
 
 @example
@@ -12149,9 +12149,13 @@ like this (you need to use the @code{(gnu packages cups)} module):
          (cups-configuration
            (web-interface? #t)
            (extensions
-             (list cups-filters escpr hplip))))
+             (list cups-filters escpr hplip-minimal))))
 @end example
 
+Note: If you wish to use the Qt5 based GUI which comes with the hplip
+package then it is suggested that you install the @code{hplip} package,
+either in your OS configuration file or as your user.
+
 The available configuration parameters follow.  Each parameter
 definition is preceded by its type; for example, @samp{string-list foo}
 indicates that the @code{foo} parameter should be specified as a list of
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index bfc587a6f..04d4e3fad 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
@@ -46,7 +46,9 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix download)
   #:use-module ((guix licenses) #:prefix license:)
-  #:use-module (guix packages))
+  #:use-module (guix packages)
+  #:use-module (guix utils)
+  #:use-module (srfi srfi-1))
 
 (define-public cups-filters
   (package
@@ -520,6 +522,19 @@ device-specific programs to convert and print many types of files.")
      `(("perl" ,perl)
        ("pkg-config" ,pkg-config)))))
 
+(define-public hplip-minimal
+  (package
+    (inherit hplip)
+    (name "hplip-minimal")
+    (arguments
+      (substitute-keyword-arguments (package-arguments hplip)
+        ((#:configure-flags cf)
+         ``(,@(delete "--enable-qt5" ,cf)))))
+    (inputs
+     `(,@(fold alist-delete (package-inputs hplip)
+               '("python-pygobject" "python-pyqt"))))
+    (synopsis "GUI-less version of hplip")))
+
 (define-public foomatic-filters
   (package
     (name "foomatic-filters")
diff --git a/gnu/packages/scanner.scm b/gnu/packages/scanner.scm
index 33a573d53..d030d8ade 100644
--- a/gnu/packages/scanner.scm
+++ b/gnu/packages/scanner.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -102,7 +103,7 @@ package contains the library, but no drivers.")
     (inherit sane-backends-minimal)
     (name "sane-backends")
     (inputs
-     `(("hplip" ,(@ (gnu packages cups) hplip))
+     `(("hplip" ,(@ (gnu packages cups) hplip-minimal))
        ,@(package-inputs sane-backends-minimal)))
     (arguments
      (substitute-keyword-arguments (package-arguments sane-backends-minimal)
-- 
2.18.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-19 14:54         ` Ludovic Courtès
  2018-07-19 18:20           ` Efraim Flashner
@ 2018-07-19 18:57           ` Brett Gilio
  2018-07-19 19:37             ` Leo Famulari
  1 sibling, 1 reply; 10+ messages in thread
From: Brett Gilio @ 2018-07-19 18:57 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel


Ludovic Courtès writes:

> Hello,
>
> Mark H Weaver <mhw@netris.org> skribis:
>
>> Efraim Flashner <efraim@flashner.co.il> writes:
>>> It sounds like adding Qt to hplip adds plenty of GUI goodies. 
>>> Could we
>>> leave hplip as-is and have sane-backends depend on a Qt-less
>>> hplip-minimal or hplip-nogui, since it shouldn't need any GUI 
>>> from hplip?
>>
>> I haven't looked closely, but that sounds like a good approach.
>
> +1 for not having Qt in %desktop-services.
>
> Ludo’.

I really think that having Qt in %desktop-services creates an 
issue
regarding not only the necessary dependencies, but also the fact 
that Qt
has a propensity to issue non-free or semi-free components in 
relevant
updates to their libraries and framework. I only worry about the
possible predictability of this happening to the required 
dependencies
and ultimately causing a conflict with the freedom of the 
end-user.

I might be over-thinking it.

But, another issue is that some people with limited computer 
resources
might find that having these Qt dependencies to be a real problem.

-- 
Brett M. Gilio
Free Software Foundation, Member
https://parabola.nu | https://emacs.org

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-19 18:57           ` Brett Gilio
@ 2018-07-19 19:37             ` Leo Famulari
  0 siblings, 0 replies; 10+ messages in thread
From: Leo Famulari @ 2018-07-19 19:37 UTC (permalink / raw)
  To: Brett Gilio; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 384 bytes --]

On Thu, Jul 19, 2018 at 01:57:51PM -0500, Brett Gilio wrote:
> I really think that having Qt in %desktop-services creates an issue
> regarding not only the necessary dependencies, but also the fact that Qt
> has a propensity to issue non-free or semi-free components in relevant
> updates to their libraries and framework.

Can you give more details about the non-free Qt components?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-19 18:20           ` Efraim Flashner
@ 2018-07-26 13:33             ` Ludovic Courtès
  2018-07-27 22:08             ` Mark H Weaver
  1 sibling, 0 replies; 10+ messages in thread
From: Ludovic Courtès @ 2018-07-26 13:33 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Hello Efraim,

Efraim Flashner <efraim@flashner.co.il> skribis:

> On Thu, Jul 19, 2018 at 04:54:39PM +0200, Ludovic Courtès wrote:
>> Hello,
>> 
>> Mark H Weaver <mhw@netris.org> skribis:
>> 
>> > Efraim Flashner <efraim@flashner.co.il> writes:
>> >> It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
>> >> leave hplip as-is and have sane-backends depend on a Qt-less
>> >> hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?
>> >
>> > I haven't looked closely, but that sounds like a good approach.
>> 
>> +1 for not having Qt in %desktop-services.
>> 
>
> I feel like I got volunteered to make the patch ;p.

Heheh.  :-)

> I also changed the documentation to suggest using 'hplip-minimal' in the
> cups service, since that's another place where it could be brought in
> easily.

LGTM!

Thank you for the quick reply,
Ludo’.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: %desktop-services now depends on Qt 5, via colord
  2018-07-19 18:20           ` Efraim Flashner
  2018-07-26 13:33             ` Ludovic Courtès
@ 2018-07-27 22:08             ` Mark H Weaver
  1 sibling, 0 replies; 10+ messages in thread
From: Mark H Weaver @ 2018-07-27 22:08 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Efraim Flashner <efraim@flashner.co.il> writes:

> On Thu, Jul 19, 2018 at 04:54:39PM +0200, Ludovic Courtès wrote:
>> Hello,
>> 
>> Mark H Weaver <mhw@netris.org> skribis:
>> 
>> > Efraim Flashner <efraim@flashner.co.il> writes:
>> >> It sounds like adding Qt to hplip adds plenty of GUI goodies. Could we
>> >> leave hplip as-is and have sane-backends depend on a Qt-less
>> >> hplip-minimal or hplip-nogui, since it shouldn't need any GUI from hplip?
>> >
>> > I haven't looked closely, but that sounds like a good approach.
>> 
>> +1 for not having Qt in %desktop-services.
>> 
>
> I feel like I got volunteered to make the patch ;p.
>
> I also changed the documentation to suggest using 'hplip-minimal' in the
> cups service, since that's another place where it could be brought in
> easily.

Thanks so much for taking care of this Efraim!

      Mark

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-07-27 22:09 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20180621165415.31705.87450@vcs0.savannah.gnu.org>
     [not found] ` <20180621165418.1C11520349@vcs0.savannah.gnu.org>
2018-07-14 18:00   ` %desktop-services now depends on Qt 5, via colord Mark H Weaver
2018-07-14 19:26     ` Efraim Flashner
2018-07-14 20:32       ` Nils Gillmann
2018-07-16 16:49       ` Mark H Weaver
2018-07-19 14:54         ` Ludovic Courtès
2018-07-19 18:20           ` Efraim Flashner
2018-07-26 13:33             ` Ludovic Courtès
2018-07-27 22:08             ` Mark H Weaver
2018-07-19 18:57           ` Brett Gilio
2018-07-19 19:37             ` Leo Famulari

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).