From fec67b3bf02e003eb05c43e7b6de861879db0d20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Cs=C3=A1rdi?= Date: Fri, 18 Aug 2023 20:06:40 +0200 Subject: [PATCH 1/3] Support runtime packages For Debian and Ubuntu only. --- rules/QuantLib.json | 3 +++ rules/apparmor.json | 1 + rules/atk.json | 1 + rules/berkeleydb.json | 1 + rules/boost.json | 1 + rules/cairo.json | 1 + rules/coin-or-clp.json | 1 + rules/coinor-symphony.json | 3 ++- rules/eigen.json | 1 + rules/fftw3.json | 1 + rules/fontconfig.json | 5 ++-- rules/freetype.json | 1 + rules/fribidi.json | 1 + rules/gdal.json | 3 +++ rules/geos.json | 1 + rules/glib.json | 1 + rules/glpk.json | 5 ++-- rules/glu.json | 1 + rules/gmp.json | 1 + rules/gpgme.json | 1 + rules/gsl.json | 43 +++++++++++++++++++++++++++++ rules/gtk.json | 1 + rules/harfbuzz.json | 1 + rules/hdf5.json | 39 +++++++++++++++++++++++++++ rules/hiredis.json | 1 + rules/imagemagick.json | 1 + rules/leptonica.json | 1 + rules/libarchive.json | 1 + rules/libavfilter.json | 37 +++++++++++++++++++++++++ rules/libbsd.json | 1 + rules/libcurl.json | 1 + rules/libgit2.json | 55 ++++++++++++++++++++++++++++++++++++++ rules/libicu.json | 55 ++++++++++++++++++++++++++++++++++++++ rules/libjpeg.json | 9 ++++++- rules/libjq.json | 5 ++-- rules/libmagic.json | 1 + rules/libmysqlclient.json | 2 ++ rules/libpng.json | 1 + rules/libprotobuf.json | 43 +++++++++++++++++++++++++++++ rules/librsvg2.json | 1 + rules/libsecret.json | 1 + rules/libsndfile.json | 1 + rules/libsodium.json | 1 + rules/libssh2.json | 1 + rules/libtiff.json | 27 +++++++++++++++++++ rules/libwebp.json | 32 ++++++++++++++++++++++ rules/libxml2.json | 1 + rules/libxslt.json | 1 + rules/mpfr.json | 1 + rules/netcdf4.json | 55 ++++++++++++++++++++++++++++++++++++++ rules/odbc.json | 32 ++++++++++++++++++++++ rules/openbabel.json | 38 ++++++++++++++++++++++++++ rules/opencl.json | 1 + rules/openssl.json | 32 ++++++++++++++++++++++ rules/pango.json | 8 ++++++ rules/poppler.json | 1 + rules/postgresql.json | 1 + rules/proj.json | 55 ++++++++++++++++++++++++++++++++++++++ rules/redland.json | 1 + rules/sasl.json | 1 + rules/sqlite3.json | 1 + rules/tesseract.json | 27 +++++++++++++++++++ rules/tk.json | 5 ++-- rules/udunits2.json | 1 + rules/v8.json | 43 +++++++++++++++++++++++++++++ rules/xft.json | 1 + rules/zeromq.json | 3 ++- rules/zlib.json | 1 + schema.json | 6 +++++ schema.template.json | 6 +++++ test/test-packages.sh | 6 +++++ 71 files changed, 709 insertions(+), 15 deletions(-) diff --git a/rules/QuantLib.json b/rules/QuantLib.json index 001e436..b379a98 100644 --- a/rules/QuantLib.json +++ b/rules/QuantLib.json @@ -7,6 +7,9 @@ "packages": [ "libquantlib0-dev" ], + "runtime_packages": [ + "libquantlib0v5" + ], "constraints": [ { "os": "linux", diff --git a/rules/apparmor.json b/rules/apparmor.json index a1126ab..baae72e 100644 --- a/rules/apparmor.json +++ b/rules/apparmor.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libapparmor-dev"], + "runtime_packages": ["libapparmor1"], "constraints": [ { "os": "linux", diff --git a/rules/atk.json b/rules/atk.json index 733b7ce..86fd434 100644 --- a/rules/atk.json +++ b/rules/atk.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libatk1.0-dev"], + "runtime_packages": ["libatk1.0-0"], "constraints": [ { "os": "linux", diff --git a/rules/berkeleydb.json b/rules/berkeleydb.json index ead3a39..a15a96d 100644 --- a/rules/berkeleydb.json +++ b/rules/berkeleydb.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libdb-dev"], + "runtime_packages": ["libdb5.3"], "constraints": [ { "os": "linux", diff --git a/rules/boost.json b/rules/boost.json index c2b74c0..0417956 100644 --- a/rules/boost.json +++ b/rules/boost.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libboost-all-dev"], + "runtime_packages": [], "constraints": [ { "os": "linux", diff --git a/rules/cairo.json b/rules/cairo.json index 8e0b7b8..72c30d8 100644 --- a/rules/cairo.json +++ b/rules/cairo.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libcairo2-dev"], + "runtime_packages": ["libcairo2"], "constraints": [ { "os": "linux", diff --git a/rules/coin-or-clp.json b/rules/coin-or-clp.json index 452ceae..18a27bc 100644 --- a/rules/coin-or-clp.json +++ b/rules/coin-or-clp.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["coinor-libclp-dev"], + "runtime_packages": ["coinor-libclp1"], "constraints": [ { "os": "linux", diff --git a/rules/coinor-symphony.json b/rules/coinor-symphony.json index f959e38..3c90a7f 100644 --- a/rules/coinor-symphony.json +++ b/rules/coinor-symphony.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["coinor-symphony", "coinor-libsymphony-dev"], + "runtime_packages": ["coinor-symphony"], "constraints": [ { "os": "linux", @@ -24,4 +25,4 @@ ] } ] - } \ No newline at end of file + } diff --git a/rules/eigen.json b/rules/eigen.json index 9bcff03..297be30 100644 --- a/rules/eigen.json +++ b/rules/eigen.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libeigen3-dev"], + "runtime_packages": [], "constraints": [ { "os": "linux", diff --git a/rules/fftw3.json b/rules/fftw3.json index 0b3571b..ab81279 100644 --- a/rules/fftw3.json +++ b/rules/fftw3.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libfftw3-dev"], + "runtime_packages": ["libfftw3-bin"], "constraints": [ { "os": "linux", diff --git a/rules/fontconfig.json b/rules/fontconfig.json index b732dcc..1495670 100644 --- a/rules/fontconfig.json +++ b/rules/fontconfig.json @@ -4,9 +4,8 @@ ], "dependencies": [ { - "packages": [ - "libfontconfig1-dev" - ], + "packages": ["libfontconfig1-dev"], + "runtime_packages": ["libfontconfig1"], "constraints": [ { "os": "linux", diff --git a/rules/freetype.json b/rules/freetype.json index 9cc0283..d705c6e 100644 --- a/rules/freetype.json +++ b/rules/freetype.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libfreetype6-dev"], + "runtime_packages": ["libfreetype6"], "constraints": [ { "os": "linux", diff --git a/rules/fribidi.json b/rules/fribidi.json index de717dd..25a6374 100644 --- a/rules/fribidi.json +++ b/rules/fribidi.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libfribidi-dev"], + "runtime_packages": ["libfribidi0"], "constraints": [ { "os": "linux", diff --git a/rules/gdal.json b/rules/gdal.json index 0f656d2..1e47e08 100644 --- a/rules/gdal.json +++ b/rules/gdal.json @@ -27,6 +27,9 @@ "libgdal-dev", "gdal-bin" ], + "runtime_packages": [ + "gdal-bin" + ], "constraints": [ { "os": "linux", diff --git a/rules/geos.json b/rules/geos.json index 49e41ec..39b82fa 100644 --- a/rules/geos.json +++ b/rules/geos.json @@ -18,6 +18,7 @@ }, { "packages": ["libgeos-dev"], + "runtime_packages": ["libgeos-c1v5"], "constraints": [ { "os": "linux", diff --git a/rules/glib.json b/rules/glib.json index 409ff33..ebc2c12 100644 --- a/rules/glib.json +++ b/rules/glib.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libglib2.0-dev"], + "runtime_packages": ["libglib2.0-bin"], "constraints": [ { "os": "linux", diff --git a/rules/glpk.json b/rules/glpk.json index 565b8eb..2f21ba1 100644 --- a/rules/glpk.json +++ b/rules/glpk.json @@ -4,9 +4,8 @@ ], "dependencies": [ { - "packages": [ - "libglpk-dev" - ], + "packages": ["libglpk-dev"], + "runtime_packages": ["libglpk40"], "constraints": [ { "os": "linux", diff --git a/rules/glu.json b/rules/glu.json index c716605..599964f 100644 --- a/rules/glu.json +++ b/rules/glu.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libglu1-mesa-dev"], + "runtime_packages": ["libglu1-mesa"], "constraints": [ { "os": "linux", diff --git a/rules/gmp.json b/rules/gmp.json index 81ace29..c0ecd98 100644 --- a/rules/gmp.json +++ b/rules/gmp.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libgmp3-dev"], + "runtime_packages": ["libgmp10", "libgmpxx4ldbl"], "constraints": [ { "os": "linux", diff --git a/rules/gpgme.json b/rules/gpgme.json index d504566..79ccef7 100644 --- a/rules/gpgme.json +++ b/rules/gpgme.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libgpgme11-dev"], + "runtime_packages": ["libgpgme11"], "constraints": [ { "os": "linux", diff --git a/rules/gsl.json b/rules/gsl.json index 8e58943..4b68c87 100644 --- a/rules/gsl.json +++ b/rules/gsl.json @@ -1,6 +1,49 @@ { "patterns": ["\\blibgsl\\b", "\\bgsl\\b", "\\bgnu scientific library\\b"], "dependencies": [ + { + "packages": ["libgsl0-dev"], + "runtime_packages": ["libgsl23"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libgsl0-dev"], + "runtime_packages": ["libgsl25"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libgsl0-dev"], + "runtime_packages": ["libgsl27"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libgsl0-dev"], "constraints": [ diff --git a/rules/gtk.json b/rules/gtk.json index 9f75a10..2bf1b4e 100644 --- a/rules/gtk.json +++ b/rules/gtk.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libgtk2.0-dev"], + "runtime_packages": ["libgtk2.0-0"], "constraints": [ { "os": "linux", diff --git a/rules/harfbuzz.json b/rules/harfbuzz.json index 5d521f0..a58120d 100644 --- a/rules/harfbuzz.json +++ b/rules/harfbuzz.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libharfbuzz-dev"], + "runtime_packages": ["libharfbuzz0b"], "constraints": [ { "os": "linux", diff --git a/rules/hdf5.json b/rules/hdf5.json index 2e2549b..915054b 100644 --- a/rules/hdf5.json +++ b/rules/hdf5.json @@ -1,6 +1,45 @@ { "patterns": ["\\bhdf5\\b", "\\blibhdf5\\b"], "dependencies": [ + { + "packages": ["libhdf5-dev"], + "runtime_packages": ["libhdf5-103", "libhdf5-cpp-103"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libhdf5-dev"], + "runtime_packages": [ + "libhdf5-103-1", + "libhdf5-fortran-102", + "libhdf5-hl-100", + "libhdf5-hl-fortran-100", + "libhdf5-cpp-103-1", + "libhdf5-hl-cpp-100" + ], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["11", "12", "unstable"] + } + ] + }, { "packages": ["libhdf5-dev"], "constraints": [ diff --git a/rules/hiredis.json b/rules/hiredis.json index 8a5d387..42b4dad 100644 --- a/rules/hiredis.json +++ b/rules/hiredis.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libhiredis-dev"], + "runtime_packages": ["libhiredis0.14"], "constraints": [ { "os": "linux", diff --git a/rules/imagemagick.json b/rules/imagemagick.json index f0431f9..936fa25 100644 --- a/rules/imagemagick.json +++ b/rules/imagemagick.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["imagemagick", "libmagick++-dev", "gsfonts"], + "runtime_packages": ["imagemagick", "gsfonts"], "constraints": [ { "os": "linux", diff --git a/rules/leptonica.json b/rules/leptonica.json index 99f4109..877de18 100644 --- a/rules/leptonica.json +++ b/rules/leptonica.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libleptonica-dev"], + "runtime_packages": ["liblept5"], "constraints": [ { "os": "linux", diff --git a/rules/libarchive.json b/rules/libarchive.json index ce874bb..6b24a17 100644 --- a/rules/libarchive.json +++ b/rules/libarchive.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libarchive-dev"], + "runtime_packages": ["libarchive13"], "constraints": [ { "os": "linux", diff --git a/rules/libavfilter.json b/rules/libavfilter.json index f1cc546..4bf0399 100644 --- a/rules/libavfilter.json +++ b/rules/libavfilter.json @@ -1,6 +1,43 @@ { "patterns": ["\\blibavfilter\\b"], "dependencies": [ + { + "packages": ["libavfilter-dev"], + "runtime_packages": ["libavfilter7"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu" + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10", "11"] + } + ] + }, + { + "packages": ["libavfilter-dev"], + "runtime_packages": ["libavfilter8"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12"] + } + ] + }, + { + "packages": ["libavfilter-dev"], + "runtime_packages": ["libavfilter9"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["unstable"] + } + ] + }, { "packages": ["libavfilter-dev"], "constraints": [ diff --git a/rules/libbsd.json b/rules/libbsd.json index 2f3f9cd..9cec034 100644 --- a/rules/libbsd.json +++ b/rules/libbsd.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libbsd-dev"], + "runtime_packages": ["libbsd0"], "constraints": [ { "os": "linux", diff --git a/rules/libcurl.json b/rules/libcurl.json index 35bffa5..8016510 100644 --- a/rules/libcurl.json +++ b/rules/libcurl.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libcurl4-openssl-dev"], + "runtime_packages": ["libcurl4"], "apt_satisfy": ["libcurl4-openssl-dev | libcurl4-dev"], "constraints": [ { diff --git a/rules/libgit2.json b/rules/libgit2.json index 772fef5..b44f703 100644 --- a/rules/libgit2.json +++ b/rules/libgit2.json @@ -16,6 +16,61 @@ } ] }, + { + "packages": ["libgit2-dev"], + "runtime_packages": ["libgit2-28"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + } + ] + }, + { + "packages": ["libgit2-dev"], + "runtime_packages": ["libgit2-1.1"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + } + ] + }, + { + "packages": ["libgit2-dev"], + "runtime_packages": ["libgit2-27"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libgit2-dev"], + "runtime_packages": ["libgit2-1.1"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libgit2-dev"], + "runtime_packages": ["libgit2-1.5"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libgit2-dev"], "constraints": [ diff --git a/rules/libicu.json b/rules/libicu.json index 207cca6..3da5697 100644 --- a/rules/libicu.json +++ b/rules/libicu.json @@ -1,6 +1,61 @@ { "patterns": ["\\bicu4c\\b"], "dependencies": [ + { + "packages": ["libicu-dev"], + "runtime_packages": ["libicu66"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + } + ] + }, + { + "packages": ["libicu-dev"], + "runtime_packages": ["libicu70"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + } + ] + }, + { + "packages": ["libicu-dev"], + "runtime_packages": ["libicu63"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libicu-dev"], + "runtime_packages": ["libicu67"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libicu-dev"], + "runtime_packages": ["libicu72"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libicu-dev"], "constraints": [ diff --git a/rules/libjpeg.json b/rules/libjpeg.json index 5a3c216..c23df7c 100644 --- a/rules/libjpeg.json +++ b/rules/libjpeg.json @@ -3,11 +3,18 @@ "dependencies": [ { "packages": ["libjpeg-dev"], + "runtime_packages": ["libjpeg-turbo8"], "constraints": [ { "os": "linux", "distribution": "ubuntu" - }, + } + ] + }, + { + "packages": ["libjpeg-dev"], + "runtime_packages": ["libjpeg62-turbo"], + "constraints": [ { "os": "linux", "distribution": "debian" diff --git a/rules/libjq.json b/rules/libjq.json index 18d66a5..de9e090 100644 --- a/rules/libjq.json +++ b/rules/libjq.json @@ -73,9 +73,8 @@ ] }, { - "packages": [ - "libjq-dev" - ], + "packages": ["libjq-dev"], + "runtime_packages": ["libjq1"], "constraints": [ { "os": "linux", diff --git a/rules/libmagic.json b/rules/libmagic.json index ef7643d..3b81531 100644 --- a/rules/libmagic.json +++ b/rules/libmagic.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libmagic-dev"], + "runtime_packages": ["libmagic1"], "constraints": [ { "os": "linux", diff --git a/rules/libmysqlclient.json b/rules/libmysqlclient.json index 20a8776..d110292 100644 --- a/rules/libmysqlclient.json +++ b/rules/libmysqlclient.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libmysqlclient-dev"], + "runtime_packages": ["libmysqlclient21"], "constraints": [ { "os": "linux", @@ -12,6 +13,7 @@ }, { "packages": ["libmariadb-dev-compat", "libmariadb-dev"], + "runtime_packages": ["libmariadb3"], "constraints": [ { "os": "linux", diff --git a/rules/libpng.json b/rules/libpng.json index 3d14b45..7164dce 100644 --- a/rules/libpng.json +++ b/rules/libpng.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libpng-dev"], + "runtime_packages": ["libpng16-16"], "constraints": [ { "os": "linux", diff --git a/rules/libprotobuf.json b/rules/libprotobuf.json index b347393..1adfc67 100644 --- a/rules/libprotobuf.json +++ b/rules/libprotobuf.json @@ -1,6 +1,49 @@ { "patterns": ["\\blibprotobuf\\b"], "dependencies": [ + { + "packages": ["libprotobuf-dev"], + "runtime_packages": ["libprotobuf17", "libprotobuf-lite17"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libprotobuf-dev"], + "runtime_packages": ["libprotobuf23", "libprotobuf-lite23"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libprotobuf-dev"], + "runtime_packages": ["libprotobuf32", "libprotobuf-lite32"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libprotobuf-dev"], "constraints": [ diff --git a/rules/librsvg2.json b/rules/librsvg2.json index 10abc82..45b40a9 100644 --- a/rules/librsvg2.json +++ b/rules/librsvg2.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["librsvg2-dev"], + "runtime_packages": ["gir1.2-rsvg-2.0", "librsvg2-2", "librsvg2-common"], "constraints": [ { "os": "linux", diff --git a/rules/libsecret.json b/rules/libsecret.json index c67e1a7..34adc4e 100644 --- a/rules/libsecret.json +++ b/rules/libsecret.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libsecret-1-dev"], + "runtime_packages": ["libsecret-1-0", "gir1.2-secret-1"], "constraints": [ { "os": "linux", diff --git a/rules/libsndfile.json b/rules/libsndfile.json index d37797e..baf191b 100644 --- a/rules/libsndfile.json +++ b/rules/libsndfile.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libsndfile1-dev"], + "runtime_packages": ["libsndfile1"], "constraints": [ { "os": "linux", diff --git a/rules/libsodium.json b/rules/libsodium.json index ff435d2..ee76087 100644 --- a/rules/libsodium.json +++ b/rules/libsodium.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libsodium-dev"], + "runtime_packages": ["libsodium23"], "constraints": [ { "os": "linux", diff --git a/rules/libssh2.json b/rules/libssh2.json index 005c2eb..7474795 100644 --- a/rules/libssh2.json +++ b/rules/libssh2.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libssh2-1-dev"], + "runtime_packages": ["libssh2-1"], "constraints": [ { "os": "linux", diff --git a/rules/libtiff.json b/rules/libtiff.json index 4416602..9aa2de1 100644 --- a/rules/libtiff.json +++ b/rules/libtiff.json @@ -1,6 +1,33 @@ { "patterns": ["\\blibtiff\\b", "\\btiff\\b"], "dependencies": [ + { + "packages": ["libtiff-dev"], + "runtime_packages": ["libtiff5", "libtiffxx5"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04", "22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions":["10", "11"] + } + ] + }, + { + "packages": ["libtiff-dev"], + "runtime_packages": ["libtiff6", "libtiffxx6"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libtiff-dev"], "constraints": [ diff --git a/rules/libwebp.json b/rules/libwebp.json index b7f3873..68ec6c3 100644 --- a/rules/libwebp.json +++ b/rules/libwebp.json @@ -1,6 +1,38 @@ { "patterns": ["\\blibwebp\\b"], "dependencies": [ + { + "packages": ["libwebp-dev"], + "runtime_packages": ["libwebp6", "libwebpmux3", "libwebpdemux2"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10", "11"] + } + ] + }, + { + "packages": ["libwebp-dev"], + "runtime_packages": ["libwebp7", "libwebpmux3", "libwebpdemux2"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libwebp-dev"], "constraints": [ diff --git a/rules/libxml2.json b/rules/libxml2.json index 9150e90..0412952 100644 --- a/rules/libxml2.json +++ b/rules/libxml2.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libxml2-dev"], + "runtime_packages": ["libxml2"], "constraints": [ { "os": "linux", diff --git a/rules/libxslt.json b/rules/libxslt.json index 11b932b..6fc54ef 100644 --- a/rules/libxslt.json +++ b/rules/libxslt.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libxslt-dev"], + "runtime_packages": ["libxslt1.1"], "constraints": [ { "os": "linux", diff --git a/rules/mpfr.json b/rules/mpfr.json index 9beb210..5242f9e 100644 --- a/rules/mpfr.json +++ b/rules/mpfr.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libmpfr-dev"], + "runtime_packages": ["libmpfr6"], "constraints": [ { "os": "linux", diff --git a/rules/netcdf4.json b/rules/netcdf4.json index ae15ef9..3a699b8 100644 --- a/rules/netcdf4.json +++ b/rules/netcdf4.json @@ -1,6 +1,61 @@ { "patterns": ["\\bnetcdf\\b", "\\bnetcdf4\\b"], "dependencies": [ + { + "packages": ["libnetcdf-dev"], + "runtime_packages": ["libnetcdf15"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + } + ] + }, + { + "packages": ["libnetcdf-dev"], + "runtime_packages": ["libnetcdf19"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + } + ] + }, + { + "packages": ["libnetcdf-dev"], + "runtime_packages": ["libnetcdf13"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libnetcdf-dev"], + "runtime_packages": ["libnetcdf18"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libnetcdf-dev"], + "runtime_packages": ["libnetcdf19"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libnetcdf-dev"], "constraints": [ diff --git a/rules/odbc.json b/rules/odbc.json index 2e466a7..dc3575e 100644 --- a/rules/odbc.json +++ b/rules/odbc.json @@ -1,6 +1,38 @@ { "patterns": ["\\bodbc\\b", "\\bodbc3\\b"], "dependencies": [ + { + "packages": ["unixodbc-dev"], + "runtime_packages": ["libodbc1", "odbcinst1debian2"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10", "11"] + } + ] + }, + { + "packages": ["unixodbc-dev"], + "runtime_packages": ["libodbc2", "libodbccr2", "libodbcinst2"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["unixodbc-dev"], "constraints": [ diff --git a/rules/openbabel.json b/rules/openbabel.json index 885f17f..2b3991c 100644 --- a/rules/openbabel.json +++ b/rules/openbabel.json @@ -1,6 +1,44 @@ { "patterns": ["\\bopenbabel\\b"], "dependencies": [ + { + "packages": ["libopenbabel-dev"], + "runtime_packages": ["libopenbabel6"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + } + ] + }, + { + "packages": ["libopenbabel-dev"], + "runtime_packages": ["libopenbabel7"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["11", "12", "unstable"] + } + ] + }, + { + "packages": ["libopenbabel-dev"], + "runtime_packages": ["libopenbabel5"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, { "packages": ["libopenbabel-dev"], "constraints": [ diff --git a/rules/opencl.json b/rules/opencl.json index 0c54283..0071597 100644 --- a/rules/opencl.json +++ b/rules/opencl.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["ocl-icd-opencl-dev"], + "runtime_packages": ["ocl-icd-libopencl1"], "constraints": [ { "os": "linux", diff --git a/rules/openssl.json b/rules/openssl.json index baf71c0..05077a6 100644 --- a/rules/openssl.json +++ b/rules/openssl.json @@ -1,6 +1,38 @@ { "patterns": ["\\bopenssl\\b"], "dependencies": [ + { + "packages": ["libssl-dev"], + "runtime_packages": ["libssl1.1"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10", "11"] + } + ] + }, + { + "packages": ["libssl-dev"], + "runtime_packages": ["libssl3"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libssl-dev"], "constraints": [ diff --git a/rules/pango.json b/rules/pango.json index f67dd3d..b8601e4 100644 --- a/rules/pango.json +++ b/rules/pango.json @@ -3,6 +3,14 @@ "dependencies": [ { "packages": ["libpango1.0-dev"], + "runtime_packages": [ + "gir1.2-pango-1.0", + "libpango-1.0-0", + "libpangocairo-1.0-0", + "libpangoft2-1.0-0", + "libpangoxft-1.0-0", + "pango1.0-tools" + ], "constraints": [ { "os": "linux", diff --git a/rules/poppler.json b/rules/poppler.json index cbe385c..b2a4b08 100644 --- a/rules/poppler.json +++ b/rules/poppler.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libpoppler-cpp-dev"], + "runtime_packages": ["libpoppler-cpp0v5"], "constraints": [ { "os": "linux", diff --git a/rules/postgresql.json b/rules/postgresql.json index 8d35115..511ea52 100644 --- a/rules/postgresql.json +++ b/rules/postgresql.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libpq-dev"], + "runtime_packages": ["libpq5"], "constraints": [ { "os": "linux", diff --git a/rules/proj.json b/rules/proj.json index ad3ab41..cd92e39 100644 --- a/rules/proj.json +++ b/rules/proj.json @@ -1,6 +1,61 @@ { "patterns": ["\\bproj\\b", "\\bproj\\.4\\b"], "dependencies": [ + { + "packages": ["libproj-dev"], + "runtime_packages": ["libproj15"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + } + ] + }, + { + "packages": ["libproj-dev"], + "runtime_packages": ["libproj22"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + } + ] + }, + { + "packages": ["libproj-dev"], + "runtime_packages": ["libproj13"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libproj-dev"], + "runtime_packages": ["libproj19"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libproj-dev"], + "runtime_packages": ["libproj25"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libproj-dev"], "constraints": [ diff --git a/rules/redland.json b/rules/redland.json index 0237a8d..4752519 100644 --- a/rules/redland.json +++ b/rules/redland.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["librdf0-dev"], + "runtime_packages": ["librdf0"], "constraints": [ { "os": "linux", diff --git a/rules/sasl.json b/rules/sasl.json index 861a87d..39dbcc4 100644 --- a/rules/sasl.json +++ b/rules/sasl.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libsasl2-dev"], + "runtime_packages": ["libsasl2-2"], "constraints": [ { "os": "linux", diff --git a/rules/sqlite3.json b/rules/sqlite3.json index bc84bd6..fd62778 100644 --- a/rules/sqlite3.json +++ b/rules/sqlite3.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libsqlite3-dev"], + "runtime_packages": ["libsqlite3-0"], "constraints": [ { "os": "linux", diff --git a/rules/tesseract.json b/rules/tesseract.json index 96af678..c238921 100644 --- a/rules/tesseract.json +++ b/rules/tesseract.json @@ -1,6 +1,33 @@ { "patterns": ["\\btesseract\\b"], "dependencies": [ + { + "packages": ["libtesseract-dev", "tesseract-ocr-eng"], + "runtime_packages": ["libtesseract4", "tesseract-ocr-eng"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu" + + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10", "11"] + } + ] + }, + { + "packages": ["libtesseract-dev", "tesseract-ocr-eng"], + "runtime_packages": ["libtesseract5", "tesseract-ocr-eng"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libtesseract-dev", "tesseract-ocr-eng"], "constraints": [ diff --git a/rules/tk.json b/rules/tk.json index 09f05d3..c558d8b 100644 --- a/rules/tk.json +++ b/rules/tk.json @@ -4,9 +4,8 @@ ], "dependencies": [ { - "packages": [ - "tk-dev" - ], + "packages": ["tk-dev"], + "runtime_packages": ["tk"], "constraints": [ { "os": "linux", diff --git a/rules/udunits2.json b/rules/udunits2.json index cafb1f7..e2f9ceb 100644 --- a/rules/udunits2.json +++ b/rules/udunits2.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libudunits2-dev"], + "runtime_packages": ["libudunits2-0"], "constraints": [ { "os": "linux", diff --git a/rules/v8.json b/rules/v8.json index 177ea27..cfe0f6d 100644 --- a/rules/v8.json +++ b/rules/v8.json @@ -1,6 +1,49 @@ { "patterns": ["\\bv8\\b"], "dependencies": [ + { + "packages": ["libnode-dev"], + "runtime_packages": ["libnode64"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["10"] + } + ] + }, + { + "packages": ["libnode-dev"], + "runtime_packages": ["libnode72"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["22.04"] + }, + { + "os": "linux", + "distribution": "debian", + "versions": ["11"] + } + ] + }, + { + "packages": ["libnode-dev"], + "runtime_packages": ["libnode108"], + "constraints": [ + { + "os": "linux", + "distribution": "debian", + "versions": ["12", "unstable"] + } + ] + }, { "packages": ["libnode-dev"], "constraints": [ diff --git a/rules/xft.json b/rules/xft.json index f35ea93..84f2d3c 100644 --- a/rules/xft.json +++ b/rules/xft.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["libxft-dev"], + "runtime_packages": ["libxft2"], "constraints": [ { "os": "linux", diff --git a/rules/zeromq.json b/rules/zeromq.json index 16ebe51..4488eb4 100644 --- a/rules/zeromq.json +++ b/rules/zeromq.json @@ -2,7 +2,8 @@ "patterns": ["\\bzeromq\\b"], "dependencies": [ { - "packages": ["libzmq3-dev"], + "packages": ["libzmq5-dev"], + "runtime_packages": ["libzmq5"], "constraints": [ { "os": "linux", diff --git a/rules/zlib.json b/rules/zlib.json index f5f653a..8bee4a0 100644 --- a/rules/zlib.json +++ b/rules/zlib.json @@ -3,6 +3,7 @@ "dependencies": [ { "packages": ["zlib1g-dev"], + "runtime_packages": ["zlib1g"], "constraints": [ { "os": "linux", diff --git a/schema.json b/schema.json index 9d7e192..2e40d28 100644 --- a/schema.json +++ b/schema.json @@ -74,6 +74,12 @@ "minLength": 1 } }, + "runtime_packages": { + "type": "array", + "items": { + "type": "string" + } + }, "apt_satisfy": { "type": "array", "items": { diff --git a/schema.template.json b/schema.template.json index b10c56a..bb879b3 100644 --- a/schema.template.json +++ b/schema.template.json @@ -74,6 +74,12 @@ "minLength": 1 } }, + "runtime_packages": { + "type": "array", + "items": { + "type": "string" + } + }, "apt_satisfy": { "type": "array", "items": { diff --git a/test/test-packages.sh b/test/test-packages.sh index 637fe1e..3d0bc0b 100755 --- a/test/test-packages.sh +++ b/test/test-packages.sh @@ -189,6 +189,7 @@ test_packages() { pre_install_cmds=$(echo "$dep" | jq ".pre_install[]?") pkgs=$(echo "$dep" | jq -r ".packages[]") sats=$(echo "$dep" | jq -r ".apt_satisfy[]?") + rpkgs=$(echo "$dep" | jq -r '.runtime_packages[]?') jq -c <<< "$pre_install_cmds" | while read cmd; do run_extra_cmd "$cmd" done @@ -201,6 +202,11 @@ test_packages() { $test_satisfy "$sat" $version done fi + if [ ! -z "$rpkgs" ]; then + echo "$rpkgs" | while read pkg; do + $test_package "$pkg" + done + fi done done } From ade2472284e476883db738702b2e221cf5613473 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Cs=C3=A1rdi?= Date: Fri, 18 Aug 2023 22:59:14 +0200 Subject: [PATCH 2/3] Fix runtime_packages on Ubuntu 18.04 --- rules/hiredis.json | 25 +++++++++++++++++++++++++ rules/libavfilter.json | 14 +++++++++++++- rules/libmysqlclient.json | 14 +++++++++++++- rules/pango.json | 14 ++++++++++++++ 4 files changed, 65 insertions(+), 2 deletions(-) diff --git a/rules/hiredis.json b/rules/hiredis.json index 42b4dad..988c574 100644 --- a/rules/hiredis.json +++ b/rules/hiredis.json @@ -1,9 +1,34 @@ { "patterns": ["\\bhiredis\\b"], "dependencies": [ + { + "packages": ["libhiredis-dev"], + "runtime_packages": ["libhiredis0.13"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["18.04"] + } + ] + }, { "packages": ["libhiredis-dev"], "runtime_packages": ["libhiredis0.14"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04", "22.04"] + }, + { + "os": "linux", + "distribution": "debian" + } + ] + }, + { + "packages": ["libhiredis-dev"], "constraints": [ { "os": "linux", diff --git a/rules/libavfilter.json b/rules/libavfilter.json index 4bf0399..cd4670d 100644 --- a/rules/libavfilter.json +++ b/rules/libavfilter.json @@ -1,13 +1,25 @@ { "patterns": ["\\blibavfilter\\b"], "dependencies": [ + { + "packages": ["libavfilter-dev"], + "runtime_packages": ["libavfilter6"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["18.04"] + } + ] + }, { "packages": ["libavfilter-dev"], "runtime_packages": ["libavfilter7"], "constraints": [ { "os": "linux", - "distribution": "ubuntu" + "distribution": "ubuntu", + "versions": ["20.04", "22.04"] }, { "os": "linux", diff --git a/rules/libmysqlclient.json b/rules/libmysqlclient.json index d110292..3d640e4 100644 --- a/rules/libmysqlclient.json +++ b/rules/libmysqlclient.json @@ -1,13 +1,25 @@ { "patterns": ["\\blibmysqlclient\\b"], "dependencies": [ + { + "packages": ["libmysqlclient-dev"], + "runtime_packages": ["libmysqlclient20"], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["18.04"] + } + ] + }, { "packages": ["libmysqlclient-dev"], "runtime_packages": ["libmysqlclient21"], "constraints": [ { "os": "linux", - "distribution": "ubuntu" + "distribution": "ubuntu", + "versions": ["20.04", "22.04"] } ] }, diff --git a/rules/pango.json b/rules/pango.json index b8601e4..9b19f96 100644 --- a/rules/pango.json +++ b/rules/pango.json @@ -11,6 +11,20 @@ "libpangoxft-1.0-0", "pango1.0-tools" ], + "constraints": [ + { + "os": "linux", + "distribution": "ubuntu", + "versions": ["20.04", "22.04"] + }, + { + "os": "linux", + "distribution": "debian" + } + ] + }, + { + "packages": ["libpango1.0-dev"], "constraints": [ { "os": "linux", From b990d72592fe4744545c14e0eb31c6bee4a63377 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Cs=C3=A1rdi?= Date: Sat, 19 Aug 2023 14:41:45 +0200 Subject: [PATCH 3/3] Runtime packages for Alpine Linux --- rules/apparmor.json | 1 + rules/atk.json | 2 ++ rules/berkeleydb.json | 1 + rules/boost.json | 1 + rules/cairo.json | 1 + rules/eigen.json | 1 + rules/fftw3.json | 1 + rules/fontconfig.json | 1 + rules/freetype.json | 1 + rules/fribidi.json | 1 + rules/gdal.json | 4 ++++ rules/geos.json | 1 + rules/glib.json | 1 + rules/glpk.json | 5 ++--- rules/glu.json | 1 + rules/gmp.json | 1 + rules/gpgme.json | 1 + rules/gsl.json | 1 + rules/gtk.json | 1 + rules/harfbuzz.json | 1 + rules/haveged.json | 1 + rules/hdf5.json | 1 + rules/hiredis.json | 1 + rules/imagemagick.json | 3 ++- rules/leptonica.json | 1 + rules/libarchive.json | 1 + rules/libavfilter.json | 1 + rules/libbsd.json | 1 + rules/libcurl.json | 1 + rules/libgit2.json | 1 + rules/libicu.json | 1 + rules/libjpeg.json | 1 + rules/libjq.json | 1 + rules/libmagic.json | 1 + rules/libmysqlclient.json | 1 + rules/libpng.json | 1 + rules/libprotobuf.json | 1 + rules/librsvg2.json | 1 + rules/libsecret.json | 1 + rules/libsndfile.json | 1 + rules/libsodium.json | 1 + rules/libssh2.json | 1 + rules/libtiff.json | 1 + rules/libwebp.json | 1 + rules/libxml2.json | 1 + rules/libxslt.json | 1 + rules/mpfr.json | 1 + rules/netcdf4.json | 1 + rules/odbc.json | 1 + rules/opencl.json | 1 + rules/opencv.json | 1 + rules/opengl.json | 3 ++- rules/openmpi.json | 1 + rules/openssl.json | 1 + rules/pandoc.json | 2 +- rules/pango.json | 1 + rules/poppler.json | 1 + rules/postgresql.json | 1 + rules/proj.json | 1 + rules/redland.json | 1 + rules/sasl.json | 1 + rules/sqlite3.json | 1 + rules/suitesparse.json | 1 + rules/tesseract.json | 1 + rules/tk.json | 5 ++--- rules/udunits2.json | 1 + rules/xft.json | 1 + rules/zeromq.json | 1 + rules/zlib.json | 1 + 69 files changed, 77 insertions(+), 9 deletions(-) diff --git a/rules/apparmor.json b/rules/apparmor.json index baae72e..759bcc8 100644 --- a/rules/apparmor.json +++ b/rules/apparmor.json @@ -30,6 +30,7 @@ }, { "packages": ["libapparmor-dev", "libapparmor"], + "runtime_packages": ["libapparmor"], "constraints": [ { "os": "linux", diff --git a/rules/atk.json b/rules/atk.json index 86fd434..f441a59 100644 --- a/rules/atk.json +++ b/rules/atk.json @@ -51,6 +51,7 @@ }, { "packages": ["atk-dev"], + "runtime_packages": ["atk"], "constraints": [ { "os": "linux", @@ -61,6 +62,7 @@ }, { "packages": ["atkmm-dev"], + "runtime_packages": ["atkmm"], "constraints": [ { "os": "linux", diff --git a/rules/berkeleydb.json b/rules/berkeleydb.json index a15a96d..4e406dd 100644 --- a/rules/berkeleydb.json +++ b/rules/berkeleydb.json @@ -51,6 +51,7 @@ }, { "packages": ["db-dev"], + "runtime_packages": ["db"], "constraints": [ { "os": "linux", diff --git a/rules/boost.json b/rules/boost.json index 0417956..b6439ad 100644 --- a/rules/boost.json +++ b/rules/boost.json @@ -51,6 +51,7 @@ }, { "packages": ["boost-dev"], + "runtime_packages": ["boost"], "constraints": [ { "os": "linux", diff --git a/rules/cairo.json b/rules/cairo.json index 72c30d8..6b0b65a 100644 --- a/rules/cairo.json +++ b/rules/cairo.json @@ -51,6 +51,7 @@ }, { "packages": ["cairo-dev"], + "runtime_packages": ["cairo"], "constraints": [ { "os": "linux", diff --git a/rules/eigen.json b/rules/eigen.json index 297be30..35b7cd6 100644 --- a/rules/eigen.json +++ b/rules/eigen.json @@ -108,6 +108,7 @@ }, { "packages": ["eigen-dev"], + "runtime_packages": [], "constraints": [ { "os": "linux", diff --git a/rules/fftw3.json b/rules/fftw3.json index ab81279..7fba8e0 100644 --- a/rules/fftw3.json +++ b/rules/fftw3.json @@ -51,6 +51,7 @@ }, { "packages": ["fftw-dev"], + "runtime_packages": ["fftw"], "constraints": [ { "os": "linux", diff --git a/rules/fontconfig.json b/rules/fontconfig.json index 1495670..d3c9e1a 100644 --- a/rules/fontconfig.json +++ b/rules/fontconfig.json @@ -50,6 +50,7 @@ }, { "packages": ["fontconfig-dev"], + "runtime_packages": ["fontconfig"], "constraints": [ { "os": "linux", diff --git a/rules/freetype.json b/rules/freetype.json index d705c6e..2cee42e 100644 --- a/rules/freetype.json +++ b/rules/freetype.json @@ -51,6 +51,7 @@ }, { "packages": ["freetype-dev"], + "runtime_packages": ["freetype"], "constraints": [ { "os": "linux", diff --git a/rules/fribidi.json b/rules/fribidi.json index 25a6374..e5fd77f 100644 --- a/rules/fribidi.json +++ b/rules/fribidi.json @@ -42,6 +42,7 @@ }, { "packages": ["fribidi-dev"], + "runtime_packages": ["fribidi"], "constraints": [ { "os": "linux", diff --git a/rules/gdal.json b/rules/gdal.json index 1e47e08..d48b381 100644 --- a/rules/gdal.json +++ b/rules/gdal.json @@ -199,6 +199,10 @@ "gdal-dev", "gdal-tools" ], + "runtime_packages": [ + "gdal", + "gdal-tools" + ], "constraints": [ { "os": "linux", diff --git a/rules/geos.json b/rules/geos.json index 39b82fa..43f3f51 100644 --- a/rules/geos.json +++ b/rules/geos.json @@ -137,6 +137,7 @@ }, { "packages": ["geos-dev"], + "runtime_packages": ["geos"], "constraints": [ { "os": "linux", diff --git a/rules/glib.json b/rules/glib.json index ebc2c12..1dc669d 100644 --- a/rules/glib.json +++ b/rules/glib.json @@ -51,6 +51,7 @@ }, { "packages": ["glib-dev"], + "runtime_packages": ["glib"], "constraints": [ { "os": "linux", diff --git a/rules/glpk.json b/rules/glpk.json index 2f21ba1..e318111 100644 --- a/rules/glpk.json +++ b/rules/glpk.json @@ -119,9 +119,8 @@ ] }, { - "packages": [ - "glpk-dev" - ], + "packages": ["glpk-dev"], + "runtime_packages": ["glpk"], "constraints": [ { "os": "linux", diff --git a/rules/glu.json b/rules/glu.json index 599964f..19960ad 100644 --- a/rules/glu.json +++ b/rules/glu.json @@ -51,6 +51,7 @@ }, { "packages": ["glu-dev"], + "runtime_packages": ["glu"], "constraints": [ { "os": "linux", diff --git a/rules/gmp.json b/rules/gmp.json index c0ecd98..b07395e 100644 --- a/rules/gmp.json +++ b/rules/gmp.json @@ -51,6 +51,7 @@ }, { "packages": ["gmp-dev"], + "runtime_packages": ["gmp", "libgmpxx"], "constraints": [ { "os": "linux", diff --git a/rules/gpgme.json b/rules/gpgme.json index 79ccef7..ab06142 100644 --- a/rules/gpgme.json +++ b/rules/gpgme.json @@ -94,6 +94,7 @@ }, { "packages": ["gpgme-dev"], + "runtime_packages": ["gpgme", "gpgmepp"], "constraints": [ { "os": "linux", diff --git a/rules/gsl.json b/rules/gsl.json index 4b68c87..67320b9 100644 --- a/rules/gsl.json +++ b/rules/gsl.json @@ -116,6 +116,7 @@ }, { "packages": ["gsl-dev"], + "runtime_packages": ["gsl"], "constraints": [ { "os": "linux", diff --git a/rules/gtk.json b/rules/gtk.json index 2bf1b4e..bfa5f5c 100644 --- a/rules/gtk.json +++ b/rules/gtk.json @@ -51,6 +51,7 @@ }, { "packages": ["gtk+2.0-dev"], + "runtime_packages": ["gtk+2.0"], "constraints": [ { "os": "linux", diff --git a/rules/harfbuzz.json b/rules/harfbuzz.json index a58120d..264cd4d 100644 --- a/rules/harfbuzz.json +++ b/rules/harfbuzz.json @@ -42,6 +42,7 @@ }, { "packages": ["harfbuzz-dev"], + "runtime_packages": ["harfbuzz", "harfbuzz-icu"], "constraints": [ { "os": "linux", diff --git a/rules/haveged.json b/rules/haveged.json index 29c283d..c2684fa 100644 --- a/rules/haveged.json +++ b/rules/haveged.json @@ -130,6 +130,7 @@ }, { "packages": ["haveged-dev"], + "runtime_packages": ["haveged"], "constraints": [ { "os": "linux", diff --git a/rules/hdf5.json b/rules/hdf5.json index 915054b..8c33d8f 100644 --- a/rules/hdf5.json +++ b/rules/hdf5.json @@ -170,6 +170,7 @@ }, { "packages": ["hdf5-dev"], + "runtime_packages": ["hdf5", "hdf5-fortran"], "constraints": [ { "os": "linux", diff --git a/rules/hiredis.json b/rules/hiredis.json index 988c574..3e30bd3 100644 --- a/rules/hiredis.json +++ b/rules/hiredis.json @@ -137,6 +137,7 @@ }, { "packages": ["hiredis-dev"], + "runtime_packages": ["hiredis"], "constraints": [ { "os": "linux", diff --git a/rules/imagemagick.json b/rules/imagemagick.json index 936fa25..3423bee 100644 --- a/rules/imagemagick.json +++ b/rules/imagemagick.json @@ -108,7 +108,8 @@ ] }, { - "packages": ["imagemagick-dev", "imagemagick-c++"], + "packages": ["imagemagick-dev"], + "runtime_packages": ["imagemagick-libs", "imagemagick-c++"], "constraints": [ { "os": "linux", diff --git a/rules/leptonica.json b/rules/leptonica.json index 877de18..86601eb 100644 --- a/rules/leptonica.json +++ b/rules/leptonica.json @@ -115,6 +115,7 @@ }, { "packages": ["leptonica-dev"], + "runtime_packages": ["leptonica"], "constraints": [ { "os": "linux", diff --git a/rules/libarchive.json b/rules/libarchive.json index 6b24a17..220d94f 100644 --- a/rules/libarchive.json +++ b/rules/libarchive.json @@ -109,6 +109,7 @@ }, { "packages": ["libarchive-dev"], + "runtime_packages": ["libarchive"], "constraints": [ { "os": "linux", diff --git a/rules/libavfilter.json b/rules/libavfilter.json index cd4670d..334cdc1 100644 --- a/rules/libavfilter.json +++ b/rules/libavfilter.json @@ -174,6 +174,7 @@ }, { "packages": ["ffmpeg-dev"], + "runtime_packages": ["ffmpeg-libs"], "constraints": [ { "os": "linux", diff --git a/rules/libbsd.json b/rules/libbsd.json index 9cec034..05e128d 100644 --- a/rules/libbsd.json +++ b/rules/libbsd.json @@ -127,6 +127,7 @@ }, { "packages": ["libbsd-dev"], + "runtime_packages": ["libbsd"], "constraints": [ { "os": "linux", diff --git a/rules/libcurl.json b/rules/libcurl.json index 8016510..f511cc0 100644 --- a/rules/libcurl.json +++ b/rules/libcurl.json @@ -52,6 +52,7 @@ }, { "packages": ["curl-dev"], + "runtime_packages": ["libcurl"], "constraints": [ { "os": "linux", diff --git a/rules/libgit2.json b/rules/libgit2.json index b44f703..0774ace 100644 --- a/rules/libgit2.json +++ b/rules/libgit2.json @@ -220,6 +220,7 @@ }, { "packages": ["libgit2-dev"], + "runtime_packages": ["libgit2"], "constraints": [ { "os": "linux", diff --git a/rules/libicu.json b/rules/libicu.json index 3da5697..bbebc91 100644 --- a/rules/libicu.json +++ b/rules/libicu.json @@ -143,6 +143,7 @@ }, { "packages": ["icu-dev"], + "runtime_packages": ["icu", "icu-libs"], "constraints": [ { "os": "linux", diff --git a/rules/libjpeg.json b/rules/libjpeg.json index c23df7c..da562eb 100644 --- a/rules/libjpeg.json +++ b/rules/libjpeg.json @@ -57,6 +57,7 @@ }, { "packages": ["jpeg-dev"], + "runtime_packages": ["libjpeg"], "constraints": [ { "os": "linux", diff --git a/rules/libjq.json b/rules/libjq.json index de9e090..638c138 100644 --- a/rules/libjq.json +++ b/rules/libjq.json @@ -103,6 +103,7 @@ }, { "packages": ["jq-dev"], + "runtime_packages": ["jq"], "constraints": [ { "os": "linux", diff --git a/rules/libmagic.json b/rules/libmagic.json index 3b81531..786493d 100644 --- a/rules/libmagic.json +++ b/rules/libmagic.json @@ -104,6 +104,7 @@ }, { "packages": ["file-dev"], + "runtime_packages": ["libmagic"], "constraints": [ { "os": "linux", diff --git a/rules/libmysqlclient.json b/rules/libmysqlclient.json index 3d640e4..ab28de5 100644 --- a/rules/libmysqlclient.json +++ b/rules/libmysqlclient.json @@ -125,6 +125,7 @@ }, { "packages": ["mariadb-dev"], + "runtime_packages": ["mariadb-embedded", "mariadb-connector-c"], "constraints": [ { "os": "linux", diff --git a/rules/libpng.json b/rules/libpng.json index 7164dce..e9a4b55 100644 --- a/rules/libpng.json +++ b/rules/libpng.json @@ -62,6 +62,7 @@ }, { "packages": ["libpng-dev"], + "runtime_packages": ["libpng"], "constraints": [ { "os": "linux", diff --git a/rules/libprotobuf.json b/rules/libprotobuf.json index 1adfc67..93b4a7b 100644 --- a/rules/libprotobuf.json +++ b/rules/libprotobuf.json @@ -169,6 +169,7 @@ }, { "packages": ["protobuf-dev"], + "runtime_packages": ["protobuf"], "constraints": [ { "os": "linux", diff --git a/rules/librsvg2.json b/rules/librsvg2.json index 45b40a9..abb3639 100644 --- a/rules/librsvg2.json +++ b/rules/librsvg2.json @@ -51,6 +51,7 @@ }, { "packages": ["librsvg-dev"], + "runtime_packages": ["librsvg"], "constraints": [ { "os": "linux", diff --git a/rules/libsecret.json b/rules/libsecret.json index 34adc4e..040dc39 100644 --- a/rules/libsecret.json +++ b/rules/libsecret.json @@ -51,6 +51,7 @@ }, { "packages": ["libsecret-dev"], + "runtime_packages": ["libsecret"], "constraints": [ { "os": "linux", diff --git a/rules/libsndfile.json b/rules/libsndfile.json index baf191b..33ded6b 100644 --- a/rules/libsndfile.json +++ b/rules/libsndfile.json @@ -99,6 +99,7 @@ }, { "packages": ["libsndfile-dev"], + "runtime_packages": ["libsndfile"], "constraints": [ { "os": "linux", diff --git a/rules/libsodium.json b/rules/libsodium.json index ee76087..91d0e78 100644 --- a/rules/libsodium.json +++ b/rules/libsodium.json @@ -127,6 +127,7 @@ }, { "packages": ["libsodium-dev"], + "runtime_packages": ["libsodium"], "constraints": [ { "os": "linux", diff --git a/rules/libssh2.json b/rules/libssh2.json index 7474795..5023935 100644 --- a/rules/libssh2.json +++ b/rules/libssh2.json @@ -84,6 +84,7 @@ }, { "packages": ["libssh2-dev"], + "runtime_packages": ["libssh2"], "constraints": [ { "os": "linux", diff --git a/rules/libtiff.json b/rules/libtiff.json index 9aa2de1..dc534e3 100644 --- a/rules/libtiff.json +++ b/rules/libtiff.json @@ -77,6 +77,7 @@ }, { "packages": ["tiff-dev"], + "runtime_packages": ["libtiffxx"], "constraints": [ { "os": "linux", diff --git a/rules/libwebp.json b/rules/libwebp.json index 68ec6c3..0e97715 100644 --- a/rules/libwebp.json +++ b/rules/libwebp.json @@ -134,6 +134,7 @@ }, { "packages": ["libwebp-dev"], + "runtime_packages": ["libwebp"], "constraints": [ { "os": "linux", diff --git a/rules/libxml2.json b/rules/libxml2.json index 0412952..2d9d7d5 100644 --- a/rules/libxml2.json +++ b/rules/libxml2.json @@ -51,6 +51,7 @@ }, { "packages": ["libxml2-dev"], + "runtime_packages": ["libxml2"], "constraints": [ { "os": "linux", diff --git a/rules/libxslt.json b/rules/libxslt.json index 6fc54ef..6781f7d 100644 --- a/rules/libxslt.json +++ b/rules/libxslt.json @@ -51,6 +51,7 @@ }, { "packages": ["libxslt-dev"], + "runtime_packages": ["libxslt"], "constraints": [ { "os": "linux", diff --git a/rules/mpfr.json b/rules/mpfr.json index 5242f9e..f8957b5 100644 --- a/rules/mpfr.json +++ b/rules/mpfr.json @@ -51,6 +51,7 @@ }, { "packages": ["mpfr-dev"], + "runtime_packages": ["mpfr4"], "constraints": [ { "os": "linux", diff --git a/rules/netcdf4.json b/rules/netcdf4.json index 3a699b8..b322774 100644 --- a/rules/netcdf4.json +++ b/rules/netcdf4.json @@ -191,6 +191,7 @@ }, { "packages": ["netcdf-dev"], + "runtime_packages": ["netcdf"], "constraints": [ { "os": "linux", diff --git a/rules/odbc.json b/rules/odbc.json index dc3575e..329c46e 100644 --- a/rules/odbc.json +++ b/rules/odbc.json @@ -105,6 +105,7 @@ }, { "packages": ["unixodbc-dev"], + "runtime_packages": ["unixodbc"], "constraints": [ { "os": "linux", diff --git a/rules/opencl.json b/rules/opencl.json index 0071597..edc7c17 100644 --- a/rules/opencl.json +++ b/rules/opencl.json @@ -108,6 +108,7 @@ }, { "packages": ["opencl-dev"], + "runtime_packages": ["opencl"], "constraints": [ { "os": "linux", diff --git a/rules/opencv.json b/rules/opencv.json index 5d04335..c6dbb9b 100644 --- a/rules/opencv.json +++ b/rules/opencv.json @@ -117,6 +117,7 @@ }, { "packages": ["opencv-dev"], + "runtime_packages": ["opencv"], "constraints": [ { "os": "linux", diff --git a/rules/opengl.json b/rules/opengl.json index 20d0b1d..9a03911 100644 --- a/rules/opengl.json +++ b/rules/opengl.json @@ -49,7 +49,8 @@ ] }, { - "packages": ["mesa-dev"], + "packages": ["mesa-dev", "glu-dev"], + "runtime_packages": ["mesa-gl", "glu"], "constraints": [ { "os": "linux", diff --git a/rules/openmpi.json b/rules/openmpi.json index 3b67d6c..3e5f05d 100644 --- a/rules/openmpi.json +++ b/rules/openmpi.json @@ -67,6 +67,7 @@ }, { "packages": ["openmpi-dev"], + "runtime_packages": ["openmpi"], "constraints": [ { "os": "linux", diff --git a/rules/openssl.json b/rules/openssl.json index 05077a6..44694b0 100644 --- a/rules/openssl.json +++ b/rules/openssl.json @@ -82,6 +82,7 @@ }, { "packages": ["openssl-dev"], + "runtime_packages": ["openssl"], "constraints": [ { "os": "linux", diff --git a/rules/pandoc.json b/rules/pandoc.json index 3c2455e..96c15ab 100644 --- a/rules/pandoc.json +++ b/rules/pandoc.json @@ -107,7 +107,7 @@ { "os": "linux", "distribution": "alpine", - "versions": ["3.18"] + "versions": ["3.18", "edge"] } ] } diff --git a/rules/pango.json b/rules/pango.json index 9b19f96..60c1ef1 100644 --- a/rules/pango.json +++ b/rules/pango.json @@ -72,6 +72,7 @@ }, { "packages": ["pango-dev"], + "runtime_packages": ["pango"], "constraints": [ { "os": "linux", diff --git a/rules/poppler.json b/rules/poppler.json index b2a4b08..c8e5669 100644 --- a/rules/poppler.json +++ b/rules/poppler.json @@ -102,6 +102,7 @@ }, { "packages": ["poppler-dev"], + "runtime_packages": ["poppler", "poppler-glib"], "constraints": [ { "os": "linux", diff --git a/rules/postgresql.json b/rules/postgresql.json index 511ea52..4eccccf 100644 --- a/rules/postgresql.json +++ b/rules/postgresql.json @@ -95,6 +95,7 @@ }, { "packages": ["libpq-dev"], + "runtime_packages": ["libpq"], "constraints": [ { "os": "linux", diff --git a/rules/proj.json b/rules/proj.json index cd92e39..36019c5 100644 --- a/rules/proj.json +++ b/rules/proj.json @@ -210,6 +210,7 @@ }, { "packages": ["proj-dev"], + "runtime_packages": ["proj"], "constraints": [ { "os": "linux", diff --git a/rules/redland.json b/rules/redland.json index 4752519..b3c5aa8 100644 --- a/rules/redland.json +++ b/rules/redland.json @@ -94,6 +94,7 @@ }, { "packages": ["redland-dev"], + "runtime_packages": ["redland"], "constraints": [ { "os": "linux", diff --git a/rules/sasl.json b/rules/sasl.json index 39dbcc4..23aac90 100644 --- a/rules/sasl.json +++ b/rules/sasl.json @@ -47,6 +47,7 @@ }, { "packages": ["cyrus-sasl-dev"], + "runtime_packages": ["cyrus-sasl", "libsasl"], "constraints": [ { "os": "linux", diff --git a/rules/sqlite3.json b/rules/sqlite3.json index fd62778..c14ddc3 100644 --- a/rules/sqlite3.json +++ b/rules/sqlite3.json @@ -51,6 +51,7 @@ }, { "packages": ["sqlite-dev"], + "runtime_packages": ["sqlite-libs"], "constraints": [ { "os": "linux", diff --git a/rules/suitesparse.json b/rules/suitesparse.json index 99189bc..414bb45 100644 --- a/rules/suitesparse.json +++ b/rules/suitesparse.json @@ -96,6 +96,7 @@ }, { "packages": ["suitesparse-dev"], + "runtime_packages": ["suitesparse"], "constraints": [ { "os": "linux", diff --git a/rules/tesseract.json b/rules/tesseract.json index c238921..e776b9f 100644 --- a/rules/tesseract.json +++ b/rules/tesseract.json @@ -144,6 +144,7 @@ }, { "packages": ["tesseract-ocr-dev"], + "runtime_packages": ["tesseract-ocr"], "constraints": [ { "os": "linux", diff --git a/rules/tk.json b/rules/tk.json index c558d8b..bc4cc0c 100644 --- a/rules/tk.json +++ b/rules/tk.json @@ -49,9 +49,8 @@ ] }, { - "packages": [ - "tk-dev" - ], + "packages": ["tk-dev"], + "runtime_packages": ["tk"], "constraints": [ { "os": "linux", diff --git a/rules/udunits2.json b/rules/udunits2.json index e2f9ceb..2a2934a 100644 --- a/rules/udunits2.json +++ b/rules/udunits2.json @@ -118,6 +118,7 @@ }, { "packages": ["udunits-dev"], + "runtime_packages": ["udunits"], "pre_install": [ { "command": "apk add udunits-dev --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing" diff --git a/rules/xft.json b/rules/xft.json index 84f2d3c..86fea69 100644 --- a/rules/xft.json +++ b/rules/xft.json @@ -51,6 +51,7 @@ }, { "packages": ["libxft-dev"], + "runtime_packages": ["libxft"], "constraints": [ { "os": "linux", diff --git a/rules/zeromq.json b/rules/zeromq.json index 4488eb4..ef4ad18 100644 --- a/rules/zeromq.json +++ b/rules/zeromq.json @@ -139,6 +139,7 @@ }, { "packages": ["zeromq-dev"], + "runtime_packages": ["zeromq"], "constraints": [ { "os": "linux", diff --git a/rules/zlib.json b/rules/zlib.json index 8bee4a0..3e21351 100644 --- a/rules/zlib.json +++ b/rules/zlib.json @@ -51,6 +51,7 @@ }, { "packages": ["zlib-dev"], + "runtime_packages": ["zlib"], "constraints": [ { "os": "linux",