Reorganize files into folders

This commit is contained in:
Vili Sinervä 2024-06-06 16:53:15 +03:00
parent 951d5641a0
commit d354c5d205
No known key found for this signature in database
GPG key ID: DF8FEAF54EFAC996
9 changed files with 6 additions and 6 deletions

38
services/nextcloud.nix Normal file
View file

@ -0,0 +1,38 @@
# Nextcloud instance
{ config, pkgs, ... }:
{
networking.firewall.allowedTCPPorts = [
80
443
];
networking.firewall.allowedUDPPorts = [ 443 ];
services.nextcloud = {
package = pkgs.nextcloud29;
enable = true;
hostName = "nextcloud.vsinerva.fi";
autoUpdateApps.enable = true;
https = true;
maxUploadSize = "10G";
config = {
adminpassFile = "/var/lib/nextcloud/adminpass";
};
settings = {
overwriteprotocol = "https";
};
};
services.nginx.virtualHosts = {
${config.services.nextcloud.hostName} = {
forceSSL = true;
kTLS = true;
sslCertificate = "/var/lib/nextcloud/nextcloud_fullchain.pem";
sslCertificateKey = "/var/lib/nextcloud/nextcloud_privkey.pem";
locations = {
"/".proxyWebsockets = true;
"~ ^\/nextcloud\/(?:index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy)\.php(?:$|\/)" =
{ };
};
};
};
}

68
services/syncthing.nix Normal file
View file

@ -0,0 +1,68 @@
# Syncthing instance
{ config, pkgs, ... }:
{
services.syncthing = {
enable = true;
user = "vili";
dataDir = "/home/vili/";
settings = {
devices = {
"helium" = {
id = "2MRUBSY-NHXYMAW-SY22RHP-CNNMHKR-DPDKMM4-2XV5F6M-6KSNLQI-DD4EOAM";
addresses = [ "tcp://helium.vsinerva.fi:22000" ];
};
"nixos-cpu" = {
id = "ZX35ARB-3ULEUV3-NNUEREF-DEDWOJU-GE7A4PP-T7O43NI-SU564OD-E26HHA4";
addresses = [ "tcp://nixos-cpu.vsinerva.fi:22000" ];
};
"phone" = {
id = "K6QCK2R-BU65RAC-PHTGLIA-24IHDXE-N6VNBAW-QYREMVD-XWGWKRA-VX2BNAK";
addresses = [ "tcp://172.16.0.3:22000" ];
};
};
folders =
let
default = {
devices = [
"helium"
"nixos-cpu"
];
versioning = {
type = "trashcan";
params.cleanoutDays = "30";
};
fsWatcherDelayS = 1;
};
in
{
"~/Documents" = default // {
devices = [
"helium"
"nixos-cpu"
"phone"
];
};
"~/Downloads" = default;
"~/Music" = default;
"~/Pictures" = default;
"~/Projects" = default;
"~/School" = default;
"~/Videos" = default;
"~/Zotero" = default;
};
options = {
urAccepted = -1;
localAnnounceEnabled = false;
globalAnnounceEnabled = false;
natEnabled = false;
relaysEnabled = false;
};
};
#TCP/UDP 22000 for transfers and UDP 21027 for discovery
openDefaultPorts = true;
};
}

52
services/vaultwarden.nix Normal file
View file

@ -0,0 +1,52 @@
# Nextcloud instance
{ config, pkgs, ... }:
{
networking.firewall.allowedTCPPorts = [
80
443
];
networking.firewall.allowedUDPPorts = [ 443 ];
services = {
vaultwarden = {
enable = true;
environmentFile = "/var/lib/vaultwarden/vaultwarden.env";
config = {
DOMAIN = "https://vaultwarden.vsinerva.fi";
LOGIN_RATELIMIT_MAX_BURST = 10;
LOGIN_RATELIMIT_SECONDS = 60;
ADMIN_RATELIMIT_MAX_BURST = 10;
ADMIN_RATELIMIT_SECONDS = 60;
SENDS_ALLOWED = true;
EMERGENCY_ACCESS_ALLOWED = true;
WEB_VAULT_ENABLED = true;
SIGNUPS_ALLOWED = true;
SIGNUPS_VERIFY = true;
SIGNUPS_VERIFY_RESEND_TIME = 3600;
SIGNUPS_VERIFY_RESEND_LIMIT = 5;
SMTP_HOST = "smtp.gmail.com";
SMTP_FROM = "vmsskv12@gmail.com";
SMTP_FROM_NAME = "Vaultwarden";
SMTP_SECURITY = "force_tls";
SMTP_PRT = 587;
SMTP_USERNAME = "vmsskv12@gmail.com";
SMTP_AUTH_MECHANISM = "Login";
};
};
nginx = {
enable = true;
recommendedGzipSettings = true;
virtualHosts."vaultwarden.vsinerva.fi" = {
forceSSL = true;
kTLS = true;
sslCertificate = "/var/lib/vaultwarden/fullchain.pem";
sslCertificateKey = "/var/lib/vaultwarden/privkey.pem";
locations."/" = {
proxyPass = "http://127.0.0.1:8000";
};
};
};
};
}