feature: add a deb build script for Linux

This commit is contained in:
leo 2024-04-16 12:37:15 +08:00
parent 66215cfa9e
commit ebf139de68
7 changed files with 30 additions and 11 deletions

View file

@ -52,7 +52,6 @@ For **Linux** users:
* `xdg-open` must be installed to support open native file manager. * `xdg-open` must be installed to support open native file manager.
* Make sure [git-credential-manager](https://github.com/git-ecosystem/git-credential-manager/releases) is installed on your linux, and it requires `ttf-mscorefonts-installer` installed. * Make sure [git-credential-manager](https://github.com/git-ecosystem/git-credential-manager/releases) is installed on your linux, and it requires `ttf-mscorefonts-installer` installed.
* Maybe you need to set environment variable `AVALONIA_SCREEN_SCALE_FACTORS`. See https://github.com/AvaloniaUI/Avalonia/wiki/Configuring-X11-per-monitor-DPI. * Maybe you need to set environment variable `AVALONIA_SCREEN_SCALE_FACTORS`. See https://github.com/AvaloniaUI/Avalonia/wiki/Configuring-X11-per-monitor-DPI.
* Modify `SourceGit.desktop.template` (replace SOURCEGIT_LOCAL_FOLDER with real path) and move it into `~/.local/share/applications`.
## External Tools ## External Tools

14
build/build.deb.sh Normal file
View file

@ -0,0 +1,14 @@
#!/bin/sh
rm -rf SourceGit resources/deb/opt
dotnet publish ../src/SourceGit.csproj -c Release -r linux-x64 -o SourceGit -p:PublishAot=true -p:PublishTrimmed=true -p:TrimMode=link --self-contained
mkdir -p resources/deb/opt/sourcegit
mv SourceGit/SourceGit resources/deb/opt/sourcegit/sourcegit
mv SourceGit/*.so resources/deb/opt/sourcegit/
chmod -R 755 resources/deb
rm -rf SourceGit
sudo dpkg-deb --build resources/deb

View file

@ -1,8 +1,6 @@
#!/bin/sh #!/bin/sh
rm -rf SourceGit rm -rf SourceGit SourceGit.linux-x64.tar.gz
dotnet publish ../src/SourceGit.csproj -c Release -r linux-x64 -o SourceGit -p:PublishAot=true -p:PublishTrimmed=true -p:TrimMode=link --self-contained dotnet publish ../src/SourceGit.csproj -c Release -r linux-x64 -o SourceGit -p:PublishAot=true -p:PublishTrimmed=true -p:TrimMode=link --self-contained
cp resources/SourceGit.desktop.template SourceGit/SourceGit.desktop.template
cp resources/App.icns SourceGit/SourceGit.icns
tar -zcvf SourceGit.linux-x64.tar.gz --exclude="*/*.dbg" SourceGit tar -zcvf SourceGit.linux-x64.tar.gz --exclude="*/*.dbg" SourceGit
rm -rf SourceGit rm -rf SourceGit

View file

@ -1,7 +0,0 @@
[Desktop Entry]
Name=SourceGit
Comment=Free & OpenSource Git Client
Exec=SOURCEGIT_LOCAL_FOLDER/SourceGit
Icon=SOURCEGIT_LOCAL_FOLDER/SourceGit.icns
Type=Application
Terminal=false

View file

@ -0,0 +1,7 @@
Package: sourcegit
Version: 8.8
Priority: optional
Depends: libx11-6, libice6, libsm6
Architecture: amd64
Maintainer: longshuang@msn.cn
Description: Open-source & Free Git GUI Client

View file

@ -0,0 +1,8 @@
[Desktop Entry]
Name=Source Git
Comment=Open-source & Free Git GUI Client
Exec=/opt/sourcegit/sourcegit
Icon=/usr/share/icons/sourcegit.png
Terminal=false
Type=Application
Categories=Development

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB