diff options
| author | Lilah Tascheter <lilah@lunabee.space> | 2025-11-03 18:26:23 -0600 |
|---|---|---|
| committer | jgart <jgart@dismail.de> | 2025-12-02 12:49:38 -0600 |
| commit | 07adc47e55794586a510ec7e2b1977b8c82c2b4c (patch) | |
| tree | fbc559f18d8c396b9e5ad2b4cd1818ab693fc508 /doc | |
| parent | f0d971ee1b2f7101e46580ea76374f873dfc9b3f (diff) | |
doc: home: Document Himitsu services.
* doc/guix.texi (Home Services)[Secrets Home Services]: New section...
(Top,Home Services): ...and add to tables of contents.
Change-Id: Ie290d2ad642c1679c410bbb96d1d7e5283988b7a
Signed-off-by: jgart <jgart@dismail.de>
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/guix.texi | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index a83219a9fd0..df75ebd593f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi | |||
| @@ -482,6 +482,7 @@ Home Services | |||
| 482 | * Media: Media Home Services. Services for managing media. | 482 | * Media: Media Home Services. Services for managing media. |
| 483 | * Sway: Sway window manager. Setting up the Sway configuration. | 483 | * Sway: Sway window manager. Setting up the Sway configuration. |
| 484 | * Networking: Networking Home Services. Networking services. | 484 | * Networking: Networking Home Services. Networking services. |
| 485 | * Secrets: Secrets Home Services. Services for storing secrets. | ||
| 485 | * Miscellaneous: Miscellaneous Home Services. More services. | 486 | * Miscellaneous: Miscellaneous Home Services. More services. |
| 486 | 487 | ||
| 487 | Platforms | 488 | Platforms |
| @@ -50278,6 +50279,7 @@ services)}. | |||
| 50278 | * Niri: Niri window manager. Setting up the Niri. | 50279 | * Niri: Niri window manager. Setting up the Niri. |
| 50279 | * Sway: Sway window manager. Setting up the Sway configuration. | 50280 | * Sway: Sway window manager. Setting up the Sway configuration. |
| 50280 | * Networking: Networking Home Services. Networking services. | 50281 | * Networking: Networking Home Services. Networking services. |
| 50282 | * Secrets: Secrets Home Services. Services for storing secrets. | ||
| 50281 | * Miscellaneous: Miscellaneous Home Services. More services. | 50283 | * Miscellaneous: Miscellaneous Home Services. More services. |
| 50282 | @end menu | 50284 | @end menu |
| 50283 | @c In addition to that Home Services can provide | 50285 | @c In addition to that Home Services can provide |
| @@ -53415,6 +53417,96 @@ documentation of the system service (@pxref{Networking Services, | |||
| 53415 | @code{syncthing-service-type}}). | 53417 | @code{syncthing-service-type}}). |
| 53416 | @end defvar | 53418 | @end defvar |
| 53417 | 53419 | ||
| 53420 | @node Secrets Home Services | ||
| 53421 | @subsection Secrets Home Services | ||
| 53422 | |||
| 53423 | The @code{(gnu home services secrets)} module provides services pertaining to | ||
| 53424 | storing secrets, notably including password managers. | ||
| 53425 | |||
| 53426 | @subsubheading Himitsu Services | ||
| 53427 | |||
| 53428 | @uref{https://himitsustore.org/, Himitsu} is a daemon for storing arbitrary | ||
| 53429 | secrets encrypted by a single password. The daemon operates alongside a | ||
| 53430 | prompter, which asks the user for permission when an application requests a | ||
| 53431 | secret, and for the store password on first use in a session. Neither Himitsu | ||
| 53432 | nor its underlying cryptography library have been indepednently audited. | ||
| 53433 | |||
| 53434 | @defvar home-himitsu-service-type | ||
| 53435 | This service provides the main Himitsu store daemon. It will not launch unless | ||
| 53436 | you have a store set up - run @code{himitsu-store -i} after the service is added | ||
| 53437 | to your profile to create it, and then @code{herd start himitsud} to restart the | ||
| 53438 | service. Configuration is as follows: | ||
| 53439 | @end defvar | ||
| 53440 | |||
| 53441 | @deftp {Data Type} home-himitsu-configuration | ||
| 53442 | @table @asis | ||
| 53443 | @item @code{package} (default: @code{himitsu}) | ||
| 53444 | Package to find @code{himitsud} in. | ||
| 53445 | |||
| 53446 | @item @code{notify-reuse} (optional) | ||
| 53447 | Interpreted shell command to run on application access to an already-approved | ||
| 53448 | secret. | ||
| 53449 | |||
| 53450 | @item @code{prompter} (default: @code{(wrap-himitsu-prompter (file-append hiprompt-gtk "/bin/hiprompt-gtk"))}) | ||
| 53451 | Path to a prompter binary. Defaults to @code{hiprompt-gtk}, the reference | ||
| 53452 | implementation. If your prompter is graphical, you should pass it through the | ||
| 53453 | provided @code{wrap-himitsu-prompter} procedure, which will autodetect a running | ||
| 53454 | display to prompt on, due to the Himitsu daemon starting before the display | ||
| 53455 | server is online. | ||
| 53456 | |||
| 53457 | @item @code{extra-options} (optional) | ||
| 53458 | List of extra strings or G-expressions to insert verbatim into the Himitsu | ||
| 53459 | configuration file. Each list element gets its own line. | ||
| 53460 | |||
| 53461 | @end table | ||
| 53462 | @end deftp | ||
| 53463 | |||
| 53464 | Himitsu can be used through its command-line tool @code{hiq} or through any | ||
| 53465 | number of supporting services, providing compatability to other applications. | ||
| 53466 | Git credential support may be provided simply by adding the @code{himitsu-git} | ||
| 53467 | package to your profile, but other such supporting services are listed below: | ||
| 53468 | |||
| 53469 | @defvar home-himitsu-ssh-service-type | ||
| 53470 | This service provides an @code{ssh-agent} implementation that stores keys | ||
| 53471 | through Himitsu. You may interact with a running daemon through | ||
| 53472 | @code{hissh-import} and @code{hissh-export}. | ||
| 53473 | @end defvar | ||
| 53474 | |||
| 53475 | @deftp {Data Type} home-himitsu-ssh-configuration | ||
| 53476 | @table @asis | ||
| 53477 | @item @code{package} (default: @code{himitsu-ssh}) | ||
| 53478 | Package to find @code{hissh-agent} in. | ||
| 53479 | |||
| 53480 | @item @code{persist} (default: @code{'(session 300 refuse)}) | ||
| 53481 | List of options given when prompting to allow this service access to your list | ||
| 53482 | of keys. The option chosen decides how long @code{himitsu-ssh} has this access. | ||
| 53483 | Options can be either @code{'session} (access is retained until the daemon | ||
| 53484 | closes), @code{'refuse} (access is declined and the prompter will not ask | ||
| 53485 | again), @code{'skip} (ask again next use), or a numerical access timeout in | ||
| 53486 | seconds. | ||
| 53487 | |||
| 53488 | @item @code{disclose} (default: @code{'(skip session 300)}) | ||
| 53489 | List of options given when prompting to allow this service use of your secret | ||
| 53490 | keys. Has the same format as @code{persist}. | ||
| 53491 | |||
| 53492 | @end table | ||
| 53493 | @end deftp | ||
| 53494 | |||
| 53495 | @defvar home-himitsu-secret-service-type | ||
| 53496 | This service provides a | ||
| 53497 | @uref{https://specifications.freedesktop.org/secret-service/latest/, freedesktop | ||
| 53498 | Secret Service} implementation, allowing Himitsu to replace | ||
| 53499 | @pxref{Desktop Services, gnome-keyring-service-type} and | ||
| 53500 | @pxref{Desktop Services, kwallet-service-type}. | ||
| 53501 | @end defvar | ||
| 53502 | |||
| 53503 | @deftp {Data Type} home-himitsu-secret-service-configuration | ||
| 53504 | @table @asis | ||
| 53505 | @item @code{package} (default: @code{himitsu-secret-service}) | ||
| 53506 | Package to find @code{hisecrets-agent} in. | ||
| 53507 | |||
| 53508 | @end table | ||
| 53509 | @end deftp | ||
| 53418 | 53510 | ||
| 53419 | @node Miscellaneous Home Services | 53511 | @node Miscellaneous Home Services |
| 53420 | @subsection Miscellaneous Home Services | 53512 | @subsection Miscellaneous Home Services |
