nixos/samba: add documentation

This commit is contained in:
Anthony Roussel 2024-04-08 22:38:07 +02:00 committed by Pascal Bach
parent 988c598106
commit 3b48a7e013
3 changed files with 47 additions and 1 deletions

View File

@ -335,7 +335,7 @@
- The `replay-sorcery` package and module was removed as it unmaintained upstream. Consider using `gpu-screen-recorder` or `obs-studio` instead.
- To follow [RFC 0042](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md) a few options of `samba` have been moved from `extraConfig` to the new freeform option `settings` and renamed, e.g.:
- To follow [RFC 0042](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md) a few options of `samba` have been moved from `extraConfig` and `configText` to the new freeform option `settings` and renamed, e.g.:
- `services.samba.invalidUsers` to `services.samba.settings.global."invalid users"`
- `services.samba.securityType` to `services.samba.settings.global."security type"`
- `services.samba.shares` to `services.samba.settings`

View File

@ -0,0 +1,41 @@
# Samba {#module-services-samba}
[Samba](https://www.samba.org/), a SMB/CIFS file, print, and login server for Unix.
## Basic Usage {#module-services-samba-basic-usage}
A minimal configuration looks like this:
```nix
{
services.samba.enable = true;
}
```
This configuration automatically enables `smbd`, `nmbd` and `winbindd` services by default.
## Configuring {#module-services-samba-configuring}
Samba configuration is located in the `/etc/samba/smb.conf` file.
### File share {#module-services-samba-configuring-file-share}
This configuration will configure Samba to serve a `public` file share
which is read-only and accessible without authentication:
```nix
{
services.samba = {
enable = true;
settings = {
"public" = {
"path" = "/public";
"read only" = "yes";
"browseable" = "yes";
"guest ok" = "yes";
"comment" = "Public samba share.";
};
};
};
}
```

View File

@ -42,6 +42,11 @@ let
in
{
meta = {
doc = ./samba.md;
maintainers = [ lib.maintainers.anthonyroussel ];
};
imports = [
(mkRemovedOptionModule [ "services" "samba" "defaultShare" ] "")
(mkRemovedOptionModule [ "services" "samba" "syncPasswordsByPam" ] "This option has been removed by upstream, see https://bugzilla.samba.org/show_bug.cgi?id=10669#c10")