Compare commits

...

6 commits

Author SHA1 Message Date
chaos fef99021b9
add backups for notes 2024-04-28 11:54:10 +01:00
chaos f0bc4e058f
add reverse proxy for notes share 2024-04-26 19:58:03 +01:00
chaos c84a946b76
add serve for notes 2024-04-26 19:57:02 +01:00
chaos a657ea7da5
add secrets for webdav and crypt 2024-04-26 19:55:22 +01:00
chaos c5aae8b387
add notes crypt to rclone config 2024-04-26 19:48:34 +01:00
chaos 60e00f5a76 add port for notes webdav 2024-04-26 19:36:58 +01:00
6 changed files with 54 additions and 4 deletions

View file

@ -9,6 +9,7 @@ in {
webdav_public = webdav + 3; webdav_public = webdav + 3;
webdav_uploads = webdav + 4; webdav_uploads = webdav + 4;
webdav_gaming = webdav + 5; webdav_gaming = webdav + 5;
webdav_notes = webdav + 6;
restic_music = restic + 0; restic_music = restic + 0;
restic_vault = restic + 1; restic_vault = restic + 1;
@ -22,7 +23,7 @@ in {
restic_jellyfin = restic + 9; restic_jellyfin = restic + 9;
restic_grocy = restic + 10; restic_grocy = restic + 10;
restic_lappy_t495 = restic + 11; restic_lappy_t495 = restic + 11;
http_music = http + 0; http_music = http + 0;
http_public = http + 1; http_public = http + 1;
http_uploads_public = http + 2; http_uploads_public = http + 2;

View file

@ -82,6 +82,16 @@ hard_delete = true
type = alias type = alias
remote = B2-Chaos-Public-Source:Chaos-Public remote = B2-Chaos-Public-Source:Chaos-Public
[B2-Chaos-Notes-Source]
type = b2
account = B2_CHAOS_NOTES_ACCOUNT
key = B2_CHAOS_NOTES_KEY
hard_delete = true
[B2-Chaos-Notes]
type = alias
remote = B2-Chaos-Notes-Source:Chaos-Notes
[B2-Phoenix-Cryptidz-Storage-Source] [B2-Phoenix-Cryptidz-Storage-Source]
type = b2 type = b2
account = B2_PHOENIX_CRYPTIDZ_STORAGE_ACCOUNT account = B2_PHOENIX_CRYPTIDZ_STORAGE_ACCOUNT
@ -143,4 +153,10 @@ password2 = STORAGE_GAMING_CRYPT_SALT
[Gaming] [Gaming]
type = chunker type = chunker
remote = Gaming-Source: remote = Gaming-Source:
chunk_size = 128Mi chunk_size = 128Mi
[Notes]
type = crypt
remote = StorageBox:Notes
password = STORAGE_NOTES_CRYPT_PASSWORD
password2 = STORAGE_NOTES_CRYPT_SALT

View file

@ -91,6 +91,7 @@ in {
"/Public/".proxyPass = "http://${containerIP}:${toString ports.webdav_public}"; "/Public/".proxyPass = "http://${containerIP}:${toString ports.webdav_public}";
"/Uploads/".proxyPass = "http://${containerIP}:${toString ports.webdav_uploads}"; "/Uploads/".proxyPass = "http://${containerIP}:${toString ports.webdav_uploads}";
"/Gaming/".proxyPass = "http://${containerIP}:${toString ports.webdav_gaming}"; "/Gaming/".proxyPass = "http://${containerIP}:${toString ports.webdav_gaming}";
"/Notes/".proxyPass = "http://${containerIP}:${toString ports.webdav_notes}";
}; };
extraConfig = '' extraConfig = ''
client_max_body_size ${clientMaxBodySize}; client_max_body_size ${clientMaxBodySize};

View file

@ -91,6 +91,16 @@ in {
"--vfs-cache-max-age=5m" "--vfs-cache-max-age=5m"
"--vfs-cache-max-size=1g" "--vfs-cache-max-size=1g"
"--vfs-cache-mode=full" "--vfs-cache-mode=full"
];
}
{
id = "notes";
remote = "Notes:";
type = "webdav";
extraArgs = [
"--addr=0.0.0.0:${toString ports.webdav_notes}"
"--htpasswd=${secrets.webdav_notes_htpasswd.path}"
"--baseurl=/Notes/"
]; ];
} }
{ {

View file

@ -47,6 +47,11 @@ in {
dest = "B2-Chaos-Public:"; dest = "B2-Chaos-Public:";
id = "chaos_b2_public"; id = "chaos_b2_public";
} }
{
source = "StorageBox:Notes";
dest = "B2-Chaos-Notes:";
id = "chaos_notes_public";
}
# Pheonix System's B2 # Pheonix System's B2
{ {
source = "StorageBox:Backups"; source = "StorageBox:Backups";
@ -73,6 +78,11 @@ in {
dest = "B2-Phoenix-Cryptidz-Storage:Public"; dest = "B2-Phoenix-Cryptidz-Storage:Public";
id = "phoenix_b2_public"; id = "phoenix_b2_public";
} }
{
source = "StorageBox:Notes";
dest = "B2-Phoenix-Cryptidz-Storage:Notes";
id = "phoenix_b2_notes";
}
]; ];
}; };
} }

