Newer
Older
PKGUSER='pkgbuilder'
BUILDTYPE=''
if [ "${1}" ]; then
BUILDTYPE="${1}"
fi
PROJDIR="$(cd "$(dirname "${0}")/../" && pwd)"
BUILDSCRIPT="${PROJDIR}/scripts/build.sh"
transfer_file() {
filepath="${1}"
if [ -f "${filepath}" ]; then
filename="$(basename "${filepath}")"
curl -fsSL -T "${filepath}" "https://transfer.sh/${filename}" >> "${TRANSFERLOG}"
echo '' >> "${TRANSFERLOG}"
apt -y install build-essential qt5-default libqt5svg5-dev qtdeclarative5-dev
useradd -m ${PKGUSER}
chown -R ${PKGUSER}:${PKGUSER} "${PROJDIR}"
su -c "export HOME=/home/${PKGUSER} && sh "${BUILDSCRIPT}" ${BUILDTYPE}" ${PKGUSER}
transfer_file "$(find "${PROJDIR}/build_"*${BUILDTYPE} -type f -name "${PKGNAME}*.deb")"
yum -y install make automake gcc gcc-c++ libtool qt5-qtbase-devel qt5-qtsvg-devel qt5-qtdeclarative-devel
useradd -m ${PKGUSER}
chown -R ${PKGUSER}:${PKGUSER} "${PROJDIR}"
su -c "export HOME=/home/${PKGUSER} && sh "${BUILDSCRIPT}" ${BUILDTYPE}" ${PKGUSER}
transfer_file "$(find "${PROJDIR}/build_"*${BUILDTYPE} -type f -name "${PKGNAME}*.rpm")"
zypper --non-interactive install make automake gcc gcc-c++ libtool libqt5-qtbase-devel libqt5-qtsvg-devel libqt5-qtdeclarative-devel
useradd -m ${PKGUSER}
chown -R ${PKGUSER}:${PKGUSER} "${PROJDIR}"
su -c "export HOME=/home/${PKGUSER} && sh "${BUILDSCRIPT}" ${BUILDTYPE}" ${PKGUSER}
transfer_file "$(find "${PROJDIR}/build_"*${BUILDTYPE} -type f -name "${PKGNAME}*.rpm")"
build_archlinux() {
# docker-image: base/archlinux:latest
pacman -S --noconfirm base-devel qt5-base qt5-svg qt5-declarative qt5-quickcontrols
useradd -m ${PKGUSER}
chown -R ${PKGUSER}:${PKGUSER} "${PROJDIR}"
su -c "export HOME=/home/${PKGUSER} && sh "${BUILDSCRIPT}" ${BUILDTYPE}" ${PKGUSER}
transfer_file "$(find "${PROJDIR}/build_"*${BUILDTYPE} -type f -name "${PKGNAME}*.pkg.tar.xz")"
}
if [ "${BUILDTYPE}" = 'ubuntu' ]; then
build_ubuntu
elif [ "${BUILDTYPE}" = 'fedora' ]; then
build_fedora
elif [ "${BUILDTYPE}" = 'opensuse' ]; then
build_opensuse
elif [ "${BUILDTYPE}" = 'archlinux' ]; then
build_archlinux
elif [ "${BUILDTYPE}" = 'appimage' ]; then
build_appimage
elif [ "${BUILDTYPE}" = 'flatpak' ]; then
build_flatpak
echo "sh $(basename "${0}") [ubuntu|fedora|archlinux|appimage|snap|flatpak]"