# Description: Location for shared common files in github.com/containers repos
# URL: https://github.com/containers/common
# Maintainer: Tim Biermann, tbier at posteo dot de
# Depends on: netavark

name=containers-common
version=0.68.0
release=1

_podman_version=5.8.2
_image_version=5.36.2
_skopeo_version=1.11.5
_storage_version=1.51.3
_shortnames_version=2025.03.19
source=(https://github.com/containers/container-libs/archive/refs/tags/common/v$version/$name-$version.tar.gz
  https://github.com/containers/podman/archive/v$_podman_version/podman-$_podman_version.tar.gz
  https://github.com/containers/image/archive/v$_image_version/image-$_image_version.tar.gz
  https://github.com/containers/skopeo/archive/v$_skopeo_version/skopeo-$_skopeo_version.tar.gz
  https://github.com/containers/storage/archive/v$_storage_version/storage-$_storage_version.tar.gz
  https://github.com/containers/shortnames/archive/v$_shortnames_version/shortnames-$_shortnames_version.tar.gz
  containers-common-0.48.0-init_path.patch
  mounts.conf
  check-versions.sh
)

build() {
  cd container-libs-common-v$version/common

  mkdir -vp $SRC/build/{man1,man5}
  patch -Np1 -i $SRC/containers-common-0.48.0-init_path.patch

  for _man_page in docs/*.md pkg/hooks/docs/*.md; do
    go-md2man -in $_man_page -out $SRC/build/man5/$(basename ${_man_page//.md})
  done

  install -vdm 755 "$PKG/etc/containers/containers.conf.d/"
  install -vdm 755 "$PKG/etc/containers/oci/hooks.d/"
  install -vdm 755 "$PKG/etc/containers/registries.conf.d/"
  install -vdm 755 "$PKG/usr/share/containers/oci/hooks.d/"

  install -vDm 644 $SRC/mounts.conf -t "$PKG/etc/containers/"
  install -vDm 644 pkg/config/containers.conf -t "$PKG/etc/containers/"
  install -vDm 644 pkg/config/containers.conf -t "$PKG/usr/share/containers/"
  install -vDm 644 pkg/seccomp/seccomp.json -t "$PKG/etc/containers/"
  install -vDm 644 pkg/seccomp/seccomp.json -t "$PKG/usr/share/containers/"

  cd $SRC/image-$_image_version
  mkdir -vp man5
  mv -v docs/*.5.md man5/
  for _man_page in docs/*.md; do
    go-md2man -in $_man_page -out $SRC/build/man1/$(basename ${_man_page//.md}).1
  done
  for _man_page in man5/*.md; do
    go-md2man -in $_man_page -out $SRC/build/man5/$(basename ${_man_page//.md})
  done
  install -vDm 644 registries.conf -t "$PKG/etc/containers/"

  cd $SRC/shortnames-$_shortnames_version
  install -vDm 644 shortnames.conf "$PKG/etc/containers/registries.conf.d/00-shortnames.conf"

  cd $SRC/skopeo-$_skopeo_version
  install -vDm 644 default-policy.json "$PKG/etc/containers/policy.json"
  install -vDm 644 default.yaml -t "$PKG/etc/containers/registries.d/"

  cd $SRC/storage-$_storage_version
  sed -r 's/(GOMD2MAN = ).*/\1 go-md2man/' -i docs/Makefile
  make -C docs
  install -vDm 644 storage.conf -t "$PKG/etc/containers/"
  install -vDm 644 storage.conf -t "$PKG/usr/share/containers/"
  install -vDm 644 docs/*.1 -t "$PKG/usr/share/man/man1/"
  install -vDm 644 docs/*.5 -t "$PKG/usr/share/man/man5/"


  install -vDm 644 $SRC/build/man1/*.1 "$PKG/usr/share/man/man1/"
  install -vDm 644 $SRC/build/man5/*.5 "$PKG/usr/share/man/man5/"
}
