about summary refs log tree commit diff
path: root/nixos/modules/services/network-filesystems
AgeCommit message (Collapse)AuthorFilesLines
2024-01-16nixos/kubo: cleanupLuflosi1-5/+10
- Add note explaining why enabling the Kubo daemon won't fully work immediately and requires logging in again - Use `builtins.isList addrIn` instead of `builtins.typeOf addrIn == "list"` - Fix indentation (cherry picked from commit a4c451fd3757a0920bc8d4f41b8979609c2ff2a8)
2024-01-10nixos/kubo: increase maximum UDP send buffer sizeLuflosi1-1/+2
In addition to increasing the maximum UDP receive buffer size in the Linux kernel, it is now recommended to do the same for the send buffer size. This is documented in https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes. The change to the documentation was made in June: https://github.com/quic-go/quic-go/wiki/UDP-Receive-Buffer-Size/_compare/5b5e58d2897751221fe7c42c28ddf4230462a60a. Without this change, the Kubo daemon will output this warning: ``` failed to sufficiently increase send buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for details. ``` This can be seen while running the NixOS tests. (cherry picked from commit b2f8b846f2f3462c61c74adb9233bbee397d815d)
2023-12-16drbd: fix path to drbdadmAshish SHUKLA1-2/+2
props: @cody4k for the fix Fixes #268172 (cherry picked from commit 086604334a13f2b7fbd7489b52f53a2abb723ef0)
2023-12-15nixos/kubo: fix potential panic on startupLuflosi1-0/+2
This fixes a panic of the kubo daemon which could occur under certain conditions when the daemon was starting. It was caused by the `ipfs.service` unit not depending on the `ipfs-api.socket` and `ipfs-gateway.socket` units with `Wants=`. This allows the `ipfs.service` to be started manually or by `nixos-rebuild` without the sockets being set up before that. When that happens, the daemon won't know about these sockets and will only use what is set in `services.kubo.settings.Addresses.Gateway` and `services.kubo.settings.Addresses.API`. By default the `API` is an empty list in NixOS though. The daemon doesn't like this at all and panics on startup, see https://github.com/ipfs/kubo/issues/10056. With this commit, starting `ipfs.service` will first set up the two sockets before starting the actual service. Adding the `Sockets=` option implicitly adds a `Wants=` for the sockets and this is exactly what we need. See https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#Implicit%20Dependencies . This can be checked with `systemctl show ipfs.service`. This should probably be upstreamed to the unit file in the Kubo repo. The problem can be reproduced in the following way: - Add `services.kubo.enable = true` to `/etc/nixos/configuration.nix` - `sudo nixos-rebuild switch` (this may already fail, not sure why it's not deterministic for me) - `sudo systemctl stop ipfs-api.socket` - `sudo systemctl stop ipfs-gateway.socket` - `sudo systemctl stop ipfs.service` - `sudo systemctl start ipfs.service` Fixes #248447. (cherry picked from commit d4fcb44dcc6153ef982bd7fa87dca97bd3142796)
2023-11-11treewide: fix redirected and broken URLsAnthony Roussel1-5/+5
Using the script in maintainers/scripts/update-redirected-urls.sh
2023-10-20nixos: fix bad mkEnableOption descriptionsBjørn Forsman1-2/+2
Fix descriptions that don't account for (1) the "Whether to enable" prefix or (2) the automatically added trailing dot.
2023-10-12Merge pull request #259745 from Luflosi/update/kuboFabián Heredia Montiel1-2/+0
kubo: 0.22.0 -> 0.23.0
2023-10-10nixos/samba: start service after network activationIzorkin1-1/+1
2023-10-08kubo: 0.22.0 -> 0.23.0Luflosi1-2/+0
https://github.com/ipfs/kubo/releases/tag/v0.23.0 Support for /quic (Draft 29) was removed, so remove it from `services.kubo.settings.Addresses.Swarm`. The changelog says that there have been some fixes to the FUSE mountpoint functionality but the test still requires the workaround, so leave that unchanged.
2023-10-07nixos/orangefs: fix typo in group nameK9001-1/+1
This would have broken eval and has broken the test.
2023-08-08Merge pull request #246029 from ehmry/eris-goFranz Pletz1-0/+103
2023-08-06Merge pull request #241481 from Mayeu/update/kuboK9001-0/+6
kubo: 0.20.0 -> 0.21.0
2023-07-29nixos/eris-server: initEmery Hemingway1-0/+103
2023-07-27kubo: 0.20.0 -> 0.21.0Mayeu1-0/+6
2023-07-17nixos/samba-wsdd: add openFirewall optionVarun Madiath1-7/+12
2023-07-09Merge pull request #237802 from SuperSandro2000/ceph-package-optionsSandro1-14/+17
nixos/ceph: add options to configure package used by each component
2023-06-25treewide: use optional instead of 'then []'Felix Buehler1-2/+2
2023-06-14nixos/ceph: add options to configure package used by each componentSandro Jäckel1-2/+6
This makes updates following the upstream guide possible.
2023-06-14nixos/ceph: run statix fixSandro Jäckel1-12/+11
2023-05-10kubo: 0.19.2 -> 0.20.0Luflosi1-3/+3
https://github.com/ipfs/kubo/releases/tag/v0.20.0 When creating a repository with `ipfs init`, `--empty-repo=true` is now the default according to the changelog. Modify the NixOS module to reflect this change and fix the `emptyRepo` setting to work with this change.
2023-05-10Merge pull request #215494 from poelzi/webdav-server-rs-debugSandro1-1/+7
2023-04-20Merge pull request #222080 from Stunkymonkey/nixos-optionalStringArtturi1-2/+2
2023-04-15nixos/kubo: restrict access to the API to users in a group by defaultLuflosi1-5/+12
2023-04-15nixos/kubo: allow multiple API and Gateway addressesLuflosi1-15/+25
The daemon allows specifying an array of multiaddrs for Addresses.API and Addresses.Gateway, so the NixOS module should allow that as well.
2023-04-15nixos/kubo: give normal users access to the daemon by defaultLuflosi1-1/+13
Fixes https://github.com/NixOS/nixpkgs/issues/223289. This doesn't reduce the security in any way since it was already possible for normal users to do what I do here and create such a fake repo for themselves and set their $IPFS_PATH variable to it. It was and still is also possible to just use the --api CLI option. This change just removes the manual setup that would otherwise be required. We wouldn't need this workaround if https://github.com/ipfs/kubo/pull/9366 was merged but the fix seems to have been ignored upstream. Patching it ourselves seems like a bad idea since the patch has security implications.
2023-04-13nixos/kubo: documentation suggestionsKarmanyaah Malhotra1-1/+1
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2023-04-13nixos/kubo: unmount on service stopKarmanyaah Malhotra1-0/+4
When kubo is force killed with `pkill -KILL ipfs` or by systemd-oomd, it doesn't unmount /ipfs and /ipns. That prevents it from starting up the next time. So, unmount on postStop.
2023-04-11modules.openafsServer: Add FABS backup serverMichael Raitza1-18/+68
2023-04-07treewide: use more lib.optionalStringFelix Buehler1-2/+2
2023-03-22nixos/kubo: add QUICv1 and WebTransport to Addresses.Swarm listLuflosi1-0/+4
According to https://github.com/ipfs/kubo/blob/v0.18.0/docs/config.md#addressesswarm, the default list of swarm multiaddrs includes QUICv1 and WebTransport since v0.18.0. More information can be found in the release notes at https://github.com/ipfs/kubo/releases/tag/v0.18.0.
2023-02-09webdav-server-rs: Add debug optionDaniel Poelzleithner1-1/+7
2023-02-08nixos/*: remove trailing period in mkEnableOptionspennae1-3/+3
those are added by mkEnableOption, and .. is replaced to … by markdown processing.
2023-01-31Merge pull request #199731 from Luflosi/kubo-idempotenceSandro1-10/+47
2023-01-27nixos/manual: render module chapters with nixos-render-docspennae2-63/+1
this converts meta.doc into an md pointer, not an xml pointer. since we no longer need xml for manual chapters we can also remove support for manual chapters from md-to-db.sh since pandoc converts smart quotes to docbook quote elements and our nixos-render-docs does not we lose this distinction in the rendered output. that's probably not that bad, our stylesheet didn't make use of this anyway (and pre-23.05 versions of the chapters didn't use quote elements either). also updates the nixpkgs manual to clarify that option docs support all extensions (although it doesn't support headings at all, so heading anchors don't work by extension).
2023-01-24nixos/kubo: make the configuration options idempotentLuflosi1-10/+47
Without this commit, unsetting any of the `services.kubo.settings` options does not reset the value back to the default. This commit gets rid of this statefulness. This is achieved by generating the default config, applying the user specified config options to it and then patching the `Identity` and `Pinning` config options from the old config back in. This new config is then applied using `ipfs config replace`. The only remaining stateful parts of the config are the `Identity` and `Pinning.RemoteServices` settings as those can't be changed with `ipfs config replace`. `Pinning.RemoteServices` also contains secrets that shouldn't be in the Nix store. Setting these options wasn't possible before as it would result in an error when the daemon tried to start. I added some assertions to guard against this case.
2023-01-10nixos/manual: move "edit the MD file" comments to generated XMLpennae2-1/+2
2023-01-10nixos/manual: generate module chapters with md-to-db.shpennae3-3/+2
2023-01-10nixos/manual: enable smart quotes for all MD chapterspennae2-2/+2
2023-01-10nixos/litestream: convert manual chapter to MDpennae3-29/+79
2022-12-17nixos: fix typosfigsoda4-5/+5
2022-12-08treewide: switch to port type for nixos modulesDaniel Nagy1-3/+3
2022-11-10treewide: use `mkEnableOption` in nixos modulesDaniel Nagy1-1/+1
2022-10-27Merge pull request #197104 from Luflosi/kubo-RFC42Sandro1-47/+51
2022-10-22nixos/grafana: refactor settings for RFC42KFears1-1/+1
2022-10-21nixos/kubo: convert to RFC42-style settingsLuflosi1-47/+51
2022-10-02kubo: rename from ipfsLuflosi1-21/+44
Go-IPFS was renamed to Kubo in version 0.14.0, see https://github.com/ipfs/kubo/issues/8959.
2022-08-31nixos/*: convert options with listingspennae1-4/+4
minor rendering changes.
2022-08-31nixos/*: convert options with admonitions to MDpennae2-14/+13
rendering changes only slightly, most changes are in spacing.
2022-08-31nixos/*: automatically convert option descriptionspennae13-25/+25
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-19nixos/*: automatically convert option docspennae1-1/+1