配置 nixpkgs.config.allowUnfree = true; # 允许安装非自由软件包 # 系统级包列表 environment.systemPackages = with = "github:nixos/nixpkgs/nixos-unstable"; quickshell = { url = "github:outfoxxed/quickshell "; inputs.nixpkgs.follows = "nixpkgs"; }; noctalia = { url = "github:noctalia-dev /noctalia-shell"; inputs.nixpkgs.follows = "nixpkgs"; inputs.quickshell.follows = "quickshell "; }; }; outputs = inputs@{ self, nixpkgs, ... }: { nixosConfigurations.nixos = nixpkgs.lib.nixosSystem
import <nixpkgs> {} }: pkgs.redis.overrideAttrs (old: { # no need for systemd support in our docker import <nixpkgs> { system = "x86_64-linux";} }: # nixpkgs package set
需系统级更新)隔离技术采用Snap/PPAFlatpak/rpm-ostreeAUR用户自行处理进阶解决方案NixOS的纯函数式包管理《Bash》 nix-env -iA nixpkgs.python27 nixpkgs.python39 # 完全隔离的依赖树 每个软件包拥有独立存储路径(如/nix/store/<hash>-python-2.7.18)2.
根据推测,亚马逊的构建系统“Brazil”在原理上有点类似 Nix/NixPkgs,也就是基于几乎一切现有包的声明、具备完全的可重现能力。 Gentoo、NixPkgs、Guix、AUR 的软件包维护者们各自举起自己的神器,想让整个软件世界臣服在自己脚下。 也许 NixPkgs 和 Guix 都比较接近我想要的效果,能在一定程度上满足我对理想构建系统的要求(当然,semver 固定这类没钱就不可能实现的要求除外)。 但一方面我听说过关于 NixPkgs 的抱怨,另一方面我几乎没听人提起过 Guix,这两种情况似乎都不太妙。 作为个人,我也没那个能力去迎难而上。
/var/empty/.nix-profile/etc/profile.d/nix.sh nixbld1@sysresccd ~ $ nix-channel --remove nixpkgs nixbld1 fileSystems."/" = {}; boot.loader.grub.enable = false; } EOF nixbld1@sysresccd ~ $ export NIX_PATH=nixpkgs sysresccd ~ # unset NIXOS_CONFIG sysresccd ~ # export NIX_PATH=nixpkgs=/var/empty/.nix-defexpr/channels
monolith使用 Snapcraft 安装(GNU/Linux):snap install monolith使用 Guix 安装(GNU/Linux):guix install monolith使用 NixPkgs 安装:nix-env -iA nixpkgs.monolith使用 Flox 安装:flox install monolith使用 Pacman 安装(Arch Linux):pacman -S monolith
相比之下,Nix 存储库在 Nix 存储库中提供了许多派生版本——Flox 称之为“Nixpkgs 包”的超过 120,000 个。 有趣的是,现代 Nixpkgs 包中的绝大多数软件都是跨构建在公共构建农场上的。然后将其存储在托管在 1.5 PB 实例上的二进制缓存中。
再开一个shell,再执行pkttyagent --process PID 再回到第一个shell执行pkexec visudo 参考: https://github.com/NixOS/nixpkgs
NIXERY_STORAGE_BACKEND=filesystem \ -e STORAGE_PATH=/opt/data/store \ -e NIXERY_PKGS_REPO=https://github.com/NixOS/nixpkgs NIXERY_STORAGE_BACKEND=gcs \ -e GCS_BUCKET=your-gcs-bucket-name \ -e NIXERY_PKGS_REPO=https://github.com/NixOS/nixpkgs
blog.rust-lang.org/inside-rust/2020/07/23/rust-ci-is-moving-to-github-actions.html 使用 Nix 交叉编译软件到 Redox Nixpkgs
import <nixpkgs> {} }: pkgs.dockerTools.buildImage { name = "custom-python"; contents = [ pkgs.python39 pkgs.python39Packages.requests pkgs.python39Packages.numpy ]; } 然后通过 Nix 构建镜像: nix-build -E 'with import <nixpkgs
paru -S opencode-bin # Arch Linux mise use-g opencode # Any OS nix run nixpkgs
nix-community/home-manager[5] Stars: 4.4k License: MIT Home Manager using Nix 是一个基于 Nix 包管理器和 Nixpkgs
DefinitelyTyped/DefinitelyTyped kubernetes/kubernetes Homebrew/homebrew-core ansible/ansible nodejs/node NixOS/nixpkgs
最明显的例子可能就是构建系统相关的内容:你一眼就能看出哪些模型“见过”大量的 nixpkgs 数据。而即便是最好的模型,似乎也很难很好地处理 Bazel,甚至有时连 CMake 都搞不定。
在其年度Octoverse报告中,GitHub指出,在过去两年中,NixOS/nixpkgs在开源项目贡献者数量方面排名第一。
elf-council-frontend、solana-labs / token-list、education / GitHubGraduation-2022、taozhiyu / TyProAction、NixOS / nixpkgs
Linux brew install charmbracelet/tap/freeze # Arch Linux (btw) pacman -S freeze # Nix nix-env -iA nixpkgs.charm-freeze
特性检测: 还新增了 c++20 特性检测: Xrepo 包虚拟环境管理 进入虚拟环境 xmake 自带的 xrepo 包管理工具,现在已经可以很好的支持包虚拟机环境管理,类似 nixos 的 nixpkgs
import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/3590f02e7d5760e52072c1a729ee2250b5560746