From b4b27582867fec41c509e375955a5e98857b3326 Mon Sep 17 00:00:00 2001 From: Alexander Houben Date: Thu, 12 Dec 2024 14:35:43 +0100 Subject: [PATCH 1/3] feat(24.10): add slices file for package libtbb12 and missing dependencies (#423) --------- Co-authored-by: Alexander Houben --- slices/libhwloc15.yaml | 16 ++++++++++++++++ slices/libtbb12.yaml | 19 +++++++++++++++++++ slices/libtbbbind-2-5.yaml | 18 ++++++++++++++++++ slices/libtbbmalloc2.yaml | 18 ++++++++++++++++++ 4 files changed, 71 insertions(+) create mode 100644 slices/libhwloc15.yaml create mode 100644 slices/libtbb12.yaml create mode 100644 slices/libtbbbind-2-5.yaml create mode 100644 slices/libtbbmalloc2.yaml diff --git a/slices/libhwloc15.yaml b/slices/libhwloc15.yaml new file mode 100644 index 000000000..5b581b44c --- /dev/null +++ b/slices/libhwloc15.yaml @@ -0,0 +1,16 @@ +package: libhwloc15 + +essential: + - libhwloc15_copyright + +slices: + libs: + essential: + - libc6_libs + - libudev1_libs + contents: + /usr/lib/*-linux-*/libhwloc.so.15*: + + copyright: + contents: + /usr/share/doc/libhwloc15/copyright: diff --git a/slices/libtbb12.yaml b/slices/libtbb12.yaml new file mode 100644 index 000000000..adbff5249 --- /dev/null +++ b/slices/libtbb12.yaml @@ -0,0 +1,19 @@ +package: libtbb12 + +essential: + - libtbb12_copyright + +slices: + libs: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + - libtbbbind-2-5_libs + - libtbbmalloc2_libs + contents: + /usr/lib/*-linux-*/libtbb.so.12*: + + copyright: + contents: + /usr/share/doc/libtbb12/copyright: diff --git a/slices/libtbbbind-2-5.yaml b/slices/libtbbbind-2-5.yaml new file mode 100644 index 000000000..3ac1dc255 --- /dev/null +++ b/slices/libtbbbind-2-5.yaml @@ -0,0 +1,18 @@ +package: libtbbbind-2-5 + +essential: + - libtbbbind-2-5_copyright + +slices: + libs: + essential: + - libc6_libs + - libgcc-s1_libs + - libhwloc15_libs + - libstdc++6_libs + contents: + /usr/lib/*-linux-*/libtbbbind_2_5.so.3*: + + copyright: + contents: + /usr/share/doc/libtbbbind-2-5/copyright: diff --git a/slices/libtbbmalloc2.yaml b/slices/libtbbmalloc2.yaml new file mode 100644 index 000000000..88f6cd100 --- /dev/null +++ b/slices/libtbbmalloc2.yaml @@ -0,0 +1,18 @@ +package: libtbbmalloc2 + +essential: + - libtbbmalloc2_copyright + +slices: + libs: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + contents: + /usr/lib/*-linux-*/libtbbmalloc.so.2*: + /usr/lib/*-linux-*/libtbbmalloc_proxy.so.2*: + + copyright: + contents: + /usr/share/doc/libtbbmalloc2/copyright: From 01c84cf38e10fd088b1f52a695f4af95309c014c Mon Sep 17 00:00:00 2001 From: Jeremy Norris Date: Thu, 12 Dec 2024 10:23:49 -0600 Subject: [PATCH 2/3] feat(24.10): add slices for Redis and dependencies (#427) --- slices/libjemalloc2.yaml | 17 ++++++++++++ slices/liblzf1.yaml | 15 +++++++++++ slices/redis-server.yaml | 27 +++++++++++++++++++ slices/redis-tools.yaml | 26 ++++++++++++++++++ .../spread/integration/redis-server/task.yaml | 8 ++++++ .../spread/integration/redis-tools/task.yaml | 13 +++++++++ 6 files changed, 106 insertions(+) create mode 100644 slices/libjemalloc2.yaml create mode 100644 slices/liblzf1.yaml create mode 100644 slices/redis-server.yaml create mode 100644 slices/redis-tools.yaml create mode 100644 tests/spread/integration/redis-server/task.yaml create mode 100644 tests/spread/integration/redis-tools/task.yaml diff --git a/slices/libjemalloc2.yaml b/slices/libjemalloc2.yaml new file mode 100644 index 000000000..26b9d5c06 --- /dev/null +++ b/slices/libjemalloc2.yaml @@ -0,0 +1,17 @@ +package: libjemalloc2 + +essential: + - libjemalloc2_copyright + +slices: + libs: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + contents: + /usr/lib/*-linux-*/libjemalloc.so.2: + + copyright: + contents: + /usr/share/doc/libjemalloc2/copyright: diff --git a/slices/liblzf1.yaml b/slices/liblzf1.yaml new file mode 100644 index 000000000..a75c88e0e --- /dev/null +++ b/slices/liblzf1.yaml @@ -0,0 +1,15 @@ +package: liblzf1 + +essential: + - liblzf1_copyright + +slices: + libs: + essential: + - libc6_libs + contents: + /usr/lib/*-linux-*/liblzf.so.1*: + + copyright: + contents: + /usr/share/doc/liblzf1/copyright: diff --git a/slices/redis-server.yaml b/slices/redis-server.yaml new file mode 100644 index 000000000..4eea25cd1 --- /dev/null +++ b/slices/redis-server.yaml @@ -0,0 +1,27 @@ +package: redis-server + +essential: + - redis-server_copyright + +slices: + bins: + essential: + - redis-server_config + - redis-tools_bins + contents: + /usr/bin/redis-server: + + config: + contents: + /etc/redis/redis.conf: + + services: + essential: + - redis-server_bins + contents: + /usr/lib/systemd/system/redis-server.service: + /usr/lib/systemd/system/redis-server@.service: + + copyright: + contents: + /usr/share/doc/redis-server/copyright: diff --git a/slices/redis-tools.yaml b/slices/redis-tools.yaml new file mode 100644 index 000000000..69970dd72 --- /dev/null +++ b/slices/redis-tools.yaml @@ -0,0 +1,26 @@ +package: redis-tools + +essential: + - redis-tools_copyright + +slices: + bins: + # redis-tools actually depends on adduser as well to create and remove + # a user during package install/removal - however we don't support this + # currently so adduser is not added here. + essential: + - libatomic1_libs + - libc6_libs + - libjemalloc2_libs + - liblzf1_libs + - libssl3t64_libs + - libsystemd0_libs + contents: + /usr/bin/redis-benchmark: + /usr/bin/redis-check-aof: + /usr/bin/redis-check-rdb: + /usr/bin/redis-cli: + + copyright: + contents: + /usr/share/doc/redis-tools/copyright: diff --git a/tests/spread/integration/redis-server/task.yaml b/tests/spread/integration/redis-server/task.yaml new file mode 100644 index 000000000..9cfe7426b --- /dev/null +++ b/tests/spread/integration/redis-server/task.yaml @@ -0,0 +1,8 @@ +summary: Integration tests for redis-server + +execute: | + # Chisel a minimum number of slices to give us a runnable system that we can + # test in. + rootfs="$(install-slices redis-server_bins)" + + chroot "${rootfs}/" redis-server -v diff --git a/tests/spread/integration/redis-tools/task.yaml b/tests/spread/integration/redis-tools/task.yaml new file mode 100644 index 000000000..2fb3a0da1 --- /dev/null +++ b/tests/spread/integration/redis-tools/task.yaml @@ -0,0 +1,13 @@ +summary: Integration tests for redis-tools + +execute: | + # Chisel a minimum number of slices to give us a runnable system that we can + # test in. + rootfs="$(install-slices redis-tools_bins)" + + touch "${rootfs}/foo" + + chroot "${rootfs}/" redis-benchmark -v + chroot "${rootfs}/" redis-cli -v + chroot "${rootfs}/" redis-check-aof /foo + chroot "${rootfs}/" redis-check-rdb -v From 5687e72249032a53f916019810b874c7464bde2e Mon Sep 17 00:00:00 2001 From: Cristovao Cordeiro Date: Fri, 13 Dec 2024 08:45:23 +0100 Subject: [PATCH 3/3] chore: port missing slices from 24.04 (#392) --------- Co-authored-by: Rafid Bin Mostofa --- slices/dosfstools.yaml | 24 ++ slices/fontconfig-config.yaml | 83 +++++++ slices/fontconfig.yaml | 33 +++ slices/fonts-croscore.yaml | 13 ++ slices/fonts-dejavu-core.yaml | 40 ++++ slices/fonts-dejavu-mono.yaml | 29 +++ slices/fonts-freefont-otf.yaml | 13 ++ slices/fonts-freefont-ttf.yaml | 13 ++ slices/fonts-liberation.yaml | 24 ++ slices/fonts-noto-core.yaml | 210 +++++++++++++++++ slices/fonts-noto-mono.yaml | 19 ++ slices/fonts-texgyre.yaml | 18 ++ slices/fonts-urw-base35.yaml | 21 ++ slices/gpg.yaml | 24 ++ slices/gpgconf.yaml | 32 +++ slices/libassuan0.yaml | 16 ++ slices/libbluray2.yaml | 19 ++ slices/libcairo2.yaml | 26 +++ slices/libdrm-amdgpu1.yaml | 16 ++ slices/libdrm-common.yaml | 13 ++ slices/libdrm-intel1.yaml | 17 ++ slices/libdrm-nouveau2.yaml | 16 ++ slices/libdrm-radeon1.yaml | 16 ++ slices/libdrm2.yaml | 16 ++ slices/libexif12.yaml | 15 ++ slices/libfontconfig1.yaml | 18 ++ slices/libfontenc1.yaml | 16 ++ slices/libfreetype6.yaml | 19 ++ slices/libgdiplus.yaml | 27 +++ slices/libglib2.0-0t64.yaml | 56 +++++ slices/libharfbuzz0b.yaml | 18 ++ slices/libnpth0t64.yaml | 15 ++ slices/libnspr4.yaml | 17 ++ slices/libnss3.yaml | 40 ++++ slices/libpango-1.0-0.yaml | 20 ++ slices/libpangocairo-1.0-0.yaml | 21 ++ slices/libpangoft2-1.0-0.yaml | 20 ++ slices/libpcsclite1.yaml | 15 ++ slices/libthai-data.yaml | 13 ++ slices/libthai0.yaml | 17 ++ slices/libva-drm2.yaml | 17 ++ slices/libwayland-client0.yaml | 16 ++ slices/libx11-6.yaml | 17 ++ slices/libx11-data.yaml | 83 +++++++ slices/libxcb-render0.yaml | 16 ++ slices/libxcb-shm0.yaml | 16 ++ slices/libxcb1.yaml | 17 ++ slices/libxdmcp6.yaml | 16 ++ slices/libxext6.yaml | 16 ++ slices/libxrender1.yaml | 16 ++ slices/libzvbi0t64.yaml | 19 ++ slices/openjdk-11-jdk-headless.yaml | 162 +++++++++++++ slices/openjdk-11-jre-headless.yaml | 192 +++++++++++++++ slices/openjdk-17-jdk-headless.yaml | 156 +++++++++++++ slices/openjdk-17-jre-headless.yaml | 179 ++++++++++++++ slices/openjdk-8-jre-headless.yaml | 218 ++++++++++++++++++ slices/wget.yaml | 20 ++ slices/x11-common.yaml | 19 ++ slices/xdg-user-dirs.yaml | 24 ++ slices/xfonts-encodings.yaml | 64 +++++ slices/xfonts-utils.yaml | 35 +++ tests/spread/integration/dosfstools/task.yaml | 24 ++ tests/spread/integration/fontconfig/task.yaml | 28 +++ tests/spread/integration/gpg/task.yaml | 23 ++ tests/spread/integration/gpgconf/task.yaml | 12 + .../integration/libglib2.0-0t64/task.yaml | 12 + .../integration/libharfbuzz0b/task.yaml | 8 + tests/spread/integration/libharfbuzz0b/test.c | 37 +++ .../openjdk-11-jdk-headless/Main.java | 5 + .../MonitoringTest.java | 7 + .../RemoteInterface.java | 4 + .../SerializableObject.java | 4 + .../openjdk-11-jdk-headless/all.policy | 3 + .../openjdk-11-jdk-headless/task.yaml | 118 ++++++++++ .../openjdk-11-jre-headless/Main.java | 5 + .../openjdk-11-jre-headless/PrefsTest.java | 13 ++ .../ReadCertificate.java | 14 ++ .../openjdk-11-jre-headless/TestJMX.java | 39 ++++ .../openjdk-11-jre-headless/TestJMXMBean.java | 3 + .../openjdk-11-jre-headless/certificate.pem | 21 ++ .../openjdk-11-jre-headless/task.yaml | 68 ++++++ .../openjdk-17-jdk-headless/Main.java | 5 + .../MonitoringTest.java | 7 + .../RemoteInterface.java | 4 + .../SerializableObject.java | 4 + .../openjdk-17-jdk-headless/all.policy | 3 + .../openjdk-17-jdk-headless/task.yaml | 116 ++++++++++ .../openjdk-17-jre-headless/Main.java | 5 + .../openjdk-17-jre-headless/PrefsTest.java | 13 ++ .../ReadCertificate.java | 14 ++ .../openjdk-17-jre-headless/TestJMX.java | 39 ++++ .../openjdk-17-jre-headless/TestJMXMBean.java | 3 + .../openjdk-17-jre-headless/certificate.pem | 21 ++ .../openjdk-17-jre-headless/task.yaml | 67 ++++++ .../openjdk-8-jre-headless/task.yaml | 16 ++ tests/spread/integration/wget/task.yaml | 12 + .../integration/xdg-user-dirs/task.yaml | 8 + .../spread/integration/xfonts-utils/6x13.bdf | 52 +++++ .../integration/xfonts-utils/sample.bdf | 47 ++++ .../spread/integration/xfonts-utils/task.yaml | 21 ++ 100 files changed, 3321 insertions(+) create mode 100644 slices/dosfstools.yaml create mode 100644 slices/fontconfig-config.yaml create mode 100644 slices/fontconfig.yaml create mode 100644 slices/fonts-croscore.yaml create mode 100644 slices/fonts-dejavu-core.yaml create mode 100644 slices/fonts-dejavu-mono.yaml create mode 100644 slices/fonts-freefont-otf.yaml create mode 100644 slices/fonts-freefont-ttf.yaml create mode 100644 slices/fonts-liberation.yaml create mode 100644 slices/fonts-noto-core.yaml create mode 100644 slices/fonts-noto-mono.yaml create mode 100644 slices/fonts-texgyre.yaml create mode 100644 slices/fonts-urw-base35.yaml create mode 100644 slices/gpg.yaml create mode 100644 slices/gpgconf.yaml create mode 100644 slices/libassuan0.yaml create mode 100644 slices/libbluray2.yaml create mode 100644 slices/libcairo2.yaml create mode 100644 slices/libdrm-amdgpu1.yaml create mode 100644 slices/libdrm-common.yaml create mode 100644 slices/libdrm-intel1.yaml create mode 100644 slices/libdrm-nouveau2.yaml create mode 100644 slices/libdrm-radeon1.yaml create mode 100644 slices/libdrm2.yaml create mode 100644 slices/libexif12.yaml create mode 100644 slices/libfontconfig1.yaml create mode 100644 slices/libfontenc1.yaml create mode 100644 slices/libfreetype6.yaml create mode 100644 slices/libgdiplus.yaml create mode 100644 slices/libglib2.0-0t64.yaml create mode 100644 slices/libharfbuzz0b.yaml create mode 100644 slices/libnpth0t64.yaml create mode 100644 slices/libnspr4.yaml create mode 100644 slices/libnss3.yaml create mode 100644 slices/libpango-1.0-0.yaml create mode 100644 slices/libpangocairo-1.0-0.yaml create mode 100644 slices/libpangoft2-1.0-0.yaml create mode 100644 slices/libpcsclite1.yaml create mode 100644 slices/libthai-data.yaml create mode 100644 slices/libthai0.yaml create mode 100644 slices/libva-drm2.yaml create mode 100644 slices/libwayland-client0.yaml create mode 100644 slices/libx11-6.yaml create mode 100644 slices/libx11-data.yaml create mode 100644 slices/libxcb-render0.yaml create mode 100644 slices/libxcb-shm0.yaml create mode 100644 slices/libxcb1.yaml create mode 100644 slices/libxdmcp6.yaml create mode 100644 slices/libxext6.yaml create mode 100644 slices/libxrender1.yaml create mode 100644 slices/libzvbi0t64.yaml create mode 100644 slices/openjdk-11-jdk-headless.yaml create mode 100644 slices/openjdk-11-jre-headless.yaml create mode 100644 slices/openjdk-17-jdk-headless.yaml create mode 100644 slices/openjdk-17-jre-headless.yaml create mode 100644 slices/openjdk-8-jre-headless.yaml create mode 100644 slices/wget.yaml create mode 100644 slices/x11-common.yaml create mode 100644 slices/xdg-user-dirs.yaml create mode 100644 slices/xfonts-encodings.yaml create mode 100644 slices/xfonts-utils.yaml create mode 100644 tests/spread/integration/dosfstools/task.yaml create mode 100644 tests/spread/integration/fontconfig/task.yaml create mode 100644 tests/spread/integration/gpg/task.yaml create mode 100644 tests/spread/integration/gpgconf/task.yaml create mode 100644 tests/spread/integration/libglib2.0-0t64/task.yaml create mode 100644 tests/spread/integration/libharfbuzz0b/task.yaml create mode 100644 tests/spread/integration/libharfbuzz0b/test.c create mode 100644 tests/spread/integration/openjdk-11-jdk-headless/Main.java create mode 100644 tests/spread/integration/openjdk-11-jdk-headless/MonitoringTest.java create mode 100644 tests/spread/integration/openjdk-11-jdk-headless/RemoteInterface.java create mode 100644 tests/spread/integration/openjdk-11-jdk-headless/SerializableObject.java create mode 100644 tests/spread/integration/openjdk-11-jdk-headless/all.policy create mode 100644 tests/spread/integration/openjdk-11-jdk-headless/task.yaml create mode 100644 tests/spread/integration/openjdk-11-jre-headless/Main.java create mode 100644 tests/spread/integration/openjdk-11-jre-headless/PrefsTest.java create mode 100644 tests/spread/integration/openjdk-11-jre-headless/ReadCertificate.java create mode 100644 tests/spread/integration/openjdk-11-jre-headless/TestJMX.java create mode 100644 tests/spread/integration/openjdk-11-jre-headless/TestJMXMBean.java create mode 100644 tests/spread/integration/openjdk-11-jre-headless/certificate.pem create mode 100644 tests/spread/integration/openjdk-11-jre-headless/task.yaml create mode 100644 tests/spread/integration/openjdk-17-jdk-headless/Main.java create mode 100644 tests/spread/integration/openjdk-17-jdk-headless/MonitoringTest.java create mode 100644 tests/spread/integration/openjdk-17-jdk-headless/RemoteInterface.java create mode 100644 tests/spread/integration/openjdk-17-jdk-headless/SerializableObject.java create mode 100644 tests/spread/integration/openjdk-17-jdk-headless/all.policy create mode 100644 tests/spread/integration/openjdk-17-jdk-headless/task.yaml create mode 100644 tests/spread/integration/openjdk-17-jre-headless/Main.java create mode 100644 tests/spread/integration/openjdk-17-jre-headless/PrefsTest.java create mode 100644 tests/spread/integration/openjdk-17-jre-headless/ReadCertificate.java create mode 100644 tests/spread/integration/openjdk-17-jre-headless/TestJMX.java create mode 100644 tests/spread/integration/openjdk-17-jre-headless/TestJMXMBean.java create mode 100644 tests/spread/integration/openjdk-17-jre-headless/certificate.pem create mode 100644 tests/spread/integration/openjdk-17-jre-headless/task.yaml create mode 100644 tests/spread/integration/openjdk-8-jre-headless/task.yaml create mode 100644 tests/spread/integration/wget/task.yaml create mode 100644 tests/spread/integration/xdg-user-dirs/task.yaml create mode 100644 tests/spread/integration/xfonts-utils/6x13.bdf create mode 100644 tests/spread/integration/xfonts-utils/sample.bdf create mode 100644 tests/spread/integration/xfonts-utils/task.yaml diff --git a/slices/dosfstools.yaml b/slices/dosfstools.yaml new file mode 100644 index 000000000..fea15614e --- /dev/null +++ b/slices/dosfstools.yaml @@ -0,0 +1,24 @@ +package: dosfstools + +essential: + - dosfstools_copyright + +slices: + bins: + essential: + - libc6_libs + contents: + /usr/sbin/dosfsck: + /usr/sbin/dosfslabel: + /usr/sbin/fatlabel: + /usr/sbin/fsck.fat: + /usr/sbin/fsck.msdos: + /usr/sbin/fsck.vfat: + /usr/sbin/mkdosfs: + /usr/sbin/mkfs.fat: + /usr/sbin/mkfs.msdos: + /usr/sbin/mkfs.vfat: + + copyright: + contents: + /usr/share/doc/dosfstools/copyright: diff --git a/slices/fontconfig-config.yaml b/slices/fontconfig-config.yaml new file mode 100644 index 000000000..914d95427 --- /dev/null +++ b/slices/fontconfig-config.yaml @@ -0,0 +1,83 @@ +package: fontconfig-config + +essential: + - fontconfig-config_copyright + +slices: + config: + essential: + - fonts-dejavu-core_config + contents: + /etc/fonts/conf.d/10-hinting-slight.conf: + /etc/fonts/conf.d/10-scale-bitmap-fonts.conf: + /etc/fonts/conf.d/10-sub-pixel-rgb.conf: + /etc/fonts/conf.d/10-yes-antialias.conf: + /etc/fonts/conf.d/11-lcdfilter-default.conf: + /etc/fonts/conf.d/20-unhint-small-vera.conf: + /etc/fonts/conf.d/30-metric-aliases.conf: + /etc/fonts/conf.d/40-nonlatin.conf: + /etc/fonts/conf.d/45-generic.conf: + /etc/fonts/conf.d/45-latin.conf: + /etc/fonts/conf.d/48-spacing.conf: + /etc/fonts/conf.d/49-sansserif.conf: + /etc/fonts/conf.d/50-user.conf: + /etc/fonts/conf.d/51-local.conf: + /etc/fonts/conf.d/60-generic.conf: + /etc/fonts/conf.d/60-latin.conf: + /etc/fonts/conf.d/65-fonts-persian.conf: + /etc/fonts/conf.d/65-nonlatin.conf: + /etc/fonts/conf.d/69-unifont.conf: + /etc/fonts/conf.d/70-no-bitmaps-except-emoji.conf: + /etc/fonts/conf.d/80-delicious.conf: + /etc/fonts/conf.d/90-synthetic.conf: + /etc/fonts/fonts.conf: + /usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf: + /usr/share/fontconfig/conf.avail/09-autohint-if-no-hinting.conf: + /usr/share/fontconfig/conf.avail/10-autohint.conf: + /usr/share/fontconfig/conf.avail/10-hinting-full.conf: + /usr/share/fontconfig/conf.avail/10-hinting-medium.conf: + /usr/share/fontconfig/conf.avail/10-hinting-none.conf: + /usr/share/fontconfig/conf.avail/10-hinting-slight.conf: + /usr/share/fontconfig/conf.avail/10-no-antialias.conf: + /usr/share/fontconfig/conf.avail/10-scale-bitmap-fonts.conf: + /usr/share/fontconfig/conf.avail/10-sub-pixel-bgr.conf: + /usr/share/fontconfig/conf.avail/10-sub-pixel-none.conf: + /usr/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf: + /usr/share/fontconfig/conf.avail/10-sub-pixel-vbgr.conf: + /usr/share/fontconfig/conf.avail/10-sub-pixel-vrgb.conf: + /usr/share/fontconfig/conf.avail/10-unhinted.conf: + /usr/share/fontconfig/conf.avail/10-yes-antialias.conf: + /usr/share/fontconfig/conf.avail/11-lcdfilter-default.conf: + /usr/share/fontconfig/conf.avail/11-lcdfilter-legacy.conf: + /usr/share/fontconfig/conf.avail/11-lcdfilter-light.conf: + /usr/share/fontconfig/conf.avail/11-lcdfilter-none.conf: + /usr/share/fontconfig/conf.avail/20-unhint-small-vera.conf: + /usr/share/fontconfig/conf.avail/25-unhint-nonlatin.conf: + /usr/share/fontconfig/conf.avail/30-metric-aliases.conf: + /usr/share/fontconfig/conf.avail/35-lang-normalize.conf: + /usr/share/fontconfig/conf.avail/40-nonlatin.conf: + /usr/share/fontconfig/conf.avail/45-generic.conf: + /usr/share/fontconfig/conf.avail/45-latin.conf: + /usr/share/fontconfig/conf.avail/48-spacing.conf: + /usr/share/fontconfig/conf.avail/49-sansserif.conf: + /usr/share/fontconfig/conf.avail/50-user.conf: + /usr/share/fontconfig/conf.avail/51-local.conf: + /usr/share/fontconfig/conf.avail/53-monospace-lcd-filter.conf: + /usr/share/fontconfig/conf.avail/60-generic.conf: + /usr/share/fontconfig/conf.avail/60-latin.conf: + /usr/share/fontconfig/conf.avail/65-fonts-persian.conf: + /usr/share/fontconfig/conf.avail/65-khmer.conf: + /usr/share/fontconfig/conf.avail/65-nonlatin.conf: + /usr/share/fontconfig/conf.avail/69-unifont.conf: + /usr/share/fontconfig/conf.avail/70-force-bitmaps.conf: + /usr/share/fontconfig/conf.avail/70-no-bitmaps-and-emoji.conf: + /usr/share/fontconfig/conf.avail/70-no-bitmaps-except-emoji.conf: + /usr/share/fontconfig/conf.avail/70-no-bitmaps.conf: + /usr/share/fontconfig/conf.avail/70-yes-bitmaps.conf: + /usr/share/fontconfig/conf.avail/80-delicious.conf: + /usr/share/fontconfig/conf.avail/90-synthetic.conf: + /usr/share/xml/fontconfig/fonts.dtd: + + copyright: + contents: + /usr/share/doc/fontconfig-config/copyright: diff --git a/slices/fontconfig.yaml b/slices/fontconfig.yaml new file mode 100644 index 000000000..9e3800d41 --- /dev/null +++ b/slices/fontconfig.yaml @@ -0,0 +1,33 @@ +package: fontconfig + +essential: + - fontconfig_copyright + +slices: + bins: + essential: + - fontconfig-config_config + - fontconfig_cache + - libc6_libs + - libfontconfig1_libs + - libfreetype6_libs + contents: + /usr/bin/fc-cache: + /usr/bin/fc-cat: + /usr/bin/fc-conflist: + /usr/bin/fc-list: + /usr/bin/fc-match: + /usr/bin/fc-pattern: + /usr/bin/fc-query: + /usr/bin/fc-scan: + /usr/bin/fc-validate: + + cache: + contents: + # The postinst script runs fc-cache to regenerate + # the fonts cache and populate that directory + /var/cache/fontconfig/: {make: true} + + copyright: + contents: + /usr/share/doc/fontconfig/copyright: diff --git a/slices/fonts-croscore.yaml b/slices/fonts-croscore.yaml new file mode 100644 index 000000000..de4294081 --- /dev/null +++ b/slices/fonts-croscore.yaml @@ -0,0 +1,13 @@ +package: fonts-croscore + +essential: + - fonts-croscore_copyright + +slices: + fonts: + contents: + /usr/share/fonts/truetype/croscore/*: + + copyright: + contents: + /usr/share/doc/fonts-croscore/copyright: diff --git a/slices/fonts-dejavu-core.yaml b/slices/fonts-dejavu-core.yaml new file mode 100644 index 000000000..00586de52 --- /dev/null +++ b/slices/fonts-dejavu-core.yaml @@ -0,0 +1,40 @@ +package: fonts-dejavu-core + +essential: + - fonts-dejavu-core_copyright + +slices: + fonts: + essential: + - fonts-dejavu-mono_fonts + contents: + /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf: + /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: + /usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf: + /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf: + + config: + essential: + - fonts-dejavu-core_fonts + - fonts-dejavu-mono_config + contents: + /etc/fonts/conf.avail/20-unhint-small-dejavu-lgc-sans.conf: + /etc/fonts/conf.avail/20-unhint-small-dejavu-lgc-serif.conf: + /etc/fonts/conf.avail/20-unhint-small-dejavu-sans.conf: + /etc/fonts/conf.avail/20-unhint-small-dejavu-serif.conf: + /etc/fonts/conf.avail/57-dejavu-sans.conf: + /etc/fonts/conf.avail/57-dejavu-serif.conf: + /etc/fonts/conf.avail/58-dejavu-lgc-sans.conf: + /etc/fonts/conf.avail/58-dejavu-lgc-serif.conf: + /etc/fonts/conf.d/20-unhint-small-dejavu-lgc-sans.conf: + /etc/fonts/conf.d/20-unhint-small-dejavu-lgc-serif.conf: + /etc/fonts/conf.d/20-unhint-small-dejavu-sans.conf: + /etc/fonts/conf.d/20-unhint-small-dejavu-serif.conf: + /etc/fonts/conf.d/57-dejavu-sans.conf: + /etc/fonts/conf.d/57-dejavu-serif.conf: + /etc/fonts/conf.d/58-dejavu-lgc-sans.conf: + /etc/fonts/conf.d/58-dejavu-lgc-serif.conf: + + copyright: + contents: + /usr/share/doc/fonts-dejavu-core/copyright: diff --git a/slices/fonts-dejavu-mono.yaml b/slices/fonts-dejavu-mono.yaml new file mode 100644 index 000000000..dcb4f1d68 --- /dev/null +++ b/slices/fonts-dejavu-mono.yaml @@ -0,0 +1,29 @@ +package: fonts-dejavu-mono + +essential: + - fonts-dejavu-mono_copyright + +slices: + fonts: + contents: + /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf: + /usr/share/fonts/truetype/dejavu/DejaVuSansMono-BoldOblique.ttf: + /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Oblique.ttf: + /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf: + + config: + essential: + - fonts-dejavu-mono_fonts + contents: + /etc/fonts/conf.avail/20-unhint-small-dejavu-lgc-sans-mono.conf: + /etc/fonts/conf.avail/20-unhint-small-dejavu-sans-mono.conf: + /etc/fonts/conf.avail/57-dejavu-sans-mono.conf: + /etc/fonts/conf.avail/58-dejavu-lgc-sans-mono.conf: + /etc/fonts/conf.d/20-unhint-small-dejavu-lgc-sans-mono.conf: + /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf: + /etc/fonts/conf.d/57-dejavu-sans-mono.conf: + /etc/fonts/conf.d/58-dejavu-lgc-sans-mono.conf: + + copyright: + contents: + /usr/share/doc/fonts-dejavu-mono/copyright: diff --git a/slices/fonts-freefont-otf.yaml b/slices/fonts-freefont-otf.yaml new file mode 100644 index 000000000..430f0b8c4 --- /dev/null +++ b/slices/fonts-freefont-otf.yaml @@ -0,0 +1,13 @@ +package: fonts-freefont-otf + +essential: + - fonts-freefont-otf_copyright + +slices: + fonts: + contents: + /usr/share/fonts/opentype/freefont/*: + + copyright: + contents: + /usr/share/doc/fonts-freefont-otf/copyright: diff --git a/slices/fonts-freefont-ttf.yaml b/slices/fonts-freefont-ttf.yaml new file mode 100644 index 000000000..8b5c61bee --- /dev/null +++ b/slices/fonts-freefont-ttf.yaml @@ -0,0 +1,13 @@ +package: fonts-freefont-ttf + +essential: + - fonts-freefont-ttf_copyright + +slices: + fonts: + contents: + /usr/share/fonts/truetype/freefont/*: + + copyright: + contents: + /usr/share/doc/fonts-freefont-ttf/copyright: diff --git a/slices/fonts-liberation.yaml b/slices/fonts-liberation.yaml new file mode 100644 index 000000000..153be7a48 --- /dev/null +++ b/slices/fonts-liberation.yaml @@ -0,0 +1,24 @@ +package: fonts-liberation + +essential: + - fonts-liberation_copyright + +slices: + fonts: + contents: + /usr/share/fonts/truetype/liberation/LiberationMono-Bold.ttf: + /usr/share/fonts/truetype/liberation/LiberationMono-BoldItalic.ttf: + /usr/share/fonts/truetype/liberation/LiberationMono-Italic.ttf: + /usr/share/fonts/truetype/liberation/LiberationMono-Regular.ttf: + /usr/share/fonts/truetype/liberation/LiberationSans-Bold.ttf: + /usr/share/fonts/truetype/liberation/LiberationSans-BoldItalic.ttf: + /usr/share/fonts/truetype/liberation/LiberationSans-Italic.ttf: + /usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf: + /usr/share/fonts/truetype/liberation/LiberationSerif-Bold.ttf: + /usr/share/fonts/truetype/liberation/LiberationSerif-BoldItalic.ttf: + /usr/share/fonts/truetype/liberation/LiberationSerif-Italic.ttf: + /usr/share/fonts/truetype/liberation/LiberationSerif-Regular.ttf: + + copyright: + contents: + /usr/share/doc/fonts-liberation/copyright: diff --git a/slices/fonts-noto-core.yaml b/slices/fonts-noto-core.yaml new file mode 100644 index 000000000..1df6498ce --- /dev/null +++ b/slices/fonts-noto-core.yaml @@ -0,0 +1,210 @@ +package: fonts-noto-core + +essential: + - fonts-noto-core_copyright + +slices: + fonts: + essential: + - fonts-noto-mono_fonts + contents: + /usr/share/fonts/truetype/noto/NotoKufiArabic-*.ttf: + /usr/share/fonts/truetype/noto/NotoLoopedLao-*.ttf: + /usr/share/fonts/truetype/noto/NotoLoopedThai-*.ttf: + /usr/share/fonts/truetype/noto/NotoMusic-*.ttf: + /usr/share/fonts/truetype/noto/NotoNaskhArabic-*.ttf: + /usr/share/fonts/truetype/noto/NotoNastaliqUrdu-*.ttf: + /usr/share/fonts/truetype/noto/NotoRashiHebrew-*.ttf: + /usr/share/fonts/truetype/noto/NotoSans-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansAdlam-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansArabic-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansArmenian-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansAvestan-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansBalinese-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansBamum-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansBengali-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansCham-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansCherokee-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansCypriot-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansDevanagari-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansDisplay-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansEthiopic-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansGeorgian-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansGujarati-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansGurmukhi-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansHatran-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansJavanese-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansKannada-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansKayahLi-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansKhmer-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansLao-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansLisu-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMalayalam-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMedefaidrin-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMyanmar-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOlChiki-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOriya-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSinhala-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSoraSompeng-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSundanese-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSymbols-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf: + /usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTamil-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTelugu-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansThaana-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansThai-*.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerif-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerifArmenian-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerifBengali-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifDevanagari-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifDisplay-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerifEthiopic-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf: + /usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerifGujarati-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifGurmukhi-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifHebrew-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifKannada-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifKhmer-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifKhojki-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifLao-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifMalayalam-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifMyanmar-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifSinhala-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifTamil-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSerifTelugu-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifThai-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifTibetan-*.ttf: + /usr/share/fonts/truetype/noto/NotoSerifYezidi-*.ttf: + /usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf: + + config: + essential: + - fonts-noto-mono_config + contents: + /etc/fonts/conf.avail/30-droid-noto.conf: + + copyright: + contents: + /usr/share/doc/fonts-noto-core/copyright: diff --git a/slices/fonts-noto-mono.yaml b/slices/fonts-noto-mono.yaml new file mode 100644 index 000000000..bf79493ec --- /dev/null +++ b/slices/fonts-noto-mono.yaml @@ -0,0 +1,19 @@ +package: fonts-noto-mono + +essential: + - fonts-noto-mono_copyright + +slices: + fonts: + contents: + /usr/share/fonts/truetype/noto/NotoMono-Regular.ttf: + /usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf: + /usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf: + + config: + contents: + /etc/fonts/conf.avail/30-droid-noto-mono.conf: + + copyright: + contents: + /usr/share/doc/fonts-noto-mono/copyright: diff --git a/slices/fonts-texgyre.yaml b/slices/fonts-texgyre.yaml new file mode 100644 index 000000000..e41fa3872 --- /dev/null +++ b/slices/fonts-texgyre.yaml @@ -0,0 +1,18 @@ +package: fonts-texgyre + +essential: + - fonts-texgyre_copyright + +slices: + fonts: + contents: + /usr/share/texmf/fonts/opentype/public/tex-gyre/*: + + config: + contents: + /etc/fonts/conf.avail/65-fonts-texgyre.conf: + /etc/fonts/conf.d/65-fonts-texgyre.conf: + + copyright: + contents: + /usr/share/doc/fonts-texgyre/copyright: diff --git a/slices/fonts-urw-base35.yaml b/slices/fonts-urw-base35.yaml new file mode 100644 index 000000000..4d74cc816 --- /dev/null +++ b/slices/fonts-urw-base35.yaml @@ -0,0 +1,21 @@ +package: fonts-urw-base35 + +essential: + - fonts-urw-base35_copyright + +slices: + config: + contents: + /etc/fonts/conf.d/61-urw-*.conf: + /usr/share/fontconfig/conf.avail/urw-*.conf: + + fonts: + contents: + /etc/X11/fonts/Type1/fonts-urw-base35*: + /usr/share/fonts/X11/Type1/*.pfb: + /usr/share/fonts/opentype/urw-base35/*.otf: + /usr/share/fonts/type1/urw-base35/*: + + copyright: + contents: + /usr/share/doc/fonts-urw-base35/copyright: diff --git a/slices/gpg.yaml b/slices/gpg.yaml new file mode 100644 index 000000000..9b2aaf5f2 --- /dev/null +++ b/slices/gpg.yaml @@ -0,0 +1,24 @@ +package: gpg + +essential: + - gpg_copyright + +slices: + bins: + essential: + # gpgconf is not included here as some gpg tasks work without it. + - libassuan0_libs + - libbz2-1.0_libs + - libc6_libs + - libgcrypt20_libs + - libgpg-error0_libs + - libnpth0t64_libs + - libreadline8t64_libs + - libsqlite3-0_libs + - zlib1g_libs + contents: + /usr/bin/gpg: + + copyright: + contents: + /usr/share/doc/gpg/copyright: diff --git a/slices/gpgconf.yaml b/slices/gpgconf.yaml new file mode 100644 index 000000000..1d88e5598 --- /dev/null +++ b/slices/gpgconf.yaml @@ -0,0 +1,32 @@ +package: gpgconf + +essential: + - gpgconf_copyright + +slices: + bins: + essential: + - gpgconf_gpg-connect-agent + - gpgconf_gpgconf + + gpg-connect-agent: + essential: + - libassuan0_libs + - libc6_libs + - libgcrypt20_libs + - libgpg-error0_libs + - libreadline8t64_libs + contents: + /usr/bin/gpg-connect-agent: + + gpgconf: + essential: + - libc6_libs + - libgcrypt20_libs + - libgpg-error0_libs + contents: + /usr/bin/gpgconf: + + copyright: + contents: + /usr/share/doc/gpgconf/copyright: diff --git a/slices/libassuan0.yaml b/slices/libassuan0.yaml new file mode 100644 index 000000000..e71bc6794 --- /dev/null +++ b/slices/libassuan0.yaml @@ -0,0 +1,16 @@ +package: libassuan0 + +essential: + - libassuan0_copyright + +slices: + libs: + essential: + - libc6_libs + - libgpg-error0_libs + contents: + /usr/lib/*-linux-*/libassuan.so.0*: + + copyright: + contents: + /usr/share/doc/libassuan0/copyright: diff --git a/slices/libbluray2.yaml b/slices/libbluray2.yaml new file mode 100644 index 000000000..d9a8736fe --- /dev/null +++ b/slices/libbluray2.yaml @@ -0,0 +1,19 @@ +package: libbluray2 + +essential: + - libbluray2_copyright + +slices: + libs: + essential: + - libc6_libs + - libfontconfig1_libs + - libfreetype6_libs + - libudfread0_libs + - libxml2_libs + contents: + /usr/lib/*-linux-*/libbluray.so.2*: + + copyright: + contents: + /usr/share/doc/libbluray2/copyright: diff --git a/slices/libcairo2.yaml b/slices/libcairo2.yaml new file mode 100644 index 000000000..b2fa1c14a --- /dev/null +++ b/slices/libcairo2.yaml @@ -0,0 +1,26 @@ +package: libcairo2 + +essential: + - libcairo2_copyright + +slices: + libs: + essential: + - libc6_libs + - libfontconfig1_libs + - libfreetype6_libs + - libpixman-1-0_libs + - libpng16-16t64_libs + - libx11-6_libs + - libxcb-render0_libs + - libxcb-shm0_libs + - libxcb1_libs + - libxext6_libs + - libxrender1_libs + - zlib1g_libs + contents: + /usr/lib/*-linux-*/libcairo.so.2*: + + copyright: + contents: + /usr/share/doc/libcairo2/copyright: diff --git a/slices/libdrm-amdgpu1.yaml b/slices/libdrm-amdgpu1.yaml new file mode 100644 index 000000000..7be8192e7 --- /dev/null +++ b/slices/libdrm-amdgpu1.yaml @@ -0,0 +1,16 @@ +package: libdrm-amdgpu1 + +essential: + - libdrm-amdgpu1_copyright + +slices: + libs: + essential: + - libc6_libs + - libdrm2_libs + contents: + /usr/lib/*-linux-*/libdrm_amdgpu.so.1*: + + copyright: + contents: + /usr/share/doc/libdrm-amdgpu1/copyright: diff --git a/slices/libdrm-common.yaml b/slices/libdrm-common.yaml new file mode 100644 index 000000000..2d2d17c35 --- /dev/null +++ b/slices/libdrm-common.yaml @@ -0,0 +1,13 @@ +package: libdrm-common + +essential: + - libdrm-common_copyright + +slices: + data: + contents: + /usr/share/libdrm/amdgpu.ids: + + copyright: + contents: + /usr/share/doc/libdrm-common/copyright: diff --git a/slices/libdrm-intel1.yaml b/slices/libdrm-intel1.yaml new file mode 100644 index 000000000..6e5d94b29 --- /dev/null +++ b/slices/libdrm-intel1.yaml @@ -0,0 +1,17 @@ +package: libdrm-intel1 + +essential: + - libdrm-intel1_copyright + +slices: + libs: + essential: + - libc6_libs + - libdrm2_libs + - libpciaccess0_libs + contents: + /usr/lib/*-linux-*/libdrm_intel.so.1*: + + copyright: + contents: + /usr/share/doc/libdrm-intel1/copyright: diff --git a/slices/libdrm-nouveau2.yaml b/slices/libdrm-nouveau2.yaml new file mode 100644 index 000000000..54789f56a --- /dev/null +++ b/slices/libdrm-nouveau2.yaml @@ -0,0 +1,16 @@ +package: libdrm-nouveau2 + +essential: + - libdrm-nouveau2_copyright + +slices: + libs: + essential: + - libc6_libs + - libdrm2_libs + contents: + /usr/lib/*-linux-*/libdrm_nouveau.so.2*: + + copyright: + contents: + /usr/share/doc/libdrm-nouveau2/copyright: diff --git a/slices/libdrm-radeon1.yaml b/slices/libdrm-radeon1.yaml new file mode 100644 index 000000000..68407e3fb --- /dev/null +++ b/slices/libdrm-radeon1.yaml @@ -0,0 +1,16 @@ +package: libdrm-radeon1 + +essential: + - libdrm-radeon1_copyright + +slices: + libs: + essential: + - libc6_libs + - libdrm2_libs + contents: + /usr/lib/*-linux-*/libdrm_radeon.so.1*: + + copyright: + contents: + /usr/share/doc/libdrm-radeon1/copyright: diff --git a/slices/libdrm2.yaml b/slices/libdrm2.yaml new file mode 100644 index 000000000..8bf121e2d --- /dev/null +++ b/slices/libdrm2.yaml @@ -0,0 +1,16 @@ +package: libdrm2 + +essential: + - libdrm2_copyright + +slices: + libs: + essential: + - libc6_libs + - libdrm-common_data + contents: + /usr/lib/*-linux-*/libdrm.so.2*: + + copyright: + contents: + /usr/share/doc/libdrm2/copyright: diff --git a/slices/libexif12.yaml b/slices/libexif12.yaml new file mode 100644 index 000000000..f323e0876 --- /dev/null +++ b/slices/libexif12.yaml @@ -0,0 +1,15 @@ +package: libexif12 + +essential: + - libexif12_copyright + +slices: + libs: + essential: + - libc6_libs + contents: + /usr/lib/*-linux-*/libexif.so.12*: + + copyright: + contents: + /usr/share/doc/libexif12/copyright: diff --git a/slices/libfontconfig1.yaml b/slices/libfontconfig1.yaml new file mode 100644 index 000000000..dde809d9b --- /dev/null +++ b/slices/libfontconfig1.yaml @@ -0,0 +1,18 @@ +package: libfontconfig1 + +essential: + - libfontconfig1_copyright + +slices: + libs: + essential: + - fontconfig-config_config + - libc6_libs + - libexpat1_libs + - libfreetype6_libs + contents: + /usr/lib/*-linux-*/libfontconfig.so.1*: + + copyright: + contents: + /usr/share/doc/libfontconfig1/copyright: diff --git a/slices/libfontenc1.yaml b/slices/libfontenc1.yaml new file mode 100644 index 000000000..ba2bcd2e2 --- /dev/null +++ b/slices/libfontenc1.yaml @@ -0,0 +1,16 @@ +package: libfontenc1 + +essential: + - libfontenc1_copyright + +slices: + libs: + essential: + - libc6_libs + - zlib1g_libs + contents: + /usr/lib/*-linux-*/libfontenc.so.1*: + + copyright: + contents: + /usr/share/doc/libfontenc1/copyright: diff --git a/slices/libfreetype6.yaml b/slices/libfreetype6.yaml new file mode 100644 index 000000000..5bf0ce523 --- /dev/null +++ b/slices/libfreetype6.yaml @@ -0,0 +1,19 @@ +package: libfreetype6 + +essential: + - libfreetype6_copyright + +slices: + libs: + essential: + - libbrotli1_libs + - libbz2-1.0_libs + - libc6_libs + - libpng16-16t64_libs + - zlib1g_libs + contents: + /usr/lib/*-linux-*/libfreetype.so.6*: + + copyright: + contents: + /usr/share/doc/libfreetype6/copyright: diff --git a/slices/libgdiplus.yaml b/slices/libgdiplus.yaml new file mode 100644 index 000000000..1f69cc5ea --- /dev/null +++ b/slices/libgdiplus.yaml @@ -0,0 +1,27 @@ +package: libgdiplus + +essential: + - libgdiplus_copyright + +slices: + libs: + essential: + - libc6_libs + - libcairo2_libs + - libexif12_libs + - libfontconfig1_libs + - libgif7_libs + - libglib2.0-0t64_libs + - libharfbuzz0b_libs + - libjpeg8_libs + - libpango-1.0-0_libs + - libpangocairo-1.0-0_libs + - libpng16-16t64_libs + - libtiff6_libs + - libx11-6_libs + contents: + /usr/lib/libgdiplus.so.0*: + + copyright: + contents: + /usr/share/doc/libgdiplus/copyright: diff --git a/slices/libglib2.0-0t64.yaml b/slices/libglib2.0-0t64.yaml new file mode 100644 index 000000000..b5b6d281d --- /dev/null +++ b/slices/libglib2.0-0t64.yaml @@ -0,0 +1,56 @@ +package: libglib2.0-0t64 + +essential: + - libglib2.0-0t64_copyright + +slices: + bins: + essential: + # On armhf (only), these also need libgcc-s1_libs + - libglib2.0-0t64_libs + contents: + /usr/lib/*-linux-*/glib-2.0/*: + + core: + essential: + - libatomic1_libs + - libc6_libs + - libpcre2-8-0_libs + contents: + /usr/lib/*-linux-*/libglib-2.0.so.0*: + + libgmodule: + essential: + - libglib2.0-0t64_core + contents: + /usr/lib/*-linux-*/libgmodule-2.0.so.0*: + + libgobject: + essential: + - libffi8_libs + - libglib2.0-0t64_core + contents: + /usr/lib/*-linux-*/libgobject-2.0.so.0*: + + libgthread: + essential: + - libglib2.0-0t64_core + contents: + /usr/lib/*-linux-*/libgthread-2.0.so.0*: + + libs: + essential: + - libffi8_libs + - libglib2.0-0t64_core + - libglib2.0-0t64_libgmodule + - libglib2.0-0t64_libgobject + - libglib2.0-0t64_libgthread + - libmount1_libs + - libselinux1_libs + - zlib1g_libs + contents: + /usr/lib/*-linux-*/libgio-2.0.so.0*: + + copyright: + contents: + /usr/share/doc/libglib2.0-0t64/copyright: diff --git a/slices/libharfbuzz0b.yaml b/slices/libharfbuzz0b.yaml new file mode 100644 index 000000000..8c6753e9c --- /dev/null +++ b/slices/libharfbuzz0b.yaml @@ -0,0 +1,18 @@ +package: libharfbuzz0b + +essential: + - libharfbuzz0b_copyright + +slices: + libs: + essential: + - libc6_libs + - libfreetype6_libs + - libglib2.0-0t64_libs + - libgraphite2-3_libs + contents: + /usr/lib/*-linux-*/libharfbuzz.so.0*: + + copyright: + contents: + /usr/share/doc/libharfbuzz0b/copyright: diff --git a/slices/libnpth0t64.yaml b/slices/libnpth0t64.yaml new file mode 100644 index 000000000..54b18e4d9 --- /dev/null +++ b/slices/libnpth0t64.yaml @@ -0,0 +1,15 @@ +package: libnpth0t64 + +essential: + - libnpth0t64_copyright + +slices: + libs: + essential: + - libc6_libs + contents: + /usr/lib/*-linux-*/libnpth.so.0*: + + copyright: + contents: + /usr/share/doc/libnpth0t64/copyright: diff --git a/slices/libnspr4.yaml b/slices/libnspr4.yaml new file mode 100644 index 000000000..7671e17f2 --- /dev/null +++ b/slices/libnspr4.yaml @@ -0,0 +1,17 @@ +package: libnspr4 + +essential: + - libnspr4_copyright + +slices: + libs: + essential: + - libc6_libs + contents: + /usr/lib/*-linux-*/libnspr4.so: + /usr/lib/*-linux-*/libplc4.so: + /usr/lib/*-linux-*/libplds4.so: + + copyright: + contents: + /usr/share/doc/libnspr4/copyright: diff --git a/slices/libnss3.yaml b/slices/libnss3.yaml new file mode 100644 index 000000000..db5c002e5 --- /dev/null +++ b/slices/libnss3.yaml @@ -0,0 +1,40 @@ +# Network Security Service libraries. +# +# This is a set of libraries designed to support cross-platform development of +# security-enabled client and server applications. It can support SSLv2 and v4, +# TLS, PKCS #5, #7, #11, #12, S/MIME, X.509 v3 certificates and other security +# standards. +package: libnss3 + +essential: + - libnss3_copyright + +slices: + # The libs slice contains all the libraries coming from this package. + libs: + essential: + # This package still has many other libraries which are not part of any + # slices yet. Upon creation of new slices containing those libraries, + # make sure to add those slices in this list. + - libnss3_nss + - libnss3_smime + + nss: + essential: + - libc6_libs + - libnspr4_libs + - libsqlite3-0_libs + contents: + /usr/lib/*-linux-*/libnss3.so: + /usr/lib/*-linux-*/libnssutil3.so: + + smime: + essential: + - libc6_libs + - libnspr4_libs + contents: + /usr/lib/*-linux-*/libsmime3.so: + + copyright: + contents: + /usr/share/doc/libnss3/copyright: diff --git a/slices/libpango-1.0-0.yaml b/slices/libpango-1.0-0.yaml new file mode 100644 index 000000000..ee8973271 --- /dev/null +++ b/slices/libpango-1.0-0.yaml @@ -0,0 +1,20 @@ +package: libpango-1.0-0 + +essential: + - libpango-1.0-0_copyright + +slices: + libs: + essential: + - fontconfig_bins + - libc6_libs + - libfribidi0_libs + - libglib2.0-0t64_libs + - libharfbuzz0b_libs + - libthai0_libs + contents: + /usr/lib/*-linux-*/libpango-1.0.so.0*: + + copyright: + contents: + /usr/share/doc/libpango-1.0-0/copyright: diff --git a/slices/libpangocairo-1.0-0.yaml b/slices/libpangocairo-1.0-0.yaml new file mode 100644 index 000000000..cfe48d150 --- /dev/null +++ b/slices/libpangocairo-1.0-0.yaml @@ -0,0 +1,21 @@ +package: libpangocairo-1.0-0 + +essential: + - libpangocairo-1.0-0_copyright + +slices: + libs: + essential: + - libc6_libs + - libcairo2_libs + - libfontconfig1_libs + - libglib2.0-0t64_libs + - libharfbuzz0b_libs + - libpango-1.0-0_libs + - libpangoft2-1.0-0_libs + contents: + /usr/lib/*-linux-*/libpangocairo-1.0.so.0*: + + copyright: + contents: + /usr/share/doc/libpangocairo-1.0-0/copyright: diff --git a/slices/libpangoft2-1.0-0.yaml b/slices/libpangoft2-1.0-0.yaml new file mode 100644 index 000000000..f17bb03f2 --- /dev/null +++ b/slices/libpangoft2-1.0-0.yaml @@ -0,0 +1,20 @@ +package: libpangoft2-1.0-0 + +essential: + - libpangoft2-1.0-0_copyright + +slices: + libs: + essential: + - libc6_libs + - libfontconfig1_libs + - libfreetype6_libs + - libglib2.0-0t64_libs + - libharfbuzz0b_libs + - libpango-1.0-0_libs + contents: + /usr/lib/*-linux-*/libpangoft2-1.0.so.0*: + + copyright: + contents: + /usr/share/doc/libpangoft2-1.0-0/copyright: diff --git a/slices/libpcsclite1.yaml b/slices/libpcsclite1.yaml new file mode 100644 index 000000000..e6a7c2919 --- /dev/null +++ b/slices/libpcsclite1.yaml @@ -0,0 +1,15 @@ +package: libpcsclite1 + +essential: + - libpcsclite1_copyright + +slices: + libs: + essential: + - libc6_libs + contents: + /usr/lib/*-linux-*/libpcsclite.so.1*: + + copyright: + contents: + /usr/share/doc/libpcsclite1/copyright: diff --git a/slices/libthai-data.yaml b/slices/libthai-data.yaml new file mode 100644 index 000000000..a9b9a36db --- /dev/null +++ b/slices/libthai-data.yaml @@ -0,0 +1,13 @@ +package: libthai-data + +essential: + - libthai-data_copyright + +slices: + data: + contents: + /usr/share/libthai/thbrk.tri: + + copyright: + contents: + /usr/share/doc/libthai-data/copyright: diff --git a/slices/libthai0.yaml b/slices/libthai0.yaml new file mode 100644 index 000000000..7f64eb764 --- /dev/null +++ b/slices/libthai0.yaml @@ -0,0 +1,17 @@ +package: libthai0 + +essential: + - libthai0_copyright + +slices: + libs: + essential: + - libc6_libs + - libdatrie1_libs + - libthai-data_data + contents: + /usr/lib/*-linux-*/libthai.so.0*: + + copyright: + contents: + /usr/share/doc/libthai0/copyright: diff --git a/slices/libva-drm2.yaml b/slices/libva-drm2.yaml new file mode 100644 index 000000000..a5a70d1e3 --- /dev/null +++ b/slices/libva-drm2.yaml @@ -0,0 +1,17 @@ +package: libva-drm2 + +essential: + - libva-drm2_copyright + +slices: + libs: + essential: + - libc6_libs + - libdrm2_libs + - libva2_libs + contents: + /usr/lib/*-linux-*/libva-drm.so.2*: + + copyright: + contents: + /usr/share/doc/libva-drm2/copyright: diff --git a/slices/libwayland-client0.yaml b/slices/libwayland-client0.yaml new file mode 100644 index 000000000..a8a20c5e5 --- /dev/null +++ b/slices/libwayland-client0.yaml @@ -0,0 +1,16 @@ +package: libwayland-client0 + +essential: + - libwayland-client0_copyright + +slices: + libs: + essential: + - libc6_libs + - libffi8_libs + contents: + /usr/lib/*-linux-*/libwayland-client.so.0*: + + copyright: + contents: + /usr/share/doc/libwayland-client0/copyright: diff --git a/slices/libx11-6.yaml b/slices/libx11-6.yaml new file mode 100644 index 000000000..43157b594 --- /dev/null +++ b/slices/libx11-6.yaml @@ -0,0 +1,17 @@ +package: libx11-6 + +essential: + - libx11-6_copyright + +slices: + libs: + essential: + - libc6_libs + - libx11-data_data + - libxcb1_libs + contents: + /usr/lib/*-linux-*/libX11.so.6*: + + copyright: + contents: + /usr/share/doc/libx11-6/copyright: diff --git a/slices/libx11-data.yaml b/slices/libx11-data.yaml new file mode 100644 index 000000000..db8f4b664 --- /dev/null +++ b/slices/libx11-data.yaml @@ -0,0 +1,83 @@ +package: libx11-data + +essential: + - libx11-data_copyright + +slices: + data: + essential: + - libx11-data_locale + contents: + /usr/share/X11/XErrorDB: + + locale: + contents: + /usr/share/X11/locale/C/**: + /usr/share/X11/locale/am_ET.UTF-8/**: + /usr/share/X11/locale/armscii-8/**: + /usr/share/X11/locale/compose.dir: + /usr/share/X11/locale/cs_CZ.UTF-8/**: + /usr/share/X11/locale/el_GR.UTF-8/**: + /usr/share/X11/locale/en_US.UTF-8/**: + /usr/share/X11/locale/fi_FI.UTF-8/**: + /usr/share/X11/locale/georgian-academy/**: + /usr/share/X11/locale/georgian-ps/**: + /usr/share/X11/locale/ibm-cp1133/**: + /usr/share/X11/locale/iscii-dev/**: + /usr/share/X11/locale/isiri-3342/**: + /usr/share/X11/locale/iso8859-1/**: + /usr/share/X11/locale/iso8859-10/**: + /usr/share/X11/locale/iso8859-11/**: + /usr/share/X11/locale/iso8859-13/**: + /usr/share/X11/locale/iso8859-14/**: + /usr/share/X11/locale/iso8859-15/**: + /usr/share/X11/locale/iso8859-2/**: + /usr/share/X11/locale/iso8859-3/**: + /usr/share/X11/locale/iso8859-4/**: + /usr/share/X11/locale/iso8859-5/**: + /usr/share/X11/locale/iso8859-6/**: + /usr/share/X11/locale/iso8859-7/**: + /usr/share/X11/locale/iso8859-8/**: + /usr/share/X11/locale/iso8859-9/**: + /usr/share/X11/locale/iso8859-9e/**: + /usr/share/X11/locale/ja.JIS/**: + /usr/share/X11/locale/ja.SJIS/**: + /usr/share/X11/locale/ja/**: + /usr/share/X11/locale/ja_JP.UTF-8/**: + /usr/share/X11/locale/km_KH.UTF-8/**: + /usr/share/X11/locale/ko/**: + /usr/share/X11/locale/ko_KR.UTF-8/**: + /usr/share/X11/locale/koi8-c/**: + /usr/share/X11/locale/koi8-r/**: + /usr/share/X11/locale/koi8-u/**: + /usr/share/X11/locale/locale.alias: + /usr/share/X11/locale/locale.dir: + /usr/share/X11/locale/microsoft-cp1251/**: + /usr/share/X11/locale/microsoft-cp1255/**: + /usr/share/X11/locale/microsoft-cp1256/**: + /usr/share/X11/locale/mulelao-1/**: + /usr/share/X11/locale/nokhchi-1/**: + /usr/share/X11/locale/pt_BR.UTF-8/**: + /usr/share/X11/locale/pt_PT.UTF-8/**: + /usr/share/X11/locale/ru_RU.UTF-8/**: + /usr/share/X11/locale/sr_RS.UTF-8/**: + /usr/share/X11/locale/tatar-cyr/**: + /usr/share/X11/locale/th_TH.UTF-8/**: + /usr/share/X11/locale/th_TH/**: + /usr/share/X11/locale/tscii-0/**: + /usr/share/X11/locale/vi_VN.tcvn/**: + /usr/share/X11/locale/vi_VN.viscii/**: + /usr/share/X11/locale/zh_CN.UTF-8/**: + /usr/share/X11/locale/zh_CN.gb18030/**: + /usr/share/X11/locale/zh_CN.gbk/**: + /usr/share/X11/locale/zh_CN/**: + /usr/share/X11/locale/zh_HK.UTF-8/**: + /usr/share/X11/locale/zh_HK.big5/**: + /usr/share/X11/locale/zh_HK.big5hkscs/**: + /usr/share/X11/locale/zh_TW.UTF-8/**: + /usr/share/X11/locale/zh_TW.big5/**: + /usr/share/X11/locale/zh_TW/**: + + copyright: + contents: + /usr/share/doc/libx11-data/copyright: diff --git a/slices/libxcb-render0.yaml b/slices/libxcb-render0.yaml new file mode 100644 index 000000000..180344b2f --- /dev/null +++ b/slices/libxcb-render0.yaml @@ -0,0 +1,16 @@ +package: libxcb-render0 + +essential: + - libxcb-render0_copyright + +slices: + libs: + essential: + - libc6_libs + - libxcb1_libs + contents: + /usr/lib/*-linux-*/libxcb-render.so.0*: + + copyright: + contents: + /usr/share/doc/libxcb-render0/copyright: diff --git a/slices/libxcb-shm0.yaml b/slices/libxcb-shm0.yaml new file mode 100644 index 000000000..282829500 --- /dev/null +++ b/slices/libxcb-shm0.yaml @@ -0,0 +1,16 @@ +package: libxcb-shm0 + +essential: + - libxcb-shm0_copyright + +slices: + libs: + essential: + - libc6_libs + - libxcb1_libs + contents: + /usr/lib/*-linux-*/libxcb-shm.so.0*: + + copyright: + contents: + /usr/share/doc/libxcb-shm0/copyright: diff --git a/slices/libxcb1.yaml b/slices/libxcb1.yaml new file mode 100644 index 000000000..36aa3b845 --- /dev/null +++ b/slices/libxcb1.yaml @@ -0,0 +1,17 @@ +package: libxcb1 + +essential: + - libxcb1_copyright + +slices: + libs: + essential: + - libc6_libs + - libxau6_libs + - libxdmcp6_libs + contents: + /usr/lib/*-linux-*/libxcb.so.1*: + + copyright: + contents: + /usr/share/doc/libxcb1/copyright: diff --git a/slices/libxdmcp6.yaml b/slices/libxdmcp6.yaml new file mode 100644 index 000000000..7c28abadf --- /dev/null +++ b/slices/libxdmcp6.yaml @@ -0,0 +1,16 @@ +package: libxdmcp6 + +essential: + - libxdmcp6_copyright + +slices: + libs: + essential: + - libbsd0_libs + - libc6_libs + contents: + /usr/lib/*-linux-*/libXdmcp.so.6*: + + copyright: + contents: + /usr/share/doc/libxdmcp6/copyright: diff --git a/slices/libxext6.yaml b/slices/libxext6.yaml new file mode 100644 index 000000000..ae7c8fe9e --- /dev/null +++ b/slices/libxext6.yaml @@ -0,0 +1,16 @@ +package: libxext6 + +essential: + - libxext6_copyright + +slices: + libs: + essential: + - libc6_libs + - libx11-6_libs + contents: + /usr/lib/*-linux-*/libXext.so.6*: + + copyright: + contents: + /usr/share/doc/libxext6/copyright: diff --git a/slices/libxrender1.yaml b/slices/libxrender1.yaml new file mode 100644 index 000000000..c2ff3f1cb --- /dev/null +++ b/slices/libxrender1.yaml @@ -0,0 +1,16 @@ +package: libxrender1 + +essential: + - libxrender1_copyright + +slices: + libs: + essential: + - libc6_libs + - libx11-6_libs + contents: + /usr/lib/*-linux-*/libXrender.so.1*: + + copyright: + contents: + /usr/share/doc/libxrender1/copyright: diff --git a/slices/libzvbi0t64.yaml b/slices/libzvbi0t64.yaml new file mode 100644 index 000000000..6ce898744 --- /dev/null +++ b/slices/libzvbi0t64.yaml @@ -0,0 +1,19 @@ +package: libzvbi0t64 + +essential: + - libzvbi0t64_copyright + +slices: + libs: + essential: + - libc6_libs + - libpng16-16t64_libs + # The dependency on libzvbi-common is omitted as that package only contains + # translation strings in machine object files under /usr/share/locale + contents: + /usr/lib/*-linux-*/libzvbi-chains.so.0*: + /usr/lib/*-linux-*/libzvbi.so.0*: + + copyright: + contents: + /usr/share/doc/libzvbi0t64/copyright: diff --git a/slices/openjdk-11-jdk-headless.yaml b/slices/openjdk-11-jdk-headless.yaml new file mode 100644 index 000000000..a2436fab4 --- /dev/null +++ b/slices/openjdk-11-jdk-headless.yaml @@ -0,0 +1,162 @@ +package: openjdk-11-jdk-headless + +essential: + - openjdk-11-jdk-headless_copyright + +slices: + + # OpenJDK binaries slice + core: + essential: + - libc6_libs + - openjdk-11-jre-headless_core + - openjdk-11-jre-headless_javac + - zlib1g_libs + contents: + /usr/lib/jvm/java-11-openjdk-*/bin/javac: + /usr/lib/jvm/java-11-openjdk-*/bin/javadoc: + /usr/lib/jvm/java-11-openjdk-*/bin/javap: + /usr/lib/jvm/java-11-openjdk-*/bin/jdeprscan: + /usr/lib/jvm/java-11-openjdk-*/bin/jdeps: + /usr/lib/jvm/java-11-openjdk-*/bin/jimage: + /usr/lib/jvm/java-11-openjdk-*/bin/serialver: + + # excludes jaotc - this requires binutils + standard: + essential: + - openjdk-11-jdk-headless_core + - openjdk-11-jre-headless_standard + contents: + /usr/lib/jvm/java-11-openjdk-*/bin/jar: + /usr/lib/jvm/java-11-openjdk-*/bin/jarsigner: + /usr/lib/jvm/java-11-openjdk-*/bin/jcmd: + /usr/lib/jvm/java-11-openjdk-*/bin/jdb: + /usr/lib/jvm/java-11-openjdk-*/bin/jfr: + /usr/lib/jvm/java-11-openjdk-*/bin/jhsdb: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-11-openjdk-*/bin/jinfo: + /usr/lib/jvm/java-11-openjdk-*/bin/jmap: + /usr/lib/jvm/java-11-openjdk-*/bin/jps: + /usr/lib/jvm/java-11-openjdk-*/bin/jrunscript: + /usr/lib/jvm/java-11-openjdk-*/bin/jshell: + /usr/lib/jvm/java-11-openjdk-*/bin/jstack: + /usr/lib/jvm/java-11-openjdk-*/bin/jstat: + /usr/lib/jvm/java-11-openjdk-*/bin/jstatd: + /usr/lib/jvm/java-11-openjdk-*/bin/rmic: + + # OpenJDK modules required to build the runtime image + modules: + essential: + - openjdk-11-jdk-headless_core + contents: + /usr/lib/jvm/java-11-openjdk-*/bin/jlink: + /usr/lib/jvm/java-11-openjdk-*/bin/jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.base.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.compiler.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.datatransfer.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.desktop.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.instrument.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.logging.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.management.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.management.rmi.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.naming.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.net.http.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.prefs.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.rmi.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.scripting.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.se.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.security.jgss.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.security.sasl.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.smartcardio.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.sql.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.sql.rowset.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.transaction.xa.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.xml.crypto.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/java.xml.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.accessibility.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.aot.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.attach.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.charsets.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.compiler.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.crypto.cryptoki.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.crypto.ec.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.dynalink.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.editpad.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.hotspot.agent.jmod: + arch: + - amd64 + - arm64 + - ppc64el + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.httpserver.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.ed.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.jvmstat.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.le.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.opt.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.vm.ci.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.vm.compiler.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.internal.vm.compiler.management.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jartool.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.javadoc.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jcmd.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jconsole.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jdeps.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jdi.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jdwp.agent.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jfr.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jlink.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jshell.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jsobject.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.jstatd.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.localedata.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.management.agent.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.management.jfr.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.management.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.naming.dns.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.naming.ldap.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.naming.rmi.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.net.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.pack.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.rmic.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.scripting.nashorn.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.scripting.nashorn.shell.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.sctp.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.security.auth.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.security.jgss.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.unsupported.desktop.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.unsupported.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.xml.dom.jmod: + /usr/lib/jvm/java-11-openjdk-*/jmods/jdk.zipfs.jmod: + + # OpenJDK headers for JNI + headers: + contents: + /usr/lib/jvm/java-11-openjdk-*/include/classfile_constants.h: + /usr/lib/jvm/java-11-openjdk-*/include/jni.h: + /usr/lib/jvm/java-11-openjdk-*/include/jvmti.h: + /usr/lib/jvm/java-11-openjdk-*/include/jvmticmlr.h: + /usr/lib/jvm/java-11-openjdk-*/include/linux/jni_md.h: + + # OpenJDK headers for the debug agent development + debug-headers: + contents: + /usr/lib/jvm/java-11-openjdk-*/include/jdwpTransport.h: + + copyright: + essential: + - openjdk-11-jre-headless_copyright + contents: + /usr/share/doc/openjdk-11-jdk-headless: diff --git a/slices/openjdk-11-jre-headless.yaml b/slices/openjdk-11-jre-headless.yaml new file mode 100644 index 000000000..be246c315 --- /dev/null +++ b/slices/openjdk-11-jre-headless.yaml @@ -0,0 +1,192 @@ +package: openjdk-11-jre-headless + +essential: + - openjdk-11-jre-headless_copyright + +slices: + + # A minimal set of files to run a Java application + # excluded dependencies: + # - ca-certificates-java_essential - needs chisel support to run + # maintainer scripts. + # - java-common - provides update-alternatives, + # not relevant. + # - util-linux - needed for bash completion + # not relevant. + # - libjpeg8 - used in awt, not relevant + # - liblcms2-2 - used in awt, not relevant + standard: + essential: + - openjdk-11-jre-headless_class-data-sharing + - openjdk-11-jre-headless_core + - openjdk-11-jre-headless_debug + - openjdk-11-jre-headless_jfr + - openjdk-11-jre-headless_management + - openjdk-11-jre-headless_prefs + - openjdk-11-jre-headless_rmi + - openjdk-11-jre-headless_security + - openjdk-11-jre-headless_tools + + # List of classes required to create the Class Data Sharing archive + class-data-sharing: + essential: + - openjdk-11-jre-headless_core + contents: + /usr/lib/jvm/java-11-openjdk-*/lib/classlist: + arch: + - amd64 + - arm64 + - armhf + - i386 + - ppc64el + - s390x + + # A minimal set of files to run a Java application + core: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + - zlib1g_libs + contents: + /etc/java-11-openjdk/jvm-*.cfg: + /etc/java-11-openjdk/logging.properties: + /etc/java-11-openjdk/management/jmxremote.access: + /etc/java-11-openjdk/management/management.properties: + /etc/java-11-openjdk/net.properties: + /etc/java-11-openjdk/security/java.policy: + /etc/java-11-openjdk/security/java.security: + /usr/lib/jvm/java-11-openjdk-*/bin/java: + /usr/lib/jvm/java-11-openjdk-*/conf/logging.properties: + /usr/lib/jvm/java-11-openjdk-*/conf/management/jmxremote.access: + /usr/lib/jvm/java-11-openjdk-*/conf/management/management.properties: + /usr/lib/jvm/java-11-openjdk-*/conf/net.properties: + /usr/lib/jvm/java-11-openjdk-*/conf/security/java.policy: + /usr/lib/jvm/java-11-openjdk-*/conf/security/java.security: + /usr/lib/jvm/java-11-openjdk-*/lib/jexec: + /usr/lib/jvm/java-11-openjdk-*/lib/jli/libjli.so: + /usr/lib/jvm/java-11-openjdk-*/lib/jspawnhelper: + /usr/lib/jvm/java-11-openjdk-*/lib/jvm.cfg: + /usr/lib/jvm/java-11-openjdk-*/lib/libextnet.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libjava.so: + # lib/modules support + /usr/lib/jvm/java-11-openjdk-*/lib/libjimage.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libjsig.so: + # required for IO. + /usr/lib/jvm/java-11-openjdk-*/lib/libnet.so: + # required for IO. + /usr/lib/jvm/java-11-openjdk-*/lib/libnio.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libverify.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libzip.so: + /usr/lib/jvm/java-11-openjdk-*/lib/modules: + /usr/lib/jvm/java-11-openjdk-*/lib/server/libjsig.so: + /usr/lib/jvm/java-11-openjdk-*/lib/server/libjvm.so: + /usr/lib/jvm/java-11-openjdk-*/lib/tzdb.dat: + + # Native part of jdk.prefs modules + prefs: + essential: + - openjdk-11-jre-headless_core + contents: + /usr/lib/jvm/java-11-openjdk-*/lib/libprefs.so: + + # Native part of java.rmi + rmi: + essential: + - openjdk-11-jre-headless_security + contents: + /usr/lib/jvm/java-11-openjdk-*/bin/rmid: + /usr/lib/jvm/java-11-openjdk-*/bin/rmiregistry: + /usr/lib/jvm/java-11-openjdk-*/lib/librmi.so: + + # Debug support + debug: + essential: + - openjdk-11-jre-headless_core + contents: + /usr/lib/jvm/java-11-openjdk-*/lib/libattach.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libdt_socket.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libinstrument.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libjdwp.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libsaproc.so: + arch: + - amd64 + - arm64 + - armhf + - ppc64el + + # Configuration and native part of Java Management Extensions + management: + essential: + - openjdk-11-jre-headless_rmi + contents: + /etc/java-11-openjdk/management/jmxremote.access: + /etc/java-11-openjdk/management/management.properties: + /usr/lib/jvm/java-11-openjdk-*/conf/management/jmxremote.access: + /usr/lib/jvm/java-11-openjdk-*/conf/management/management.properties: + /usr/lib/jvm/java-11-openjdk-*/lib/libmanagement.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libmanagement_agent.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libmanagement_ext.so: + + # Security configuration files and native libraries + security: + essential: + - libnss3_nss + - libpcsclite1_libs + - openjdk-11-jre-headless_core + contents: + /etc/java-11-openjdk/security/blocked.certs: + /etc/java-11-openjdk/security/default.policy: + /etc/java-11-openjdk/security/nss.cfg: + /etc/java-11-openjdk/security/policy/limited/default_US_export.policy: + /etc/java-11-openjdk/security/policy/limited/default_local.policy: + /etc/java-11-openjdk/security/policy/limited/exempt_local.policy: + /etc/java-11-openjdk/security/policy/unlimited/default_US_export.policy: + /etc/java-11-openjdk/security/policy/unlimited/default_local.policy: + /etc/java-11-openjdk/security/public_suffix_list.dat: + /usr/lib/jvm/java-11-openjdk-*/conf/security/nss.cfg: + /usr/lib/jvm/java-11-openjdk-*/conf/security/policy/limited/default_US_export.policy: + /usr/lib/jvm/java-11-openjdk-*/conf/security/policy/limited/default_local.policy: + /usr/lib/jvm/java-11-openjdk-*/conf/security/policy/limited/exempt_local.policy: + /usr/lib/jvm/java-11-openjdk-*/conf/security/policy/unlimited/default_US_export.policy: + /usr/lib/jvm/java-11-openjdk-*/conf/security/policy/unlimited/default_local.policy: + /usr/lib/jvm/java-11-openjdk-*/lib/libj2gss.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libj2pcsc.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libj2pkcs11.so: + /usr/lib/jvm/java-11-openjdk-*/lib/libjaas.so: + /usr/lib/jvm/java-11-openjdk-*/lib/security/blocked.certs: + /usr/lib/jvm/java-11-openjdk-*/lib/security/cacerts: + /usr/lib/jvm/java-11-openjdk-*/lib/security/default.policy: + /usr/lib/jvm/java-11-openjdk-*/lib/security/public_suffix_list.dat: + + # OpenJDK tools + tools: + essential: + - openjdk-11-jre-headless_security + contents: + /usr/lib/jvm/java-11-openjdk-*/bin/jjs: + /usr/lib/jvm/java-11-openjdk-*/bin/keytool: + /usr/lib/jvm/java-11-openjdk-*/bin/pack200: + /usr/lib/jvm/java-11-openjdk-*/bin/unpack200: + + # Java Flight Recorder configuration and jar file + jfr: + essential: + - openjdk-11-jre-headless_core + contents: + /etc/java-11-openjdk/jfr/default.jfc: + /etc/java-11-openjdk/jfr/profile.jfc: + /usr/lib/jvm/java-11-openjdk-*/lib/jfr/default.jfc: + /usr/lib/jvm/java-11-openjdk-*/lib/jfr/profile.jfc: + /usr/lib/jvm/java-11-openjdk-*/lib/jrt-fs.jar: + + # Javac JDK API signatures for the backwards compatibility + javac: + essential: + - openjdk-11-jre-headless_core + contents: + /usr/lib/jvm/java-11-openjdk-*/lib/ct.sym: + + copyright: + contents: + /usr/share/doc/openjdk-11-jre-headless/copyright: diff --git a/slices/openjdk-17-jdk-headless.yaml b/slices/openjdk-17-jdk-headless.yaml new file mode 100644 index 000000000..72ca2c274 --- /dev/null +++ b/slices/openjdk-17-jdk-headless.yaml @@ -0,0 +1,156 @@ +package: openjdk-17-jdk-headless + +essential: + - openjdk-17-jdk-headless_copyright + +slices: + + # OpenJDK binaries slice + core: + essential: + - libc6_libs + - openjdk-17-jre-headless_core + - openjdk-17-jre-headless_javac + - zlib1g_libs + contents: + /usr/lib/jvm/java-17-openjdk-*/bin/javac: + /usr/lib/jvm/java-17-openjdk-*/bin/javadoc: + /usr/lib/jvm/java-17-openjdk-*/bin/javap: + /usr/lib/jvm/java-17-openjdk-*/bin/jdeprscan: + /usr/lib/jvm/java-17-openjdk-*/bin/jdeps: + /usr/lib/jvm/java-17-openjdk-*/bin/jimage: + /usr/lib/jvm/java-17-openjdk-*/bin/serialver: + + standard: + essential: + - openjdk-17-jdk-headless_core + - openjdk-17-jre-headless_standard + contents: + /usr/lib/jvm/java-17-openjdk-*/bin/jar: + /usr/lib/jvm/java-17-openjdk-*/bin/jarsigner: + /usr/lib/jvm/java-17-openjdk-*/bin/jcmd: + /usr/lib/jvm/java-17-openjdk-*/bin/jdb: + /usr/lib/jvm/java-17-openjdk-*/bin/jfr: + /usr/lib/jvm/java-17-openjdk-*/bin/jhsdb: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-17-openjdk-*/bin/jinfo: + /usr/lib/jvm/java-17-openjdk-*/bin/jmap: + /usr/lib/jvm/java-17-openjdk-*/bin/jps: + /usr/lib/jvm/java-17-openjdk-*/bin/jrunscript: + /usr/lib/jvm/java-17-openjdk-*/bin/jshell: + /usr/lib/jvm/java-17-openjdk-*/bin/jstack: + /usr/lib/jvm/java-17-openjdk-*/bin/jstat: + /usr/lib/jvm/java-17-openjdk-*/bin/jstatd: + + # OpenJDK modules required to build the runtime image + modules: + essential: + - openjdk-17-jdk-headless_core + contents: + /usr/lib/jvm/java-17-openjdk-*/bin/jlink: + /usr/lib/jvm/java-17-openjdk-*/bin/jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.base.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.compiler.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.datatransfer.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.desktop.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.instrument.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.logging.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.management.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.management.rmi.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.naming.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.net.http.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.prefs.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.rmi.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.scripting.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.se.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.security.jgss.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.security.sasl.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.smartcardio.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.sql.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.sql.rowset.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.transaction.xa.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.xml.crypto.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/java.xml.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.accessibility.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.attach.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.charsets.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.compiler.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.crypto.cryptoki.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.crypto.ec.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.dynalink.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.editpad.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.hotspot.agent.jmod: + arch: + - amd64 + - arm64 + - ppc64el + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.httpserver.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.incubator.foreign.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.incubator.vector.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.ed.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.jvmstat.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.le.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.opt.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.vm.ci.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.vm.compiler.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.internal.vm.compiler.management.jmod: + arch: + - amd64 + - arm64 + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jartool.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.javadoc.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jcmd.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jconsole.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jdeps.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jdi.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jdwp.agent.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jfr.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jlink.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jpackage.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jshell.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jsobject.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.jstatd.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.localedata.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.management.agent.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.management.jfr.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.management.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.naming.dns.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.naming.rmi.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.net.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.nio.mapmode.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.random.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.sctp.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.security.auth.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.security.jgss.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.unsupported.desktop.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.unsupported.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.xml.dom.jmod: + /usr/lib/jvm/java-17-openjdk-*/jmods/jdk.zipfs.jmod: + + # OpenJDK headers for JNI + headers: + contents: + /usr/lib/jvm/java-17-openjdk-*/include/classfile_constants.h: + /usr/lib/jvm/java-17-openjdk-*/include/jni.h: + /usr/lib/jvm/java-17-openjdk-*/include/jvmti.h: + /usr/lib/jvm/java-17-openjdk-*/include/jvmticmlr.h: + /usr/lib/jvm/java-17-openjdk-*/include/linux/jni_md.h: + + # OpenJDK headers for the debug agent development + debug-headers: + contents: + /usr/lib/jvm/java-17-openjdk-*/include/jdwpTransport.h: + + copyright: + essential: + - openjdk-17-jre-headless_copyright + contents: + /usr/share/doc/openjdk-17-jdk-headless: diff --git a/slices/openjdk-17-jre-headless.yaml b/slices/openjdk-17-jre-headless.yaml new file mode 100644 index 000000000..89f32df2f --- /dev/null +++ b/slices/openjdk-17-jre-headless.yaml @@ -0,0 +1,179 @@ +package: openjdk-17-jre-headless + +essential: + - openjdk-17-jre-headless_copyright + +slices: + + standard: + essential: + - openjdk-17-jre-headless_class-data-sharing + - openjdk-17-jre-headless_core + - openjdk-17-jre-headless_debug + - openjdk-17-jre-headless_jfr + - openjdk-17-jre-headless_management + - openjdk-17-jre-headless_prefs + - openjdk-17-jre-headless_rmi + - openjdk-17-jre-headless_security + - openjdk-17-jre-headless_tools + + # List of classes required to create the Class Data Sharing archive + class-data-sharing: + essential: + - openjdk-17-jre-headless_core + contents: + /usr/lib/jvm/java-17-openjdk-*/lib/classlist: + + # A minimal set of files to run a Java application + # excluded dependencies: + # - ca-certificates-java_essential - needs chisel support to run + # maintainer scripts. + # - java-common - provides update-alternatives, + # not relevant. + # - util-linux - needed for bash completion + # not relevant. + # - libjpeg8 - used in awt, not relevant + # - liblcms2-2 - used in awt, not relevant + core: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + - zlib1g_libs + contents: + /etc/java-17-openjdk/jvm-*.cfg: + /etc/java-17-openjdk/logging.properties: + /etc/java-17-openjdk/net.properties: + /etc/java-17-openjdk/security/java.policy: + /etc/java-17-openjdk/security/java.security: + /usr/lib/jvm/java-17-openjdk-*/bin/java: + /usr/lib/jvm/java-17-openjdk-*/conf/logging.properties: + /usr/lib/jvm/java-17-openjdk-*/conf/net.properties: + /usr/lib/jvm/java-17-openjdk-*/conf/security/java.policy: + /usr/lib/jvm/java-17-openjdk-*/conf/security/java.security: + /usr/lib/jvm/java-17-openjdk-*/lib/jexec: + /usr/lib/jvm/java-17-openjdk-*/lib/jspawnhelper: + /usr/lib/jvm/java-17-openjdk-*/lib/jvm.cfg: + /usr/lib/jvm/java-17-openjdk-*/lib/libextnet.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libjava.so: + # lib/modules support + /usr/lib/jvm/java-17-openjdk-*/lib/libjimage.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libjli.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libjsig.so: + # required for IO. + /usr/lib/jvm/java-17-openjdk-*/lib/libnet.so: + # required for IO. + /usr/lib/jvm/java-17-openjdk-*/lib/libnio.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libverify.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libzip.so: + /usr/lib/jvm/java-17-openjdk-*/lib/modules: + /usr/lib/jvm/java-17-openjdk-*/lib/server/libjsig.so: + /usr/lib/jvm/java-17-openjdk-*/lib/server/libjvm.so: + /usr/lib/jvm/java-17-openjdk-*/lib/tzdb.dat: + + # Native part of jdk.prefs modules + prefs: + essential: + - openjdk-17-jre-headless_core + contents: + /usr/lib/jvm/java-17-openjdk-*/lib/libprefs.so: + + # Native part of java.rmi + rmi: + essential: + - openjdk-17-jre-headless_security + contents: + /usr/lib/jvm/java-17-openjdk-*/bin/rmiregistry: + /usr/lib/jvm/java-17-openjdk-*/lib/librmi.so: + + # Debug support + debug: + essential: + - openjdk-17-jre-headless_core + contents: + /usr/lib/jvm/java-17-openjdk-*/lib/libattach.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libdt_socket.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libinstrument.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libjdwp.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libsaproc.so: + arch: + - amd64 + - arm64 + - armhf + - ppc64el + + # Configuration and native part of Java Management Extensions + management: + essential: + - openjdk-17-jre-headless_rmi + contents: + /etc/java-17-openjdk/management/jmxremote.access: + /etc/java-17-openjdk/management/management.properties: + /usr/lib/jvm/java-17-openjdk-*/conf/management/jmxremote.access: + /usr/lib/jvm/java-17-openjdk-*/conf/management/management.properties: + /usr/lib/jvm/java-17-openjdk-*/lib/libmanagement.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libmanagement_agent.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libmanagement_ext.so: + + # Security configuration files and native libraries + security: + essential: + - libnss3_nss + - libpcsclite1_libs + - openjdk-17-jre-headless_core + contents: + /etc/java-17-openjdk/security/blocked.certs: + /etc/java-17-openjdk/security/default.policy: + /etc/java-17-openjdk/security/nss.cfg: + /etc/java-17-openjdk/security/policy/limited/default_US_export.policy: + /etc/java-17-openjdk/security/policy/limited/default_local.policy: + /etc/java-17-openjdk/security/policy/limited/exempt_local.policy: + /etc/java-17-openjdk/security/policy/unlimited/default_US_export.policy: + /etc/java-17-openjdk/security/policy/unlimited/default_local.policy: + /etc/java-17-openjdk/security/public_suffix_list.dat: + /usr/lib/jvm/java-17-openjdk-*/conf/security/nss.cfg: + /usr/lib/jvm/java-17-openjdk-*/conf/security/policy/limited/default_US_export.policy: + /usr/lib/jvm/java-17-openjdk-*/conf/security/policy/limited/default_local.policy: + /usr/lib/jvm/java-17-openjdk-*/conf/security/policy/limited/exempt_local.policy: + /usr/lib/jvm/java-17-openjdk-*/conf/security/policy/unlimited/default_US_export.policy: + /usr/lib/jvm/java-17-openjdk-*/conf/security/policy/unlimited/default_local.policy: + /usr/lib/jvm/java-17-openjdk-*/lib/libj2gss.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libj2pcsc.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libj2pkcs11.so: + /usr/lib/jvm/java-17-openjdk-*/lib/libjaas.so: + /usr/lib/jvm/java-17-openjdk-*/lib/security/blocked.certs: + /usr/lib/jvm/java-17-openjdk-*/lib/security/cacerts: + /usr/lib/jvm/java-17-openjdk-*/lib/security/default.policy: + /usr/lib/jvm/java-17-openjdk-*/lib/security/public_suffix_list.dat: + + # OpenJDK tools + tools: + essential: + - openjdk-17-jre-headless_security + contents: + /usr/lib/jvm/java-17-openjdk-*/bin/keytool: + /usr/lib/jvm/java-17-openjdk-amd64/bin/jpackage: + arch: + - amd64 + + # Java Flight Recorder configuration and jar file + jfr: + essential: + - openjdk-17-jre-headless_core + contents: + /etc/java-17-openjdk/jfr/default.jfc: + /etc/java-17-openjdk/jfr/profile.jfc: + /usr/lib/jvm/java-17-openjdk-*/lib/jfr/default.jfc: + /usr/lib/jvm/java-17-openjdk-*/lib/jfr/profile.jfc: + /usr/lib/jvm/java-17-openjdk-*/lib/jrt-fs.jar: + + # Javac JDK API signatures for the backwards compatibility + javac: + essential: + - openjdk-17-jre-headless_core + contents: + /usr/lib/jvm/java-17-openjdk-*/lib/ct.sym: + + copyright: + contents: + /usr/share/doc/openjdk-17-jre-headless/copyright: diff --git a/slices/openjdk-8-jre-headless.yaml b/slices/openjdk-8-jre-headless.yaml new file mode 100644 index 000000000..8796e3733 --- /dev/null +++ b/slices/openjdk-8-jre-headless.yaml @@ -0,0 +1,218 @@ +package: openjdk-8-jre-headless + +essential: + - openjdk-8-jre-headless_copyright + +slices: + # The "core" slice provides a minimal, yet functional JRE8. + core: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + - openjdk-8-jre-headless_client-vm + - openjdk-8-jre-headless_server-vm + - zlib1g_libs + contents: + /etc/java-8-openjdk/calendars.properties: + /etc/java-8-openjdk/content-types.properties: + /etc/java-8-openjdk/logging.properties: + /etc/java-8-openjdk/net.properties: + # This security path is also in "core" as it describes permissions for + # various classes and how they can interact with the system. + /etc/java-8-openjdk/security/java.policy: + /usr/lib/jvm/java-8-openjdk-*/jre/bin/java: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/jli/libjli.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/jvm.cfg-default: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjava.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjsig.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libnet.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libnio.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libverify.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libzip.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/calendars.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/content-types.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/currency.data: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/hijrah-config-umalqura.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/logging.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/meta-index: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/net.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/resources.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/rt.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/java.policy: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/tzdb.dat: + + client-vm: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/client/libjsig.so: {arch: armhf} + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/client/libjvm.so: {arch: armhf} + + server-vm: + essential: + - libc6_libs + - libgcc-s1_libs + - libstdc++6_libs + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/server/libjsig.so: + arch: + - amd64 + - arm64 + - ppc64el + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/server/libjvm.so: + arch: + - amd64 + - arm64 + - ppc64el + - s390x + + locale: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/cldrdata.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/localedata.jar: + + # The security slice provides access to TLS and crypto capabilities + # of the runtime. + security: + essential: + - libnss3_nss + - libpcsclite1_libs + - openjdk-8-jre-headless_core + contents: + /etc/java-8-openjdk/security/blacklisted.certs: + /etc/java-8-openjdk/security/java.security: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libj2gss.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libj2pcsc.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libj2pkcs11.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjaas_unix.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libsunec.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/sunec.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/sunjce_provider.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/sunpkcs11.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/jce.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/jsse.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/blacklisted.certs: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/cacerts: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/java.security: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/policy/limited/US_export_policy.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/policy/limited/local_policy.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/policy/unlimited/US_export_policy.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/security/policy/unlimited/local_policy.jar: + + # Abstract Window Toolkit. + # Classes and components for creating GUI elements (windows, graphics, etc.). + awt: + essential: + - libfontconfig1_libs + - libfreetype6_libs + - libjpeg-turbo8_libs + - liblcms2-2_libs + - openjdk-8-jre-headless_core + contents: + /etc/java-8-openjdk/flavormap.properties: + /etc/java-8-openjdk/images/cursors/cursors.properties: + /etc/java-8-openjdk/psfont.properties.ja: + /etc/java-8-openjdk/psfontj2d.properties: + /etc/java-8-openjdk/swing.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libawt.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libawt_headless.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libfontmanager.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjavajpeg.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjavalcms.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libmlib_image.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/charsets.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/cmm/CIEXYZ.pf: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/cmm/GRAY.pf: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/cmm/LINEAR_RGB.pf: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/cmm/PYCC.pf: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/cmm/sRGB.pf: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/flavormap.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/images/cursors/cursors.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/psfont.properties.ja: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/psfontj2d.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/swing.properties: + + # Enabled management and monitoring capabilities for Java apps. + management: + essential: + - openjdk-8-jre-headless_core + contents: + /etc/java-8-openjdk/management/management.properties: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libmanagement.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/management-agent.jar: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/management/management.properties: + + # Java Flight Recorder - API for collecting diagnostic and profilling data. + jfr: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/jfr.jar: + arch: [amd64, arm64, armhf, ppc64el] + + # Shared libraries for supporting heap profilling. + hprof: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libhprof.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjava_crw_demo.so: + /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/libnpt.so: + arch: amd64 + /usr/lib/jvm/java-8-openjdk-arm64/jre/lib/aarch64/libnpt.so: + arch: arm64 + + # Shared libraries for supporting debugging capabilities. + debug: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libdt_socket.so: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libjdwp.so: + /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/libnpt.so: + arch: amd64 + /usr/lib/jvm/java-8-openjdk-arm64/jre/lib/aarch64/libnpt.so: + arch: arm64 + + tools: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/bin/keytool: + /usr/lib/jvm/java-8-openjdk-*/jre/bin/keytool: + + # Java Programming Language Instrumentation Services interface. + jplis: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libinstrument.so: + + # Allow querying of DNS records through JNDI. + jndidns: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/dnsns.jar: + + zipfs: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/ext/zipfs.jar: + + # No internal usages in JRE8, but part of the com.sun.nio.sctp private API. + sctp: + essential: + - openjdk-8-jre-headless_core + contents: + /usr/lib/jvm/java-8-openjdk-*/jre/lib/*/libsctp.so: + + copyright: + contents: + /usr/share/doc/openjdk-8-jre-headless/copyright: diff --git a/slices/wget.yaml b/slices/wget.yaml new file mode 100644 index 000000000..60f3dbb5a --- /dev/null +++ b/slices/wget.yaml @@ -0,0 +1,20 @@ +package: wget + +essential: + - wget_copyright + +slices: + bins: + essential: + - libc6_libs + - libidn2-0_libs + - libpcre2-8-0_libs + - libpsl5t64_libs + - libssl3t64_libs + - libuuid1_libs + - zlib1g_libs + contents: + /usr/bin/wget: + copyright: + contents: + /usr/share/doc/wget/copyright: diff --git a/slices/x11-common.yaml b/slices/x11-common.yaml new file mode 100644 index 000000000..0acc5cbed --- /dev/null +++ b/slices/x11-common.yaml @@ -0,0 +1,19 @@ +package: x11-common + +essential: + - x11-common_copyright + +slices: + resources: + contents: + /etc/X11/Xresources/x11-common: + + services: + essential: + - lsb-base_bins + contents: + /etc/init.d/x11-common: + + copyright: + contents: + /usr/share/doc/x11-common/copyright: diff --git a/slices/xdg-user-dirs.yaml b/slices/xdg-user-dirs.yaml new file mode 100644 index 000000000..e2e67336d --- /dev/null +++ b/slices/xdg-user-dirs.yaml @@ -0,0 +1,24 @@ +package: xdg-user-dirs + +essential: + - xdg-user-dirs_copyright + +slices: + config: + essential: + - libc6_libs + contents: + /etc/xdg/autostart/xdg-user-dirs.desktop: + /etc/xdg/user-dirs.conf: + /etc/xdg/user-dirs.defaults: + + scripts: + essential: + - xdg-user-dirs_config + contents: + /usr/bin/xdg-user-dir: + /usr/bin/xdg-user-dirs-update: + + copyright: + contents: + /usr/share/doc/xdg-user-dirs/copyright: diff --git a/slices/xfonts-encodings.yaml b/slices/xfonts-encodings.yaml new file mode 100644 index 000000000..bd3e7f078 --- /dev/null +++ b/slices/xfonts-encodings.yaml @@ -0,0 +1,64 @@ +package: xfonts-encodings + +essential: + - xfonts-encodings_copyright + +slices: + encodings: + contents: + /usr/share/fonts/X11/encodings/adobe-dingbats.enc.gz: + /usr/share/fonts/X11/encodings/adobe-standard.enc.gz: + /usr/share/fonts/X11/encodings/adobe-symbol.enc.gz: + /usr/share/fonts/X11/encodings/armscii-8.enc.gz: + /usr/share/fonts/X11/encodings/ascii-0.enc.gz: + /usr/share/fonts/X11/encodings/dec-special.enc.gz: + /usr/share/fonts/X11/encodings/encodings.dir: + /usr/share/fonts/X11/encodings/ibm-cp437.enc.gz: + /usr/share/fonts/X11/encodings/ibm-cp850.enc.gz: + /usr/share/fonts/X11/encodings/ibm-cp852.enc.gz: + /usr/share/fonts/X11/encodings/ibm-cp866.enc.gz: + /usr/share/fonts/X11/encodings/iso8859-11.enc.gz: + /usr/share/fonts/X11/encodings/iso8859-13.enc.gz: + /usr/share/fonts/X11/encodings/iso8859-16.enc.gz: + /usr/share/fonts/X11/encodings/iso8859-6.16.enc.gz: + /usr/share/fonts/X11/encodings/iso8859-6.8x.enc.gz: + /usr/share/fonts/X11/encodings/large/: + /usr/share/fonts/X11/encodings/large/big5.eten-0.enc.gz: + /usr/share/fonts/X11/encodings/large/big5hkscs-0.enc.gz: + /usr/share/fonts/X11/encodings/large/cns11643-1.enc.gz: + /usr/share/fonts/X11/encodings/large/cns11643-2.enc.gz: + /usr/share/fonts/X11/encodings/large/cns11643-3.enc.gz: + /usr/share/fonts/X11/encodings/large/encodings.dir: + /usr/share/fonts/X11/encodings/large/gb18030-0.enc.gz: + /usr/share/fonts/X11/encodings/large/gb18030.2000-0.enc.gz: + /usr/share/fonts/X11/encodings/large/gb18030.2000-1.enc.gz: + /usr/share/fonts/X11/encodings/large/gb2312.1980-0.enc.gz: + /usr/share/fonts/X11/encodings/large/gbk-0.enc.gz: + /usr/share/fonts/X11/encodings/large/jisx0201.1976-0.enc.gz: + /usr/share/fonts/X11/encodings/large/jisx0208.1990-0.enc.gz: + /usr/share/fonts/X11/encodings/large/jisx0212.1990-0.enc.gz: + /usr/share/fonts/X11/encodings/large/ksc5601.1987-0.enc.gz: + /usr/share/fonts/X11/encodings/large/ksc5601.1992-3.enc.gz: + /usr/share/fonts/X11/encodings/large/sun.unicode.india-0.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1250.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1251.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1252.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1253.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1254.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1255.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1256.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1257.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-cp1258.enc.gz: + /usr/share/fonts/X11/encodings/microsoft-win3.1.enc.gz: + /usr/share/fonts/X11/encodings/mulearabic-0.enc.gz: + /usr/share/fonts/X11/encodings/mulearabic-1.enc.gz: + /usr/share/fonts/X11/encodings/mulearabic-2.enc.gz: + /usr/share/fonts/X11/encodings/mulelao-1.enc.gz: + /usr/share/fonts/X11/encodings/suneu-greek.enc.gz: + /usr/share/fonts/X11/encodings/tcvn-0.enc.gz: + /usr/share/fonts/X11/encodings/tis620-2.enc.gz: + /usr/share/fonts/X11/encodings/viscii1.1-1.enc.gz: + + copyright: + contents: + /usr/share/doc/xfonts-encodings/copyright: diff --git a/slices/xfonts-utils.yaml b/slices/xfonts-utils.yaml new file mode 100644 index 000000000..688970173 --- /dev/null +++ b/slices/xfonts-utils.yaml @@ -0,0 +1,35 @@ +package: xfonts-utils + +essential: + - xfonts-utils_copyright + +slices: + bins: + essential: + - libc6_libs + - libfontenc1_libs + - libfreetype6_libs + - xfonts-encodings_encodings + - xfonts-utils_utils + - zlib1g_libs + contents: + /usr/bin/bdftopcf: + /usr/bin/bdftruncate: + /usr/bin/fonttosfnt: + /usr/bin/mkfontdir: + /usr/bin/mkfontscale: + /usr/bin/ucs2any: + + utils: + contents: + /usr/share/fonts/X11/util/*: + + scripts: + contents: + /usr/sbin/update-fonts-alias: + /usr/sbin/update-fonts-dir: + /usr/sbin/update-fonts-scale: + + copyright: + contents: + /usr/share/doc/xfonts-utils/copyright: diff --git a/tests/spread/integration/dosfstools/task.yaml b/tests/spread/integration/dosfstools/task.yaml new file mode 100644 index 000000000..89bb4188a --- /dev/null +++ b/tests/spread/integration/dosfstools/task.yaml @@ -0,0 +1,24 @@ +summary: Integration tests for dosfstools + +execute: | + # Chisel a minimum number of slices to give us a runnable system that we can + # test in. + rootfs="$(install-slices dosfstools_bins)" + + # create a test image + dd if=/dev/zero of="${rootfs}/test.img" bs=1M count=250 + + # format the test image as fat + chroot "${rootfs}" mkfs.fat test.img + + # check that the format was fine + chroot "${rootfs}" fsck.fat test.img | grep "0 files" + + # change the label of the image + chroot "${rootfs}" fatlabel test.img "TESTIMG" + + # verify it changed + chroot "${rootfs}" fatlabel test.img | grep "TESTIMG" + + # cleanup + rm "${rootfs}/test.img" diff --git a/tests/spread/integration/fontconfig/task.yaml b/tests/spread/integration/fontconfig/task.yaml new file mode 100644 index 000000000..86231f525 --- /dev/null +++ b/tests/spread/integration/fontconfig/task.yaml @@ -0,0 +1,28 @@ +summary: Integration tests for fontconfig + +execute: | + rootfs="$(install-slices fontconfig_bins)" + + # Test fc-cache + chroot ${rootfs} fc-cache + + # Test fc-cat + chroot ${rootfs} fc-cat + + # Test fc-conflist + chroot ${rootfs} fc-conflist + + # Test fc-list + chroot ${rootfs} fc-list + + # Test fc-pattern + chroot ${rootfs} fc-pattern /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf | grep 'Pattern has 1 elts' + + # Test fc-query + chroot ${rootfs} fc-query /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf | grep 'fullname: "DejaVu Serif"' + + # Test fc-scan + chroot ${rootfs} fc-scan /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Oblique.ttf | grep 'fullname: "DejaVu Sans Mono Oblique"' + + # Test fc-validate + chroot ${rootfs} fc-validate /usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf | grep 'Satisfy the coverage for en language' diff --git a/tests/spread/integration/gpg/task.yaml b/tests/spread/integration/gpg/task.yaml new file mode 100644 index 000000000..a546da6ba --- /dev/null +++ b/tests/spread/integration/gpg/task.yaml @@ -0,0 +1,23 @@ +summary: Integration tests for gpg + +execute: | + rootfs="$(install-slices gpg_bins)" + + # Create a key-generation script + echo << EOF > "${rootfs}/keygen-script" + Key-Type: default + Key-Length: 2048 + Subkey-Type: default + Subkey-Length: 2048 + Name-Real: Root Superuser + Name-Email: example@example.com + Expire-Date: 0 + %no-protection + EOF + # Needs a root homedir + mkdir -p "${rootfs}/root" + + chroot "${rootfs}/" gpg --version + chroot "${rootfs}/" gpg --list-secret-keys + # Generate a key + chroot "${rootfs}/" gpg --batch --generate-key /keygen-script diff --git a/tests/spread/integration/gpgconf/task.yaml b/tests/spread/integration/gpgconf/task.yaml new file mode 100644 index 000000000..6ab065602 --- /dev/null +++ b/tests/spread/integration/gpgconf/task.yaml @@ -0,0 +1,12 @@ +summary: Integration tests for gpgconf + +execute: | + rootfs="$(install-slices gpgconf_gpgconf)" + + # Basic check + chroot "${rootfs}/" gpgconf --list-components + + rootfs="$(install-slices dash_bins gpgconf_gpg-connect-agent)" + chroot "${rootfs}/" gpg-connect-agent --version + output=$(! chroot "${rootfs}/" sh -c 'gpg-connect-agent /help 2>&1') + [[ "$output" == *'No agent running' ]] diff --git a/tests/spread/integration/libglib2.0-0t64/task.yaml b/tests/spread/integration/libglib2.0-0t64/task.yaml new file mode 100644 index 000000000..e6806ed1f --- /dev/null +++ b/tests/spread/integration/libglib2.0-0t64/task.yaml @@ -0,0 +1,12 @@ +summary: Integration tests for libglib2.0-0t64 + +execute: | + if [[ $(uname -m) == "arm32v7" ]]; then + rootfs="$(install-slices dash_bins libgcc-s1_libs libglib2.0-0t64_bins)" + else + rootfs="$(install-slices dash_bins libglib2.0-0t64_bins)" + fi + + chroot "${rootfs}" sh -c '/usr/lib/*-linux-*/glib-2.0/gio-querymodules' 2| grep -q 'Usage: gio-querymodules' + chroot "${rootfs}" sh -c '/usr/lib/*-linux-*/glib-2.0/glib-compile-schemas --version' | grep -q '2\.82' + chroot "${rootfs}" sh -c '/usr/lib/*-linux-*/glib-2.0/gio-launch-desktop sh -c "echo Testing"' | grep -q Testing diff --git a/tests/spread/integration/libharfbuzz0b/task.yaml b/tests/spread/integration/libharfbuzz0b/task.yaml new file mode 100644 index 000000000..c06b16550 --- /dev/null +++ b/tests/spread/integration/libharfbuzz0b/task.yaml @@ -0,0 +1,8 @@ +summary: Integration tests for libharfbuzz0b + +execute: | + rootfs="$(install-slices libharfbuzz0b_libs fonts-dejavu-mono_fonts)" + apt install --update -y libharfbuzz-dev gcc + gcc test.c -lharfbuzz -o test-harfbuzz + cp test-harfbuzz ${rootfs}/ + chroot ${rootfs} /test-harfbuzz diff --git a/tests/spread/integration/libharfbuzz0b/test.c b/tests/spread/integration/libharfbuzz0b/test.c new file mode 100644 index 000000000..93f05cb32 --- /dev/null +++ b/tests/spread/integration/libharfbuzz0b/test.c @@ -0,0 +1,37 @@ +#include +#include + +int main() +{ + const char* text = "Sample text"; + hb_buffer_t *buf; + buf = hb_buffer_create(); + hb_buffer_add_utf8(buf, text, -1, 0, -1); + hb_buffer_set_direction(buf, HB_DIRECTION_LTR); + hb_buffer_set_script(buf, HB_SCRIPT_LATIN); + hb_buffer_set_language(buf, hb_language_from_string("en", -1)); + hb_blob_t *blob = hb_blob_create_from_file("/usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf"); + if (blob == NULL) + exit(-1); + hb_face_t *face = hb_face_create(blob, 0); + if (face == NULL) + exit(-2); + + hb_font_t *font = hb_font_create(face); + if (font == NULL) + exit(-3); + + hb_shape(font, buf, NULL, 0); + unsigned int glyph_count; + hb_glyph_info_t *glyph_info = hb_buffer_get_glyph_infos(buf, &glyph_count); + if (glyph_count == 0) + exit(-4); + if (glyph_info == NULL) + exit(-5); + + hb_glyph_position_t *glyph_pos = hb_buffer_get_glyph_positions(buf, &glyph_count); + if (glyph_count == 0) + exit(-6); + if (glyph_pos == NULL) + exit(-7); +} diff --git a/tests/spread/integration/openjdk-11-jdk-headless/Main.java b/tests/spread/integration/openjdk-11-jdk-headless/Main.java new file mode 100644 index 000000000..40b5eeef0 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jdk-headless/Main.java @@ -0,0 +1,5 @@ +public class Main { + public static void main(String[] args){ + System.out.println("Hello world"); + } +} diff --git a/tests/spread/integration/openjdk-11-jdk-headless/MonitoringTest.java b/tests/spread/integration/openjdk-11-jdk-headless/MonitoringTest.java new file mode 100644 index 000000000..aa09573ff --- /dev/null +++ b/tests/spread/integration/openjdk-11-jdk-headless/MonitoringTest.java @@ -0,0 +1,7 @@ +public class MonitoringTest { + public static void main(String[] args) throws InterruptedException { + while (true) { + Thread.sleep(1000); + } + } +} diff --git a/tests/spread/integration/openjdk-11-jdk-headless/RemoteInterface.java b/tests/spread/integration/openjdk-11-jdk-headless/RemoteInterface.java new file mode 100644 index 000000000..d19403634 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jdk-headless/RemoteInterface.java @@ -0,0 +1,4 @@ +import java.rmi.Remote; + +public class RemoteInterface implements Remote { +} diff --git a/tests/spread/integration/openjdk-11-jdk-headless/SerializableObject.java b/tests/spread/integration/openjdk-11-jdk-headless/SerializableObject.java new file mode 100644 index 000000000..b46056421 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jdk-headless/SerializableObject.java @@ -0,0 +1,4 @@ +import java.io.Serializable; + +public class SerializableObject implements Serializable { +} diff --git a/tests/spread/integration/openjdk-11-jdk-headless/all.policy b/tests/spread/integration/openjdk-11-jdk-headless/all.policy new file mode 100644 index 000000000..1d0ce8867 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jdk-headless/all.policy @@ -0,0 +1,3 @@ +grant { + permission java.security.AllPermission; +}; diff --git a/tests/spread/integration/openjdk-11-jdk-headless/task.yaml b/tests/spread/integration/openjdk-11-jdk-headless/task.yaml new file mode 100644 index 000000000..32f99a90e --- /dev/null +++ b/tests/spread/integration/openjdk-11-jdk-headless/task.yaml @@ -0,0 +1,118 @@ +summary: Integration tests for openjdk-11-jdk-headless + +environment: + SLICE/core: "core" + SLICE/standard: "standard" + SLICE/modules: "modules" + +execute: | + pids=() + cleanup() { + for pid in "${pids[@]}"; do + kill "$pid" || true + done + apt remove --purge -y openjdk-11-jdk-headless + } + for sig in INT QUIT HUP TERM; do trap "cleanup; trap - $sig EXIT; kill -s $sig "'"$$"' "$sig"; done + trap cleanup EXIT + + apt install --update -y openjdk-11-jdk-headless + + # Test different slice installations + echo "SLICE=${SLICE}" + rootfs="$(install-slices openjdk-11-jdk-headless_${SLICE} dash_bins)" + cp *.java ${rootfs}/ + cp all.policy ${rootfs}/ + + # Need to ensure we're using the right java version + update-java-alternatives --set /usr/lib/jvm/java-1.11.0* + javac *.java + + nohup java -cp . MonitoringTest & + pid=$! + pids+=("$pid") + + cp *.class ${rootfs}/ + cd ${rootfs} + mkdir -p proc sys tmp + mount --bind /proc proc + mount --bind /sys sys + mount --bind /tmp tmp + case ${SLICE} in + core) + for java in `find usr/lib/jvm -name java`; do + home=$(dirname ${java}) + # /usr/lib/jvm/java-11-openjdk-*/bin/javac: + chroot . ${home}/javac /Main.java -d / + # /usr/lib/jvm/java-11-openjdk-*/bin/javadoc: + chroot . ${home}/javadoc /Main.java + # /usr/lib/jvm/java-11-openjdk-*/bin/javap: + chroot . ${home}/javap -l /Main.class + # /usr/lib/jvm/java-11-openjdk-*/bin/jdeprscan: + chroot . ${home}/jdeprscan --class-path . Main + # /usr/lib/jvm/java-11-openjdk-*/bin/jdeps: + chroot . ${home}/jdeps -m java.base + # /usr/lib/jvm/java-11-openjdk-*/bin/jimage: + chroot . ${home}/jimage info ${home}/../lib/modules + # /usr/lib/jvm/java-11-openjdk-*/bin/serialver: + chroot . ${home}/serialver -classpath / SerializableObject + done + ;; + standard) + for java in `find usr/lib/jvm -name java`; do + home=$(dirname ${java}) + # /usr/lib/jvm/java-11-openjdk-*/bin/jar: + # /usr/lib/jvm/java-11-openjdk-*/bin/jarsigner: + chroot . ${home}/jar cvf test.jar *.java + DNAME="CN=Sample Cert, OU=R&D, O=Company Ltd., L=Dublin 4, S=Dublin, C=IE" + chroot . ${home}/keytool -genkeypair -keystore foo -storepass barbar -keyalg RSA -dname "$DNAME" -alias foo + chroot . ${home}/jarsigner -keystore foo -storepass barbar test.jar foo + # /usr/lib/jvm/java-11-openjdk-*/bin/jdb: + chroot . /usr/bin/sh -c "echo run | ${home}/jdb Main.java" + # /usr/lib/jvm/java-11-openjdk-*/bin/jcmd: + chroot . ${home}/jcmd MonitoringTest VM.version + # /usr/lib/jvm/java-11-openjdk-*/bin/jhsdb: + if [ -f ${home}/jhsdb ]; then + chroot . ${home}/jhsdb jstack --pid ${pid} + fi + # /usr/lib/jvm/java-11-openjdk-*/bin/jfr: + chroot . ${home}/jcmd ${pid} JFR.start name=recording maxsize=1MB + chroot . ${home}/jcmd ${pid} JFR.dump name=recording filename=/tmp/recording.jfr + chroot . ${home}/jfr print /tmp/recording.jfr > /dev/null + # /usr/lib/jvm/java-11-openjdk-*/bin/jinfo: + chroot . ${home}/jinfo ${pid} + # /usr/lib/jvm/java-11-openjdk-*/bin/jrunscript: + chroot . /usr/bin/sh -c "echo 'exit()' | ${home}/jrunscript" + # /usr/lib/jvm/java-11-openjdk-*/bin/jshell: + chroot . /usr/bin/sh -c "echo 'System.out.println(\"hello world\")' | ${home}/jshell" + # /usr/lib/jvm/java-11-openjdk-*/bin/jstack: + chroot . ${home}/jstack ${pid} + # /usr/lib/jvm/java-11-openjdk-*/bin/jstat: + chroot . ${home}/jstat -gc ${pid} + # /usr/lib/jvm/java-11-openjdk-*/bin/jstatd: + nohup chroot . ${home}/jstatd -J-Djava.security.policy=all.policy > ./jstatd.log & + pids+=($!) + for retry in 0 1 2 3 4 5; do + if [ ${retry} -eq 5 ]; then + exit 1 + fi + grep -q "bound to /JStatRemoteHost" "jstatd.log" && break + sleep 10 + done + # /usr/lib/jvm/java-11-openjdk-*/bin/rmic + chroot . ${home}/rmic -classpath . RemoteInterface + done + ;; + modules) + cd ${rootfs} + for jlink in `find usr/lib/jvm -name jlink`; do + output=$(basename $(mktemp -u)) + chroot . ${jlink} --add-modules java.base --output ${output} + rm -rf ${rootfs}/${output} + done + for jmod in `find usr/lib/jvm -name jmod`; do + home=$(dirname ${jmod}) + chroot . ${jmod} list ${home}/../jmods/java.rmi.jmod + done + ;; + esac diff --git a/tests/spread/integration/openjdk-11-jre-headless/Main.java b/tests/spread/integration/openjdk-11-jre-headless/Main.java new file mode 100644 index 000000000..47e5d0af7 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/Main.java @@ -0,0 +1,5 @@ +public class Main { + public static void main(String[] args) { + System.out.println("Hello world"); + } +} diff --git a/tests/spread/integration/openjdk-11-jre-headless/PrefsTest.java b/tests/spread/integration/openjdk-11-jre-headless/PrefsTest.java new file mode 100644 index 000000000..73c4ee63e --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/PrefsTest.java @@ -0,0 +1,13 @@ +import java.util.prefs.*; + +public class PrefsTest { + public static void main(String[] args) { + if ("put".equals(args[0])) { + Preferences.userRoot().put("a", "b"); + } else if ("get".equals(args[0])) { + if (!"b".equals(Preferences.userRoot().get("a", null))) { + throw new RuntimeException("Unable to read the preference"); + } + } + } +} diff --git a/tests/spread/integration/openjdk-11-jre-headless/ReadCertificate.java b/tests/spread/integration/openjdk-11-jre-headless/ReadCertificate.java new file mode 100644 index 000000000..ef92fd99b --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/ReadCertificate.java @@ -0,0 +1,14 @@ +import java.security.cert.*; +import java.io.*; +import java.nio.file.Files; +import java.nio.file.Path; + +public class ReadCertificate { + + public static void main(String[] args) throws Throwable { + byte[] pem = Files.readAllBytes(Path.of("certificate.pem")); + java.security.cert.Certificate cert = CertificateFactory.getInstance("X509").generateCertificate(new ByteArrayInputStream(pem)); + if (cert == null) + throw new RuntimeException("It should be possible to decode a certificate"); + } +} diff --git a/tests/spread/integration/openjdk-11-jre-headless/TestJMX.java b/tests/spread/integration/openjdk-11-jre-headless/TestJMX.java new file mode 100644 index 000000000..e27d058d8 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/TestJMX.java @@ -0,0 +1,39 @@ +import java.lang.management.ManagementFactory; +import javax.management.Attribute; +import javax.management.AttributeList; +import javax.management.AttributeNotFoundException; +import javax.management.DynamicMBean; +import javax.management.InstanceAlreadyExistsException; +import javax.management.InvalidAttributeValueException; +import javax.management.MBeanException; +import javax.management.MBeanInfo; +import javax.management.MBeanRegistrationException; +import javax.management.MBeanServer; +import javax.management.MBeanServerConnection; +import javax.management.MalformedObjectNameException; +import javax.management.NotCompliantMBeanException; +import javax.management.ObjectName; +import javax.management.ReflectionException; +import javax.management.remote.*; +import com.sun.tools.attach.*; + +public class TestJMX implements TestJMXMBean { + + static final String CONNECTOR_ADDRESS = + "com.sun.management.jmxremote.localConnectorAddress"; + + @Override + public void test() { + } + + public static void main(String[] args) throws Throwable { + ObjectName objectName = new ObjectName("test:type=basic,name=mbeantest"); + MBeanServer server = ManagementFactory.getPlatformMBeanServer(); + server.registerMBean(new TestJMX(), objectName); + JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:5000/jmxrmi"); + int count = JMXConnectorFactory.connect(url) + .getMBeanServerConnection() + .getMBeanCount(); + System.out.println(count); + } +} diff --git a/tests/spread/integration/openjdk-11-jre-headless/TestJMXMBean.java b/tests/spread/integration/openjdk-11-jre-headless/TestJMXMBean.java new file mode 100644 index 000000000..c75f6c573 --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/TestJMXMBean.java @@ -0,0 +1,3 @@ +public interface TestJMXMBean { + void test(); +} diff --git a/tests/spread/integration/openjdk-11-jre-headless/certificate.pem b/tests/spread/integration/openjdk-11-jre-headless/certificate.pem new file mode 100644 index 000000000..645e9f80c --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/certificate.pem @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDazCCAlOgAwIBAgIULvuqN3MiptnZSYS9y1qJAZYKFA4wDQYJKoZIhvcNAQEL +BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM +GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0yNDA4MTUwMjQzNDhaFw0yNTA4 +MTUwMjQzNDhaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw +HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDm3990peBuPYaz0UEEc75Q7i79P4RzrD84MxhDpoPs +MSdnmO3rTkIG84Wp72+8T7TGjGjBhX++8UmZLrXy2AfcejZi3JcddMWH4V5XEnAj +hTBe1HLkiotayZst/cxuTP6KmuahjsROAqriCv/A4BBA8KjYx1e4E9k9+81FreZy +PJ8p3m7R8qZ/DtjuW1aMQ3oDRKA/iqQhLHVpJy/iYiyjwTdJm6/lA3ywGCr6ZMWm +9tWUT+4TvhyRM67Y0gcCtH51cwxPqUFGEKAkLWIu2fS6DaoXtHylxgGeKKPes3JX +uSn9QezEEqvrgLFQRqIUS8tNZFEhoJQ7dmxMP/XKAD51AgMBAAGjUzBRMB0GA1Ud +DgQWBBSb70j+xaI3eTxp4H7MDm1MLVRGNTAfBgNVHSMEGDAWgBSb70j+xaI3eTxp +4H7MDm1MLVRGNTAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAp +0GIjKtwvD7BkQy+cf3dsdwYodxoIYl4E8UvHfBSPQQfFNh+chHPmrNYRuFM3Q6sT +ogNhHKLecQMK4tNUDa/vVRGnqmZVWjxqLnyH/qFKtakqPB6h6x4h50huzA+twhNm +SDjg3QqqpOuUzrs77JqYkxSjqd0QgmwmgxOdbcF0SY+ebQhAd0UXY7wIs6ByDEHO +kElgJmnGKhOpf1SFpQh2qpKGq/MvcdHWN4oKri440wCf+czkrOTyGVc275oTbRnM +Z76Ro4JDuomyWeR9iQ5pP5ug4ciflLa7hlYcH0xJbF3b2M3BlnUYKMqih/TjqKdr +NBs121h64SPY0gh7kIvF +-----END CERTIFICATE----- diff --git a/tests/spread/integration/openjdk-11-jre-headless/task.yaml b/tests/spread/integration/openjdk-11-jre-headless/task.yaml new file mode 100644 index 000000000..0705a71ce --- /dev/null +++ b/tests/spread/integration/openjdk-11-jre-headless/task.yaml @@ -0,0 +1,68 @@ +summary: Integration tests for openjdk-11-jre-headless + +environment: + SLICE/classdatasharing: "class-data-sharing" + SLICE/core: "core" + SLICE/prefs: "prefs" +# SLICE/rmi: "rmi" # Tested in management slice + SLICE/debug: "debug" + SLICE/management: "management" + SLICE/jfr: "jfr" + SLICE/security: "security" + SLICE/tools: "tools" + +execute: | + # Test different slice installations + echo "SLICE=${SLICE}" + rootfs="$(install-slices openjdk-11-jre-headless_${SLICE} dash_bins)" + apt install --update -y openjdk-11-jdk-headless + # Need to ensure we're using the right java version + update-java-alternatives --set /usr/lib/jvm/java-1.11.0* + javac *.java + jar cvf test.jar *.java + cp *.jar ${rootfs}/ + cp *.java ${rootfs}/ + cp *.class ${rootfs}/ + cp certificate.pem ${rootfs}/ + cd ${rootfs} + mkdir -p proc/self + for java in `find usr/lib/jvm -name java`; do + ln -sf /${java} proc/self/exe + chroot . ${java} --version + case ${SLICE} in + class-data-sharing) + chroot . ${java} -Xshare:dump + ;; + core) + chroot . ${java} -cp . Main + ;; + prefs) + chroot . ${java} -cp . PrefsTest put + chroot . ${java} -cp . PrefsTest get + ;; + debug) + chroot . ${java} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -cp . Main + ;; + management) + chroot . ${java} -Dcom.sun.management.jmxremote.port=5000 \ + -Dcom.sun.management.jmxremote.authenticate=false \ + -Dcom.sun.management.jmxremote=true \ + -Dcom.sun.management.jmxremote.ssl=false -cp . TestJMX + ;; + jfr) + chroot . ${java} -XX:+FlightRecorder -XX:StartFlightRecording=duration=60s,filename=dump.jfr -cp . Main + ;; + security) + chroot . ${java} -cp . ReadCertificate + ;; + tools) + DNAME="CN=Sample Cert, OU=R&D, O=Company Ltd., L=Dublin 4, S=Dublin, C=IE" + chroot . $(dirname ${java})/keytool -genkeypair -keystore foo -storepass barbar -keyalg RSA -dname "$DNAME" + chroot . $(dirname ${java})/pack200 foo.pack.gz test.jar + chroot . $(dirname ${java})/unpack200 foo.pack.gz test1.jar + ;; + esac + done + +restore: apt remove -y openjdk-11-jre-headless + diff --git a/tests/spread/integration/openjdk-17-jdk-headless/Main.java b/tests/spread/integration/openjdk-17-jdk-headless/Main.java new file mode 100644 index 000000000..40b5eeef0 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jdk-headless/Main.java @@ -0,0 +1,5 @@ +public class Main { + public static void main(String[] args){ + System.out.println("Hello world"); + } +} diff --git a/tests/spread/integration/openjdk-17-jdk-headless/MonitoringTest.java b/tests/spread/integration/openjdk-17-jdk-headless/MonitoringTest.java new file mode 100644 index 000000000..aa09573ff --- /dev/null +++ b/tests/spread/integration/openjdk-17-jdk-headless/MonitoringTest.java @@ -0,0 +1,7 @@ +public class MonitoringTest { + public static void main(String[] args) throws InterruptedException { + while (true) { + Thread.sleep(1000); + } + } +} diff --git a/tests/spread/integration/openjdk-17-jdk-headless/RemoteInterface.java b/tests/spread/integration/openjdk-17-jdk-headless/RemoteInterface.java new file mode 100644 index 000000000..d19403634 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jdk-headless/RemoteInterface.java @@ -0,0 +1,4 @@ +import java.rmi.Remote; + +public class RemoteInterface implements Remote { +} diff --git a/tests/spread/integration/openjdk-17-jdk-headless/SerializableObject.java b/tests/spread/integration/openjdk-17-jdk-headless/SerializableObject.java new file mode 100644 index 000000000..b46056421 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jdk-headless/SerializableObject.java @@ -0,0 +1,4 @@ +import java.io.Serializable; + +public class SerializableObject implements Serializable { +} diff --git a/tests/spread/integration/openjdk-17-jdk-headless/all.policy b/tests/spread/integration/openjdk-17-jdk-headless/all.policy new file mode 100644 index 000000000..1d0ce8867 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jdk-headless/all.policy @@ -0,0 +1,3 @@ +grant { + permission java.security.AllPermission; +}; diff --git a/tests/spread/integration/openjdk-17-jdk-headless/task.yaml b/tests/spread/integration/openjdk-17-jdk-headless/task.yaml new file mode 100644 index 000000000..04c70d514 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jdk-headless/task.yaml @@ -0,0 +1,116 @@ +summary: Integration tests for openjdk-17-jdk-headless + +environment: + SLICE/core: "core" + SLICE/standard: "standard" + SLICE/modules: "modules" + +execute: | + pids=() + cleanup() { + for pid in "${pids[@]}"; do + kill "$pid" || true + done + apt remove --purge -y openjdk-17-jdk-headless + } + for sig in INT QUIT HUP TERM; do trap "cleanup; trap - $sig EXIT; kill -s $sig "'"$$"' "$sig"; done + trap cleanup EXIT + + apt install --update -y openjdk-17-jdk-headless + + # Test different slice installations + echo "SLICE=${SLICE}" + rootfs="$(install-slices openjdk-17-jdk-headless_${SLICE} dash_bins)" + cp *.java ${rootfs}/ + + # Need to ensure we're using the right java version + update-java-alternatives --set /usr/lib/jvm/java-1.17.0* + cp all.policy ${rootfs}/ + javac *.java + + nohup java -cp . MonitoringTest & + pid=$! + pids+=("$pid") + + cp *.class ${rootfs}/ + cd ${rootfs} + mkdir -p proc sys tmp + mount --bind /proc proc + mount --bind /sys sys + mount --bind /tmp tmp + case ${SLICE} in + core) + for java in `find usr/lib/jvm -name java`; do + home=$(dirname ${java}) + # /usr/lib/jvm/java-17-openjdk-*/bin/javac: + chroot . ${home}/javac /Main.java -d / + # /usr/lib/jvm/java-17-openjdk-*/bin/javadoc: + chroot . ${home}/javadoc /Main.java + # /usr/lib/jvm/java-17-openjdk-*/bin/javap: + chroot . ${home}/javap -l /Main.class + # /usr/lib/jvm/java-17-openjdk-*/bin/jdeprscan: + chroot . ${home}/jdeprscan --class-path . Main + # /usr/lib/jvm/java-17-openjdk-*/bin/jdeps: + chroot . ${home}/jdeps -m java.base + # /usr/lib/jvm/java-17-openjdk-*/bin/jimage: + chroot . ${home}/jimage info ${home}/../lib/modules + # /usr/lib/jvm/java-17-openjdk-*/bin/serialver: + chroot . ${home}/serialver -classpath / SerializableObject + done + ;; + standard) + for java in `find usr/lib/jvm -name java`; do + home=$(dirname ${java}) + # /usr/lib/jvm/java-17-openjdk-*/bin/jar: + # /usr/lib/jvm/java-17-openjdk-*/bin/jarsigner: + chroot . ${home}/jar cvf test.jar *.java + DNAME="CN=Sample Cert, OU=R&D, O=Company Ltd., L=Dublin 4, S=Dublin, C=IE" + chroot . ${home}/keytool -genkeypair -keystore foo -storepass barbar -keyalg RSA -dname "$DNAME" -alias foo + chroot . ${home}/jarsigner -keystore foo -storepass barbar test.jar foo + # /usr/lib/jvm/java-17-openjdk-*/bin/jdb: + chroot . /usr/bin/sh -c "echo run | ${home}/jdb Main.java" + # /usr/lib/jvm/java-17-openjdk-*/bin/jcmd: + chroot . ${home}/jcmd MonitoringTest VM.version + # /usr/lib/jvm/java-17-openjdk-*/bin/jhsdb: + if [ -f ${home}/jhsdb ]; then + chroot . ${home}/jhsdb jstack --pid ${pid} + fi + # /usr/lib/jvm/java-17-openjdk-*/bin/jfr: + chroot . ${home}/jcmd ${pid} JFR.start name=recording maxsize=1MB + chroot . ${home}/jcmd ${pid} JFR.dump name=recording filename=/tmp/recording.jfr + chroot . ${home}/jfr print /tmp/recording.jfr > /dev/null + # /usr/lib/jvm/java-17-openjdk-*/bin/jinfo: + chroot . ${home}/jinfo ${pid} + # /usr/lib/jvm/java-17-openjdk-*/bin/jrunscript: + chroot . ${home}/jrunscript -q + # /usr/lib/jvm/java-17-openjdk-*/bin/jshell: + chroot . /usr/bin/sh -c "echo 'System.out.println(\"hello world\")' | ${home}/jshell" + # /usr/lib/jvm/java-17-openjdk-*/bin/jstack: + chroot . ${home}/jstack ${pid} + # /usr/lib/jvm/java-17-openjdk-*/bin/jstat: + chroot . ${home}/jstat -gc ${pid} + # /usr/lib/jvm/java-17-openjdk-*/bin/jstatd: + nohup chroot . ${home}/jstatd -J-Djava.security.policy=all.policy > ./jstatd.log & + pids+=($!) + for retry in 0 1 2 3 4 5; do + if [ ${retry} -eq 5 ]; then + exit 1 + fi + grep -q "bound to /JStatRemoteHost" "jstatd.log" && break + sleep 10 + done + done + ;; + modules) + cd ${rootfs} + for jlink in `find usr/lib/jvm -name jlink`; do + output=$(basename $(mktemp -u)) + chroot . ${jlink} --add-modules java.base --output ${output} + rm -rf ${rootfs}/${output} + done + for jmod in `find usr/lib/jvm -name jmod`; do + home=$(dirname ${jmod}) + chroot . ${jmod} list ${home}/../jmods/java.rmi.jmod + done + ;; + esac diff --git a/tests/spread/integration/openjdk-17-jre-headless/Main.java b/tests/spread/integration/openjdk-17-jre-headless/Main.java new file mode 100644 index 000000000..47e5d0af7 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/Main.java @@ -0,0 +1,5 @@ +public class Main { + public static void main(String[] args) { + System.out.println("Hello world"); + } +} diff --git a/tests/spread/integration/openjdk-17-jre-headless/PrefsTest.java b/tests/spread/integration/openjdk-17-jre-headless/PrefsTest.java new file mode 100644 index 000000000..73c4ee63e --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/PrefsTest.java @@ -0,0 +1,13 @@ +import java.util.prefs.*; + +public class PrefsTest { + public static void main(String[] args) { + if ("put".equals(args[0])) { + Preferences.userRoot().put("a", "b"); + } else if ("get".equals(args[0])) { + if (!"b".equals(Preferences.userRoot().get("a", null))) { + throw new RuntimeException("Unable to read the preference"); + } + } + } +} diff --git a/tests/spread/integration/openjdk-17-jre-headless/ReadCertificate.java b/tests/spread/integration/openjdk-17-jre-headless/ReadCertificate.java new file mode 100644 index 000000000..ef92fd99b --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/ReadCertificate.java @@ -0,0 +1,14 @@ +import java.security.cert.*; +import java.io.*; +import java.nio.file.Files; +import java.nio.file.Path; + +public class ReadCertificate { + + public static void main(String[] args) throws Throwable { + byte[] pem = Files.readAllBytes(Path.of("certificate.pem")); + java.security.cert.Certificate cert = CertificateFactory.getInstance("X509").generateCertificate(new ByteArrayInputStream(pem)); + if (cert == null) + throw new RuntimeException("It should be possible to decode a certificate"); + } +} diff --git a/tests/spread/integration/openjdk-17-jre-headless/TestJMX.java b/tests/spread/integration/openjdk-17-jre-headless/TestJMX.java new file mode 100644 index 000000000..e27d058d8 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/TestJMX.java @@ -0,0 +1,39 @@ +import java.lang.management.ManagementFactory; +import javax.management.Attribute; +import javax.management.AttributeList; +import javax.management.AttributeNotFoundException; +import javax.management.DynamicMBean; +import javax.management.InstanceAlreadyExistsException; +import javax.management.InvalidAttributeValueException; +import javax.management.MBeanException; +import javax.management.MBeanInfo; +import javax.management.MBeanRegistrationException; +import javax.management.MBeanServer; +import javax.management.MBeanServerConnection; +import javax.management.MalformedObjectNameException; +import javax.management.NotCompliantMBeanException; +import javax.management.ObjectName; +import javax.management.ReflectionException; +import javax.management.remote.*; +import com.sun.tools.attach.*; + +public class TestJMX implements TestJMXMBean { + + static final String CONNECTOR_ADDRESS = + "com.sun.management.jmxremote.localConnectorAddress"; + + @Override + public void test() { + } + + public static void main(String[] args) throws Throwable { + ObjectName objectName = new ObjectName("test:type=basic,name=mbeantest"); + MBeanServer server = ManagementFactory.getPlatformMBeanServer(); + server.registerMBean(new TestJMX(), objectName); + JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:5000/jmxrmi"); + int count = JMXConnectorFactory.connect(url) + .getMBeanServerConnection() + .getMBeanCount(); + System.out.println(count); + } +} diff --git a/tests/spread/integration/openjdk-17-jre-headless/TestJMXMBean.java b/tests/spread/integration/openjdk-17-jre-headless/TestJMXMBean.java new file mode 100644 index 000000000..c75f6c573 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/TestJMXMBean.java @@ -0,0 +1,3 @@ +public interface TestJMXMBean { + void test(); +} diff --git a/tests/spread/integration/openjdk-17-jre-headless/certificate.pem b/tests/spread/integration/openjdk-17-jre-headless/certificate.pem new file mode 100644 index 000000000..645e9f80c --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/certificate.pem @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDazCCAlOgAwIBAgIULvuqN3MiptnZSYS9y1qJAZYKFA4wDQYJKoZIhvcNAQEL +BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM +GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0yNDA4MTUwMjQzNDhaFw0yNTA4 +MTUwMjQzNDhaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw +HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDm3990peBuPYaz0UEEc75Q7i79P4RzrD84MxhDpoPs +MSdnmO3rTkIG84Wp72+8T7TGjGjBhX++8UmZLrXy2AfcejZi3JcddMWH4V5XEnAj +hTBe1HLkiotayZst/cxuTP6KmuahjsROAqriCv/A4BBA8KjYx1e4E9k9+81FreZy +PJ8p3m7R8qZ/DtjuW1aMQ3oDRKA/iqQhLHVpJy/iYiyjwTdJm6/lA3ywGCr6ZMWm +9tWUT+4TvhyRM67Y0gcCtH51cwxPqUFGEKAkLWIu2fS6DaoXtHylxgGeKKPes3JX +uSn9QezEEqvrgLFQRqIUS8tNZFEhoJQ7dmxMP/XKAD51AgMBAAGjUzBRMB0GA1Ud +DgQWBBSb70j+xaI3eTxp4H7MDm1MLVRGNTAfBgNVHSMEGDAWgBSb70j+xaI3eTxp +4H7MDm1MLVRGNTAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAp +0GIjKtwvD7BkQy+cf3dsdwYodxoIYl4E8UvHfBSPQQfFNh+chHPmrNYRuFM3Q6sT +ogNhHKLecQMK4tNUDa/vVRGnqmZVWjxqLnyH/qFKtakqPB6h6x4h50huzA+twhNm +SDjg3QqqpOuUzrs77JqYkxSjqd0QgmwmgxOdbcF0SY+ebQhAd0UXY7wIs6ByDEHO +kElgJmnGKhOpf1SFpQh2qpKGq/MvcdHWN4oKri440wCf+czkrOTyGVc275oTbRnM +Z76Ro4JDuomyWeR9iQ5pP5ug4ciflLa7hlYcH0xJbF3b2M3BlnUYKMqih/TjqKdr +NBs121h64SPY0gh7kIvF +-----END CERTIFICATE----- diff --git a/tests/spread/integration/openjdk-17-jre-headless/task.yaml b/tests/spread/integration/openjdk-17-jre-headless/task.yaml new file mode 100644 index 000000000..85608ad36 --- /dev/null +++ b/tests/spread/integration/openjdk-17-jre-headless/task.yaml @@ -0,0 +1,67 @@ +summary: Integration tests for openjdk-17-jre-headless + +environment: + SLICE/classdatasharing: "class-data-sharing" + SLICE/core: "core" + SLICE/prefs: "prefs" +# SLICE/rmi: "rmi" # Tested in management slice + SLICE/debug: "debug" + SLICE/management: "management" + SLICE/jfr: "jfr" + SLICE/security: "security" + SLICE/tools: "tools" + +execute: | + # Test different slice installations + echo "SLICE=${SLICE}" + rootfs="$(install-slices openjdk-17-jre-headless_${SLICE} dash_bins)" + apt install --update -y openjdk-11-jdk-headless + # Need to ensure we're using the right java version + update-java-alternatives --set /usr/lib/jvm/java-1.11.0* + javac *.java + jar cvf test.jar *.java + cp *.jar ${rootfs}/ + cp *.java ${rootfs}/ + cp *.class ${rootfs}/ + cp certificate.pem ${rootfs}/ + cd ${rootfs} + mkdir -p proc/self + for java in `find usr/lib/jvm -name java`; do + ln -sf /${java} proc/self/exe + chroot . ${java} --version + case ${SLICE} in + class-data-sharing) + chroot . ${java} -Xshare:dump + chroot . ${java} -XX:ArchiveClassesAtExit=archive.cds /Main.java + ;; + core) + chroot . ${java} -cp . Main + ;; + prefs) + chroot . ${java} -cp . PrefsTest put + chroot . ${java} -cp . PrefsTest get + ;; + debug) + chroot . ${java} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -cp . Main + ;; + management) + chroot . ${java} -Dcom.sun.management.jmxremote.port=5000 \ + -Dcom.sun.management.jmxremote.authenticate=false \ + -Dcom.sun.management.jmxremote=true \ + -Dcom.sun.management.jmxremote.ssl=false -cp . TestJMX + ;; + jfr) + chroot . ${java} -XX:+FlightRecorder -XX:StartFlightRecording=duration=60s,filename=dump.jfr -cp . Main + ;; + security) + chroot . ${java} -cp . ReadCertificate + ;; + tools) + DNAME="CN=Sample Cert, OU=R&D, O=Company Ltd., L=Dublin 4, S=Dublin, C=IE" + chroot . $(dirname ${java})/keytool -genkeypair -keystore foo -storepass barbar -keyalg RSA -dname "$DNAME" + ;; + esac + done + +restore: apt remove -y openjdk-11-jre-headless + diff --git a/tests/spread/integration/openjdk-8-jre-headless/task.yaml b/tests/spread/integration/openjdk-8-jre-headless/task.yaml new file mode 100644 index 000000000..7d8b82389 --- /dev/null +++ b/tests/spread/integration/openjdk-8-jre-headless/task.yaml @@ -0,0 +1,16 @@ +summary: Integration tests for openjdk-8-jre-headless + +environment: + SLICE/core: "core" + +execute: | + # Test core slice installation + echo "SLICE=${SLICE}" + rootfs="$(install-slices openjdk-8-jre-headless_${SLICE})" + + cd ${rootfs} + mkdir -p proc/self + for java in `find usr/lib/jvm -name java`; do + ln -sf /${java} proc/self/exe + chroot . ${java} -version + done diff --git a/tests/spread/integration/wget/task.yaml b/tests/spread/integration/wget/task.yaml new file mode 100644 index 000000000..c0a823998 --- /dev/null +++ b/tests/spread/integration/wget/task.yaml @@ -0,0 +1,12 @@ +summary: Integration tests for wget + +execute: | + # Chisel a minimum number of slices to give us a runnable system that we can + # test in. + rootfs="$(install-slices ca-certificates_data wget_bins)" + cp /etc/resolv.conf "${rootfs}/etc/" + + # Download Chisel release and compare to a known hash. + chroot "${rootfs}/" wget https://github.com/canonical/chisel/releases/download/v1.0.0/chisel_v1.0.0_linux_amd64.tar.gz + chroot "${rootfs}/" wget https://github.com/canonical/chisel/releases/download/v1.0.0/chisel_v1.0.0_linux_amd64.tar.gz.sha384 + cd "${rootfs}" && sha384sum -c chisel_v1.0.0_linux_amd64.tar.gz.sha384 diff --git a/tests/spread/integration/xdg-user-dirs/task.yaml b/tests/spread/integration/xdg-user-dirs/task.yaml new file mode 100644 index 000000000..a3db33d48 --- /dev/null +++ b/tests/spread/integration/xdg-user-dirs/task.yaml @@ -0,0 +1,8 @@ +summary: Integration tests for xdg-user-dirs + +execute: | + rootfs="$(install-slices xdg-user-dirs_scripts)" + + test -d ${rootfs}/etc/xdg/autostart + test -f ${rootfs}/etc/xdg/user-dirs.conf + test -f ${rootfs}/etc/xdg/user-dirs.defaults diff --git a/tests/spread/integration/xfonts-utils/6x13.bdf b/tests/spread/integration/xfonts-utils/6x13.bdf new file mode 100644 index 000000000..66faf02df --- /dev/null +++ b/tests/spread/integration/xfonts-utils/6x13.bdf @@ -0,0 +1,52 @@ +STARTFONT 2.1 +COMMENT $Id$ +COMMENT Send bug reports to Markus Kuhn +FONT -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 +SIZE 12 75 75 +FONTBOUNDINGBOX 6 13 0 -2 +STARTPROPERTIES 22 +FONTNAME_REGISTRY "" +FOUNDRY "Misc" +FAMILY_NAME "Fixed" +WEIGHT_NAME "Medium" +SLANT "R" +SETWIDTH_NAME "SemiCondensed" +ADD_STYLE_NAME "" +PIXEL_SIZE 13 +POINT_SIZE 120 +RESOLUTION_X 75 +RESOLUTION_Y 75 +SPACING "C" +AVERAGE_WIDTH 60 +CHARSET_REGISTRY "ISO10646" +CHARSET_ENCODING "1" +DEFAULT_CHAR 0 +FONT_DESCENT 2 +FONT_ASCENT 11 +COPYRIGHT "Public domain font. Share and enjoy." +_XMBDFED_INFO "Edited with xmbdfed 4.5." +CAP_HEIGHT 9 +X_HEIGHT 6 +ENDPROPERTIES +CHARS 4430 +STARTCHAR char0 +ENCODING 0 +SWIDTH 480 0 +DWIDTH 6 0 +BBX 6 13 0 -2 +BITMAP +00 +00 +A8 +00 +88 +00 +88 +00 +88 +00 +A8 +00 +00 +ENDCHAR +ENDFONT diff --git a/tests/spread/integration/xfonts-utils/sample.bdf b/tests/spread/integration/xfonts-utils/sample.bdf new file mode 100644 index 000000000..a8e4d3d72 --- /dev/null +++ b/tests/spread/integration/xfonts-utils/sample.bdf @@ -0,0 +1,47 @@ +STARTFONT 2.1 +FONT -FontForge-sample-Regular-R-Normal--2-20-75-75-C-20-FontSpecific-0 +SIZE 2 75 75 +FONTBOUNDINGBOX 1 1 0 1 +COMMENT "Generated by fontforge, http://fontforge.sourceforge.net" +COMMENT "public domain, created by Mikhail Aksenov" +STARTPROPERTIES 28 +FOUNDRY "FontForge" +FAMILY_NAME "sample" +WEIGHT_NAME "Regular" +SLANT "R" +SETWIDTH_NAME "Normal" +ADD_STYLE_NAME "" +PIXEL_SIZE 2 +POINT_SIZE 20 +RESOLUTION_X 75 +RESOLUTION_Y 75 +SPACING "C" +AVERAGE_WIDTH 20 +CHARSET_REGISTRY "FontSpecific" +CHARSET_ENCODING "0" +FONTNAME_REGISTRY "" +CHARSET_COLLECTIONS "FontSpecific" +FONT_NAME "sample" +FACE_NAME "sample" +COPYRIGHT "public domain" +FONT_VERSION "001.000" +FONT_ASCENT 2 +FONT_DESCENT 0 +UNDERLINE_POSITION 0 +UNDERLINE_THICKNESS 1 +RAW_ASCENT 800 +RAW_DESCENT 200 +FIGURE_WIDTH -1 +AVG_UPPERCASE_WIDTH 20 +ENDPROPERTIES +CHARS 1 +STARTCHAR A +ENCODING -1 +SWIDTH 1000 0 +DWIDTH 2 0 +BBX 1 1 0 1 +BITMAP +00 +ENDCHAR +ENDFONT + diff --git a/tests/spread/integration/xfonts-utils/task.yaml b/tests/spread/integration/xfonts-utils/task.yaml new file mode 100644 index 000000000..7e39dcb5b --- /dev/null +++ b/tests/spread/integration/xfonts-utils/task.yaml @@ -0,0 +1,21 @@ +summary: Integration tests for xfonts-utils + +execute: | + rootfs="$(install-slices xfonts-utils_bins bash_bins)" + + mkdir -p $rootfs/tmp/fonts + mkdir -p $rootfs/dev + cp sample.bdf $rootfs/tmp/fonts/sample.bdf + + chroot "$rootfs" bdftopcf /tmp/fonts/sample.bdf 1>/dev/null 2>/dev/null + chroot "$rootfs" /usr/bin/bash -c "bdftruncate 0x3200 /dev/null" + chroot "$rootfs" /usr/bin/bash -c "fonttosfnt -o /tmp/test.ttf /tmp/fonts/sample.bdf" + + # it is a script calling mkfontscale and it does require + # /bin/sh, so using bash instead + chroot "$rootfs" /usr/bin/bash -c "bash mkfontdir" + + chroot "$rootfs" mkfontscale + + cp 6x13.bdf $rootfs/tmp/fonts/6x13.bdf + chroot "$rootfs" ucs2any /tmp/fonts/6x13.bdf