Commit graph

16637 commits

Author SHA1 Message Date
sternenseemann 9c989f2fd9 spacecookie: add top-level attribute for haskellPackages.spacecookie
The haskellPackages.spacecookie derivation also includes a library and
thus a lot of propagated haskell dependencies. The top-level attribute
uses haskell.lib.justStaticExecutables and therefore only the
executable. This should reduce the runtime closure users have to
download considerably if they only want the server.
2021-04-10 15:44:19 +02:00
sternenseemann d51edbe17e nixos/spacecookie: reflect changes for spacecookie 1.0.0.0
* New log options
* The old port option has been deprecated in favor of listen -> port

https://github.com/sternenseemann/spacecookie/blob/master/CHANGELOG.md#1000
2021-04-10 15:44:19 +02:00
sternenseemann 76583ee81a nixos/spacecookie: convert into settings-style freeform configuration
* Move `hostname` and `root` into a settings submodule with a freeform
  type, allowing users to also use options not known to the NixOS
  service. Compatibility with a warning for the renamed options is also
  trivial to achieve.
* `port` stays where it is as we don't actually use the `port` option of
  spacecookie to set up the socket, but only to inform spacecookie about
  the port we have set in the `systemd.socket` file, this makes more
  sense. Additionally the configuration of the listening port and
  address change in the next spacecookie release — we can dodge this
  issue altogether by doing our own thing, but I'm interested to hear
  opinions on this.
  To ensure that this is not misconfigured, we add an assertion for
  the port option.
* Add an assertion for `user` in settings which has no effect the way
  we are starting spacecookie as it wouldn't be able to call setuid.
  The message also explains how a specific user can be used with
  spacecookie if desired.
2021-04-10 15:44:19 +02:00
sternenseemann b74821f31b nixos/spacecookie: add address option customizing listen address
This configuration option reflects a new feature from the unreleased
spacecookie version allowing to customize the address spacecookie will
listen on (e. g. "::1" to bind on link-local addresses only). We will
not use this feature in the future, since the configuration option of
spacecookie naturally only has an effect if we don't use socket
activation (and spacecookie sets up its own socket), but having the same
functionality in the service seems like a good idea.

