作者holishing ( )
看板PttCurrent
标题[闲聊] Test build pttbbs on Debian Bullseye
时间Mon Feb 22 01:13:35 2021
因为偷瞄 telnet ptt.cc 22 的版号资讯猜 pttbbs 系统还在 Debian Buster (10)
没偷跑到 testing (bullseye)
而 bullseye (11) 已经进入 Soft Freeze 了
https://wiki.debian.org/DebianBullseye
於是就让我们从粗略的方法来看将 pttbbs 程式移植到新系统可能有哪些
细节需要确认处理
目前是将容器的 base image 换成 bullseye 来测试
概略心得记录如下:
1. openresty 还没提供给 bullseye 的版本
如果 bbs server 和 websocket server 环境是分开来的可能还好
但我就不会分:p 而且也懒得找他们的套件打包脚本了...
结果发现硬装 buster repository 的 openresty 也没什麽问题
( 他自己一堆函式库像是 openssl 都另外命名自己再装一次了,
如此叠床架屋还有相依性问题也太惨? )
2021/9/8 更新:已提供预编译套件给 Bullseye 用了
2. bmake 从 20160220 升级到 20200710 版 (虽然最新已经到 202102XX 了)
然後发现一堆 bsd.*.mk 的 rule 竟然都不能用了?
只好先忍痛 alias bmake="bmake -m /usr/share/bmake/mk-netbsd/" 後
再继续奋斗下去了, 本来以爲 bmake install 会跟 Arch 一样踩到雷但
现在看起来还没事?
结果发现以下 Bug Report 解释了来龙去脉:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=823185
Debian Bug #823185 指出新版 bmake 指令预设不再提供旧版 bsd.*.mk 规则供利用,
若有需求(编译本专案程式码者), 请使用传统 pmake 指令 (套件维护者已协助将指令导
向至 bmake -m /usr/share/bmake/mk-netbsd)
然後 Arch, Fedora 的 bmake 就直接把 bsd.<name>.mk symlink 到 <name>.mk
所以虽然 pttbbs Makefile 引用的 bsd.*.mk 还能动, 但到 bmake install 时
就炸了
2021/9/8 更新:目前建议在 Debian Bullseye 下使用 pmake 指令以便使用传统
bsd.<name>.mk 档案
3. multiple definition caught on clang 11
本来想说想办法加个 -fcommon ? (类似让 gcc 10 高兴一样的感觉 (
但还是不确定这个有没有关, 加上只要删掉三行就可以过了
所以还是生了个 patch 来代替
https://github.com/bbsdocker/imageptt/blob/87c0ec3/multipledef.patch
之後再看怎麽处理
其他需要自行解读的细节细节见:
https://github.com/bbsdocker/imageptt/actions
如果板友有更好更可信的测试方法,欢迎分享
ps. 待发 PR
--
目前已知现存的 BBS 站台列表:
https://bbslist.github.io (2021-1-25 更新)
https://hackmd.io/s/r1pdt-59b (即时更新,自由编辑)
自己的 ptt 自己架 :
https://github.com/ptt/pttbbs/wiki
让自己的 ptt 有转信 :
https://github.com/clamtestbbs/pttbbs-inndtest
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.116.246.190 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PttCurrent/M.1613927620.A.42D.html
相关映像档可透过 docker pull bbsdocker/imageptt:bullseye 取用
※ 编辑: holishing (140.116.246.190 台湾), 02/22/2021 01:27:10
补充 bmake 行为变更
※ 编辑: holishing (140.116.137.106 台湾), 02/22/2021 03:46:22
1F:推 pichubaby: 目前Buster的LTS支援应该是到2024年? 02/22 18:34
用 5 年估是这样没错
但考虑到後 2 年 LTS 化的期间 apply 安全更新的速度会比最新版 stable 慢许多
所以自己会习惯有机会就提早测试新的环境能不能用
※ 编辑: holishing (140.116.246.190 台湾), 02/24/2021 18:03:35
2F:推 TsaoCCFGOGO: 推,有空也会测试。 07/08 13:49
3F:→ holishing: 好! 07/20 05:54
2021/9/8 更新:
如果是从 Debian Buster 就地升级到 Bullseye
由於 libevent 的函式库版号有所变更
请记得将相关程式重新编译,以确保升级後程式可以顺利执行
※ 编辑: holishing (140.116.252.158 台湾), 09/08/2021 12:40:47
※ 编辑: holishing (140.116.252.158 台湾), 09/08/2021 12:44:14