Skip to content

Commit cd2b45e

Browse files
committed
Script: add build appimage in fedora
1 parent e7fc6b4 commit cd2b45e

3 files changed

Lines changed: 47 additions & 16 deletions

File tree

.github/workflows/docker.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,14 @@ jobs:
5959
image: ubuntu
6060
lable: "25.04"
6161
os: ubuntu-24.04-arm
62+
- PACKAGE: appimage
63+
image: fedora
64+
lable: "43"
65+
os: ubuntu-24.04
66+
- PACKAGE: appimage
67+
image: fedora
68+
lable: "43"
69+
os: ubuntu-24.04-arm
6270

6371
- PACKAGE: rpm
6472
image: fedora

Script/build_depend.sh

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -501,6 +501,16 @@ validate_parameters
501501
# Display configuration
502502
show_configuration
503503

504+
case "$DISTRO" in
505+
ubuntu|debian)
506+
LIB_PATH="lib"
507+
;;
508+
fedora)
509+
LIB_PATH="lib64"
510+
;;
511+
esac
512+
513+
504514
if [ $SYSTEM_UPDATE -eq 1 ]; then
505515
echo "System update ......"
506516
case "$PACKAGE_TOOL" in
@@ -696,7 +706,7 @@ fi
696706
if [ $LIBSSH -eq 1 ]; then
697707
echo "Install libssh ......"
698708
pushd "$SOURCE_DIR"
699-
if [ ! -d ${INSTALL_DIR}/lib/cmake/libssh ]; then
709+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/libssh ]; then
700710
git clone -b libssh-0.11.3 --depth=1 https://git.libssh.org/projects/libssh.git
701711
cmake -E make_directory $BUILD_DEPEND_DIR/libssh
702712
pushd $BUILD_DEPEND_DIR/libssh
@@ -714,7 +724,7 @@ fi
714724
if [ $FREERDP -eq 1 ]; then
715725
echo "Install FreeRDP ......"
716726
pushd "$SOURCE_DIR"
717-
if [ ! -d ${INSTALL_DIR}/lib/cmake/FreeRDP3 ]; then
727+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/FreeRDP3 ]; then
718728
git clone -b 3.24.1 --depth=1 https://github.com/FreeRDP/FreeRDP.git
719729
cmake -E make_directory $BUILD_DEPEND_DIR/FreeRDP
720730
pushd $BUILD_DEPEND_DIR/FreeRDP
@@ -741,7 +751,7 @@ fi
741751
if [ $TIGERVNC -eq 1 ]; then
742752
echo "Install tigervnc ......"
743753
pushd "$SOURCE_DIR"
744-
if [ ! -d ${INSTALL_DIR}/lib/cmake/tigervnc ]; then
754+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/tigervnc ]; then
745755
git clone --depth=1 https://github.com/KangLin/tigervnc.git
746756
cmake -E make_directory $BUILD_DEPEND_DIR/tigervnc
747757
pushd $BUILD_DEPEND_DIR/tigervnc
@@ -760,7 +770,7 @@ fi
760770
if [ $PCAPPLUSPLUS -eq 1 ]; then
761771
echo "Install PcapPlusPlus ......"
762772
pushd "$SOURCE_DIR"
763-
if [ ! -d ${INSTALL_DIR}/lib/cmake/pcapplusplus ]; then
773+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/pcapplusplus ]; then
764774
git clone -b v25.05 --depth=1 https://github.com/seladb/PcapPlusPlus.git
765775
cmake -E make_directory $BUILD_DEPEND_DIR/PcapPlusPlus
766776
pushd $BUILD_DEPEND_DIR/PcapPlusPlus
@@ -780,7 +790,7 @@ fi
780790
if [ $libdatachannel -eq 1 ]; then
781791
echo "Install libdatachannel ......"
782792
pushd "$SOURCE_DIR"
783-
if [ ! -d ${INSTALL_DIR}/lib/cmake/LibDataChannel ]; then
793+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/LibDataChannel ]; then
784794
git clone -b v0.17.8 --depth=1 https://github.com/paullouisageneau/libdatachannel.git
785795
cd libdatachannel
786796
git submodule update --init --recursive
@@ -799,7 +809,7 @@ fi
799809
if [ $QtService -eq 1 ]; then
800810
echo "Install QtService ......"
801811
pushd "$SOURCE_DIR"
802-
if [ ! -d ${INSTALL_DIR}/lib/cmake/QtService ]; then
812+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/QtService ]; then
803813
git clone --depth=1 https://github.com/KangLin/qt-solutions.git
804814
cd qt-solutions/qtservice
805815
git submodule update --init --recursive
@@ -841,7 +851,7 @@ if [ $QTERMWIDGET -eq 1 ]; then
841851
cmake --build . --config Release --target install
842852
popd
843853
fi
844-
if [ ! -d ${INSTALL_DIR}/lib/cmake/qtermwidget6 ]; then
854+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/qtermwidget6 ]; then
845855
pushd "$SOURCE_DIR"
846856
if [ ! -d qtermwidget ]; then
847857
git clone --depth=1 https://github.com/KangLin/qtermwidget.git
@@ -863,7 +873,7 @@ fi
863873
if [ $QTKEYCHAIN -eq 1 ]; then
864874
echo "Install QtKeyChain ......"
865875
pushd "$SOURCE_DIR"
866-
if [ ! -d ${INSTALL_DIR}/lib/cmake/Qt6Keychain ]; then
876+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/Qt6Keychain ]; then
867877
git clone -b 0.15.0 --depth=1 https://github.com/frankosterfeld/qtkeychain.git
868878
cmake -E make_directory $BUILD_DEPEND_DIR/qtkeychain
869879
pushd $BUILD_DEPEND_DIR/qtkeychain
@@ -881,7 +891,7 @@ fi
881891
if [ $QFtpServer -eq 1 ]; then
882892
echo "Install QFtpServer ......"
883893
pushd "$SOURCE_DIR"
884-
if [ ! -d ${INSTALL_DIR}/lib/cmake/QFtpServerLib/QFtpServerLib ]; then
894+
if [ ! -d ${INSTALL_DIR}/${LIB_PATH}/cmake/QFtpServerLib/QFtpServerLib ]; then
885895
git clone --depth=1 https://github.com/KangLin/QFtpServer.git
886896
cmake -E make_directory $BUILD_DEPEND_DIR/QFtpServer
887897
pushd $BUILD_DEPEND_DIR/QFtpServer

