V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
zuotun
V2EX  ›  Linux

赛博洁癖怎么治?

  •  
  •   zuotun · 2023-11-08 01:02:27 +08:00 · 5283 次点击
    这是一个创建于 368 天前的主题,其中的信息可能已经有所发展或是发生改变。

    从桌面发行版切到了无桌面的, 软件包从原来的一千多变成了两百不到, 但是装点软件之后又多了起来...

    也许我需要一个清晰的软件关系管理器?

    35 条回复    2023-11-10 10:48:12 +08:00
    oneisall8955
        1
    oneisall8955  
       2023-11-08 01:35:31 +08:00 via Android
    只要内存硬盘够大,无所谓
    Mogeko
        2
    Mogeko  
       2023-11-08 02:07:32 +08:00 via iPhone   ❤️ 1
    你需要 flatpak 。

    虽然仍然是那些软件包,但都独立打包。

    眼不见心不烦。
    passive
        3
    passive  
       2023-11-08 02:48:13 +08:00 via Android
    busybox+gcc 就够所有了
    wizardyhnr
        4
    wizardyhnr  
       2023-11-08 02:48:17 +08:00   ❤️ 2
    flatpack 是把依赖环境都打包了,这个才是没法忍的。
    chendy
        5
    chendy  
       2023-11-08 08:03:33 +08:00
    不用治
    啥时候没钱 或者 没时间 或者 没精力了,自然就不折腾了
    vcn8yjOogEL
        6
    vcn8yjOogEL  
       2023-11-08 08:07:31 +08:00 via Android
    ostree 解君愁
    amber0317
        7
    amber0317  
       2023-11-08 08:41:14 +08:00
    Fedora Silverblue 或者 NixOS ,这俩包治百病,区别是后者坑比较深
    NessajCN
        8
    NessajCN  
       2023-11-08 08:47:56 +08:00
    这种症状我一般推荐上 Gentoo
    从内核到包全是自己编译的,仓库里只有源码,应该没法更干净了
    ltkun
        9
    ltkun  
       2023-11-08 08:50:47 +08:00 via Android
    2t 根分区 随便填 硬盘空间不拿来用拿来空着也是浪费
    knightgao2
        10
    knightgao2  
       2023-11-08 09:02:03 +08:00   ❤️ 3
    先改变心态,再改变行为,底层逻辑不变,行为表现怎么变
    keymao
        11
    keymao  
       2023-11-08 09:16:48 +08:00
    没时间的时候,你自然就不会洁癖了。 说明你时间还是挺富裕的,那就折腾呗。
    BugCry
        12
    BugCry  
       2023-11-08 09:35:34 +08:00 via Android
    带依赖的东西一律放 docker ,本地只留工具链
    zzzsy
        13
    zzzsy  
       2023-11-08 09:46:09 +08:00 via Android
    NixOS + root on tmpfs
    zuotun
        14
    zuotun  
    OP
       2023-11-08 12:14:22 +08:00
    @BugCry 但有些东西不适合放 docker, 只会给自己找麻烦

    @oneisall8955 空间完全够用, 就是不喜欢看见一堆不知道干什么的包. less is more.
    wheat0r
        15
    wheat0r  
       2023-11-08 12:42:58 +08:00
    人的问题很难用技术解决
    Maboroshii
        16
    Maboroshii  
       2023-11-08 12:48:35 +08:00 via Android
    又不会后台自启,也不影响其他的功能,管它干嘛。。
    zim298247
        17
    zim298247  
       2023-11-08 12:53:37 +08:00
    换成 nixos
    LindsayZhou
        18
    LindsayZhou  
       2023-11-08 12:55:09 +08:00
    不用治,~~折腾到头了你就是下一个林纳斯/理查德·斯托曼(狗头保命 ~~

    Dokcer 是最脏的东西,默认写一堆 iptables 就不能忍,用 btrfs 存储还会建一大堆子卷。
    NixOS 也不能接受,尝试过一次安装,看到安装日志打出一大堆我不需要的软件就放弃了。


    如果用 Arch ,pacman 可以列出你手动安装的哪些包,以及依赖关系,有命令可以删掉不再用到的依赖。

    如果用 Alpine Linux ,有一个 /etc/apk/world 文件列出了手动安装的包。
    apk fix 命令就能自动把不需要的包删了,把没有的包装上。
    再进一步,用 Diskless 模式。
    类似于楼上的 root on tmpfs ,Alpine 有个 apkovl 文件来保存数据文件,可以手动 include 和 exclude ,来确保系统重新启动时,只有 apkovl 保存过的文件应用到了系统上。
    LindsayZhou
        19
    LindsayZhou  
       2023-11-08 13:07:43 +08:00
    私心安利一下 Alpine Linux ,说一个我印象比较深的。

    alpine 默认不会装 kmod ,在 Arch Linux 上,kmod 是 linux 包的依赖。

    如果对 kmod 没什么认识的话,简单说明是,接受来自内核代码的调用,自动 modprobe 内核模块的。
    比如在 mount btrfs 分区时,如果 btrfs 模块插入内核里,会自动调用 kmod 来帮忙。

    而在 Alpine 上,如果不手动 modprobe btrfs 的话,btrfs 分区是挂不上的,这对 ext4, xfs 之类东西也是一样的。
    LindsayZhou
        20
    LindsayZhou  
       2023-11-08 13:08:54 +08:00
    @LindsayZhou #19
    typo:
    s/如果 btrfs 模块插入内核里/如果 btrfs 模块没在内核里/
    duke807
        21
    duke807  
       2023-11-08 13:09:48 +08:00 via Android
    用 gentoo ,包会少一个数量级
    duke807
        22
    duke807  
       2023-11-08 13:11:28 +08:00 via Android
    gentoo 以外的发行版,会把一个软件库拆成 N 多个小包,譬如 git 自带的 gitk ,会单独拆成一个包
    0o0O0o0O0o
        23
    0o0O0o0O0o  
       2023-11-08 13:13:51 +08:00
    #13 说的就是你需要的
    fdghjk
        24
    fdghjk  
       2023-11-08 13:14:28 +08:00
    @LindsayZhou #19 那为啥要不装 kmod 呢 反正最后都要用 一个系统自带 一个不再带要手动安装 有啥区别捏?
    LindsayZhou
        25
    LindsayZhou  
       2023-11-08 13:58:28 +08:00
    @fdghjk #24
    好的,我是傻逼了。

    默认有 kmod ,是 mkinitfs 的依赖,不知道我啥时候形成了没有的认知。

    不过 mount 的时候要手动 modprobe 是确实的,我还没找到为什么要这样的原因。
    ETiV
        26
    ETiV  
       2023-11-08 14:12:21 +08:00 via iPhone   ❤️ 1
    CoreOS (现在叫 Flatcar Linux )可解…

    系统没有包管理器,想跑个啥都得用 docker

    当然你要是说“docker 就是给自己找麻烦”,赛博洁癖就已经挺麻烦的了,不是嘛😂
    TrembleBeforeMe
        27
    TrembleBeforeMe  
       2023-11-08 14:24:20 +08:00
    install gentoo
    totoro625
        28
    totoro625  
       2023-11-08 14:32:41 +08:00
    全部丢虚拟机?一个事项一个虚拟机,坚决不用一个虚拟机做两件事,方便销毁丢弃
    jurassic2long
        29
    jurassic2long  
       2023-11-08 14:36:28 +08:00
    以前我也有, 慢慢的没时间没精力了, 自然也就没了
    wtdd
        30
    wtdd  
       2023-11-08 16:07:28 +08:00
    @duke807 但是日常维护时间会多一个数量级,除非自己是或身边有客服级大佬
    Ally
        31
    Ally  
       2023-11-08 16:33:05 +08:00   ❤️ 1
    按我以前经验,还是人太闲了,真有急事忙起来了,你就不在乎了。
    zuotun
        32
    zuotun  
    OP
       2023-11-08 17:42:13 +08:00
    @LindsayZhou 一直是 Arch, 系统甚至还没装 python.

    @ETiV 比如各种直通共享什么的, 我宁愿直装来的方便点 (指 Windows 下的 WSL 和 Docker

    @wtdd 自己倒是略懂, 但我的包已经很少了包怎么降一个数量级?
    yanqiyu
        33
    yanqiyu  
       2023-11-08 19:05:04 +08:00
    fedora sliverblue ,必要的包(比如输入法,shell )作为 overlay 安装
    开发工具之类的放容器

    sliverblue 的每次更新都是从 Fedora 服务器下载最新的镜像然后再 apply 本地更改,所以至少不会包越用越多
    wtdd
        34
    wtdd  
       2023-11-08 20:20:13 +08:00
    @zuotun 你想想自己 linux 新手时的样子,就会明白一个数量级是很保守的估计:-)
    julyclyde
        35
    julyclyde  
       2023-11-10 10:48:12 +08:00
    是个好习惯
    但要认识到,依赖关系是客观存在的。当你需要那个“主”软件的时候,其依赖包就是必要之恶
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1574 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:10 · PVG 01:10 · LAX 09:10 · JFK 12:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.