View file

@ -23,6 +23,7 @@
"api-keys/data/backblaze/Chaos-Public" "api-keys/data/backblaze/Chaos-Public"
"api-keys/data/backblaze/Chaos-Media" "api-keys/data/backblaze/Chaos-Media"
"api-keys/data/backblaze/Chaos-Gaming" "api-keys/data/backblaze/Chaos-Gaming"
"api-keys/data/backblaze/Chaos-Notes"
"api-keys/data/backblaze/Phoenix-Cryptidz-Storage" "api-keys/data/backblaze/Phoenix-Cryptidz-Storage"
"api-keys/data/storage/restic/Music" "api-keys/data/storage/restic/Music"
@ -43,9 +44,11 @@
"api-keys/data/storage/webdav/Public" "api-keys/data/storage/webdav/Public"
"api-keys/data/storage/webdav/Uploads" "api-keys/data/storage/webdav/Uploads"
"api-keys/data/storage/webdav/Gaming" "api-keys/data/storage/webdav/Gaming"
"api-keys/data/storage/webdav/Notes"
"private-public-keys/data/rclone/Chaos-Media-Crypt" "private-public-keys/data/rclone/Chaos-Media-Crypt"
"private-public-keys/data/rclone/Chaos-Gaming-Crypt" "private-public-keys/data/rclone/Chaos-Gaming-Crypt"
"private-public-keys/data/rclone/Chaos-Notes-Crypt"
]; ];
packages = with pkgs; [ packages = with pkgs; [
@ -235,7 +238,14 @@
simple_get_htpasswd "/api-keys/storage/webdav/Gaming" "$secretFile" simple_get_htpasswd "/api-keys/storage/webdav/Gaming" "$secretFile"
''; '';
}; };
webdav_notes_htpasswd = {
user = "storage";
group = "storage";
fetchScript = ''
simple_get_htpasswd "/api-keys/storage/webdav/Notes" "$secretFile"
'';
};
rclone_config = { rclone_config = {
user = "storage"; user = "storage";
group = "storage"; group = "storage";
@ -252,6 +262,7 @@
simple_get_replace_b2 "/api-keys/backblaze/Chaos-Music" "B2_CHAOS_MUSIC" "$secretFile" simple_get_replace_b2 "/api-keys/backblaze/Chaos-Music" "B2_CHAOS_MUSIC" "$secretFile"
simple_get_replace_b2 "/api-keys/backblaze/Chaos-Personal" "B2_CHAOS_PERSONAL" "$secretFile" simple_get_replace_b2 "/api-keys/backblaze/Chaos-Personal" "B2_CHAOS_PERSONAL" "$secretFile"
simple_get_replace_b2 "/api-keys/backblaze/Chaos-Public" "B2_CHAOS_PUBLIC" "$secretFile" simple_get_replace_b2 "/api-keys/backblaze/Chaos-Public" "B2_CHAOS_PUBLIC" "$secretFile"
simple_get_replace_b2 "/api-keys/backblaze/Chaos-Notes" "B2_CHAOS_NOTES" "$secretFile"
simple_get_replace_b2 "/api-keys/backblaze/Phoenix-Cryptidz-Storage" "B2_PHOENIX_CRYPTIDZ_STORAGE" "$secretFile" simple_get_replace_b2 "/api-keys/backblaze/Phoenix-Cryptidz-Storage" "B2_PHOENIX_CRYPTIDZ_STORAGE" "$secretFile"
PUTIO_PASSWORD="token/$(simple_get /api-keys/putio .oauth_token)" PUTIO_PASSWORD="token/$(simple_get /api-keys/putio .oauth_token)"
@ -260,6 +271,7 @@
simple_get_replace_crypt "/private-public-keys/rclone/Chaos-Media-Crypt" "STORAGE_MEDIA_CRYPT" "$secretFile" simple_get_replace_crypt "/private-public-keys/rclone/Chaos-Media-Crypt" "STORAGE_MEDIA_CRYPT" "$secretFile"
simple_get_replace_crypt "/private-public-keys/rclone/Chaos-Gaming-Crypt" "STORAGE_GAMING_CRYPT" "$secretFile" simple_get_replace_crypt "/private-public-keys/rclone/Chaos-Gaming-Crypt" "STORAGE_GAMING_CRYPT" "$secretFile"
simple_get_replace_crypt "/private-public-keys/rclone/Chaos-Notes-Crypt" "STORAGE_NOTES_CRYPT" "$secretFile"
''; '';
}; };
}; };