Commit Graph

37098 Commits

Author SHA1 Message Date
Patrick Steinhardt
a8617e2b0d nixos/networkd: allow configuring AckFilter for CAKE qdisc
The CAKE section for systemd.network units allows configuring whether or
not redundant ACKs should be dropped. This option corresponds to the
respective tc-cake(8) params "ack-filter", "ack-filter-aggressive" or
"no-ack-filter".

Add support for these values in the `cakeConfig` module so that users
can configure it.
2023-11-19 03:40:51 +11:00
Janik H.
fa9cdc83ab
nixos/firewall: install nixos-firewall-tool for iptables by default 2023-11-18 17:08:30 +01:00
Madoura
05b651843e
rl-2311: Note bcachefs kernel deprecation changes 2023-11-18 09:58:59 -06:00
Madoura
c2450c4515
treewide: add bcachefsLinuxTesting and bcachefsLinuxTesting tests
nixos/tests/installer: add bcachefsLinuxTesting and bcachefsLinuxTesting tests

bcachefs-tools: add bcachefsLinuxTesting and bcachefsLinuxTesting tests
2023-11-18 09:58:56 -06:00
Madoura
890cf0a79c
nixos/bcachefs: soft-deprecate 'linuxPackages_testing_bcachefs'
'bcachefs' is included in the linux kernel since 6.7-rc1
2023-11-18 09:58:51 -06:00
Nick Cao
d936414252
Merge pull request #268132 from bendlas/forgejo-release-notes
nixos/forgejo/docs: fix typo
2023-11-18 09:39:29 -05:00
Madoura
0adbda28d3
nixos/bcachefs: remove 'with lib;' 2023-11-18 07:59:01 -06:00
Yang, Bo
6d69feb35e google-compute-image: add the missing /boot filesystem 2023-11-18 13:37:42 +01:00
emilylange
b3e8dae766 nixos/forgejo: remove postgresql_15 permission work-around
This is no longer necessary as of
ccfe07c316.

