Browse Source

new antkit for upcoming AppImage build (see issue #469)

Sebastian Stenzel 7 years ago
parent
commit
4fffc63869

+ 3 - 5
main/ant-kit/pom.xml

@@ -56,17 +56,15 @@
 								<resource>
 									<directory>src/main/resources</directory>
 									<filtering>true</filtering>
-									<excludes>
-										<exclude>logback.xml</exclude>
-										<exclude>fixed-binaries/**</exclude>
-									</excludes>
+									<includes>
+										<include>build.xml</include>
+									</includes>
 								</resource>
 								<resource>
 									<directory>src/main/resources</directory>
 									<filtering>false</filtering>
 									<includes>
 										<include>logback.xml</include>
-										<include>fixed-binaries/**</include>
 									</includes>
 								</resource>
 							</resources>

+ 9 - 35
main/ant-kit/src/main/resources/build.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project name="Cryptomator" default="create-jar" basedir="." xmlns:fx="javafx:com.sun.javafx.tools.ant">
-	<taskdef uri="javafx:com.sun.javafx.tools.ant" resource="com/sun/javafx/tools/ant/antlib.xml" classpath="\${java.class.path}:\${java.home}/../lib/ant-javafx.jar:." />
+	<taskdef uri="javafx:com.sun.javafx.tools.ant" resource="com/sun/javafx/tools/ant/antlib.xml" classpath="\${java.class.path}:\${java.home}/lib/ant-javafx.jar:." />
 	
 	<!-- Define application to build -->
 	<fx:application id="Cryptomator" name="Cryptomator" version="${project.version}" mainClass="org.cryptomator.launcher.Cryptomator" />
@@ -20,51 +20,25 @@
 			</fx:manifest>
 		</fx:jar>
 	</target>
-	
-	<!-- Create Debian package -->
-	<target name="deb" depends="create-jar">
-		<fx:deploy nativeBundles="deb" outdir="antbuild" outfile="Cryptomator-${project.version}" verbose="true">
-			<fx:application refid="Cryptomator" />
-			<fx:info title="Cryptomator" vendor="cryptomator.org" copyright="cryptomator.org" license="MIT" category="Utility">
-				<fx:association mimetype="application/x-vnd.cryptomator-vault-metadata" extension="cryptomator" description="Cryptomator Vault Metadata" />
-			</fx:info>
-			<fx:platform j2se="8.0">
-				<fx:property name="logback.configurationFile" value="logback.xml" />
-				<fx:property name="cryptomator.settingsPath" value="~/.Cryptomator/settings.json" />
-				<fx:property name="cryptomator.ipcPortPath" value="~/.Cryptomator/ipcPort.bin" />
-				<fx:jvmarg value="-Xss2m"/>
-				<fx:jvmarg value="-Xmx512m"/>
-			</fx:platform>
-			<fx:resources>
-				<fx:fileset dir="." type="data" includes="logback.xml" />
-				<fx:fileset dir="antbuild" type="jar" includes="Cryptomator-${project.version}.jar" />
-				<fx:fileset dir="libs" type="jar" includes="*.jar" excludes="launcher-${project.version}.jar"/>
-				<fx:fileset dir="fixed-binaries" type="data" includes="linux-launcher-*" arch=""/>
-			</fx:resources>
-			<fx:permissions elevated="false" />
-			<fx:preferences install="true" />
-		</fx:deploy>
-	</target>
-	
-	<!-- Create Red Hat package -->
-	<target name="rpm" depends="create-jar">
-		<fx:deploy nativeBundles="rpm" outdir="antbuild" outfile="Cryptomator-${project.version}" verbose="true">
+
+	<!-- Create Image package -->
+	<target name="image" depends="create-jar">
+		<fx:deploy nativeBundles="image" outdir="antbuild" verbose="true">
 			<fx:application refid="Cryptomator" />
-			<fx:info title="Cryptomator" vendor="cryptomator.org" copyright="cryptomator.org" license="MIT" category="Utility">
-				<fx:association mimetype="application/x-vnd.cryptomator-vault-metadata" extension="cryptomator" description="Cryptomator Vault Metadata" />
-			</fx:info>
-			<fx:platform j2se="8.0">
+			<fx:info title="Cryptomator" vendor="cryptomator.org" copyright="cryptomator.org" license="GPL" category="Utility"/>
+			<fx:platform j2se="9.0">
 				<fx:property name="logback.configurationFile" value="logback.xml" />
 				<fx:property name="cryptomator.settingsPath" value="~/.Cryptomator/settings.json" />
 				<fx:property name="cryptomator.ipcPortPath" value="~/.Cryptomator/ipcPort.bin" />
 				<fx:jvmarg value="-Xss2m"/>
 				<fx:jvmarg value="-Xmx512m"/>
+				<fx:jvmarg value="--add-modules"/>
+				<fx:jvmarg value="jdk.incubator.httpclient"/>
 			</fx:platform>
 			<fx:resources>
 				<fx:fileset dir="." type="data" includes="logback.xml" />
 				<fx:fileset dir="antbuild" type="jar" includes="Cryptomator-${project.version}.jar" />
 				<fx:fileset dir="libs" type="jar" includes="*.jar" excludes="launcher-${project.version}.jar"/>
-				<fx:fileset dir="fixed-binaries" type="data" includes="linux-launcher-*" arch=""/>
 			</fx:resources>
 			<fx:permissions elevated="false" />
 			<fx:preferences install="true" />

BIN
main/ant-kit/src/main/resources/fixed-binaries/linux-launcher-x64


BIN
main/ant-kit/src/main/resources/fixed-binaries/linux-launcher-x86


BIN
main/ant-kit/src/main/resources/package/linux/Cryptomator.png


+ 0 - 16
main/ant-kit/src/main/resources/package/linux/control

@@ -1,16 +0,0 @@
-Package: APPLICATION_PACKAGE
-Version: APPLICATION_VERSION
-Section: contrib/utils
-Maintainer: Sebastian Stenzel <sebastian.stenzel@gmail.com>
-Homepage: https://cryptomator.org
-Vcs-Git: https://github.com/totalvoidness/cryptomator.git
-Vcs-Browser: https://github.com/totalvoidness/cryptomator
-Priority: optional
-Architecture: APPLICATION_ARCH
-Provides: APPLICATION_PACKAGE
-Installed-Size: APPLICATION_INSTALLED_SIZE
-Depends: gvfs-bin, gvfs-backends, gvfs-fuse
-Description: Multi-platform client-side encryption of your cloud files.
- Cryptomator provides free client-side AES encryption for your cloud files.
- Create encrypted vaults, which get mounted as virtual volumes. Whatever
- you save on one of these volumes will end up encrypted inside your vault.

+ 0 - 23
main/ant-kit/src/main/resources/package/linux/copyright

@@ -1,23 +0,0 @@
-Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: cryptomator
-Source: <https://github.com/totalvoidness/cryptomator>
-
-Copyright: 2015 Sebastian Stenzel <sebastian.stenzel@gmail.com> and contributors.
-License: MIT
- Permission is hereby granted, free of charge, to any person obtaining a
- copy of this software and associated documentation files (the "Software"),
- to deal in the Software without restriction, including without limitation
- the rights to use, copy, modify, merge, publish, distribute, sublicense,
- and/or sell copies of the Software, and to permit persons to whom the
- Software is furnished to do so, subject to the following conditions:
- .
- The above copyright notice and this permission notice shall be included
- in all copies or substantial portions of the Software.
- .
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

+ 0 - 51
main/ant-kit/src/main/resources/package/linux/postinst

@@ -1,51 +0,0 @@
-#!/bin/sh
-# postinst script for APPLICATION_NAME
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-#        * <postinst> `configure' <most-recently-configured-version>
-#        * <old-postinst> `abort-upgrade' <new version>
-#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
-#          <new-version>
-#        * <postinst> `abort-remove'
-#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
-#          <failed-install-package> <version> `removing'
-#          <conflicting-package> <version>
-# for details, see http://www.debian.org/doc/debian-policy/ or
-# the debian-policy package
-
-case "$1" in
-    configure)
-        echo Adding shortcut to the menu
-SECONDARY_LAUNCHERS_INSTALL
-APP_CDS_CACHE
-        mkdir -pm 644 /usr/share/desktop-directories
-        xdg-desktop-menu install --novendor /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME.desktop
-FILE_ASSOCIATION_INSTALL
-
-        rm /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME
-        if [ $(uname -m) = "x86_64" ]; then
-        	mv /opt/APPLICATION_FS_NAME/app/linux-launcher-x64 /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME
-        else
-            mv /opt/APPLICATION_FS_NAME/app/linux-launcher-x86 /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME
-        fi
-    ;;
-
-    abort-upgrade|abort-remove|abort-deconfigure)
-    ;;
-
-    *)
-        echo "postinst called with unknown argument \`$1'" >&2
-        exit 1
-    ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0

+ 0 - 54
main/ant-kit/src/main/resources/package/linux/spec

@@ -1,54 +0,0 @@
-Summary: APPLICATION_SUMMARY
-Name: APPLICATION_PACKAGE
-Version: APPLICATION_VERSION
-Release: 1
-License: APPLICATION_LICENSE_TYPE
-Vendor: APPLICATION_VENDOR
-Prefix: /opt
-Provides: APPLICATION_PACKAGE
-Requires: ld-linux.so.2 libX11.so.6 libXext.so.6 libXi.so.6 libXrender.so.1 libXtst.so.6 libasound.so.2 libc.so.6 libdl.so.2 libgcc_s.so.1 libm.so.6 libpthread.so.0 libthread_db.so.1
-Autoprov: 0
-Autoreq: 0
-
-#avoid ARCH subfolder
-%define _rpmfilename %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
-
-#comment line below to enable effective jar compression
-#it could easily get your package size from 40 to 15Mb but 
-#build time will substantially increase and it may require unpack200/system java to install
-%define __jar_repack %{nil}
-
-%description
-APPLICATION_DESCRIPTION
-
-%prep
-
-%build
-
-%install
-rm -rf %{buildroot}
-mkdir -p %{buildroot}/opt
-cp -r %{_sourcedir}/APPLICATION_FS_NAME %{buildroot}/opt
-
-%files
-APPLICATION_LICENSE_FILE
-/opt/APPLICATION_FS_NAME
-
-%post
-SECONDARY_LAUNCHERS_INSTALL
-APP_CDS_CACHE
-xdg-desktop-menu install --novendor /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME.desktop
-FILE_ASSOCIATION_INSTALL
-rm /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME
-if [ $(uname -m) = "x86_64" ]; then
-	mv /opt/APPLICATION_FS_NAME/app/linux-launcher-x64 /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME
-else
-    mv /opt/APPLICATION_FS_NAME/app/linux-launcher-x86 /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME
-fi
-
-%preun
-SECONDARY_LAUNCHERS_REMOVE
-xdg-desktop-menu uninstall --novendor /opt/APPLICATION_FS_NAME/APPLICATION_LAUNCHER_FILENAME.desktop
-FILE_ASSOCIATION_REMOVE
-
-%clean