2026-09-06 18:14:41 +03:00
2026-09-06 18:04:58 +03:00
2026-09-06 15:46:03 +03:00
2026-09-06 13:36:55 +03:00
2026-09-06 13:36:55 +03:00
2026-09-06 13:36:55 +03:00
2026-09-06 18:14:41 +03:00
2026-09-06 13:36:55 +03:00

AyuGram Arch Builder for Gitea Actions

This repository automatically checks AyuGram/AyuGramDesktop GitHub releases, builds the latest release as a native Arch Linux package, validates the package, creates an Arch repository database, and publishes the package/database to a Nexspence Raw Hosted repository.

What it does

  1. Runs from Gitea Actions on a two-day schedule or manually.
  2. Queries the GitHub Releases API for the latest AyuGram release.
  3. Uses the official AyuGramDesktop-<version>-full.tar.gz release archive.
  4. Resolves the exact tdlib submodule commit from the upstream release tag.
  5. Builds on archlinux:latest with makepkg.
  6. Uses packaged Arch libraries where appropriate.
  7. Runs namcap, package metadata checks, ELF dependency checks and a smoke test.
  8. Creates noko-arch.db.tar.zst with repo-add.
  9. Uploads the package and repository database files to Nexspence Raw.
  10. Records the published version in .current-version.

Required Gitea secrets

  • NEXSPENCE_URL - for example https://repos.noko.tan
  • NEXSPENCE_TOKEN - an nxs_... API token
  • NEXSPENCE_REPOSITORY - noko-arch

Optional:

  • TDESKTOP_API_ID
  • TDESKTOP_API_HASH

The default API credentials are the same public build credentials used by several current Linux packaging recipes. For a production/private distribution, set your own Telegram API credentials as Gitea secrets.

Arch client

[noko-arch]
Server = https://repos.noko.tan/repository/noko-arch/$arch
SigLevel = Never

Then:

sudo pacman -Sy
sudo pacman -S ayugram-desktop

The repository is intentionally unsigned in this first version. Add repository signing only after the upload flow is confirmed working.

Runner

The workflow uses a job-level Arch container, so the Gitea runner needs Docker execution and a label such as ubuntu-latest. Gitea recommends Docker-backed runner jobs for isolation.

Important: libtg_owt

libtg_owt is not necessarily present in the official Arch repositories. The workflow therefore expects your runner environment (or an internal Arch repo) to provide it. If pacman -S libtg_owt fails, build/install the AUR libtg_owt package on the runner or expose it through your own noko-arch repository before running this workflow.

Do not replace libtg_owt with a random prebuilt binary: it is part of the native build toolchain.

S
Description
No description provided
Readme
56 KiB
Languages
Shell 91.1%
Dockerfile 8.9%