Host CryptPad #120
3 changed files with 96 additions and 48 deletions
|
|
@ -23,6 +23,7 @@
|
||||||
"radarr"
|
"radarr"
|
||||||
"radicale"
|
"radicale"
|
||||||
"readarr"
|
"readarr"
|
||||||
|
"send"
|
||||||
"sonarr"
|
"sonarr"
|
||||||
"vaultwarden"
|
"vaultwarden"
|
||||||
# keep-sorted end
|
# keep-sorted end
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,17 @@ in
|
||||||
listenPort = port;
|
listenPort = port;
|
||||||
allowedHosts = "homepage-dashboard.fi33.buzz";
|
allowedHosts = "homepage-dashboard.fi33.buzz";
|
||||||
services = [
|
services = [
|
||||||
|
{
|
||||||
|
"Public Services" = [
|
||||||
|
{
|
||||||
|
Send = {
|
||||||
|
description = "Simple, private file sharing";
|
||||||
|
icon = "send.svg";
|
||||||
|
href = "https://send.fi33.buzz/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
{
|
{
|
||||||
"Media Management" = [
|
"Media Management" = [
|
||||||
{
|
{
|
||||||
|
|
@ -146,6 +157,52 @@ in
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
"Private Services" = [
|
||||||
|
{
|
||||||
|
"copyparty" = {
|
||||||
|
"description" = "Cloud file manager";
|
||||||
|
"icon" = "sh-copyparty.svg";
|
||||||
|
"href" = "https://copyparty.fi33.buzz/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
CouchDB = {
|
||||||
|
description = "Obsidian sync database";
|
||||||
|
icon = "couchdb.svg";
|
||||||
|
href = "https://couchdb.fi33.buzz/_utils/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
ntfy = {
|
||||||
|
description = "Notification service";
|
||||||
|
icon = "ntfy.svg";
|
||||||
|
href = "https://ntfy-sh.fi33.buzz/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
Radicale = {
|
||||||
|
description = "CalDAV/CardDAV service";
|
||||||
|
icon = "radicale.svg";
|
||||||
|
href = "https://radicale.fi33.buzz";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
Syncthing = {
|
||||||
|
description = "Decentralised file synchronisation";
|
||||||
|
icon = "syncthing.svg";
|
||||||
|
href = "https://syncthing.fi33.buzz/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
Vaultwarden = {
|
||||||
|
description = "Password manager";
|
||||||
|
icon = "vaultwarden.svg";
|
||||||
|
href = "https://vaultwarden.fi33.buzz/";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
{
|
{
|
||||||
"Media Streaming" = [
|
"Media Streaming" = [
|
||||||
{
|
{
|
||||||
|
|
@ -223,52 +280,7 @@ in
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
|
||||||
Services = [
|
|
||||||
{
|
|
||||||
"copyparty" = {
|
|
||||||
"description" = "Cloud file manager";
|
|
||||||
"icon" = "sh-copyparty.svg";
|
|
||||||
"href" = "https://copyparty.fi33.buzz/";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
CouchDB = {
|
|
||||||
description = "Obsidian sync database";
|
|
||||||
icon = "couchdb.svg";
|
|
||||||
href = "https://couchdb.fi33.buzz/_utils/";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
ntfy = {
|
|
||||||
description = "Notification service";
|
|
||||||
icon = "ntfy.svg";
|
|
||||||
href = "https://ntfy-sh.fi33.buzz/";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
Radicale = {
|
|
||||||
description = "CalDAV/CardDAV service";
|
|
||||||
icon = "radicale.svg";
|
|
||||||
href = "https://radicale.fi33.buzz";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
Syncthing = {
|
|
||||||
description = "Decentralised file synchronisation";
|
|
||||||
icon = "syncthing.svg";
|
|
||||||
href = "https://syncthing.fi33.buzz/";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
Vaultwarden = {
|
|
||||||
description = "Password manager";
|
|
||||||
icon = "vaultwarden.svg";
|
|
||||||
href = "https://vaultwarden.fi33.buzz/";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
Utilities = [
|
Utilities = [
|
||||||
{
|
{
|
||||||
|
|
@ -288,14 +300,21 @@ in
|
||||||
headerStyle = "clean";
|
headerStyle = "clean";
|
||||||
layout = [
|
layout = [
|
||||||
{
|
{
|
||||||
"Media Streaming" = {
|
"Public Services" = {
|
||||||
style = "row";
|
style = "row";
|
||||||
columns = 3;
|
columns = 3;
|
||||||
useEqualHeights = true;
|
useEqualHeights = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
Services = {
|
"Private Services" = {
|
||||||
|
style = "row";
|
||||||
|
columns = 3;
|
||||||
|
useEqualHeights = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"Media Streaming" = {
|
||||||
style = "row";
|
style = "row";
|
||||||
columns = 3;
|
columns = 3;
|
||||||
useEqualHeights = true;
|
useEqualHeights = true;
|
||||||
|
|
|
||||||
28
modules/nixos/features/send.nix
Normal file
28
modules/nixos/features/send.nix
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
let
|
||||||
|
port = 5020;
|
||||||
|
certloc = "/var/lib/acme/fi33.buzz";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
send = {
|
||||||
|
enable = true;
|
||||||
|
inherit port;
|
||||||
|
baseUrl = "https://send.fi33.buzz";
|
||||||
|
environment = {
|
||||||
|
DEFAULT_EXPIRE_SECONDS = 360;
|
||||||
|
EXPIRE_TIMES_SECONDS = "360";
|
||||||
|
DOWNLOAD_COUNTS = "1";
|
||||||
|
MAX_DOWNLOADS = 1;
|
||||||
|
MAX_EXPIRE_SECONDS = 1024;
|
||||||
|
MAX_FILE_SIZE = 134217728;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
caddy.virtualHosts."send.fi33.buzz".extraConfig = ''
|
||||||
|
reverse_proxy localhost:${toString port}
|
||||||
|
tls ${certloc}/cert.pem ${certloc}/key.pem {
|
||||||
|
protocols tls1.3
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue