summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVineet Kumar <git@vineetk.net>2026-05-09 10:23:15 -0400
committerVineet Kumar <git@vineetk.net>2026-05-09 10:23:15 -0400
commitfed5ce67f4e9dab2250aa322096a183bd186762f (patch)
tree9064fc4951243a09303349c29d1a43a2d95a0949
parentf51db9da12b9f1ce486118b9d7c2129c9223a6ea (diff)
saklas vps: temporarily remove non-essential services
for installation. the config needs to be synced with the dedi's config after installation anyways.
-rw-r--r--epistemia/systems/saklas.scm216
1 files changed, 1 insertions, 215 deletions
diff --git a/epistemia/systems/saklas.scm b/epistemia/systems/saklas.scm
index c6c46dd..f862d39 100644
--- a/epistemia/systems/saklas.scm
+++ b/epistemia/systems/saklas.scm
@@ -393,221 +393,7 @@ server:
393rpz: 393rpz:
394 name: \"hagezi.ultimate\" 394 name: \"hagezi.ultimate\"
395 zonefile: \"hagezi.ultimate\" 395 zonefile: \"hagezi.ultimate\"
396 url: https://raw.githubusercontent.com/hagezi/dns-blocklists/main/rpz/ultimate.txt"))) 396 url: https://raw.githubusercontent.com/hagezi/dns-blocklists/main/rpz/ultimate.txt"))))
397 (simple-service 'rtorrent
398 shepherd-root-service-type
399 (list
400 (shepherd-service
401 (provision '(rtorrent))
402 (requirement '(user-processes loopback syslogd))
403 (start #~(make-forkexec-constructor
404 (list #$(file-append rtorrent-xmlrpc "/bin/rtorrent")
405 "-n"
406 "-b" "157.180.125.215"
407 "-p" "51413-51413"
408 "-d" "/data/torrents/complete/other"
409 "-s" "/data/torrents/rtorrent"
410 "-o" (string-append "system.umask.set=0002,"
411 "dht.mode.set=disable,"
412 "protocol.pex.set=no,"
413 "network.scgi.open_port=10.0.13.1:5000,"
414 "system.daemon.set=true"))
415 #:user "torrents" #:group "torrents"))
416 (stop #~(make-kill-destructor))
417 (documentation "Run rtorrent in headless mode (only xmlrpc)."))))
418 (service wireguard-service-type
419 (wireguard-configuration
420 (interface "wg1")
421 (addresses '("10.0.13.1/24" "fd00:b0ba:cafe:babe::1/64 "))
422 (port 51820)
423 (bootstrap-private-key? #f)
424 (private-key "/run/secrets/wg1_saklas")
425 (peers
426 (list
427 (wireguard-peer
428 (name "demiurge.epistemia")
429 (public-key "FMLvbSxY6vA8CRV4S1vl4+pMeCr/kR9n0G5w9buNqh4=")
430 (allowed-ips '("10.0.13.2/32" "fd00:b0ba:cafe:babe::2/128"))
431 (keep-alive 25))
432 (wireguard-peer
433 (name "hastur.epistemia")
434 (public-key "1ketYziRhoUmpbrj/60O5DYbcPacvmEoFQqa/NntSnc=")
435 (allowed-ips '("10.0.13.3/32" "fd00:b0ba:cafe:babe::3/128"))
436 (keep-alive 25))
437 (wireguard-peer
438 (name "iphonebob.epistemia")
439 (public-key "Xn0EmeRZdpMejBgzr98mYtb/2f5O58GAzQLNZV/SS30=")
440 (allowed-ips '("10.0.13.4/32" "fd00:b0ba:cafe:babe::4/128"))
441 (keep-alive 25))
442 (wireguard-peer
443 (name "lab.epistemia")
444 (public-key "iMDEwvXjPAlQH8ZCmP63FM5ICYIFIX5XIyGxjnXoNVE=")
445 (allowed-ips '("10.0.13.5/32" "fd00:b0ba:cafe:babe::5/128"))
446 (keep-alive 25))))))
447 (service certbot-service-type
448 (certbot-configuration
449 (email "postmaster@vineetk.net")
450 (certificates
451 (list
452 (certificate-configuration
453 (deploy-hook (program-file
454 "import-prosody-certs"
455 #~(begin
456 (let ((prosodyctl (string-append #$prosody "/bin/prosodyctl")))
457 (system* prosodyctl "--root" "cert" "import" "/etc/certs")))))
458 (domains '("vineetk.net"
459 "git.vineetk.net"
460 "mail.vineetk.net"
461 "u.vineetk.net"
462 "xmpp.vineetk.net"
463 )))
464 (certificate-configuration
465 (domains '("13f0.net"
466 "m.13f0.net"
467 ;"snac.13f0.net"
468 )))
469 (certificate-configuration
470 (domains '("vinbiz.ca")))))))
471 (service nginx-service-type
472 (nginx-configuration
473 (server-blocks
474 (list (nginx-server-configuration
475 (server-name '("vineetk.net"))
476 (listen '("443 ssl"))
477 (ssl-certificate "/etc/certs/vineetk.net/fullchain.pem")
478 (ssl-certificate-key "/etc/certs/vineetk.net/privkey.pem")
479 (root "/var/www/site_vineetk")
480 (raw-content (list "include " %nginx-badboi ";")))
481 (nginx-server-configuration
482 (server-name '("13f0.net"))
483 (listen '("443 ssl"))
484 (ssl-certificate "/etc/certs/13f0.net/fullchain.pem")
485 (ssl-certificate-key "/etc/certs/13f0.net/privkey.pem")
486 (root "/var/www/site_13f0")
487 (raw-content (list "include " %nginx-badboi ";")))
488 (nginx-server-configuration
489 (server-name '("vinbiz.ca"))
490 (listen '("443 ssl"))
491 (ssl-certificate "/etc/certs/vinbiz.ca/fullchain.pem")
492 (ssl-certificate-key "/etc/certs/vinbiz.ca/privkey.pem")
493 (root "/var/www/site_vinbiz")
494 (raw-content (list "include " %nginx-badboi ";")))))))
495 ;; git folder needs to be readable by nginx/cgit, gets reset to 700 on reconfigure otherwise
496 (simple-service 'git-home-permissions
497 activation-service-type
498 #~(when (file-exists? "/data/src/bare")
499 (chmod "/data/src/bare" #o755)))
500 (service cgit-service-type
501 (cgit-configuration
502 (enable-index-links? #t)
503 (enable-log-filecount? #t)
504 (enable-log-linecount? #t)
505 (enable-git-config? #t)
506 (remove-suffix? #t)
507 (root-desc "")
508 (root-title "Vineet's git repos")
509 (repository-directory "/data/src/bare")
510 (section-from-path 1)
511 (side-by-side-diffs? #t)
512 (nginx
513 (list
514 (nginx-server-configuration
515 (server-name '("git.vineetk.net"))
516 (listen '("443 ssl"))
517 (root cgit)
518 (try-files (list "$uri" "@cgit"))
519 (ssl-certificate "/etc/certs/vineetk.net/fullchain.pem")
520 (ssl-certificate-key "/etc/certs/vineetk.net/privkey.pem")
521 (raw-content (list "include" %nginx-badboi ";"))
522 (locations
523 (list
524 (nginx-location-configuration
525 (uri "@cgit")
526 (body '("fastcgi_param SCRIPT_FILENAME $document_root/lib/cgit/cgit.cgi;"
527 "fastcgi_param PATH_INFO $uri;"
528 "fastcgi_param QUERY_STRING $args;"
529 "fastcgi_param HTTP_HOST $server_name;"
530 "fastcgi_pass 127.0.0.1:9000;"))))))))))
531 (service prosody-service-type
532 (prosody-configuration
533 (admins '("vin@vineetk.net"))
534 (allow-registration? #f)
535 (c2s-require-encryption? #t)
536 (s2s-require-encryption? #t)
537 (s2s-secure-auth? #t)
538 (authentication "internal_hashed")
539 (plugin-paths (list prosody-cloud-notify))
540 (modules-enabled
541 ;; list from https://github.com/monal-im/Monal/wiki/Considerations-for-XMPP-server-admins#prosody
542 (cons* "sasl_ssdp"
543 ;; TODO update prosody to 13
544 ;; "sasl2"
545 ;; "sasl2_bind2"
546 ;; "sasl2_sm"
547 ;; "sasl2_fast"
548 "muc_notifications"
549 "smacks"
550 "mam"
551 "csi_simple"
552 "cloud_notify"
553 "bookmarks"
554 %default-modules-enabled))
555 ;; I don't want my syslog flooded. can't control changes either in service yet
556 (log "/var/lib/prosody/prosody.log")
557 (virtualhosts
558 (list
559 (virtualhost-configuration
560 (domain "vineetk.net"))))))
561 (service opensmtpd-service-type
562 (opensmtpd-configuration
563 (config-file %opensmtpd-config)))
564 (service dovecot-service-type
565 (dovecot-configuration
566 (listen '("*" "::"))
567 (mail-location "maildir:/var/vmail/%d/%n")
568 (mail-uid "vmail")
569 (mail-gid "vmail")
570 (ssl? "required")
571 (ssl-cert "</etc/certs/vineetk.net/fullchain.pem")
572 (ssl-key "</etc/certs/vineetk.net/privkey.pem")
573 (namespaces
574 (list (namespace-configuration
575 (name "inbox")
576 (inbox? #t)
577 (location "")
578 (prefix "")
579 (mailboxes
580 (list (mailbox-configuration
581 (name "Drafts")
582 (special-use '("\\Drafts")))
583 (mailbox-configuration
584 (name "Junk")
585 (special-use '("\\Junk")))
586 (mailbox-configuration
587 (name "Sent")
588 (special-use '("\\Sent")))
589 (mailbox-configuration
590 (name "Trash")
591 (special-use '("\\Trash"))))))))
592 (passdbs
593 (list (passdb-configuration
594 (driver "passwd-file")
595 (args '("scheme=CRYPT" "username_format=%u" "/run/secrets/saklas_smtpd_passwd")))))
596 (userdbs
597 (list (userdb-configuration
598 (driver "static")
599 (args '("uid=vmail" "gid=vmail" "home=/var/vmail/%d/%n")))))
600 (protocols
601 (list (protocol-configuration (name "imap"))
602 (protocol-configuration (name "lmtp"))))
603 (services
604 (list (service-configuration
605 (kind "lmtp")
606 (listeners
607 (list (unix-listener-configuration
608 (path "lmtp")
609 (group "vmail")
610 (user "vmail"))))))))))
611 %base-services) 397 %base-services)
612 (guix-service-type config => 398 (guix-service-type config =>
613 (guix-configuration 399 (guix-configuration