Commit graph

2119 commits

Author SHA1 Message Date
Martin Weinelt 253ca4957d Merge remote-tracking branch 'origin/master' into staging-next 2022-10-05 00:44:16 +02:00
Sandro 1385382014
Merge pull request #191532 from ambroisie/add-tandoor-recipes 2022-10-03 20:25:06 +02:00
Bruno BELANYI d8b1d34806 nixos/tandoor-recipes: init module 2022-10-03 09:48:54 +02:00
Adam Joseph d3b65938d4 nixos/../nix-daemon.nix: allow architectures with no inferiors 2022-10-01 04:34:44 -07:00
github-actions[bot] 7170a03e58
Merge master into staging-next 2022-09-30 00:07:38 +00:00
Sandro 00b86b69f0
Merge pull request #193009 from SuperSandro2000/nix-daemon-localhost 2022-09-29 23:38:05 +02:00
github-actions[bot] 9d19287993
Merge master into staging-next 2022-09-29 18:03:40 +00:00
Linus Heckemann 3f7fa3fe68
Merge pull request #193404 from evrim/master
nix-daemon module: fix mandatoryFeatures in nix.buildMachines
2022-09-29 15:48:05 +02:00
void 6349a7d15b nix-daemon module: fix mandatoryFeatures in nix.buildMachines 2022-09-29 00:35:17 +03:00
github-actions[bot] f18d801779
Merge staging-next into staging 2022-09-28 18:05:53 +00:00
Martin Weinelt 7da8d25d87 Merge remote-tracking branch 'origin/master' into staging-next 2022-09-28 17:15:11 +02:00
Alexander Bantyev 3814271800
Merge pull request #188273 from cab404/klipper-mutable-config
klipper: additional config options
2022-09-28 04:12:05 +04:00
Artturin 6910a4eea0 treewide: makeWrapper to nativeBuildInputs
this should be all of them other than the failed splices
found with nixpkgs-lint
2022-09-26 17:53:26 +03:00
Sandro Jäckel 2970778928
nixos/nix-daemon: allow removing protocol for hydra 2022-09-26 11:50:19 +02:00
github-actions[bot] ef833a6fd2
Merge master into staging-next 2022-09-23 12:01:34 +00:00
cab e46430d503
nixos.moonraker: version change fixes
Old config locations were deprecated
https://moonraker.readthedocs.io/en/latest/configuration/#option-moved-deprecations.

Also, added PrivateTmp to accomodate for logs being unconditionally
written there.
2022-09-23 11:17:54 +04:00
cab 849c40b5f5
klipper: additional options
This allows for easier interop with Moonraker, as well as giving an
ability to store klipper configuration files in /var/lib/klipper, thus not
littering /etc with all the backups SAVE_CONFIG does.

- Added `configFile` as an alternative way to specify configuration
- Added `isMutableConfig` and `mutableConfigPath`

Co-authored-by: @lovesegfault <bernardo@meurer.org>
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Co-authored-by: Bernardo Meurer <bernardo@meurer.org>
2022-09-23 03:10:28 +04:00
Erik Arvstedt ecacff35a6
nixos/paperless: add required syscall
`unpaper` requires syscall 238 (`set_mempolicy`).
Add this by un-blocking the systemd syscall filter set `@resources`
which is safe in the context of paperless.
2022-09-22 08:14:21 +02:00
Jairo Llopis a7a94811e3
nixos/nix-daemon: support machine protocol
Make ssh-ng:// users happier.

@moduon MT-904
2022-09-18 00:05:35 +02:00
Sandro c1831f6c90
Merge pull request #182329 from linsui/safeeyes
safeeyes: fix double wrap
2022-09-14 12:30:09 +02:00
Erik Arvstedt fdead18e9e
nixos/paperless: use python from pkg for gunicorn
This ensures that a compatible `gunicorn` is used when `pkg` is
overridden.
2022-09-12 09:20:53 +02:00
Luke Granger-Brown 9974dcfc20
Merge pull request #190717 from lukegb/paperless-tz
nixos/paperless: fix time.timeZone setting
2022-09-11 22:45:25 +01:00
Sandro 30ec7dc641
Merge pull request #156232 from B4dM4n/nixos-tests-mediatomb 2022-09-11 18:18:10 +02:00
Luke Granger-Brown 55d9a2c596 nixos/paperless: fix time.timeZone setting
This attribute set isn't passed through the NixOS config resolution
mechanism, which means that we can't use lib.mkDefault here.

