Skip to content

Repository files navigation

my-pkgbuilds

Arch Linux PKGBUILDs I maintain, one folder per package. These are either not available on the AUR at all, or are customised forks of AUR packages.

Each folder contains the PKGBUILD plus everything it needs at build time — patches, .install scripts, .desktop entries, launcher scripts and .SRCINFO. Sources fetched by source=() (tarballs, wheels, git clones) and makepkg output (src/, pkg/, *.pkg.tar.zst) are not tracked.

Build

git clone https://github.com/ThomasEricB/my-pkgbuilds.git
cd my-pkgbuilds/<package>
makepkg -si

Packages

Not on the AUR

Package Version Description
githublauncher-bin 1.73-3 Launcher for downloading, managing and running GitHub-hosted apps and game ports, from the prebuilt release (SirDiabo/GithubLauncher). Builds for x86_64 and aarch64.
libadlmidi 1.6.1-1 MIDI playback library with OPL3 (YMF262) emulation (Wohlstand/libADLMIDI). The AUR only has libadlmidi-git; this builds the stable release.
libopnmidi 1.6.1-1 MIDI playback library with OPN2 (YM2612) emulation (Wohlstand/libOPNMIDI). The AUR only has libopnmidi-git; this builds the stable release.
midieditor 4.5.0-3 The Meowchestra fork of MidiEditor (pkgname=midieditor-meowchestra), which has no AUR package. Builds against a vendored rtmidi pinned to commit a3233c22, with a local build patch.
sus 20260730.1-2 Per-wire 12V-2x6 current monitor and overload daemon for ASUS ROG ASTRAL RTX 5090 boards (jan-provaznik/sus). See the notes below.

sus

The 12V-2x6 connector on the RTX 5090 is rated for roughly 8.5 A per wire at the card's 600 W limit, and a faulty cable or connector can push that load out of balance. ASUS ROG ASTRAL boards expose a per-wire voltage/current sensor over the GPU's SMBus segment; upstream provides a native Linux reader for it, and this is its packaging. Only ROG-ASTRAL-RTX5090-O32G and the -WHITE variant are supported — no other boards were available to the upstream authors.

Two binaries are installed:

  • susm — one-shot or continuous monitor, printing per-pin draw and the min/max mismatch ratio. Needs root for /dev/i2c access: sudo susm, or sudo susm -t 10s.
  • susd — protection daemon, enabled with sudo systemctl enable --now susd.service. When any wire exceeds the current limit it lowers the power limit, or locks clocks to minimum if the required target falls below the card's configurable ~400 W floor.

susd only ever reduces power — it never restores it. That is upstream's deliberate design: an overload signals a hardware fault that will not fix itself. After it fires, check the cable and connector, then undo the limits by hand:

nvidia-smi --power-limit 600
nvidia-smi --reset-gpu-clocks
nvidia-smi --reset-memory-clocks

Packaging notes:

  • The susd.service unit's ExecStart is repointed from upstream's /usr/local/bin/susd to the packaged /usr/bin/susd.
  • A modules-load.d snippet loads i2c-dev at boot. The sensor is only reachable through /dev/i2c-* and nothing in a stock Arch install guarantees the module is loaded; without it susd exits 1. To use it before rebooting: sudo modprobe i2c-dev.
  • -fno-plt is stripped from the CGO_*FLAGS and -Wl,-z,lazy added to CGO_LDFLAGS. go-nvml leaves every nvml* symbol undefined and dlopen()s libnvidia-ml.so.1 inside nvml.Init(), so those symbols must stay lazily bound; Arch's default -fno-plt and -z now each break that on their own and the binaries fail at runtime with undefined symbol: nvmlGpuInstance…. PIE and partial RELRO are retained.
  • Upstream ships no LICENSE file (sources carry only "2026 Jan Provaznik"), so the license field is LicenseRef-unknown.

Customised AUR forks

ffmpeg-cuda-full

FFmpeg with CUDA/NVENC and all codecs including nonfree, forked from the AUR package of the same name. Two changes:

  • Pinned to the FFmpeg 8.x series. The upstream pkgver() resolves the newest stable tag of any major version; here it is restricted to n8.*. The libav* sonames track the major version, so an automatic jump to 9.x is an ABI break for every installed consumer rather than a drop-in upgrade.
  • CUDA arch targets the installed GPU. Instead of nvcc's lowest supported arch, the live compute capability is read from nvidia-smi, validated against nvcc --list-gpu-arch, and falls back to the lowest arch when no GPU is visible (e.g. containers). --nvccflags emits PTX (code=compute_NN) alongside native SASS (code=sm_NN) so the CUDA filters forward-JIT onto future drivers.

Note: the per-package README.md in that folder came from the original AUR package and still describes the "always builds the newest stable FFmpeg" behaviour, which the 8.x pin above deliberately changes.

litert-lm

Google AI Edge LiteRT-LM on-device LLM inference CLI, at 0.14.0. Upstream stopped attaching standalone Linux binaries to GitHub releases as of v0.12.0, so the AUR recipe (which downloads lit.linux_x86_64) no longer works. This version installs the PyPI wheels instead — litert-lm (CLI), litert-lm-api (native engine, arch-specific manylinux wheel) and litert-lm-builder — via python -m installer, adds aarch64 support, and keeps /usr/bin/litert as a symlink for compatibility with the pre-0.12 package.

Note: the convert subcommand bootstraps its own venv in ~/.litert-lm/.venv on first use; everything else runs from the system install.

mpv-full-git-custom

Fork of the AUR's mpv-full-git, renamed so AUR helpers do not overwrite it (it provides/conflicts mpv-full-git). Changes:

  • Depends on the FFmpeg sonames (libavcodec.so, libavformat.so, …) rather than ffmpeg-git, so it links against whichever system FFmpeg is installed — including a local CUDA/NVENC build — instead of pulling a conflicting ffmpeg-git from the AUR.
  • Enables the libcurl stream backend (-Dlibcurl=enabled, plus the curl dependency).
  • Provides libmpv.so and pins -Dwin32-smtc=disabled.

Licence

The PKGBUILDs and packaging scripts here are provided as-is. Each packaged project remains under its own upstream licence, declared in the license field of the respective PKGBUILD.

About

Arch Linux PKGBUILDs: packages not available on the AUR, plus customised forks

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages