然而,首先,systemd 就是个文明用语。(我倒不是特别在意放置不用的,不过没法和 WSL1 的 init 兼容就是个问题。即便根源是后者显然更欠扁。)
技术角度来说,除了 nix 和 guix ,剩下的所有发行版在“发行”的意义上都是弟弟,因为连个基本系统内部版本管理都做不好,动不动就依赖冲突。(当然弟弟之间参差不齐,Gentoo 这种显然有瞎折腾碳排放的问题,别的发行版就不一定存在。)但是 nix 和 guix 自身又过于依赖系统机制,源又渣,一时也是没救。
技术上来说,makepkg 是比较弱鸡的;但是如此弱鸡的东西居然可用性相对还行,也说明各大发行版的拉胯现状。
alpm 这个机制只用在 AUR 上太浪费了。其实 MSYS2 和 devkitPro 这样已经使用了 pacman 的环境理论上也应该可以用(几年前 MSYS2 我是动手移植过,yaourt 没问题,不过后来 libalpm 的 API 改了不好搞),没铺开来大概只是流行不够。
另一方面和不愿意出 WSL 官方发行版一样,显示了 Arch 官方的小家子气。(没把握做好就不做或者明确兴趣做要另请高明都没有什么不对,但对用户来讲显然不理想。)
我用 SB2 ,字体渲染差异感知不大。不过低分屏明显 Win32 吊打绝大多数其它环境(你不可能指望应用开发者都是会折腾好 FreeType 的专家)。
性能问题大部分反倒是没感知的。Windows 慢很大程度是使用的工具链保守,其次是 ABI 拉胯。但是基于 SysV ABI 很多时候更加拉胯(比如默认 std::unique_ptr 都没法传寄存器)。另一方面,很多有全局性能影响的改动其实一般用户自己都没什么感知,比如-fstack-proctector -D_FORTIFY_SOURCE=2 ,真计较的话其实不应该那么容易忽略。
@
CharlesGray 你引用的这个还真有点一言难尽……
> ‘FreeBSD’、‘freeBSD’、‘Freebsd’、‘freebsd’这些字应该记着。
正确使用大小写本来就是常识。比如专名,像 FreeBSD 基金会的名称和作为商标。小写是明确被允许的,比如官方源码库的名称,所以自然也不算错。真正应该迷惑的是“
https://www.FreeBSD.org/”这种大写并没什么卵用的场合(这个是官方在用)。另外 freeBSD 和 Freebsd 我还真没见过。
> 用自己的要求规范别人。
那么用别人自己隐含的规范要求一致性应该不算问题吧。但是这文章“用 WP 手机的用户是否也是苦难哲学的受害者”的“WP”后面少了空格( V2EX 发出来会自作聪明调整,看不出来)和原文其它的位置格格不入,我觉得更容易逼死强迫症一点……
(既然别的地方还会刻意加空格,不一致应该不是故意的。)
> 一些人非要在 Linux 下学习 C 语言,说什么更清楚的了解 IDE 的工作方法,说什么预处理编译汇编链接在 IDE 下不直观,非要折腾自己用什么 GCC ,GCC 好用吗?对于初学者来说有什么用?那些是编译原理课程所需要的,而不是 C 语言。
这就是明确的误导。
首先说反了,是 IDE 对学 C 语言没什么用才对。至于如何使用 GCC ,那是 shell 语言课程的内容(悲)。
另外,编译原理也用不到这些。作者应该相当不明白编译原理在这里并没什么卵用的程度和这个事实的作用原理。
不懂得正确使用还原论,混淆 IDE 的莫须有用途,是迈向这个方向稀里糊涂的重要一步。
> 用 GPL 协议捆绑用户也是一种苦难哲学。
苦难哲学 ×
政治哲学 √
> 我觉得这破坏了语言的纯洁性。
这明显是孔乙己双标嘛。大小写起码还有文法要求,都能不管,构词还能不纯洁了?
真要说的话,这文章里上面有个“造轮子”后面用半角括号不符合《标点符号用法》(中华人民共和国国家标准),这明显更不纯洁嘛。
> 显然不是,有谁记得和乔布斯同月去世的丹尼斯·里奇呢?
虽然但是……这里毫无说服力。至今我都会时不时拖出 DMR 的历史言论来批判他在 C 里面的垃圾设计,不过也不是很频繁——就同辈来说,至少 Ken Thompson 明显比他烂多了。
相比之下,Jobs 的烂得“毫无设计”差不多成了常识。毕竟他没本事发明什么管道信号量之类的东西,对吧?(时不时得科普一代 iPhone 基本被当时 WM 设备吊打和强行吹捧小屏机被翻案这么 low 的黑历史,我也很无奈啊。)
> 这个东西首行缩进的设置都够呛,都是厘米以单位的
这个有点莫名其妙,不以厘米为单位,难道还用英寸或者数空格数?
> 也就是说收费开源是被允许的。
虽然结论没错,这论证过程倒真有些像“许多开源小将不懂何为开源却大谈开源”。
去看看 OSD 第一条,禁止收费直接被踢出开源,就不用下文那么弱鸡的解释了。
> 这个文件系统的稳定性远远超过所谓的什么 xfs ext ,更不要 btrfs 了
虽然但是,要不要跟 ntfs-3g 比比?
zhuanlan.zhihu.com/p/28828826这究竟是在说文件系统还是实现的设计,暂且蒙在鼓里。微软的实现我审计不了,不过 NTFS 掉数据的经验我是丰富多了。另外,考虑到垫底货 exFAT (某一段时间遇到某些存储卡上必掉数据),微软的信誉就别太指望了。
> 2021 年代的 Windows 11 ,甚至还可以运行 26 年前 windows 95 程序,而且更甚至地是不需要重新编译源码。
毕竟能编译就赢麻了吧。
说实话,我刚刚教育完小朋友(用
github.com/FrankHB/pl-docs/blob/master/zh-CN/criticisms-on-UTF-8-everywhere-manifesto.md ),真的很想干死几个滥用 Win32 A API 的废物祭天。
> 这是任何一个 Linux 系统都做不到的,他们甚至连几天前的程序都不能够兼容。
> 他们的程序会依赖特定的 C 库,依赖特定的内核版本。
建议去咬 Linus Torvalds 的系统调用 ABI 政策。
> 不要提及 Macos ,那是苹果战略性的不兼容
OS X 、macOS ,谢谢。
> 开源软件根本上就是违反软件工程的,因为其第一步就没有进行用户需求设计……
开源本身就是个许可证箩筐,其实不在乎什么工程不工程。
反过来,软件工程在很多情况下则根本是反人性的。
例如,明明我同时能作为用户和工程师完成一人项目,按软件工程的方法却强迫我先要精分才能沟通。而就是这种低效使用户需求的反馈无条件地被降低了,即便我同时是某个领域最专业的用户和工程师也无法挽救。正常起见,只有先把软件工程打死再说了。
@
Cooky 本质?我选择 WSL1 ,因为我用不到 Linux kernel (
1. 这个你得看下游自觉。比如 fcitx 这种,你确定你有本事找到及时更新的准确的非 GUI 配置方法么?(你要是维护者,当我没说。)
2. 滚的问题是不保证隔一段时间突然滚就不挂。虽然对目标用户来说恢复不是什么难事,最近一些难也罕有案例,但是没保证就是没保证。无论是被强迫定时及时滚还是滚之前必须自觉去看公告这个都挺不咋地,除了默认爱用用不用润以外就差没说“你们用户的时间就是不值钱了”。(拜托,我审计更新什么包也是得花精力的好不……)
3. 莫名其妙程度有差么。
倒是某些官方开发者认为-git 包就应该获得完整历史记录(
bugs.archlinux.org/task/34677 )、反复拒绝 makepkg 支持 shallow clone 这个要可笑的多了。
这里的荒谬性在于只有 makepkg 这个层次最适合加这个功能,如果硬是不支持(不说是否有碍于功能完整性),用户又想要,逻辑上差不多就是让用户自己实现个 makepkg 替代。然而 Arch 官方又没本事把剩余部分写得足够模块化到用户想替代就替代,要重写就是要重写一整坨的……这就实在简洁不起来了。
@
makelove “私货”例子。↑
@
Buges 一个 pacman 用舒服是一般是不可能的,AUR manager 你不用么。
极端点说,pacman.conf 还不是要手动编辑( yay 倒是能自己直接命令行改配置)?
另外要充分发挥简单,自己打包,pacman 也没打算代替 makepkg 吧?
命令行参数风格这个姑且算是统一了,但是“多种”这个还是跑不掉的。
系统干净……你有把握打死所有认为 systemd 不干净的么……