We can luckily emulate this behavior with socket activation as well.
2021-04-10 15:44:19 +02:00
sternenseemann d1f57cbaf0 nixos/spacecookie: add openFirewall option
Convenience shortcut which automatically configures the firewall to open
the port which is also configured for the spacecookie service.
2021-04-10 15:44:19 +02:00
sternenseemann 58be28d7ce nixos/spacecookie: add package option
This allows to change the derivation to use for the spacecookie server
binary. We probably should also use justStaticExecutables by default to
reduce the runtime closure of the service.
2021-04-10 15:44:19 +02:00
sternenseemann 6b577f46b4 nixos/spacecookie: use nix style strings for description 2021-04-10 15:44:19 +02:00
Vincent Haupert f4af2f267a
nixos/github-runner: init at v2.277.1 (#116775)
* github-runner: init at 2.277.1

* nixos/github-runner: initial version

* nixos/github-runner: add warning if tokenFile in Nix store

* github-runner: don't accept unexpected attrs

* github-runner: formatting nits

* github-runner: add pre and post hooks to checkPhase

* nixos/github-runner: update ExecStartPre= comment

* nixos/github-runner: adapt tokenFile option description

Also note that not only a change to the option value will trigger a
reconfiguration but also modifications to the file's content.

* nixos/github-runner: remove mkDefault for DynamicUser=

* nixos/github-runner: create a parent for systemd dirs

Adds a parent directory "github-runner/" to all of the systemd lifecycle
directories StateDirectory=, RuntimeDirectory= and LogDirectory=.

Doing this has two motivations:

1. Something like this would required if we want to support multiple
   runners configurations. Please note that this is already possible
   using NixOS containers.
2. Having an additional parent directory makes it easier to remap
   any of the directories. Without a parent, systemd is going to
   complain if, for example, the given StateDirectory= is a symlink.

* nixos/github-runner: use specifier to get abs runtime path

* nixos/github-runner: use hostname as default for option `name`

Until now, the runner registration did not set the `--name` argument if
the configuration option was `null`, the default for the option.
According to GitHub's documentation, this instructs the registration
script to use the machine's hostname.

This commit causes the registration to always pass the `--name` argument
to the runner configuration script. The option now defaults to
`networking.hostName` which should be always set on NixOS.

This change becomes necessary as the systemd service name includes the
name of the runner since fcfa809 and, hence, expects it to be set. Thus,
an unset `name` option leads to an error.

* nixos/github-runner: use types.str for `name` option

Forcing a `name` option to comply with a pattern which could also be
used as a hostname is probably not required by GitHub.

* nixos/github-runner: pass dir paths explicitly for ExecStartPre=

* nixos/github-runner: update variable and script naming

* nixos/github-runner: let systemd choose the user/group

User and group naming restrictions are a complex topic [1] that I don't
even want to touch. Let systemd figure out the username and group and
reference it in our scripts through the USER environment variable.

[1] https://systemd.io/USER_NAMES/

* Revert "nixos/github-runner: use types.str for `name` option"

The escaping applied to the subdirectory paths given to StateDirectory=,
RuntimeDirectory= and LogsDirectory= apparently doesn't use the same
strategy that is used to escape unit names (cf. systemd-escape(1)). This
makes it unreasonably hard to construct reliable paths which work for
StateDirectory=/RuntimeDirectory=/LogsDirectory= and ExecStartPre=.

Against this background, I decided to (re-)apply restrictions to the
name a user might give for the GitHub runner. The pattern for
`networking.hostName` seems like a reasonable choice, also as its value
is the default if the `name` option isn't set.

This reverts commit 193ac67ba337990c22126da24a775c497dbc7e7d.

* nixos/github-runner: use types.path for `tokenFile` option

* nixos/github-runner: escape options used as shell arguments

* nixos/github-runner: wait for network-online.target

* github-runner: ignore additional online tests
2021-04-10 10:17:10 +00:00
Jörg Thalheim f7e08360b0
Merge pull request #117456 from Izorkin/update-redis-options
nixos/redis: add option and change access to directories
2021-04-10 06:06:19 +01:00
Frederik Rietdijk 0656d546fb
Merge pull request #118312 from NixOS/staging-next
Staging next
2021-04-09 18:29:47 +02:00
Martin Weinelt f882b057be
Merge pull request #111316 from higebu/add-gobgpd 2021-04-09 17:17:07 +02:00
Yuya Kusakabe 45cffe7985
nixos/gobpgd: init 2021-04-09 14:57:11 +00:00
github-actions[bot] c876eb99be
Merge master into staging-next 2021-04-09 12:06:22 +00:00
Jörg Thalheim 9af991a1b1
Merge pull request #117618 from Mic92/docker
nixos/docker: re-add network.target
2021-04-09 12:43:13 +01:00
github-actions[bot] c99b6f5343
Merge master into staging-next 2021-04-09 00:16:01 +00:00
Luke Granger-Brown 1ce6b05ea1 nixos/libvirtd: add package option
At the moment, it's not possible to override the libvirtd package used
without supplying a nixpkgs overlay. Adding a package option makes
libvirtd more consistent and allows enabling e.g. ceph and iSCSI support
more easily.
2021-04-09 01:20:19 +02:00
Sandro 26f16c1cef
Merge pull request #91318 from stephank/pkg-doh-proxy-rust 2021-04-08 22:32:12 +02:00
Bernardo Meurer e630784ffa
Merge pull request #118409 from cpcloud/fix-nvidia-podman
virtualisation/containers: move to settings model for containersConf
2021-04-08 19:48:05 +00:00
github-actions[bot] 85b57e4446
Merge master into staging-next 2021-04-08 18:14:17 +00:00
Robert Schütz 5522a67fa5
Merge pull request #118719 from dotlambda/home-assistant-tests
nixos/home-assistant: use override before overridePythonAttrs
2021-04-08 18:19:34 +02:00
Sandro 936f450e3d
Merge pull request #118805 from helsinki-systems/fix/eval/no-aliases-iproute2
treewide: fix eval without aliases after 9378fdf87e0626e8c63a90a378c3…
2021-04-08 14:20:12 +02:00
Kim Lindberger 5a1bd5ff66
Merge pull request #116074 from talyz/discourse
discourse: Add package and NixOS module
2021-04-08 14:19:49 +02:00
ajs124 c6d4dae35d treewide: fix eval without aliases after 9378fdf87e 2021-04-08 13:33:09 +02:00
Robert Schütz 5e0defcb25 nixos/home-assistant: use override before overridePythonAttrs 2021-04-08 12:30:59 +02:00
github-actions[bot] 8d1d992273
Merge master into staging-next 2021-04-08 00:17:24 +00:00
Martin Weinelt c11a3f5fd4
Merge pull request #118633 from mweinelt/home-assistant-team 2021-04-08 01:55:27 +02:00
Bernardo Meurer 890b13b38c
Merge pull request #118701 from jansol/pipewire
pipewire: 0.3.24 -> 0.3.25
2021-04-07 21:35:29 +00:00
Sandro 318115515b
Merge pull request #118742 from FRidh/tailscale
services.tailscale: add openresolv to path
2021-04-07 23:31:10 +02:00
Phillip Cloud 7c36ce8d3a nixos/containers: move extraConfig to settings model 2021-04-07 16:08:18 -04:00
Vladimír Čunát b132849dae
Merge #117519: nixos/amdgpu: remove 2021-04-07 20:25:55 +02:00
github-actions[bot] 6e4d572602
Merge master into staging-next 2021-04-07 18:14:53 +00:00
Frederik Rietdijk b9ef51a84b services.tailscale: add openresolv to path
Without openresolv, magic dns is not very usable.
2021-04-07 18:40:04 +02:00
Jan Solanti f94c84f844 pipewire: 0.3.24 -> 0.3.25 2021-04-07 16:23:43 +03:00
Stéphan Kochen 20481bd027 doh-proxy-rust: init at 0.3.8 2021-04-07 14:23:55 +02:00
Emery Hemingway 32a5b44b8d nixos/samba: remove bad example for "securityType" option
Setting "security = share" causes silent failures.
2021-04-07 14:18:01 +02:00
github-actions[bot] 1d48804dab
Merge master into staging-next 2021-04-07 12:06:23 +00:00
Sandro d9f9a4a976
Merge pull request #117554 from Zopieux/snapcast-meta 2021-04-07 10:30:32 +02:00
Sandro 597f75375b
Merge pull request #118706 from lukegb/pomerium
nixos/pomerium: fix useACMEHost
2021-04-07 09:50:36 +02:00
Milan Pässler e0d8f6b183
nixos/gitlab: do not set backup.upload by default 2021-04-07 09:21:18 +02:00
Luke Granger-Brown ddf4795824 nixos/pomerium: fix useACMEHost
useACMEHost doesn't work properly, because I forgot to actually define
the variable that is being relied upon here. Oops.
2021-04-07 01:26:44 +00:00
Martin Weinelt dc84583452
home-assistant: Move maintainership to home-assistant team 2021-04-07 02:33:24 +02:00
github-actions[bot] 5e509a83ed
Merge master into staging-next 2021-04-07 00:15:14 +00:00
Jens Nolte f7ff874701
nixos/greetd: Add greetd module (#118294)
* nixos/greetd: Add greetd module

* nixos/greetd: Configure 'greeter'-user

* nixos/greetd: Add default for restart-option

Co-authored-by: Jens Nolte <git@queezle.net>
2021-04-06 19:35:32 +00:00
Jan Tojnar c04a14edd6 Merge branch 'master' into staging-next 2021-04-06 16:01:14 +02:00
Peter Hoeg aa22be179a nixos/packagekit: RFC42 support and drop pointless setting 2021-04-06 11:41:37 +08:00
Martin Weinelt b0cf9f6775
Merge pull request #118503 from dotlambda/home-assistant-dont-maintain
home-assistant: remove dotlambda from maintainers
2021-04-06 01:09:31 +02:00
Pavol Rusnak 073fbba9bf
Merge pull request #89267 from mmilata/bitcoin-exporter
nixos/prometheus-bitcoin-exporter: init
2021-04-06 00:08:33 +02:00
Martin Milata 6b028bcf35 nixos/prometheus-bitcoin-exporter: init 2021-04-05 23:50:42 +02:00
Сухарик 1517e6a14b
nixos/droidcam: init (#109267)
Co-authored-by: Pascal Bach <pascal.bach@nextrem.ch>
2021-04-05 21:32:21 +02:00
talyz 642854055c
nixos/discourse: Add NixOS manual entry 2021-04-05 13:55:57 +02:00