
优势
当软件包依赖版本不一致时,nix 包管理可以兼容较新版本,且安装软件包时是无需 root 权限
例如,安装 mongodb 时,mongodb 使用的 glibc 版本较高
而 glibc 又是系统基础组件,不能随便升级(系统上已安装其他应用依赖旧的 glibc)
安装 nix
sh <(curl -L https://nixos.org/nix/install) --no-daemon
搜索软件包
nix-channel --add https://nixos.org/channels/nixpkgs-unstable nix-channel --update export NIXPKGS_ALLOW_UNFREE=1 nix-env -iA nixpkgs.mongodb-5 nix-shell -p mongodb-5 --run "mongo --version" 1 zachgenius 2022-11-03 13:37:26 +08:00 nice |
2 JohnBull 2022-11-03 15:14:31 +08:00 这东西很合我的口味 |
3 ffhigh 2022-11-03 16:42:13 +08:00 via iPhone |
4 okampfer 2022-11-03 16:55:50 +08:00 LZ ,nix 的国内镜像源(官方源被墙了)你使用正常吗?我的 mac 上怎么都用不了镜像。 |
5 novolunt OP @okampfer 没用镜像源,用的是不是国内的网络。 清华大学源试看看,注意是 nixpkgs 不是 nixos https://mirrors.tuna.tsinghua.edu.cn/help/nix/ |
6 garywill 2022-11-03 20:55:57 +08:00 期待有人写一篇 nix vs guix vs linuxbrew 的体验比较 |
7 novolunt OP @garywill 如果你不是使用 nixpkgs 而是 nixos ,那么你甚至可以把配置文件导出也就几百 kb ,从而来起同样配置的 vm 运行环境。nix 已有网站直接支持,比如 replit.com, 可以在非 root 环境配置需要的依赖包。https://github.com/Snawoot/ss-replit/blob/master/replit.nix |