Skip to content

feat(distribution): publish AUR packages (clickupcli, clickupcli-bin, clickupcli-git) #21

Description

@ulises-jeremias

Motivation

Right now clickup (the CLI binary) is installable via Homebrew, go install, or direct binary download from the GitHub release. Arch Linux and its derivatives (Manjaro, Endeavour, Garuda, CachyOS, etc.) — a non-trivial share of the CLI-power-user audience — have no first-class install path. Adding official AUR packages fills that gap, mirrors the distribution story we already have for Homebrew/Linux + macOS, and makes adoption a one-liner (yay -S clickupcli-bin).

I'd like to offer to do the implementation, and I'm also happy to remain the long-term AUR maintainer since Arch + ClickUp are tools I use daily.

Existing AUR landscape (FYI)

A quick search turned up these existing entries:

Package Maintainer Version Notes
clickup alhirzel 3.5.230-2 The ClickUp desktop AppImage — well-maintained, 16 votes, untouchable. Same name conflict Homebrew has with the clickup cask.
clickup-cli-bin nicholaswbester 0.14.0-1 0 votes, last updated 2026-06-24, points at a personal fork (nicholasbester/clickup-cli), 21 releases behind upstream. Effectively abandoned.

I'm intentionally not proposing a takeover of clickup-cli-bin to keep the contribution small and avoid coordination overhead with a third party. The clickupcli* family (no hyphen) is free in AUR, doesn't conflict with the desktop package, and is easy to disambiguate from the existing stale entry. If the maintainer prefers the hyphenated clickup-cli* family and wants to negotiate the takeover, I'm open to that too — just say the word.

Proposed AUR packages

Package Source Tracks Recommended for
clickupcli Build from source (go build) Stable tags (vX.Y.Z) Purists / reproducible builds
clickupcli-bin Prebuilt tarball from GitHub release Stable tags (vX.Y.Z) Default — fast, no go toolchain needed (mirrors Homebrew's bin.install)
clickupcli-git Build from source, VCS main branch Early adopters
clickupcli-bin-git (out of scope for this PR — add later if requested)

The binary in all packages installs as /usr/bin/clickup (matching the official binary name and what Homebrew/macOS/Windows users get) with conflicts=('clickup') and provides=('clickup') to handle the desktop coexistence cleanly — same trick .goreleaser.yml:43 already uses for the Homebrew formula.

Implementation outline

  • New directory contrib/aur/clickupcli{,-bin,-git}/ each containing a PKGBUILD and a generated .SRCINFO.
  • New workflow .github/workflows/aur-publish.yml triggered on:
    • push of tags matching v* (reuses the existing GoReleaser release)
    • workflow_dispatch (manual bump if needed)
      The workflow generates updated PKGBUILD / .SRCINFO for the matching package and calls ulises-jeremias/github-actions-aur-publish (an MIT-licensed action I maintain and use on other AUR-published projects) once per package in parallel.
  • README + docs/src/content/docs/installation.mdx gain a new "Arch Linux (AUR)" section under the existing install methods.
  • No changes to the binary itself, no impact on Homebrew/Linux/macOS users.

Secrets (provided later, after maintainer approval)

The new workflow needs three repository secrets — I'll provide them via a one-time secret share once you're happy with the plan:

  • AUR_SSH_PRIVATE_KEY — SSH key with push access to aur.archlinux.org
  • AUR_USERNAME — AUR account to commit as
  • AUR_EMAIL — AUR git committer email

AUR account ownership stays with whoever you (the maintainer) want; I'm happy to be the long-term committer, co-maintainer, or just hand it off entirely.

Future expansion (out of scope here, but worth noting)

If this lands cleanly, a follow-up PR could add:

  • Scoop (Windows) — a manifest in a triptechtravel/scoop-bucket repo, fed by the same GoReleaser artifacts
  • winget (Windows) — open a PR against microsoft/winget-pkgs
  • Nix / nixpkgs — a derivation
  • Snapsnapcraft.yaml
  • Single-line curl | sh installerscripts/install.sh that auto-detects OS/arch and drops the binary in /usr/local/bin (useful for barebones containers / WSL / anything without a package manager)

Each is a small, isolated PR once the AUR pipeline is battle-tested.

Offer

Happy to open the PR as soon as you give the green light. I already have:

Let me know if you'd prefer:

  1. The clickupcli* family as proposed, or
  2. Coordinate a takeover of the existing stale clickup-cli-bin and use the hyphenated family, or
  3. Defer until after the next release to keep this PR small.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions