Commit Graph

800 Commits

Author SHA1 Message Date
Morgan Jones
7cf6855c7f nixos/mattermost: Simplify plugin derivation build, improve startup perf 2021-12-31 23:49:00 -05:00
Morgan Jones
73fc80e0d7 nixos/mattermost: Support declarative Mattermost plugins 2021-12-31 23:49:00 -05:00
Morgan Jones
174b340406 nixos/mattermost: add preferNixConfig option and tests
One use case for Mattermost configuration is doing a "mostly
mutable" configuration where NixOS module options take priority
over Mattermost's config JSON.

Add a preferNixConfig option that prefers configured Nix options
over what's configured in Mattermost config if mutableConfig is set.

Remove the reliance on readFile (it's flake incompatible) and use
jq instead.

Merge Mattermost configs together on Mattermost startup, depending
on configured module options.

Write tests for mutable, mostly mutable, and immutable configurations.
2021-12-31 23:49:00 -05:00
Robert Schütz
a859ef91f0
trac, nixos/trac: remove
They have been broken for multiple releases.
2022-01-01 02:09:09 +01:00
Martin Weinelt
5dd90167ce nixos/moinmoin, nixos/tests/moinmoin, python2Packages.moinmoin: remove
Stuck on python2 and the NixOS test has been failing for 6 months.
2021-12-31 16:39:24 -08:00
Lucas Savva
8d01b0862d
nixos/acme: Update documentation
- Added defaultText for all inheritable options.
- Add docs on using new defaults option to configure
  DNS validation for all domains.
- Update DNS docs to show using a service to configure
  rfc2136 instead of manual steps.
2021-12-26 16:49:55 +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
Flakebi
368b22d09b powerdns-admin: fix and add module
- Add the migrations directory to the package
- Add postgres support to the package
- Add a service for powerdns-admin

Co-authored-by: Zhaofeng Li <hello@zhaofeng.li>
2021-12-17 10:33:40 +01:00
Nikolay Amiantov
497d334c14 youtrack service: restart on failure 2021-12-15 01:40:00 +03:00
Maciej Krüger
891f2053a0
nixos/keycloak: add plugins option
Co-authored-by: Kim Lindberger <kim.lindberger@gmail.com>
2021-12-13 17:49:58 +01:00
Malte
7c43256291 nixos/nextcloud: update warning for MariaDB >= 10.6 2021-12-13 13:25:21 +01:00
Guillaume Girol
57f7f3a87b
Merge pull request #148696 from MasseR/master
Fix the syntax error on tt-rss config file
2021-12-11 20:57:15 +00:00
Mats Rauhala
0eaecd60cb tt-rss-module handle situations without any password 2021-12-11 15:02:27 +02:00
Mats Rauhala
de16da59f2 Fix the syntax error on tt-rss config file 2021-12-11 15:02:27 +02:00
Simon Bruder
35ed694793
nixos/invidious: remove syslog.target from service
It has been removed from systemd, see #149721.
2021-12-11 08:28:20 +01:00
Aaron Andersen
ffa3ebb1f7
Merge pull request #149624 from dali99/fix_dokuwiki_php
nixos/dokuwiki: Use php74 for the phpfpm pool
2021-12-08 22:21:25 -05: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
9407761763 treewide: add defaultText for options using other shortcut bindings 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
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
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
Daniel Olsen
1681c0b49e nixos/dokuwiki: Use php74 for the phpfpm pool
php8 does not work and is not supported
2021-12-08 20:22:12 +01:00
Kim Lindberger
9bf94de535
Merge pull request #147506 from talyz/discourse-2.8.0.beta8
discourse: 2.7.9 -> 2.8.0.beta9
2021-12-08 18:15:48 +01:00
talyz
125bb7dac1
discourse: Don't patch the public path
Instead of patching the path to /public in Discourse's sources, make
the nginx configuration refer to the symlink in the discourse
package which points to the real path.

When there is a mismatch between the path nginx serves and the path
Discourse thinks it serves, we can run into issues like files not
being served - at least when sendfile requests from the ruby app are
processed by nginx. The issue I ran into most recently is that backup
downloads don't work.

Since Discourse refers to the public directory relative to the Rails
root in many places, it's much easier to just sync this path to the
nginx configuration than trying to patch all occurrences in the
sources. This should hopefully mean less potential for breakage in
future Discourse releases, too.
2021-12-06 14:21:39 +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
2512455639 nixos/*: add trivial defaultText for options with simple defaults 2021-12-02 22:35:04 +01:00
Ilan Joselevich
c0f4b20db7 nextcloud23: init at 23.0.0 2021-12-02 20:53:21 +02:00
talyz
ab042d6452
discourse.plugins: Update all plugins to their latest versions
Also, add support for updating plugins which keep gem versions in
files at the root of the repo (discourse-prometheus) and replace the
`up-plugin.sh` script with a README file pointing to the plugin
packaging documentation.
2021-12-02 10:43:14 +01:00
talyz
e2415dbb8f
discourse: 2.7.9 -> 2.8.0.beta9
Update to the latest beta, since upstream advocates for it. See
https://github.com/NixOS/nixpkgs/issues/146308 for more info.
2021-12-02 10:31:00 +01:00
Rok Garbas
e3cd002ada
Merge pull request #145049 from fernsehmuell/patch-1
add opcache to list of php packages
2021-11-22 06:15:57 -08:00
Sandro
312a3af375
Merge pull request #145257 from astro/openwebrx 2021-11-13 02:43:01 +01:00
Maximilian Bosch
dbe1a4804d
Merge pull request #145192 from happysalada/plausible_add_release_cookie
plausible: add remote connection with iex
2021-11-11 18:24:10 +01:00
Sandro
d3f2137f5c
Merge pull request #144250 from aanderse/nixos/zabbixWeb 2021-11-11 15:21:09 +01:00
Astro
f1020d20fa nixos/openwebrx: init 2021-11-10 23:42:18 +01:00
xaverdh
03a257e5a3
treewide: quote urls according to rfc 0045 (#145260)
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-11-10 11:37:56 +01:00
Maciej Krüger
11f1d8620a
nixos/matomo: delete tmp folder to fix borked upgrades 2021-11-09 15:14:31 +01:00
Maciej Krüger
769f20e20a
nixos/matomo: allow changing hostname easily 2021-11-09 15:10:01 +01:00
happysalada
aff0f5792b plausible: add remote connection with iex 2021-11-09 08:15:53 -05:00
Maximilian Bosch
25e6a0ad62
Merge pull request #143345 from happysalada/update_plausible
plausible: 1.3.0 -> 1.4.0
2021-11-08 23:48:53 +01:00
fernsehmuell
4fe305186d
add opcache to list of php packages
opcache is used later, but was never added to phpExt.
2021-11-08 10:29:16 +01:00
Izorkin
d1a8806e39 nixos/mastodon: allow '@resources' filter to mastodon-web service 2021-11-07 11:59:36 +01:00
Izorkin
a71576b07b nixos/mastodon/streaming: add '@memlock' SystemCallFilter 2021-11-06 16:45:20 +01:00
Izorkin
91e510ae22 nixos/mastodon: add '@ipc' SystemCallFilter 2021-11-06 16:45:20 +01:00
Izorkin
700ea62f54 nixos/mastodon: remove duplicates SystemCallFilters 2021-11-06 16:45:20 +01:00
Izorkin
943f15d4b7 nixos/mastodon: add new sandboxing options 2021-11-06 16:45:20 +01:00
happysalada
9c71958cfa plausible: use loadcredentials
plausible: service fixes, remove console attempt

plausible: fix yarn.nix call
2021-11-06 09:15:19 -04:00
Aaron Andersen
0c5d86b18c
Merge pull request #135601 from stackshadow/code-server-bin
code-server: init code-server-module
2021-11-03 22:15:26 -04:00
Aaron Andersen
5d7683fcae nixos/zabbixWeb: remove added whitespace to the passwordFile option 2021-11-02 10:35:55 -04:00
Jonas Heinrich
50029ed89c nixos/dokuwiki: add missing option enable 2021-11-02 09:23:06 +09:00
Martin
f4d551c0d4 maintainer: add stackshadow 2021-11-01 18:47:04 +01:00
Martin
e620c32e59 code-server: init code-server-module 2021-11-01 18:46:57 +01:00
Guillaume Girol
9545fade8b
Merge pull request #142743 from symphorien/ihm-5-dev-2
python3.pkgs.ihatemoney: 4.2 -> 5.1.1
2021-10-31 19:32:40 +00:00
Maximilian Bosch
aaeba3c577
Merge pull request #143840 from maralorn/nextcloud-cron
nixos/nextcloud: Adapt cron frequency to changed upstream requirement
2021-10-31 15:50:47 +01:00
Silvan Mosberger
f1447fdaa8
nixos/invidious: init
Co-authored-by: Simon Bruder <simon@sbruder.de>
2021-10-30 16:33:38 +02:00
Malte Brandy
868157b9d6
nixos/nextcloud: Adapt cron frequency to changed upstream requirement
https://docs.nextcloud.com/server/22/admin_manual/configuration_server/background_jobs_configuration.html

Says that the job should be run every 5 minutes.
Nextcloud shows a warning in the settings screen whenever the last run
was more than 10 minutes ago.
2021-10-30 14:22:22 +02:00
Mario Rodas
e49cd51ebc
Merge pull request #142672 from truh/update/plantuml-server_1.2021.12
plantuml-server: 1.2021.7 -> 1.2021.12
2021-10-30 04:44:16 -05:00
happysalada
a8f9539d01 lemmy: systemd postgresql setup service cleanup 2021-10-30 09:16:09 +09:00
Guillaume Girol
e28414b63d python3.pkgs.ihatemoney: 4.2 -> 5.1.1 2021-10-28 18:37:11 +02:00
Guillaume Girol
6faa5581fd
Merge pull request #113198 from Izorkin/update-mastodon-mail
nixos/mastodon: fix send e-mail notifications
2021-10-27 18:20:18 +00:00
Maximilian Bosch
55e25f7840
Merge pull request #142800 from Ma27/drop-nextcloud-20
nextcloud20: drop
2021-10-27 13:11:06 +02:00
Maximilian Bosch
04fdff2517
nixos/nextcloud: drop obsolete assertion 2021-10-27 12:54:04 +02:00
Izorkin
1d948428c8
nixos/mastodon: fix send e-mail notifications 2021-10-26 10:59:39 +03:00
Cleeyv
917c5fae70 nixos/jibri: fix & docs for enable not via meet 2021-10-25 20:46:24 -04:00
Cleeyv
ff8ed90033 nixos/jitsi-meet: add jibri.enable
This option enables a jibri service on the same host that is running
jitsi-meet. It was written, along with the jibri module, by @puckipedia
for nixcon-video-infra 2020.
Co-authored-by: Puck Meerburg <puck@puck.moe>
2021-10-25 20:46:24 -04:00
Izorkin
4c092350ed nixos/peertube: init service
Co-authored-by: Moritz Hedtke <Moritz.Hedtke@t-online.de>
Co-authored-by: Steven Roose <steven@stevenroose.org>
Co-authored-by: Matthias Beyer <mail@beyermatthias.de>
Co-authored-by: Ismaël Bouya <ismael.bouya@normalesup.org>
2021-10-25 13:12:30 +09:00
Maximilian Bosch
e1e15974f8
nextcloud20: drop
The version 20 of Nextcloud will be EOLed by the end of this month[1].

Since the recommended default (that didn't raise an eval-warning) on
21.05 was Nextcloud 21, this shouldn't affect too many people.

In order to ensure that nobody does a (not working) upgrade across
several major-versions of Nextcloud, I replaced the derivation of
`nextcloud20` with a `throw` that provides instructions how to proceed.

The only case that I consider "risky" is a setup upgraded from 21.05 (or
older) with a `system.stateVersion` <21.11 and with
`services.nextcloud.package` not explicitly declared in its config. To
avoid that, I also left the `else-if` for `stateVersion < 21.03` which
now sets `services.nextcloud.package` to `pkgs.nextcloud20` and thus
leads to an eval-error. This condition can be removed
as soon as 21.05 is EOL because then it's safe to assume that only
21.11. is used as stable release where no Nextcloud <=20 exists that can
lead to such an issue.

It can't be removed earlier because then every `system.stateVersion <
21.11` would lead to `nextcloud21` which is a problem if `nextcloud19`
is still used.

[1] https://docs.nextcloud.com/server/20/admin_manual/release_schedule.html
2021-10-25 01:34:47 +02:00
Sebastian
dc0769c63c
nixos/bookstack: fix error message output (#142729) 2021-10-24 18:13:54 +08:00
Jakob Klepp
5d5a5fce90 nixos/plantuml-server: use graphviz instead of graphviz_2_32
The plantuml package made this change as well

e785e1b24b
2021-10-23 17:49:05 +02:00
Maciej Krüger
b11e0a853a
Merge pull request #142084 from mkg20001/hedge 2021-10-19 15:23:45 +02:00
Maciej Krüger
cb7459c286
nixos/hedgedoc: add more options for oauth2 2021-10-18 14:20:51 +02:00
happysalada
af1ac44440 jitsi: add caddy reverse proxy option 2021-10-18 19:11:32 +09:00
Maximilian Bosch
3498c5ff3c
nixos/nextcloud: build manual without warnings 2021-10-09 22:45:39 +02:00
Maximilian Bosch
1ee008fcb5
nixos/nextcloud: fixup #119638
A few minor changes to get #119638 - nextcloud: add option to set
datadir and extensions - ready:

* `cfg.datadir` now gets `cfg.home` as default to make the type
  non-nullable.
* Enhanced the `basic` test to check the behavior with a custom datadir
  that's not `/var/lib/nextcloud`.
* Fix hashes for apps in option example.
* Simplify if/else for `appstoreenable` in override config.
* Simplify a few `mapAttrsToList`-expressions in
  `nextcloud-setup.service`.
2021-10-09 22:45:31 +02:00
Maximilian Bosch
7856e40da6
nixos/nextcloud: fix wording in manual 2021-10-09 20:52:52 +02:00
Robbert Gurdeep Singh
1852212872
nixos/nextcloud: fail systemd-service if apps don't activate 2021-10-09 20:33:17 +02:00
Robbert Gurdeep Singh
18b18929d7
nixos/nextcloud: add settings to manage nextcloud apps
Note the appstoreEnable which will prevent nextcloud form updating
nix-managed apps. This is needed because nextcloud will store an other
version of the app in /var/lib/nextcloud/store-apps and it will
no longer be manageable.
2021-10-09 20:33:16 +02:00
Robbert Gurdeep Singh
7ba02a7b1e
nixos/nextcloud: add services.nextcloud.datadir setting
This option can be used to set an alternative storage location for
files and app metadata.
2021-10-09 20:33:13 +02:00
Maximilian Bosch
80404a23c9
Merge pull request #140775 from Ma27/nextcloud-docs-and-secrets
nixos/nextcloud: manual improvements & pass secrets via the environment to `nextcloud-occ`
2021-10-09 20:01:15 +02:00
Maximilian Bosch
f57bed8832
nixos/nextcloud: drop adminpass/dbpass options entirely 2021-10-08 18:30:57 +02:00
ajs124
ae53e57a7a
Merge pull request #133141 from helsinki-systems/feat/jitsi-meet-websocket
nixos/jitsi-meet: add support for xmpp-websocket
2021-10-08 16:51:00 +02:00
Maximilian Bosch
9f37d6aee0
nixos/nextcloud: put secrets into the environment of nextcloud-setup.service
The `$(</path/to/file)`-expansion appears verbatim in the cmdline of
`nextcloud-occ` which means that an unprivileged user could find
sensitive values (i.e. admin password & database password) by monitoring
`/proc/<pid>/cmdline`.

Now, these values don't appear in a command line anymore, but will be
passed as environment variables to `nextcloud-occ`.
2021-10-06 18:18:18 +02:00
Maximilian Bosch
fb40526961
nixos/nextcloud: minor manual improvements
* Linkify documentation about objectstore-feature rather than only
  mentioning it.
* Use `<literal>` where it makes sense.
* Remove unnecessary `Whether to load` from `enableImagemagick` because
  `mkEnableOption` already prepends `Whether to enable` to the given
  description.
2021-10-06 17:33:31 +02:00
Bill Ewanick
cc3b147ed1 nixos/lemmy: init
Co-authored-by: Raphael Megzari <raphael@megzari.com>
2021-10-06 21:02:51 +09:00
Maximilian Bosch
f8feb1ad27
Merge pull request #139604 from mitchmindtree/nextcloud-objectstore
nixos/nextcloud: Add option for using object storage as primary storage
2021-10-05 20:52:24 +02:00
mitchmindtree
c5d08ebee1 nixos/nextcloud: Fix ambiguity in objectstoreConfig string
Previously this was a little tricky to read and had the potential to
cause some ambiguity in string parsing.
2021-10-05 17:07:44 +10:00
Naïm Favier
2ddc335e6f
nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
mitchmindtree
a539a82707 nixos/nextcloud: Account for nix_read_secret refactor in exception msg
Previously, the `nix_read_pwd` function was only used for reading the
`dbpassFile`, however it has since been refactored to handle reading
other secret files too. This fixes the message of the exception that is
thrown in the case that the file is not present so that it no longer
refers specifically to the `dbpass` file.
2021-10-03 17:29:13 +10:00
mitchmindtree
fbffaddefe nixos/nextcloud: Make objectstore.s3.useSsl explicitly true by default
This appears to match the nextcloud default behaviour observed here:

e2116e2fb2/lib/private/Files/ObjectStore/S3ConnectionTrait.php (L83)
2021-10-03 16:38:56 +10:00
mitchmindtree
b23d6a4113 nixos/nextcloud: Simplify objectstore.s3 options, remove submodule
Removes the submodule in favour of using an attrset.

Also:

- Makes better use of nix's laziness in config expansion.
- Makes use of `boolToString` where applicable.
2021-10-03 16:38:03 +10:00
mitchmindtree
03171ae31a nixos/nextcloud: Remove objectstore.s3.secret option
We should discourage users from adding secrets in a way that allows for
them to end up in the globally readable `/nix/store`. Users should use
the `objectstore.s3.secretFile` option instead.
2021-10-03 12:52:13 +10:00
mitchmindtree
1ed93ac4a1 nixos/nextcloud: Add option for using object storage as primary storage
This allows to declaratively configure an S3 class object storage as the
primary storage for the nextcloud service. Previously, this could only
be achieved by manually editing the `config.php`.

I've started testing this today with my own digitalocean nextcloud
instance, which now points to my digitalocean S3-compatible "Space" and
all appears to be working smoothly.

My motivation for this change is my recent discovery of how much cheaper
some S3-compatible object storage options are compared to digitalocean's
"Volume" options.

Implementation follows the "Simple Storage Service" instructions here:

https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/primary_storage.html

I have neglected to implement a submodule for the OpenStack Swift
object storage as I don't personally have a use case for it or a method
to test it, however the new `nextcloud.objectstore.s3` submodule should
act as a useful guide for anyone who does wish to implement it.
2021-10-03 12:52:06 +10:00
Maximilian Bosch
cdb48d75c0
Merge pull request #140159 from Ma27/nextcloud-misc
nextcloud: misc changes
2021-10-01 21:08:31 +02:00
Maximilian Bosch
66edc1e846
nixos/nextcloud: use php8 where possible 2021-10-01 17:03:09 +02:00
Maximilian Bosch
675e262f5a
nixos/nextcloud: temp fix for MariaDB >=10.6
The MariaDB version 10.6 doesn't seem supported with current Nextcloud
versions and the test fails with the following error[1]:

    nextcloud # [   14.950034] nextcloud-setup-start[1001]: Error while trying to initialise the database: An exception occurred while executing a query: SQLSTATE[HY000]: General error: 4047 InnoDB refuses to write tables with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.

According to a support-thread in upstream's Discourse[2] this is because
of a missing support so far.

Considering that we haven't received any bugreports so far - even though
the issue already exists on master - and the workaround[3] appears to
work fine, an evaluation warning for administrators should be
sufficient.

[1] https://hydra.nixos.org/build/155015223
[2] https://help.nextcloud.com/t/update-to-next-cloud-21-0-2-has-get-an-error/117028/15
[3] setting `innodb_read_only_compressed=0`
2021-10-01 15:25:31 +02:00
happysalada
8346dc04b3 pict-rs: add initial module 2021-09-30 21:32:25 +09:00
Flakebi
6ca43a69cc
dex-oidc: add module 2021-09-25 13:12:51 +02:00
Kim Lindberger
0686c40309
Merge pull request #139180 from ryantm/dev/ryantm/discourse-tmp
discourse: enable restoring backups bigger than RAM
2021-09-24 14:31:46 +02:00
Ryan Mulligan
f933c68374 discourse: enable restoring backups bigger than RAM
When restoring a backup, discourse decompresses the backup archive in
the /share/discourse/tmp dir. Before this change, it is linked to /run
which is typically backed by memory, so the backup will fail to
restore if you do not have enough memory on your system to contain the
backup. This has already happened to me on two small forums.

This moves tmp to the StateDirectory /var/lib/discourse/tmp which is
typically backed by disk.
2021-09-23 09:59:31 -07:00
Ryan Mulligan
6a9003f316 nixos/discourse: add discourse.admin.skipCreate option 2021-09-21 16:45:59 -07:00
embr
023239912c nixos/mastodon: Add configurable web- and streaming concurrency
Might as well do this while I'm at it.
2021-09-21 16:35:17 +02:00
embr
8c1e6a8598 nixos/mastodon: Fix sidekiq's DB_POOL, add configurable concurrency
The `services.mastodon` module currently hardcodes sidekiq's concurrency
to 25, but doesn't set a DB pool size, which defaults to 5 or the number
of configured web threads.

(This behaviour is very strange, and arguably a mastodon bug.)

This also makes sidekiq's concurrency configurable, because 25 is a tad
high for the hardware I'm running it on.
2021-09-21 16:35:17 +02:00
Jonas Heinrich
0dcac759f2 nixos/dokuwiki: Add support for Caddy web server 2021-09-18 23:09:21 +09:00
Jonas Heinrich
38431cf21c nixos/wordpress: caddy support 2021-09-17 19:12:21 +09:00
Guillaume Girol
3592034595
Merge pull request #133166 from symphorien/nonogroup
Don't default to nogroup for the primary group of users.
2021-09-13 18:29:21 +00:00
Guillaume Girol
bc3bca822a nixos: define the primary group of users where needed 2021-09-12 14:59:30 +02:00
Maximilian Bosch
9a52aeacc1
Merge pull request #135958 from Ma27/nextcloud-upgrade-not-found
nixos/nextcloud: add some notes for `Error: Command "upgrade" is not defined.`
2021-08-31 20:49:49 +02:00
Maximilian Bosch
767bb4e4bb
nixos/nextcloud: apply doc fixes suggested by fabaff
Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
2021-08-31 17:57:40 +02:00
Guillaume Girol
c988c752bb
Merge pull request #133133 from symphorien/tt-rss-read-only
nixos/tt-rss: make all php files read only
2021-08-29 11:33:25 +00:00
Maximilian Bosch
561418f996
nixos/nextcloud: add some notes for Error: Command "upgrade" is not defined.
This error occurs if `nextcloud-occ maintenance:install` fails and the
`upgrade` command is attempted to be executed afterwards.

Due to the nature of the installer we can't do much about it, so I guess
it makes sense to add some notes about it. The other notes in the
`Pitfalls`-section are semantically a list of different topics, so I
changed that accordingly now.

Closes #111175
2021-08-27 22:36:45 +02:00
Maximilian Bosch
eaeb4fe04e
nixos/nextcloud: remove invalid --database-table-prefix option
This doesn't work anymore and thus breaks the installation leaving a
broken `/var/lib/nextcloud`.

It isn't a big deal since we set this value in the override config
before, so the correct table-prefix is still used. In order to confirm
that, I decided to add a custom prefix to the basic test.
2021-08-27 20:21:25 +02:00
Van Tuan Vo
c8e3441961
nixos/fluidd: init fluidd service at 1.16.2 2021-08-21 23:32:52 +02:00
Finn Behrens
cc927c650b nixos/moodle: revert to php74 for xmlrpc extension 2021-08-18 19:05:48 +02:00
talyz
f8096460bd
discourse.plugins: Make the updater able to package plugins
Let the update.py script handle the initial, repetitive task of
packaging new plugins. With this in place, the plugin only needs to be
added to the list in `update-plugins` and most of the work will be
done automatically when the script is run. Metadata still needs to be
filled in manually and some packages may of course require additional
work/patching.
2021-08-17 18:21:15 +02:00
talyz
bb14315d51
discourse: Remove leftover link to unused plugins directory 2021-08-17 18:17:56 +02:00
Robert Hensing
fbafeb7ad5 treewide: runCommandNoCC -> runCommand
This has been synonymous for ~5y.
2021-08-15 17:36:41 +02:00
Benjamin Asbach
86296623c6 isso: added NixOS module to configure isso in NixOS 2021-08-09 17:42:54 -06:00
ajs124
2090318d75 nixos/jitsi-meet: add support for xmpp-websocket
instead of BOSH
2021-08-08 15:15:59 +02:00
Guillaume Girol
48619f77a4 nixos/tt-rss: make all php files read only
Fixes: #55300
2021-08-08 12:00:00 +00:00
erdnaxe
7a0c6cdd39
nixos/miniflux: systemd unit hardening (#133123) 2021-08-08 13:58:30 +02:00
stuebinm
a8ecb909c0
nixos/nextcloud: fixed secretFile example 2021-08-01 20:47:38 +02:00
stuebinm
164f8c9457
nixos/nextcloud: deduplicate file reading
This combines the two functions nix_read_pwd and nix_read_secrets into a
single function nix_read_file, which takes two arguments: the file to be
read, and an error message that should be printed if reading the file
failed.
2021-08-01 20:39:29 +02:00
Aaron Andersen
099015b2ed
Merge pull request #116578 from MatthewCroughan/node-red-service
nixos/node-red: add module
2021-07-31 22:57:26 -04:00
Guillaume Girol
256af6b742
nixos/tt-rss: fix eval 2021-07-31 15:19:00 +00:00
Milo Gertjejansen
7aa2bf302a Added more detail to changelog, updated permissions in directory, and changed restartTriggers 2021-07-28 20:53:38 -04:00
matthewcroughan
badbbb7e05 nixos/node-red: add module
Adds a basic nixos module/service for node-red based on nodePackages.node-red

Co-authored-by: Aaron Andersen <aaron@fosslib.net>
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Co-authored by: Adrian Parvin Ouano <adrianparvino@gmail.com>
Co-authored-by: Norbert Melzer <nmelzer@nobbz.dev>
2021-07-28 17:30:57 +01:00
Milo Gertjejansen
b0b71138c8 Merge branch 'master' of https://github.com/NixOS/nixpkgs into tt-rss-2021-06-21 2021-07-25 16:02:48 -04:00
Milo Gertjejansen
70338c53c9 Added release notes and broke date apart 2021-07-25 15:40:33 -04:00
Maximilian Bosch
ccd348f846
Merge pull request #129732 from nivadis/patch-2
nextcloud: remove expires header
2021-07-23 12:29:52 +02:00
Maximilian Bosch
65d60ae78b
Merge pull request #130062 from nh2/plausible-fix-shell-scripting-errors
nixos/plausible: Fix shell scripting errors, runtime fixes
2021-07-22 00:27:56 +02:00
Ingolf Wagner
18d5ed658b
nextcloud: fix logging parameter 2021-07-17 10:19:45 +02:00
Jean-Philippe Braun
d4eca42de4 nixos/wordpress: nginx support 2021-07-16 08:51:08 +02:00
Kim Lindberger
4dcf295417
Merge pull request #129464 from talyz/discourse-plugins
discourse: Updates and fixes
2021-07-15 14:50:28 +02:00
talyz
20548f050e
nixos/discourse: Update plugin documentation
Update the documentation regarding plugins to reflect recent changes.
2021-07-14 13:18:06 +02:00
Niklas Hambüchen
ea182cdb99 nixos/plausible: docs: Mention caveate of baseUrl 2021-07-14 03:28:57 +00:00
Janne Heß
6d203a68c6
nixos/icingaweb2: Add ipl and thirdparty libraries
These are required since 2.9.0
2021-07-13 18:31:15 +02:00
Niklas Hambüchen
8613698df0 nixos/plausible: Fix shell scripting errors.
See https://github.com/NixOS/nixpkgs/pull/124055/files#r668271575
2021-07-13 04:05:05 +02:00
Linus Heckemann
f7dff9c649
Merge pull request #129620 from bbenno/update-nextcloud
nextcloud: init at 22.0.0; 21.0.2 -> 21.0.3; 20.0.7 -> 20.0.11
2021-07-12 20:53:35 +02:00
Valentin Conrad
ceef268c4b
nextcloud: remove expires header
nextcloud default nginx config did not include the expires config
see: https://docs.nextcloud.com/server/latest/admin_manual/installation/nginx.html
2021-07-09 10:50:25 +02:00
Leo Maroni
c0bd900632 nixos/vikunja: init
nixos/vikunka: Use RFC 0042 settings proposal (thanks to @aanderse)
2021-07-08 22:17:57 +02:00
Maximilian Bosch
e05f4101c1
nextcloud22: init at 22.0.0 2021-07-08 17:00:04 +02:00
Milo Gertjejansen
b1dd02d212 Api didn't seem to work with the systemd envs
I am not sure why it was working for me, but after restarting
phpfpm-tt-rss it quit working.
2021-07-06 18:46:22 -04:00
Milo Gertjejansen
97cb387fb9 tt-rss: 2021-01-29 -> 2021-06-23 and modules/tt-rss: updated config.php creation
The version of tt-rss in nixpkgs was pre-php 8. This updates tt-rss to the most recent version, which uses php 8.

The updates to the module are required changes, per https://community.tt-rss.org/t/rip-config-php-hello-classes-config-php/4337.
2021-07-06 18:46:21 -04:00
Luke Granger-Brown
272773e1cb
Merge pull request #127931 from talyz/discourse-plugins
discourse: Fix plugin support
2021-06-30 23:03:57 +01:00
Maciej Krüger
8ae5ade468
Merge pull request #112654 from 1000101/matomo
nixos/matomo: add periodicArchiveProcessingUrl option
2021-06-28 05:39:14 +02:00
talyz
9af3672f4f
discourse: Fix plugin support
For plugins to work properly, their assets need to be precompiled
along with the rest of Discourse's assets. This means we need to build
new packages when the list of plugins change.
2021-06-24 19:38:19 +02:00
github-actions[bot]
9c8cef37d2
Merge master into staging-next 2021-06-20 12:04:37 +00:00
illustris
e0089c38ca nixos/jitsi-meet: include jitsi prosody plugins in prosody extraPluginPaths 2021-06-20 12:36:51 +02:00
illustris
34b9ba2e61 nixos/jitsi-meet: Update jitsi prosody configs
Changes made as per b6f7f8fba7
2021-06-20 12:36:51 +02:00
github-actions[bot]
0397e518b7
Merge staging-next into staging 2021-06-05 18:30:31 +00:00
talyz
59e0120aa5
treewide: Fix mysql alias deprecation breakage
62733b37b4 broke evaluation in all
places `pkgs.mysql` was used. Fix this by changing all occurrences to
`pkgs.mariadb`.
2021-06-04 21:42:08 +02:00
github-actions[bot]
0b0d0c21ec
Merge staging-next into staging 2021-06-04 13:00:29 +00:00
Luke Granger-Brown
39e225b0f4 nixos/engelsystem: don't rely on mysql alias
Since 3edde6562e, we can no longer use
aliases inside the test framework. This has the implication that we can
no longer use aliases in any NixOS modules used by the test framework as
well (which is good), but does mean we need to clean up any instances
where this is the case.
2021-06-04 08:43:48 +00:00
github-actions[bot]
a261aaf9c2
Merge staging-next into staging 2021-06-02 13:08:16 +00:00
Maximilian Bosch
cc88797ce0 plausible: minor polishing 2021-06-02 19:21:31 +09:00
Maximilian Bosch
6bc72cdd4a plausiblew: cleanup build & update script 2021-06-02 19:21:31 +09:00
Maximilian Bosch
02b15d0f5b plausible: first review fix iteration
* Most significant is probably the patching necessary to run plausible
  with postgres without superuser privilege. This change includes:
  * updating ecto_sql to 3.6 where `CREATE DATABASE` is only executed if
    it doesn't exist[1].
  * patching a migration to only modify the `users.email` column (to use
    `citext` rather than creating the extension. `plausible-postgres`
    takes care of that).
* Correctly declare dependencies in systemd.
* A few minor fixes.

[1] 051baf669e
2021-06-02 19:21:31 +09:00
Maximilian Bosch
b06ea1146c plausible: init at 1.3.0 2021-06-02 19:21:31 +09:00
Sandro
eb5c8e51b7
Merge pull request #124404 from nagy/option-types 2021-06-01 15:12:16 +02:00
Johannes Schleifenbaum
878103ce55
nixos/trilium: use boolToString for noBackup 2021-05-30 18:16:13 +02:00
Daniel Nagy
73f9c29a2c
nixos/discourse: set port type to types.port 2021-05-30 14:38:18 +02:00
Martin Weinelt
ee8cf6a664
Merge pull request #124839 from mweinelt/wordpress/secret-key-regen
nixos/wordpress: regenerate secret keys if misspelled key name is found
2021-05-29 22:13:03 +02:00
Martin Weinelt
724ed08df0
nixos/wordpress: regenerate secret keys if misspelled key name is found
A secret key generated by the nixos module was misspelled, which could
possibly impact the security of session cookies.

To recover from this situation we will wipe all security keys that were
previously generated by the NixOS module, when the misspelled one is
found. This will result in all session cookies being invalidated. This
is confirmed by the wordpress documentation:

> You can change these at any point in time to invalidate all existing
> cookies. This does mean that all users will have to login again.

https://wordpress.org/support/article/editing-wp-config-php/#security-keys

Meanwhile this issue shouldn't be too grave, since the salting function
of wordpress will rely on the concatenation of both the user-provided
and automatically generated values, that are stored in the database.

> Secret keys are located in two places: in the database and in the
> wp-config.php file. The secret key in the database is randomly
> generated and will be appended to the secret keys in wp-config.php.

https://developer.wordpress.org/reference/functions/wp_salt/

Fixes: 2adb03fdae ("nixos/wordpress:
generate secrets locally")

Reported-by: Moritz Hedtke <Moritz.Hedtke@t-online.de>
2021-05-29 04:24:42 +02:00
talyz
cb80b67993 nixos/discourse: Assert deployed PostgreSQL version
Assert that the PostgreSQL version being deployed is the one used
upstream. Allow the user to override this assertion, since it's not
always possible or preferable to use the recommended one.
2021-05-28 17:43:02 -07:00
talyz
1f6b48be74 discourse: 2.6.5 -> 2.7.0 2021-05-28 17:43:02 -07:00
FliegendeWurst
b9e2b878c5 nixos/trilium-server: noBackup option 2021-05-24 09:55:49 +02:00
FliegendeWurst
7cb492fb13 nixos/trilium-server: add myself as maintainer 2021-05-24 09:55:49 +02:00
Elis Hirwing
e9cca93bf9
Merge pull request #121778 from talyz/keycloak-security
nixos/keycloak: Security fixes + misc
2021-05-21 16:55:26 +02:00
Kerstin Humm
224df6940f nixos/mastodon: use rails command instead of rake
Co-Authored-By: Izorkin <izorkin@elven.pw>
2021-05-21 15:04:12 +02:00
talyz
ba00b0946e
nixos/keycloak: Split certificatePrivateKeyBundle into two options
Instead of requiring the user to bundle the certificate and private
key into a single file, provide separate options for them. This is
more in line with most other modules.
2021-05-21 13:09:38 +02:00
talyz
dbf91bc2f1
nixos/keycloak: keycloak.database* -> keycloak.database.*
Move all database options to their own group / attribute. This makes
the configuration clearer and brings it in line with most other modern
modules.
2021-05-21 13:09:32 +02:00
talyz
83e406e97a
nixos/keycloak: frontendUrl always needs to be suffixed with /
In some places, Keycloak expects the frontendUrl to end with `/`, so
let's make sure it always does.
2021-05-21 13:09:25 +02:00
talyz
58614f8416
nixos/keycloak: Add myself to maintainers 2021-05-21 13:09:19 +02:00
talyz
d748c86389
nixos/keycloak: Improve readablility by putting executables in PATH 2021-05-21 13:09:14 +02:00
talyz
8309368e4c
nixos/keycloak: Set umask before copying sensitive files
`install` copies the files before setting their mode, so there could
be a breif window where the secrets are readable by other users
without a strict umask.
2021-05-21 13:09:09 +02:00
talyz
c2bebf4ee2
nixos/keycloak: Improve bash error handling 2021-05-21 13:09:03 +02:00
talyz
d6727d28e1
nixos/keycloak: Set the postgresql database password securely
Feeding `psql` the password on the command line leaks it through the
`psql` process' `/proc/<pid>/cmdline` file. Using `echo` to put the
command in a file and then feeding `psql` the file should work around
this, since `echo` is a bash builtin and thus shouldn't spawn a new
process.
2021-05-21 13:08:53 +02:00
talyz
380b52c737
nixos/keycloak: Use replace-secret to avoid leaking secrets
Using `replace-literal` to insert secrets leaks the secrets through
the `replace-literal` process' `/proc/<pid>/cmdline`
file. `replace-secret` solves this by reading the secret straight from
the file instead, which also simplifies the code a bit.
2021-05-19 09:32:28 +02:00
talyz
38398fade1
nixos/discourse: Use replace-secret to avoid leaking secrets
Using `replace-literal` to insert secrets leaks the secrets through
the `replace-literal` process' `/proc/<pid>/cmdline`
file. `replace-secret` solves this by reading the secret straight from
the file instead, which also simplifies the code a bit.
2021-05-19 09:32:06 +02:00
Izorkin
feebe402f5
treewide: remove duplicates SystemCallFilters 2021-05-13 15:44:56 +03:00
talyz
deb58f6486 nixos/keycloak: Document how to use a custom local database 2021-05-04 19:27:08 +02:00
talyz
fdf6bb5b95 Revert "nixos/keycloak: use db username in db init scripts"
This reverts commit d9e18f4e7f.

This change is broken, since it doesn't configure the proper database
username in keycloak when provisioning a local database with a custom
username. Its intended behavior is also potentially confusing and
dangerous, so rather than fixing it, let's revert to the old one.
2021-05-04 19:27:08 +02:00
Aaron Andersen
aebebb5752
Merge pull request #119325 from ymarkus/bookstack
bookstack: 0.31.7 -> 21.04.3 + nixos/bookstack: use umask before echoing & clear cache before starting
2021-05-03 20:19:39 -04:00
Yannick Markus
336f3607d4
nixos/bookstack: use umask before echoing & clear cache before starting 2021-05-03 16:27:38 +02:00
Lassulus
addfd88117
Merge pull request #117072 from em0lar/keycloak-module-dbuser
nixos/keycloak: use db username in db init scripts
2021-04-29 20:15:19 +02:00
Leo Maroni
d9e18f4e7f
nixos/keycloak: use db username in db init scripts 2021-04-29 19:36:29 +02:00
Izorkin
8723d226b4 nixos/mastodon: update SystemCallFilters 2021-04-28 00:44:25 +02:00
Izorkin
47d3e955fc nixos/mastodon/sandbox: add @privileged and @raw-io to SystemCallFilter 2021-04-24 19:12:10 +02:00
Benjamin Koch
8122221c9b nixos/nextcloud: Rename services.nextcloud.nginx.disableImagemagick to services.nextcloud.nginx.enableImagemagick
Enable options are preferred. Suggested here:
https://github.com/NixOS/nixpkgs/pull/115372#issuecomment-821900334
2021-04-22 02:17:12 +02:00
talyz
7310dd0da8
nixos/discourse: Fix plugin linking
When linking multiple plugins, the `ln` runs need to be separated by
newlines..

Fixes #119584.
2021-04-16 14:21:07 +02:00
talyz
515fb48312
nixos/discourse: Fail on file errors
Bash doesn't handle subshell errors properly if the result is used as
input to a command. To cause the services to fail when the files can't
be read, we need to assign the value to a variable, then export it
separately.
2021-04-16 14:21:01 +02:00
Symphorien Gibol
7a87973b4c nixos/users: require one of users.users.name.{isSystemUser,isNormalUser}
As the only consequence of isSystemUser is that if the uid is null then
it's allocated below 500, if a user has uid = something below 500 then
we don't require isSystemUser to be set.

Motivation: https://github.com/NixOS/nixpkgs/issues/112647
2021-04-14 20:40:00 +02:00
Kim Lindberger
5a1bd5ff66
Merge pull request #116074 from talyz/discourse
discourse: Add package and NixOS module
2021-04-08 14:19:49 +02:00
talyz
642854055c
nixos/discourse: Add NixOS manual entry 2021-04-05 13:55:57 +02:00
talyz
8dddb70bb9
nixos/discourse: Init 2021-04-05 13:54:25 +02:00
Rémi NICOLE
8442c216af
nixos/shiori: fix SystemCallFilter after libseccomp update (#108160)
fixes #108146
2021-04-03 06:44:24 -04:00
Guillaume Girol
f19434ad4a
Merge pull request #113994 from pborzenkov/calibre-web
calibre-web: init at 0.6.11
2021-03-31 18:25:45 +00:00
stuebinm
83a669a0be
nixos/nextcloud: better json typechecking
this now uses the pkgs.formats.json instead of the builtin function to
serialise json, which comes with a type signature that we can pass to mkOptions
2021-03-31 14:56:14 +02:00
stuebinm
727bdd736c
nixos/nextcloud: use array_merge instead of array_push
This should correctly merge the various configs (via nix module options,
the secretFile option, and the extraOptions option).
2021-03-31 14:52:45 +02:00
stuebinm
4ca2f27a60
nixos/nextcloud: allow more declarative config
This adds two options to the nextcloud module, with the aim of allowing
the entirety of `config.php` to be set declaratively:
1. `services.nextcloud.extraOptions`, which takes free-form options
   given as an attribute set, and reads them in via json from the php
   side (which lets us prevent syntax errors in php, if not key errors –
   given the full length of nextcloud's potential options, I don't think
   specifying them all via Nix is a viable option)
2. `services.nextcloud.secretFile`, which takes a path to a json file
   specifying options which a user may want to keep secret and not add
   to their nix store; this file is read in the same way on startup by
   php, and may even overwrite options set in some other way.
2021-03-30 20:07:50 +02:00