diff options
author | Daniel Bermond | 2020-08-28 00:37:09 +0000 |
---|---|---|
committer | Daniel Bermond | 2020-08-28 00:37:09 +0000 |
commit | ba93f36dd06a3103c5de53de899b46dba14d5ef4 (patch) | |
tree | d0cf6d39555a4c98612951141db40e8d3f54cd51 | |
download | aur-ba93f36dd06a3103c5de53de899b46dba14d5ef4.tar.gz |
Initial commit of izpack-git
-rw-r--r-- | .SRCINFO | 24 | ||||
-rw-r--r-- | 010-izpack-compile.patch | 139 | ||||
-rw-r--r-- | PKGBUILD | 86 |
3 files changed, 249 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..2e4a39784790 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,24 @@ +pkgbase = izpack-git + pkgdesc = Tool for packaging applications on the Java platform as cross-platform installers (git version) + pkgver = 5.1.3.r59.ga5e9e8054 + pkgrel = 1 + url = http://izpack.org/ + arch = any + license = Apache + checkdepends = gtk2 + checkdepends = gnome-themes-standard + makedepends = git + makedepends = maven + depends = sh + depends = java-environment=8 + depends = hicolor-icon-theme + optdepends = python: for wrapper utils + optdepends = p7zip: for izpack2exe wrapper + optdepends = upx: for izpack2exe wrapper + source = git+https://github.com/izpack/izpack.git + source = 010-izpack-compile.patch + sha256sums = SKIP + sha256sums = 42609fa684456afe770d43670fcc1ffcce099f25a76cea00df3f8323aa95f582 + +pkgname = izpack-git + diff --git a/010-izpack-compile.patch b/010-izpack-compile.patch new file mode 100644 index 000000000000..fac26e3090a6 --- /dev/null +++ b/010-izpack-compile.patch @@ -0,0 +1,139 @@ +--- a/izpack-dist/src/main/resources/bin/compile ++++ b/izpack-dist/src/main/resources/bin/compile +@@ -14,130 +14,11 @@ + # See the License for the specific language governing permissions and + # limitations under the License. + +-# allow command line pre-set opts +-if [ -z "$IZPACK_OPTS" ] ; then +- IZPACK_OPTS="" +-fi ++MAIN_CLASS='com.izforge.izpack.compiler.bootstrap.CompilerLauncher' + +-# load user izpack configuration (may specify IZPACK_HOME +-if [ -f "$HOME/.izpackrc" ] ; then +- . $HOME/.izpackrc +-fi +- +-# OS specific support. $var _must_ be set to either true or false. +-cygwin=false; +-darwin=false; +-case "`uname`" in +- CYGWIN*) cygwin=true ;; +- Darwin*) darwin=true +- if [ -z "$JAVA_VERSION" ] ; then +- JAVA_VERSION="CurrentJDK" +- else +- echo "Using Java version: $JAVA_VERSION" +- fi +- if [ -z "$JAVA_HOME" ] ; then +- JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home +- fi +- ;; +-esac +- +-if [ -z "$IZPACK_HOME" ] ; then +- # try to find IZPACK +- if [ -d /opt/izpack ] ; then +- IZPACK_HOME=/opt/izpack +- fi +- +- if [ -d "${HOME}/izpack" ] ; then +- IZPACK_HOME="${HOME}/izpack" +- fi +- +- ## resolve links - $0 may be a link to izpack's home +- PRG="$0" +- progname=`basename "$0"` +- saveddir=`pwd` +- +- # need this for relative symlinks +- dirname_prg=`dirname "$PRG"` +- cd "$dirname_prg" +- +- while [ -h "$PRG" ] ; do +- ls=`ls -ld "$PRG"` +- link=`expr "$ls" : '.*-> \(.*\)$'` +- if expr "$link" : '/.*' > /dev/null; then +- PRG="$link" +- else +- PRG=`dirname "$PRG"`"/$link" +- fi +- done +- +- IZPACK_HOME=`dirname "$PRG"`/.. +- +- cd "$saveddir" +- +- # make it fully qualified +- IZPACK_HOME=`cd "$IZPACK_HOME" && pwd` +-fi +- +-# For Cygwin, ensure paths are in UNIX format before anything is touched +-if $cygwin ; then +- [ -n "$IZPACK_HOME" ] && +- IZPACK_HOME=`cygpath --unix "$IZPACK_HOME"` +- [ -n "$JAVA_HOME" ] && +- JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +- [ -n "$CLASSPATH" ] && +- CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +-fi +- +-if [ -z "$JAVACMD" ] ; then +- if [ -n "$JAVA_HOME" ] ; then +- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then +- # IBM's JDK on AIX uses strange locations for the executables +- JAVACMD="$JAVA_HOME/jre/sh/java" +- else +- JAVACMD="$JAVA_HOME/bin/java" +- fi +- else +- JAVACMD=`which java 2> /dev/null ` +- if [ -z "$JAVACMD" ] ; then +- JAVACMD=java +- fi +- fi +-fi +- +-if [ ! -x "$JAVACMD" ] ; then +- echo "Error: JAVA_HOME is not defined correctly." +- echo " We cannot execute $JAVACMD" +- exit 1 +-fi +- +-if [ -z "$JAVA_HOME" ] ; then +- echo "Warning: JAVA_HOME environment variable is not set." +- echo " If build fails because sun.* classes could not be found" +- echo " you will need to set the JAVA_HOME environment variable" +- echo " to the installation directory of java." +-fi +- +-# For Cygwin, switch paths to Windows format before running java +-if $cygwin; then +- [ -n "$IZPACK_HOME" ] && +- IZPACK_HOME=`cygpath --windows "$IZPACK_HOME"` +- [ -n "$JAVA_HOME" ] && +- JAVA_HOME=`cygpath --windows "$JAVA_HOME"` +- [ -n "$CLASSPATH" ] && +- CLASSPATH=`cygpath --path --windows "$CLASSPATH"` +-fi +- +-# For Darwin, use classes.jar for TOOLS_JAR +-TOOLS_JAR="${JAVA_HOME}/lib/tools.jar" +-if $darwin; then +- TOOLS_JAR="/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Classes/classes.jar" +-fi +- +-MAIN_CLASS=com.izforge.izpack.compiler.bootstrap.CompilerLauncher +- +-"$JAVACMD" -Xmx512m \ ++exec java -Xmx512m \ + $IZPACK_OPTS \ +- -classpath "${IZPACK_HOME}/lib/*" \ +- "-Dtools.jar=$TOOLS_JAR" \ +- "-Dizpack.home=${IZPACK_HOME}" \ +- $MAIN_CLASS "$@" ++ -classpath '/opt/izpack/lib/*' \ ++ -Dtools.jar='/usr/lib/jvm/default-runtime/lib/tools.jar' \ ++ -Dizpack.home='/opt/izpack' \ ++ "$MAIN_CLASS" "$@" 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" +} |