Bug#952390: paraview: 3rd party plugins dir violates directory standards

2020-02-23 Thread Drew Parsons
Package: paraview
Version: 5.7.0-4+b2
Followup-For: Bug #952390
Control: forwarded -1 https://gitlab.kitware.com/paraview/paraview/issues/19714

Reported upstream at
https://gitlab.kitware.com/paraview/paraview/issues/19714



Bug#952390: paraview: 3rd party plugins dir violates directory standards

2020-02-23 Thread Drew Parsons
Package: paraview
Version: 5.7.0-4+b2
Severity: normal

The paraview Plugins Manager (Tools->Manage Plugins) says it looks for
3rd party plugins in /usr/bin/plugins.

This does work (meshio-tools 4.0.4-1 provides a plugin there), but it
violates standard directory layout and triggers a lintian error
"subdir-in-usr-bin".

Unreleased docs at
https://kitware.github.io/paraview-docs/latest/cxx/PluginHowto.html
report that recognised plugin paths also include 
"A plugins subdirectory under the paraview-X.Y directory in the
library path",
i.e. in /usr/lib/x86_64-linux-gnu/paraview-5.7/plugins/
(so it looks like the /usr/bin/plugins path problem might be fixed in
paraview 3.8)

There are 2 issues installing 3rd party plugins in that directory.

Firstly, a plugin might (perhaps) not be specific to a given paraview
version, in which case it would be unhelpful to have to specify the
5.7.  A tidy generic path could be
/usr/lib/x86_64-linux-gnu/paraview/plugins/
Possibly even just /usr/lib/paraview/plugins/
(similar to how python modules are handled for python3.7 and python3.8)

Secondly, not all plugins are binaries. Python scripts for instance.
For these a useful plugin path could be
/usr/share/paraview/plugins/

I'm not entirely certain if the versionless lib path
/usr/lib/x86_64-linux-gnu/paraview/plugins/ (or
/usr/lib/paraview/plugins/) actually makes sense.
Perhaps compiled binary plugins are necessarily version-specific.

But an arch-independent path /usr/share/paraview/plugins could I think
be helpful, and probably worth pushing upstream.


-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.4.0-4-amd64 (SMP w/4 CPU cores)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_AU:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages paraview depends on:
ii  libavcodec58   7:4.2.2-1+b1
ii  libavformat58  7:4.2.2-1+b1
ii  libavutil567:4.2.2-1+b1
ii  libc6  2.29-10
ii  libdouble-conversion3  3.1.5-5
ii  libexpat1  2.2.9-1
ii  libfreetype6   2.10.1-2
ii  libgcc-s1 [libgcc1]10-20200211-1
ii  libgcc11:10-20200211-1
ii  libgdal26  3.0.4+dfsg-1
ii  libgl1 1.3.0-7
ii  libglew2.1 2.1.0-4+b1
ii  libhdf5-1031.10.4+repack-10
ii  libjpeg62-turbo1:1.5.2-2+b1
ii  liblz4-1   1.9.2-2
ii  liblzma5   5.2.4-1+b1
ii  libopenmpi34.0.2-5
ii  libpdal-base9  2.0.1+ds-1+b1
ii  libpng16-161.6.37-2
ii  libpython3.7   3.7.6-1+b1
ii  libqt5core5a   5.12.5+dfsg-8
ii  libqt5gui5 5.12.5+dfsg-8
ii  libqt5help55.12.5-2+b1
ii  libqt5network5 5.12.5+dfsg-8
ii  libqt5widgets5 5.12.5+dfsg-8
ii  libqt5x11extras5   5.12.5-1
ii  libstdc++6 10-20200211-1
ii  libswscale57:4.2.2-1+b1
ii  libtiff5   4.1.0+git191117-2
ii  libx11-6   2:1.6.8-1
ii  libxml22.9.10+dfsg-3
ii  libxt6 1:1.1.5-1+b3
ii  python3-autobahn   17.10.1+dfsg1-6
ii  python3-matplotlib 3.1.2-2
ii  python3-mpi4py 3.0.3-4
ii  python3-six1.14.0-2
ii  python3-twisted18.9.0-6
ii  tcl [tclsh]8.6.9+1+b1
ii  zlib1g 1:1.2.11.dfsg-1.2

Versions of packages paraview recommends:
ii  mpi-default-bin  1.13
ii  paraview-doc 5.7.0-4
pn  paraview-python  

Versions of packages paraview suggests:
ii  h5utils 1.13.1-3+b1
ii  hdf5-tools  1.10.4+repack-10

-- no debconf information