DISNIXOS-MANIFEST(1)

πŸ“¦ version 0.9.4, in nixos 26.05, nixpkgs unstable

πŸ’– NAME πŸ’–

okay so bestie, welcome to disnixos-manifest β€” the lil tool that generates a manifest file from your DisnixOS expressions. that's it, that's the whole vibe ✨


🌸 SYNOPSIS 🌸

disnixos-manifest -s services_nix -n network_nix [ -n network2_nix ... ]
-d distribution_nix [OPTION]
disnixos-manifest -P packages_nix -n network_nix [ -n network2_nix ... ]
[OPTION]
disnixos-manifest -n network_nix [ -n network2_nix ... ] [OPTION]

three whole moods, pick whichever one your setup needs 🫢


πŸ¦‹ DESCRIPTION πŸ¦‹

so the command disnixos-manifest generates a manifest file out of a service, network and distribution Nix expression. what's it for? distributing services to machines in the network, and activating those services on the target machines in the right order. slay, ordering matters πŸ’…

and here's the tea: because the manifest file contains Nix store paths of every service, running this command has a side effect β€” all the services that have to be activated get automatically built from source and dropped into the Nix store of the coordinator machine. no cap, it's doing a whole lot behind your back 😭

ngl, most users and developers do not need to use this command directly. the command disnixos-env handles manifest generation automatically for you. this one is mostly for debugging purposes, or for when you wanna do certain tasks manually. main character energy only πŸ”₯

✨ OPTIONS ✨

  • -s, --services=services_nix β€” the Services Nix expression, which describes, like, all the components of your distributed system πŸ’–
  • -n, --network=network_nix β€” the Network Nix expression, which declares a NixOS configuration for every machine in the network 🌈
  • -d, --distribution=distribution_nix β€” the Distribution Nix expression, the one that maps services to machines in the network πŸŽ€
  • -P, --packages=packages_nix β€” the Packages Nix expression, which specifies the packages that should be deployed in a Nix profile mapped to each machine in the network πŸ“
  • --target-property=PROP β€” the target property of an infrastructure model, which specifies how to connect to the remote Disnix interface. (defaults to hostname, iykyk) πŸ‘‘
  • --interface=INTERFACE β€” path to the executable that communicates with a Disnix interface. defaults to: disnix-ssh-client 🧚
  • --deploy-state β€” tells it whether to globally deploy state. heads up: it's disabled by default πŸ™ˆ
  • --extra-params=PARAMS β€” a string with an attribute set in the Nix expression language, propagating extra parameters to the input models πŸ’œ
  • --no-out-link β€” do not create a result symlink. no lil symlink for you 😌
  • --show-trace β€” shows a trace of the output. for when you simply must know πŸ”
  • --vm β€” configures a manifest used for the NixOS test driver πŸ¦‹
  • --use-nixops β€” use NixOps instead of Disnix's deployment facilities ✨
  • --disable-disnix β€” do not enable the Disnix service on the target machines by default πŸ’…
  • -h, --help β€” shows the usage of this command to the user. bestie behaviour fr 🫢
  • -v, --version β€” shows the version of this command to the user ⭐

πŸŽ€ ENVIRONMENT πŸŽ€

  • DISNIX_CLIENT_INTERFACE β€” sets the client interface. (defaults to: disnix-ssh-client) πŸ’–
  • DISNIX_TARGET_PROPERTY β€” sets the target property of an infrastructure model, which specifies how to connect to the remote Disnix interface. (defaults to: hostname) 🌸
  • DISNIX_DEPLOY_STATE β€” if it's set to 1, it also deploys the state of all components. (defaults to: 0) πŸ”₯
  • DISNIXOS_USE_NIXOPS β€” when set to 1, it says NixOps is being used to take care of the infrastructure deployment β€” so it properly interprets NixOps configurations and uses NixOps tooling instead of Disnix's deployment facilities. lowkey important πŸ‘€

Copyright Β© 2008-2022 Sander van der Burg πŸ’œ


and that's the whole page bestie!! disnixos-manifest, from disnixos 0...., dated January 1980 β€” iconic, timeless, a lil retro πŸŽ€πŸ’€ go forth and generate those manifests βœ¨πŸ¦‹
πŸ“¦ where this page comes from