# Contributor: Santic # Maintainer: Santic pkgname=opennebula pkgver=6.4.0 pkgrel=1 pkgdesc="OpenNebula Server and Scheduler (Community Edition)" url="https://opennebula.io/" arch="x86_64" options="!check" license="Apache" depends="augeas augeas-libs curl czmq gnutls g++ libcurl libffi libgcc libvncserver libnsl libpg_query libpq libssl1.1 libstdc++ libxml2 libxslt logrotate mariadb mariadb-client mariadb-server-utils npm openssl ruby ruby-augeas ruby-bundler ruby-libs ruby-nokogiri ruby-pg ruby-rexml ruby-xmlrpc shadow sqlite sqlite-libs sqlite-static xmlrpc-c" makedepends="alpine-sdk augeas-dev bash curl-dev czmq-dev gnutls-dev libnsl-dev libpq-dev libvncserver-dev libxml2-dev linux-headers mariadb-dev make openssl-dev python3 ronn ruby-dev scons sqlite-dev xmlrpc-c-dev" install="${pkgname}.pre-install ${pkgname}.post-install ${pkgname}.post-upgrade ${pkgname}.pre-deinstall ${pkgname}.post-deinstall" source="https://downloads.opennebula.io/packages/opennebula-${pkgver}/opennebula-${pkgver}.tar.gz Gruntfile.patch package.patch svn.patch opennebula opennebula-scheduler opennebula-novnc opennebula-sunstone opennebula-hem opennebula-flow opennebula-gate opennebula-ssh-agent opennebula.logrotate" builddir="$srcdir/" prepare() { cd "opennebula-${pkgver}" patch -p0 < "${srcdir}/Gruntfile.patch" patch -p0 < "${srcdir}/package.patch" patch -p0 < "${srcdir}/svn.patch" rm -rf "${HOME}/.npm-packages" mkdir "${HOME}/.npm-packages" npm config set prefix "${HOME}/.npm-packages" NPM_PACKAGES="${HOME}/.npm-packages" export PATH="$PATH:$NPM_PACKAGES/bin" npm install bower grunt -g } build() { cd "opennebula-${pkgver}" CXXFLAGS="--std=c++14" scons -j2 new_xmlrpc=yes mysql=yes sqlite=yes sunstone=yes systemd=no } package() { cd "opennebula-${pkgver}" install -D -m755 "${srcdir}/opennebula" "${pkgdir}/etc/init.d/opennebula" install -D -m755 "${srcdir}/opennebula-scheduler" "${pkgdir}/etc/init.d/opennebula-scheduler" install -D -m755 "${srcdir}/opennebula-novnc" "${pkgdir}/etc/init.d/opennebula-novnc" install -D -m755 "${srcdir}/opennebula-sunstone" "${pkgdir}/etc/init.d/opennebula-sunstone" install -D -m755 "${srcdir}/opennebula-hem" "${pkgdir}/etc/init.d/opennebula-hem" install -D -m755 "${srcdir}/opennebula-flow" "${pkgdir}/etc/init.d/opennebula-flow" install -D -m755 "${srcdir}/opennebula-gate" "${pkgdir}/etc/init.d/opennebula-gate" install -D -m755 "${srcdir}/opennebula-ssh-agent" "${pkgdir}/etc/init.d/opennebula-ssh-agent" install -D -m644 "${srcdir}/opennebula.logrotate" "${pkgdir}/etc/logrotate.d/opennebula.logrotate" DESTDIR="${pkgdir}" ./install.sh -u oneadmin -g cloud }