Add Flatpak packaging for iDRAC6 console
- Manifest, desktop entry, metainfo, icon - Direct Java launch (no javaws/IcedTea-Web) - Bundles avctKVM.jar and native .so libs - Parses JNLP for connection parameters - sign-idrac.sh helper script
This commit is contained in:
81
com.idrac6.console.yaml
Normal file
81
com.idrac6.console.yaml
Normal file
@ -0,0 +1,81 @@
|
||||
app-id: com.idrac6.console
|
||||
runtime: org.freedesktop.Platform
|
||||
runtime-version: '23.08'
|
||||
sdk: org.freedesktop.Sdk
|
||||
command: idrac-console
|
||||
finish-args:
|
||||
- --share=network
|
||||
- --socket=x11
|
||||
- --socket=pulseaudio
|
||||
- --device=dri
|
||||
- --filesystem=home:ro
|
||||
|
||||
modules:
|
||||
- name: java8
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- mkdir -p /app/java8 /app/bin
|
||||
- tar xzf java8.tar.gz -C /app/java8 --strip-components=1
|
||||
- ln -s /app/java8/bin/java /app/bin/java
|
||||
- sed -i 's/^jdk.tls.disabledAlgorithms=.*/jdk.tls.disabledAlgorithms=SSLv3/' /app/java8/lib/security/java.security
|
||||
- sed -i 's/^jdk.certpath.disabledAlgorithms=.*/jdk.certpath.disabledAlgorithms=MD2/' /app/java8/lib/security/java.security
|
||||
sources:
|
||||
- type: file
|
||||
dest-filename: java8.tar.gz
|
||||
path: java8.tar.gz
|
||||
sha256: 0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9
|
||||
|
||||
- name: idrac-libs
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- mkdir -p /app/idrac/lib
|
||||
- install -Dm644 avctKVM.jar /app/idrac/avctKVM.jar
|
||||
- install -Dm755 libavctKVMIO.so /app/idrac/lib/libavctKVMIO.so
|
||||
- install -Dm755 libavmlinux.so /app/idrac/lib/libavmlinux.so
|
||||
sources:
|
||||
- type: file
|
||||
path: idrac-libs/avctKVM.jar
|
||||
sha256: 913321bc2aa33daba0b4033a57298a9f9181a034a5945a335b963e7badbe558c
|
||||
- type: file
|
||||
path: idrac-libs/lib/libavctKVMIO.so
|
||||
dest-filename: libavctKVMIO.so
|
||||
sha256: 70dce29ddcf9ffddfa5c47443a6dad52097d0e7630a6820ed34075a47efcf64d
|
||||
- type: file
|
||||
path: idrac-libs/lib/libavmlinux.so
|
||||
dest-filename: libavmlinux.so
|
||||
sha256: 379fbff2e3dc4e4661b62eeca9fd6520990b7dcf8f2ca8e9fd7068973b451f2a
|
||||
|
||||
- name: idrac-console
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- install -Dm755 idrac-console /app/bin/idrac-console
|
||||
- install -Dm644 com.idrac6.console.desktop /app/share/applications/com.idrac6.console.desktop
|
||||
- install -Dm644 com.idrac6.console.metainfo.xml /app/share/metainfo/com.idrac6.console.metainfo.xml
|
||||
- install -Dm644 com.idrac6.console.svg /app/share/icons/hicolor/scalable/apps/com.idrac6.console.svg
|
||||
sources:
|
||||
- type: script
|
||||
dest-filename: idrac-console
|
||||
commands:
|
||||
- |
|
||||
JNLP="$1"
|
||||
if [ -z "$JNLP" ]; then
|
||||
echo "Usage: flatpak run com.idrac6.console <fichier.jnlp>"
|
||||
exit 1
|
||||
fi
|
||||
- |
|
||||
IP=$(grep -oP 'argument>ip=\K[^<]+' "$JNLP" | head -1)
|
||||
USER=$(grep -oP 'argument>user=\K[^<]+' "$JNLP" | head -1)
|
||||
PASSWD=$(grep -oP 'argument>passwd=\K[^<]+' "$JNLP" | head -1)
|
||||
KMPORT=$(grep -oP 'argument>kmport=\K[^<]+' "$JNLP" | head -1)
|
||||
VPORT=$(grep -oP 'argument>vport=\K[^<]+' "$JNLP" | head -1)
|
||||
KMPORT=${KMPORT:-5900}
|
||||
VPORT=${VPORT:-5900}
|
||||
- |
|
||||
export JAVA_HOME=/app/java8
|
||||
exec /app/java8/bin/java -cp /app/idrac/avctKVM.jar -Djava.library.path=/app/idrac/lib com.avocent.idrac.kvm.Main ip="$IP" kmport="$KMPORT" vport="$VPORT" user="$USER" passwd="$PASSWD" apcp=1 version=2 vmprivilege=true
|
||||
- type: file
|
||||
path: com.idrac6.console.desktop
|
||||
- type: file
|
||||
path: com.idrac6.console.metainfo.xml
|
||||
- type: file
|
||||
path: com.idrac6.console.svg
|
||||
Reference in New Issue
Block a user