Script/build_linux.sh

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -367,10 +367,20 @@ if [ $DOCKER -eq 1 ]; then
367367
cp \${SOURCE_CODE_DIR}/rabbitremotecontrol*.deb /home/build/
368368
"
369369
fi
370+
370371
if [ $APPIMAGE -eq 1 ]; then
371-
if [[ "$DOCKER_IMAGE" =~ ^(ubuntu|debian) ]]; then
372+
#if [[ "$DOCKER_IMAGE" =~ ^(ubuntu|debian) ]]; then
373+
# DOCKER_PARA="-e DEBIAN_FRONTEND=noninteractive -e TZ=UTC"
374+
#fi
375+
case "$DISTRO" in
376+
ubuntu|debian)
372377
DOCKER_PARA="-e DEBIAN_FRONTEND=noninteractive -e TZ=UTC"
373-
fi
378+
;;
379+
fedora)
380+
# Install getopt
381+
dnf install -y util-linux
382+
;;
383+
esac
374384
docker run --privileged ${DOCKER_PARA} \
375385
-e CI=${CI} \
376386
--volume ${REPO_ROOT}:/home/RabbitRemoteControl \
@@ -398,6 +408,7 @@ if [ $DOCKER -eq 1 ]; then
398408
popd
399409
"
400410
fi
411+
401412
if [ $RPM -eq 1 ]; then
402413
docker run --volume ${BUILD_LINUX_DIR}:/home/build \
403414
--volume ${INSTALL_DIR}:/home/install \
@@ -459,22 +470,24 @@ if [ $APPIMAGE -eq 1 ]; then
459470
# export QMAKE=$QT_ROOT/bin/qmake
460471
# export QT_PLUGIN_PATH=$QT_ROOT/plugins
461472
# export PATH=$QT_ROOT/libexec:$PATH
462-
# export PKG_CONFIG_PATH=$QT_ROOT/lib/pkgconfig:$PKG_CONFIG_PATH
463-
# export LD_LIBRARY_PATH=$QT_ROOT/lib:$LD_LIBRARY_PATH
464473
# export CMAKE_PREFIX_PATH=$QT_ROOT:${INSTALL_DIR}:${CMAKE_PREFIX_PATH}
465474
# ;;
466475
# esac
476+
LIB_PATH="lib"
467477
depend_para="$depend_para --freerdp --libssh --qtermwidget --qtkeychain --qftpserver"
468478
;;
469479
fedora)
480+
LIB_PATH="lib64"
481+
depend_para="$depend_para --package-tool=dnf --qftpserver "
482+
#dnf builddep -y ${REPO_ROOT}/Package/rpm/rabbitremotecontrol.spec
470483
;;
471484
*)
472485
esac
473486

474487
export RabbitCommon_ROOT=${SOURCE_DIR}/RabbitCommon
475488
export BUILD_FREERDP=ON
476-
export PKG_CONFIG_PATH=${INSTALL_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH
477-
export LD_LIBRARY_PATH=${INSTALL_DIR}/lib:$LD_LIBRARY_PATH
489+
export PKG_CONFIG_PATH=${INSTALL_DIR}/${LIB_PATH}/pkgconfig:$PKG_CONFIG_PATH
490+
export LD_LIBRARY_PATH=${INSTALL_DIR}/${LIB_PATH}:$LD_LIBRARY_PATH
478491
export CMAKE_PREFIX_PATH=${INSTALL_DIR}:${CMAKE_PREFIX_PATH}
479492

480493
./build_depend.sh --system_update --base --default \
@@ -496,7 +509,7 @@ fi
496509

497510
if [ $RPM -eq 1 ]; then
498511
echo "build rpm package ......"
499-
dnf builddep -y ${REPO_ROOT}/Package/rpm/rabbitremotecontrol.spec
512+
#dnf builddep -y ${REPO_ROOT}/Package/rpm/rabbitremotecontrol.spec
500513
./build_depend.sh --system_update --base --default --package-tool=dnf \
501514
--rabbitcommon --tigervnc --pcapplusplus --qftpserver \
502515
--install=${INSTALL_DIR} \

0 commit comments

Comments
 (0)