Ceci est une ancienne révision du document !


Notes

Dépôt Debian QElectroTech

#for Debian Sid aka unstable

 ​deb http://​debian.qelectrotech.org/​qet/​debian/​ unstable main
 
 deb-src​ http://​debian.qelectrotech.org/​qet/​debian/​ unstable main
 

#for Debian stable

 
 deb http://​debian.qelectrotech.org/​qet/​debian/​ stable main
 
 deb-src​ http://​debian.qelectrotech.org/​qet/​debian/​ stable main
 

https://download.qelectrotech.org/qet/debian/

Git Debian package

packaging_script Debian, Ubuntu, Windows

#!/bin/bash 
#nettoyage des chroots
#set -x
eval $(gpg-agent --daemon)
 
#variables repertoires de travail
DEFAULT_DIR="$HOME/paquet_qet"
TEMP_DIR="$HOME"
SSH_TARGET='scorpio810@ssh.tuxfamily.org:/home/qet/qelectrotech.org-web/htdocs/dl_link.inc.php'
SSH_OPTIONS=-B
 
#Find Subversion revision number in 0.60 branch 
#if [ -z "$HEAD" ] ; then
#HEAD=$(svn --xml info svn://svn.tuxfamily.org/svnroot/qet/qet/branches/0.60 | grep revision=\" | tail -1 | cut -d\" -f2)                                     
 
#fi
 
#VERSION=$(svn cat svn://svn.tuxfamily.org/svnroot/qet/qet/branches/0.60/sources/qet.h | grep "const QString version" |  cut -d\" -f2 | cut -d\" -f1)          #Find version tag in Subversion sources/qet.h
#tagName=$(svn cat svn://svn.tuxfamily.org/svnroot/qet/qet/branches/0.60/sources/qet.h | grep displayedVersion |  cut -d\" -f2 | cut -d\" -f1)                 #Find displayedVersion tag in Subversion sources/qet.h
cd $DEFAULT_DIR
cd qet_git
git pull
#git checkout test_pugi
 
GITCOMMIT=$(git rev-parse --short HEAD)
 
#Find Subversion revision number in trunk branch 
if [ -z "$HEAD" ] ; then
#HEAD=$(svn --xml info svn://svn.tuxfamily.org/svnroot/qet/qet/trunk | grep revision=\" | tail -1 | cut -d\" -f2)   
A=$(git rev-list HEAD --count)
HEAD=$(($A+473))
                                                                                                                                          # force displayed number
fi
 