Previously: b8585a119c.
2023-11-18 12:14:09 +01:00
Ivan Mincik
a08880000d geoserver: add nixos test 2023-11-18 11:13:05 +01:00
Philip Taron
bc7a939ced nixos/networkd: add [IPVLAN] and [IPVTAP] configuration options to systemd.netdev files
[IPVLAN](https://www.freedesktop.org/software/systemd/man/latest/systemd.netdev.html#%5BIPVLAN%5D%20Section%20Options)
[IPVTAP](https://www.freedesktop.org/software/systemd/man/latest/systemd.netdev.html#%5BIPVTAP%5D%20Section%20Options)
2023-11-18 08:43:21 +01:00
Philip Taron
7686f24675 nixos/networkd: add ipvtap kind to netdev and IPVTAP= to network
From `man systemd.netdev`: https://www.freedesktop.org/software/systemd/man/latest/systemd.netdev.html#Supported%20netdev%20kinds

From `man systemd.network`: https://www.freedesktop.org/software/systemd/man/latest/systemd.network.html#IPoIB=
2023-11-18 08:43:21 +01:00
Ryan Lahfa
d3530f494c
Merge pull request #264358 from RaitoBezarius/drop-nodejs 2023-11-17 23:26:13 +01:00
Felix Buehler
7f9abdcfcb nixos/nextcloud: fix docu of packages 2023-11-17 23:16:23 +01:00
William McKinnon
869fb56797 nixos/syncthing: respect the dataDir option
The previous -home argument worked as such:
"Set common configuration and data directory. The default configuration directory is $HOME/.config/syncthing (Unix-like), $HOME/Library/Application Support/Syncthing (Mac) and %LOCALAPPDATA%\Syncthing (Windows)"

This resulted in syncthing not respecting different home and data dirs
declared in its config. The default behaviour will remain the same, as
we set the datadir default value to homeDir + .config/syncthing.
2023-11-17 22:58:46 +01:00
Julien Malka
4d968c70fb
Merge pull request #265365 from JulienMalka/systemd-boot-garbage-test
nixos/tests/systemd-boot: add garbage-collect-entry test
2023-11-17 22:34:30 +01:00
Julien Malka
cac11727b3
Merge pull request #227588 from camillemndn/jitsi-meet
nixos/jitsi-meet: updated prosody, support secure domain setup and Excalidraw whiteboards
2023-11-17 22:08:05 +01:00
Adam C. Stephens
4b8d7d814e
Merge pull request #265556 from adamcstephens/slimserver/fix
slimserver: fix broken package
2023-11-17 15:47:26 -05:00
Raito Bezarius
7d0e6984c6 rl-2311: explain how dependent packages were removed due to Node.js drop 2023-11-17 20:26:55 +01:00
Raito Bezarius
72911a99d3 code-server: drop
Depends on Node.js 16 and cannot be trivially upgraded to Node.js 18.
2023-11-17 20:26:55 +01:00
Raito Bezarius
022ee4d701 kibana7: drop
Depends on EOL software and no maintenance has been attempted to change this after a ping
(https://github.com/NixOS/nixpkgs/issues/259178)
Feel free to adopt and re-introduce if you care about this software.

This will probably seriously hamper ELK usability in nixpkgs, but as it
receives no maintenance…
2023-11-17 20:26:55 +01:00
Ryan Lahfa
65481ecfef
Merge pull request #267985 from JulienMalka/absent-bootspec 2023-11-17 18:07:10 +01:00
Ryan Lahfa
ccfe07c316
Merge pull request #266270 from Ma27/postgresql-ownership-15 2023-11-17 18:02:17 +01:00
Herwig Hochleitner
8c441fc2a7 nixos/forgejo/docs: fix typo 2023-11-17 17:18:57 +01:00
Herwig Hochleitner
e7c7d97167
nixos/postgresql: document psql 15 changes (#267238)
* nixos/postgresql: document psql 15 changes

* nixos/postgresql: manual heading ids

* nixos/postgresql: reword warning against initialScript

Co-authored-by: Ryan Lahfa <masterancpp@gmail.com>

* nixos/postgresql: wording PERMISSIONS -> PRIVILEGES

Co-authored-by: Ryan Lahfa <masterancpp@gmail.com>

* nixos/postgresql: document intermediate oneshot / service user method

* nixos/postgresql/docs: clarify security benefits of `ensureDBOwnership`

* nixos/postgresql/docs: service type -> serviceConfig.Type

---------

Co-authored-by: Ryan Lahfa <masterancpp@gmail.com>
2023-11-17 16:06:01 +01:00
Raito Bezarius
82037ad0b8 rl-2311: inform about services.postgresql.ensurePermissions deprecation 2023-11-17 15:57:19 +01:00
Herwig Hochleitner
20832d5995
nixos/forgejo: changelog and migration instructions (#267248)
* nixos/forgejo: changelog and migration instructions

* nixos/forgejo/docs: clarify sentence

Co-authored-by: Trolli Schmittlauch <schmittlauch@users.noreply.github.com>

* nixos/forgejo/docs: document migration via gitea impersonation

* nixos/forgejo/docs: note about url change on migration

* nixos/forgejo/docs: note about migration (non-)requirement

* nixos/forgejo/docs: header ids

* nixos/forgejo/docs: clarify release notes entry

Co-authored-by: Emily <git@emilylange.de>

* nixos/forgejo/docs: improve manual entry

Co-authored-by: Emily <git@emilylange.de>

* nixos/forgejo/docs: move changelog line to the middle of the section

as noted <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

---------

Co-authored-by: Trolli Schmittlauch <schmittlauch@users.noreply.github.com>
Co-authored-by: Emily <git@emilylange.de>
2023-11-17 15:55:24 +01:00
Raito Bezarius
10baca4935 nixos/invidious: do not use ensureDBOwnership
Invidious uses a strange setup where the database name is different from the system username
for non-explicit reasons.

Because of that, it makes it hard to migrate it to use `ensureDBOwnership`, we leave it to Invidious' maintainers
to pick up the pieces.
2023-11-17 15:53:08 +01:00
Raito Bezarius
f653734c4d nixos/mobilizon: do not use ensureDBOwnership
Mobilizon can have a custom database username and it is not trivial to sort out how to remove this.

In the meantime, for the upcoming 23.11 release, I apply the classical workaround
and defer to Mobilizon's maintainers.
2023-11-17 15:52:51 +01:00
Raito Bezarius
7cd63bff21 nixos/sourcehut: do not use ensureDBOwnership
Given that SourceHut uses unfortunate defaults for database name, it will not
be realistic to fix this in time for 23.11.

We will leave the workaround and leave it to SourceHut maintainers to pick up the work
to clean this up after 23.11.
2023-11-17 15:52:51 +01:00
Raito Bezarius
73198870cd nixos/tests/pgbouncer: do not use ensureDBOwnership
pgbouncer test is special in the sense where it actually tries
to connect via SCRAM SHA, let's avoid `ensureDBOwnership` here
otherwise for some reason pgbouncer will try to look in pg_shadow
for the authuser…
2023-11-17 15:52:51 +01:00
Julien Malka
81e378618e
nixos/systemd-boot: allow for bootspec-less generations
Generation built with old versions of NixOS with no bootspec
support may still be present on the system and must be
accounted for.
2023-11-17 14:39:04 +01:00
Adam Stephens
226b8a9f9a
nixos/tests/slimserver: add end to end with squeezelite 2023-11-17 08:18:34 -05:00
Adam Stephens
431b9f23ad
slimserver: add bin symlink and meta.mainProgram 2023-11-17 08:18:32 -05:00
Adam Stephens
aafccbad47
nixos/slimserver: init service test 2023-11-17 08:18:31 -05:00
joris
18f3c1fb55 services/squid: explicit usage of coreutils' kill on ExecReload 2023-11-17 13:55:21 +01:00
fortuneteller2k
d3c568b7bc maintainers: fortuneteller2k -> moni 2023-11-17 18:03:27 +08:00
Artturi
28d9d26f5a
Merge pull request #264480 from paumr/archi_test_init 2023-11-17 04:19:37 +02:00
Ilan Joselevich
d7e7a2136e
Merge pull request #267761 from jpds/grafana-restart-on-failure
nixos/grafana: Set systemd unit to restart on failure
2023-11-17 00:59:25 +00:00
paumr
f561320b8e nixos/tests/archi: init smoke tests for Archi 2023-11-17 01:09:08 +01:00
Weijia Wang
478409d4c6 alsa-utils: fix eval 2023-11-17 00:46:24 +01:00
Weijia Wang
5d0ea948f7
Merge pull request #267490 from onny/wordpress-update5
wordpress6_4: init at 6.4.1; wordpressPackages: update
2023-11-16 22:24:07 +01:00
Vladimír Čunát
a7a8f8253d
Merge #263535: staging-next 2023-10-26 2023-11-16 22:06:22 +01:00
Matthias Beyer
da1923d134
Merge pull request #267931 from picnoir/pic/toot-0-38-2
toot: 0.38.1 -> 0.38.2
2023-11-16 21:20:06 +01:00
Elian Doran
0f35107810 trilium-{desktop,server}: 0.60.4 -> 0.61.14 2023-11-16 22:08:54 +02:00
Daniel Ziltener
beca814e27 Modify Pharo entry in rl-2311.section.md 2023-11-16 19:06:59 +00:00
github-actions[bot]
dba5c9ef4e
Merge master into staging-next 2023-11-16 18:01:17 +00:00
Pol Dellaiera
3acc2484cf
Merge pull request #267560 from anthonyroussel/bugfix/plantuml-server-nixos
nixos/plantuml-server: fix
2023-11-16 18:32:44 +01:00
Félix Baylac Jacqué
7e7d403939 nixosTests.pleroma: un-vendor toot
Upstream released 0.38.2. This new release contains the pleroma fix we
previously were getting from master.

We don't need this override anymore to get the test to succeed.

https://github.com/ihabunek/toot/issues/399#issuecomment-1814712723
2023-11-16 18:16:15 +01:00
Kim Lindberger
9c4df4d618
Merge pull request #246992 from cransom/cransom-parsedmarc-smtp
nixos/parsedmarc: fix validation for smtp
2023-11-16 15:06:20 +01:00
github-actions[bot]
301fcc69ba
Merge master into staging-next 2023-11-16 12:01:02 +00:00
Sarah Brofeldt
54f00576aa
Merge pull request #265193 from 0z13/opensearch-module-link-plugins
nixos/opensearch: link plugins from opensearch package
2023-11-16 11:30:09 +01:00
Michele Guerini Rocco
f4b1ed666e
Merge pull request #245888 from rnhmjoj/pr-dnscrypt
nixos/tests/dnscrypt-wrapper: test TCP and run on port 443
2023-11-16 10:49:25 +01:00
Vladimír Čunát
0fe5300699
Merge branch 'master' into staging-next 2023-11-16 09:49:24 +01:00
Lin Jian
bf8a6ad72c
Merge pull request #265733 from nbdd0121/unbound
nixos/unbound: fix wrong syscall filter and tighten sandbox
2023-11-16 14:38:46 +08:00
Jonathan Davies
58cbf94b38 nixos/grafana: Set systemd unit to restart on failure 2023-11-15 23:20:59 +00:00
Adrian Pistol
7a1d45811e nixos/chrony: Let Chrony control/track RTC drift 2023-11-15 15:09:22 -06:00
rnhmjoj
7f71262745
nixos/tests/dnscrypt-wrapper: test TCP and run on port 443
- Test both TCP and UDP queries (tinydns → bind)
- Test IPv6 by default
- Run DNSCrypt on port 443 along with HTTPS
2023-11-15 21:42:40 +01:00
Weijia Wang
1a85914512
Merge pull request #266528 from lucasbergman/unifi-jvmoptions
nixos/unifi: Add the ability to specify extra JVM options
2023-11-15 17:53:25 +01:00
Anthony Roussel
8c7c1e7a30
nixos/plantuml-server: remove deprecated allowPlantumlInclude option
See https://github.com/plantuml/plantuml-server/pull/301
2023-11-15 15:14:28 +01:00
Anthony Roussel
deae39af43
nixos/plantuml-server: use jetty_11
PlantUML Server does not support Jetty versions higher than 12.x.

Jetty 12.x has introduced major breaking changes, see
* https://github.com/jetty/jetty.project/releases/tag/jetty-12.0.0
* https://eclipse.dev/jetty/documentation/jetty-12/programming-guide/index.html#pg-migration-11-to-12
2023-11-15 15:14:28 +01:00
Anthony Roussel
2c94d267c2
nixos/plantuml-server: use mkPackageOptionMD 2023-11-15 15:12:58 +01:00
Anthony Roussel
3b17b80525
nixos/plantuml-server: add anthonyroussel to maintainers 2023-11-15 15:12:58 +01:00
Anthony Roussel
09e9d47508
nixos/plantuml-server: add hardening 2023-11-15 15:12:58 +01:00
Anthony Roussel
e3839eef71
nixos/plantuml-server: remove with lib; notation
https://nix.dev/guides/best-practices#with-scopes
2023-11-15 15:12:58 +01:00
Anthony Roussel
2b455c1649
nixosTests.plantuml-server: init 2023-11-15 15:12:56 +01:00
Izorkin
63ed35dac4 nixos/mastodon: update elasticsearch configuration 2023-11-15 14:01:47 +01:00
github-actions[bot]
eba04b3485
Merge master into staging-next 2023-11-15 12:01:18 +00:00
Ryan Lahfa
75fbff2576
Merge pull request #263442 from JulienMalka/systemd-boot-bootspec 2023-11-15 08:40:19 +01:00
Vladimír Čunát
c46eae0f35
Merge branch 'master' into staging-next 2023-11-15 07:33:10 +01:00
Samuel Dionne-Riel
3d88cc85dd
Merge pull request #262595 from tpwrules/fix-extra-config-documentation
nixos/kernel: correct kernelPatches.extraConfig documentation
2023-11-14 22:40:04 -05:00
Ryan Lahfa
d983d6c863
Merge pull request #251950 from erictapen/mastodon 2023-11-15 01:46:50 +01:00
Mario Rodas
1d8fbb4459
Merge pull request #267535 from ajs124/ejabber-drop-maint
nixos/test/ejabberd: remove myself as maintainer
2023-11-14 18:35:18 -05:00
ajs124
bf93b0bd3f nixos/test/ejabberd: remove myself as maintainer 2023-11-14 22:34:27 +01:00
zzywysm
3f4c802d26 initrd/autofs4: remove legacy references to autofs4 kernel module
Back in 2018, the kernel decided to remove the autofs4 module.

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a2225d931f75ddd3c39f4d0d195fad99dfd68671

This caused immediate problems with systemd, so the kernel allowed autofs4 as a config option that would simply map back to autofs.

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d02d21ea007b6b33cdaf15c2f84fb1fea996ecc2

Earlier this year, in July 2023, the kernel got tired of people not adapting to the autofs change, and forced the issue by fixing it within the kernel defconfigs, which NixOS uses as a starting point for their own kernel configs.

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1f2190d6b7112d22d3f8dfeca16a2f6a2f51444e

This commit reflects the post-2018 reality by changing the remaining autofs4 references to autofs. Since this change initially happened in kernel 4.18 and we no longer support 4.x kernels, we don't need any backwards-compatibility tweaks.
2023-11-14 15:37:50 -05:00
Kerstin Humm
c82195d9e8
mastodon: 4.1.6 -> 4.2.1
- run streaming processes in separate systemd services
- remove redundancy in test
- fix update script
- release notes

See https://github.com/mastodon/mastodon/releases/tag/v4.2.1 for details
2023-11-14 21:13:46 +01:00
Kerstin Humm
0f535d40f9
nixos/mastodon: fix integration test 2023-11-14 21:13:45 +01:00
Julien Malka
372d07dc29 nixos/systemd-boot: conform backend to RFC-0125
Now the builder is using Bootspec documents.
2023-11-14 20:37:07 +01:00
Léo Gaspard
b1c25de57b
nixos/acme: do not eat Let's Encrypt's request limits if misconfigured on first try (#266155) 2023-11-14 20:29:50 +01:00
Yang, Bo
a9b36a5fb3 nixos/doc: release notes for waagent provisioning 2023-11-14 19:47:27 +01:00
Yang, Bo
bff548fef1 waagent: enable provisioning 2023-11-14 19:47:27 +01:00
Nathan Henrie
6c69d3c9ca nixos/navidrome: add openFirewall option
This adds an option to the navidrome module to open the configured TCP
port in the firewall.
2023-11-14 19:29:08 +01:00
github-actions[bot]
6cc772a6fa
Merge master into staging-next 2023-11-14 18:01:11 +00:00
Jonas Heinrich
0d6a668d40 nixos/wordpress: Add test for wordpress6_4 2023-11-14 18:34:57 +01:00
Pierre Bourdon
68367e66e1
Merge pull request #267037 from nbraud/nixos/sudo/assertion
nixos/sudo: Update `cfg.package` assertion
2023-11-14 17:26:08 +01:00
Félix Baylac Jacqué
f80b2b510d nixosTests/pleroma: fix test
Two issues:

1. We need a subjectAltName on the TLS cert. Stolen from the akkoma
   test. <3 illdefined
2. There's a bug in the current toot release wrt. date parsing. It's
   been fixed upstream but it's not been released yet. Using the
   current toot master for this VM test to work around this.

Note: I warned upstream we'd need a new toot release.

Fixes https://github.com/NixOS/nixpkgs/issues/264951
2023-11-14 16:45:54 +01:00
Jonathan Zielinski
aca76b750d nixos/opensearch: link plugins from opensearch package
disable security module by default, it crashes unit expecting
certificates.
2023-11-14 14:00:30 +01:00
nicoo
d5a8e667d2 nixos/sudo: Update assertion message 2023-11-14 12:25:55 +00:00
Martin Weinelt
3c336a1647
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
- pkgs/development/libraries/gdcm/default.nix
2023-11-14 13:16:34 +01:00
Niklas Hambüchen
f9c7c12de6
Merge pull request #266702 from nh2/plausible-listen-address-no-distributed-erlang
plausible, nixos/plausible: Add `listenAddress` option
2023-11-14 10:52:21 +01:00
Niklas Hambüchen
fc3f56f2fe release notes: Mention removal of services.plausible.releaseCookiePath 2023-11-14 10:51:16 +01:00
Niklas Hambüchen
65a471717c plausible, nixos/plausible: Add listenAddress option.
This changes

* the plausible HTTP web server

to be listening on localhost only, explicitly.

This makes Plausible have an explicit safe default configuration,
like all other networked services in NixOS.

For background discussion, see: https://github.com/NixOS/nixpkgs/issues/130244

As per my upstream Plausible contribution
(https://github.com/plausible/analytics/pull/1190)
Plausible >= 1.5 also defaults to listening to localhost only;
nevertheless, this default should be stated explicitly in nixpkgs
for easier review and independence from upstream changes, and
a NixOS user must be able to configure the
`listenAddress`, as there are valid use cases for that.

Also, disable

* the Erlang Beam VM inter-node RPC port
* the Erlang EPMD port

because Plausible does not use them (see added comment).
This is done by setting `RELEASE_DISTRIBUTION=none`.

Thus, this commit also removes the NixOS setting `releaseCookiePath`,
because it now has no effect.
2023-11-14 10:51:16 +01:00
Jörg Thalheim
54fd866569 nixos/harmonia: set extra-allowed-users
This fixes the case where users enable harmonia but also have allowed-users set.
Having extra-allowed-users is a no-op when nix.settings.allowed-users is set to "*" (the default)
2023-11-14 10:37:39 +01:00
Aaron Jheng
c3104c4cad buildGoModule: deprecate vendorSha256 attribute 2023-11-14 09:37:22 +01:00
Silvan Mosberger
3e5bc28ec5
Merge pull request #266598 from infinisil/fix-fwupd
nixos/fwupd: Fix fwupd-refresh service
2023-11-14 08:56:25 +01:00
Silvan Mosberger
e89ad83555
Merge pull request #263059 from DanielSidhion/add-doc-convention
doc: commit header convention for documentation changes
2023-11-14 08:11:41 +01:00
github-actions[bot]
6a7c026ba7
Merge master into staging-next 2023-11-14 06:01:03 +00:00
eyjhb
2387a37fa0 nixos/flexget: remove TZ envvar 2023-11-14 06:35:40 +01:00
DS
e93a3d7b58 doc: separate commit header conventions for each area, info on docs changes. 2023-11-13 20:41:08 -08:00
github-actions[bot]
772c3bbbf5
Merge master into staging-next 2023-11-14 00:02:14 +00:00
Otavio Salvador
2318de7052 docker: move default from 20.10 to 24
Docker CE 20.10 seems to stop receiving security updates and bug fixes
after December 10, 2023[1].

1. https://github.com/moby/moby/discussions/45104

There is public commitment for longer maintenance and then it seems
risky to default to it during 23.11 life-cycle.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2023-11-13 20:58:12 -03:00
Felix Bühler
f2fc5b4195
Merge pull request #265696 from Stunkymonkey/nixos-exportarr
nixos/exportarr: init
2023-11-13 22:58:32 +01:00
Fabián Heredia Montiel
884449105e Merge remote-tracking branch 'origin/master' into staging-next 2023-11-13 14:31:51 -06:00
Raito Bezarius
d57926c0b6 nixos/postgresql: improve the assertions for equality of DB user and DB name
It is hard to figure out which one is offending without the database name.
2023-11-13 17:16:25 +01:00
Raito Bezarius
12797a6a39 nixos/postgresql: restore ensurePermissions and strong-deprecate it
As it is technically a breaking change, we should at least make a strong deprecation
of `ensurePermissions` and leave it in the broken state it is, for out of tree users.

We give them a 6 months notice to migrate away by doing so, which is honest.
In the meantime, we forbid usage of `ensurePermissions` inside of nixpkgs.
2023-11-13 17:16:25 +01:00
Maximilian Bosch
48459567ae nixos/postgresql: drop ensurePermissions, fix ensureUsers for postgresql15
Closes #216989

First of all, a bit of context: in PostgreSQL, newly created users don't
have the CREATE privilege on the public schema of a database even with
`ALL PRIVILEGES` granted via `ensurePermissions` which is how most of
the DB users are currently set up "declaratively"[1]. This means e.g. a
freshly deployed Nextcloud service will break early because Nextcloud
itself cannot CREATE any tables in the public schema anymore.

The other issue here is that `ensurePermissions` is a mere hack. It's
effectively a mixture of SQL code (e.g. `DATABASE foo` is relying on how
a value is substituted in a query. You'd have to parse a subset of SQL
to actually know which object are permissions granted to for a user).

After analyzing the existing modules I realized that in every case with
a single exception[2] the UNIX system user is equal to the db user is
equal to the db name and I don't see a compelling reason why people
would change that in 99% of the cases. In fact, some modules would even
break if you'd change that because the declarations of the system user &
the db user are mixed up[3].

So I decided to go with something new which restricts the ways to use
`ensure*` options rather than expanding those[4]. Effectively this means
that

* The DB user _must_ be equal to the DB name.
* Permissions are granted via `ensureDBOwnerhip` for an attribute-set in
  `ensureUsers`. That way, the user is actually the owner and can
  perform `CREATE`.
* For such a postgres user, a database must be declared in
  `ensureDatabases`.

For anything else, a custom state management should be implemented. This
can either be `initialScript`, doing it manual, outside of the module or
by implementing proper state management for postgresql[5], but the
current state of `ensure*` isn't even declarative, but a convergent tool
which is what Nix actually claims to _not_ do.

Regarding existing setups: there are effectively two options:

* Leave everything as-is (assuming that system user == db user == db
  name): then the DB user will automatically become the DB owner and
  everything else stays the same.

* Drop the `createDatabase = true;` declarations: nothing will change
  because a removal of `ensure*` statements is ignored, so it doesn't
  matter at all whether this option is kept after the first deploy (and
  later on you'd usually restore from backups anyways).

  The DB user isn't the owner of the DB then, but for an existing setup
  this is irrelevant because CREATE on the public schema isn't revoked
  from existing users (only not granted for new users).

[1] not really declarative though because removals of these statements
    are simply ignored for instance: https://github.com/NixOS/nixpkgs/issues/206467
[2] `services.invidious`: I removed the `ensure*` part temporarily
    because it IMHO falls into the category "manage the state on your
    own" (see the commit message). See also
    https://github.com/NixOS/nixpkgs/pull/265857
[3] e.g. roundcube had `"DATABASE ${cfg.database.username}" = "ALL PRIVILEGES";`
[4] As opposed to other changes that are considered a potential fix, but
    also add more things like collation for DBs or passwords that are
    _never_ touched again when changing those.
[5] As suggested in e.g. https://github.com/NixOS/nixpkgs/issues/206467
2023-11-13 17:16:25 +01:00
Molly Miller
9cec5c807a nixos/mailman: restart services on failure and increase mailman timeouts 2023-11-13 16:10:55 +01:00
Ryan Lahfa
8f1753206f
Merge pull request #267093 from ElvishJerricco/testing-backdoor-fix-ordering 2023-11-13 15:07:48 +01:00
Silvan Mosberger
fdee770336
Merge pull request #263575 from pbsds/contributing-link-naming-conventino
CONTRIBUTING: Add hotlinks to package and module reviewing guides, minor touchups
2023-11-13 14:01:33 +01:00
Peder Bergebakken Sundt
8feb68f965 {pkgs,nixos}/README.md: Hotlink package and module reviewing guidelines, fix references 2023-11-13 13:46:14 +01:00
Fabian Möller
cd631134df AusweisApp2: 1.26.7 -> 2.0.1 2023-11-13 13:43:39 +01:00
Jonas Heinrich
4f38dbab82
Merge pull request #266025 from onny/cups-firewall2
nixos/printing: Fix openFirewall option
2023-11-13 11:15:18 +01:00
Nick Cao
6c986b681d
Merge pull request #267110 from dadada/soft-typos
nixos/soft-serve: fix typos in option descriptions
2023-11-12 20:28:22 -05:00
Nick Cao
025064944d
Merge pull request #267120 from teutat3s/zhf/fix-prometheus-exporter-smokeping
nixosTests.prometheus-exporters.smokeping fix test
2023-11-12 20:23:34 -05:00
teutat3s
5458e56907
nixosTests.prometheus-exporters.smokeping fix test 2023-11-13 00:46:27 +01:00
dadada
f192930a79
nixos/soft-serve: fix typos in option descriptions 2023-11-12 22:34:54 +01:00
Will Fancher
1a2f2cf95d nixos/test-instrumentation: Fix backdoor ordering
In #256226, `backdoor.service` was changed to be part of
`sysinit.target` instead of having default dependencies. This broke
several tests that relied on `backdoor.service` starting after default
targets. For example, `systemd-boot.update` expects `/boot` to be
mounted as soon as the backdoor is running.

These tests really ought to be declaring their dependencies properly
with things like `machine.wait_for_unit("local-fs.target")`, because
it's useful for the backdoor to start as early as possible. But for
now, let's just order it the way it was before in stage 2, and use the
earlier ordering in the new stage 1 context.
2023-11-12 15:04:38 -05:00
Weijia Wang
74d102ce50 Merge branch 'master' into staging-next 2023-11-12 19:45:20 +01:00
Gaurav Juvekar
5ab4ce5d33 nixos/network-interfaces: fix typo in networking.fqdn 2023-11-12 08:47:01 -08:00
Jörg Thalheim
44cf4801c0 nixos/nix-serve: also set extra-allowed-users
This fixes the case where users enable nix-serve but also have allowed-users set.
Having extra-allowed-users is a no-op when nix.settings.allowed-users is set to "*" (the default)
2023-11-12 14:09:31 +01:00
github-actions[bot]
1b3033ebfb
Merge master into staging-next 2023-11-12 12:00:55 +00:00
Anthony Roussel
d4d6602ce3
nixos/thanos: remove with lib; notation
https://nix.dev/guides/best-practices#with-scopes
2023-11-12 11:21:47 +01:00
Anthony Roussel
65be712043
nixos/thanos: use mkPackageOptionMD 2023-11-12 11:08:53 +01:00
Anthony Roussel
9abb2a2116
nixos/thanos: remove deprecations
* replaced store.grpc.series-sample-limit by store.limits.request-samples
* replaced query.replica-label by query.replica-labels
* replaced store.addresses by endpoints
* removed block-sync-concurrency (removed upstream)
2023-11-12 11:08:52 +01:00
Anthony Roussel
abed24c0d6
nixos/thanos: fix documentation 2023-11-12 11:08:52 +01:00
Anthony Roussel
312e7f8ae0
nixos/thanos: add ExecReload command to SystemD services 2023-11-12 11:08:52 +01:00
Anthony Roussel
0d9bef343b
nixos/thanos: fix services.thanos.receive.labels config 2023-11-12 11:08:51 +01:00
Anthony Roussel
2074409c86
nixos/thanos: add query-frontend SystemD service 2023-11-12 11:08:51 +01:00
K900
2e5993d508 nixos/tests/udisks2: actually start udisks 2023-11-12 12:09:58 +03:00
Thomas Watson
ca84c463b9 nixos/systemd-boot: pass EFI variable flags during update too
8f2babd032 was partially reverted by mistake. Original message below

---

On some systems, EFI variables are not supported or otherwise wonky.
bootctl attempting to access them causes failures during bootloader
installations and updates. For such systems, NixOS provides the options
`boot.loader.efi.canTouchEfiVariables` and
`boot.loader.systemd-boot.graceful` which pass flags to bootctl that
change whether and how EFI variables are accessed.

Previously, these flags were only passed to bootctl during an install
operation. However, they also apply during an update operation, which
can cause the same sorts of errors. This change passes the flags during
update operations as well to prevent those errors.

Fixes https://github.com/NixOS/nixpkgs/issues/151336
2023-11-12 02:07:25 -05:00
Lucas Bergman
07828dc05b nixos/unifi: Add extraJvmOptions option
This can be useful for adding extra logging, tweaking garbage collector
parameters, and for using JMX to monitor the JVM.
2023-11-12 00:38:10 +00:00
Lucas Bergman
50ff8ff3f9 nixos/unifi: Switch command line args to a list
There's no functionality change here, but this makes it a bit more
convenient to add more args.
2023-11-12 00:32:50 +00:00
Lucas Bergman
2bc02c0383 nixos/unifi: Clean up formatting
This removes "with lib", which advances #208242 a bit, and cleans up a few
formatting nits found by nixfmt.
2023-11-12 00:28:40 +00:00
github-actions[bot]
33248a2caf
Merge master into staging-next 2023-11-12 00:02:14 +00:00
tomberek
7859adb9d6
Merge pull request #245394 from christoph-heiss/pkgs/sourcehut
sourcehut: update all component; lots of fixes
2023-11-11 13:42:19 -05:00
Peder Bergebakken Sundt
0e8902941b
Merge pull request #266469 from ambroisie/fix-tandoor-recipes
tandoor-recipes: fix `django-allauth`
2023-11-11 20:42:10 +02:00
Bruno BELANYI
2fa56fcb30 nixos/tests/tandoor-recipes: use SQLite
This is a work-around for getting the tests working until #216989 is
fixed.
2023-11-11 18:37:33 +00:00
github-actions[bot]
9776723357
Merge master into staging-next 2023-11-11 18:00:58 +00:00
Maciej Krüger
e9a5bf8ae4
Merge pull request #265712 from nbraud/nixos/sudo-rs/akkoma 2023-11-11 18:10:25 +01:00
Maciej Krüger
9c61d268a7
Merge pull request #265727 from nbraud/nixos/sudo-rs/google_oslogin 2023-11-11 18:09:39 +01:00
Maciej Krüger
c647a12d7f
Merge pull request #265725 from nbraud/nixos/sudo-rs/gce 2023-11-11 18:09:20 +01:00
K900
e792d7fec0
Merge pull request #264442 from anthonyroussel/update-url-redirects
treewide: fix redirected and broken URLs
2023-11-11 18:08:59 +03:00
Christoph Heiss
88a3d2a0b4
sourcehut: fix postgresql database permission for postgresql >= 15
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 15:50:16 +01:00
Niklas Hambüchen
f9611764c6 manual: Fix QEMU_NET_OPTS VM-side address.
In my earlier commit

    manual: Don't suggest exposing VM port to local network.

I made a side change titled

    Use `127.0.0.1` also on the VM side, otherwise connections to
    services that, in the VM, bind to `127.0.0.1` only
    (doing the safe approach) do not work.

Unfortunately, that was wrong:

QEMU inside the VM always communicates via the virtualised
Ethernet interface, not via the VM's loopback interface.
So trying to connect to `127.0.0.1` on the VM's side cannot work.
2023-11-11 15:40:55 +01:00
Christoph Heiss
66b86f8a2e
sourcehut: de-duplicate nginx add_header directives
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 14:14:59 +01:00
Christoph Heiss
acd21dad52
sourcehut: use systemd.tmpfiles instead of manually creating logfiles
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 14:14:59 +01:00
Christoph Heiss
641e54bb28
sourcehut: create logs directory unconditionally
An empty log directory, in case it stays unused, does not hurt anyone.

Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:47 +01:00
Christoph Heiss
fc6addb147
sourcehut: reword api-origin option description
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:47 +01:00
Christoph Heiss
589b75bdc8
sourcehut: disable IPv6 completely for tests
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:47 +01:00
Christoph Heiss
78cc2783c8
sourcehut: drop obsolete services array in favor of indivdual enable flags
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:47 +01:00
Christoph Heiss
6b25e09d2d
sourcehut: fix up some more bin paths
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:47 +01:00
Christoph Heiss
5841d27497
sourcehut: explicitly disallow openssh to socket-active
This breaks the (already fragile) gitsrht-dispatch -> gitsrht-keys
command chain.

Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:47 +01:00
Christoph Heiss
c39ba7f5b1
sourcehut: remove set -x from ssh commands
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:46 +01:00
Christoph Heiss
6648488333
sourcehut: fix logging of git/hg ssh commands
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:45 +01:00
Christoph Heiss
6e51802196
sourcehut: fix repos path by using actual settings value
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:32 +01:00
Christoph Heiss
c123a37be6
sourcehut.gitsrht: 0.78.20 -> 0.84.2
Newer version of the gitsrht-api service call setrlimit() on startup,
thus allow it in the `SystemCallFilter` definition for the service.

Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 13:01:30 +01:00
github-actions[bot]
652204165d
Merge master into staging-next 2023-11-11 12:00:58 +00:00
Christoph Heiss
d703173520
sourcehut: make /query endpoint config common to all services
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-11-11 12:39:28 +01:00
Anthony Roussel
e30f48be94
treewide: fix redirected and broken URLs
Using the script in maintainers/scripts/update-redirected-urls.sh
2023-11-11 10:49:01 +01:00
Félix Baylac Jacqué
dfa45288af maintainers: ninjatrappeur -> picnoir
I changed my nickname from Ninjatrappeur to Picnoir. My github id is
stable, it shouldn't break too much stuff.

I took advantage of this handle change to remove myself from the
hostapd maintainers: I don't use NixOS as a router anymore.
2023-11-11 08:31:16 +01:00
github-actions[bot]
912311b7fd
Merge master into staging-next 2023-11-11 00:02:21 +00:00
tu-maurice
40c06a143f prayer: remove 2023-11-10 20:44:28 -03:00
Pyrox
8575645827 yarn-berry: 3.4.1 -> 4.0.1
The only breaking change here is that Yarn drops support for NodeJS versions <18.12

Besides that, no major changes that I think deserve a mention
2023-11-10 15:15:40 -08:00
Martin Weinelt
3536221702
Merge pull request #160346 from mweinelt/hass-custom-everything
home-assistant: custom components and lovelace modules
2023-11-11 00:08:25 +01:00
Kira Bruneau
0cc094c041
Merge pull request #265886 from kira-bruneau/at-spi2-core
nixos/gnome/at-spi2-core: fix disabling a11y in all contexts
2023-11-10 16:31:53 -05:00
Niklas Hambüchen
dcceeb9868 manual: tests: Describe how to port-forward into test VMs 2023-11-10 22:29:12 +01:00
Niklas Hambüchen
5d73d954cd manual: Don't suggest exposing VM port to local network.
The setting

    QEMU_NET_OPTS="hostfwd=tcp::2222-:22"

caused the VM's port 2222 to be advertised on the host as
`0.0.0.0:2222`, thus anybody in the local network of the host
could SSH into the VM.
Instead, port-forward to localhost only.

Use `127.0.0.1` also on the VM side, otherwise connections to
services that, in the VM, bind to `127.0.0.1` only
(doing the safe approach) do not work.

See e.g. https://github.com/NixOS/nixpkgs/issues/100192
for more info why localhost listening is the best default.
2023-11-10 22:29:12 +01:00
Martin Weinelt
6d05ad6a6b
nixos/rl-2311: mention new home-assistant module features 2023-11-10 22:00:38 +01:00
Martin Weinelt
c85cecedf1
nixos/tests/home-assistant: test custom things cleanup
Make sure we properly remove custom components and custom lovelace
modules, when they're not configured anymore.
2023-11-10 22:00:38 +01:00
Martin Weinelt
8108ce0a4f
nixos/tests/home-assistant: test loading custom components 2023-11-10 22:00:37 +01:00
Martin Weinelt
f2bd10bb1e
nixos/tests/home-assistant: test loading lovelace modules 2023-11-10 22:00:37 +01:00
Martin Weinelt
f30192ae6f
nixos/home-assistant: add customComponents support
Allows passing custom component packages, that get installed into
home-assistant's state directory.
Python depedencies, that are propagated from the custom component
get passed into `extraPackages`, so they are available to
home-assistant at runtime.

This is implemented in a way, that allows coexistence with custom
components not managed through the NixOS module.
2023-11-10 22:00:36 +01:00
Martin Weinelt
9a941c58e5
nixos/home-assistant: add customLovelaceModules support
Allows the installation of custom lovelace modules, that can inject
css/js into the frontend and offer a wide variety of widgets.
2023-11-10 22:00:30 +01:00
Alyssa Ross
afabc4a15d
Merge remote-tracking branch 'origin/master' into HEAD
Conflicts:
	pkgs/development/libraries/SDL2/default.nix
2023-11-10 15:18:19 +01:00
Anthony Roussel
0eeea80863
nixosTests.sonic-server: init 2023-11-10 15:11:28 +01:00
Anthony Roussel
b0d279d219
nixos/sonic-server: init 2023-11-10 15:10:14 +01:00
Ryan Lahfa
b8218af2e6
Merge pull request #256226 from ElvishJerricco/systemd-stage-1-testing-backdoor 2023-11-10 14:08:07 +01:00
Lin Jian
36f4c90526
Merge pull request #266150 from robryk/resticnotimer
nixos/restic: allow timer to be disabled
2023-11-10 17:51:14 +08:00
K900
b0dd91c32a
Merge pull request #266509 from K900/remove-nixos-option-shim
nixos/installer: remove nixos-option compat shim
2023-11-10 10:47:18 +03:00
github-actions[bot]
b55905ceb6
Merge master into staging-next 2023-11-10 06:01:22 +00:00
Silvan Mosberger
4587db7279 nixos/fwupd: Don't ignore stderr 2023-11-10 06:54:45 +01:00
Silvan Mosberger
6bf31e521e nixos/fwupd: Don't use DynamicUser
Was introduced in dde6a4f397
but it doesn't work on my machine:

    fwupdmgr[439074]: Failed to connect to daemon: The connection is closed

Creating a persistent user does work however
2023-11-10 06:51:56 +01:00
Yureka
6d475b6d95 nixos/tests/sudo: check that sudo is enabled by default 2023-11-10 03:32:26 +01:00
Yureka
b0206f9bf9 nixos/sudo: enable by default
The default was accidentally changed to false in #262790
2023-11-10 03:30:39 +01:00
github-actions[bot]
3f616fad02
Merge master into staging-next 2023-11-10 00:02:22 +00:00
Will Fancher
e9e2240763 nixos/tests/systemd-initrd-modprobe: Test parameter in stage 1 2023-11-09 17:53:49 -05:00
Will Fancher
b41cbee0fd nixos/tests/systemd-initrd-networkd-ssh: Test with backdoor not LUKS 2023-11-09 17:53:49 -05:00
Will Fancher
8900b027c7 nixos/tests/systemd-initrd-networkd: Use initrdBackdoor 2023-11-09 17:53:49 -05:00
Will Fancher
90e2658693 nixos/tests/systemd-initrd-networkd: Separate into different tests 2023-11-09 17:53:49 -05:00
Will Fancher
9a0f523372 systemd-stage-1: Enable backdoor in nixos tests 2023-11-09 17:53:48 -05:00
Will Fancher
f8ba8be54b testing-instrumentation: Factor backdoor service out to variable 2023-11-09 17:02:01 -05:00
Will Fancher
c20ad5d379
Merge pull request #266369 from SuperSandro2000/systemd-unit-empty-lines
systemd-lib: cleanup empty lines in unit files
2023-11-09 16:49:11 -05:00
Arnout Engelen
97b0ae26f7
doc: avoid 'simply' (#266434)
While the word 'simply' is usually added to encourage readers, it often has the
opposite effect and may even appear condescending, especially when the reader
runs into trouble trying to apply the suggestions from the documentation. It is
almost always an improvement to simply drop the word from the sentence.

(there are more possible improvements like this, we can apply those in separate
PRs)
2023-11-09 21:48:05 +01:00
github-actions[bot]
e112f9b8bb
Merge master into staging-next 2023-11-09 18:00:56 +00:00
K900
1d6b03af9a nixos/installer: remove nixos-option compat shim
It's been two years.
2023-11-09 20:57:57 +03:00
Pierre Bourdon
b75b355b50
Merge pull request #262790 from nbraud/nixos/sudo
nixos/sudo: bring in line with release notes
2023-11-09 16:53:02 +01:00
Bernardo Meurer
22e859ae44
Merge pull request #266264 from hercules-ci/nix-stable-2.18
nix: 2.17.1 -> 2.18.1
2023-11-09 12:39:44 -03:00
Rvfg
92ee71866f
nixos/nat: fix nat-nftables 2023-11-09 23:06:01 +08:00
github-actions[bot]
2d73797da4
Merge master into staging-next 2023-11-09 12:01:04 +00:00
Anthony Roussel
4f7eab6de1
nixosTests.amazon-ssm-agent: init 2023-11-09 12:02:53 +01:00