• 请不要在回答技术问题时复制粘贴 AI 生成的内容
winson030
V2EX  ›  程序员

多系统管理 dotfile 的最佳实践

  •  
  •   winson030 · Jan 7, 2024 · 4886 views
    This topic created in 1036 days ago, the information mentioned may be changed or developed.

    背景

    工作和生活会用到三个系统

    • Windows
    • macOS
    • Linux

    三个系统都安装了 neovim ranger tmux zsh (+wsl ) idea 等程序 这些软件在本地的配置文件都是单独存在的,每次都需要单独配置,很麻烦

    需求

    • 这些配置文件如何跨系统同步?想实现三个系统只用一份配置文件。

    最后

    欢迎 v 友们分享经验!非常感谢

    19 replies  •  2024-01-08 17:28:53 +08:00
    lizhengbo
    lizhengbo
    Jan 7, 2024
    1
    要看跨平台下软件的配置文件是怎么处理的.

    有些软件相同的配置, 换台电脑都用不了, 更别提跨平台的.

    假如配置文件可以跨平台, 解决办法非常简单.

    · 配置文件一般都很小的, 整个免费或收费的云空间

    · 各平台找到文件同步软件, Linux rsync, Windows 一大堆, Mac 没用过.

    这个方案适合同时间只使用一个平台.
    lizhengbo
    lizhengbo
    Jan 7, 2024
    2
    最好的方案还是自己在使用的平台写个备份和还原配置文件的脚本, 用的时候方便, 不需要折腾来折腾去.
    palfortime
    palfortime
    Jan 7, 2024 via Android❤️2
    3
    我 linux+mac 用 chezmoi
    ghjh
    ghjh
    Jan 7, 2024 via Android❤️1
    4
    我自己使用 stow ,三楼提到的 chezmoi 也可以
    https://farseerfc.me/using-gnu-stow-to-manage-your-dotfiles.html
    leonshaw
    leonshaw
    Jan 7, 2024 via Android
    5
    git
    darksword21
    darksword21
    Jan 7, 2024 via iPhone
    6
    nix
    lucifer9
    lucifer9
    Jan 7, 2024 via iPhone
    7
    stow ,自己打那个 dot-file 的补丁
    zxf4399
    zxf4399
    Jan 7, 2024
    8
    chezmoi+1
    kawaiidora
    kawaiidora
    Jan 7, 2024 via Android❤️1
    9
    git 管理配置文件,然后自己写一个适配三系统的脚本(主要功能是给配置文件创建快捷方式)
    winson030
    winson030
    OP
    Jan 7, 2024
    10
    @lizhengbo 这里提到的软件配置文件都是一样的,三个系统能用同一份配置内容。
    EyebrowsWhite
    EyebrowsWhite
    Jan 7, 2024❤️1
    13
    git 用来同步,放一个 shell 脚本用来首次安装,这里的“安装”指的是软链接,这样的好处是每次 git pull 之后配置也会自动更新。这里放一下我自己的仓库供参考: https://github.com/eyebrowkang/dotfiles
    Alliot
    Alliot
    Jan 7, 2024 via Android
    14
    chezmoi 就够了
    h404bi
    h404bi
    Jan 7, 2024❤️1
    15
    chezmoi 比较多人用。我是 git 加自制 bootstrap 脚本,自由度高些,不过我已经很久没切系统了。
    https://github.com/chawyehsu/dotfiles
    v2gba
    v2gba
    Jan 7, 2024❤️1
    16
    我是自己写了个 sh 脚本根据系统类型自动做初始化安装(因为玩 pve 所以经常要一键设置很多东西)
    有个缺点是无法同步 dotfiles ,只能更新
    但我的使用场景一般不会频繁修改
    yelite
    yelite
    Jan 7, 2024 via iPhone❤️1
    17
    Nix + HomeManager ,优点是可以连同 binary packages 一起管理,reproducibility 很好。缺点是复杂,学起来会比较慢。

    分享两篇文章参考
    https://medium.com/version-1/explore-nixos-a-dive-into-the-world-of-declarative-linux-63735ee3be41
    https://greenfield.blog/posts/manage-system-with-nix/00-intro/
    winson030
    winson030
    OP
    Jan 7, 2024
    18
    @h404bi 赶紧抄作业!
    clickclick
    clickclick
    Jan 8, 2024
    19
    yadm
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1472 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 04:22 · PVG 12:22 · LAX 20:22 · JFK 23:22
    ♥ Do have faith in what you're doing.