From f4da64a8dd1aa124ff886317cf0617e26a07bfa6 Mon Sep 17 00:00:00 2001 From: Arsen Musayelyan Date: Thu, 24 Nov 2022 16:16:25 -0800 Subject: [PATCH] Prepare for itgui cross-compilation --- .gitignore | 2 +- .goreleaser.yaml | 35 ++++++++++++++++++++++++++--------- .woodpecker.yml | 14 +++++++++++++- 3 files changed, 40 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 1b15e65..ad592ad 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ /itctl /itd -/itgui +/itgui* /version.txt dist/ diff --git a/.goreleaser.yaml b/.goreleaser.yaml index c92f05a..ba5570f 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -14,6 +14,8 @@ builds: - amd64 - arm - arm64 + goarm: + - 7 - id: itctl env: - CGO_ENABLED=0 @@ -26,24 +28,32 @@ builds: - amd64 - arm - arm64 + goarm: + - 7 archives: - - replacements: - 386: i386 - amd64: x86_64 - arm64: aarch64 + - name_template: >- + {{- .ProjectName }}-{{.Version}}-{{.Os}}- + {{- if eq .Arch "386" }}i386 + {{- else if eq .Arch "amd64" }}x86_64 + {{- else if eq .Arch "arm64" }}aarch64 + {{- else }}{{.Arch}} + {{- end }} files: - LICENSE - README.md - itd.toml - itd.service + - itgui-linux-{{.Arch}}{{if eq .Arch "arm"}}-7{{end}} nfpms: - id: itd - file_name_template: '{{.PackageName}}-{{.Version}}-{{.Os}}-{{.Arch}}' + file_name_template: >- + {{- .PackageName }}-{{.Version}}-{{.Os}}- + {{- if eq .Arch "386" }}i386 + {{- else if eq .Arch "amd64" }}x86_64 + {{- else if eq .Arch "arm64" }}aarch64 + {{- else }}{{.Arch}} + {{- end }} description: "Companion daemon for the InfiniTime firmware on the PineTime smartwatch" - replacements: - 386: i386 - amd64: x86_64 - arm64: aarch64 homepage: 'https://gitea.arsenm.dev/Arsen6331/itd' maintainer: 'Arsen Musyaelyan ' license: GPLv3 @@ -54,12 +64,15 @@ nfpms: dependencies: - dbus - bluez + - pulseaudio-utils contents: - src: itd.toml dst: /etc/itd.toml type: "config|noreplace" - src: itd.service dst: /usr/lib/systemd/user/itd.service + - src: itgui-linux-{{.Arch}}{{if eq .Arch "arm"}}-7{{end}} + dst: /usr/bin/itgui aurs: - name: itd-bin homepage: 'https://gitea.arsenm.dev/Arsen6331/itd' @@ -82,6 +95,10 @@ aurs: # binaries install -Dm755 "./itd" "${pkgdir}/usr/bin/itd" install -Dm755 "./itctl" "${pkgdir}/usr/bin/itctl" + install -Dm755 "./itgui" "${pkgdir/usr/bin/itgui}" + + # desktop files + install -Dm644 "./itgui.desktop" "${pkgdir}/usr/share/applications/itgui.desktop" # service install -Dm644 "./itd.service" ${pkgdir}/usr/lib/systemd/user/itd.service diff --git a/.woodpecker.yml b/.woodpecker.yml index 1fb1c3c..d3e2f7b 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -1,8 +1,20 @@ pipeline: + xgo-itgui: + image: arsen6331/fyne-xgo + environment: + - 'TARGETS=linux/amd64 linux/arm64 linux/386 linux/arm-7' + - 'OUT=itgui' + - 'PACK=./cmd/itgui' + commands: + - export SOURCE_DIR=$${CI_WORKSPACE} OUT_DIR=$${CI_WORKSPACE} + - /build.sh + when: + event: tag + release: image: goreleaser/goreleaser commands: - goreleaser release secrets: [ gitea_token, aur_key ] when: - event: tag \ No newline at end of file + event: tag