mirror of
https://github.com/nchevsky/systemrescue-zfs.git
synced 2025-12-06 07:12:01 +01:00
Pids Limits is too low on podman (2048). It breaks the full packages installation. Bump the pids limit to 4096
42 lines
1.4 KiB
Bash
Executable file
42 lines
1.4 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# Parameters validation
|
|
if [ -z "${sysrescuearch}" ] ; then
|
|
echo "ERROR: You must define the environment variable 'sysrescuearch' as either 'x86_64' or 'i686' before you run this script"
|
|
exit 1
|
|
fi
|
|
|
|
if [ "${sysrescuearch}" != "x86_64" ] && [ "${sysrescuearch}" != "i686" ] ; then
|
|
echo "Value '${sysrescuearch}' is invalid for environment variable 'sysrescuearch'. Only 'x86_64' and 'i686' are supported"
|
|
exit 1
|
|
fi
|
|
|
|
# Make sure the docker image exists
|
|
dockerimg="sysrescuebuildiso-${sysrescuearch}:latest"
|
|
if ! docker inspect ${dockerimg} >/dev/null 2>/dev/null ; then
|
|
echo "ERROR: You must build the following docker image before you run this script: ${dockerimg}"
|
|
exit 1
|
|
fi
|
|
|
|
# Determine the path to the git repository
|
|
fullpath="$(realpath $0)"
|
|
curdir="$(dirname ${fullpath})"
|
|
repodir="$(realpath ${curdir}/..)"
|
|
echo "curdir=${curdir}"
|
|
echo "repodir=${repodir}"
|
|
|
|
# Create a tmpfs for storing packages cache in memory
|
|
pkgcache="/tmp/pkgcache"
|
|
echo "pkgcache=${pkgcache}"
|
|
mkdir -p ${pkgcache}
|
|
if ! findmnt ${pkgcache} >/dev/null; then
|
|
echo "Mounting ${pkgcache} as a tmpfs"
|
|
sudo mount -t tmpfs tmpfs -o size=2G ${pkgcache}
|
|
fi
|
|
|
|
# Run the build process in the container
|
|
docker run --rm --pids-limit=4096 --user 0:0 --privileged -it --workdir /workspace \
|
|
--volume=${repodir}:/workspace \
|
|
--volume=${pkgcache}:/var/cache/pacman/pkg \
|
|
${dockerimg} setarch ${sysrescuearch} /bin/bash /workspace/build.sh "$@"
|