Skip to content

Commit f7fefba

Browse files
committed
Fix , Improve build scripts
1 parent 4813ca9 commit f7fefba

File tree

4 files changed

+23
-37
lines changed

4 files changed

+23
-37
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,3 +94,7 @@ artifacts/
9494
/build/*.deb
9595

9696
/build/resources/rpm/*
97+
98+
/build/*.AppDir/
99+
/build/resources/_common/*
100+
/build/resources/appimage/*

build/build.sh

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,11 @@ cd "$(dirname "$0")/.."
4040

4141
# Clean previous builds
4242
echo "Cleaning previous builds..."
43-
rm -rf build/GitExtensions
43+
# rm -rf build/GitExtensions
4444
rm -rf build/*.deb
4545
rm -rf build/*.rpm
4646
rm -v -rf build/*.AppImage
47+
rm -v -rf build/pdb_files_*.zip
4748

4849
# --self-contained true
4950
# Build the application
@@ -74,7 +75,7 @@ cd build
7475

7576
# Run the packaging script
7677
echo "Running packaging script..."
77-
setup_icons
78+
7879
. "$PWD/scripts/package.linux.sh"
7980

8081
echo "Build completed successfully!"

build/common.sh

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -74,26 +74,3 @@ cleanup_build() {
7474
rm -rf ./*.rpm
7575
rm -rf ./*.AppImage
7676
}
77-
78-
# Icon setup function
79-
setup_icons() {
80-
echo "Setting up icons..."
81-
mkdir -p resources/_common/icons/hicolor/48x48/apps
82-
mkdir -p resources/appimage
83-
84-
# Copy 48px icon for desktop integration
85-
if [[ -f "$ICON_48PX" ]]; then
86-
cp "$ICON_48PX" "resources/_common/icons/hicolor/48x48/apps/gitextensions.png"
87-
echo "✓ Copied 48px icon for desktop integration"
88-
else
89-
echo "⚠ Warning: 48px icon not found at $ICON_48PX"
90-
fi
91-
92-
# Copy larger icon for AppImage
93-
if [[ -f "$ICON_256PX" ]]; then
94-
cp "$ICON_256PX" "resources/appimage/gitextensions.png"
95-
echo "✓ Copied 256px icon for AppImage"
96-
else
97-
echo "⚠ Warning: 256px icon not found at $ICON_256PX"
98-
fi
99-
}

build/scripts/package.linux.sh

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,23 @@ generate_desktop_file
2929
# - APP_NAME, APP_NAME_KEY, APP_NAME_SCM
3030
# - BUILD_RUNTIME, APP_VERSION, BUILD_SOURCE_DIR
3131

32-
APPIMAGETOOL_URL=https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage
32+
generate_rpm() {
33+
echo Build RPM package
34+
echo need rpmbuild , install rpm first
35+
generate_rpm_spec
36+
rpmbuild -bb --target="$RPM_TARGET" resources/rpm/SPECS/build.spec --define "_topdir $(pwd)/resources/rpm" --define "_version $APP_VERSION"
37+
mv "resources/rpm/RPMS/$RPM_TARGET/$APP_NAME_KEY-$APP_VERSION-1.$RPM_TARGET.rpm" ./
38+
}
3339

3440
# Copy icons from source if they don't exist
35-
if [[ ! -f "resources/_common/icons/hicolor/48x48/apps/gitextensions.png" ]]; then
41+
if [[ ! -f "resources/_common/icons/hicolor/48x48/apps/$APP_NAME_KEY.png" ]]; then
3642
echo "Copying icons from source..."
3743
mkdir -p resources/_common/icons/hicolor/48x48/apps
3844
mkdir -p resources/appimage
3945

4046
# Copy 48px icon for desktop integration
4147
if [[ -f "../setup/assets/Logo/git-extensions-logo-48px.png" ]]; then
42-
cp "../setup/assets/Logo/git-extensions-logo-48px.png" "resources/_common/icons/hicolor/48x48/apps/gitextensions.png"
48+
cp "../setup/assets/Logo/git-extensions-logo-48px.png" "resources/_common/icons/hicolor/48x48/apps/$APP_NAME_KEY.png"
4349
echo "✓ Copied 48px icon for desktop integration"
4450
else
4551
echo "⚠ Warning: 48px icon not found at ../setup/assets/Logo/git-extensions-logo-48px.png"
@@ -54,13 +60,11 @@ if [[ ! -f "resources/_common/icons/hicolor/48x48/apps/gitextensions.png" ]]; th
5460
fi
5561
fi
5662

57-
generate_rpm() {
58-
echo Build RPM package
59-
echo need rpmbuild , install rpm first
60-
generate_rpm_spec
61-
rpmbuild -bb --target="$RPM_TARGET" resources/rpm/SPECS/build.spec --define "_topdir $(pwd)/resources/rpm" --define "_version $APP_VERSION"
62-
mv "resources/rpm/RPMS/$RPM_TARGET/$APP_NAME_KEY-$APP_VERSION-1.$RPM_TARGET.rpm" ./
63-
}
63+
64+
65+
APPIMAGETOOL_URL=https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage
66+
67+
generate_appimage_metadata
6468

6569
if [[ ! -f "appimagetool" ]]; then
6670
curl -o appimagetool -L "$APPIMAGETOOL_URL"
@@ -94,7 +98,7 @@ ln -v -rsf $APPNAME.AppDir/opt/$APPNAMEopt/$APPNAME $APPNAME.AppDir/AppRun
9498
ln -rsf $APPNAME.AppDir/usr/share/applications/com.$APPNAMEkey_scm.$APPNAME.desktop $APPNAME.AppDir
9599

96100
# Copy appdata
97-
cp resources/appimage/gitextensions.appdata.xml $APPNAME.AppDir/usr/share/metainfo/com.$APPNAMEkey_scm.$APPNAME.appdata.xml
101+
cp resources/appimage/$APPNAMEkey.appdata.xml $APPNAME.AppDir/usr/share/metainfo/com.$APPNAMEkey_scm.$APPNAME.appdata.xml
98102

99103
echo Build AppImage
100104
ARCH="$APPIMAGE_ARCH" ./appimagetool -v $APPNAME.AppDir "$APPNAMEkey-$APP_VERSION.linux.$ARCH.AppImage"
@@ -150,7 +154,7 @@ ln -rsf "$DEB_BUILD_DIR/opt/$APPNAMEkey/$APPNAMEkey" "$DEB_BUILD_DIR/usr/bin/"
150154
# Copy desktop files and icons
151155
cp -r resources/_common/applications "$DEB_BUILD_DIR/usr/share/"
152156
cp -r resources/_common/icons "$DEB_BUILD_DIR/usr/share/"
153-
cp resources/_common/icons/hicolor/48x48/apps/gitextensions.png "$DEB_BUILD_DIR/usr/share/pixmaps/"
157+
cp resources/_common/icons/hicolor/48x48/apps/$APPNAMEkey.png "$DEB_BUILD_DIR/usr/share/pixmaps/"
154158

155159
# Calculate installed size in KB
156160
installed_size=$(du -sk "$DEB_BUILD_DIR" | cut -f1)

0 commit comments

Comments
 (0)