basic256
Build times (auto-updated)
- i686: 2m49s (2026-09-17 18:26 UTC, MAKEFLAGS=-j6)
- x86_64: 1m25s (2026-09-18 08:27 UTC, MAKEFLAGS=-j6)
- pentium4: 3m23s (2026-09-17 18:32 UTC, MAKEFLAGS=-j6)
- Path: arch/maintained/basic256
- PKGBUILD already listed
arch=('i686' 'x86_64'), but only x86_64 had ever actually been built/published to the private repo (confirmed viascripts/repo_arch_status.sh: i686 showed “not published”).
2026-09-17: extended to i686 – icu76 linking gap (same pattern as qgpgme-qt5/trojita-qt5-git)
- First i686 build attempt failed linking
basic256itself:undefined reference to 'ucnv_...76'etc. Root cause: the i686 chroot’s systemQt5Core.solinks against the legacyicu76soname, but nothing in the dependency chain declares it, so the newer defaulticu(78.3) is what’s actually installed. Identical root cause already seen and fixed forqgpgme-qt5/trojita-qt5-git(see those memory files) –icu76itself is available prebuilt in the archlinuxaba repo for i686. - Fix: added
makedepends_i686=('icu76'), bumpedpkgrel3 -> 4 (packaging-only fix), regenerated.SRCINFO(which was stale anyway – still listed pkgrel=2 and the oldespeakdepend, both already gone from PKGBUILD). - Rebuild: i686 built and signed successfully with the fix.
- x86_64 rebuild (needed too, since pkgrel bumped) FAILED in the same
run, but only because
archlinuxaba.dbsync timed out – the private repo host (euroweb.lan / archlinux32.andreasbaumann.cc) was unreachable (“No route to host”) at that moment. Unrelated to the icu76 fix; not yet retried. - Publish also failed for the same reason:
repo_publish.shcouldn’t reachroot@euroweb.lanto createos/i686under the mirror. - Host (euroweb.lan / archlinux32.andreasbaumann.cc) came back up
shortly after; retried and both i686 and x86_64 built and published
cleanly at 2.0.99.10-4 (
basic256+basic256-debug, both archs). Confirmed viascripts/repo_arch_status.sh: both archs show “published (2.0.99.10-4)”.
2026-09-17: further extended to i486/pentium4 – i486 blocked on missing icu72
- Added
i486/pentium4toarch=(), plusmakedepends_i486=('icu76')/makedepends_pentium4=('icu76')up front (same Qt5/icu chain issue is arch-independent, so pre-empted it rather than waiting for a guaranteed failure).pkgrel4 -> 5. pentium4built and published cleanly withicu76, same as i686.i486FAILED differently:undefined reference to 'ucnv_..._72'etc – i486’s systemQt5Core.sowas built againsticu72specifically, noticu76. Checked every configured repo section (archlinuxaba/core/extra) for i486: noicu72package exists at all (only icu74/75/76 are available). This is the same arch-vintage-drift issue asmemory/trojita-qt5-git.md’s icu72/ libxml2-legacy findings – different archlinux32 arches’ Qt5 stacks were rebuilt against different legacy ICU versions at different times, and not every legacy version got carried forward for every arch.- Building
icu72from source for i486 ourselves (likegpgme/gpgmeppwere built for the trojita chain) would be a real side-project, not a quick fix – user’s call: leavei486inarch=()as-is (documented broken here) rather than chase it now.i486stays unpublished;i686/x86_64/pentium4all publish cleanly at 2.0.99.10-5. - If picked up later: start by trying to build/package
icu72for i486 the same waygpgme/gpgmeppwere done for trojita (seememory/gpgme.md/memory/gpgmepp.mdfor that pattern), then retry this package’s i486 build.
2026-09-17: i486 dropped for good – user decision
- User: don’t chase building against such an old Qt/icu72 combination
for i486. Removed
i486fromarch=()entirely (and its now-deadmakedepends_i486=('icu76')), rather than leaving it declared-but- broken.pkgrel5 -> 6. - Rebuilt/republished
i686/x86_64/pentium4at 2.0.99.10-6 (a purearch=()/metadata change, no functional difference to those three, but pkgrel bumped anyway to keep PKGBUILD/.SRCINFO/published state consistent – same convention followed whentrojita-qt5-gitsimilarly reverted a 32-bitarch=()addition). All three confirmedpublished (2.0.99.10-6)viascripts/repo_arch_status.sh. - Final supported archs for this package:
i686,x86_64,pentium4. Noti486– don’t re-attempt without first solving theicu72availability gap noted above.
2026-09-18: upstream v2.2.0 – moved to GitHub, CMake, Qt6-only; split into basic256 (Qt6) + basic256-qt5 (last Qt5 release)
AUR flagged out-of-date; comment from
dkorzhevin: “BASIC-256 v2.2.0 released”. Verified against real upstream, not just the comment (seefeedback_verify_aur_flags_before_acting.md):- Our
.nvchecker.tomltracked SourceForge’skidbasicproject, which is frozen at2.0.99.10– that project is abandoned. - Real upstream is now
github.com/uglymike17/basic256(basic256.orglinks there), tagged releases up tov2.2.0. - Build system moved from qmake (
BASIC256.pro) to CMake. - Qt6 is mandatory as of the earliest GitHub tag
(
v2.1.beta.01) –CMakeLists.txtdoesfind_package(QT NAMES Qt6 REQUIRED ...), and upstream’s ownCOMPILING.txtsays “Qt5 is no longer supported.” Confirmed by checking every tag’sCMakeLists.txt, not justmain. - License changed GPL2 -> GPL3 (
GPL-3.0-or-later, confirmed vialicense.txt+ the “or (at your option) any later version” wording inVersion.h). - Needed Qt6 components: Core, Gui, Widgets, Sql, PrintSupport,
SerialPort, Multimedia, TextToSpeech, LinguistTools, Network, plus
qt6-declarativeas a build-time-only dep (Qt6TextToSpeech’s own CMake package config requiresQt6QmlIntegrationeven though this project has no QML of its own – not a runtime dependency,pacman -Qi qt6-speechdoesn’t list it). - Checked archlinux32’s
extrarepo for i686/pentium4: all the above Qt6 components are available there too, so 32-bit isn’t a dead end for the Qt6 line if picked up later.
- Our
basic256 (this dir) rewritten for v2.2.0: new GitHub tarball source,
cmake/ninja-free plaincmake -B build+cmake --buildbuild(), Qt6 deps,GPL-3.0-or-later.package()usesDESTDIR=... cmake --install buildfor the binary, then manually installsModules/*.kbsnext to the binary (/usr/bin/Modules/, not/usr/share/...) – upstream’s own interpreter resolvesinclude’d modules viaQCoreApplication::applicationDirPath(), not a fixed system data dir (seeLEX/basicParse.l), so this is upstream’s actual runtime expectation, not a packaging choice; not worth patching around for now. Examples/icon/desktop installed manually as before (upstream’s owninstall()only handles the binary). Built and published for x86_64 only so far (2.2.0-1), per explicit user decision – i686/pentium4 not yet attempted for the Qt6 line; re-check archlinux32’s Qt6 packages there before trying (should be fine per the check above, but unverified by an actual build).Old qmake+Qt5
PKGBUILD(last state:2.0.99.10-6, all three archs) is preserved as-is in git history (commit4fa4564) – reused verbatim, just renamed, for the new package below.New package
basic256-qt5(arch/maintained/basic256-qt5): user wanted a fallback for systems without Qt6, using “the last version which still builds with Qt5” – turned out to be exactly our own already-working old package (SourceForge2.0.99.10, qmake, Qt5), not some newer untagged commit from the GitHub repo (checked: even GitHub’s earliest tag is already Qt6-only, so there’s no newer Qt5 release to bisect down to – SourceForge’s2.0.99.10IS the last Qt5 release).pkgname=basic256-qt5,pkgrelreset to1(new package identity),provides=('basic256')/conflicts=('basic256')since it installs the same/usr/bin/basic256– same pattern astrojita-qt5-git’sprovides=('trojita')/conflicts=(...). Built and published cleanly on i686/x86_64/pentium4 at2.0.99.10-1(identical content to oldbasic256’s workingicu76-fixed build, just renamed) – no new build issues since nothing about the actual package changed.This is a brand-new package, not yet an AUR submodule/git repo of its own – created as a plain directory under
arch/maintained/. Needs the user’s owngit init/AUR remote add/push to actually submit it to AUR (never done by me – seefeedback_never_git_commit_or_push.md); until then it only exists in our private repo.