Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
5c178fc
1.2.1 pre-release
mooseses Dec 6, 2025
4e901ba
v1.2.0 pre-release (read release note)
mooseses Dec 6, 2025
af57f5d
REAL 1.2.1 pre-release (see release notes)
mooseses Dec 7, 2025
903f43d
REAL 1.2.0 pre-release (see release notes)
mooseses Dec 7, 2025
1e6ba0c
1.2.0 attempt to fix album art display across all platforms
mooseses Dec 7, 2025
bdc6712
1.2.0 b2 update (read release note)
mooseses Dec 19, 2025
19cbf07
1.2.0 Release: Fixed linux and switch to AppImage for Linux
mooseses Dec 25, 2025
0368f12
1.2.0 Release: Fix linux build and macOS traffic light placement, upd…
mooseses Dec 25, 2025
80db979
1.2.0 Release: Fix linux crashing on generate wrapped cards issue, up…
mooseses Dec 25, 2025
07c7207
1.2.0 Release: Fix linux crashing on generate wrapped cards
mooseses Dec 25, 2025
5f59d56
1.2.0 Release: Fix linux crashing on generate wrapped cards
mooseses Dec 25, 2025
1cc7141
1.2.0 Release: Fix linux crashing on generate wrapped cards
mooseses Dec 27, 2025
70d00f8
1.2.0 Release: Linux Fix
mooseses Dec 27, 2025
27a4342
1.2.0 Release: Linux Fix
mooseses Dec 27, 2025
573c77a
1.2.0 Release: Linux Fix
mooseses Dec 27, 2025
dcda8e2
1.2.0 Release: Fix build.yml
mooseses Dec 28, 2025
319c9f6
1.2.0 Release: Fix build.yml
mooseses Dec 28, 2025
b159da8
1.2.0 Release: Fix build.yml
mooseses Dec 28, 2025
15e31b0
1.2.0 Release: Fix Linux Generate Wrapped Card
mooseses Dec 28, 2025
93764ed
1.2.0 Release: Fix Linux Generate Wrapped Card
mooseses Dec 28, 2025
657bf9f
1.2.0 Release: Fix Linux Generate Wrapped Card
mooseses Dec 28, 2025
c2aa6f6
1.2.0 Release: Fix Linux Generate Wrapped Card
mooseses Dec 28, 2025
8c9c0ac
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
2548c5e
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
1cd6a06
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
b46d211
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
7af1a38
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
30049fe
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
3053aff
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
74091c7
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
4fb5f2e
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
3e8d789
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
209698c
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
5750846
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
c861c63
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
b7894e7
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
30bbe49
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
38411b3
Fix asset path resolution for Linux AppImage
mooseses Dec 28, 2025
a11dd7a
Fix Linux AppImage: Remove experimental changes
mooseses Dec 28, 2025
7ab8d76
Fix Linux AppImage: Change build.yml python version (I'm regarded)
mooseses Dec 28, 2025
4dbd8ad
Fix Linux AppImage: Use PyInstaller for Linux
mooseses Dec 28, 2025
12dfcee
Linux Fix: Final efforts
mooseses Dec 28, 2025
62d63c0
Remove packaging for Linux
mooseses Dec 28, 2025
632ddde
1.2.0 Release: Add kio-fuse for linux path finding, update README.md …
mooseses Dec 28, 2025
64eafc2
1.2.0 Release: Update README.md
mooseses Dec 28, 2025
b0aae8a
1.2.0 Release: Update README.md
mooseses Dec 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 32 additions & 72 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
name: Build

on:
push:
branches:
- main
- pjin-dev
- v1.2.0_dev
pull_request:
branches:
- main
Expand All @@ -28,10 +27,6 @@ jobs:
- os: windows-latest
platform: windows
name: Windows

- os: ubuntu-latest
platform: linux
name: Linux

runs-on: ${{ matrix.os }}

Expand All @@ -53,21 +48,6 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Install Linux dependencies
if: matrix.platform == 'linux'
run: |
sudo apt-get update
sudo apt-get install -y \
libgtk-3-dev \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
clang \
cmake \
ninja-build \
pkg-config \
libblkid-dev \
liblzma-dev

- name: Install Flet
run: pip install flet==${{ env.FLET_VERSION }}

Expand All @@ -83,56 +63,56 @@ jobs:
run: |
brew install create-dmg

create-dmg \
--volname "TunesBack" \
--window-pos 200 120 \
--window-size 800 400 \
--icon-size 100 \
--icon "TunesBack.app" 200 190 \
--hide-extension "TunesBack.app" \
--app-drop-link 600 185 \
"TunesBack-macOS-v${{ env.APP_VERSION }}.dmg" \
"build/macos/TunesBack.app" || true

# Fallback if create-dmg fails
if [ ! -f "TunesBack-macOS-v${{ env.APP_VERSION }}.dmg" ]; then
echo "create-dmg failed, using hdiutil..."
hdiutil create -volname "TunesBack" \
-srcfolder "build/macos/TunesBack.app" \
-ov -format UDZO \
"TunesBack-macOS-v${{ env.APP_VERSION }}.dmg"
if [ -d "build/macos/TunesBack.app" ]; then
create-dmg \
--volname "TunesBack" \
--window-pos 200 120 \
--window-size 800 400 \
--icon-size 100 \
--icon "TunesBack.app" 200 190 \
--hide-extension "TunesBack.app" \
--app-drop-link 600 185 \
"TunesBack-macOS-v${{ env.APP_VERSION }}-Universal.dmg" \
"build/macos/TunesBack.app" || true

if [ ! -f "TunesBack-macOS-v${{ env.APP_VERSION }}-Universal.dmg" ]; then
echo "create-dmg failed, using hdiutil..."
hdiutil create -volname "TunesBack" \
-srcfolder "build/macos/TunesBack.app" \
-ov -format UDZO \
"TunesBack-macOS-v${{ env.APP_VERSION }}-Universal.dmg"
fi
else
echo "Error: TunesBack.app not found in build/macos/"
exit 1
fi

# ========== Windows: Create Installer ==========
# ========== Windows: Create Installer ==========
- name: Create Windows Installer
if: matrix.platform == 'windows'
shell: pwsh
run: |
# Install Inno Setup via Chocolatey
choco install innosetup -y

# Wait for installation to complete
Start-Sleep -Seconds 5

# Create installer script
$issContent = @"
[Setup]
AppName=TunesBack
AppVersion=${{ env.APP_VERSION }}
AppPublisher=Your Name
AppPublisher=Mooseses
DefaultDirName={autopf}\TunesBack
DefaultGroupName=TunesBack
UninstallDisplayIcon={app}\tunesback.exe
Compression=lzma2
SolidCompression=yes
OutputDir=.
OutputBaseFilename=TunesBack-Windows-v${{ env.APP_VERSION }}
OutputBaseFilename=TunesBack-Windows-v${{ env.APP_VERSION }}-x64
ArchitecturesAllowed=x64compatible
ArchitecturesInstallIn64BitMode=x64compatible
WizardStyle=modern

[Files]
Source: "build\windows\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
Source: "build\windows\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

[Icons]
Name: "{group}\TunesBack"; Filename: "{app}\tunesback.exe"
Expand All @@ -147,41 +127,21 @@ jobs:
"@

$issContent | Out-File -FilePath "installer.iss" -Encoding ASCII

# Find ISCC.exe (Chocolatey install path)
$isccPath = "C:\Program Files (x86)\Inno Setup 6\ISCC.exe"

# Compile installer
& $isccPath "installer.iss"

# ========== Linux: Create Tarball ==========
- name: Package Linux app
if: matrix.platform == 'linux'
run: |
cd build/linux
tar -czf ../../TunesBack-Linux-v${{ env.APP_VERSION }}.tar.gz *
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" "installer.iss"

# ========== Upload Artifacts ==========
- name: Upload macOS artifact
if: matrix.platform == 'macos'
uses: actions/upload-artifact@v4
with:
name: TunesBack-macOS-v${{ env.APP_VERSION }}
path: TunesBack-macOS-v${{ env.APP_VERSION }}.dmg
name: TunesBack-macOS-v${{ env.APP_VERSION }}-Universal
path: TunesBack-macOS-v${{ env.APP_VERSION }}-Universal.dmg
retention-days: 0

- name: Upload Windows artifact
if: matrix.platform == 'windows'
uses: actions/upload-artifact@v4
with:
name: TunesBack-Windows-v${{ env.APP_VERSION }}
path: TunesBack-Windows-v${{ env.APP_VERSION }}.exe
retention-days: 0

- name: Upload Linux artifact
if: matrix.platform == 'linux'
uses: actions/upload-artifact@v4
with:
name: TunesBack-Linux-v${{ env.APP_VERSION }}
path: TunesBack-Linux-v${{ env.APP_VERSION }}.tar.gz
name: TunesBack-Windows-v${{ env.APP_VERSION }}-x64
path: TunesBack-Windows-v${{ env.APP_VERSION }}-x64.exe
retention-days: 0
Loading