Nixpkgs PR: NixOS/nixpkgs#365493
A Fluent Bit NixOS module.
This only supports the YAML configuration format.
The Fluent Bit configuration can be specified as a path (for runtime configuration) or attribute set (for build time configuration).
Key:
🤖 = Generated
.
│ # Build inputs.
├── inputs/
│ ├── main/
│ │ └── nix/
│ │ │ # Nix packages.
│ │ ├── packages/
│ │ │ └── {package}.nix
│ │ │
│ │ └── nixos/
│ │ │ # NixOS configurations.
│ │ ├── configurations/
│ │ │ └── {configuration}.nix
│ │ │
│ │ │ # NixOS modules.
│ │ └── modules/
│ │ └── {module}.nix
│ └── test/
│ └── nix/
│ └── nixos/
│ │ # NixOS module tests.
│ └── modules/
│ └── {test}.nix
│
│ # Build outputs.
├── outputs/ 🤖
│ └── ...
│
│ # Nix path configuration.
├── flake.nix
└── flake.lock 🤖
- Nix
- GNU Core Utilities
- Git
A reproducible shell can be created with Nix (described by the flake.nix
+ flake.lock
files).
Nix can be installed with the Determinate Nix Installer (guide).
Afterwards, you can change into the project directory and create the reproducible shell with nix develop
.
You can also install the direnv shell extension to automatically load and unload the reproducible shell when you enter and leave the project directory.
Unlike nix develop
which drops you in a nested Bash shell, direnv extracts the environment variables from the nested Bash shell into your current shell (e.g. Bash, Zsh, Fish).
The flake.lock
file locks the inputs (e.g. the Nixpkgs revision) used to evaluate flake.nix
files. To update the inputs (e.g. to get newer packages in a later Nixpkgs revision), you'll need to update your flake.lock
file.
# Update flake.lock.
nix flake update