VERSION=$(cat sources/qet.h | grep "const QString version" |  cut -d\" -f2 | cut -d\" -f1)          #Find version tag in Subversion sources/qet.h
tagName=$(cat sources/qet.h | grep displayedVersion |  cut -d\" -f2 | cut -d\" -f1)                 #Find displayedVersion tag in Subversion sources/qet.h
#git ls-remote https://git.tuxfamily.org/qet/qet.git/ | head -1 | cut -c1-10
#95d1fca171
#git rev-list HEAD --count
#5475
 
 
 
#clean /var/cache/pbuilder/ .. / result/debs
echo  -e "\033[1;31mWould you like to clean all debs n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
  echo -e "\033[1;31mClean_all_base_environment.\033[m"
  cd /var/cache/pbuilder/stable-amd64/result/ && sudo rm qe* 
  cd /var/cache/pbuilder/unstable-amd64/result/ && sudo rm qe* 
  cd /var/cache/pbuilder/stable-i386/result/ && sudo rm qe* 
  cd /var/cache/pbuilder/unstable-i386/result/ && sudo rm qe* 
 else
  echo  -e "\033[1;33mNo Clean_all_base_environment.\033[m"
fi
#clean all apt cache
echo  -e "\033[1;31mWould you like to clean all pbuilder n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
  echo -e "\033[1;31mClean_all_pbuilder_environment.\033[m"
  DIST=stable ARCH=i386 sudo pbuilder --clean
  DIST=stable ARCH=amd64 sudo pbuilder --clean
  DIST=unstable ARCH=i386 sudo pbuilder --clean
  DIST=unstable ARCH=amd64 sudo pbuilder --clean
 else
  echo  -e "\033[1;33mNo Clean_all_pbuilder_environment.\033[m"
fi
 
 
#Update des chroots
echo  -e "\033[1;31mWould you like to update all chroots n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
   echo  -e "\033[1;33mUpdate_all_base_environment..\033[m"
   sudo DIST=stable ARCH=i386 pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
   sudo DIST=sid ARCH=i386 pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
   sudo DIST=stable pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
   sudo DIST=sid pbuilder update --override-config --configfile /home/laurent/.pbuilderrc
   else
echo  -e "\033[1;33mNo Update_all_base_environment.\033[m"
fi
 
echo  -e "\033[1;34mdownload source qelectrotech-$VERSION.r$HEAD.\033[m"
 
cd $TEMP_DIR
 
#get latest source revision
# svn export svn://svn.tuxfamily.org/svnroot/qet/qet/trunk --revision 5212 qelectrotech-$VERSION.r$HEAD/                                              # force a specific version in trunk     
#svn export svn://svn.tuxfamily.org/svnroot/qet/qet/trunk qelectrotech-$VERSION.r$HEAD/
#svn export svn://svn.tuxfamily.org/svnroot/qet/qet/branches/0.60 qelectrotech-$VERSION.r$HEAD/                                                       # Branch 0.61
cp -r $DEFAULT_DIR/qet_git/ $TEMP_DIR/qelectrotech-$VERSION.r$HEAD/ 
rm -rf qelectrotech-$VERSION.r$HEAD/.git 
#create svn tarball
tar cfvz qelectrotech-$VERSION.r$HEAD.tar.gz qelectrotech-$VERSION.r$HEAD/
 
#copy tarball in $DEFAULT_DIR 
cp qelectrotech-$VERSION.r$HEAD.tar.gz $DEFAULT_DIR 
 
clean $TEMP_DIR
rm -Rf qelectrotech-$VERSION.r$HEAD/ && rm qelectrotech-$VERSION.r$HEAD.tar.gz
 
#return to working directory
cd $DEFAULT_DIR
 
#extract tarball and go to archive
tar zxvf qelectrotech-$VERSION.r$HEAD.tar.gz && cd qelectrotech-$VERSION.r$HEAD/
 
#create origin.tar.gz
dh_make -e  scorpio@qelectrotech.org -c gpl2  -f ../qelectrotech-$VERSION.r$HEAD.tar.gz
 
#clean debian folder
cd /
rm -Rf debian/
 
#return to working directory
cd $DEFAULT_DIR
 
#copy debian folder
cp -r debian/ qelectrotech-$VERSION.r$HEAD/
 
#update changelog to new release
cd qelectrotech-$VERSION.r$HEAD/ 
dch -d -D unstable "New upstream subversion version " 
#edit changelog
echo  -e "\033[1;31mWould you like to edit changelog n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
   echo  -e "\033[1;31mEdit debian changelog..\033[m"
   dch --edit
   else
echo  -e "\033[1;33mNo edit changelog.\033[m"
fi
 
cd debian/ && rm -rf *ex *EX README*  
 
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/debian/patches/ 
sed -i 's/'"$tagName+[0-9]*"'/'"$tagName+$GITCOMMIT"'/' 03_qet.diff
 
 
#deplacement dans le paquet_qet
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/
quilt push 
quilt push 
quilt refresh
 
echo  -e "\033[1;31mWould you like to build Debian packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
 
#build 
echo  -e "\033[1;34mBuild_all_environements.\033[m"
 sudo DIST=sid ARCH=amd64  pdebuild --configfile /home/laurent/.pbuilderrc
 sudo DIST=sid ARCH=i386 pdebuild --configfile /home/laurent/.pbuilderrc
 dch -i -D stable  "Backport stable " && 
 sudo DIST=stable ARCH=amd64 pdebuild --configfile /home/laurent/.pbuilderrc
 sudo DIST=stable ARCH=i386 pdebuild --configfile /home/laurent/.pbuilderrc
STRING="Build_all_environements is ready!!!"
echo $STRING
 
#save debian/
#echo  -e "\033[1;33mDebian sauvegardé.\033[m"
#cp -r debian/ $DEFAULT_DIR
 
#prepare download copys
cd $DEFAULT_DIR
mkdir -p $HEAD/stable/amd64
mkdir -p $HEAD/stable/i386
mkdir -p $HEAD/sid/amd64
mkdir -p $HEAD/sid/i386
 
#copie des debs des results vers $HEAD
find /var/cache/pbuilder/stable-amd64/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/stable/amd64 \;
find /var/cache/pbuilder/stable-i386/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/stable/i386 \;
find /var/cache/pbuilder/unstable-amd64/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/sid/amd64 \;
find /var/cache/pbuilder/unstable-i386/result -name "qe*" -exec cp {} $DEFAULT_DIR/$HEAD/sid/i386 \;
 
#debsign
echo  -e "\033[1;31mWould you like to sign all packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
 
#debsign stable amd64
cd $DEFAULT_DIR/$HEAD/stable/amd64
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo  -e "\033[1;33mAll stable amd64 are sign.\033[m"
 
#debsign sid amd64
cd $DEFAULT_DIR/$HEAD/sid/amd64
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo  -e "\033[1;33mAll sid amd64 are sign.\033[m"
 
 
#debsign stable i386
cd $DEFAULT_DIR/$HEAD/stable/i386
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo  -e "\033[1;33mAll stable i386 are sign.\033[m"
 
#debsign sid i386
cd $DEFAULT_DIR/$HEAD/sid/i386
debsign -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1 *.changes
echo  -e "\033[1;33mAll sid i386 are sign.\033[m"
 
else
  echo  -e "\033[1;33mExit.\033[m"
fi
 
#upload vers incoming
echo  -e "\033[1;31mWould you like to upload to incoming n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
  echo  -e "\033[1;33mUpload qelectrotech-$VERSION.r$HEAD.\033[m"
 
 
cd ~/apt
#rm db/*
reprepro -vb . include unstable $DEFAULT_DIR/$HEAD/sid/amd64/*.changes 
reprepro -vb . includedeb unstable $DEFAULT_DIR/$HEAD/sid/i386/*i386.deb 
reprepro -vb . include stable $DEFAULT_DIR/$HEAD/stable/amd64/*.changes 
reprepro -vb . includedeb stable $DEFAULT_DIR/$HEAD/stable/i386/*i386.deb 
reprepro -b . export
 
else
  echo  -e "\033[1;33mExit.\033[m"
fi
 
#rsync to TF
echo  -e "\033[1;31mWould you like to RSYNC Debian packages to TF n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
echo  -e "\033[1;33mRsync to TF qelectrotech-$VERSION.r$HEAD .\033[m"
echo -e	"\033[1;31mrsync to TF password ssh and TF\033[m"
cd $DEFAULT_DIR/script
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress --exclude-from=ExclusionRSync ~/apt/ server:download.qelectrotech.org/qet/qet-repository/debian/ 
if [ $? != 0 ]; then
{
echo "RSYNC ERROR: problem syncing qelectrotech-$VERSION.r$HEAD "
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress --exclude-from=ExclusionRSync ~/apt/ server:download.qelectrotech.org/qet/qet-repository/debian/
} fi
 
else
  echo  -e "\033[1;33mExit.\033[m"
fi
 else
echo  -e "\033[1;33mExit.\033[m"
fi
 
 
 
 
 
############# Ubuntu packages ################################################################################################
 
echo  -e "\033[1;31mWould you like to build Ubuntu PPA packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
 
#deplacement dans le paquet_qet
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/
 
#dch -i -D yakkety "Yakkety Upload to ppa"
#debuild -S -sa -k D3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
 
#dch -i -D xenial "Xenial Upload to ppa"
#debuild -S -sa -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
 
#dch -i -D artful "Artful Upload to ppa"
#debuild -S -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
 
dch -i -D bionic "Bionic Upload to ppa"
debuild -S -sa -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1
 
dch -i -D eoan "Eoan Upload to ppa"
debuild -S -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1  
 
 
dch -i -D disco "Disco Upload to ppa"
debuild -S -kD3439F4E2273F7DCD3228C9EBC9F825E1D4FB6C1  
 
cd $DEFAULT_DIR/
 
#dput my-ppa qelectrotech_$VERSION.r$HEAD-*ubuntu1_source.changes
#dput my-ppa qelectrotech_$VERSION.r$HEAD-*ubuntu2_source.changes
#dput my-ppa qelectrotech_$VERSION.r$HEAD-*ubuntu3_source.changes
 
dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu1_source.changes
dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu2_source.changes
dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu3_source.changes
#dput my-ppa-dev qelectrotech_$VERSION.r$HEAD-*ubuntu4_source.changes
 
 
else
  echo  -e "\033[1;33mExit.\033[m"
fi
 
 
############# Windows packages ################################################################################################
 
 
#copy and update folders of nsis_base skeleton
echo  -e "\033[1;31mWould you like to build Window packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
# 32 bits
cd $DEFAULT_DIR
cp -r qelectrotech-$VERSION.r$HEAD/ qelectrotech-$VERSION.r$HEAD-XP/
cp -r nsis_base nsis_base$HEAD
cd qelectrotech-$VERSION.r$HEAD/
cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/nsis_base$HEAD/files
cp -r lang/*.qm  /$DEFAULT_DIR/nsis_base$HEAD/files/lang
 
cd $DEFAULT_DIR
cd qelectrotech-$VERSION.r$HEAD/build-aux/windows/
cp {lang_extra.nsh,QET.nsi,lang_extra_fr.nsh} /$DEFAULT_DIR/nsis_base$HEAD/
 
 
 
 
# 64 bits
cd $DEFAULT_DIR
cp -r nsis_base nsis_base64$HEAD
cd qelectrotech-$VERSION.r$HEAD/
cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/nsis_base64$HEAD/files
cp -r lang/*.qm  /$DEFAULT_DIR/nsis_base64$HEAD/files/lang
 
cd $DEFAULT_DIR
cd qelectrotech-$VERSION.r$HEAD/build-aux/windows/
cp {lang_extra.nsh,QET64.nsi,lang_extra_fr.nsh} /$DEFAULT_DIR/nsis_base64$HEAD/
 
#copy and update folders of  readytouse_base skeleton
cd $DEFAULT_DIR
cp -r readytouse_base qelectrotech-$tagName+git$HEAD-x86-win32-readytouse
cd qelectrotech-$VERSION.r$HEAD/
cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse
cp -r lang/*.qm  /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/lang
 
#################################################################################################################
export PATH=/media/backup6/digikam_new2/project/bundles/mxe/build.win32/usr/bin:$PATH
#cross-compil 32 bits
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD
mkdir build/ && cd build
 
#mxe: qmake-qt5 i686-w64
#/home/laurent/mxe/usr/bin/i686-w64-mingw32.static.posix-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
 
/media/backup6/digikam_new2/project/bundles/mxe/build.win32/usr/bin/i686-w64-mingw32.static-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
#build jobs=17
#build jobs=17
#make -j17
make -j$(nproc)
 
#copy 32 bits binarie to /bin Windows packages
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/build/release/
cp qelectrotech.exe /$DEFAULT_DIR/nsis_base$HEAD/files/bin
cp qelectrotech.exe /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/bin
 
#copy manifest file to /bin Windows packages
#cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD
#cp qelectrotech.exe.manifest /$DEFAULT_DIR/nsis_base$HEAD/files/bin
#cp qelectrotech.exe.manifest /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/bin
 
#tag $HEAD by sed for nsis script
cd $DEFAULT_DIR/nsis_base$HEAD
sed -i 's/'"0.5-dev+[0-9]*"'/'"$tagName"+git"$HEAD"'/' QET.nsi
 
 
#build Windows installer
makensis QET.nsi
 
#################################################################################################################
export PATH=/media/backup6/digikam_new2/project/bundles/mxe/build.win64/usr/bin:$PATH
#export PATH=/media/backup6/digikam_new2/project/bundles/mxe/build.win64/usr/bin:$PATH
 
#cross-compil 64 bits
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD
rm -r build/
mkdir build/ && cd build
#mxe: qmake-qt5 x86_64-w64
#/home/laurent/mxe/usr/bin/x86_64-w64-mingw32.static.posix-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
/media/backup6/digikam_new2/project/bundles/mxe/build.win64/usr/bin/x86_64-w64-mingw32.static-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
#/media/backup6/digikam_new2/project/bundles/mxe/build.win64/usr/bin/x86_64-w64-mingw32.static.posix.seh-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/qelectrotech.pro
#build jobs=17
#make -j17
make -j$(nproc)
 
cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD/build/release/
mv qelectrotech.exe /$DEFAULT_DIR/nsis_base64$HEAD/files/bin
 
#copy manifest file to /bin Windows packages
#cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD
#cp qelectrotech.exe.manifest /$DEFAULT_DIR/nsis_base64$HEAD/files/bin
 
 
cd $DEFAULT_DIR/nsis_base64$HEAD
 
sed -i 's/'"0.5-dev_x86_64-win64+[0-9]*"'/'"$tagName"_x86_64-win64+git"$HEAD"'/' QET64.nsi
 
makensis QET64.nsi
 
#################################################################################################################
#cross-compil 32 bits XP VISTA
 
# WIN XP VISTA build
#cd $DEFAULT_DIR
#cp -r nsis_base nsis_baseXP$HEAD
#cd qelectrotech-$VERSION.r$HEAD/
#cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/nsis_baseXP$HEAD/files
#cp -r elements/ examples/ titleblocks/ /$DEFAULT_DIR/nsis_base$HEAD/files
#cp -r lang/*.qm  /$DEFAULT_DIR/nsis_baseXP$HEAD/files/lang
 
#cd $DEFAULT_DIR
#cd qelectrotech-$VERSION.r$HEAD/build-aux/windows/
#cp {lang_extra.nsh,QET.nsi,lang_extra_fr.nsh} /$DEFAULT_DIR/nsis_baseXP$HEAD/
 
#copy and update folders of  readytouse_XP_base skeleton
#cd $DEFAULT_DIR
#cp -r readytouse_base qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse
#cd qelectrotech-$VERSION.r$HEAD/
#cp -r {elements,examples,titleblocks} /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse
#cp -r lang/*.qm  /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse/lang
 
 
#cd /home/$USER
#mv mxe mxe_old
#mv mxeXP mxe
#sleep 4
 
#cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD-XP
 
#mkdir build/ && cd build
 
#mxe: qmake-qt5 i686-w64
#/home/laurent/mxe/usr/bin/i686-w64-mingw32.static.posix-qmake-qt5 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD-XP/qelectrotech.pro
#/home/laurent/mxe/usr/bin/i686-w64-mingw32.static.posix-qmake-qt5.7 $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD-XP/qelectrotech.pro
#build jobs=17
#make -j17
#make -j$(nproc)
 
#cd /home/$USER
#mv mxe mxeXP 
#mv mxe_old mxe
 
#copy 32 bits binarie to /bin Windows packages
#cd $DEFAULT_DIR/qelectrotech-$VERSION.r$HEAD-XP/build/release
#cp qelectrotech.exe /$DEFAULT_DIR/nsis_baseXP$HEAD/files/bin
#cp qelectrotech.exe /$DEFAULT_DIR/qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse/bin
 
#tag $HEAD by sed for nsis script
#cd $DEFAULT_DIR/nsis_baseXP$HEAD
#sed -i 's/'"0.5-dev+[0-9]*"'/'"$tagName"+git"$HEAD"'/' QET.nsi
 
 
#build Windows installer
#makensis QET.nsi
 
 
#crompress readytouse
cd $DEFAULT_DIR
 
7za a -m0=lzma qelectrotech-$tagName+git$HEAD-x86-win32-readytouse.7z qelectrotech-$tagName+git$HEAD-x86-win32-readytouse/
#7za a -m0=lzma qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse.7z qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse/
 
 
 
 
 
echo  -e "\033[1;31mWould you like to prepare to RSYNC Windows packages /Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
 
cd /home/laurent/builds/nightly/
 
name=$(date +%Y-%m-%d-) #defined a name based on the date
 
#start increment to 1
i=1
#increment by i if the builds have already been created
while [ "$(ls /home/$USER/builds/nightly/ | grep $name$i)" != "" ]; do 
	((i++))
done
#create a new folder incremented by 1
mkdir /home/$USER/builds/nightly/$name$i 
#mkdir /home/$USER/builds/nightly/$name$i/WIN_XP_VISTA
 
 
 
cd $DEFAULT_DIR/
cp qelectrotech-$tagName+git$HEAD-x86-win32-readytouse.7z /home/laurent/builds/nightly/$name$i
#cp qelectrotech-$tagName+git$HEAD-WIN_XP-x86-win32-readytouse.7z /home/laurent/builds/nightly/$name$i/WIN_XP_VISTA
cd /$DEFAULT_DIR/nsis_base$HEAD
cp Installer_QElectroTech-$tagName+git$HEAD-1.exe /home/laurent/builds/nightly/$name$i
#cd /$DEFAULT_DIR/nsis_baseXP$HEAD
#cp Installer_QElectroTech-$tagName+git$HEAD-1.exe /home/laurent/builds/nightly/$name$i/WIN_XP_VISTA
cd $DEFAULT_DIR/nsis_base64$HEAD
cp Installer_QElectroTech-$tagName"_x86_64-win64+git"$HEAD-1.exe /home/laurent/builds/nightly/$name$i
 
 
 
 
else
  echo  -e "\033[1;33mExit.\033[m"
fi
 
 
#rsync to TF Windows builds
echo  -e "\033[1;31mWould you like to upload Windows packages n/Y?.\033[m"
read a
if [[ $a == "Y" || $a == "y" ]]; then
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress  /home/laurent/builds/nightly/ server:download.qelectrotech.org/qet/qet-repository/builds/nightly/ 
if [ $? != 0 ]; then
{
echo "RSYNC ERROR: problem syncing qelectrotech-$VERSION.r$HEAD "
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress  /home/laurent/builds/nightly/ server:download.qelectrotech.org/qet/qet-repository/builds/nightly/ 
} fi
 
#cd ~/paquet_qet/script
#sed -i 's/'[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]-[0-9]'/'"$name$i"'/' dl_link.inc.php
#scp dl_link.inc.php "${SSH_TARGET}"
 
else
  echo  -e "\033[1;33mExit.\033[m"
fi
else
  echo  -e "\033[1;33mExit.\033[m"
fi
exit

AppImage

We use now Digikam scripts, on Xubuntu 20.04 VM for create Qt 5.15.X compile environment with system-sqlite (Sqilte3) for database project exporting.
See: https://invent.kde.org/graphics/digikam/-/tree/master/project/bundles/appimage
First read the README file:
https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/appimage/README

We only use 01-build-macports.sh and 02-build-extralibs.sh script to build MacOS Macports environment for QET builds.

git clone https://invent.kde.org/graphics/digikam.git
cd digikam/project/bundles/appimage
diff --git a/project/bundles/3rdparty/ext_qt5/CMakeLists.txt b/project/bundles/3rdparty/ext_qt5/CMakeLists.txt
index a362363309..8548419442 100644
--- a/project/bundles/3rdparty/ext_qt5/CMakeLists.txt
+++ b/project/bundles/3rdparty/ext_qt5/CMakeLists.txt
@@ -38,7 +38,7 @@ ExternalProject_Add(ext_qt5
                   -release
                   -opensource
                   -confirm-license
-                  -sql-sqlite                       # Compile Sqlite SQL plugin
+                  -system-sqlite                      # Compile Sqlite SQL plugin
                   -sql-mysql                        # Compile Mysql SQL plugin
 #                  -iconv                            # International string conversion
                   -icu
diff --git a/project/bundles/appimage/01-build-host.sh b/project/bundles/appimage/01-build-host.sh
index f8c317f336..77e1247fb3 100755
--- a/project/bundles/appimage/01-build-host.sh
+++ b/project/bundles/appimage/01-build-host.sh
@@ -80,19 +80,10 @@ cmake $ORIG_WD/../3rdparty \
       -DEXTERNALS_DOWNLOAD_DIR=$DOWNLOAD_DIR \
       -DKA_VERSION=$DK_KA_VERSION \
       -DKP_VERSION=$DK_KP_VERSION \
-      -DKDE_VERSION=$DK_KDE_VERSION \
-      -DENABLE_QTVERSION=$DK_QTVERSION \
-      -DENABLE_QTWEBENGINE=$DK_QTWEBENGINE
+      -DKDE_VERSION=$DK_KDE_VERSION 
 
 # Install new cmake recent version and shared lib
 
-cmake --build . --config RelWithDebInfo --target ext_cmake           -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_jasper          -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_libde265        -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_libjxl          -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_libaom          -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_libavif         -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_ffmpeg          -- -j$CPU_CORES
 
 #################################################################################################
 
@@ -107,9 +98,7 @@ cmake $ORIG_WD/../3rdparty \
       -DKA_VERSION=$DK_KA_VERSION \
       -DKP_VERSION=$DK_KP_VERSION \
       -DKDE_VERSION=$DK_KDE_VERSION \
-      -DENABLE_QTVERSION=$DK_QTVERSION \
-      -DENABLE_QTWEBENGINE=$DK_QTWEBENGINE \
-      -DQTWEBENGINE_VERSION=$DK_QTWEBENGINEVERSION
+      -DENABLE_QTVERSION=$DK_QTVERSION 
 
 # Low level libraries and Qt dependencies
 # NOTE: The order to compile each component here is very important.
@@ -121,9 +110,7 @@ cmake --build . --config RelWithDebInfo --target ext_openssl         -- -j$CPU_C
 
 cmake --build . --config RelWithDebInfo --target ext_qt$DK_QTVERSION -- -j$CPU_CORES    # depend of tiff, png, jpeg
 
-if [[ $DK_QTWEBENGINE = 0 ]] ; then
-    cmake --build . --config RelWithDebInfo --target ext_qtwebkit    -- -j$CPU_CORES    # depend of Qt and libicu
-fi
+
 
 # Clean up previous openssl install
 
@@ -131,9 +118,7 @@ rm -fr /usr/local/lib/libssl.a    || true
 rm -fr /usr/local/lib/libcrypto.a || true
 rm -fr /usr/local/include/openssl || true
 
-cmake --build . --config RelWithDebInfo --target ext_imagemagick     -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_opencv          -- -j$CPU_CORES
-cmake --build . --config RelWithDebInfo --target ext_heif            -- -j$CPU_CORES
+
 
 #################################################################################################
 
diff --git a/project/bundles/appimage/02-build-extralibs.sh b/project/bundles/appimage/02-build-extralibs.sh
index 523b1c4c73..92dad7912e 100755
--- a/project/bundles/appimage/02-build-extralibs.sh
+++ b/project/bundles/appimage/02-build-extralibs.sh
@@ -123,35 +123,5 @@ cmake --build . --config RelWithDebInfo --target ext_breeze
 
 #################################################################################################
 
-if [[ $DK_QTVERSION == 6 ]] ; then
-
-    KF6_GITREV_LST=$ORIG_WD/data/kf6_manifest.txt
-
-    echo "List git sub-module revisions in $KF6_GITREV_LST"
-
-    if [ -f $KF6_GITREV_LST ] ; then
-        rm -f $KF6_GITREV_LST
-    fi
-
-    currentDate=`date +"%Y-%m-%d"`
-    echo "+KF6 Snapshot $currentDate" > $KF6_GITREV_LST
-
-    # --- List git revisions for all sub-modules
-
-    DIRS=$(find $BUILDING_DIR/ext_kf6/ -name "ext_*-prefix")
-
-    for ITEM in $DIRS ; do
-
-        COMPONENT=(echo $ITEM | cut -d'_' -f 1 | cut -d'-' -f 2)
-        SUBDIR=$BUILDING_DIR/ext_kf6/$ITEM/src/$COMPONENT
-        cd $SUBDIR
-        echo "$(basename "$SUBDIR"):$(git rev-parse HEAD)" >> $KF6_GITREV_LST
-        cd $ORIG_WD
-
-    done
-
-    cat $KF6_GITREV_LST
-
-fi
 
 TerminateScript
diff --git a/project/bundles/appimage/common.sh b/project/bundles/appimage/common.sh
index 2bcfca9e7c..d428e12a5e 100644
--- a/project/bundles/appimage/common.sh
+++ b/project/bundles/appimage/common.sh
@@ -132,17 +132,6 @@ invent.kde.org \
 tinami.kde.org \
 "
 
-if [[ ! -f $HOME/.ssh/known_hosts ]] ; then
-    touch $HOME/.ssh/known_hosts
-fi
-
-for server in $SERVER_LIST; do
-
-    echo "Register $server"
 
-    ssh-keygen -R $server
-    ssh-keyscan -H $server >> $HOME/.ssh/known_hosts
-
-done
 
 }
diff --git a/project/bundles/appimage/config.sh b/project/bundles/appimage/config.sh
index 8d5722d756..9bfdf91799 100644
--- a/project/bundles/appimage/config.sh
+++ b/project/bundles/appimage/config.sh
@@ -61,7 +61,7 @@ DK_KA_VERSION="23.08.4"
 DK_DEBUG=0
 
 # Option to use QtWebEngine instead QtWebkit
-DK_QTWEBENGINE=1
+DK_QTWEBENGINE=0
 
 # Installer sub version to differentiates newer updates of the installer itself, even if the underlying application hasn’t changed.
 #DK_SUBVER="-01"
@@ -70,7 +70,7 @@ DK_QTWEBENGINE=1
 DK_SIGN=0
 
 # Upload automatically bundle to files.kde.org (pre-release only).
-DK_UPLOAD=1
+DK_UPLOAD=0
 DK_UPLOADURL="digikam@tinami.kde.org"
 
 # KDE frameworks version + Upload URL.
diff --git a/project/bundles/appimage/host_ubuntu.inc b/project/bundles/appimage/host_ubuntu.inc
index 0a283ad98d..989e52afa7 100644
--- a/project/bundles/appimage/host_ubuntu.inc
+++ b/project/bundles/appimage/host_ubuntu.inc
@@ -211,11 +211,7 @@ for pkg in ${optional_packages[@]}; do
     echo "-------------------------------------------------------------------"
 done
 
-# Install more recent version of NodeJs for QtWebEngine.
-# https://learnubuntu.com/update-node-js/
 
-curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
-sudo apt-get install nodejs
 
 echo -e "---------- Clean-up Old Packages\n"
 
@@ -231,8 +227,8 @@ echo -e "---------- Install more recent version of compiler\n"
 # https://linuxconfig.org/how-to-switch-between-multiple-gcc-and-g-compiler-versions-on-ubuntu-20-04-lts-focal-fossa
 
 sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
-sudo apt install -y gcc-11
-sudo apt install -y g++-11
-sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 11
-sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 11
+sudo apt install -y gcc-13
+sudo apt install -y g++-13
+sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 13
+sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-13 13
#!/bin/bash 
#set -x
 
 
#delete old qet.h
rm sources/qet.h
 
cd sources
git reset --hard origin/master
 
cd ..
git pull
sed -i 's/DEFINES += QET_EXPORT_PROJECT_DB/#DEFINES += QET_EXPORT_PROJECT_DB/' qelectrotech.pro 
 
GITCOMMIT=$(git rev-parse --short HEAD)
A=$(git rev-list HEAD --count)
HEAD=$(($A+473))
 
VERSION=$(cat sources/qet.h | grep "const QString version" |  cut -d\" -f2 | cut -d\" -f1)          #Find version tag in GIT sources/qet.h
tagName=$(cat sources/qet.h | grep displayedVersion |  cut -d\" -f2 | cut -d\" -f1)                 #Find displayedVersion tag in GIT sources/qet.h
 
 
# recupere le numero de la nouvelle revision
#revAp=$(svnversion | cut -d : -f 2 | tr -d '[:alpha:]')
 
# On recupere le numero de version de l'originale 
tagName=$(sed -n "s/const QString displayedVersion =\(.*\)/\1/p" sources/qet.h  | cut -d\" -f2 | cut -d\" -f1 )
 
 
# On modifie l'originale avec le numéro de révision du dépôt GIT
sed -i 's/'"const QString displayedVersion =.*/const QString displayedVersion = \"$tagName+$GITCOMMIT\";"'/' sources/qet.h
 
 
rm -Rf build/
mkdir build && cd build
 
 
qmake ../qelectrotech.pro
make -j48
 
 
 
cd ../appdir/
rm qelectrotech/usr/bin/qelectrotech
rm -Rf qelectrotech/usr/{lib,plugins}
rm -Rf qelectrotech/usr/share/{elements,examples,titleblocks,lang,man,doc}
 
cp ../build/qelectrotech qelectrotech/usr/bin/
cp -r ../{elements,examples,titleblocks,lang,man} qelectrotech/usr/share/
 
 
 
 ./linuxdeployqt-continuous-x86_64.AppImage qelectrotech/usr/share/qelectrotech.desktop  -appimage -bundle-non-qt-libs -verbose=1 -extra-plugins=iconengines
rm qelectrotech/AppRun
sed -i 's/'"QElectroTech_0.8-DEV.*/QElectroTech_0.8-DEV-r"$HEAD""'/' qelectrotech/qelectrotech.desktop
cp AppRun qelectrotech/
rm QElectroTech_*.AppImage
 
 
ARCH=x86_64 ./appimagetool-x86_64.AppImage qelectrotech
chmod -x QElectroTech_0.8-DEV-r$HEAD-x86_64.AppImage

Flatpak

#!/bin/bash 
#set -x
 
 
#delete old qet.h
rm sources/qet.h
 
cd sources
git reset --hard origin/master
 
cd ..
 
# Fait une mise à jour
git pull
#git checkout test_pugi
 
sed -i 's/DEFINES += QET_EXPORT_PROJECT_DB/#DEFINES += QET_EXPORT_PROJECT_DB/' qelectrotech.pro 
 
 
GITCOMMIT=$(git rev-parse --short HEAD)
A=$(git rev-list HEAD --count)
HEAD=$(($A+473))
 
VERSION=$(cat sources/qet.h | grep "const QString version" |  cut -d\" -f2 | cut -d\" -f1)          #Find version tag in GIT sources/qet.h
tagName=$(cat sources/qet.h | grep displayedVersion |  cut -d\" -f2 | cut -d\" -f1)                 #Find displayedVersion tag in GIT sources/qet.h
 
 
# recupere le numero de la nouvelle revision
#revAp=$(svnversion | cut -d : -f 2 | tr -d '[:alpha:]')
 
# On recupere le numero de version de l'originale 
tagName=$(sed -n "s/const QString displayedVersion =\(.*\)/\1/p" sources/qet.h  | cut -d\" -f2 | cut -d\" -f1 )
 
 
# On modifie l'originale avec le numero de revision du depot svn
sed -i 's/'"const QString displayedVersion =.*/const QString displayedVersion = \"$tagName+$GITCOMMIT\";"'/' sources/qet.h
 
cd ~
flatpak-builder --force-clean --ccache --repo=qet_git/0.8-dev qet_git/build-dir qet_git/build-aux/flatpak/org.qelectrotech.QElectroTech.json --gpg-sign=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   --gpg-homedir=gpg
flatpak build-update-repo qet_git/0.8-dev --title="Development builds of QElectroTech" --prune --prune-depth=4  --generate-static-deltas --gpg-sign=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   --gpg-homedir=gpg
rsync -e ssh -av --delete-after --no-owner --no-g --chmod=g+w --progress qet_git/0.8-dev/ server:download.qelectrotech.org/qet/qet-repository/builds/Flatpak/
Imprimer/exporter