2.0 KiB
2.0 KiB
| marp | class | paginate | footer |
|---|---|---|---|
| true | invert | true | Albert Vala, Filip Kohout, Nix flakes & Nix command |
Nix flakes & Nix command
nix command
- Nove nix cli
Proc zmena?
- Protoze treba nix-shell se nemel pouzivat na nix-shell -p
- Flake support
Porovnani
nix-shell -p cowsay nix shell nixpkgs#cowsay
nix eval nix why-depends
Flakes
Why tho?
- Lockfiles.
- Flake inputs
Na co flaku pouzit?
Jak pouzit flakes na system configuraci?
- Flake je jen cast zbytek je v normalnich nix filech
- Zbytek konfigurace bere inputy z flaky.
- Neprijdeme o nic jen mame lock file a moznost flake jako inputu
Flake example
{
description = "NixOS configuration";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
zen-browser.url = "github:0xc000022070/zen-browser-flake";
};
outputs = inputs @ {
nixpkgs,
home-manager,
zen-browser,
...
}: {
nixosConfigurations = {
laptop = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./laptop/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = false;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {inherit zen-browser;};
home-manager.users.albert = import ./modules/home.nix;
}
];
};
};
};
}