@@ -45,17 +45,15 @@ jobs:
4545 - name : Build with MSVC
4646 if : matrix.compiler == 'MSVC'
4747 run : |
48- dotnet build `
48+ dotnet build FrameExtractor/FrameExtractor.csproj `
4949 --configuration Release `
5050 --no-restore `
5151 -p:RuntimeIdentifier=win-${{ matrix.arch }} `
52- -p:PlatformTarget=${{ matrix.arch }}
5352
5453 - name : Build with MinGW
5554 if : matrix.compiler == 'MinGW'
56- shell : msys2 {0}
5755 run : |
58- export PATH="/ mingw64/ bin:$ PATH"
56+ $env: PATH = "C:\msys64\ mingw64\ bin;$env: PATH"
5957 dotnet build \
6058 --configuration Release \
6159 --no-restore \
@@ -132,7 +130,17 @@ jobs:
132130 RID="linux-arm64"
133131 fi
134132
135- dotnet publish FrameExtractor/FrameExtractor.csproj \
133+ # Find the .csproj file
134+ CSPROJ=$(find . -name "*.csproj" -type f | head -n 1)
135+
136+ if [ -z "$CSPROJ" ]; then
137+ echo "Error: No .csproj file found"
138+ exit 1
139+ fi
140+
141+ echo "Building project: $CSPROJ"
142+
143+ dotnet publish "$CSPROJ" \
136144 -c Release \
137145 -r $RID \
138146 -p:SelfContained=true \
@@ -151,18 +159,27 @@ jobs:
151159 RID="linux-arm64"
152160 fi
153161
162+ # Find executable name
163+ EXECUTABLE=$(find publish/$RID -maxdepth 1 -type f -executable | head -n 1)
164+ EXECUTABLE_NAME=$(basename "$EXECUTABLE")
165+
154166 # Create AppDir structure
155167 mkdir -p AppDir/usr/bin
156168 mkdir -p AppDir/usr/share/applications
157169 mkdir -p AppDir/usr/share/icons/hicolor/256x256/apps
158170 mkdir -p AppDir/usr/share/metainfo
159171
160172 # Copy application
161- cp publish/$RID/FrameExtractor AppDir/usr/bin/
162- chmod +x AppDir/usr/bin/FrameExtractor
173+ cp "$EXECUTABLE" AppDir/usr/bin/
174+ chmod +x AppDir/usr/bin/"$EXECUTABLE_NAME"
163175
164- # Copy icon from repository
165- cp Assets/Icons/FrameExtractor_Icon.png AppDir/usr/share/icons/hicolor/256x256/apps/
176+ # Copy icon from repository (if exists)
177+ if [ -f "Assets/Icons/FrameExtractor_Icon.png" ]; then
178+ cp Assets/Icons/FrameExtractor_Icon.png AppDir/usr/share/icons/hicolor/256x256/apps/
179+ else
180+ # Create a placeholder 1x1 PNG if icon doesn't exist
181+ echo "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==" | base64 -d > AppDir/usr/share/icons/hicolor/256x256/apps/FrameExtractor_Icon.png
182+ fi
166183
167184 # Create desktop file
168185 cat > AppDir/usr/share/applications/frameextractor.desktop << 'EOF'
@@ -176,10 +193,6 @@ jobs:
176193 Terminal=false
177194 EOF
178195
179- # Create icon (placeholder - replace with actual icon)
180- cat > AppDir/usr/share/icons/hicolor/256x256/apps/FrameExtractor_Icon.png << 'EOF'
181- EOF
182-
183196 # Create AppStream metadata
184197 cat > AppDir/usr/share/metainfo/frameextractor.appdata.xml << 'EOF'
185198 <?xml version="1.0" encoding="UTF-8"?>
0 commit comments