Instead, just put it before any user overrides so that if the user
specifies this environment variable it'll just override it anyway.
2022-09-11 15:01:47 +01:00
Jörg Thalheim 67db9b4ad1
Merge pull request #190695 from Mic92/gollum
nixos/gollum: add package option
2022-09-10 18:27:29 +02:00
pennae d98322834b nixos/*: fix docbook deprecation notices
mostly no rendering changes except in buildkite, which used markdown
where docbook was expected without marking up its markdown.
2022-09-10 18:23:13 +02:00
Jörg Thalheim 6a66cf1b90 nixos/gollum: add package option 2022-09-10 17:57:08 +02:00
Fabian Möller f3e08ac0b1
nixos/mediatomb: wait for network-online.target 2022-09-05 16:03:01 +02:00
Erik Arvstedt 783f8f16c1
paperless: move PYTHONPATH definition to module
`paperless-ngx.pythonPath` was incomplete due to the missing paperless-ngx
source, so it had to be amended in the service.
Instead of amending it, define it entirely in the service.

This allows an override of `paperless-ngx.propagatedBuildInputs` to be reflected
in the service's PYTHONPATH.
2022-09-05 14:50:45 +02:00
Erik Arvstedt 310b9fe58d
nixos/paperless: extract variable pkg 2022-09-05 10:03:59 +02:00
Martin Weinelt f98011803e
nixos/paperless: Restrict CAP_NET_BIND_SERVICE
Handing CAP_NET_BIND_SERVICE to the `paperless-web.service` only makes
sense when it actually wants to bind to a port < 1024. Don't hand it out
if that is not the case.
2022-09-04 16:24:24 +02:00
Martin Weinelt 2d257f8101
nixos/paperless: Add pgsql via unix socket example
Finding out how to connect paperless to a PostgreSQL database via unix
sockets and peer authentication took me a few minutes, so leaving a hint
in the extraConfig example seems like a good idea to me.

Also remove unnecessary use of literalExpression for attribute set, it
is only required for complex values like functions or values that depend
on other values or packages.
2022-09-04 16:16:46 +02:00
Martin Weinelt 81a17f7352
nixos/paperless: Use system timezone by default, if set 2022-09-04 16:16:46 +02:00
Martin Weinelt 94f00041f0
nixos/paperless: Allow mbind syscall in paperless-web.services
After uploading a document through the webinterface I started seeing
it killed through the SYSBUS signal. Inspecting the call trace led me to
liblapack's memory allocator, that uses the mbind syscall on Linux.
2022-09-04 16:16:45 +02:00
Federico Beffa 8be4e9e2ec nixos/service/languagetool: init 2022-09-03 16:48:43 +02:00
Caleb Chase f8c0d9e66d portunus: fix maintainers bug 2022-09-02 22:25:56 -05:00
Sandro 5e515466a9
Merge pull request #180149 from WilliButz/gitlab-module/fix-registry-issuer 2022-09-02 00:16:22 +02:00
pennae 1d41cff3dc nixos/*: convert straggler options to MD 2022-08-31 17:27:38 +02:00
pennae f2ea09ecbe nixos/*: convert options with listings
minor rendering changes.
2022-08-31 17:27:36 +02:00
pennae 722b99bc0e nixos/*: convert options with admonitions to MD
rendering changes only slightly, most changes are in spacing.
2022-08-31 16:36:16 +02:00
pennae 9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
pennae 1013069f52 nixos/*: convert more partially-md option descriptions
this mostly means marking options that use markdown already
appropriately and making a few adjustments so they still render
correctly. notable for nftables we have to transform the md links
because the manpage would not render them correctly otherwise.
2022-08-31 16:32:14 +02:00
Christian Kögler 0b6ffe6511
Merge pull request #188362 from pcpthm/fix-nix-registry-flake
nixos/nix-daemon: Add missing parentheses
2022-08-27 22:33:17 +02:00
Bernardo Meurer a53ad0ca15
Merge pull request #188513 from Sciencentistguy/plex-pidfile
nixos/plex: specify PIDFile in systemd service
2022-08-27 17:27:01 -03:00
pennae 51a11254a7 nixos/*: literalDocBook -> literalMD
no change to rendered output
2022-08-27 19:18:29 +02:00
Jamie Quigley e8f1b09014
nixos/plex: specify PIDFile in systemd service 2022-08-27 17:23:44 +01:00
xeals 836505dee4
nixos/portunus: fix specification of client secret
Environment variables are only expanded in *Env variables.

Ref dexidp/dex#1664
2022-08-27 17:44:38 +10:00
xeals 5a9b7f4514
nixos/portunus: fix typo in option usage 2022-08-27 17:39:29 +10:00
pcpthm f7922cb328 nixos/nix-daemon: Add missing parenthesis
When `nix.registry.<name>.flake` option is used, additional attributes of the flake were not written to the flake registry file because of a missing parenthesis.
2022-08-26 15:53:59 +09:00
pennae 6039648c50 nixos/*: automatically convert option docs 2022-08-19 22:40:58 +02:00
pennae 7e7d68a250 nixos/*: mark pre-existing markdown descriptions as mdDoc 2022-08-19 22:40:58 +02:00
pennae b51f8036c2 nixos/*: use properly indented strings for option docs
using regular strings works well for docbook because docbook is not as
whitespace-sensitive as markdown. markdown would render all of these as
code blocks when given the chance.
2022-08-19 22:40:58 +02:00
pennae 72b507d5a2 nixos/*: convert some markdown in docbook to tags
a lot of markdown syntax has already snuck into option docs, many of it
predating the intent to migrate to markdown. we don't convert all of it
here, just that which is accompanied by docbook tags as well. the rest
can be converted by simply adding the mdDoc marker.
2022-08-19 22:40:58 +02:00
pennae 275a34e0d8 nixos/nix-daemon: replace <uri> with <literal>
this could've been a link as well, but <uri> did not render as a link in
the html manual.
2022-08-19 22:40:58 +02:00
pennae d0ba463fcf nixos/*: replace <quote> with actual quotes 2022-08-19 22:40:58 +02:00
pennae 2646fd7c1b nixos/*: remove <productname>
no change to the rendered output, and we can't properly represent this
in markdown anyway.
2022-08-19 22:40:58 +02:00
pennae e4ed177f82 nixos/* eliminate inner whitespace in tags that was missed earlier
nix-doc-munge won't match tags that contain newlines anywhere. most of
these have already been removed, but a few obviously made it through.
2022-08-19 22:40:58 +02:00
pennae 8f8e101527 nixos/*: normalize <package> to <literal>
this renders the same in the manpage and a little more clearly in the
html manual. in the manpage there continues to be no distinction from
regular text, the html manual gets code-type markup (which was probably
the intention for most of these uses anyway).
2022-08-19 22:40:58 +02:00
Maximilian Bosch 6a1263503c
Merge pull request #185803 from Ma27/sssd-secrets
nixos/sssd: Add secrets handling (patch originally from @yayayayaka)
2022-08-18 20:51:41 +02:00
Maximilian Bosch 5ec8223e63
nixos/sssd: explain why we use EnvironmentFile= 2022-08-18 11:38:49 +02:00
Maximilian Bosch 8d92d42c5c
nixos/sssd: fix typo 2022-08-18 11:34:06 +02:00
Sandro a9f3c22db5
Merge pull request #182382 from SuperSandro2000/portunus 2022-08-17 15:20:45 +02:00
Thomas Watson 9c52987b51 nixos/spice-webdavd: init 2022-08-14 12:28:05 -05:00
linsui f411f4ae7a safeeyes: fix double wrap 2022-08-14 09:31:22 +08:00
pennae 50f9b3107a
Merge pull request #185474 from pennae/option-docs-md
nixos/*: more options md conversion
2022-08-12 23:23:26 +02:00
Sandro df97735064
Merge pull request #173669 from SuperSandro2000/gitea 2022-08-12 15:33:46 +02:00
Richard Marko 9ba8f7d8b3 services/klipper: add CPUScheduling and IOScheduling tuning 2022-08-12 17:31:02 +08:00
Richard Marko 1410d89398 nixos/klipper: add OOMScoreAdjust -999
to make it unlikely that klipper gets killed by OOM killer.
2022-08-12 17:31:02 +08:00
Winter ce63730df8 Update nixos/modules/services/misc/tautulli.nix 2022-08-11 22:49:50 -04:00
Ryan Horiguchi feba340314 nixos/tautulli: add option to open firewall 2022-08-11 22:49:50 -04:00
Lara 87942da08e
nixos/sssd: Add secrets handling
Currently, it is not possible to supply sensitive credentials like
`ldap_default_authtok` without writing them to the nix store. This
This commit introduces a new option `environmentFile` where those
credentials can be supplied via environment substitution.
2022-08-09 17:28:37 +02:00
Sandro Jäckel 49da90755b
nixos/portunus: init 2022-08-08 19:14:50 +02:00
mlyxshi 228a897afd
Update nitter.nix 2022-08-07 22:50:42 -07:00
pennae 087472b1e5 nixos/*: automatically convert option docs 2022-08-06 20:39:12 +02:00
pennae 423545fe48 nixos/*: normalize manpage references to single-line form
now nix-doc-munge will not introduce whitespace changes when it replaces
manpage references with the MD equivalent.

no change to the manpage, changes to the HTML manual are whitespace only.
2022-08-05 18:34:50 +02:00
pennae 93c57a9884
Merge pull request #185056 from pennae/option-docs-md
nixos/*: more option docs conversions
2022-08-05 17:36:49 +02:00
Sandro 77cbd6d51d
Merge pull request #184619 from SuperSandro2000/gitit 2022-08-04 11:53:26 +02:00
Sandro Jäckel ffbccb20bd
nixos/gitea: convert simple settings to freeform settings 2022-08-04 11:44:02 +02:00
Sandro Jäckel 236b053413
nixos/gitea: fix statix warnings 2022-08-04 11:42:39 +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 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
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 Jäckel f7522d6b56
nixos/gitit: use programs from path 2022-08-02 00:55:48 +02:00
Bernardo Meurer 6f435e54b5
Merge pull request #165151 from vtuan10/klipper-firmware
nixos/klipper: Add Klipper firmware options
2022-08-01 14:07:26 -07:00
Silvan Mosberger fe2c9ae814
Merge pull request #177012 from hercules-ci/nixos-modular-system
`flake.lib.nixosSystem`: Allow `nixpkgs.system` to be set modularly; improve error message
2022-08-01 15:05:16 +02:00
Mario Rodas a255355f46
Merge pull request #182520 from danc86/sssd-kcm
nixos/sssd: add an option to enable KCM support
2022-07-30 18:52:05 -05: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
Sandro b5b9c81496
Merge pull request #177573 from asbachb/bugfix/gitea/175967 2022-07-28 13:55:11 +02:00
Dan Callaghan 133ebbe46a
nixos/sssd: add an option to enable KCM support 2022-07-23 10:14:09 +10:00
Jörg Thalheim 9a020f31aa
Merge pull request #175439 from Mic92/jellyfin
nixos/jellyfin: better defaults for hardware acceleration
2022-07-18 12:51:54 +01:00
M. A 61e3490c1c nixos/gitlab: Bump git to 2.35.4
Resolves CVE-2022-29187
2022-07-13 21:03:46 +00:00
Robert Hensing e153087276 nixos: Fix use of nixpkgs.localSystem
localSystem is ill-defined because unlike hostPlatform, its
meaning is different in a cross or non-cross context.
2022-07-10 13:35:54 +02:00
Peder Bergebakken Sundt 50dd61a9ba nixos/polaris: init 2022-07-08 12:27:48 -04:00
WilliButz e2a322b3cd
nixos/gitlab: fix registry.issuer setting
Prior to this change, the configuration value for
`services.gitlab.registry.issuer` was only referenced by the
docker-registry configuration and in the `gitlab-registry-cert` service
while the gitlab config used the hard-coded value "gitlab-issuer".
2022-07-04 19:31:16 +02:00
WilliButz fbaae54932
Merge pull request #170947 from dpausp/gitlab-registry-cert-fix-path-condition
nixos/gitlab: fix gitlab-registry-cert path condition
2022-07-04 18:39:42 +02:00
Jörg Thalheim d09303b31d
Update nixos/modules/services/misc/jellyfin.nix 2022-07-04 13:25:43 +01:00
7c6f434c 8d002d4a47
Merge pull request #179442 from alyssais/dictd
nixos/dictd: make dict use local server
2022-07-01 16:52:54 +00:00
Alyssa Ross 4684ff771e
nixos/dictd: make dict use local server
Seems silly to install this for use with the local server, but to not
configure it to use the local server.  Otherwise, out of the box we
just get an error about no server being configured.
2022-06-28 12:22:45 +00:00
Kim Lindberger 8b404a1617
Merge pull request #177783 from talyz/parsedmarc-secrets
parsedmarc, geoipupdate: Improve secrets handling and more
2022-06-27 15:26:10 +02:00
Sandro 2cf13724e1
Merge pull request #168141 from mausch/radarr 2022-06-27 01:06:15 +02:00
Erik Arvstedt 1a32663efc
treewide: rename maintainer earvstedt -> erikarvstedt
The maintainer name now matches the Github username, which simplifies
maintainer notifications.
2022-06-26 19:12:18 +02:00
Kim Lindberger 5710bac2b4
nixos/gitlab: Use Git 2.35.x to work around git bug (#177776)
Git 2.36.1 seemingly contains a commit-graph related bug which is
easily triggered through GitLab, so let's downgrade it to 2.35.x until
this issue is solved. See
https://gitlab.com/gitlab-org/gitlab/-/issues/360783#note_992870101.
2022-06-25 21:22:53 +02:00
Jörg Thalheim 4258952dc6
nixos/jellyfin: sync up with hardening provided in upstream 2022-06-18 17:09:31 +02:00
Sandro 0e6db671a0
Merge pull request #178009 from bbenno/update-gollum
gollum: 5.2.3 -> 5.3.0
2022-06-17 21:08:57 +02:00
Benno Bielmeier be0e2db8b9 nixos/gollum: add option local-time
This feature was introduced in gollum v5.3.0
2022-06-17 12:50:47 +02:00
Benno Bielmeier 9434ac0963 nixos/gollum: improve description of user-icons option 2022-06-17 12:50:13 +02:00
talyz 4dddca8240
nixos/geoipupdate: Improve secret handling
Make secret replacement more robust and futureproof:

- Allow any attribute in `services.geoipupdate.settings` to be a
  secret if set to `{ _secret = "/path/to/secret"; }`.

- Hash the license key path before using it as a placeholder in the
  config file to minimize the risk of conflicting file paths being
  replaced instead.
2022-06-15 20:14:57 +02:00
talyz 23c15323ce
nixos/geoipupdate: Add error handling to scripts 2022-06-15 17:18:50 +02:00
Benjamin Asbach 6b913c40f0 gitea: bugfix: add check for empty file for secrets
There are some cases were the files are present but not filled with secrets. In these cases the service fails to startup.

This fixes #175967
2022-06-14 01:09:14 +03:00
piegames 4ebc288038
Merge #172819: nixos: move matrix services into their category 2022-06-10 10:54:18 +02:00
Julien Moutinho 17c6f62503 nixos/sourcehut: some settings became mandatory upstream 2022-06-08 19:46:04 -04:00
Julien Moutinho f34d654860 nixos/sourcehut: increase RestartSec to better avoid degraded states 2022-06-08 19:46:04 -04:00
Julien Moutinho cd6808ba9f sourcehut: fix Unix socket support for Redis 2022-06-08 19:46:04 -04:00
Julien Moutinho 43b5dcd60c nixos/sourcehut: remove forgotten unused files 2022-06-08 19:46:04 -04:00
Julien Moutinho 876f3a8bf0 sourcehut.todosrht: 0.67.2 -> 0.71.0 2022-06-08 19:46:04 -04:00
Julien Moutinho bcb91bbeb7 sourcehut.metasrht: 0.57.5 -> 0.58.8 2022-06-08 19:46:04 -04:00
Julien Moutinho 59d8439966 sourcehut.listssrht: 0.51.7 -> 0.51.9 2022-06-08 19:46:04 -04:00
Julien Moutinho 658d8f1240 sourcehut.hgsrht: 0.29.4 -> 0.31.2 2022-06-08 19:46:04 -04:00
Julien Moutinho b57ed0fa1d sourcehut.gitsrht: 0.77.3 -> 0.78.18 2022-06-08 19:46:04 -04:00
Julien Moutinho 43f856ab2c sourcehut.buildsrht: 0.75.2 -> 0.79.1 2022-06-08 19:46:04 -04:00
Martin Weinelt e0169d7a9d
Merge pull request #176558 from Artturin/bumpnofileinfinity 2022-06-08 12:03:01 +02:00
lodi 3f1ec25f90 persistent-evdev: init at unstable-2022-01-14 2022-06-07 13:20:52 -04:00
Artturin c8f5b17a98 nixos/nix-daemon: set LimitNOFILE to 1048576
fixes 'too many open files'
2022-06-06 21:16:47 +03:00
Nguyễn Gia Phong 22f3d4e4db
nixos: move matrix services into their category 2022-06-06 13:50:58 +09:00
Emery Hemingway 2d012163f2 nixos/uhub: fix plugins, set CAP_NET_BIND_SERVICE
Fix generation of the plugins configuration and allow binding to
"privileged" ports.
2022-06-05 13:58:26 -05:00
Martin Weinelt 5a188dfbca
Merge pull request #175729 from DeterminateSystems/jellyfin-fix 2022-06-01 17:19:49 +02:00
Linus Heckemann 7eab23d517 jellyfin: fix permissions on state directory
Previously, all configuration and state data was accessible to all
users on the system running jellyfin. This included user passwords in
the Jellyfin database, as well as credentials for LDAP if configured.
The exact set of accessible data depends on system configuration.

Thanks to Sofie Finnes Øvrelid for reporting this issue.

Fixes: CVE-2022-32198

Co-Authored-By: Martin Weinelt <hexa@darmstadt.ccc.de>
2022-06-01 12:31:23 +02:00
Sandro 8d8e031d25
Merge pull request #133771 from erdnaxe/libreddit_fix
nixos/libreddit: service hardening and test
2022-05-31 21:53:51 +02:00
linj 37792e5766 nixos/dendrite: add an option loadCredential
systemd-247 provides a mechanism called LoadCredential for secrets and
it is better than environment file. See the section of Environment=
in the manual of systemd.exec for more information.

Some options in config.yaml need values to be strings, which currently
can be used with environmentFile but not loadCredential. But it's
possible to use loadCredential for those options, e.g. we can
substitute their values in ExecStart, but not in ExecStartPre due to
[1].

[1]: https://github.com/systemd/systemd/issues/19604
2022-05-29 13:34:14 -07:00
Benno Bielmeier d156db7d17 nixos/gollum: add option 'no-edit' 2022-05-22 15:06:00 +02:00
Benno Bielmeier 8e7b82be49 nixos/gollum: add option 'user-icons' 2022-05-22 15:06:00 +02:00
Benno Bielmeier 8a770f06a2 gollum: refactor package
use `bundlerApp` in preference to `stdenv.mkDerivation`
2022-05-22 15:06:00 +02:00
Yureka 821724b184 nixos/gitlab: support 15.x 2022-05-22 13:09:36 +02:00
Ian Kerins 560ca02280 nixos/nitter: update example configuration file URL
It was moved.
2022-05-16 10:16:06 -05:00
Aaron Andersen 82716bddb5
Merge pull request #170079 from bb2020/mbpfan
nixos/mbpfan: minor changes
2022-05-14 22:13:05 -04:00
Felix Singer 562bc5c2a9 nixos/redmine: Fix PNG generation of Gant diagrams
The Ruby gem `minimagick` is used to export Gant diagrams as PNG.
However, minimagick can't find a font and Redmine throws an error. The
setting `minimagick_font_path` allows configuring a path to a font file
in the Redmine configuration. Thus, add the option
`services.redmine.components.minimagick_font_path` allowing to do that.

Also, add an assertion to check if
`services.redmine.components.minimagick_font_path` is set when
imagemagick is enabled.

Signed-off-by: Felix Singer <felixsinger@posteo.net>
2022-05-15 01:47:23 +02:00
Felix Singer 66ef66fc62 nixos/redmine: Configure imagemagick_convert_command
For completeness, configure the setting `imagemagick_convert_command` in
the Redmine configuration file.

Signed-off-by: Felix Singer <felixsinger@posteo.net>
2022-05-15 01:47:04 +02:00
Felix Singer 4d23eae938 nixos/redmine: Add PDF export support for gant
Ghostscript is needed to export Gant diagrams as PDF. Thus, add the
option `services.redmine.components.ghostscript` allowing to enable or
disable the component. The component is disabled by default. Enabling
the option will add Ghostscript to the Redmine environment and configure
the setting `gs_command` in the Redmine configuration file.

Signed-off-by: Felix Singer <felixsinger@posteo.net>
2022-05-15 01:23:36 +02:00
Felix Singer 92b1cf8b4c nixos/redmine: Make optional components configurable
Currently, optional components and integrations of Redmine are enforced
to install in NixOS. Thus, add the following options allowing the users
to enable or disable the components. They are disabled by default.
Enabling these options will add their package to the Redmine environment
and will configure their specific setting in the Redmine configuration
file.

  * services.redmine.components.subversion
  * services.redmine.components.mercurial
  * services.redmine.components.git
  * services.redmine.components.cvs
  * services.redmine.components.breezy
  * services.redmine.components.imagemagick

Signed-off-by: Felix Singer <felixsinger@posteo.net>
2022-05-15 01:22:49 +02:00
Felix Singer 3be58b2afc nixos/redmine: Drop darcs integration
darcs support was dropped with Redmine 4.0.0. Thus, drop the darcs
integration.

For more information, see https://www.redmine.org/issues/26391.

Signed-off-by: Felix Singer <felixsinger@posteo.net>
2022-05-14 22:58:02 +02:00
Nick Cao 82f0b53588
dendrite: 0.8.1 -> 0.8.4 2022-05-11 18:40:05 +08:00
bb2020 8bdcffc4fe nixos/mbpfan: minor changes 2022-05-10 15:40:17 +03:00
Martin Weinelt e237f3e459
Merge pull request #171716 from piegamesde/heisenbridge-module 2022-05-05 23:30:09 +02:00
piegames 6b1dcbb1db nixos/heisenbridge: Fix stupid typo 2022-05-05 23:26:01 +02:00
Robert Hensing e4054fe0a9
Merge pull request #169310 from Xiami2012/zookeeper-jre
nixos/zookeeper: Take the same JRE we build zookeeper with by default
2022-05-02 10:51:42 +02:00
Tobias Stenzel 0c4f8e78b5 nixos/gitlab: fix gitlab-registry-cert path condition
`ConditionPathExists` belongs in the [Unit] section, not [Service].
The unit now properly checks if the cert file already
exists before activating so certs will not be overwritten anymore.
2022-04-29 23:57:57 +02:00
Xiami b43999bea0
nixos/zookeeper: Remove .passthru as suggested 2022-04-26 18:44:37 +08:00
Anders Kaseorg 6920d8ca42 treewide: Simplify negated uses of versionAtLeast, versionOlder
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-04-25 13:35:24 -07:00
Sandro 786f0c486b
Merge pull request #159103 from pacien/nixos-taskserver-firewall-no-port-open
nixos/taskserver: do not open firewall port implicitly, port helper to Python 3
2022-04-21 01:56:36 +02:00
Xiami 1637e039d2
nixos/zookeeper: Take the same JRE we build zookeeper with 2022-04-19 18:56:00 +08:00
Mauricio Scheffer 0c0be74964 radarr: allow overriding package in module 2022-04-18 11:43:27 +01:00
github-actions[bot] f6bedc13d1
Merge master into staging-next 2022-04-17 18:01:03 +00:00
Martin Weinelt 5bd659fb4d
Merge pull request #167866 from NickCao/dendrite-limit 2022-04-17 16:01:34 +02:00
Nick Cao b79e0a0e06
nixos/dendrite: set LimitNOFILE to 65535 2022-04-16 10:49:01 +08:00
Martin Weinelt a7fc5aaa76 Merge remote-tracking branch 'origin/master' into staging-next 2022-04-15 13:30:48 +02:00
Michele Guerini Rocco 09f816e976
Merge pull request #156401 from TLATER/tlater/gitea-hide-secrets
nixos/gitea: Prevent secrets from being exposed at ExecStart time
2022-04-15 10:26:12 +02:00
Vladimír Čunát d5d94127fd
Merge branch 'staging-next' into staging
Minor conflicts; I hope I didn't mess up:
	pkgs/development/tools/misc/binutils/default.nix
	pkgs/games/openjk/default.nix
2022-04-14 09:53:21 +02:00
Erik Arvstedt 0977227b86
nixos/paperless-ng: rename to paperless, use paperless-ngx package
Use this opportunity to rename `paperless-(ng)-server` to `paperless-scheduler`.
This follows the naming scheme in the paperless repo and docs.
2022-04-12 18:15:44 +02:00
Erik Arvstedt 46c3331384
nixos/paperless-ng: simplify redis logic
- Rename `hasCustomRedis` -> `enableRedis`
- Extract var `redisServer`
2022-04-12 18:06:34 +02:00
Erik Arvstedt 69319ee4a6
nixos/paperless-ng: fix /proc access for service
This allows django-q to set the number of workers according to the CPU
core count and to show memory stats via `manage.py qmonitor`.
This also fixes a non-critical psutil error in paperless-ng-server.
2022-04-11 22:46:44 +02:00
Erik Arvstedt 308c4bf0f7
nixos/paperless-ng: minor improvments
Service:
- Fix misleading comment:
  We could in fact implement password copying as a preStart script by
  amending BindReadOnlyPaths, but adding an extra service is simpler.

Test:
- Add more detailed subtest names
- Simplify date check
2022-04-11 22:46:43 +02:00
github-actions[bot] f303d4de3b
Merge staging-next into staging 2022-04-09 12:02:07 +00:00
Frederik Rietdijk 1d63f89caa cudaPackages: overhaul of how we package cuda packages
There are many different versions of the `cudatoolkit` and related
cuda packages, and it can be tricky to ensure they remain compatible.

- `cudaPackages` is now a package set with `cudatoolkit`, `cudnn`, `cutensor`, `nccl`, as well as `cudatoolkit` split into smaller packages ("redist");
- expressions should now use `cudaPackages` as parameter instead of the individual cuda packages;
- `makeScope` is now used, so it is possible to use `.overrideScope'` to set e.g. a different `cudnn` version;
- `release-cuda.nix` is introduced to easily evaluate cuda packages using hydra.
2022-04-09 08:50:22 +02:00
Martin Weinelt cc774b5792 Merge remote-tracking branch 'origin/staging-next' into staging 2022-04-07 12:12:57 +02:00
sternenseemann fb2fc3b4a4 Merge remote-tracking branch 'origin/master' into haskell-updates 2022-04-05 21:21:42 +02:00
Martin Weinelt bf1914e12a Merge remote-tracking branch 'origin/staging-next' into staging 2022-04-05 04:05:02 +02:00
github-actions[bot] 789aea7658
Merge master into haskell-updates 2022-04-05 00:11:09 +00:00
github-actions[bot] 5844b1c2fa
Merge master into staging-next 2022-04-04 18:01:27 +00:00
Bjørn Forsman c1af79c69d nixos/ethminer: only pull in nvidia_x11 when needed
Only people using CUDA need it.
2022-04-04 19:27:20 +02:00
github-actions[bot] 17eb9da14b
Merge staging-next into staging 2022-04-04 12:06:26 +00:00
github-actions[bot] ee8677862d
Merge master into staging-next 2022-04-04 12:01:25 +00:00
Bjørn Forsman 966953354c nixos/ethminer: fix option types for maxPower, recheckInterval
Neither power nor time intervals can be negative, let's use unsigned
int.
2022-04-04 11:50:24 +02:00
Bjørn Forsman 5e38d36a6b nixos/ethminer: only pull in cudatoolkit when needed 2022-04-04 11:50:24 +02:00
Tristan Daniël Maat 3a86b88ef1
nixos/gitea: Prevent secrets from being exposed at ExecStart time
This addresses #156400 for Gitea.
2022-04-04 01:12:27 +01:00
sternenseemann 103d171526
Merge pull request #166548 from sternenseemann/fix-ghclibdir-computation
[haskell-updates] ghcWithPackages: fix ghclibdir computation with variantSuffix
2022-04-03 14:22:34 +02:00
Alyssa Ross 8ba23e138d
Merge remote-tracking branch 'nixpkgs/staging-next' into staging
Conflicts:
	pkgs/development/libraries/zlib/default.nix
	pkgs/development/lua-modules/overrides.nix
2022-04-02 16:45:48 +00:00
github-actions[bot] 5e1c018e60
Merge master into staging-next 2022-04-01 06:01:23 +00:00
Dominique Martinet e92c05349c nixos/logrotate: convert to freeform
using freeform is the new standard way of using modules and should replace
extraConfig.
In particular, this will allow us to place a condition on mails
2022-04-01 07:09:26 +09:00
github-actions[bot] be4f006d3c
Merge master into staging-next 2022-03-31 18:01:13 +00:00
Martin Weinelt e80642bdcb
Merge pull request #165772 from alarsyo/paperless-ng-mail-fix 2022-03-31 16:52:06 +02:00
github-actions[bot] 9aa014c46a
Merge staging-next into staging 2022-03-31 12:02:10 +00:00
sternenseemann 6016ed5076 treewide: replace uses of ghc.name to find packages' datadir 2022-03-31 12:53:40 +02:00
Jade e50bc2f36d
nixos/nix-gc, nixos/auto-upgrade: Minor documentation fixes.
The gc documentation had some artifacts (presumably being copied from
autoupgrade) and the autoupgrade docs had a typo
2022-03-31 00:24:25 -04:00
Martin Weinelt d0bfb3ccbb Merge remote-tracking branch 'origin/master' into staging-next 2022-03-31 03:49:37 +02:00
Scott Olson bada6a2e04 nixos/nix-daemon: fix typo 2022-03-29 21:13:54 +01:00
github-actions[bot] 36198fe197
Merge staging-next into staging 2022-03-27 18:01:40 +00:00
Martin Weinelt d68657af92 Merge remote-tracking branch 'origin/master' into staging-next 2022-03-27 15:54:05 +02:00
Jörg Thalheim de698b740b
Merge pull request #156678 from Alexnortung/autorandr-module
nixos/autorandr: refactor
2022-03-27 07:46:09 +01:00
github-actions[bot] ec92b288e2
Merge staging-next into staging 2022-03-27 06:01:57 +00:00
Martin Weinelt 7be28200e2 Merge remote-tracking branch 'origin/master' into staging-next 2022-03-27 01:45:13 +01:00
linj 1e32d28824 nixos/dendrite: always substitute environment variables in config
Before this patch, services.dendrite.environmentFile is used for
secrets and environment variable substitution only happens when this
option is used.

systemd-247 provides a mechanism called LoadCredential for secrets and
it is better than environment file. See the section of Environment=
in the manual of systemd.exec for more information.

This patch always substitute environment variables, which enables the
usage of systemd LoadCredential.
2022-03-26 12:54:45 -07:00
Alexander Nortung 7844c87ab7 Merge branch 'master' into autorandr-module 2022-03-26 14:18:23 +01:00
Antoine Martin 16f80139f0 nixos/paperless-ng: fix mail importer
The private network setting was placed on the wrong service
2022-03-25 18:26:38 +01:00
github-actions[bot] 8357b101a5
Merge staging-next into staging 2022-03-25 12:02:05 +00:00
Vladimír Čunát 0a8b4eddd2
Merge branch 'master' into staging-next 2022-03-25 10:16:56 +01:00
Van Tuan Vo b391d98a71
nixos/klipper: Remove automatic flashing option flashing.enable 2022-03-25 00:20:53 +01:00
Robert Hensing ce5a33e62b
Merge pull request #164660 from ncfavier/tests-restrict-arguments
nixos/testing: restrict arguments to makeTest
2022-03-24 17:01:47 +01:00
Doron Behar 4a02c56a7d
Merge pull request #164746 from ncfavier/makeWrapper-chdir 2022-03-24 13:51:27 +02:00
Bernardo Meurer 25d1efa97e
Merge pull request #165386 from zhaofengli/moonraker-2022-03-10
moonraker: unstable-2021-12-05 -> unstable-2022-03-10
2022-03-23 10:33:10 -07:00
Zhaofeng Li 0527ccaca7 nixos/moonraker: Grant polkit permissions for system-level operations 2022-03-22 15:35:38 -07:00
Zhaofeng Li 787aaea68e nixos/moonraker: Add iproute2 to path 2022-03-22 15:35:38 -07:00
Van Tuan Vo 9271773a7b nixos/klipper: Rename firmwareConfig to configFile 2022-03-22 09:21:33 +01:00
Van Tuan Vo 7200dc6651 nixos/klipper: Rename flashingEnable to flashing.enable 2022-03-22 09:20:53 +01:00
Van Tuan Vo bc96bf2e06 nixos/klipper: Rename firmware option to firmwares 2022-03-22 09:20:45 +01:00
Van Tuan Vo c8b873fcd8
nixos/klipper: Fix working of assertion
Co-authored-by: Bernardo Meurer <bernardo@meurer.org>
2022-03-21 23:47:20 +01:00
Robert Hensing 6c469679f6 Merge remote-tracking branch 'upstream/master' into tests-restrict-arguments 2022-03-21 23:17:17 +01:00
Robert Hensing eb8b70c020 nixos: Make config.nix.enable pass test 2022-03-21 23:14:10 +01:00
Van Tuan Vo c49f15e87b
klipper-firmware: Fix IFD error and minor refactoring 2022-03-21 21:51:10 +01:00
Van Tuan Vo 72871a3596
nixos/klipper: Add klipper-firmware options 2022-03-21 20:23:45 +01:00
Vladimír Čunát 6facca010b
Merge #164644: nixos/nix-daemon: workaround NixOS/nix#6285
...into staging
2022-03-21 19:53:28 +01:00
Kevin Cox 8ce16fcf62
Merge pull request #163451 from hercules-ci/stop-premature-warnings
Stop premature warnings, including `nix.settings` migration
2022-03-21 10:10:40 -04:00
Florian Klink 0d198e7a52 nixos/nix-daemon: workaround NixOS/nix#6285
The Nix-provided `nix-daemon.socket` file has a

> ConditionPathIsReadWrite=/nix/var/nix/daemon-socket/socket

line, to skip that unit if /nix/var/nix/daemon-socket/socket is
read-only (which is the case in some nixos-containers with that folder
bind-ro-mounted from the host).

In these cases, the unit was skipped.

Systemd 250 (rightfully) started to also skip in these cases:

> [ 237.187747] systemd[1]: Nix Daemon Socket was skipped because of a failed condition check (ConditionPathIsReadWrite=/nix/var/nix/daemon-socket).

However, systemd < 250 didn't skip if /nix/var/nix/daemon-socket/socket
didn't /exist at all/, and we were relying on this bug in the case for
fresh NixOS systems, to have /nix/var/nix/daemon-socket/socket created
initially.

Move the creation of that folder to systemd-tmpfiles, by shipping an
appropriate file in `${nixPackage}/lib/tmpfiles.d/nix-daemon.conf`
(NixOS/nix#6285).

In the meantime, set a systemd tmpfiles rule manually in NixOS.

This has been tested to still work with read-only bind-mounted
/nix/var/nix/daemon-socket/socket in containers, it'll keep them
read-only ;-)
2022-03-21 11:43:38 +01:00
Naïm Favier 9160044f5f
treewide/makeWrapper: replace --run cd with --chdir
Lay the groundwork for switching to binary wrappers by reducing uses
of `--run` (which is not supported by `makeBinaryWrapper`).
2022-03-19 09:46:31 +01:00
Martin Wurm fd2215b20c nixos/paperless-ng: fix #164615
Add an exception to the `paperless-ng-server` service's
`SystemCallFilter` as the `mbind` syscall is needed when consuming a
document while having a classification model present.
2022-03-17 19:35:20 +01:00
Giulio De Pasquale b77494badb nixos/jellyfin: Disable PrivateDevices from hardening to allow GPU endpoints to be accessed 2022-03-13 17:01:10 +00:00
Giulio De Pasquale 81781c338d
Jellyfin: Disable ProtectClock to allow NVENC, NVDEC acceleration 2022-03-10 00:19:57 +00:00
Giulio De Pasquale 3b944f4c0c
Jellyfin: Fix NVENC, NVDEC usage by allowing AF_UNIX
Fix NVENC, NVDEC usage when transcoding with hardware capabilities
2022-03-09 19:44:06 +00:00
Robert Hensing 646e888011 nixos/nix-daemon: Stop warning about nix.settings
Out-of-tree modules that use it can not upgrade yet.
There's no real hurry and we should avoid warning fatigue.
2022-03-09 14:53:53 +01:00
Sandro e9183df241
Merge pull request #157923 from tim-tx/update/dendrite-0.6.0 2022-03-08 12:51:04 +01:00
Timo Kaufmann 94ea3a8899
Merge pull request #160777 from LunNova/improve-input-remapper-module
nixos/input-remapper: Fix missing [], add more options, add test
2022-03-07 18:51:08 +01:00
Maciej Krüger 75ea3ea9b8
Merge pull request #157438 from sbruder/nitter-package-option 2022-03-07 18:50:27 +01:00
Luna Nova 865e0df2fc
nixos/input-remapper: add nixos test for input-remapper 2022-03-07 08:31:40 -08:00
Luna Nova d8cb494765
nixos/input-remapper: Fix missing [] for package, add enableUdevRules and serviceWantedBy options, add meta.maintainers 2022-03-07 08:31:40 -08:00
tim-tx 5a6b36e498 dendrite: 0.5.1 -> 0.6.5 2022-03-05 11:41:31 -05:00
Martin Weinelt 5556fc8f8f
Merge pull request #162407 from mweinelt/zigbee2mqtt 2022-03-05 15:33:57 +01:00
pacien 0091e3198a nixos/taskserver: do not open firewall port implicitly
This adds an option `services.taskserver.openFirewall` to allow the user
to choose whether or not the firewall port should be opened for the
service. This is no longer the case by default.

See also https://github.com/NixOS/nixpkgs/issues/19504.
2022-03-05 15:15:50 +01:00
pacien 9013352e3f nixos/taskserver: port helper-tool to Python 3 2022-03-05 14:54:08 +01:00
Martin Weinelt f799a02bca
nixos/synapse: move into matrix category 2022-03-04 23:57:35 +01:00
Martin Weinelt a483264931
nixos/matrix-synapse: fix registerNewMatrixUser script 2022-03-04 23:57:34 +01:00
Martin Weinelt d918011885
nixos/matrix-synapse: update manual with settings option 2022-03-04 23:57:29 +01:00
Martin Weinelt f7286992d2
nixos/matrix-synapse: migrate to rfc42 settings and formatter 2022-03-04 23:57:28 +01:00
Martin Weinelt accca0bd6e
nixos/zigbee2mqtt: move into home-automation category 2022-03-01 19:19:31 +01:00
Janne Heß 5ec0477dfc
Merge pull request #161059 from hercules-ci/fix-nix-daemon-socket-availability
nixos/nix-daemon: Ensure continued availability of daemon socket
2022-02-27 17:57:57 +01:00
Pascal Bach 66ddd69bdc
Merge pull request #158375 from afreakk/plex-example
plex: extraPlugins example
2022-02-23 17:39:15 +01:00
Domen Kožar 05afa7d0eb
Merge pull request #159662 from polykernel/nix-fix-substituters-merging-order
nixos/nix-daemon: Fix merging order for substituters option
2022-02-21 07:24:32 +01:00
Sandro 6335f75903
Merge pull request #156907 from Pamplemousse/taskserver 2022-02-20 21:21:45 +01:00
Sandro 5a57844cf6
Merge pull request #158592 from SuperSandro2000/nginx-nixos 2022-02-20 16:32:09 +01:00
Robert Hensing b550b4b6f8 nixos/nix-daemon: Ensure continued availability of daemon socket
As `nix-daemon.service` does not make use of `ExecStop`, we prefer
to keep the socket up and available. This is important for machines
that run Nix-based services, such as automated build, test, and deploy
services, that expect the daemon socket to be available at all times.

See committed inline comment for further explanation.
2022-02-20 13:44:13 +01:00
Aaron Andersen 63f03d0888
Merge pull request #157259 from bb2020/mbpfan
nixos/mbpfan: update documentation
2022-02-19 08:29:57 -05:00
Aaron Andersen 85f873466e
Merge pull request #160611 from jeeger/mediatomb-group-fix
nixos/mediatomb: make service use group
2022-02-18 19:49:13 -05:00
Jonathan Strickland 2158ae39db
airsonic: fix services.airsonic.listenAddress doc
(#158421)
* airsonic: fix services.airsonic.listenAddress doc

Co-authored-by: Ted Reed <ted.reed@gmail.com>

* airsonic: new docs for airsonic.listenAddress

Co-authored-by: Ted Reed <ted.reed@gmail.com>

Co-authored-by: Ted Reed <ted.reed@gmail.com>
2022-02-18 17:16:13 +01:00
Jan Seeger f1fe11906d nixos/mediatomb: make service use group
The systemd service for mediatomb did not use the group configuration setting in the service configuration, I added in the group specification.
2022-02-18 13:19:00 +01:00
Martin Weinelt 42c0909848
nixos/home-assistant: move module into home-automation category
Putting so many things into misc is not great, so let's open up a new
category called home-automation here and now.
2022-02-15 23:15:09 +01:00
Kevin Cox 9ec2ae338b
Merge pull request #155290 from LunNova/input-remapper
input-remapper: init at unstable-2022-02-09 (and add nixos module)
2022-02-15 08:24:54 -05:00
Martin Weinelt 30b7f827cb
Merge pull request #151812 from alarsyo/paperless-redis-fix 2022-02-14 14:05:49 +01:00
Martin Weinelt 375ec7465f
Merge pull request #158945 from yu-re-ka/feature-gitlab-redis-warning 2022-02-13 23:47:24 +01:00
polykernel 34636a8525 nixos/nix-daemon: Fix merging order for substituters option
The `substituters` option in `nix.settings` uses the order
of the substituters listed to define priority. Prior to https://github.com/NixOS/nixpkgs/pull/139075,
the corresponding option `binaryCaches` is declared in the `nix` namespace,
which is guaranteed to be merged last. However, the order of merging isn't
guaranteed in submodules. This cause definitions to be appended to the default
value instead of prepended, breaking backwards compatibility as reported in https://github.com/NixOS/nixpkgs/issues/158356.

The way this is addressed in the module system is with order priorities via
`mkOrder` and sorting definitions before merging. This PR restores the previous
behavior by setting a higher priority to the substituters option defined internally,
thus all definitions with default priority will be merged before it. This was chosen because
the `mkRenamedOption` function does not preserve order priority so users using legacy options do not have
precise control on placement.

This change should suffice for simple configuration, but further revision to the module system
is needed for to make various `mk*` functions  aware of order priorities.
2022-02-12 17:15:31 -05:00
Janne Heß 828aab5608
Merge pull request #159014 from jian-lin/fix-nix.buildMachines.mandatoryFeatures 2022-02-12 22:20:22 +01:00
pacien 4a198fea2c nixos/rmfakecloud: init module
Co-authored-by: Roosemberth Palacios
2022-02-11 11:36:23 +01:00
linj 0bac44db62 nixos/nix-daemon: readd mandatoryFeatures to final supportedFeatures
In #139075, mandatoryFeatures was removed from the generated
supportedFeatures, which breaks backward compatibility and is
different from what the description of supportedFeatures says.
2022-02-11 02:55:17 +08:00
Luna Nova 93d8783ad6
nixos/input-remapper: init 2022-02-10 08:55:03 -08:00
Yureka 51285d4c11
nixos/gitlab: fix redis deprecation warning 2022-02-10 12:19:48 +01:00
Matthew Bauer 92a6ad8626 packagekit: use Nix backend
Fixes https://github.com/NixOS/nixpkgs/issues/21230

Use Nix backend for packagekit. Updates to version with my Nix backend
for PackageKit.
2022-02-08 19:24:04 -06:00
Sandro Jäckel ae66e2d5ec
treewide: use configured nginx package 2022-02-08 12:13:30 +01:00
David Lewis 26ca9776aa nixos/autorandr: added new KillMode
Prevents Udev Rule from killing processes started by autorandr
2022-02-07 18:53:22 -08:00
afreakk ff85de6ce8 plex: remove unused option managePlugins 2022-02-07 10:57:40 +01:00
afreakk f4cadcfcae plex: extraPlugins example 2022-02-06 18:35:58 +01:00
piegames 5f88ffb05f
Merge pull request #158151: matrix-conduit: 0.2.0 -> 0.3.0 2022-02-04 21:07:36 +01:00
Julius de Bruijn 57db7bcdd6 nixos/matrix-conduit: add database_backend option 2022-02-04 21:04:46 +01:00
Kim Lindberger 415b9c3b5a
Merge pull request #157519 from talyz/gitlab-error-handling
nixos/gitlab: Implement better script error handling
2022-02-03 22:19:03 +01:00
Martin Weinelt 6267a995ec
nixos/home-assistant: drop --runner flag
Home Assistant now always emits exit code 100 when a restart is
requested, making this option redundant.
2022-02-03 02:17:17 +01:00
Jörg Thalheim b41beef827 mediatomb: remove package 2022-02-02 18:57:09 +01:00
talyz b65b9bf73c
nixos/gitlab: Implement better script error handling
Fail scripts on pipeline errors and propagate subshell errors.

If an error occurs in a subshell, including while trying to read a
secret file, we want that error to propagate to the main shell
context. That means we have to set the `inherit_errexit` option, which
allows errors from subshells to propagate to the outer shell. Also,
the subshell cannot run as part of another command, such as `export`,
since that will simply ignore the subshell exit status and only
respect `export`s exit status; first assigning the value to a variable
and then exporting it solves issue.
2022-01-31 13:09:20 +01:00
Simon Bruder be636c6c96
nixos/nitter: add package option 2022-01-30 20:31:54 +01:00
Janne Heß 016e9e5a7f
Merge pull request #157310 from sternenseemann/nix-conf-validation-2.3
nixos/nix-daemon: fix config validation with 2.3
2022-01-29 23:33:18 +01:00
sternenseemann e3d8cc81b3 nixos/nix-daemon: fix config validation with 2.3
--option experimental-features is no understood by Nix 2.3.
2022-01-29 21:41:49 +01:00
bb2020 b25719bf88 nixos/mbpfan: update documentation 2022-01-29 12:51:54 +03:00
Moritz Hedtke a26134ffd4
nixos/nix-daemon: Fix misspelled old option name 2022-01-28 20:32:19 +01:00
Martin Weinelt 268157dc83 nixos/nix-daemon: fix buildMachines eval 2022-01-28 02:00:25 +01:00
Daniel Olsen 5288bcab0a nixos/mx-puppet-discord: Change systemd unit description to avoid newline 2022-01-27 16:49:40 +01:00
polykernel 4a9d9928dc nixos/nix-daemon: use structural settings
The `nix.*` options, apart from options for setting up the
daemon itself, currently provide a lot of setting mappings
for the Nix daemon configuration. The scope of the mapping yields
convience, but the line where an option is considered essential
is blurry. For instance, the `extra-sandbox-paths` mapping is
provided without its primary consumer, and the corresponding
`sandbox-paths` option is also not mapped.

The current system increases the maintenance burden as maintainers have to
closely follow upstream changes. In this case, there are two state versions
of Nix which have to be maintained collectively, with different options
avaliable.

This commit aims to following the standard outlined in RFC 42[1] to
implement a structural setting pattern. The Nix configuration is encoded
at its core as key-value pairs which maps nicely to attribute sets, making
it feasible to express in the Nix language itself. Some existing options are
kept such as `buildMachines` and `registry` which present a simplified interface
to managing the respective settings. The interface is exposed as `nix.settings`.

Legacy configurations are mapped to their corresponding options under `nix.settings`
for backwards compatibility.

Various options settings in other nixos modules and relevant tests have been
updated to use structural setting for consistency.

The generation and validation of the configration file has been modified to
use `writeTextFile` instead of `runCommand` for clarity. Note that validation
is now mandatory as strict checking of options has been pushed down to the
derivation level due to freeformType consuming unmatched options. Furthermore,
validation can not occur when cross-compiling due to current limitations.

A new option `publicHostKey` was added to the `buildMachines`
submodule corresponding to the base64 encoded public host key settings
exposed in the builder syntax. The build machine generation was subsequently
rewritten to use `concatStringsSep` for better performance by grouping
concatenations.

[1] - https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md
2022-01-26 21:04:50 -05:00
Pamplemousse 5148813e17 modules/taskserver: Minor update
* documentation
    - update link
    - minor consistency update
  * make tests pass
2022-01-26 21:56:11 +01:00
Martin Weinelt 89e18a19cd
Merge pull request #156738 from mweinelt/hass-ping 2022-01-26 00:08:47 +01:00
Pascal Bach ee59b97045
Merge pull request #155473 from yayayayaka/matrix-synapse-administration
nixos/matrix-synapse: Wrap register_new_matrix_user
2022-01-25 22:10:03 +01:00
Pascal Bach c0ad24ee1d
Merge pull request #155703 from dali99/synapse-webclient
nixos/matrix-synapse: Remove webclient from default listener
2022-01-25 22:03:34 +01:00
Lara 04560b9163 nixos/gitlab: Add additional paths to systemd.tmpfiles.rules
This fixes the NixOS gitlab test failure since gitlab 14.7.0.
2022-01-25 19:05:49 +01:00
Martin Weinelt d4061dcc6e
nixos/home-assistant: allow capset with components using ping command 2022-01-25 18:29:16 +01:00
Alexander Nortung 41dd1d4d8b nixos/autorandr: refactor
The autorandr module now provides options to set hooks declaratively
It also provides options to set profiles declaratively.
2022-01-25 10:50:46 +01:00
Lara 2a701e8061 nixos/matrix-synapse: Wrap register_new_matrix_user
`register_new_matrix_user` is a script provided by the matrix-synapse
package to create a new matrix user on the command line.

This commit provides a wrapper around `register_new_matrix_user` that
automatically passes the url (and `registration_shared_secret`, if
present) as CLI arguments.
2022-01-23 11:27:39 +00:00
K900 6cecc1f603 n8n: 0.105.0 -> 0.160.0, fix build
- regenerate everything
- hardcode to build with node 14 (upstream doesn't support 16 yet)
- remove optional deps to make things build without python2
- set HOME in service environment to prevent crashing

Changes in node-*.nix are autogenerated.
2022-01-22 23:43:56 +03:00
Maximilian Bosch fde7c9d409
Merge pull request #155499 from bachp/gitea-dump-file
nixos/gitea: allow specifying dump format and name
2022-01-20 20:11:51 +01:00
Daniel Olsen 88362d1a35 nixos/matrix-synapse: Remove webclient from default listener
Webclient only allows serving a web directory under /_matrix/client
This only incentivizes running the client under the same domain as the homeserver.
Which is not recommended due to CORS.
2022-01-19 19:45:57 +01:00
bb2020 272fc86d2c nixos/mbpfan: convert to structural settings 2022-01-18 21:31:33 +03:00
bb2020 6f7bf7bc46 nixos/mbpfan: set aggressive default values 2022-01-18 21:26:52 +03:00
Pascal Bach fa233bca31 nixos/gitea: allow specifying dump format and name 2022-01-18 18:05:33 +01:00
Artturi 78ff70f529
Merge pull request #153762 from Artturin/ananicymod1 2022-01-18 10:49:13 +02:00
piegames 71358dd070
Merge pull request #154659: nixos/heisenbridge: Improve hardening 2022-01-18 01:30:12 +01:00
Sandro 55c5f68771
Merge pull request #152246 from pasqui23/beesd 2022-01-16 18:08:54 +01:00
piegames d9172e7a1a fixup! nixos/heisenbridge: Improve hardening 2022-01-13 23:33:23 +01:00
piegames 4b165e7675 nixos/heisenbridge: Fix/improve enable option description
See https://github.com/NixOS/nixpkgs/pull/154831#discussion_r783858597 for context
2022-01-13 13:28:31 +01:00
piegames 854a65fd47 nixos/heisenbridge: Improve hardening
Systemd score is "1.6 OK 🙂"
2022-01-13 13:28:03 +01:00
adisbladis 72908cb5a8 services.heisenbridge: Don't use lt/gt signs in mkEnableOption
It breaks the XML manual generation.
2022-01-13 13:38:24 +12:00
Antoine Martin 08a4548737 nixos/paperless-ng: use own redis instance
Following the changes in #142635
2022-01-07 16:05:18 +01:00
Artturin be9c5fe4b7 nixos/ananicy: apply cgroup workaround if v2 is enabled 2022-01-06 21:55:42 +02:00
Robert Hensing 70d27303da
Merge pull request #149532 from pennae/split-docs-build
nixos/*: split docs build
2022-01-04 22:33:23 +01:00
piegames ae040631c9
Merge pull request #142758: Add Heisenbridge module 2022-01-03 18:05:55 +01:00
piegames 4d69ad4b1f nixos/heisenbridge: Init 2022-01-03 15:40:40 +01:00
Philipp 3d47865f7f nixos/matrix-conduit: init 2022-01-03 15:36:56 +01:00
pennae fc614c37c6 nixos/documentation: split options doc build
most modules can be evaluated for their documentation in a very
restricted environment that doesn't include all of nixpkgs. this
evaluation can then be cached and reused for subsequent builds, merging
only documentation that has changed into the cached set. since nixos
ships with a large number of modules of which only a few are used in any
given config this can save evaluation a huge percentage of nixos
options available in any given config.

in tests of this caching, despite having to copy most of nixos/, saves
about 80% of the time needed to build the system manual, or about two
second on the machine used for testing. build time for a full system
config shrank from 9.4s to 7.4s, while turning documentation off
entirely shortened the build to 7.1s.
2022-01-02 19:46:13 +01:00
Martin Weinelt 15f577daaa
couchpotato, nixos/couchpotato: remove
Using python2 and abadoned upstream in 2020, last release in 2015.
2022-01-02 13:38:11 +01:00
Martin Weinelt 5ecf13007d
nixos/mwlib: remove
Built upon python2 only dependencies that were marked broken since 2019.
2022-01-01 02:09:11 +01:00
pasqui23 4aaa2ba5e6
nixos/beesd: avoid royal we
Co-authored-by: Charles Duffy <charles@dyfis.net>
2021-12-30 01:20:04 +00:00
pennae 55daffc1c9 nixos/sourcehut: add missing defaultText, escape antiquotations 2021-12-29 20:12:03 +01:00
Yureka 407d75ae11 nixos/mautrix-telegram: run alembic only if available 2021-12-29 19:28:24 +01:00
tomberek 94cb489156
Merge pull request #133984 from ju1m/sourcehut
nixos/sourcehut: updates, fixes, hardening
2021-12-28 22:29:36 -05:00
Julien Moutinho 42da4f78d8 nixos/sourcehut: add more tests 2021-12-28 22:18:45 -05:00
Julien Moutinho e1549f5df9 nixos/sourcehut: fix links to gitsrht-update-hook 2021-12-28 22:18:44 -05:00
Julien Moutinho ac2a39ac75 nixos/sourcehut: fix post-update-script 2021-12-28 22:18:44 -05:00
Julien Moutinho 96e103cfe3 nixos/sourcehut: fix OnCalendar 2021-12-28 22:18:44 -05:00
Julien Moutinho 8ed7fd0f3a nixos/sourcehut: full rewrite, with fixes and hardening 2021-12-28 22:18:40 -05:00
Alexandre Iooss 29bcdaade3 nixos/libreddit: remove redirect option 2021-12-28 12:14:08 +01:00
Alexandre Iooss d68f731ba2 nixos/libreddit: systemd unit hardening 2021-12-28 12:14:07 +01:00
Pasquale 5c294275b4
nixos/beesd: requres mount for the mount point specified 2021-12-26 20:52:03 +01:00
ajs124 e6188c00f0
Merge pull request #149387 from sumnerevans/matrix-synapse-1.49
matrix-synapse: 1.48.0 -> 1.49.0
2021-12-17 19:51:34 +00:00
Graham Christensen 06edb74413
Merge pull request #148785 from pennae/more-option-doc-staticizing
treewide: more defaultText for options
2021-12-17 11:14:08 -05:00
Sumner Evans c0a6554847
matrix-synapse: 1.48.0 -> 1.49.0 2021-12-14 10:34:41 -07:00
erdnaxe cf504b2330
nixos/nitter: remove syslog.target from service (#150224) 2021-12-11 14:45:54 -05:00
Mikael 4c39a29128
modules/nix-daemon: Amend daemon(CPU|IO)Sched(Policy|Class) description (#147497)
Suggest appropriate values for various types of systems and add some
formatting.
2021-12-10 11:30:51 +01:00
pennae e67a646a92 treewide: add defaultText to remaining options
these are mostly options that use alias bindings, bindings to constants,
or bindings to calculated values.
2021-12-09 01:42:24 +01:00
pennae 2d564521c0 treewide: add literalDocBook text to options with complex defaults
some options have default that are best described in prose, such as
defaults that depend on the system stateVersion, defaults that are
derivations specific to the surrounding context, or those where the
expression is much longer and harder to understand than a simple text
snippet.
2021-12-09 01:38:24 +01:00
pennae b9950385e5 treewide: make option examples constant
escape interpolations in examples, or replace them where they are not
useful.
2021-12-09 01:38:24 +01:00
pennae e72435e612 treewide: make option descriptions constants
escape interpolations in descriptions where possible, replace them with
sufficiently descriptive text elsewhere. also expand cfg.* paths in
descriptions.
2021-12-09 01:21:04 +01:00
pennae ed673a69db treewide: add defaultText for options with simple cfg.* expression defaults
adds defaultText for options with defaults that use only literals, full config.*
paths, and the cfg shortcut binding.
2021-12-09 01:14:16 +01:00
pennae fb0e5be843 treewide: add defaultText for options with simple interpolation defaults
adds defaultText for all options that use `cfg.*` values in their
defaults, but only for interpolations with no extra processing (other
than toString where necessary)
2021-12-09 01:13:48 +01:00
pennae e24a8775a8 treewide: set defaultText for options using simple path defaults
adds defaultText for all options that set their default to a path expression
using the ubiquitous `cfg` shortcut bindings.
2021-12-09 01:12:13 +01:00
Janne Heß e14d34f80f
nixos/dysnomia: Type all options 2021-12-07 18:53:18 +01:00
Martin Weinelt 1d1b09c7c1
Merge pull request #148752 from sweber83/sw/zigbee2mqtt-1.22.1 2021-12-06 22:54:42 +01:00
Martin Weinelt 96d69e40f2 nixos/zigbee2mqtt: run as zigbee2mqtt group
Not setting a group is a security defect, since that will run the unit
under the root group.

Fixes: 1af87596 ("nixos/zigbee2mqtt: init")
2021-12-06 18:30:01 +01:00
Simon Weber 200c36255f nixos/zigbee2mqtt: no longer pass dataDir to package 2021-12-06 18:28:59 +01:00
Robert Hensing 862d167f17
Merge pull request #147441 from pennae/option-doc-staticizing
nixos/*: add trivial defaultText to options where applicable
2021-12-06 01:35:38 +01:00
pennae c694c35f9d nixos/*: escape pkgs reference in examples and descriptions 2021-12-06 00:38:05 +01:00
Artturi 493d66a225
Merge pull request #145732 from gardspirito/mx-puppet-discord 2021-12-04 23:12:09 +02:00
pennae 2512455639 nixos/*: add trivial defaultText for options with simple defaults 2021-12-02 22:35:04 +01:00
Martin Weinelt 254dd2a102 nixos/home-assistant: consider extraComponents in hardening
Previously the extraComponents added to an overriden package would not
have been considered in hardening measures enforced by the module.

Home Assistant is warning the user about component definitions having
moved away from YAML, so using an override to include support for a
component might become the better way moving forward.
2021-12-01 01:09:52 +01:00
Thiago Kenji Okada 25cdc0a9c9
Merge pull request #147490 from illdefined/nix-daemon
modules/nix-daemon: Add missing mk(Rename|Removed)OptionModule
2021-11-26 19:31:02 -03:00
Mikael Voss 257e92258e
modules/nix-daemon: Add missing mk(Rename|Removed)OptionModule
Commit 3a92a1a replaced the nix.daemonNiceLevel and nix.daemonIONiceLevel
options. This commit adds appropriate mk(Rename|Removed)OptionModule.
2021-11-26 13:25:20 +01:00
Samuel Dionne-Riel 8e92630aae nixos: Provide nix-bash-completions again for stable commands 2021-11-26 02:16:56 -05:00
Sandro 338bf1f1b2
Merge pull request #143995 from erictapen/systemd-workingdirectory 2021-11-22 16:25:54 +01:00
Victor Freire 47f638403e nixos/xmrig: add kernel module msr 2021-11-17 18:53:58 -03:00
Victor Freire ed312a6815 nixos/xmrig: add services.xmrig to module-list.nix 2021-11-17 12:29:40 -03:00
Artturin a7ea834b17 nixos/plex: replace literalExample with literalExpression 2021-11-16 20:37:44 +02:00
Sandro a0a5e0be1c
Merge pull request #139553 from andrew-d/andrew/plex-scanners 2021-11-16 19:17:31 +01:00
Mikael Voss ee8e993fd4 modules/nix-daemon: Replace daemon(IO)NiceLevel options
The nix.daemonNiceLevel options allows for setting the nice level of the
Nix daemon process. On a modern Linux kernel with group scheduling the
nice level only affects threads relative to other threads in the same
task group (see sched(7)). Therefore this option has not the effect one
might expect.

The options daemonCPUSchedPolicy and daemonIOSchedClass are introduced
and the daemonIONiceLevel option renamed to daemonIOSchedPrority for
consistency. These options allow for more effective control over CPU
and I/O scheduling.

Instead of setting daemonNiceLevel to a high value to increase the
responsiveness of an interactive system during builds -- which would not
have the desired effect, as described above -- one could set both
daemonCPUSchedPolicy and daemonIOSchedClass to idle.
2021-11-15 18:34:17 +01:00
gardspirito a3358146df
nixos/mx-puppet-discord: provide registration file & fix typo in settings example 2021-11-13 13:27:56 +03:00
Artturin 8743e81cd3 nixos/ananicy: init 2021-11-11 02:05:42 +02:00
Victor Freire 46180e407e nixos/xmrig: init 2021-11-06 15:04:14 -03:00
Kerstin Humm 6c8e827c23
nixos/gollum: Specify systemd WorkingDirectory 2021-10-31 13:37:00 +01:00