diff --git a/flake.nix b/flake.nix index 8bee3a4..681d1ff 100644 --- a/flake.nix +++ b/flake.nix @@ -53,6 +53,8 @@ packages = with pkgs; [ # go (version is specified by overlay) go + # Required for .deb build + dpkg ]; }; } diff --git a/justfile b/justfile index f8989d3..fc4b22d 100644 --- a/justfile +++ b/justfile @@ -25,6 +25,17 @@ linux-amd64: 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")] windows: windows-amd64 windows-arm64 @@ -35,11 +46,11 @@ darwin: darwin-amd64 darwin-arm64 linux: linux-amd64 linux-arm64 # Build for all platforms -build: windows darwin linux +build version: windows darwin linux (deb version) # Push binaries to GitHub releases publish tag: - gh release upload {{tag}} build/spotiflac-cli-* + gh release upload --clobber {{tag}} build/spotiflac-cli* clean: rm -rf build/ diff --git a/packages/DEBIAN/control b/packages/DEBIAN/control new file mode 100644 index 0000000..3782232 --- /dev/null +++ b/packages/DEBIAN/control @@ -0,0 +1,6 @@ +Package: spotiflac-cli +Version: 1.0.0 +Architecture: amd64 +Maintainer: Patrick Canal +Description: Spotify downloader + Spotify downloader with playlist sync in mind.