Skip to content

Latest commit

 

History

History
75 lines (57 loc) · 2.31 KB

readme.md

File metadata and controls

75 lines (57 loc) · 2.31 KB

Nix Fluent Bit

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).

Layout

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 🤖

Tools

  • 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).

Notes

Updating Flake Locks

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