diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml new file mode 100644 index 00000000..6791895e --- /dev/null +++ b/.github/workflows/package.yml @@ -0,0 +1,35 @@ +# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created +# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path + +name: Package + +on: + workflow_dispatch: + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + server-id: github # Value of the distributionManagement/repository/id field of the pom.xml + settings-path: ${{ github.workspace }} # location for the settings.xml file + + - name: Build with Maven + run: mvn -B install --file pom.xml + - name: Rename GUI artifact + run: mv vripper-gui/target/vripper-gui-*.jar vripper-gui/target/vripper-gui.jar + - name: Rename WEB artifact + run: mv vripper-web/target/vripper-web-*.jar vripper-web/target/vripper-web.jar + - name: Package Linux + run: | + cd jpackage + jpackage --app-version 4.1.0 --type deb "@jpackage.cfg" "@jpackage-linux.cfg" + jpackage --app-version 4.1.0 --type rpm "@jpackage.cfg" "@jpackage-linux.cfg" + ls -la diff --git a/jpackage/icon.ico b/jpackage/icon.ico new file mode 100644 index 00000000..9a7584c0 Binary files /dev/null and b/jpackage/icon.ico differ diff --git a/jpackage/icon.png b/jpackage/icon.png new file mode 100644 index 00000000..5823446a Binary files /dev/null and b/jpackage/icon.png differ diff --git a/jpackage/jar/.keep b/jpackage/jar/.keep new file mode 100644 index 00000000..e69de29b diff --git a/jpackage/jpackage-linux.cfg b/jpackage/jpackage-linux.cfg new file mode 100644 index 00000000..1ab805b2 --- /dev/null +++ b/jpackage/jpackage-linux.cfg @@ -0,0 +1,6 @@ +--icon icon.png +--java-options "-Dbase.dir=${user.home}/.config" +--linux-package-name vripper +--linux-menu-group Utility +--linux-app-category java +--linux-shortcut \ No newline at end of file diff --git a/jpackage/jpackage-macos.cfg b/jpackage/jpackage-macos.cfg new file mode 100644 index 00000000..0ad60767 --- /dev/null +++ b/jpackage/jpackage-macos.cfg @@ -0,0 +1,5 @@ +--type pkg +--icon icon.png +--java-options "-Dbase.dir=${user.home}/.config" +--mac-package-identifier me.mnlr.vripper.vripper-gui +--mac-package-name VRipper \ No newline at end of file diff --git a/jpackage/jpackage-windows.cfg b/jpackage/jpackage-windows.cfg new file mode 100644 index 00000000..49f3586c --- /dev/null +++ b/jpackage/jpackage-windows.cfg @@ -0,0 +1,9 @@ +--type msi +--icon icon.ico +--java-options "-Dbase.dir=${user.home}" +--win-dir-chooser +--win-menu +--win-per-user-install +--win-shortcut +--win-shortcut-prompt +--win-update-url https://github.com/death-claw/vripper-project/releases \ No newline at end of file diff --git a/jpackage/jpackage.cfg b/jpackage/jpackage.cfg new file mode 100644 index 00000000..e78200af --- /dev/null +++ b/jpackage/jpackage.cfg @@ -0,0 +1,8 @@ +--input jar +--main-jar vripper-gui.jar +--add-modules java.base,java.desktop,java.sql,jdk.unsupported,jdk.crypto.ec,java.security.jgss +--jlink-options "--strip-native-commands --strip-debug --no-man-pages --no-header-files --compress=2" +--name VRipper +--description "Image ripper tool for vipergirls" +--dest dist +--vendor "death-claw" \ No newline at end of file