mirror of
https://github.com/sourcegit-scm/sourcegit.git
synced 2024-12-24 20:57:19 -08:00
146f383aae
* enhance: ensure LF line endings used with package manifests * enhance: depend on shared object instead of package Back in211c263
, I changed the dependencies to depend on package instead of shared object. This worked well, but introduced some problems for distros other than Fedora (81f76f0
). I did this because of problems with the arm64 package, but now I think `__isa_bits` is a reasonable workaround. * refactor: remove pointless variable checks `set -u` was introduced in6461765
63 lines
2.3 KiB
Bash
Executable file
63 lines
2.3 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
set -o
|
|
set -u
|
|
set pipefail
|
|
|
|
arch=
|
|
appimage_arch=
|
|
target=
|
|
case "$RUNTIME" in
|
|
linux-x64)
|
|
arch=amd64
|
|
appimage_arch=x86_64
|
|
target=x86_64;;
|
|
linux-arm64)
|
|
arch=arm64
|
|
appimage_arch=arm_aarch64
|
|
target=aarch64;;
|
|
*)
|
|
echo "Unknown runtime $RUNTIME"
|
|
exit 1;;
|
|
esac
|
|
|
|
APPIMAGETOOL_URL=https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage
|
|
|
|
cd build
|
|
|
|
if [[ ! -f "appimagetool" ]]; then
|
|
curl -o appimagetool -L "$APPIMAGETOOL_URL"
|
|
chmod +x appimagetool
|
|
fi
|
|
|
|
rm -f SourceGit/*.dbg
|
|
|
|
mkdir -p SourceGit.AppDir/opt
|
|
mkdir -p SourceGit.AppDir/usr/share/metainfo
|
|
mkdir -p SourceGit.AppDir/usr/share/applications
|
|
|
|
cp -r SourceGit SourceGit.AppDir/opt/sourcegit
|
|
desktop-file-install resources/_common/applications/sourcegit.desktop --dir SourceGit.AppDir/usr/share/applications \
|
|
--set-icon com.sourcegit_scm.SourceGit --set-key=Exec --set-value=AppRun
|
|
mv SourceGit.AppDir/usr/share/applications/{sourcegit,com.sourcegit_scm.SourceGit}.desktop
|
|
cp resources/appimage/sourcegit.png SourceGit.AppDir/com.sourcegit_scm.SourceGit.png
|
|
ln -rsf SourceGit.AppDir/opt/sourcegit/sourcegit SourceGit.AppDir/AppRun
|
|
ln -rsf SourceGit.AppDir/usr/share/applications/com.sourcegit_scm.SourceGit.desktop SourceGit.AppDir
|
|
cp resources/appimage/sourcegit.appdata.xml SourceGit.AppDir/usr/share/metainfo/com.sourcegit_scm.SourceGit.appdata.xml
|
|
|
|
ARCH="$appimage_arch" ./appimagetool -v SourceGit.AppDir "sourcegit-$VERSION.linux.$arch.AppImage"
|
|
|
|
mkdir -p resources/deb/opt/sourcegit/
|
|
mkdir -p resources/deb/usr/bin
|
|
mkdir -p resources/deb/usr/share/applications
|
|
mkdir -p resources/deb/usr/share/icons
|
|
cp -f SourceGit/* resources/deb/opt/sourcegit
|
|
ln -rsf resources/deb/opt/sourcegit/sourcegit resources/deb/usr/bin
|
|
cp -r resources/_common/applications resources/deb/usr/share
|
|
cp -r resources/_common/icons resources/deb/usr/share
|
|
sed -i -e "s/^Version:.*/Version: $VERSION/" -e "s/^Architecture:.*/Architecture: $arch/" resources/deb/DEBIAN/control
|
|
dpkg-deb --root-owner-group --build resources/deb "sourcegit_$VERSION-1_$arch.deb"
|
|
|
|
rpmbuild -bb --target="$target" resources/rpm/SPECS/build.spec --define "_topdir $(pwd)/resources/rpm" --define "_version $VERSION"
|
|
mv "resources/rpm/RPMS/$target/sourcegit-$VERSION-1.$target.rpm" ./
|