diff --git a/build/components/versions.yml b/build/components/versions.yml index 5fb98de68c..60ba022d52 100644 --- a/build/components/versions.yml +++ b/build/components/versions.yml @@ -75,3 +75,7 @@ package: util-linux: v2.41.1 zlib: v1.3.1 zstd: v1.5.7 + krb5: krb5-1.21.3-final + lz4: v1.9.4 + lzo: lzo-2.10 + xz: v5.4.5 diff --git a/images/cdi-artifact/werf.inc.yaml b/images/cdi-artifact/werf.inc.yaml index 8cdd1fd798..449109ced2 100644 --- a/images/cdi-artifact/werf.inc.yaml +++ b/images/cdi-artifact/werf.inc.yaml @@ -10,6 +10,8 @@ binaries: - /cdi-binaries/cdi-source-update-poller packages: - libnbd +- xz +- libxml2 {{- end -}} {{ $builderDependencies := include "$name" . | fromYaml }} @@ -58,7 +60,7 @@ shell: beforeInstall: {{- include "alt packages proxy" . | nindent 2 }} - | - apt-get -qq install -y libxml2-devel \ + apt-get -qq install -y \ git binutils make gcc glibc-pthread glibc-devel glibc-devel-static golang {{- include "alt packages clean" . | nindent 2 }} install: diff --git a/images/cdi-importer/werf.inc.yaml b/images/cdi-importer/werf.inc.yaml index 078f2b2b30..5f1edfc716 100644 --- a/images/cdi-importer/werf.inc.yaml +++ b/images/cdi-importer/werf.inc.yaml @@ -50,6 +50,12 @@ import: - cdi-image-size-detection - cdi-importer - cdi-source-update-poller +- image: {{ .ModuleNamePrefix }}cdi-artifact + add: /cdi-binaries + to: /usr/lib64 + before: setup + includePaths: + - libxml2.s* - image: {{ .ModuleNamePrefix }}qemu add: /qemu-img to: /relocate diff --git a/images/dvcr-artifact/werf.inc.yaml b/images/dvcr-artifact/werf.inc.yaml index 070620e232..f27071db2f 100644 --- a/images/dvcr-artifact/werf.inc.yaml +++ b/images/dvcr-artifact/werf.inc.yaml @@ -4,9 +4,9 @@ altPackages: - gcc glibc-pthread glibc-devel glibc-devel-static - git golang make binutils -- libxml2-devel packages: - libnbd +- libxml2 {{- end -}} {{ $builderDeps := include "$nameDeps" . | fromYaml }} @@ -68,8 +68,6 @@ shell: --- {{- $name := print $.ImageName "-dependencies" -}} {{- define "$name" -}} -altPackages: -- libxml2-devel binaries: - /usr/local/bin/dvcr-importer - /usr/sbin/nbd* @@ -82,8 +80,9 @@ binaries: - /usr/bin/qemu-img - /usr/bin/qemu-nbd - /usr/lib64/libnbd.s* +- /usr/lib64/libxml2.s* packages: -- bzip2 file nbdkit libnbd +- bzip2 file nbdkit libnbd xz libxml2 {{- end -}} {{ $builderDependencies := include "$name" . | fromYaml }} diff --git a/images/libvirt/werf.inc.yaml b/images/libvirt/werf.inc.yaml index 2ae82db181..3e147f8bf4 100644 --- a/images/libvirt/werf.inc.yaml +++ b/images/libvirt/werf.inc.yaml @@ -92,6 +92,7 @@ packages: - openssl libcurl e2fsprogs libxcrypt numactl - zlib p11-kit - libssh libssh2 libjson-c5 keyutils +- krb5 xz {{- end -}} {{ $builderDependencies := include "$name" . | fromYaml }} diff --git a/images/packages/file/werf.inc.yaml b/images/packages/file/werf.inc.yaml index eb9635bf9d..dd96f3471c 100644 --- a/images/packages/file/werf.inc.yaml +++ b/images/packages/file/werf.inc.yaml @@ -35,7 +35,7 @@ altPackages: - bzlib-devel liblzma-devel libseccomp-devel libcap-devel lzip ncompress strace - tree packages: -- zlib zstd +- zlib zstd xz {{- end -}} diff --git a/images/packages/krb5/README.md b/images/packages/krb5/README.md new file mode 100644 index 0000000000..1071b3c781 --- /dev/null +++ b/images/packages/krb5/README.md @@ -0,0 +1,109 @@ +└── [drwxr-xr-x 4096] usr + ├── [drwxr-xr-x 4096] include + │ ├── [drwxr-xr-x 4096] gssapi + │ │ ├── [-rw-r--r-- 30083] gssapi.h + │ │ ├── [-rw-r--r-- 2640] gssapi_alloc.h + │ │ ├── [-rw-r--r-- 21165] gssapi_ext.h + │ │ ├── [-rw-r--r-- 2217] gssapi_generic.h + │ │ ├── [-rw-r--r-- 12027] gssapi_krb5.h + │ │ └── [-rw-r--r-- 1652] mechglue.h + │ ├── [-rw-r--r-- 181] gssapi.h + │ ├── [drwxr-xr-x 4096] gssrpc + │ │ ├── [-rw-r--r-- 6441] auth.h + │ │ ├── [-rw-r--r-- 4840] auth_gss.h + │ │ ├── [-rw-r--r-- 4333] auth_gssapi.h + │ │ ├── [-rw-r--r-- 2896] auth_unix.h + │ │ ├── [-rw-r--r-- 9654] clnt.h + │ │ ├── [-rw-r--r-- 2442] netdb.h + │ │ ├── [-rw-r--r-- 3429] pmap_clnt.h + │ │ ├── [-rw-r--r-- 3841] pmap_prot.h + │ │ ├── [-rw-r--r-- 2303] pmap_rmt.h + │ │ ├── [-rw-r--r-- 10034] rename.h + │ │ ├── [-rw-r--r-- 3143] rpc.h + │ │ ├── [-rw-r--r-- 5107] rpc_msg.h + │ │ ├── [-rw-r--r-- 11402] svc.h + │ │ ├── [-rw-r--r-- 3976] svc_auth.h + │ │ ├── [-rw-r--r-- 3628] types.h + │ │ └── [-rw-r--r-- 11781] xdr.h + │ ├── [drwxr-xr-x 4096] kadm5 + │ │ ├── [-rw-r--r-- 20688] admin.h + │ │ ├── [-rw-r--r-- 1548] chpass_util_strings.h + │ │ └── [-rw-r--r-- 4345] kadm_err.h + │ ├── [-rw-r--r-- 64259] kdb.h + │ ├── [-rw-r--r-- 8933] krad.h + │ ├── [drwxr-xr-x 4096] krb5 + │ │ ├── [-rw-r--r-- 4213] ccselect_plugin.h + │ │ ├── [-rw-r--r-- 5864] certauth_plugin.h + │ │ ├── [-rw-r--r-- 15529] clpreauth_plugin.h + │ │ ├── [-rw-r--r-- 5460] hostrealm_plugin.h + │ │ ├── [-rw-r--r-- 12482] kadm5_auth_plugin.h + │ │ ├── [-rw-r--r-- 6161] kadm5_hook_plugin.h + │ │ ├── [-rw-r--r-- 5320] kdcpolicy_plugin.h + │ │ ├── [-rw-r--r-- 18241] kdcpreauth_plugin.h + │ │ ├── [-rw-r--r-- 348689] krb5.h + │ │ ├── [-rw-r--r-- 5881] localauth_plugin.h + │ │ ├── [-rw-r--r-- 2686] locate_plugin.h + │ │ ├── [-rw-r--r-- 2090] plugin.h + │ │ ├── [-rw-r--r-- 1774] preauth_plugin.h + │ │ └── [-rw-r--r-- 4426] pwqual_plugin.h + │ ├── [-rw-r--r-- 402] krb5.h + │ ├── [-rw-r--r-- 12154] profile.h + │ ├── [-rw-r--r-- 6640] verto-module.h + │ └── [-rw-r--r-- 19437] verto.h + └── [drwxr-xr-x 4096] lib64 + ├── [drwxr-xr-x 4096] krb5 + │ └── [drwxr-xr-x 4096] plugins + │ ├── [drwxr-xr-x 4096] authdata + │ ├── [drwxr-xr-x 4096] kdb + │ │ └── [-rwxr-xr-x 112496] db2.so + │ ├── [drwxr-xr-x 4096] libkrb5 + │ ├── [drwxr-xr-x 4096] preauth + │ │ ├── [-rwxr-xr-x 32520] otp.so + │ │ ├── [-rwxr-xr-x 154992] pkinit.so + │ │ ├── [-rwxr-xr-x 93936] spake.so + │ │ └── [-rwxr-xr-x 21824] test.so + │ └── [drwxr-xr-x 4096] tls + │ └── [-rwxr-xr-x 29120] k5tls.so + ├── [lrwxrwxrwx 21] libgssapi_krb5.so -> libgssapi_krb5.so.2.2 + ├── [lrwxrwxrwx 21] libgssapi_krb5.so.2 -> libgssapi_krb5.so.2.2 + ├── [-rwxr-xr-x 392192] libgssapi_krb5.so.2.2 + ├── [lrwxrwxrwx 16] libgssrpc.so -> libgssrpc.so.4.2 + ├── [lrwxrwxrwx 16] libgssrpc.so.4 -> libgssrpc.so.4.2 + ├── [-rwxr-xr-x 145832] libgssrpc.so.4.2 + ├── [lrwxrwxrwx 18] libk5crypto.so -> libk5crypto.so.3.1 + ├── [lrwxrwxrwx 18] libk5crypto.so.3 -> libk5crypto.so.3.1 + ├── [-rwxr-xr-x 201744] libk5crypto.so.3.1 + ├── [lrwxrwxrwx 19] libkadm5clnt.so -> libkadm5clnt_mit.so + ├── [lrwxrwxrwx 24] libkadm5clnt_mit.so -> libkadm5clnt_mit.so.12.0 + ├── [lrwxrwxrwx 24] libkadm5clnt_mit.so.12 -> libkadm5clnt_mit.so.12.0 + ├── [-rwxr-xr-x 105088] libkadm5clnt_mit.so.12.0 + ├── [lrwxrwxrwx 18] libkadm5srv.so -> libkadm5srv_mit.so + ├── [lrwxrwxrwx 23] libkadm5srv_mit.so -> libkadm5srv_mit.so.12.0 + ├── [lrwxrwxrwx 23] libkadm5srv_mit.so.12 -> libkadm5srv_mit.so.12.0 + ├── [-rwxr-xr-x 137216] libkadm5srv_mit.so.12.0 + ├── [lrwxrwxrwx 15] libkdb5.so -> libkdb5.so.10.0 + ├── [lrwxrwxrwx 15] libkdb5.so.10 -> libkdb5.so.10.0 + ├── [-rwxr-xr-x 96008] libkdb5.so.10.0 + ├── [lrwxrwxrwx 14] libkrad.so -> libkrad.so.0.0 + ├── [lrwxrwxrwx 14] libkrad.so.0 -> libkrad.so.0.0 + ├── [-rwxr-xr-x 44456] libkrad.so.0.0 + ├── [lrwxrwxrwx 14] libkrb5.so -> libkrb5.so.3.3 + ├── [lrwxrwxrwx 14] libkrb5.so.3 -> libkrb5.so.3.3 + ├── [-rwxr-xr-x 1054216] libkrb5.so.3.3 + ├── [lrwxrwxrwx 21] libkrb5support.so -> libkrb5support.so.0.1 + ├── [lrwxrwxrwx 21] libkrb5support.so.0 -> libkrb5support.so.0.1 + ├── [-rwxr-xr-x 63408] libkrb5support.so.0.1 + ├── [lrwxrwxrwx 15] libverto.so -> libverto.so.0.0 + ├── [lrwxrwxrwx 15] libverto.so.0 -> libverto.so.0.0 + ├── [-rwxr-xr-x 47696] libverto.so.0.0 + └── [drwxr-xr-x 4096] pkgconfig + ├── [-rw-r--r-- 241] gssrpc.pc + ├── [-rw-r--r-- 262] kadm-client.pc + ├── [-rw-r--r-- 258] kadm-server.pc + ├── [-rw-r--r-- 293] kdb.pc + ├── [-rw-r--r-- 199] krb5-gssapi.pc + ├── [-rw-r--r-- 324] krb5.pc + ├── [-rw-r--r-- 249] mit-krb5-gssapi.pc + └── [-rw-r--r-- 396] mit-krb5.pc + +16 directories, 92 files \ No newline at end of file diff --git a/images/packages/krb5/werf.inc.yaml b/images/packages/krb5/werf.inc.yaml new file mode 100644 index 0000000000..23e0704e94 --- /dev/null +++ b/images/packages/krb5/werf.inc.yaml @@ -0,0 +1,89 @@ +--- +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }} +final: false +fromImage: builder/scratch +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder + add: /out + to: /{{ $.ImageName }} + before: setup + +--- +{{- $version := get $.PackageVersion $.ImageName }} +{{- $gitRepoUrl := "krb5/krb5.git" }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact +final: false +fromImage: builder/src +secrets: +- id: SOURCE_REPO + value: {{ $.SOURCE_REPO_GIT }} +shell: + install: + - git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src + +--- +{{- $name := print $.ImageName "-dependencies" -}} +{{- define "$name" -}} +altPackages: +- git gcc automake make tree +- flex libcom_err-devel libkeyutils-devel bison +- libncurses-devel libss-devel libtinfo-devel +packages: +- linux-pam openssl +{{- end -}} + +{{ $builderDependencies := include "$name" . | fromYaml }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder +final: false +fromImage: builder/alt +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact + add: /src + to: /src + before: install +{{- include "importPackageImages" (list . $builderDependencies.packages "install") -}} +shell: + beforeInstall: + {{- include "alt packages proxy" . | nindent 2 }} + - | + apt-get install -y \ + {{ $builderDependencies.altPackages | join " " }} + + {{- include "alt packages clean" . | nindent 2 }} + + install: + - | + # Install packages + PKGS="{{ $builderDependencies.packages | join " " }}" + for pkg in $PKGS; do + cp -a /$pkg/. / + rm -rf /$pkg + done + OUTDIR=/out + + cd /src/src + export YACC="bison -y" + export CFLAGS="-O2 -fcommon" + + autoreconf + + ./configure \ + --prefix=/usr \ + --libdir=/usr/lib64 \ + --exec-prefix=/usr \ + --enable-shared --disable-static \ + --enable-dns-for-realm \ + --enable-pkinit \ + --with-system-et \ + --with-system-ss \ + --with-pkinit-crypto-impl=openssl \ + --with-tls-impl=openssl + + make -j$(nproc) + make DESTDIR=$OUTDIR install + + rm -rf $OUTDIR/usr/share + rm -rf $OUTDIR/usr/var + tree -sp $OUTDIR diff --git a/images/packages/libnbd/werf.inc.yaml b/images/packages/libnbd/werf.inc.yaml index 5e0af92f70..ecf4087d03 100644 --- a/images/packages/libnbd/werf.inc.yaml +++ b/images/packages/libnbd/werf.inc.yaml @@ -30,10 +30,10 @@ altPackages: - gcc gcc-c++ make git autoconf libtool gettext-tools - automake pkgconf glibc-devel - bash-completion hardlink libfuse3-devel -- liburing-devel libxml2-devel perl-podlators +- liburing-devel perl-podlators - ocaml ocaml-findlib ocaml-ocamldoc packages: -- gnutls libidn2 libgmp ubdsrv +- gnutls libidn2 libgmp ubdsrv xz libxml2 {{- end -}} {{ $builderDependencies := include "$name" . | fromYaml }} diff --git a/images/packages/libxml2/werf.inc.yaml b/images/packages/libxml2/werf.inc.yaml index acf0d74479..44046145fe 100644 --- a/images/packages/libxml2/werf.inc.yaml +++ b/images/packages/libxml2/werf.inc.yaml @@ -31,6 +31,7 @@ altPackages: - meson ninja-build - gettext-devel liblzma-devel - xz git +- tree packages: - zlib - openssl @@ -85,3 +86,5 @@ shell: echo "Stripped: $execfile" fi done + + tree -hp /out diff --git a/images/packages/lz4/README.md b/images/packages/lz4/README.md new file mode 100644 index 0000000000..b190581e58 --- /dev/null +++ b/images/packages/lz4/README.md @@ -0,0 +1,22 @@ +# lz4 +└── [drwxr-xr-x 4096] usr + ├── [drwxr-xr-x 4096] bin + │ ├── [-rwxr-xr-x 324192] lz4 + │ ├── [lrwxrwxrwx 3] lz4c -> lz4 + │ ├── [lrwxrwxrwx 3] lz4cat -> lz4 + │ └── [lrwxrwxrwx 3] unlz4 -> lz4 + ├── [drwxr-xr-x 4096] include + │ ├── [-rw-r--r-- 43263] lz4.h + │ ├── [-rw-r--r-- 32749] lz4frame.h + │ ├── [-rw-r--r-- 2044] lz4frame_static.h + │ └── [-rw-r--r-- 20179] lz4hc.h + └── [drwxr-xr-x 4096] lib64 + ├── [-rw-r--r-- 263272] liblz4.a + ├── [lrwxrwxrwx 15] liblz4.so -> liblz4.so.1.9.4 + ├── [lrwxrwxrwx 15] liblz4.so.1 -> liblz4.so.1.9.4 + ├── [-rwxr-xr-x 237024] liblz4.so.1.9.4 + └── [drwxr-xr-x 4096] pkgconfig + └── [-rw-r--r-- 391] liblz4.pc + +6 directories, 13 files +``` \ No newline at end of file diff --git a/images/packages/lz4/werf.inc.yaml b/images/packages/lz4/werf.inc.yaml new file mode 100644 index 0000000000..150621426c --- /dev/null +++ b/images/packages/lz4/werf.inc.yaml @@ -0,0 +1,62 @@ +--- +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }} +final: false +fromImage: builder/scratch +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder + add: /out + to: /{{ $.ImageName }} + before: setup + +--- +{{- $version := get $.PackageVersion $.ImageName }} +{{- $gitRepoUrl := "lz4/lz4.git" }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact +final: false +fromImage: builder/src +secrets: +- id: SOURCE_REPO + value: {{ $.SOURCE_REPO_GIT }} +shell: + install: + - git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src + +--- +{{- $name := print $.ImageName "-dependencies" -}} +{{- define "$name" -}} +altPackages: +- git gcc automake make tree +{{- end -}} + +{{ $builderDependencies := include "$name" . | fromYaml }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder +final: false +fromImage: builder/alt +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact + add: /src + to: /src + before: install +shell: + beforeInstall: + {{- include "alt packages proxy" . | nindent 2 }} + - | + apt-get install -y \ + {{ $builderDependencies.altPackages | join " " }} + + {{- include "alt packages clean" . | nindent 2 }} + + install: + - | + OUTDIR=/out + + cd /src + + export PREFIX=/usr + export LIBDIR=/usr/lib64 + make -j$(nproc) + make DESTDIR=$OUTDIR install + rm -rf $OUTDIR/usr/share + tree -sp $OUTDIR diff --git a/images/packages/lzo/README.md b/images/packages/lzo/README.md new file mode 100644 index 0000000000..001ac7d617 --- /dev/null +++ b/images/packages/lzo/README.md @@ -0,0 +1,30 @@ +# lzo +/lzo +``` +└── [drwxr-xr-x 4] usr + ├── [drwxr-xr-x 3] include + │ └── [drwxr-xr-x 15] lzo + │ ├── [-rw-r--r-- 2634] lzo1.h + │ ├── [-rw-r--r-- 2638] lzo1a.h + │ ├── [-rw-r--r-- 5387] lzo1b.h + │ ├── [-rw-r--r-- 5384] lzo1c.h + │ ├── [-rw-r--r-- 3073] lzo1f.h + │ ├── [-rw-r--r-- 5873] lzo1x.h + │ ├── [-rw-r--r-- 4641] lzo1y.h + │ ├── [-rw-r--r-- 3771] lzo1z.h + │ ├── [-rw-r--r-- 2525] lzo2a.h + │ ├── [-rw-r--r-- 5566] lzo_asm.h + │ ├── [-rw-r--r-- 16006] lzoconf.h + │ ├── [-rw-r--r-- 127289] lzodefs.h + │ └── [-rw-r--r-- 1823] lzoutil.h + └── [drwxr-xr-x 8] lib64 + ├── [-rw-r--r-- 825068] liblzo2.a + ├── [-rwxr-xr-x 916] liblzo2.la + ├── [lrwxrwxrwx 16] liblzo2.so -> liblzo2.so.2.0.0 + ├── [lrwxrwxrwx 16] liblzo2.so.2 -> liblzo2.so.2.0.0 + ├── [-rwxr-xr-x 591976] liblzo2.so.2.0.0 + └── [drwxr-xr-x 3] pkgconfig + └── [-rw-r--r-- 512] lzo2.pc + +6 directories, 19 files +``` \ No newline at end of file diff --git a/images/packages/lzo/werf.inc.yaml b/images/packages/lzo/werf.inc.yaml new file mode 100644 index 0000000000..b8edcec4a0 --- /dev/null +++ b/images/packages/lzo/werf.inc.yaml @@ -0,0 +1,66 @@ +--- +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }} +final: false +fromImage: builder/scratch +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder + add: /out + to: /{{ $.ImageName }} + before: setup + +--- +{{- $version := get $.PackageVersion $.ImageName }} +{{- $gitRepoUrl := "oberhumer/lzo.git" }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact +final: false +fromImage: builder/src +secrets: +- id: SOURCE_REPO + value: {{ $.SOURCE_REPO_GIT }} +shell: + install: + - git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src + +--- +{{- $name := print $.ImageName "-dependencies" -}} +{{- define "$name" -}} +altPackages: +- git gcc make tree +{{- end -}} + +{{ $builderDependencies := include "$name" . | fromYaml }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder +final: false +fromImage: builder/alt +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact + add: /src + to: /src + before: install +shell: + beforeInstall: + {{- include "alt packages proxy" . | nindent 2 }} + - | + apt-get install -y \ + {{ $builderDependencies.altPackages | join " " }} + + {{- include "alt packages clean" . | nindent 2 }} + + install: + - | + OUTDIR=/out + + cd /src + + ./configure \ + --prefix=/usr \ + --libdir=/usr/lib64 \ + --enable-shared \ + --disable-silent-rules + make -j$(nproc) + make DESTDIR=$OUTDIR install + + rm -rf $OUTDIR/usr/share + tree -sp $OUTDIR diff --git a/images/packages/nbdkit/werf.inc.yaml b/images/packages/nbdkit/werf.inc.yaml index 805c56be3f..b3588776c5 100644 --- a/images/packages/nbdkit/werf.inc.yaml +++ b/images/packages/nbdkit/werf.inc.yaml @@ -41,6 +41,7 @@ packages: - zlib - libssh - zstd +- libxml2 {{- end -}} {{ $builderDependencies := include "$name" . | fromYaml }} diff --git a/images/packages/xz/README.md b/images/packages/xz/README.md new file mode 100644 index 0000000000..580ed09871 --- /dev/null +++ b/images/packages/xz/README.md @@ -0,0 +1,42 @@ +# xz +/xz +``` +└── [drwxr-xr-x 5] usr + ├── [drwxr-xr-x 11] bin + │ ├── [lrwxrwxrwx 2] lzcat -> xz + │ ├── [lrwxrwxrwx 2] lzma -> xz + │ ├── [-rwxr-xr-x 33272] lzmadec + │ ├── [-rwxr-xr-x 34560] lzmainfo + │ ├── [lrwxrwxrwx 2] unlzma -> xz + │ ├── [lrwxrwxrwx 2] unxz -> xz + │ ├── [-rwxr-xr-x 280352] xz + │ ├── [lrwxrwxrwx 2] xzcat -> xz + │ └── [-rwxr-xr-x 33200] xzdec + ├── [drwxr-xr-x 4] include + │ ├── [drwxr-xr-x 16] lzma + │ │ ├── [-rw-r--r-- 28145] base.h + │ │ ├── [-rw-r--r-- 2790] bcj.h + │ │ ├── [-rw-r--r-- 26028] block.h + │ │ ├── [-rw-r--r-- 4904] check.h + │ │ ├── [-rw-r--r-- 40821] container.h + │ │ ├── [-rw-r--r-- 2251] delta.h + │ │ ├── [-rw-r--r-- 31810] filter.h + │ │ ├── [-rw-r--r-- 2614] hardware.h + │ │ ├── [-rw-r--r-- 30371] index.h + │ │ ├── [-rw-r--r-- 4735] index_hash.h + │ │ ├── [-rw-r--r-- 20882] lzma12.h + │ │ ├── [-rw-r--r-- 9303] stream_flags.h + │ │ ├── [-rw-r--r-- 3936] version.h + │ │ └── [-rw-r--r-- 6699] vli.h + │ └── [-rw-r--r-- 9959] lzma.h + └── [drwxr-xr-x 8] lib64 + ├── [-rw-r--r-- 1520394] liblzma.a + ├── [-rwxr-xr-x 931] liblzma.la + ├── [lrwxrwxrwx 16] liblzma.so -> liblzma.so.5.4.5 + ├── [lrwxrwxrwx 16] liblzma.so.5 -> liblzma.so.5.4.5 + ├── [-rwxr-xr-x 946784] liblzma.so.5.4.5 + └── [drwxr-xr-x 3] pkgconfig + └── [-rw-r--r-- 426] liblzma.pc + +7 directories, 30 files +``` \ No newline at end of file diff --git a/images/packages/xz/werf.inc.yaml b/images/packages/xz/werf.inc.yaml new file mode 100644 index 0000000000..c252fe039e --- /dev/null +++ b/images/packages/xz/werf.inc.yaml @@ -0,0 +1,71 @@ +--- +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }} +final: false +fromImage: builder/scratch +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder + add: /out + to: /{{ $.ImageName }} + before: setup + +--- +{{- $version := get $.PackageVersion $.ImageName }} +{{- $gitRepoUrl := "tukaani-project/xz.git" }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact +final: false +fromImage: builder/src +secrets: +- id: SOURCE_REPO + value: {{ $.SOURCE_REPO_GIT }} +shell: + install: + - git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src + +--- +{{- $name := print $.ImageName "-dependencies" -}} +{{- define "$name" -}} +altPackages: +- git gcc automake make +- glibc-devel-static gettext-devel +- libtool po4a doxygen +- tree +{{- end -}} + +{{ $builderDependencies := include "$name" . | fromYaml }} + +image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder +final: false +fromImage: builder/alt +import: +- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact + add: /src + to: /src + before: install +shell: + beforeInstall: + {{- include "alt packages proxy" . | nindent 2 }} + - | + apt-get install -y \ + {{ $builderDependencies.altPackages | join " " }} + + {{- include "alt packages clean" . | nindent 2 }} + + install: + - | + OUTDIR=/out + + cd /src + + ./autogen.sh + ./configure \ + --prefix=/usr \ + --libdir=/usr/lib64 \ + --enable-dynamic \ + --disable-scripts + + make -j$(nproc) + make DESTDIR=$OUTDIR install + + rm -rf /$OUTDIR/usr/share + tree -sp $OUTDIR diff --git a/images/qemu/werf.inc.yaml b/images/qemu/werf.inc.yaml index 97f9f4afb6..a32c00757f 100644 --- a/images/qemu/werf.inc.yaml +++ b/images/qemu/werf.inc.yaml @@ -126,6 +126,7 @@ packages: - zlib zstd linux-pam - libssh libssh2 - openldap keyutils +- xz lz4 lzo krb5 - libpixman libpsl libpng libqpl rdma-core - pcre2 {{- end -}} diff --git a/images/virt-launcher/werf.inc.yaml b/images/virt-launcher/werf.inc.yaml index ebb162d3ab..cfe7f0e870 100644 --- a/images/virt-launcher/werf.inc.yaml +++ b/images/virt-launcher/werf.inc.yaml @@ -60,7 +60,6 @@ altLibs: - libpmem-devel - libdaxctl-devel - bzlib-devel - - liblzo2-devel - libsnappy-devel - libcacard-devel - libusbredir-devel @@ -86,7 +85,6 @@ altLibs: - systemtap-sdt-devel - glib2-devel - libgio-devel - - libxml2-devel - libtirpc-devel - libclocale - libLLVMSPIRVLib-devel @@ -130,6 +128,7 @@ packages: - zlib zstd p11-kit linux-pam - libssh libssh2 - libpixman libqpl rdma-core +- krb5 xz libxml2 {{- end -}} {{ $builderDependencies := include "$name" . | fromYaml }}