diff --git a/.gitignore b/.gitignore index 2ef25bdf..e2e0be7e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ dist/ temp/ docs/merged.md +completions/ # Local-only files go.work diff --git a/.goreleaser.yml b/.goreleaser.yml index 3976f0e8..c09418cc 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,5 +1,10 @@ --- version: 2 +before: + hooks: + - 'sh -c "mkdir -p completions && go run ./cmd/zed completion bash > ./completions/zed.bash"' + - 'sh -c "go run ./cmd/zed completion zsh > ./completions/zed.zsh"' + - 'sh -c "go run ./cmd/zed completion fish > ./completions/zed.fish"' builds: - id: "linux-amd64-gnu" goos: ["linux"] @@ -108,6 +113,19 @@ nfpms: epoch: &epoch "0" ids: ["linux-amd64-gnu", "linux-arm64-gnu"] formats: ["deb", "rpm"] + contents: &nfpm_contents + - src: "./completions/zed.bash" + dst: "/usr/share/bash-completion/completions/zed" + file_info: + mode: 0644 + - src: "./completions/zed.fish" + dst: "/usr/share/fish/vendor_completions.d/zed.fish" + file_info: + mode: 0644 + - src: "./completions/zed.zsh" + dst: "/usr/share/zsh/site-functions/_zed" + file_info: + mode: 0644 - id: "musl" vendor: *vendor homepage: *homepage @@ -117,6 +135,7 @@ nfpms: epoch: *epoch ids: ["linux-amd64-musl", "linux-arm64-musl"] formats: ["apk"] + contents: *nfpm_contents furies: - account: "authzed"