+6
-4
hosts/marvin/services/immich-config.json
+6
-4
hosts/marvin/services/immich-config.json
···
18
18
"gopSize": 0,
19
19
"maxBitrate": "0",
20
20
"preferredHwDevice": "auto",
21
-
"preset": "ultrafast",
21
+
"preset": "veryfast",
22
22
"refs": 0,
23
23
"targetAudioCodec": "aac",
24
24
"targetResolution": "720",
···
158
158
"smtp": {
159
159
"enabled": true,
160
160
"from": "dishNet Photos <immich@pyrox.dev>",
161
+
"replyTo": "",
161
162
"transport": {
162
163
"host": "mail.pyrox.dev",
163
164
"ignoreCert": false,
164
-
"port": 587,
165
+
"port": 25,
165
166
"secure": true,
166
167
"username": "immich@pyrox.dev"
167
168
}
···
170
171
"oauth": {
171
172
"autoLaunch": false,
172
173
"autoRegister": true,
173
-
"buttonText": "dishNet Auth",
174
+
"buttonText": "Login with Pocket-ID",
174
175
"clientId": "f1312240-d9fc-4336-aca6-b98316867848",
175
176
"defaultStorageQuota": null,
176
177
"enabled": true,
177
-
"issuerUrl": "https://auth.pyrox.dev/.well-known/openid-configuration",
178
+
"issuerUrl": "https://auth.pyrox.dev",
178
179
"mobileOverrideEnabled": false,
179
180
"mobileRedirectUri": "",
180
181
"profileSigningAlgorithm": "none",
···
193
194
"enabled": true
194
195
},
195
196
"server": {
197
+
"externalDomain": "https://img.pyrox.dev",
196
198
"loginPageMessage": "",
197
199
"publicUsers": true
198
200
},
+9
-3
hosts/marvin/services/immich.nix
+9
-3
hosts/marvin/services/immich.nix
···
1
-
{ self, config, ... }:
1
+
{
2
+
self,
3
+
config,
4
+
lib,
5
+
...
6
+
}:
2
7
let
3
8
d = self.lib.data.services.immich;
4
9
in
···
11
16
redis.enable = true;
12
17
mediaLocation = "/var/media/photos/";
13
18
accelerationDevices = [ "/dev/dri/renderD128" ];
14
-
settings = (builtins.fromJSON (builtins.readFile ./immich-config.json)) // {
19
+
settings = lib.recursiveUpdate (builtins.fromJSON (builtins.readFile ./immich-config.json)) {
15
20
oauth.clientSecret._secret = config.age.secrets.immich-oauth-secret.path;
16
21
notifications.smtp.transport.password._secret = config.age.secrets.immich-mail-pw.path;
17
22
server.externalDomain = "https://${d.extUrl}";
···
20
25
immich-public-proxy = {
21
26
enable = true;
22
27
port = d.pubProxy;
23
-
immichUrl = "localhost:${toString d.port}";
28
+
immichUrl = "http://localhost:${toString d.port}";
24
29
settings.ipp = {
25
30
downloadedFilename = 1;
26
31
};
27
32
};
28
33
};
34
+
systemd.services.immich-public-proxy.environment.PUBLIC_BASE_URL = "https://${d.extUrl}";
29
35
users.users.immich.extraGroups = [
30
36
"video"
31
37
"render"