all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* split up python-pyqt or python-matplotlib?
@ 2018-03-19 13:21 Ricardo Wurmus
  2018-03-19 16:55 ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Ricardo Wurmus @ 2018-03-19 13:21 UTC (permalink / raw)
  To: guix-devel

Hi Guix,

“python-pyqt” depends on all of Qt.  “python-pyqt” is also an input to
“python-matplotlib” because that package has a Qt rendering backend.

I wonder if we can make this lighter by default.  The scientific Python
stack depends on “python-matplotlib”, but it seems like a very expensive
dependency as it pulls in *all* of Qt *and* Gtk+.

Is it feasible to split up “python-pyqt”?  If not, can we reasonably
decouple matplotlib from pyqt?

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

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

* Re: split up python-pyqt or python-matplotlib?
  2018-03-19 13:21 split up python-pyqt or python-matplotlib? Ricardo Wurmus
@ 2018-03-19 16:55 ` Ludovic Courtès
  2018-03-19 22:41   ` Hartmut Goebel
  0 siblings, 1 reply; 3+ messages in thread
From: Ludovic Courtès @ 2018-03-19 16:55 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

Hello,

Ricardo Wurmus <rekado@elephly.net> skribis:

> “python-pyqt” depends on all of Qt.  “python-pyqt” is also an input to
> “python-matplotlib” because that package has a Qt rendering backend.
>
> I wonder if we can make this lighter by default.  The scientific Python
> stack depends on “python-matplotlib”, but it seems like a very expensive
> dependency as it pulls in *all* of Qt *and* Gtk+.
>
> Is it feasible to split up “python-pyqt”?  If not, can we reasonably
> decouple matplotlib from pyqt?

I’m no Pythonista, but would it work to create “python-matplotlib-qt”,
which would contain nothing but the Qt rendering backend?

That way, assuming rendering backends are searched for at run time,
people could choose to install python-matplotlib-qt if they need this
backend.  (Similar to what I did with ‘guile’ vs. ‘guile-readline’.)

HTH,
Ludo’.

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

* Re: split up python-pyqt or python-matplotlib?
  2018-03-19 16:55 ` Ludovic Courtès
@ 2018-03-19 22:41   ` Hartmut Goebel
  0 siblings, 0 replies; 3+ messages in thread
From: Hartmut Goebel @ 2018-03-19 22:41 UTC (permalink / raw)
  To: guix-devel

Am 19.03.2018 um 17:55 schrieb Ludovic Courtès:
> I’m no Pythonista, but would it work to create “python-matplotlib-qt”,
> which would contain nothing but the Qt rendering backend?

This sounds like a good idea. Additionally I suggest doing to for *all*
(relevant) backends, eg. gtk+, tk, cairo. A lazy way would be to only
remove the inputs from 'python-matplot' and for 'python-matplot-qt' (et
al.) include no package but only the input. (Much like "meta" packages
in Debian).

List of backends [2]:

# GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
# MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
# Template.


Names are are not case-sensitive [1]

With a typical installation of matplotlib, such as from a binary
installer or a linux distribution package, a good default backend will
already be set, allowing both interactive work and plotting from
scripts, with output to the screen and/or to a file, so at least
initially you will not need to use any of the methods given above. [1]

[1] https://matplotlib.org/faq/usage_faq.html#what-is-a-backend
[2] https://matplotlib.org/users/customizing.html#a-sample-matplotlibrc-file

-- 
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com               |
| www.crazy-compilers.com | compilers which you thought are impossible |

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

end of thread, other threads:[~2018-03-19 22:41 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-19 13:21 split up python-pyqt or python-matplotlib? Ricardo Wurmus
2018-03-19 16:55 ` Ludovic Courtès
2018-03-19 22:41   ` Hartmut Goebel

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.