44 lines
1.1 KiB
Desktop File
44 lines
1.1 KiB
Desktop File
[Unit]
|
|
Description=C Nostr Relay Server (Event-Based Configuration)
|
|
Documentation=https://github.com/your-repo/c-relay
|
|
After=network.target
|
|
Wants=network-online.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=c-relay
|
|
Group=c-relay
|
|
WorkingDirectory=/opt/c-relay
|
|
Environment=DEBUG_LEVEL=0
|
|
ExecStart=/opt/c-relay/c_relay_x86 --debug-level=$DEBUG_LEVEL
|
|
Restart=always
|
|
RestartSec=5
|
|
StandardOutput=journal
|
|
StandardError=journal
|
|
SyslogIdentifier=c-relay
|
|
|
|
# Security settings
|
|
NoNewPrivileges=true
|
|
ProtectSystem=strict
|
|
ProtectHome=true
|
|
ReadWritePaths=/opt/c-relay
|
|
PrivateTmp=true
|
|
ProtectKernelTunables=true
|
|
ProtectKernelModules=true
|
|
ProtectControlGroups=true
|
|
|
|
# Network security
|
|
PrivateNetwork=false
|
|
RestrictAddressFamilies=AF_INET AF_INET6
|
|
|
|
# Resource limits
|
|
LimitNOFILE=65536
|
|
LimitNPROC=4096
|
|
|
|
# Event-based configuration system
|
|
# No environment variables needed - all configuration is stored as Nostr events
|
|
# Database files (<relay_pubkey>.nrdb) are created automatically in WorkingDirectory
|
|
# Admin keys are generated and displayed only during first startup
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target |