Иммутабельный конфиг NixOS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Illia Chub 4db2ea3920
Fixed restic credentials path
2 weeks ago
api Add portalocker to api package 2 weeks ago
backup Initial commit 2 weeks ago
git Initial commit 2 weeks ago
letsencrypt Initial commit 2 weeks ago
mailserver/system It builds! 2 weeks ago
nextcloud Bump nextcloud 2 weeks ago
passmgr Initial commit 2 weeks ago
resources Initial commit 2 weeks ago
social It builds! 2 weeks ago
userdata Add more SSH settings 2 weeks ago
videomeet Initial commit 2 weeks ago
vpn Initial commit 2 weeks ago
webserver Initial commit 2 weeks ago
.gitignore Initial commit 2 weeks ago
README.md Changed names to correspond to appropriate environment variable names, used during nixos-infect 2 weeks ago
configuration.nix Add more SSH settings 2 weeks ago
files.nix Fixed restic credentials path 2 weeks ago
users.nix It builds! 2 weeks ago
variables-module.nix Add more SSH settings 2 weeks ago
variables.nix It builds! 2 weeks ago

README.md

SelfPrivacy NixOS configuration

This is a NixOS config which builds a SelfPrivacy server distribution based on data provided in userdata/userdata.json.

JSON schema is provided in userdata/schema.json for reference.

hardware-configuration.nix is not included.

Example JSON config:

{
    "backblaze": {
        "accountId": "BACKBLAZE_KEY_ID",
        "accountKey": "BACKBLAZE_ACCOUNT_KEY",
        "bucket": "BACKBLAZE_BUCKET_NAME"
    },
    "bitwarden": {
        "enable": true
    },
    "cloudflare": {
        "apiKey": "CF_TOKEN"
    },
    "databasePassword": "DB_PASSWORD",
    "domain": "DOMAIN",
    "hashedMasterPassword": "HASHED_PASSWORD",
    "hostname": "DOMAIN",
    "nextcloud": {
        "enable": true,
        "adminPassword": "PASSWORD",
        "databasePassword": "PASSWORD"
    },
    "gitea": {
        "enable": true
    },
    "jitsi": {
        "enable": true
    },
    "ocserv": {
        "enable": true
    },
    "pleroma": {
        "enable": true
    },
    "timezone": "Europe/Moscow",
    "resticPassword": "PASSWORD",
    "ssh": {
        "enable": true,
        "rootSshKeys": [
            "ssh-ed25519 KEY user@host"
        ],
        "passwordAuthentication": true
    },
    "username": "owner",
    "users": [
        {
            "hashedPassword": "HASHED_PASSWORD",
            "username": "LUSER"
        }
    ]
}