You can set up your own Smos server to host your own syncing.
A community sync-server has been set up at api.smos.online
in case do not want to do that.
You can set up your own Smos server to host your own syncing.
A community sync-server has been set up at api.smos.online
in case do not want to do that.
--config-file Path to the configuration file --log-level Minimal severity of log messages default: Info examples: "Debug", "Info", "Warn", "Error" --uuid-file The file to store the server uuid in default: "smos-server-uuid.json" --database-file The file to store the server database in default: "smos-server-database.sqlite3" --signing-key-file The file to store the JWT signing key in default: "smos-signing-key.json" --port The port to serve web requests on default: 8000 --max-backup-size-per-user The maximum number of bytes that backups can take up per user --(enable|disable)-auto-backup enable the auto-backup looper --auto-backup-phase phase of the auto-backup looper in seconds default: 30s --auto-backup-period period of the auto-backup looper in seconds default: 3600s --(enable|disable)-backup-garbage-collector enable the backup-garbage-collector looper --backup-garbage-collector-phase phase of the backup-garbage-collector looper in seconds default: 60s --backup-garbage-collector-period period of the backup-garbage-collector looper in seconds default: 3600s --(enable|disable)-file-migrator enable the file-migrator looper --file-migrator-phase phase of the file-migrator looper in seconds default: 120s --file-migrator-period period of the file-migrator looper in seconds default: 86400s --admin The user that will have admin rights --necrork-switch Name of the necrork switch --necrork-url Base url of the necrork server default: https://necrork.cs-syd.eu --necrork-(enable|disable)-notifier enable the notifier looper --necrork-notifier-phase phase of the notifier looper in seconds default: 0s --necrork-notifier-period period of the notifier looper in seconds default: 300s --necrork-timeout How long after last hearing from this switch, nodes should consider it dead --necrork-intray-username Username --necrork-intray-key Access key --booking-email-address Email address to send booking emails from --monetisation-stripe-secret-key The stripe api secret key --monetisation-stripe-publishable-key The stripe api publishable key --monetisation-stripe-price The stripe price id --monetisation-freeloaders The usernames of users that will not have to pay, comma separated
SMOS_SERVER_CONFIG_FILE FILE_PATH Path to the configuration file SMOS_SERVER_LOG_LEVEL LOG_LEVEL Minimal severity of log messages default: Info examples: "Debug", "Info", "Warn", "Error" SMOS_SERVER_UUID_FILE FILE_PATH The file to store the server uuid in default: "smos-server-uuid.json" SMOS_SERVER_DATABASE_FILE FILE_PATH The file to store the server database in default: "smos-server-database.sqlite3" SMOS_SERVER_SIGNING_KEY_FILE FILE_PATH The file to store the JWT signing key in default: "smos-signing-key.json" SMOS_SERVER_PORT PORT The port to serve web requests on default: 8000 SMOS_SERVER_MAX_BACKUP_SIZE_PER_USER BYTES The maximum number of bytes that backups can take up per user SMOS_SERVER_AUTO_BACKUP_ENABLE BOOL enable the auto-backup looper SMOS_SERVER_AUTO_BACKUP_PHASE SECONDS phase of the auto-backup looper in seconds default: 30s SMOS_SERVER_AUTO_BACKUP_PERIOD SECONDS period of the auto-backup looper in seconds default: 3600s SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_ENABLE BOOL enable the backup-garbage-collector looper SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_PHASE SECONDS phase of the backup-garbage-collector looper in seconds default: 60s SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_PERIOD SECONDS period of the backup-garbage-collector looper in seconds default: 3600s SMOS_SERVER_FILE_MIGRATOR_ENABLE BOOL enable the file-migrator looper SMOS_SERVER_FILE_MIGRATOR_PHASE SECONDS phase of the file-migrator looper in seconds default: 120s SMOS_SERVER_FILE_MIGRATOR_PERIOD SECONDS period of the file-migrator looper in seconds default: 86400s SMOS_SERVER_ADMIN USERNAMES The user that will have admin rights SMOS_SERVER_NECRORK_SWITCH SWITCH_NAME Name of the necrork switch SMOS_SERVER_NECRORK_URL URL Base url of the necrork server default: https://necrork.cs-syd.eu SMOS_SERVER_NECRORK_NOTIFIER_ENABLE BOOL enable the notifier looper SMOS_SERVER_NECRORK_NOTIFIER_PHASE SECONDS phase of the notifier looper in seconds default: 0s SMOS_SERVER_NECRORK_NOTIFIER_PERIOD SECONDS period of the notifier looper in seconds default: 300s SMOS_SERVER_NECRORK_TIMEOUT SECONDS How long after last hearing from this switch, nodes should consider it dead SMOS_SERVER_NECRORK_INTRAY_USERNAME USERNAME Username SMOS_SERVER_NECRORK_INTRAY_KEY KEY Access key SMOS_SERVER_BOOKING_EMAIL_ADDRESS EMAIL_ADDRESS Email address to send booking emails from SMOS_SERVER_MONETISATION_STRIPE_SECRET_KEY SECRET_KEY The stripe api secret key SMOS_SERVER_MONETISATION_STRIPE_PUBLISHABLE_KEY PUBLISHABLE_KEY The stripe api publishable key SMOS_SERVER_MONETISATION_STRIPE_PRICE PRICE_ID The stripe price id SMOS_SERVER_MONETISATION_FREELOADERS USERNAME The usernames of users that will not have to pay, comma separated
Minimal severity of log messages default: Info examples: "Debug", "Info", "Warn", "Error" log-level: # or null def: LogLevel # The log level to use, options: # ["Debug","Info","Warn","Error"] <string> The file to store the server uuid in default: "smos-server-uuid.json" uuid-file: # or null <string> The file to store the server database in default: "smos-server-database.sqlite3" database-file: # or null <string> The file to store the JWT signing key in default: "smos-signing-key.json" signing-key-file: # or null <string> The port to serve web requests on default: 8000 port: # or null <integer> # 64 bit signed integer The maximum number of bytes that backups can take up per user default: [(14400s,4),(86400s,4),(604800s,7),(4838400s,8),(31536000s,12)] max-backups-per-user-per-period: # any of [ null , # Period period: # required # period, in seconds <number> max-backups: # required # maximum backups in this period <integer> # 64 bit unsigned integer , - # Period period: # required # period, in seconds <number> max-backups: # required # maximum backups in this period <integer> # 64 bit unsigned integer ] The maximum number of bytes that backups can take up per user max-backup-size-per-user: # or null <integer> # 64 bit unsigned integer enable the auto-backup looper auto-backup.enable: # or null <boolean> phase of the auto-backup looper in seconds default: 30s auto-backup.phase: # or null <number> period of the auto-backup looper in seconds default: 3600s auto-backup.period: # or null <number> enable the backup-garbage-collector looper backup-garbage-collector.enable: # or null <boolean> phase of the backup-garbage-collector looper in seconds default: 60s backup-garbage-collector.phase: # or null <number> period of the backup-garbage-collector looper in seconds default: 3600s backup-garbage-collector.period: # or null <number> enable the file-migrator looper file-migrator.enable: # or null <boolean> phase of the file-migrator looper in seconds default: 120s file-migrator.phase: # or null <number> period of the file-migrator looper in seconds default: 86400s file-migrator.period: # or null <number> The user that will have admin rights admin: # or null <string> Name of the necrork switch necrork.switch: # or null <string> Base url of the necrork server default: https://necrork.cs-syd.eu necrork.url: # or null <string> enable the notifier looper necrork.notifier.enable: # or null <boolean> phase of the notifier looper in seconds default: 0s necrork.notifier.phase: # or null <number> period of the notifier looper in seconds default: 300s necrork.notifier.period: # or null <number> How long after last hearing from this switch, nodes should consider it dead necrork.timeout: # or null <integer> # 32 bit unsigned integer Username necrork.intray.username: # or null <string> Access key necrork.intray.key: # or null <string> Email address to send booking emails from booking-email-address: # or null <string> The stripe api secret key monetisation.stripe-secret-key: # or null <string> The stripe api publishable key monetisation.stripe-publishable-key: # or null <string> The stripe price id monetisation.stripe-price: # or null <string> The usernames of users that will not have to pay, comma separated monetisation.freeloaders: # or null - <string>
Usage: smos-server [--config-file FILE_PATH] [--log-level LOG_LEVEL] [--uuid-file FILE_PATH] [--database-file FILE_PATH] [--signing-key-file FILE_PATH] [--port PORT] [--max-backup-size-per-user BYTES] [--(enable|disable)-auto-backup] [--auto-backup-phase SECONDS] [--auto-backup-period SECONDS] [--(enable|disable)-backup-garbage-collector] [--backup-garbage-collector-phase SECONDS] [--backup-garbage-collector-period SECONDS] [--(enable|disable)-file-migrator] [--file-migrator-phase SECONDS] [--file-migrator-period SECONDS] [--admin USERNAMES] [--necrork-switch SWITCH_NAME [--necrork-url URL] [--necrork-(enable|disable)-notifier] [--necrork-notifier-phase SECONDS] [--necrork-notifier-period SECONDS] [--necrork-timeout SECONDS] --necrork-intray-username USERNAME --necrork-intray-key KEY] [--booking-email-address EMAIL_ADDRESS] [--monetisation-stripe-secret-key SECRET_KEY --monetisation-stripe-publishable-key PUBLISHABLE_KEY --monetisation-stripe-price PRICE_ID --monetisation-freeloaders USERNAME] All settings: Show this help text switch: -h|--help Output version information switch: --version Path to the configuration file option: --config-file FILE_PATH env: SMOS_SERVER_CONFIG_FILE FILE_PATH Minimal severity of log messages option: --log-level LOG_LEVEL env: SMOS_SERVER_LOG_LEVEL LOG_LEVEL config: log-level: # or null def: LogLevel # The log level to use, options: # ["Debug","Info","Warn","Error"] <string> default: Info examples: "Debug", "Info", "Warn", "Error" The file to store the server uuid in option: --uuid-file FILE_PATH env: SMOS_SERVER_UUID_FILE FILE_PATH config: uuid-file: # or null <string> default: "smos-server-uuid.json" The file to store the server database in option: --database-file FILE_PATH env: SMOS_SERVER_DATABASE_FILE FILE_PATH config: database-file: # or null <string> default: "smos-server-database.sqlite3" The file to store the JWT signing key in option: --signing-key-file FILE_PATH env: SMOS_SERVER_SIGNING_KEY_FILE FILE_PATH config: signing-key-file: # or null <string> default: "smos-signing-key.json" The port to serve web requests on option: --port PORT env: SMOS_SERVER_PORT PORT config: port: # or null <integer> # 64 bit signed integer default: 8000 The maximum number of bytes that backups can take up per user config: max-backups-per-user-per-period: # any of [ null , # Period period: # required # period, in seconds <number> max-backups: # required # maximum backups in this period <integer> # 64 bit unsigned integer , - # Period period: # required # period, in seconds <number> max-backups: # required # maximum backups in this period <integer> # 64 bit unsigned integer ] default: [(14400s,4),(86400s,4),(604800s,7),(4838400s,8),(31536000s,12)] The maximum number of bytes that backups can take up per user option: --max-backup-size-per-user BYTES env: SMOS_SERVER_MAX_BACKUP_SIZE_PER_USER BYTES config: max-backup-size-per-user: # or null <integer> # 64 bit unsigned integer enable the auto-backup looper switch: --(enable|disable)-auto-backup env: SMOS_SERVER_AUTO_BACKUP_ENABLE BOOL config: auto-backup.enable: # or null <boolean> phase of the auto-backup looper in seconds option: --auto-backup-phase SECONDS env: SMOS_SERVER_AUTO_BACKUP_PHASE SECONDS config: auto-backup.phase: # or null <number> default: 30s period of the auto-backup looper in seconds option: --auto-backup-period SECONDS env: SMOS_SERVER_AUTO_BACKUP_PERIOD SECONDS config: auto-backup.period: # or null <number> default: 3600s enable the backup-garbage-collector looper switch: --(enable|disable)-backup-garbage-collector env: SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_ENABLE BOOL config: backup-garbage-collector.enable: # or null <boolean> phase of the backup-garbage-collector looper in seconds option: --backup-garbage-collector-phase SECONDS env: SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_PHASE SECONDS config: backup-garbage-collector.phase: # or null <number> default: 60s period of the backup-garbage-collector looper in seconds option: --backup-garbage-collector-period SECONDS env: SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_PERIOD SECONDS config: backup-garbage-collector.period: # or null <number> default: 3600s enable the file-migrator looper switch: --(enable|disable)-file-migrator env: SMOS_SERVER_FILE_MIGRATOR_ENABLE BOOL config: file-migrator.enable: # or null <boolean> phase of the file-migrator looper in seconds option: --file-migrator-phase SECONDS env: SMOS_SERVER_FILE_MIGRATOR_PHASE SECONDS config: file-migrator.phase: # or null <number> default: 120s period of the file-migrator looper in seconds option: --file-migrator-period SECONDS env: SMOS_SERVER_FILE_MIGRATOR_PERIOD SECONDS config: file-migrator.period: # or null <number> default: 86400s The user that will have admin rights option: --admin USERNAMES env: SMOS_SERVER_ADMIN USERNAMES config: admin: # or null <string> Name of the necrork switch option: --necrork-switch SWITCH_NAME env: SMOS_SERVER_NECRORK_SWITCH SWITCH_NAME config: necrork.switch: # or null <string> Base url of the necrork server option: --necrork-url URL env: SMOS_SERVER_NECRORK_URL URL config: necrork.url: # or null <string> default: https://necrork.cs-syd.eu enable the notifier looper switch: --necrork-(enable|disable)-notifier env: SMOS_SERVER_NECRORK_NOTIFIER_ENABLE BOOL config: necrork.notifier.enable: # or null <boolean> phase of the notifier looper in seconds option: --necrork-notifier-phase SECONDS env: SMOS_SERVER_NECRORK_NOTIFIER_PHASE SECONDS config: necrork.notifier.phase: # or null <number> default: 0s period of the notifier looper in seconds option: --necrork-notifier-period SECONDS env: SMOS_SERVER_NECRORK_NOTIFIER_PERIOD SECONDS config: necrork.notifier.period: # or null <number> default: 300s How long after last hearing from this switch, nodes should consider it dead option: --necrork-timeout SECONDS env: SMOS_SERVER_NECRORK_TIMEOUT SECONDS config: necrork.timeout: # or null <integer> # 32 bit unsigned integer Username option: --necrork-intray-username USERNAME env: SMOS_SERVER_NECRORK_INTRAY_USERNAME USERNAME config: necrork.intray.username: # or null <string> Access key option: --necrork-intray-key KEY env: SMOS_SERVER_NECRORK_INTRAY_KEY KEY config: necrork.intray.key: # or null <string> Email address to send booking emails from option: --booking-email-address EMAIL_ADDRESS env: SMOS_SERVER_BOOKING_EMAIL_ADDRESS EMAIL_ADDRESS config: booking-email-address: # or null <string> The stripe api secret key option: --monetisation-stripe-secret-key SECRET_KEY env: SMOS_SERVER_MONETISATION_STRIPE_SECRET_KEY SECRET_KEY config: monetisation.stripe-secret-key: # or null <string> The stripe api publishable key option: --monetisation-stripe-publishable-key PUBLISHABLE_KEY env: SMOS_SERVER_MONETISATION_STRIPE_PUBLISHABLE_KEY PUBLISHABLE_KEY config: monetisation.stripe-publishable-key: # or null <string> The stripe price id option: --monetisation-stripe-price PRICE_ID env: SMOS_SERVER_MONETISATION_STRIPE_PRICE PRICE_ID config: monetisation.stripe-price: # or null <string> The usernames of users that will not have to pay, comma separated option: --monetisation-freeloaders USERNAME env: SMOS_SERVER_MONETISATION_FREELOADERS USERNAME config: monetisation.freeloaders: # or null - <string> Options: -h|--help Show this help text --version Output version information --config-file Path to the configuration file --log-level Minimal severity of log messages default: Info examples: "Debug", "Info", "Warn", "Error" --uuid-file The file to store the server uuid in default: "smos-server-uuid.json" --database-file The file to store the server database in default: "smos-server-database.sqlite3" --signing-key-file The file to store the JWT signing key in default: "smos-signing-key.json" --port The port to serve web requests on default: 8000 --max-backup-size-per-user The maximum number of bytes that backups can take up per user --(enable|disable)-auto-backup enable the auto-backup looper --auto-backup-phase phase of the auto-backup looper in seconds default: 30s --auto-backup-period period of the auto-backup looper in seconds default: 3600s --(enable|disable)-backup-garbage-collector enable the backup-garbage-collector looper --backup-garbage-collector-phase phase of the backup-garbage-collector looper in seconds default: 60s --backup-garbage-collector-period period of the backup-garbage-collector looper in seconds default: 3600s --(enable|disable)-file-migrator enable the file-migrator looper --file-migrator-phase phase of the file-migrator looper in seconds default: 120s --file-migrator-period period of the file-migrator looper in seconds default: 86400s --admin The user that will have admin rights --necrork-switch Name of the necrork switch --necrork-url Base url of the necrork server default: https://necrork.cs-syd.eu --necrork-(enable|disable)-notifier enable the notifier looper --necrork-notifier-phase phase of the notifier looper in seconds default: 0s --necrork-notifier-period period of the notifier looper in seconds default: 300s --necrork-timeout How long after last hearing from this switch, nodes should consider it dead --necrork-intray-username Username --necrork-intray-key Access key --booking-email-address Email address to send booking emails from --monetisation-stripe-secret-key The stripe api secret key --monetisation-stripe-publishable-key The stripe api publishable key --monetisation-stripe-price The stripe price id --monetisation-freeloaders The usernames of users that will not have to pay, comma separated Environment Variables: SMOS_SERVER_CONFIG_FILE FILE_PATH Path to the configuration file SMOS_SERVER_LOG_LEVEL LOG_LEVEL Minimal severity of log messages default: Info examples: "Debug", "Info", "Warn", "Error" SMOS_SERVER_UUID_FILE FILE_PATH The file to store the server uuid in default: "smos-server-uuid.json" SMOS_SERVER_DATABASE_FILE FILE_PATH The file to store the server database in default: "smos-server-database.sqlite3" SMOS_SERVER_SIGNING_KEY_FILE FILE_PATH The file to store the JWT signing key in default: "smos-signing-key.json" SMOS_SERVER_PORT PORT The port to serve web requests on default: 8000 SMOS_SERVER_MAX_BACKUP_SIZE_PER_USER BYTES The maximum number of bytes that backups can take up per user SMOS_SERVER_AUTO_BACKUP_ENABLE BOOL enable the auto-backup looper SMOS_SERVER_AUTO_BACKUP_PHASE SECONDS phase of the auto-backup looper in seconds default: 30s SMOS_SERVER_AUTO_BACKUP_PERIOD SECONDS period of the auto-backup looper in seconds default: 3600s SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_ENABLE BOOL enable the backup-garbage-collector looper SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_PHASE SECONDS phase of the backup-garbage-collector looper in seconds default: 60s SMOS_SERVER_BACKUP_GARBAGE_COLLECTOR_PERIOD SECONDS period of the backup-garbage-collector looper in seconds default: 3600s SMOS_SERVER_FILE_MIGRATOR_ENABLE BOOL enable the file-migrator looper SMOS_SERVER_FILE_MIGRATOR_PHASE SECONDS phase of the file-migrator looper in seconds default: 120s SMOS_SERVER_FILE_MIGRATOR_PERIOD SECONDS period of the file-migrator looper in seconds default: 86400s SMOS_SERVER_ADMIN USERNAMES The user that will have admin rights SMOS_SERVER_NECRORK_SWITCH SWITCH_NAME Name of the necrork switch SMOS_SERVER_NECRORK_URL URL Base url of the necrork server default: https://necrork.cs-syd.eu SMOS_SERVER_NECRORK_NOTIFIER_ENABLE BOOL enable the notifier looper SMOS_SERVER_NECRORK_NOTIFIER_PHASE SECONDS phase of the notifier looper in seconds default: 0s SMOS_SERVER_NECRORK_NOTIFIER_PERIOD SECONDS period of the notifier looper in seconds default: 300s SMOS_SERVER_NECRORK_TIMEOUT SECONDS How long after last hearing from this switch, nodes should consider it dead SMOS_SERVER_NECRORK_INTRAY_USERNAME USERNAME Username SMOS_SERVER_NECRORK_INTRAY_KEY KEY Access key SMOS_SERVER_BOOKING_EMAIL_ADDRESS EMAIL_ADDRESS Email address to send booking emails from SMOS_SERVER_MONETISATION_STRIPE_SECRET_KEY SECRET_KEY The stripe api secret key SMOS_SERVER_MONETISATION_STRIPE_PUBLISHABLE_KEY PUBLISHABLE_KEY The stripe api publishable key SMOS_SERVER_MONETISATION_STRIPE_PRICE PRICE_ID The stripe price id SMOS_SERVER_MONETISATION_FREELOADERS USERNAME The usernames of users that will not have to pay, comma separated Configuration Values: Minimal severity of log messages default: Info examples: "Debug", "Info", "Warn", "Error" log-level: # or null def: LogLevel # The log level to use, options: # ["Debug","Info","Warn","Error"] <string> The file to store the server uuid in default: "smos-server-uuid.json" uuid-file: # or null <string> The file to store the server database in default: "smos-server-database.sqlite3" database-file: # or null <string> The file to store the JWT signing key in default: "smos-signing-key.json" signing-key-file: # or null <string> The port to serve web requests on default: 8000 port: # or null <integer> # 64 bit signed integer The maximum number of bytes that backups can take up per user default: [(14400s,4),(86400s,4),(604800s,7),(4838400s,8),(31536000s,12)] max-backups-per-user-per-period: # any of [ null , # Period period: # required # period, in seconds <number> max-backups: # required # maximum backups in this period <integer> # 64 bit unsigned integer , - # Period period: # required # period, in seconds <number> max-backups: # required # maximum backups in this period <integer> # 64 bit unsigned integer ] The maximum number of bytes that backups can take up per user max-backup-size-per-user: # or null <integer> # 64 bit unsigned integer enable the auto-backup looper auto-backup.enable: # or null <boolean> phase of the auto-backup looper in seconds default: 30s auto-backup.phase: # or null <number> period of the auto-backup looper in seconds default: 3600s auto-backup.period: # or null <number> enable the backup-garbage-collector looper backup-garbage-collector.enable: # or null <boolean> phase of the backup-garbage-collector looper in seconds default: 60s backup-garbage-collector.phase: # or null <number> period of the backup-garbage-collector looper in seconds default: 3600s backup-garbage-collector.period: # or null <number> enable the file-migrator looper file-migrator.enable: # or null <boolean> phase of the file-migrator looper in seconds default: 120s file-migrator.phase: # or null <number> period of the file-migrator looper in seconds default: 86400s file-migrator.period: # or null <number> The user that will have admin rights admin: # or null <string> Name of the necrork switch necrork.switch: # or null <string> Base url of the necrork server default: https://necrork.cs-syd.eu necrork.url: # or null <string> enable the notifier looper necrork.notifier.enable: # or null <boolean> phase of the notifier looper in seconds default: 0s necrork.notifier.phase: # or null <number> period of the notifier looper in seconds default: 300s necrork.notifier.period: # or null <number> How long after last hearing from this switch, nodes should consider it dead necrork.timeout: # or null <integer> # 32 bit unsigned integer Username necrork.intray.username: # or null <string> Access key necrork.intray.key: # or null <string> Email address to send booking emails from booking-email-address: # or null <string> The stripe api secret key monetisation.stripe-secret-key: # or null <string> The stripe api publishable key monetisation.stripe-publishable-key: # or null <string> The stripe price id monetisation.stripe-price: # or null <string> The usernames of users that will not have to pay, comma separated monetisation.freeloaders: # or null - <string>