* 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.