diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..900dc6432868 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,86 @@ +# Maintainer: Daniel Bermond <dbermond@archlinux.org> + +pkgname=izpack-git +pkgver=5.1.3.r59.ga5e9e8054 +pkgrel=1 +pkgdesc='Tool for packaging applications on the Java platform as cross-platform installers (git version)' +arch=('any') +url='http://izpack.org/' +license=('Apache') +depends=('sh' 'java-environment=8' 'hicolor-icon-theme') +optdepends=('python: for wrapper utils' + 'p7zip: for izpack2exe wrapper' + 'upx: for izpack2exe wrapper') +makedepends=('git' 'maven') +checkdepends=('gtk2' 'gnome-themes-standard') +source=('git+https://github.com/izpack/izpack.git' + '010-izpack-compile.patch') +sha256sums=('SKIP' + '42609fa684456afe770d43670fcc1ffcce099f25a76cea00df3f8323aa95f582') + +prepare() { + patch -d izpack -Np1 -i "${srcdir}/010-izpack-compile.patch" +} + +pkgver() { + git -C izpack describe --long --tags | sed 's/^izpack-//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + +build() { + mvn -f izpack \ + -Dproject.build.outputTimestamp="$SOURCE_DATE_EPOCH" \ + -DskipTests='true' \ + clean package +} + +check() { + mvn -f izpack \ + -Dproject.build.outputTimestamp="$SOURCE_DATE_EPOCH" \ + test +} + +package() { + # install + local _ver + _ver="$(find izpack/izpack-dist/target -type f -name 'izpack-dist-*.jar' -print0 | + sort -z | head -zn1 | sed -z 's/\.jar$//;s/.*izpack-dist-//')" + rm -rf "${pkgdir}/opt/izpack" + printf '%s\n' '0' '1' '1' '1' "${pkgdir}/opt/izpack" \ + 'O' '1' 'Y' '1' 'N' 'N' 'Y' "${pkgdir}/opt/izpack/auto-install.xml" | + java -jar "izpack/izpack-dist/target/izpack-dist-${_ver}.jar" -console + + # fix permissions + chmod a+x "${pkgdir}/opt/izpack/utils/wrappers/izpack2app/izpack2app.py" + chmod a+x "${pkgdir}/opt/izpack/utils/wrappers/izpack2exe/izpack2exe.py" + chmod a+x "${pkgdir}/opt/izpack/utils/wrappers/izpack2jnlp/izpack2jnlp.py" + + # remove unneeded/unwanted files + rm -r "${pkgdir}/opt/izpack/Uninstaller" + rm "${pkgdir}/opt/izpack/bin"/{*.bat,start.sh} + rm "${pkgdir}/opt/izpack/utils/wrappers/izpack2exe"/{7za,upx}{,.exe} + + # remove $pkgdir reference from auto-install.xml + sed -Ei "s|${pkgdir}(/opt/izpack)|\1|" "${pkgdir}/opt/izpack/auto-install.xml" + + # wrapper utils doc + install -D -m644 izpack/src/doc-reST/izpack-utils.txt -t "${pkgdir}/usr/share/doc/${pkgname}" + + # symlinks + local _dest + local _file + local _res + while read -r -d '' _file + do + _res="$(printf '%s' "$_file" | sed 's/\.png$//;s/^.*_//')" + _dest="$(printf '%s' "$_file" | sed ";s/_${_res}//;s/_/-/")" + mkdir -p "${pkgdir}/usr/share/icons/hicolor/${_res}x${_res}/mimetypes" + ln -s "../../../../../../opt/izpack/icons/${_file}" \ + "${pkgdir}/usr/share/icons/hicolor/${_res}x${_res}/mimetypes/${_dest}" + done < <(find "${pkgdir}/opt/izpack/icons" -type f -name '*.png' -print0 | + sed -z "s|${pkgdir}/opt/izpack/icons/||") + mkdir -p "${pkgdir}/usr"/{bin,share/licenses} + ln -s "../../opt/izpack/bin/compile" "${pkgdir}/usr/bin/izpack-compile" + ln -s "../../../opt/izpack/legal" "${pkgdir}/usr/share/licenses/${pkgname}" + ln -s /usr/bin/7za "${pkgdir}/opt/izpack/utils/wrappers/izpack2exe/7za" + ln -s /usr/bin/upx "${pkgdir}/opt/izpack/utils/wrappers/izpack2exe/upx" +} |