summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChocobo12022-02-09 12:49:26 +0800
committerChocobo12022-02-09 13:30:30 +0800
commit40d83624112fc6398d64d6139b360ec3d984d0a1 (patch)
tree7d58b4b62960d5c27ac2ddcfaa3456873fe17187
downloadaur-40d83624112fc6398d64d6139b360ec3d984d0a1.tar.gz
newpkg: apptainer-git 0.1.1.r177.g7b55e6389-1
-rw-r--r--.SRCINFO38
-rw-r--r--PKGBUILD86
2 files changed, 124 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..14f69224d062
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,38 @@
+pkgbase = apptainer-git
+ pkgdesc = Application containers for Linux
+ pkgver = 0.1.1.r177.g7b55e6389
+ pkgrel = 1
+ url = https://apptainer.org/
+ arch = i686
+ arch = x86_64
+ license = BSD
+ makedepends = git
+ makedepends = cryptsetup
+ makedepends = go
+ depends = glibc
+ depends = libseccomp
+ depends = squashfs-tools
+ provides = apptainer
+ provides = singularity-container
+ conflicts = apptainer
+ conflicts = singularity-container
+ backup = etc/singularity/capability.json
+ backup = etc/singularity/cgroups/cgroups.toml
+ backup = etc/singularity/ecl.toml
+ backup = etc/singularity/global-pgp-public
+ backup = etc/singularity/network/00_bridge.conflist
+ backup = etc/singularity/network/10_ptp.conflist
+ backup = etc/singularity/network/20_ipvlan.conflist
+ backup = etc/singularity/network/30_macvlan.conflist
+ backup = etc/singularity/network/40_fakeroot.conflist
+ backup = etc/singularity/nvliblist.conf
+ backup = etc/singularity/remote.yaml
+ backup = etc/singularity/rocmliblist.conf
+ backup = etc/singularity/seccomp-profiles/default.json
+ backup = etc/singularity/singularity.conf
+ source = git+https://github.com/apptainer/apptainer.git
+ source = tmpfiles.conf::https://raw.githubusercontent.com/archlinux/svntogit-community/packages/singularity-container/trunk/tmpfiles.conf
+ sha256sums = SKIP
+ sha256sums = SKIP
+
+pkgname = apptainer-git
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..9724c51f5237
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,86 @@
+# Maintainer: Chocobo1 <chocobo1 AT archlinux DOT net>
+
+pkgname=apptainer-git
+pkgver=0.1.1.r177.g7b55e6389
+pkgrel=1
+pkgdesc="Application containers for Linux"
+arch=('i686' 'x86_64')
+url="https://apptainer.org/"
+license=('BSD')
+depends=('glibc' 'libseccomp' 'squashfs-tools')
+makedepends=('git' 'cryptsetup' 'go')
+provides=('apptainer' 'singularity-container')
+conflicts=('apptainer' 'singularity-container')
+backup=('etc/singularity/capability.json'
+ 'etc/singularity/cgroups/cgroups.toml'
+ 'etc/singularity/ecl.toml'
+ 'etc/singularity/global-pgp-public'
+ 'etc/singularity/network/00_bridge.conflist'
+ 'etc/singularity/network/10_ptp.conflist'
+ 'etc/singularity/network/20_ipvlan.conflist'
+ 'etc/singularity/network/30_macvlan.conflist'
+ 'etc/singularity/network/40_fakeroot.conflist'
+ 'etc/singularity/nvliblist.conf'
+ 'etc/singularity/remote.yaml'
+ 'etc/singularity/rocmliblist.conf'
+ 'etc/singularity/seccomp-profiles/default.json'
+ 'etc/singularity/singularity.conf')
+source=("git+https://github.com/apptainer/apptainer.git"
+ "tmpfiles.conf::https://raw.githubusercontent.com/archlinux/svntogit-community/packages/singularity-container/trunk/tmpfiles.conf")
+sha256sums=('SKIP'
+ 'SKIP')
+
+
+export CGO_CPPFLAGS="${CPPFLAGS}"
+export CGO_CFLAGS="${CFLAGS}"
+export CGO_CXXFLAGS="${CXXFLAGS}"
+export CGO_LDFLAGS="${LDFLAGS}"
+export GOFLAGS="-buildmode=pie -ldflags=-linkmode=external -trimpath -mod=readonly -modcacherw"
+
+prepare() {
+ cd "apptainer"
+
+ # provide version to build script
+ echo "$pkgver" > VERSION
+
+ # fix bash completion path
+ sed \
+ -e "s|/etc/bash_completion.d|/usr/share/bash-completion/completions|" \
+ -e "s|\$(SYSCONFDIR)/bash_completion.d|/usr/share/bash-completion/completions|" \
+ -i "mlocal/frags/build_cli.mk"
+
+ sed -i "s|singularity|apptainer|" "$srcdir/tmpfiles.conf"
+}
+
+pkgver() {
+ cd "apptainer"
+
+ _tag=$(git tag -l --sort -v:refname | sed '/rc[0-9]*/d' | head -n1)
+ _rev=$(git rev-list --count $_tag..HEAD)
+ _hash=$(git rev-parse --short HEAD)
+ printf "%s.r%s.g%s" "$_tag" "$_rev" "$_hash" | sed 's/^v//'
+}
+
+build() {
+ cd "apptainer"
+
+ ./mconfig \
+ --prefix="/usr" \
+ --sysconfdir="/etc" \
+ --libexecdir="/usr/lib" \
+ --localstatedir="/var/lib" \
+ -P release-stripped
+ make -C "builddir"
+}
+
+package() {
+ cd "apptainer"
+
+ make -C "builddir" DESTDIR="$pkgdir" install
+ install -Dm644 "LICENSE.md" -t "$pkgdir/usr/share/licenses/apptainer"
+ install -Dm644 "README.md" -t "$pkgdir/usr/share/doc/apptainer"
+
+ # let systemd-tmpfiles generate state directory
+ rm -rf "$pkgdir/var"
+ install -Dm644 "$srcdir/tmpfiles.conf" "$pkgdir/usr/lib/tmpfiles.d/apptainer.conf"
+}