Skip to content

Publish official Linux loong64 release artifacts #14012

Description

@cheungxi

Describe the feature or problem you’d like to solve

GitHub CLI currently publishes Linux release artifacts for 386, amd64, arm64, and armv6, but not for LoongArch64 (GOARCH=loong64).

GitHub CLI can already be built successfully from source for linux/loong64 with CGO_ENABLED=0. However, LoongArch64 users must build it themselves or rely on unofficial downstream
packages. They do not have access to the same official archives, checksums, DEB packages, and RPM packages available for the other supported Linux architectures.

The need for official packages is becoming more relevant because Debian promoted loong64 to an official architecture in December 2025. It is currently listed as a testing architecture
for Debian 14 ("forky") and is expected to be included in the release, subject to the normal architecture qualification and release process.

Publishing official GitHub CLI packages would give Debian and other Linux users on LoongArch64 a supported and reproducible installation path.

Proposed solution

Add loong64 to the Linux release matrix and publish the following artifacts:

  • gh_<version>_linux_loong64.tar.gz
  • gh_<version>_linux_loong64.deb
  • gh_<version>_linux_loong64.rpm

The implementation would also:

  • Generate and embed third-party license information for linux/loong64.
  • Recognize linux-loong64 assets when installing precompiled GitHub CLI extensions.
  • Document loong64 as an available Linux release architecture.
  • Add loong64 to the relevant package repository metadata, if official repository publication is in scope.
  • Use a GoReleaser and nFPM version that correctly maps Go's loong64 architecture to RPM's loongarch64 architecture.

A native LoongArch64 GitHub Actions runner should not be required. GitHub CLI release binaries use CGO_ENABLED=0, so the existing release runner can cross-compile the additional target.

This would provide LoongArch64 users with official, checksummed artifacts and an installation experience consistent with the other supported Linux architectures.

Additional context

The architecture names used by the relevant ecosystems are:

  • Go: loong64
  • Debian: loong64
  • RPM: loongarch64
  • GitHub CLI extension assets: linux-loong64

I have tested a local implementation on a native LoongArch64 Linux system. The following checks passed:

  • go test ./...
  • make lint
  • License generation for linux/loong64
  • Native static build and execution
  • GoReleaser configuration validation
  • Full Linux release packaging

The generated artifacts were also inspected:

  • The release binary is a statically linked and stripped LoongArch64 ELF executable.
  • The DEB package reports Architecture: loong64.
  • The RPM package reports Architecture: loongarch64.

Relevant Debian references:

This request concerns the core GitHub CLI binary, release packages, documentation, license embedding, and extension platform matching. It does not request architecture support for
separately distributed components such as the GitHub Copilot binary.

I have a local implementation and would be happy to contribute it. If this request is acceptable, could the maintainers provide acceptance criteria or mark the issue as help wanted
before I open a pull request?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions