From 553c672e4d0874bda9c23d98c607070a8c9f20b0 Mon Sep 17 00:00:00 2001 From: RatzzFatzz Date: Wed, 5 Feb 2025 15:49:46 +0100 Subject: [PATCH] Implement debian package build --- pom.xml | 174 +++++++++++------- src/deb/bin/mkvaudiosubtitlechanger | 1 + src/deb/control/control | 8 + ...g4j2-installed.yaml => log4j2-debian.yaml} | 0 src/main/resources/log4j2-windows.yaml | 34 ++++ src/{main => wix}/resources/main.wxs | 0 6 files changed, 148 insertions(+), 69 deletions(-) create mode 100644 src/deb/bin/mkvaudiosubtitlechanger create mode 100644 src/deb/control/control rename src/main/resources/{log4j2-installed.yaml => log4j2-debian.yaml} (100%) create mode 100644 src/main/resources/log4j2-windows.yaml rename src/{main => wix}/resources/main.wxs (100%) diff --git a/pom.xml b/pom.xml index 55e19ba..b8a76fa 100644 --- a/pom.xml +++ b/pom.xml @@ -11,6 +11,11 @@ at.pcgamingfreaks.mkvaudiosubtitlechanger.Main + RatzzFatzz + github.contact@ratzloeffel.de + Command-line utility for batch-managing default audio and subtitle tracks in MKV files. + + 21 1.18.36 @@ -66,24 +71,54 @@ maven-resources-plugin 3.3.1 + + + copy-jpackage-input + package + + copy-resources + + + ${project.build.directory}/jpackage-input + + + ${project.build.directory} + + ${project.artifactId}-${project.version}.jar + + + + + + org.panteleyev jpackage-maven-plugin 1.6.5 + + ${project.artifactId} + RatzzFatzz + ${project.version} + + target/installer + + target/jpackage-input + at.pcgamingfreaks.mkvaudiosubtitlechanger.Main + ${project.artifactId}-${project.version}.jar + + ${project.basedir}/src/wix/resources/ + EXE + true + false + false + + -Dlog4j.configurationFile=log4j2-windows.yaml + + windows - - ${project.basedir}/src/main/resources/ - EXE - true - false - false - - -Dlog4j.configurationFile=log4j2-installed.yaml - - package jpackage @@ -97,25 +132,71 @@ linux + + + src/main/resources + + log4j2-debian.yaml + + + - org.panteleyev - jpackage-maven-plugin - 1.4.0 + maven-resources-plugin + 3.3.1 - linux-deb - - DEB - /usr/local/bin - false - mkvasc - your@email.com - + filter-linux-package-info package - jpackage + copy-resources + + ${project.build.directory}/debian-package-info + + + ${project.basedir}/src/deb + true + + + + + + + + jdeb + org.vafer + 1.13 + + + package + + jdeb + + + + + + ${project.build.directory}/${project.build.finalName}.jar + file + + perm + /usr/lib/${project.artifactId} + + + + + ${project.build.directory}/debian-package-info/bin/mkvaudiosubtitlechanger + file + + perm + /usr/bin + 755 + + + + ${project.build.directory}/debian-package-info/control + @@ -197,8 +278,8 @@ maven-compiler-plugin 3.13.0 - 21 - 21 + ${java-version} + ${java-version} -Aproject=${project.groupId}/${project.artifactId} @@ -218,51 +299,6 @@ - - - - - maven-resources-plugin - 3.3.1 - - - copy-jpackage-input - package - - copy-resources - - - ${project.build.directory}/jpackage-input - - - ${project.build.directory} - - ${project.artifactId}-${project.version}.jar - - - - - - - - - org.panteleyev - jpackage-maven-plugin - 1.4.0 - - ${project.artifactId} - RatzzFatzz - ${project.version} - - target/installer - - target/jpackage-input - at.pcgamingfreaks.mkvaudiosubtitlechanger.Main - ${project.artifactId}-${project.version}.jar - - - - diff --git a/src/deb/bin/mkvaudiosubtitlechanger b/src/deb/bin/mkvaudiosubtitlechanger new file mode 100644 index 0000000..19ea12a --- /dev/null +++ b/src/deb/bin/mkvaudiosubtitlechanger @@ -0,0 +1 @@ +java -Dlog4j.configurationFile=log4j2-debian.yaml -jar /usr/lib/${project.artifactId}/${project.artifactId}-${project.version}.jar "$@" \ No newline at end of file diff --git a/src/deb/control/control b/src/deb/control/control new file mode 100644 index 0000000..1bcff12 --- /dev/null +++ b/src/deb/control/control @@ -0,0 +1,8 @@ +Package: ${project.artifactId} +Version: ${project.version} +Section: misc +Priority: optional +Architecture: all +Depends: java-runtime (>=21), mkvtoolnix +Maintainer: ${project.maintainer} <${project.maintainer.mail}> +Description: ${project.description} \ No newline at end of file diff --git a/src/main/resources/log4j2-installed.yaml b/src/main/resources/log4j2-debian.yaml similarity index 100% rename from src/main/resources/log4j2-installed.yaml rename to src/main/resources/log4j2-debian.yaml diff --git a/src/main/resources/log4j2-windows.yaml b/src/main/resources/log4j2-windows.yaml new file mode 100644 index 0000000..804ec99 --- /dev/null +++ b/src/main/resources/log4j2-windows.yaml @@ -0,0 +1,34 @@ +Configuration: + name: DefaultLogger + Appenders: + RollingFile: + name: FileAppender + fileName: ${sys:user.home}/AppData/Roaming/MKVAudioSubtitleChanger/logs/application.log + filePattern: ${sys:user.home}/AppData/Roaming/MKVAudioSubtitleChanger/logs/archive/application-%d{yyyy-MM-dd}-%i.log.gz + PatternLayout: + Pattern: "%d{DEFAULT} | %-5level | %thread | %msg %n %throwable" + ThresholdFilter: + level: info + Policies: + OnStartupTriggeringPolicy: + minSize: 0 + DefaultRolloverStrategy: + max: 30 + Delete: + basePath: logs/archive + maxDepth: 1 + IfLastModified: + age: 30d + IfAccumulatedFileSize: + exceeds: 1GB + + Loggers: + Root: + level: info + AppenderRef: + - ref: FileAppender + Logger: + name: "com.zaxxer.hikari.HikariConfig" + level: info + AppenderRef: + - ref: FileAppender \ No newline at end of file diff --git a/src/main/resources/main.wxs b/src/wix/resources/main.wxs similarity index 100% rename from src/main/resources/main.wxs rename to src/wix/resources/main.wxs