Commit Graph

2897 Commits

Author SHA1 Message Date
pennae
93c57a9884
Merge pull request #185056 from pennae/option-docs-md
nixos/*: more option docs conversions
2022-08-05 17:36:49 +02:00
olaf
de0c734300 for consistency use bob in example instead of joe 2022-08-05 13:13:24 +02:00
pennae
61e93df189 nixos/*: automatically convert option docs to MD
once again using nix-doc-munge (69d080323a)
2022-08-03 22:46:41 +02:00
pennae
3aebb4a2be nixos/*: normalize link format
make (almost) all links appear on only a single line, with no
unnecessary whitespace, using double quotes for attributes. this lets us
automatically convert them to markdown easily.

the few remaining links are extremely long link in a gnome module, we'll
come back to those at a later date.
2022-08-03 21:57:46 +02:00
pennae
9c8531c8a5 nixos/*: replace <replaceable>s with «thing»
we can't embed syntactic annotations of this kind in markdown code
blocks without yet another extension. replaceable is rare enough to make
this not much worth it, so we'll go with «thing» instead. the module
system already uses this format for its placeholder names in attrsOf
paths.
2022-08-03 21:08:58 +02:00
pennae
16102dce2f nixos/*: replace <code> in option docs with <literal>
markdown can't represent the difference without another extension and
both the html manual and the manpage render them the same, so keeping the
distinction is not very useful on its own. with the distinction removed
we can automatically convert many options that use <code> tags to markdown.

the manpage remains unchanged, html manual does not render
differently (but class names on code tags do change from "code" to "literal").
2022-08-03 21:03:23 +02:00
pennae
694d5b19d3 nixos/*: replace </para><para> with double linebreaks
our xslt already replaces double line breaks with a paragraph close and
reopen. not using explicit para tags lets nix-doc-munge convert more
descriptions losslessly.

only whitespace changes to generated documents, except for two
strongswan options gaining paragraph two breaks they arguably should've
had anyway.
2022-08-03 20:39:21 +02:00
Michele Guerini Rocco
f909bfde79
Merge pull request #184248 from SuperSandro2000/SuperSandro2000-patch-1
nixos/ncdns: replace shortened link
2022-08-03 11:23:04 +02:00
Michael Auchter
5c0e18a6bb nixos/soju: add defaults and assertions for TLS
Enabling soju without providing a value for tlsCertificate currently
results in:

  error: The option `services.soju.tlsCertificate' is used but not
  defined.

Since tlsCertificate is intended to be optional, set default to null.

Additionally, add assertions to ensure that both tlsCertificate and
tlsCertificateKey are either set or unset.
2022-08-02 17:36:04 +00:00
pennae
6b13dd0e9e
Merge pull request #183491 from pennae/automatic-md-conversions
treewide: automatically md-convert option descriptions
2022-08-02 02:15:30 +02:00
Sandro
be194e390f
nixos/ncdns: replace shortened link 2022-07-31 17:13:03 +02:00
Greizgh
dd8386c453
nixos/seafile: version 9.0x compatibility 2022-07-30 18:29:33 +02:00
pennae
2e751c0772 treewide: automatically md-convert option descriptions
the conversion procedure is simple:

 - find all things that look like options, ie calls to either `mkOption`
   or `lib.mkOption` that take an attrset. remember the attrset as the
   option
 - for all options, find a `description` attribute who's value is not a
   call to `mdDoc` or `lib.mdDoc`
 - textually convert the entire value of the attribute to MD with a few
   simple regexes (the set from mdize-module.sh)
 - if the change produced a change in the manual output, discard
 - if the change kept the manual unchanged, add some text to the
   description to make sure we've actually found an option. if the
   manual changes this time, keep the converted description

this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
2022-07-30 15:16:34 +02:00
Aaron Andersen
2aecc7fdc1
Merge pull request #183360 from Sohalt/nixos/headscale
nixos/headscale: minor improvements
2022-07-30 15:02:37 +02:00
Rick van Schijndel
9e9f6fc1c3
Merge pull request #152065 from chkno/stunnel-extraConfig
nixos/stunnel: Make free-form
2022-07-26 23:24:31 +02:00
Bernardo Meurer
1cfb6dab0f
Merge pull request #182789 from talyz/sshd-dont-delete-symlinks
sshd: Don't remove symlinks to host key files
2022-07-25 21:51:46 -07:00
Felix Buehler
17e93b090e services.murmur: add openFirewall option 2022-07-24 10:32:37 +02:00
Bjørn Forsman
65399c4742 nixos/syncthing: don't leak the secret API key in process listings 2022-07-23 13:59:11 +02:00
Sandro
98b4daa994
Merge pull request #181881 from SuperSandro2000/searx 2022-07-21 22:39:48 +02:00
talyz
ddf8182d5b
sshd: Don't remove symlinks to host key files
If a host key file is a symlink pointing to an as of yet non-existent
file, we don't want to remove it, but instead follow the symlink and
create the file at that location.

See https://github.com/nix-community/impermanence/issues/101 for more
information on the issue the original behavior creates.
2022-07-21 19:15:04 +02:00
Maximilian Bosch
501bbad4ce
Merge pull request #182104 from mayflower/mail-exporter-secrets
nixos/prometheus-mail-exporter: support storing `passphrase` outside of the store, use umask when using envsubst
2022-07-20 20:42:14 +02:00
Maximilian Bosch
590e60d124
nixos/mxisd: umask to avoid accidental world-readability 2022-07-20 20:29:38 +02:00
Wei Tang
b0a0087d53
nixos/flannel: upgrade to etcdv3 (#180315) 2022-07-19 16:09:42 +10:00
oaksoaj
fc9e22fca1 yggdrasil: add group option back and remove systemd User= directive
The group configuration parameter allow to share access to yggdrasil
control socket with the users in the system. In the version we propose,
it is null by default so that only root can access the control socket,
but let user create their own group if they need.

Remove User= durective in systemd unit. Should a user with the specified
name already exist in the system, it would be used silently instead of a
dynamic user which could be a security concern.
2022-07-18 12:56:59 -05:00
oaksoaj
080774e28f yggdrasil: reenable DynamicUser
Since version 0.4 Yggdrasil works again using systemd's DynamicUser option.
This patch reenables it to improve security.

We tested this with both persistent and non-persistent keys. Everything
seems to work fine.
2022-07-18 12:56:59 -05:00
Maximilian Bosch
179688c7c8
Merge pull request #181377 from mayflower/mxisd-secrets
nixos/mxisd: allow passing secrets
2022-07-18 15:10:49 +02:00
Maximilian Bosch
c2c82fbe43
nixos/mxisd: use a list for env file for mergeability 2022-07-18 13:47:09 +02:00
Sandro Jäckel
3920bb41f2
nixos/searx: improve searxng compatibility 2022-07-17 21:45:30 +02:00
Aaron Andersen
9b01242132
Merge pull request #131261 from bb2020/dlna
nixos/minidlna: convert to structural settings
2022-07-15 21:28:19 +02:00
Maximilian Bosch
d54d70f166
nixos/mxisd: allow passing secrets
Suppose you want to provide a LDAP-based directory search to your
homeserver via a service-user with a bind-password. To make sure that
this doesn't end up in the Nix store, it's now possible to set a
substitute for the bindPassword like

    services.mxisd.extraConfig.ldap.connection = {
      # host, bindDn etc.
      bindPassword = "$LDAP_BIND_PW";
    };

and write the actual secret into an environment file that's readable for
`mxisd.service` containing

    LDAP_BIND_PW=<your secret bind pw>

and the following setting in the Nix expression:

    services.mxisd.environmentFile = "/runs/ecrets/mxisd";

(cherry picked from commit aa25ce7aa1a89618e4257fd46c7d20879f54c728)
2022-07-13 19:19:17 +02:00
Sandro
78fff7ed35
Merge pull request #181197 from bjornfor/fix-ddclient-password-leak 2022-07-12 15:13:43 +02:00
Bjørn Forsman
e0f2f7f9ea nixos/ddclient: don't leak password in process listings
...by using `replace-secret` instead of `sed` when injecting the
password into the ddclient config file. (Verified with `execsnoop`.)

Ref https://github.com/NixOS/nixpkgs/issues/156400.
2022-07-12 10:23:40 +02:00
Pascal Wittmann
6d1cabe9d9
Merge pull request #158346 from kurnevsky/i2pd-yggdrasil
i2pd: add yggdrasil settings
2022-07-12 10:19:18 +02:00
Sandro
366683965e
Merge pull request #166308 from ncfavier/wg-resolvconf
nixos/resolvconf: allow different implementations
2022-07-10 21:00:00 +02:00
James Hannah
c6e76ab7c9 nixos/radvd: add package option
Allow package users to override the package for radvd.
2022-07-01 21:11:46 +02:00
Sandro
911a73340c
Merge pull request #175335 from wyndon/init-lokinet 2022-07-01 11:54:38 +02:00
bb2020
7113eb5574 nixos/minidlna: convert to structural settings 2022-07-01 11:05:38 +03:00
bb2020
449d6ce32b nixos/minidlna: add more configuration options 2022-07-01 11:05:38 +03:00
wyndon
69e1e00ebb
nixos/lokinet: init 2022-06-30 16:01:50 +02:00
Pascal Bach
13df7151e1
Merge pull request #178783 from greizgh/fix-syncthing-doc
nixos/syncthing: fix services.syncthing.folders description
2022-06-27 22:37:56 +02:00
Aaron Andersen
28562b800e
Merge pull request #178154 from aanderse/nixos/prosody
nixos/prosody: conditionally provision required directories with StateDirectory
2022-06-26 22:45:18 +02:00
Sandro
74ea995b11
Merge pull request #174446 from jsimonetti/routedns-init
routedns: init at 0.1.5
2022-06-24 16:31:03 +02:00
Lassulus
8c2e25e98e
Merge pull request #177081 from azahi/trickster
trickster: 0.1.10 -> 1.1.5
2022-06-23 22:24:54 +02:00
Greizgh
ac1e34f0fe
nixos/syncthing: fix services.syncthing.folders description
It was improperly referencing overrideDevices instead of overrideFolders.
2022-06-23 20:44:59 +02:00
Bernardo Meurer
5332bc174a
Merge pull request #178483 from twitchyliquid64/tailscale-networkd
tailscale: ignore tailscale link when using networkd
2022-06-23 12:10:14 -04:00
ajs124
6c189d264e
Merge pull request #177077 from Lassulus/bitlbee_cfgdir
nixos/bitlbee: allow writing to configDir
2022-06-22 19:27:59 +02:00
Naïm Favier
4af5c46faa
nixos/dhcpcd: use networking.resolvconf.package
Allow using the appropriate resolver implementation to set DNS entries
(typically systemd-resolved instead of openresolv).
2022-06-21 22:58:44 +02:00
Naïm Favier
953a5bd3dd
nixos/tailscale: use networking.resolvconf.package
Allow using the appropriate resolver implementation to set DNS entries
(typically systemd-resolved instead of openresolv).
2022-06-21 22:58:44 +02:00
Naïm Favier
458ac47a1d
nixos/wg-quick: improve usage with systemd-networkd
Use `networking.resolvconf.package` to allow DNS entries to be set using
the system-wide resolver implementation instead of hardcoding systemd or
openresolv.

Extend the tests by adding DNS entries and making one of the peers use
systemd-networkd (hence systemd-resolved).

Also add a few `networkd`-specific settings.
2022-06-21 22:58:44 +02:00
Tom
3b8a162680 tailscale: ignore tailscale link when using networkd 2022-06-21 13:23:28 -07:00