Skip to content

Commit f172e0c

Browse files
committed
Renamed
1 parent c8ecee1 commit f172e0c

File tree

12 files changed

+75
-73
lines changed

12 files changed

+75
-73
lines changed

.gitignore

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
./result
2-
./hugo/public
3-
./hugo/content/index.md
1+
result
2+
hugo/public
3+
hugo/content/index.md

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
1-
# servarr.enable
1+
# Nixarr
22

33
This is a nixos module that aims to make the installation and management of
44
running the "*Arrs" as easy, and pain free, as possible.
55

66
## Options
77

88
The documentation for the options can be found
9-
[here](https://rasmus-kirk.github.io/servarr.enable/)
9+
[here](https://rasmus-kirk.github.io/nixarr/)
1010

1111
## Features
1212

1313
- **Run services through a VPN:** You can run any service that this module
14-
supports through a VPN, fx `servarr.*.useVpn = true;`
14+
supports through a VPN, fx `nixarr.*.useVpn = true;`
1515
- **Automatic Directories, Users and Permissions:** The module automatically
1616
creates directories and users for your media library. It also sets sane
1717
permissions.
1818
- **State Management:** All services support state management and all state
19-
that they manage is by default in `/data/.state/servarr/*`
19+
that they manage is by default in `/data/.state/nixarr/*`
2020
- **Optional Automatic Port Forwarding:** This module has a UPNP module that
2121
lets services request ports from your router automatically, if you enable it.
2222

2323
To run services through a VPN, you must provide a wg-quick config file:
2424

2525
```nix
26-
servarr.vpn = {
26+
nixarr.vpn = {
2727
enable = true;
2828
# IMPORTANT: This file must _not_ be in the config git directory
2929
# You can usually get this wireguard file from your VPN provider
@@ -36,12 +36,12 @@ servarr.vpn = {
3636
Full example can be seen below:
3737

3838
```nix
39-
servarr = {
39+
nixarr = {
4040
enable = true;
4141
# These two values are also the default, but you can set them to whatever
4242
# else you want
4343
mediaDir = "/data/media";
44-
stateDir = "/data/media/.state/servarr";
44+
stateDir = "/data/media/.state/nixarr";
4545
4646
vpn = {
4747
enable = true;
@@ -87,7 +87,7 @@ Add DDNS-support.
8787

8888
### State Directories
8989

90-
- [ ] Jellyfin: PR is merged, wait for nixpkgs to update
90+
- [ ] Jellyfin: PR is merged, just need to do add it here
9191
- [ ] prowlarr: Works for vpn, probably need to create my own prowlarr systemd service...
9292
- [x] sonarr: Works
9393
- [x] radarr: Works
@@ -100,7 +100,7 @@ Using buildarr would allow setup services to integrate with each other upon
100100
activation with no user input, definitely nice.
101101

102102
Needs to be added to nixpkgs, not too hard, but is not worth it if the
103-
project is abandoned
103+
project is abandoned.
104104

105105
- [ ] Package with nix
106106
- [ ] Add to nixpkgs
@@ -112,7 +112,7 @@ idea how this could be done, but would simplify things _a lot_.
112112

113113
### cross-seed
114114

115-
Create a cross-seed service.
115+
Create support for the [cross-seed](https://github.com/cross-seed/cross-seed) service.
116116

117117
- [ ] Package with nix
118118
- [ ] Create nix service daemon

flake.nix

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
description = "The servarr.enable nixos module";
2+
description = "The Nixarr Nixos Module for Hosting the \"*Arrs\"";
33

44
nixConfig = {
55
extra-substituters = ["https://nix-community.cachix.org"];
@@ -46,8 +46,8 @@
4646

4747
flake = {
4848
nixosModules = rec {
49-
servarr = import ./servarr;
50-
default = servarr;
49+
nixarr = import ./nixarr;
50+
default = nixarr;
5151
};
5252
};
5353

mkDocs.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
config._module.check = false;
1414
}
1515
#inputs.home-manager.nixosModules.default
16-
./servarr
16+
./nixarr
1717
];
1818
};
1919
optionsDocNixos = nixosOptionsDoc {

servarr/default.nix renamed to nixarr/default.nix

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
...
55
}:
66
with lib; let
7-
cfg = config.servarr;
7+
cfg = config.nixarr;
88
in {
99
imports = [
1010
./jellyfin
@@ -16,13 +16,15 @@ in {
1616
./transmission
1717
];
1818

19-
options.servarr = {
19+
options.nixarr = {
2020
enable = mkEnableOption ''
21-
My servarr setup. Lets you host the servarr services optionally
22-
through a VPN. It is possible, BUT NOT RECOMENDED, to have
23-
prowlarr/sonarr/radarr/readarr/lidarr behind a VPN. Generally, you
24-
should use VPN on transmission and maybe jellyfin, depending on your
25-
setup. Also sets permissions and creates folders.
21+
Primarily, lets you host the "*Arrs" services optionally through a VPN.
22+
23+
It is possible, _but not recommended_, to have
24+
prowlarr/sonarr/radarr/readarr/lidarr behind a VPN, because it can cause
25+
rate limiting issues. Generally, you should use VPN on transmission
26+
and maybe jellyfin, depending on your setup. Also sets permissions
27+
and creates directories.
2628
2729
- Jellyfin
2830
- Lidarr
@@ -168,14 +170,14 @@ in {
168170
systemd.tmpfiles.rules = [
169171
# State dirs
170172
"d '${cfg.stateDir}' 0755 root root - -"
171-
"d '${cfg.stateDir}/servarr' 0755 root root - -"
172-
"d '${cfg.stateDir}/servarr/jellyfin' 0700 jellyfin root - -"
173-
"d '${cfg.stateDir}/servarr/transmission' 0700 transmission root - -"
174-
"d '${cfg.stateDir}/servarr/sonarr' 0700 sonarr root - -"
175-
"d '${cfg.stateDir}/servarr/radarr' 0700 radarr root - -"
176-
"d '${cfg.stateDir}/servarr/readarr' 0700 readarr root - -"
177-
"d '${cfg.stateDir}/servarr/lidarr' 0700 lidarr root - -"
178-
"d '${cfg.stateDir}/servarr/prowlarr' 0700 prowlarr root - -"
173+
"d '${cfg.stateDir}/nixarr' 0755 root root - -"
174+
"d '${cfg.stateDir}/nixarr/jellyfin' 0700 jellyfin root - -"
175+
"d '${cfg.stateDir}/nixarr/transmission' 0700 transmission root - -"
176+
"d '${cfg.stateDir}/nixarr/sonarr' 0700 sonarr root - -"
177+
"d '${cfg.stateDir}/nixarr/radarr' 0700 radarr root - -"
178+
"d '${cfg.stateDir}/nixarr/readarr' 0700 readarr root - -"
179+
"d '${cfg.stateDir}/nixarr/lidarr' 0700 lidarr root - -"
180+
"d '${cfg.stateDir}/nixarr/prowlarr' 0700 prowlarr root - -"
179181

180182
# Media dirs
181183
"d '${cfg.mediaDir}' 0775 root media - -"

servarr/jellyfin/default.nix renamed to nixarr/jellyfin/default.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
...
55
}:
66
with lib; let
7-
cfg = config.servarr.jellyfin;
7+
cfg = config.nixarr.jellyfin;
88
defaultPort = 8096;
9-
servarr = config.servarr;
9+
nixarr = config.nixarr;
1010
dnsServers = config.lib.vpn.dnsServers;
1111
in {
12-
options.servarr.jellyfin = {
12+
options.nixarr.jellyfin = {
1313
enable = mkOption {
1414
type = types.bool;
1515
default = false;
@@ -18,7 +18,7 @@ in {
1818

1919
stateDir = mkOption {
2020
type = types.path;
21-
default = "${servarr.stateDir}/servarr/jellyfin";
21+
default = "${nixarr.stateDir}/nixarr/jellyfin";
2222
description = lib.mdDoc "The state directory for jellyfin";
2323
};
2424

@@ -112,7 +112,7 @@ in {
112112
extraFlags = ["--network-namespace-path=/var/run/netns/wg"];
113113

114114
bindMounts = {
115-
"${servarr.mediaDir}/library".isReadOnly = false;
115+
"${nixarr.mediaDir}/library".isReadOnly = false;
116116
"${cfg.stateDir}".isReadOnly = false;
117117
};
118118

servarr/lidarr/default.nix renamed to nixarr/lidarr/default.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
...
55
}:
66
with lib; let
7-
cfg = config.servarr.lidarr;
7+
cfg = config.nixarr.lidarr;
88
dnsServers = config.lib.vpn.dnsServers;
9-
servarr = config.servarr;
9+
nixarr = config.nixarr;
1010
in {
11-
options.servarr.lidarr = {
11+
options.nixarr.lidarr = {
1212
enable = mkOption {
1313
type = types.bool;
1414
default = false;
@@ -17,7 +17,7 @@ in {
1717

1818
stateDir = mkOption {
1919
type = types.path;
20-
default = "${servarr.stateDir}/servarr/lidarr";
20+
default = "${nixarr.stateDir}/nixarr/lidarr";
2121
description = lib.mdDoc "The state directory for lidarr";
2222
};
2323

@@ -51,7 +51,7 @@ in {
5151
extraFlags = ["--network-namespace-path=/var/run/netns/wg"];
5252

5353
bindMounts = {
54-
"${servarr.mediaDir}".isReadOnly = false;
54+
"${nixarr.mediaDir}".isReadOnly = false;
5555
"${cfg.stateDir}".isReadOnly = false;
5656
};
5757

servarr/prowlarr/default.nix renamed to nixarr/prowlarr/default.nix

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
with lib; let
99
defaultPort = 9696;
1010
dnsServers = config.lib.vpn.dnsServers;
11-
servarr = config.servarr;
12-
cfg = config.servarr.prowlarr;
11+
nixarr = config.nixarr;
12+
cfg = config.nixarr.prowlarr;
1313
in {
14-
options.servarr.prowlarr = {
14+
options.nixarr.prowlarr = {
1515
enable = mkOption {
1616
type = types.bool;
1717
default = false;
@@ -20,7 +20,7 @@ in {
2020

2121
stateDir = mkOption {
2222
type = types.path;
23-
default = "${servarr.stateDir}/servarr/prowlarr";
23+
default = "${nixarr.stateDir}/nixarr/prowlarr";
2424
description = lib.mdDoc ''
2525
The state directory for prowlarr. Currently doesn't work, except with VPN.
2626
'';

servarr/radarr/default.nix renamed to nixarr/radarr/default.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@
66
...
77
}:
88
with lib; let
9-
cfg = config.servarr.radarr;
9+
cfg = config.nixarr.radarr;
1010
defaultPort = 7878;
11-
servarr = config.servarr;
11+
nixarr = config.nixarr;
1212
dnsServers = config.lib.vpn.dnsServers;
1313
in {
14-
options.servarr.radarr = {
14+
options.nixarr.radarr = {
1515
enable = mkOption {
1616
type = types.bool;
1717
default = false;
@@ -20,7 +20,7 @@ in {
2020

2121
stateDir = mkOption {
2222
type = types.path;
23-
default = "${servarr.stateDir}/servarr/radarr";
23+
default = "${nixarr.stateDir}/nixarr/radarr";
2424
description = lib.mdDoc "The state directory for radarr";
2525
};
2626

@@ -54,7 +54,7 @@ in {
5454
extraFlags = ["--network-namespace-path=/var/run/netns/wg"];
5555

5656
bindMounts = {
57-
"${servarr.mediaDir}".isReadOnly = false;
57+
"${nixarr.mediaDir}".isReadOnly = false;
5858
"${cfg.stateDir}".isReadOnly = false;
5959
};
6060

servarr/readarr/default.nix renamed to nixarr/readarr/default.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
...
55
}:
66
with lib; let
7-
cfg = config.servarr.readarr;
8-
servarr = config.servarr;
7+
cfg = config.nixarr.readarr;
8+
nixarr = config.nixarr;
99
dnsServers = config.lib.vpn.dnsServers;
1010
in {
11-
options.servarr.readarr = {
11+
options.nixarr.readarr = {
1212
enable = mkOption {
1313
type = types.bool;
1414
default = false;
@@ -17,7 +17,7 @@ in {
1717

1818
stateDir = mkOption {
1919
type = types.path;
20-
default = "${servarr.stateDir}/servarr/readarr";
20+
default = "${nixarr.stateDir}/nixarr/readarr";
2121
description = lib.mdDoc "The state directory for readarr";
2222
};
2323

@@ -51,7 +51,7 @@ in {
5151
extraFlags = ["--network-namespace-path=/var/run/netns/wg"];
5252

5353
bindMounts = {
54-
"${servarr.mediaDir}".isReadOnly = false;
54+
"${nixarr.mediaDir}".isReadOnly = false;
5555
"${cfg.stateDir}".isReadOnly = false;
5656
};
5757

servarr/sonarr/default.nix renamed to nixarr/sonarr/default.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
...
66
}:
77
with lib; let
8-
cfg = config.servarr.sonarr;
8+
cfg = config.nixarr.sonarr;
99
defaultPort = 8989;
10-
servarr = config.servarr;
10+
nixarr = config.nixarr;
1111
dnsServers = config.lib.vpn.dnsServers;
1212
in {
13-
options.servarr.sonarr = {
13+
options.nixarr.sonarr = {
1414
enable = mkOption {
1515
type = types.bool;
1616
default = false;
@@ -19,7 +19,7 @@ in {
1919

2020
stateDir = mkOption {
2121
type = types.path;
22-
default = "${servarr.stateDir}/sonarr";
22+
default = "${nixarr.stateDir}/sonarr";
2323
description = lib.mdDoc "The state directory for sonarr";
2424
};
2525

@@ -51,7 +51,7 @@ in {
5151
extraFlags = ["--network-namespace-path=/var/run/netns/wg"];
5252

5353
bindMounts = {
54-
"${servarr.mediaDir}".isReadOnly = false;
54+
"${nixarr.mediaDir}".isReadOnly = false;
5555
"${cfg.stateDir}".isReadOnly = false;
5656
};
5757

0 commit comments

Comments
 (0)