Merge pull request 'Docs: authorizedKeys is a list, small fixups' (#2169) from hsjobeki/clan-core:hsjobeki-docs/inventory into main

This commit is contained in:
clan-bot
2024-09-25 12:48:36 +00:00
8 changed files with 7 additions and 179 deletions

View File

@@ -39,7 +39,7 @@ exclude_docs: |
/drafts/ /drafts/
nav: nav:
- index.md - Home: index.md
- Getting Started: - Getting Started:
- getting-started/index.md - getting-started/index.md
- Installer: getting-started/installer.md - Installer: getting-started/installer.md

View File

@@ -1,2 +1,2 @@
# Blog # :fontawesome-solid-blog: Blog

View File

@@ -1,3 +1,3 @@
# Core Concepts # :simple-abstract: Concepts
TODO TODO

View File

@@ -126,7 +126,7 @@ Adding or configuring a new machine requires two simple steps:
# IMPORTANT! Add your SSH key here # IMPORTANT! Add your SSH key here
# e.g. > cat ~/.ssh/id_ed25519.pub # e.g. > cat ~/.ssh/id_ed25519.pub
users.users.root.openssh.authorizedKeys.keys = "__YOUR_SSH_KEY__"; users.users.root.openssh.authorizedKeys.keys = [ "__YOUR_SSH_KEY__" ];
# ... # ...
} }

View File

@@ -1,4 +1,4 @@
# Getting Started # :material-clock-fast: Getting Started
Create your own clan with these initial steps and manage a fleet of machines with one single testable git repository! Create your own clan with these initial steps and manage a fleet of machines with one single testable git repository!

View File

@@ -4,9 +4,7 @@ hide:
- toc - toc
--- ---
# Home # :material-home: Welcome to **Clan**'s awesome documentation
## Welcome to **Clan**'s documentation
[Getting Started](./getting-started/index.md){ .md-button } [Getting Started](./getting-started/index.md){ .md-button }

View File

@@ -1,4 +1,4 @@
# :material-book: Manual # :material-book: Guides
Instructions and explanations for practical Implementations ordered by Topics. Instructions and explanations for practical Implementations ordered by Topics.

View File

@@ -1,170 +0,0 @@
# BuildClan
This provides an overview of the available arguments of the `buildClan` function.
!!! Note "Flake-parts"
Each attribute is also available via `clan.<option>`
For example `clan.inventory = ...;` is equivalent to `buildClan { inventory = ...; }`.
### directory
The directory containing the clan.
A typical directory structure could look like this:
```
.
├── flake.nix
├── assets
├── machines
├── modules
└── sops
```
buildClan argument: `directory`
**Type**: `path`
**Default**:
```nix
"Root directory of the flake"
```
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)
### inventory
The `Inventory` submodule.
For details see the [Inventory](./inventory.md) documentation.
**Type**: `submodule`
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)
### machines
A mapping of machine names to their nixos configuration.
???+ example
```nix
machines = {
my-machine = {
# Your nixos configuration
};
};
```
**Type**: `module`
**Default**:
```nix
{ }
```
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)
### meta
Global information about the clan.
**Type**: `null or (submodule)`
**Default**:
```nix
null
```
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)
### meta.name
Needs to be (globally) unique, as this determines the folder name where the flake gets downloaded to.
**Type**: `null or string`
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)
### pkgsForSystem
A function that maps from architecture to pkg. `( string -> pkgs )`
If specified this nixpkgs will be only imported once for each system.
This improves performance, but all nipxkgs.* options will be ignored.
**Type**: `function that evaluates to a(n) (null or (attribute set))`
**Default**:
```nix
"Lambda :: String -> { ... } | null"
```
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)
### specialArgs
Extra arguments to pass to nixosSystem i.e. useful to make self available
**Type**: `attribute set of raw value`
**Default**:
```nix
{ }
```
:simple-git: [interface.nix](https://git.clan.lol/clan/clan-core/src/branch/main/lib/build-clan/interface.nix)