This commit is contained in:
georg0480
2026-02-04 02:48:12 +01:00
2 changed files with 36 additions and 36 deletions

View File

@@ -1,4 +1,4 @@
name: build-shotcut-linux name: build-mailadler-linux
on: on:
workflow_dispatch: workflow_dispatch:
@@ -7,7 +7,7 @@ on:
- cron: '0 8 * * *' - cron: '0 8 * * *'
env: env:
IMAGE_NAME: mltframework/shotcut-build:qt6.8.3-ubuntu22.04 IMAGE_NAME: ubuntu:22.04 #mltframework/shotcut-build:qt6.8.3-ubuntu22.04
jobs: jobs:
build: build:
@@ -25,19 +25,19 @@ jobs:
FILENAME_VERSION=$VERSION FILENAME_VERSION=$VERSION
cd scripts cd scripts
echo Making build script config file echo Making build script config file
echo CLEANUP=0 > build-shotcut.conf echo CLEANUP=0 > build-mailadler.conf
echo SHOTCUT_VERSION=\"$VERSION\" >> build-shotcut.conf echo mailadler_VERSION=\"$VERSION\" >> build-mailadler.conf
docker run -v $PWD:/root/shotcut $IMAGE_NAME docker run -v $PWD:/root/mailadler $IMAGE_NAME
echo Renaming build artifacts echo Renaming build artifacts
mv shotcut.txz shotcut-linux-x86_64-$FILENAME_VERSION.txz mv mailadler.txz mailadler-linux-x86_64-$FILENAME_VERSION.txz
mv src.txz shotcut-src-$FILENAME_VERSION.txz mv src.txz mailadler-src-$FILENAME_VERSION.txz
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: linux-portable name: linux-portable
path: | path: |
scripts/shotcut-linux-x86_64-*.txz scripts/mailadler-linux-x86_64-*.txz
- name: Upload portable and source archives to S3 - name: Upload portable and source archives to S3
if: ${{ github.repository_owner == 'mltframework' }} if: ${{ github.repository_owner == 'mltframework' }}
@@ -48,20 +48,20 @@ jobs:
--secret_key=${{ secrets.AWS_SECRET_KEY }} --secret_key=${{ secrets.AWS_SECRET_KEY }}
--acl-public --acl-public
--stop-on-error --stop-on-error
put scripts/*.txz s3://builds.us.meltytech/shotcut/ put scripts/*.txz s3://builds.us.meltytech/mailadler/
- name: Package AppImage - name: Package AppImage
run: | run: |
sudo apt update sudo apt update
sudo apt install desktop-file-utils libfuse2 imagemagick sudo apt install desktop-file-utils libfuse2 imagemagick
mkdir packaging/linux/Shotcut mkdir packaging/linux/mailadler
cp VERSION packaging/linux/Shotcut/ cp VERSION packaging/linux/mailadler/
cd packaging/linux cd packaging/linux
export PKG2AICOMMIT=1eceb306077e51b991e987690b364e11971b44b3 export PKG2AICOMMIT=1eceb306077e51b991e987690b364e11971b44b3
wget https://raw.githubusercontent.com/probonopd/AppImages/${PKG2AICOMMIT}/pkg2appimage wget https://raw.githubusercontent.com/probonopd/AppImages/${PKG2AICOMMIT}/pkg2appimage
bash -ex pkg2appimage appimage/appimage.yml bash -ex pkg2appimage appimage/appimage.yml
FILENAME_VERSION=$(cat Shotcut/VERSION) FILENAME_VERSION=$(cat mailadler/VERSION)
mv out/*.AppImage out/shotcut-linux-x86_64-$FILENAME_VERSION.AppImage mv out/*.AppImage out/mailadler-linux-x86_64-$FILENAME_VERSION.AppImage
- name: Upload AppImage to S3 - name: Upload AppImage to S3
if: ${{ github.repository_owner == 'mltframework' }} if: ${{ github.repository_owner == 'mltframework' }}
@@ -72,16 +72,16 @@ jobs:
--secret_key=${{ secrets.AWS_SECRET_KEY }} --secret_key=${{ secrets.AWS_SECRET_KEY }}
--acl-public --acl-public
--stop-on-error --stop-on-error
put packaging/linux/out/*.AppImage s3://builds.us.meltytech/shotcut/ put packaging/linux/out/*.AppImage s3://builds.us.meltytech/mailadler/
- name: Prepare snap - name: Prepare snap
run: | run: |
VERSION=$(cat VERSION) VERSION=$(cat VERSION)
mv scripts/shotcut-linux-x86_64-*.txz packaging/linux mv scripts/mailadler-linux-x86_64-*.txz packaging/linux
cd packaging/linux cd packaging/linux
mkdir -p snap/gui mkdir -p snap/gui
cp ../../icons/shotcut-logo-64.png snap/gui cp ../../icons/mailadler-logo-64.png snap/gui
sed 's|Icon=.*|Icon=${SNAP}/meta/gui/shotcut-logo-64.png|' org.shotcut.Shotcut.desktop > snap/gui/shotcut.desktop sed 's|Icon=.*|Icon=${SNAP}/meta/gui/mailadler-logo-64.png|' org.mailadler.mailadler.desktop > snap/gui/mailadler.desktop
FILENAME=$(ls *.txz) FILENAME=$(ls *.txz)
sed "s/\$VERSION/${VERSION}/ ; s/\$FILENAME/${FILENAME}/" snapcraft.yaml.in > snap/snapcraft.yaml sed "s/\$VERSION/${VERSION}/ ; s/\$FILENAME/${FILENAME}/" snapcraft.yaml.in > snap/snapcraft.yaml
- name: Package snap - name: Package snap

View File

@@ -1,4 +1,4 @@
name: build-shotcut-windows name: build-mailadler-windows
on: on:
workflow_dispatch: workflow_dispatch:
@@ -74,13 +74,13 @@ jobs:
mkdir Qt mkdir Qt
cd Qt cd Qt
echo Downloading Qt echo Downloading Qt
curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/shotcut-build/qt-6.10.1-x64-mingw.txz curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/mailadler-build/qt-6.10.1-x64-mingw.txz
echo Extracting Qt echo Extracting Qt
tar -xJf qt-6.10.1-x64-mingw.txz tar -xJf qt-6.10.1-x64-mingw.txz
rm qt-6.10.1-x64-mingw.txz rm qt-6.10.1-x64-mingw.txz
cd .. cd ..
echo Downloading a few prebuilt dependencies echo Downloading a few prebuilt dependencies
curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/shotcut-build/mlt-prebuilt-mingw64-v6.txz curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/mailadler-build/mlt-prebuilt-mingw64-v6.txz
echo Extracting prebuilt dependencies echo Extracting prebuilt dependencies
tar -xJf mlt-prebuilt-mingw64-v6.txz tar -xJf mlt-prebuilt-mingw64-v6.txz
rm mlt-prebuilt-mingw64-v6.txz rm mlt-prebuilt-mingw64-v6.txz
@@ -88,9 +88,9 @@ jobs:
popd popd
echo Running the build script echo Running the build script
echo INSTALL_DIR=\"$CHECKOUT_DIR/build\" echo INSTALL_DIR=\"$CHECKOUT_DIR/build\"
echo INSTALL_DIR=\"$CHECKOUT_DIR/build\" > build-shotcut.conf echo INSTALL_DIR=\"$CHECKOUT_DIR/build\" > build-mailadler.conf
echo SHOTCUT_VERSION=\"$VERSION\" >> build-shotcut.conf echo mailadler_VERSION=\"$VERSION\" >> build-mailadler.conf
bash scripts/build-shotcut-msys2.sh bash scripts/build-mailadler-msys2.sh
pushd build pushd build
echo Installing awscli echo Installing awscli
pip install awscli pip install awscli
@@ -98,31 +98,31 @@ jobs:
export AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_KEY }} export AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_KEY }}
export AWS_DEFAULT_REGION=us-east-1 export AWS_DEFAULT_REGION=us-east-1
echo Downloading code-signing certificates echo Downloading code-signing certificates
aws s3 cp s3://misc.meltymedia/shotcut-build/CodeSignCertificates2023.p12 ./ --no-progress aws s3 cp s3://misc.meltymedia/mailadler-build/CodeSignCertificates2023.p12 ./ --no-progress
aws s3 cp s3://misc.meltymedia/shotcut-build/CodeSignCertificates.pass ./ --no-progress aws s3 cp s3://misc.meltymedia/mailadler-build/CodeSignCertificates.pass ./ --no-progress
for EXE in Shotcut/*.exe; do for EXE in mailadler/*.exe; do
echo Signing ${EXE} echo Signing ${EXE}
osslsigncode sign -pkcs12 CodeSignCertificates2023.p12 -readpass CodeSignCertificates.pass -n "Shotcut" -i "https://www.meltytech.com" -t "http://timestamp.digicert.com" -in ${EXE} -out ${EXE}-signed osslsigncode sign -pkcs12 CodeSignCertificates2023.p12 -readpass CodeSignCertificates.pass -n "mailadler" -i "https://www.meltytech.com" -t "http://timestamp.digicert.com" -in ${EXE} -out ${EXE}-signed
mv ${EXE}-signed ${EXE} mv ${EXE}-signed ${EXE}
done done
echo Packaging the portable zip echo Packaging the portable zip
zip -gr shotcut-win64-$FILENAME_VERSION.zip Shotcut zip -gr mailadler-win64-$FILENAME_VERSION.zip mailadler
echo Packaging the installer echo Packaging the installer
PATH="$HOME/bin:$PATH" PATH="$HOME/bin:$PATH"
pushd $HOME/bin pushd $HOME/bin
curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/shotcut-build/iscc632.txz curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/mailadler-build/iscc632.txz
tar -xJf iscc632.txz tar -xJf iscc632.txz
popd popd
echo Extracting installer dependencies echo Extracting installer dependencies
curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/shotcut-build/innosetup-opera-1.txz curl -kLO --no-progress-meter https://s3.amazonaws.com/misc.meltymedia/mailadler-build/innosetup-opera-1.txz
tar -xJf innosetup-opera-1.txz tar -xJf innosetup-opera-1.txz
rm innosetup-opera-1.txz rm innosetup-opera-1.txz
echo Running Inno Setup Compiler echo Running Inno Setup Compiler
ISCC -Q -O. shotcut.iss ISCC -Q -O. mailadler.iss
echo Signing the installer echo Signing the installer
osslsigncode sign -pkcs12 CodeSignCertificates2023.p12 -readpass CodeSignCertificates.pass -n "Shotcut Installer" -i "https://www.meltytech.com" -t "http://timestamp.digicert.com" -in shotcut-setup.exe -out shotcut-setup-signed.exe osslsigncode sign -pkcs12 CodeSignCertificates2023.p12 -readpass CodeSignCertificates.pass -n "mailadler Installer" -i "https://www.meltytech.com" -t "http://timestamp.digicert.com" -in mailadler-setup.exe -out mailadler-setup-signed.exe
mv shotcut-setup-signed.exe shotcut-win64-$FILENAME_VERSION.exe mv mailadler-setup-signed.exe mailadler-win64-$FILENAME_VERSION.exe
rm shotcut-setup.exe rm mailadler-setup.exe
popd popd
echo Done echo Done
@@ -130,7 +130,7 @@ jobs:
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: windows-portable name: windows-portable
path: ./build/shotcut-win64-*.zip path: ./build/mailadler-win64-*.zip
- name: Upload packages to S3 - name: Upload packages to S3
shell: msys2 {0} shell: msys2 {0}
@@ -140,5 +140,5 @@ jobs:
export AWS_DEFAULT_REGION=us-east-1 export AWS_DEFAULT_REGION=us-east-1
for file in build/*.{exe,zip}; do for file in build/*.{exe,zip}; do
echo Uploading "$file" to S3 echo Uploading "$file" to S3
aws s3 cp "$file" s3://builds.us.meltytech/shotcut/ --no-progress aws s3 cp "$file" s3://builds.us.meltytech/mailadler/ --no-progress
done done