build: add .deb package build process

This commit is contained in:
2026-02-13 22:46:34 +01:00
parent 8d9cdc9c3a
commit 2e014d3dcd
3 changed files with 21 additions and 2 deletions

View File

@@ -53,6 +53,8 @@
packages = with pkgs; [ packages = with pkgs; [
# go (version is specified by overlay) # go (version is specified by overlay)
go go
# Required for .deb build
dpkg
]; ];
}; };
} }

View File

@@ -25,6 +25,17 @@ linux-amd64:
linux-arm64: linux-arm64:
GOOS="linux" GOARCH="arm64" go build -o build/spotiflac-cli-linux-arm64 GOOS="linux" GOARCH="arm64" go build -o build/spotiflac-cli-linux-arm64
[group("linux")]
deb version:
mkdir -p build/packages/usr/local/bin/
cp -r packages/ build/
sed -i "s/1.0.0/{{version}}/g" build/packages/DEBIAN/control
GOOS="linux" GOARCH="amd64" go build -o build/packages/usr/local/bin/spotiflac-cli
dpkg-deb --build ./build/packages ./build
[group("windows")] [group("windows")]
windows: windows-amd64 windows-arm64 windows: windows-amd64 windows-arm64
@@ -35,11 +46,11 @@ darwin: darwin-amd64 darwin-arm64
linux: linux-amd64 linux-arm64 linux: linux-amd64 linux-arm64
# Build for all platforms # Build for all platforms
build: windows darwin linux build version: windows darwin linux (deb version)
# Push binaries to GitHub releases # Push binaries to GitHub releases
publish tag: publish tag:
gh release upload {{tag}} build/spotiflac-cli-* gh release upload --clobber {{tag}} build/spotiflac-cli*
clean: clean:
rm -rf build/ rm -rf build/

6
packages/DEBIAN/control Normal file
View File

@@ -0,0 +1,6 @@
Package: spotiflac-cli
Version: 1.0.0
Architecture: amd64
Maintainer: Patrick Canal <patrickcanal3@gmail.com>
Description: Spotify downloader
Spotify downloader with playlist sync in mind.