You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
FreeBSD: проверить сборку, заявить, добавить в CI; так же — другие платформы без больших усилий #166
Пользователи пишут, что DN собирается под FreeBSD, хотя в документации это не заявлено: в README сейчас «runs on Windows, Linux and DOS», в tools/build.sh нет FreeBSD-цели, в CI FreeBSD тоже нет. При этом таблица путей в README уже упоминает «Linux, BSD». Нужно проверить, и если сборка подтверждается — заявить поддержку и закрепить её в CI. Так же поступить с другими платформами, которые добавляются без больших усилий.
Атомарный план
Один шаг — один PR, обязательные проверки по паспорту (dn.yml, dn-linux.yml, dn-windows.yml и т. д.). Локально ничего не собирать — только CI. После каждого шага — комментарий сюда.
Проверка FreeBSD в CI. Workflow dn-freebsd.yml (например, vmactions/freebsd-vm, FPC 3.2.2 из pkg), запуск через workflow_dispatch и на PR, который его трогает. Цель freebsd64 в tools/build.sh (x86_64 FreeBSD, по образцу linux64). Сборка DN, ресурсов и справки. Готово: job собирает dn, прогон записан здесь. Если сборка падает — список ошибок в комментарии, и решение «чинится малой правкой / отдельный тикет».
Тесты на FreeBSD. В том же job — юнит-тесты dn/tests и pty-сценарий tools/dn-linux-ops.py (или его переносимая часть). Готово: зелёный прогон; что не переносится, записано с причиной.
Заявить. README (строка Alpha, раздел сборки), dn/README.md: FreeBSD x86_64 — статус по факту шага 2. Готово: документация не обещает больше, чем проверено в CI.
В обязательные проверки и релиз.dn-freebsd.yml — на push в main и на PR; архив dn-<tag>-freebsd64.tar.gz в release.yml и nightly.yml (гейт tools/nightly-gate.sh). Готово: nightly содержит FreeBSD-архив; паспорт projects/dn/PROJECT.md в учётном репозитории обновлён.
Другие платформы «без больших усилий». Для каждого кандидата — одна пробная сборка в CI и решение в комментарии: добавляем (если хватает правки build.sh и CI) или отдельный тикет с оценкой. Кандидаты, где FPC 3.2.2 есть готовым: FreeBSD aarch64, macOS x86_64 и arm64 (раннеры GitHub), Linux armhf, NetBSD и OpenBSD x86_64 (в VM). Готово: таблица «платформа → результат пробы → решение» в этом тикете; каждая принятая платформа проходит шаги 1–4 отдельными PR.
VM FreeBSD 14.3-RELEASE (vmactions/freebsd-vm@v1), из пакетов: fpc (в пакетах FreeBSD сейчас 3.2.3, не 3.2.2), python3, git.
tools/build.sh freebsd64 — новая цель с теми же опциями и модулями, что linux64 (-dDPMI32 -dLINUX, dn/compat/linux): dn, rcp и tvhc собрались без ошибок; out/dn/dn — ELF 64-bit LSB executable, x86-64, (FreeBSD), statically linked; ресурсы (*.lng, *.dlg) и справка трёх языков (238/235/226 тем) — те же размеры, что у сборки linux64.
Единственное предупреждение — компоновщика FreeBSD про исполняемый стек у prt0.o из RTL самого FPC.
Правок исходников DN не понадобилось; в build.sh дата сборки теперь берётся и через BSD date -r.
Решение по шагу 1: малых правок не нужно. Дальше шаг 2 — юнит-тесты dn/tests и pty-сценарий в том же job (после вливания #167). Отдельно: FPC 3.2.3 в пакетах FreeBSD против 3.2.2 в остальных сборках — учесть в шаге 3 (что заявлять).
Лунобот-1 (node 801452e4fd3b9a26f8e6f02c; LNX; модель не раскрыта)
The tagged-release archive criterion cannot be verified until the next naturally scheduled versioned release. I did not create a tag or trigger a release. Next step: when a natural versioned release appears, verify that its assets include the FreeBSD x86_64 archive and then update this issue and the account-215 queue record; keep this task open meanwhile.
One-time release snapshot — 24 October 2026 12:03 UTC: no new versioned release has appeared since the previous snapshot. The versioned tags/releases remain v2.20-alpha.2 (561bb733cbbcfbc72a9271377089fb08d25a4c57, published 21 October) and v2.20-alpha.1; the newer nightly release (23 October) is floating and does not count as a versioned release.
Therefore the next natural versioned release has not yet provided an artifact to inspect. The FreeBSD archive criterion for a tagged release remains unverified; no tag or release was triggered. Next condition: once a natural versioned release appears, check whether it includes the FreeBSD x86_64 archive and report that fact.
Activity
TRIAGE: unxed/dn#166 новый (FreeBSD в CI)
unxed/dn#166: взял шаг 1
unxed/dn#166: CI PR #167
unxed/dn#166: шаг 1, PR #167
unxed commentedon Oct 20, 2026
Шаг 1: сборка под FreeBSD x86_64 проходит — PR #167, прогон
dn-freebsdhttps://github.com/unxed/dn/actions/runs/39502502236 зелёный на76daf60.vmactions/freebsd-vm@v1), из пакетов:fpc(в пакетах FreeBSD сейчас 3.2.3, не 3.2.2),python3,git.tools/build.sh freebsd64— новая цель с теми же опциями и модулями, чтоlinux64(-dDPMI32 -dLINUX,dn/compat/linux):dn,rcpиtvhcсобрались без ошибок;out/dn/dn—ELF 64-bit LSB executable, x86-64, (FreeBSD), statically linked; ресурсы (*.lng,*.dlg) и справка трёх языков (238/235/226 тем) — те же размеры, что у сборки linux64.prt0.oиз RTL самого FPC.build.shдата сборки теперь берётся и через BSDdate -r.Решение по шагу 1: малых правок не нужно. Дальше шаг 2 — юнит-тесты
dn/testsи pty-сценарий в том же job (после вливания #167). Отдельно: FPC 3.2.3 в пакетах FreeBSD против 3.2.2 в остальных сборках — учесть в шаге 3 (что заявлять).Лунобот-1 (node 801452e4fd3b9a26f8e6f02c; LNX; модель не раскрыта)
Generated by Claude Code
unxed/dn#166: шаг 1 — FreeBSD собирается, комментарий
unxed/dn#166: PR #167 зелёный
unxed/dn#166: взял шаг 2
unxed/dn#166: шаг 2, PR #168
dn-freebsd: pyftpdlib по версии python3 системы, иначе pip (#166, шаг 2)
TRIAGE: метка enhancement у unxed/f4#2115, unxed/dn#166, unxed/bp#56 …
Merge pull request #167 from unxed/lunobot/pr/dn166-freebsd
тесты DN без GNU sed и setsid(1): FreeBSD (#166, шаг 2)
unxed/dn#166: шаг 2 — переносимость тестов
78 remaining items
unxed/dn#166: взял завершение account-215
journal claim
unxed commentedon Oct 24, 2026
I verified the current release state after PR #184:
nightlytargets805dca6ad71d597f12ad5c4b9371c0f72910d4cfand containsdn-805dca6-freebsd64.tar.gz(asset 669655442).v2.20-alpha.2, published before PR Add FreeBSD x86_64 archives to tagged releases using the existing FreeBSD build and packaging flow. Include the new release job in the publish dependencies and document the FreeBSD archive in README. #184 was merged; no newer versioned release/tag exists yet.The tagged-release archive criterion cannot be verified until the next naturally scheduled versioned release. I did not create a tag or trigger a release. Next step: when a natural versioned release appears, verify that its assets include the FreeBSD x86_64 archive and then update this issue and the account-215 queue record; keep this task open meanwhile.
Lunobot-2 (node 19d368003c6c048e43dbec70; LNX; GPT-6 Luna; subagent)
journal reflection
journal claim
journal claim
journal claim
journal claim
journal claim
journal claim
journal claim
journal claim
unxed commentedon Oct 24, 2026
One-time release snapshot — 24 October 2026 12:03 UTC: no new versioned release has appeared since the previous snapshot. The versioned tags/releases remain
v2.20-alpha.2(561bb733cbbcfbc72a9271377089fb08d25a4c57, published 21 October) andv2.20-alpha.1; the newernightlyrelease (23 October) is floating and does not count as a versioned release.Therefore the next natural versioned release has not yet provided an artifact to inspect. The FreeBSD archive criterion for a tagged release remains unverified; no tag or release was triggered. Next condition: once a natural versioned release appears, check whether it includes the FreeBSD x86_64 archive and report that fact.
Lunobot-2 (node 19d368003c6c048e43dbec70; LNX; GPT-6 Luna; subagent)
unxed/dn#166: record one-time release snapshot
unxed/dn#166: refresh triage snapshot