From 41f80924193b4e4694e7d584ecfff2f4ab1f8d40 Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Tue, 18 Jun 2024 18:08:26 +0200 Subject: [PATCH] Split command executed in a separate file --- .drone.yml | 6 +++--- Dockerfile | 2 +- player/player.go | 4 ++-- player/player_pulse.go | 9 +++++++++ 4 files changed, 15 insertions(+), 6 deletions(-) create mode 100644 player/player_pulse.go diff --git a/.drone.yml b/.drone.yml index 4f0b242..16e0247 100644 --- a/.drone.yml +++ b/.drone.yml @@ -27,7 +27,7 @@ steps: - apk --no-cache add alsa-lib-dev build-base git pkgconf - go get -v -d - go vet -v - - go build -v -ldflags '-w -X main.Version=${DRONE_BRANCH}-${DRONE_COMMIT} -X main.build=${DRONE_BUILD_NUMBER}' -o deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} + - go build -tags pulse -ldflags '-w -X main.Version=${DRONE_BRANCH}-${DRONE_COMMIT} -X main.build=${DRONE_BUILD_NUMBER}' -o deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} - ln deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} reveil when: event: @@ -40,7 +40,7 @@ steps: - apk --no-cache add alsa-lib-dev build-base git pkgconf - go get -v -d - go vet -v - - go build -v -ldflags '-w -X main.Version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}' -o deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}v7 + - go build -tags pulse -ldflags '-w -X main.Version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}' -o deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}v7 - ln deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}v7 reveil when: event: @@ -50,7 +50,7 @@ steps: image: golang:1-alpine commands: - apk --no-cache add alsa-lib-dev build-base git pkgconf - - go build -v -tags netgo -ldflags '-w -X main.Version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}' -o deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}hf + - go build -tags pulse,netgo -ldflags '-w -X main.Version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}' -o deploy/reveil-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}hf environment: CGO_ENABLED: 0 GOARM: 6 diff --git a/Dockerfile b/Dockerfile index d420e0c..3a2416b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,7 +15,7 @@ RUN apk --no-cache add git go-bindata COPY . /go/src/git.nemunai.re/nemunaire/reveil COPY --from=nodebuild /ui/build /go/src/git.nemunai.re/nemunaire/reveil/ui/build WORKDIR /go/src/git.nemunai.re/nemunaire/reveil -RUN go get -v && go generate -v && go build -v -ldflags="-s -w" +RUN go get -v && go generate -v && go build -tags pulse -ldflags="-s -w" FROM alpine:3.20 diff --git a/player/player.go b/player/player.go index c12e552..9ef1adf 100644 --- a/player/player.go +++ b/player/player.go @@ -136,7 +136,7 @@ func (p *Player) launchAction(cfg *config.Config, a *reveil.Action) (err error) } func (p *Player) playFile(filepath string) (err error) { - p.currentCmd = exec.Command("paplay", filepath) + p.currentCmd = exec.Command(playCommand, filepath) if err = p.currentCmd.Start(); err != nil { log.Println("Running paplay err: ", err.Error()) p.currentCmdCh <- true @@ -270,7 +270,7 @@ func (p *Player) NextTrack() { } func (p *Player) SetVolume(volume uint16) error { - cmd := exec.Command("amixer", "-D", "pulse", "set", "Master", fmt.Sprintf("%d", volume)) + cmd := exec.Command("amixer", "-D", mixerCard, "set", mixerName, fmt.Sprintf("%d", volume)) return cmd.Run() } diff --git a/player/player_pulse.go b/player/player_pulse.go new file mode 100644 index 0000000..d09fa40 --- /dev/null +++ b/player/player_pulse.go @@ -0,0 +1,9 @@ +//go:build pulse + +package player + +const ( + playCommand = "paplay" + mixerCard = "pulse" + mixerName = "Master" +)