Packaging certain libraries as "end-user software"
I'm wondering about the shared library packaging requirements in Policy
for the special case of scientific libraries that are not intended to be
used by applications, but are to be used by end-users directly, and that
do not have a stable ABI.
In particular does splitting out the shared library package provide
anything useful here? It means additional work for no benefit I can see
as parallel installation of multiple versions would require having
multiple -dev packages as well to be useful...
I'm considering to move the shared libraries into the -dev package, have
lib*-dev Provides: lib*-x.y.z and shlibs generate dependencies on the
provided virtual package. While no applications depend on the shared
libraries, the virtual packages are needed as the entire framework is
split over multiple source packages providing shared libraries with
dependencies between them. I'm thinking of dune-* / libdune-*-dev here,
but the same probably applies to other packages like deal.ii as well.
Does anyone see any problems with this plan?