aboutsummaryrefslogtreecommitdiff
path: root/hosts/laurel/configuration.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/laurel/configuration.nix')
-rw-r--r--hosts/laurel/configuration.nix74
1 files changed, 68 insertions, 6 deletions
diff --git a/hosts/laurel/configuration.nix b/hosts/laurel/configuration.nix
index a40dafd..84e5a83 100644
--- a/hosts/laurel/configuration.nix
+++ b/hosts/laurel/configuration.nix
@@ -9,6 +9,8 @@
9 [ 9 [
10 # Include the results of the hardware scan. 10 # Include the results of the hardware scan.
11 ./hardware-configuration.nix 11 ./hardware-configuration.nix
12 ./servarr.nix
13 ./media.nix
12 ]; 14 ];
13 15
14 # Use the systemd-boot EFI boot loader. 16 # Use the systemd-boot EFI boot loader.
@@ -20,7 +22,7 @@
20 # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. 22 # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
21 # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. 23 # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
22 networking.hostName = "laurel"; 24 networking.hostName = "laurel";
23 networking.firewall.allowedTCPPorts = [ 80 443 ]; 25 networking.firewall.allowedTCPPorts = [ 80 443 6197 ];
24 26
25 time.timeZone = "Europe/London"; 27 time.timeZone = "Europe/London";
26 i18n.defaultLocale = "en_US.UTF-8"; 28 i18n.defaultLocale = "en_US.UTF-8";
@@ -44,10 +46,19 @@
44 ]; 46 ];
45 }; 47 };
46 48
47 environment.systemPackages = with pkgs; [ 49 environment.systemPackages = [
48 vim 50 pkgs.vim
49 wget 51 pkgs.wget
50 curl 52 pkgs.curl
53
54 pkgs.jellyfin
55 pkgs.jellyfin-web
56 pkgs.jellyfin-ffmpeg
57
58 pkgs.htop
59 pkgs.ripgrep
60 pkgs.git
61
51 ]; 62 ];
52 63
53 users.users.op = { 64 users.users.op = {
@@ -115,15 +126,66 @@
115 }; 126 };
116 }; 127 };
117 128
129 services.miniflux = {
130 enable = true;
131 adminCredentialsFile = "/etc/miniflux/admin";
132 config = {
133 FETCH_YOUTUBE_WATCH_TIME = 1;
134 PORT = 8383;
135 BASE_URL = "http://rss.laurel";
136 };
137 };
138 services.nginx.virtualHosts."rss.laurel" = {
139 listen = [{ port = 80; addr = "0.0.0.0"; }];
140 locations."/" = {
141 proxyPass = "http://127.0.0.1:${builtins.toString config.services.miniflux.config.PORT}";
142 };
143 };
144
118 services.nginx.virtualHosts."oppi.li" = { 145 services.nginx.virtualHosts."oppi.li" = {
119 listen = [{ port = 8282; addr = "0.0.0.0"; }]; 146 listen = [{ port = 8282; addr = "0.0.0.0"; }];
120 root = "/home/op/site/docs"; 147 root = "/www/site/docs";
121 locations."/" = { 148 locations."/" = {
122 tryFiles = "$uri $uri/ =404"; 149 tryFiles = "$uri $uri/ =404";
123 index = "index.html"; 150 index = "index.html";
124 }; 151 };
125 }; 152 };
126 153
154 services.matrix-conduit = {
155 enable = true;
156 settings = {
157 global = {
158 allow_encryption = true;
159 allow_federation = true;
160 allow_registration = false;
161 database_backend = "rocksdb";
162 server_name = "oppi.li";
163 address = "0.0.0.0";
164 port = 6197;
165 enable_lightning_bolt = false;
166 };
167 };
168 };
169
170 services.radicale = {
171 enable = true;
172 settings = {
173 server.hosts = [ "0.0.0.0:5232" ];
174 auth = {
175 type = "htpasswd";
176 htpasswd_filename = "/etc/radicale/users";
177 htpasswd_encryption = "bcrypt";
178 };
179 };
180 };
181 services.nginx.virtualHosts."radicale.laurel" = {
182 listen = [{ port = 80; addr = "0.0.0.0"; }];
183 locations."/" = {
184 proxyPass = "http://127.0.0.1:5232";
185 };
186 };
187
188
127 nix.settings.experimental-features = [ "nix-command" "flakes" ]; 189 nix.settings.experimental-features = [ "nix-command" "flakes" ];
128 190
129 # This option defines the first version of NixOS you have installed on this particular machine, 191 # This option defines the first version of NixOS you have installed on this particular machine,