12 Commits

Author SHA1 Message Date
kdusek
31c8b3139a Use PNG icon for desktop integration
All checks were successful
build / build-linux (push) Successful in 15s
release / build-deb (push) Successful in 1m27s
2025-12-08 00:27:45 +01:00
kdusek
ea3d534774 Add release script for easy tagging
All checks were successful
build / build-linux (push) Successful in 16s
2025-12-08 00:26:33 +01:00
kdusek
eefcbc86e5 Replace artifacts with direct Gitea API calls for releases
All checks were successful
build / build-linux (push) Successful in 16s
release / build-deb (push) Successful in 1m29s
2025-12-08 00:23:16 +01:00
kdusek
0d9d3f8d6c Downgrade to artifact actions v1 for Gitea compatibility
Some checks failed
build / build-linux (push) Successful in 15s
release / build-deb (push) Failing after 1m38s
release / release (push) Has been skipped
2025-12-08 00:19:19 +01:00
kdusek
a3c99b5f48 Use VERSION env var in fpm command
Some checks failed
build / build-linux (push) Successful in 15s
release / build-deb (push) Failing after 2m50s
release / release (push) Has been skipped
2025-12-07 23:56:46 +01:00
kdusek
5ce72c71e3 Use env.VERSION for artifact names
Some checks failed
build / build-linux (push) Successful in 15s
release / build-deb (push) Successful in 49s
release / release (push) Failing after 8s
2025-12-07 23:53:40 +01:00
kdusek
2b7079612e Fix artifact name to match version without v
Some checks failed
build / build-linux (push) Successful in 15s
release / build-deb (push) Failing after 49s
release / release (push) Has been skipped
2025-12-07 23:49:49 +01:00
kdusek
3d51013e48 Remove duplicate release job
Some checks failed
build / build-linux (push) Successful in 16s
release / build-deb (push) Successful in 1m2s
release / release (push) Failing after 16s
2025-12-07 23:43:34 +01:00
kdusek
f19f474df7 Change to v2 artifacts and Gitea token
All checks were successful
build / build-linux (push) Successful in 15s
2025-12-07 23:41:03 +01:00
kdusek
c49f761f93 Add fpm to PATH
Some checks failed
build / build-linux (push) Successful in 16s
release / build-deb (push) Successful in 49s
release / release (push) Failing after 8s
2025-12-07 23:36:36 +01:00
kdusek
ca05007197 Add debug steps for fpm and deb file
Some checks failed
build / build-linux (push) Successful in 16s
release / build-deb (push) Successful in 48s
release / release (push) Failing after 8s
2025-12-07 23:33:31 +01:00
kdusek
c2473ad714 Use tag version for deb package
Some checks failed
build / build-linux (push) Successful in 16s
release / build-deb (push) Successful in 48s
release / release (push) Failing after 8s
2025-12-07 23:30:43 +01:00
3 changed files with 48 additions and 24 deletions

View File

@@ -28,18 +28,23 @@ jobs:
ls -la /lib/x86_64-linux-gnu/libpython* 2>/dev/null || echo "Not found in /lib"
- name: Build binary
run: pyinstaller gotify-tray.spec
- name: Set version
run: echo "VERSION=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV
- name: Install Ruby and fpm
run: |
sudo apt-get update
sudo apt-get install -y ruby-full
gem install fpm
export PATH="$(ruby -e 'puts Gem.user_dir')/bin:$PATH"
- name: Check fpm
run: which fpm
- name: Build Debian package
run: |
mkdir -p build/linux/opt
mkdir -p build/linux/usr/share/applications
mkdir -p build/linux/usr/share/icons
cp -r dist/gotify-tray build/linux/opt/gotify-tray
cp gotify_tray/gui/images/logo.ico build/linux/usr/share/icons/gotify-tray.ico
cp gotify_tray/gui/images/gotify-small.png build/linux/usr/share/icons/gotify-tray.png
cp gotifytray.desktop build/linux/usr/share/applications
find build/linux/opt/gotify-tray -type f -exec chmod 644 -- {} +
find build/linux/opt/gotify-tray -type d -exec chmod 755 -- {} +
@@ -55,26 +60,24 @@ jobs:
-m k.dries@protonmail.com \
--description "Gotify Tray. A tray notification application for receiving messages from a Gotify server." \
--category internet \
--version "$(cat version.txt)" \
--version "$VERSION" \
--license GPLv3
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: gotify-tray_${{github.ref_name}}_amd64.deb
path: dist/gotify-tray_${{github.ref_name}}_amd64.deb
release:
runs-on: ubuntu-latest
needs: [build-deb]
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
with:
name: gotify-tray_${{github.ref_name}}_amd64.deb
- name: Release
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
files: |
gotify-tray_${{github.ref_name}}_amd64.deb
- name: Check deb file
run: ls -la dist/
- name: Create release
run: |
RESPONSE=$(curl -X POST \
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
-H "Content-Type: application/json" \
-d "{\"tag_name\": \"${GITHUB_REF_NAME}\", \"name\": \"Release ${GITHUB_REF_NAME}\", \"body\": \"Automated release\"}" \
http://192.168.88.97:3000/api/v1/repos/kadu/gotify-tray-customized/releases)
echo "Release response: $RESPONSE"
RELEASE_ID=$(echo $RESPONSE | jq -r '.id')
echo "RELEASE_ID=$RELEASE_ID" >> $GITHUB_ENV
- name: Upload asset
run: |
curl -X POST \
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
-H "Content-Type: application/octet-stream" \
--data-binary @dist/gotify-tray_${VERSION}_amd64.deb \
http://192.168.88.97:3000/api/v1/repos/kadu/gotify-tray-customized/releases/${RELEASE_ID}/assets?name=gotify-tray_${VERSION}_amd64.deb

View File

@@ -3,7 +3,7 @@ Name=Gotify Tray
Comment=A tray notification application for receiving messages from a Gotify server.
Path=/opt/gotify-tray
Exec=/opt/gotify-tray/gotify-tray
Icon=/usr/share/icons/gotify-tray.ico
Icon=gotify-tray
Terminal=false
Type=Application
Categories=Network;

21
release.sh Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/bash
# Script to create and push a release tag
# Usage: ./release.sh <version> [message]
if [ $# -lt 1 ]; then
echo "Usage: $0 <version> [message]"
echo "Example: $0 v0.5.22 'Release v0.5.22'"
exit 1
fi
VERSION=$1
MESSAGE=${2:-"Release $VERSION"}
echo "Creating tag $VERSION with message: $MESSAGE"
git tag -a "$VERSION" -m "$MESSAGE"
echo "Pushing tag $VERSION"
git push local "$VERSION"
echo "Tag $VERSION pushed. Workflow will build and release automatically."