从桌面发行版切到了无桌面的, 软件包从原来的一千多变成了两百不到, 但是装点软件之后又多了起来...
也许我需要一个清晰的软件关系管理器?

只要内存硬盘够大,无所谓

你需要 flatpak 。虽然仍然是那些软件包,但都独立打包。眼不见心不烦。

busybox+gcc 就够所有了

flatpack 是把依赖环境都打包了,这个才是没法忍的。

不用治啥时候没钱 或者 没时间 或者 没精力了,自然就不折腾了

ostree 解君愁

Fedora Silverblue 或者 NixOS ,这俩包治百病,区别是后者坑比较深

这种症状我一般推荐上 Gentoo从内核到包全是自己编译的,仓库里只有源码,应该没法更干净了

2t 根分区 随便填 硬盘空间不拿来用拿来空着也是浪费

先改变心态,再改变行为,底层逻辑不变,行为表现怎么变

没时间的时候,你自然就不会洁癖了。 说明你时间还是挺富裕的,那就折腾呗。

带依赖的东西一律放 docker ,本地只留工具链

NixOS + root on tmpfs

但有些东西不适合放 docker, 只会给自己找麻烦 空间完全够用, 就是不喜欢看见一堆不知道干什么的包. less is more.

人的问题很难用技术解决

又不会后台自启,也不影响其他的功能,管它干嘛。。

换成 nixos

不用治,折腾到头了你就是下一个林纳斯/理查德·斯托曼(狗头保命 Dokcer 是最脏的东西,默认写一堆 iptables 就不能忍,用 btrfs 存储还会建一大堆子卷。 NixOS 也不能接受,尝试过一次安装,看到安装日志打出一大堆我不需要的软件就放弃了。 如果用 Arch ,pacman 可以列出你手动安装的哪些包,以及依赖关系,有命令可以删掉不再用到的依赖。 如果用 Alpine Linux ,有一个 /etc/apk/world 文件列出了手动安装的包。apk fix 命令就能自动把不需要的包删了,把没有的包装上。 再进一步,用 Diskless 模式。类似于楼上的 root on tmpfs ,Alpine 有个 apkovl 文件来保存数据文件,可以手动 include 和 exclude ,来确保系统重新启动时,只有 apkovl 保存过的文件应用到了系统上。

私心安利一下 Alpine Linux ,说一个我印象比较深的。 alpine 默认不会装 kmod ,在 Arch Linux 上,kmod 是 linux 包的依赖。 如果对 kmod 没什么认识的话,简单说明是,接受来自内核代码的调用,自动 modprobe 内核模块的。比如在 mount btrfs 分区时,如果 btrfs 模块插入内核里,会自动调用 kmod 来帮忙。而在 Alpine 上,如果不手动 modprobe btrfs 的话,btrfs 分区是挂不上的,这对 ext4, xfs 之类东西也是一样的。

#19typo: s/如果 btrfs 模块插入内核里/如果 btrfs 模块没在内核里/

用 gentoo ,包会少一个数量级

gentoo 以外的发行版,会把一个软件库拆成 N 多个小包,譬如 git 自带的 gitk ,会单独拆成一个包

#13 说的就是你需要的

#19 那为啥要不装 kmod 呢 反正最后都要用 一个系统自带 一个不再带要手动安装 有啥区别捏?

#24好的,我是傻逼了。默认有 kmod ,是 mkinitfs 的依赖,不知道我啥时候形成了没有的认知。 不过 mount 的时候要手动 modprobe 是确实的,我还没找到为什么要这样的原因。

CoreOS (现在叫 Flatcar Linux )可解…系统没有包管理器,想跑个啥都得用 docker当然你要是说“docker 就是给自己找麻烦”,赛博洁癖就已经挺麻烦的了,不是嘛😂

install gentoo

全部丢虚拟机?一个事项一个虚拟机,坚决不用一个虚拟机做两件事,方便销毁丢弃

以前我也有, 慢慢的没时间没精力了, 自然也就没了

但是日常维护时间会多一个数量级,除非自己是或身边有客服级大佬

按我以前经验,还是人太闲了,真有急事忙起来了,你就不在乎了。

一直是 Arch, 系统甚至还没装 python. 比如各种直通共享什么的, 我宁愿直装来的方便点 (指 Windows 下的 WSL 和 Docker 自己倒是略懂, 但我的包已经很少了包怎么降一个数量级?

fedora sliverblue ,必要的包(比如输入法,shell )作为 overlay 安装开发工具之类的放容器sliverblue 的每次更新都是从 Fedora 服务器下载最新的镜像然后再 apply 本地更改,所以至少不会包越用越多

你想想自己 linux 新手时的样子,就会明白一个数量级是很保守的估计:-)