| -rw-r--r-- | .gitignore | 31L |
| -rw-r--r-- | README.md | 3L |
| -rw-r--r-- | dev-notes/devnotes | 20L |
| -rw-r--r-- | dev-notes/notes | 2L |
| -rw-r--r-- | dev-notes/ssh | 2L |
| -rw-r--r-- | docs/00-overview.md | 48L |
| -rw-r--r-- | docs/01-server-baseline-debian.md | 28L |
| -rw-r--r-- | docs/02-admin-access-and-ssh.md | 31L |
| -rw-r--r-- | docs/03-paths-files-and-state.md | 32L |
| -rw-r--r-- | docs/04-bootstrap-and-base-system.md | 27L |
| -rw-r--r-- | docs/05-tools-and-system-experience.md | 93L |
| -rw-r--r-- | docs/06-site-and-apache.md | 30L |
| -rw-r--r-- | docs/07-public-members-directory.md | 53L |
| -rw-r--r-- | docs/08-email.md | 152L |
| -rw-r--r-- | docs/09-terminal-entre.md | 41L |
| -rw-r--r-- | docs/10-user-provisioning-and-admin-ops.md | 53L |
| -rw-r--r-- | docs/11-daily-operations.md | 49L |
| -rw-r--r-- | docs/12-security-and-privacy.md | 25L |
| -rw-r--r-- | docs/13-troubleshooting.md | 52L |
| -rw-r--r-- | docs/14-smoke-tests-and-validation.md | 73L |
| -rw-r--r-- | docs/15-glossary-and-reference.md | 44L |
| -rw-r--r-- | docs/16-repair-users.md | 106L |
| -rw-r--r-- | docs/17-community-commands.md | 304L |
| -rw-r--r-- | docs/README.md | 48L |
| -rw-r--r-- | docs/admin.md | 587L |
| -rw-r--r-- | docs/diagrams/architecture.mmd | 21L |
| -rw-r--r-- | docs/diagrams/member-flow.mmd | 20L |
| -rw-r--r-- | docs/review-email-aliases-signoff.md | 93L |
| -rw-r--r-- | email/config/aliases.example | 7L |
| -rw-r--r-- | email/config/msmtprc.example | 20L |
| -rw-r--r-- | email/config/netrc.example | 6L |
| -rw-r--r-- | email/config/runv-member-mail.example.json | 15L |
| -rw-r--r-- | email/configure_mailgun.py | 322L |
| -rw-r--r-- | email/configure_msmtp.py | 33L |
| -rw-r--r-- | email/configure_msmtp_legacy.py | 487L |
| -rw-r--r-- | email/lib/__init__.py | 1L |
| -rw-r--r-- | email/lib/mailer.py | 226L |
| -rw-r--r-- | email/lib/mailgun_client.py | 291L |
| -rw-r--r-- | email/lib/templates.py | 44L |
| -rw-r--r-- | email/scripts/diagnose_msmtp.sh | 46L |
| -rw-r--r-- | email/scripts/netrc_password.py | 41L |
| -rw-r--r-- | email/scripts/send_test_mail.sh | 21L |
| -rw-r--r-- | email/templates/admin_error.txt | 9L |
| -rw-r--r-- | email/templates/admin_new_request.txt | 15L |
| -rw-r--r-- | email/templates/admin_user_created.txt | 10L |
| -rw-r--r-- | email/templates/admin_user_deleted.txt | 7L |
| -rw-r--r-- | email/templates/system_test.txt | 11L |
| -rw-r--r-- | email/templates/user_account_community_deactivated.txt | 10L |
| -rw-r--r-- | email/templates/user_account_created.txt | 27L |
| -rw-r--r-- | email/templates/user_account_removed.txt | 10L |
| -rw-r--r-- | email/templates/user_approved.txt | 12L |
| -rw-r--r-- | email/templates/user_quota_warning.txt | 12L |
| -rw-r--r-- | email/templates/user_rejected.txt | 13L |
| -rw-r--r-- | email/templates/user_request_received.txt | 13L |
| -rw-r--r-- | email/tests/test_mailgun_client.py | 86L |
| -rw-r--r-- | patches/patch_irc.py | 931L |
| -rw-r--r-- | patches/yetgg.py | 179L |
| -rw-r--r-- | scripts/admin/admin_guard.py | 52L |
| -rw-r--r-- | scripts/admin/create_runv_user.py | 2367L |
| -rw-r--r-- | scripts/admin/del-user.py | 839L |
| -rw-r--r-- | scripts/admin/discover_mail_stack.py | 174L |
| -rw-r--r-- | scripts/admin/inspect_postfix_mysql_aliases.py | 107L |
| -rw-r--r-- | scripts/admin/perm1.py | 128L |
| -rw-r--r-- | scripts/admin/remove_runv_jails.py | 146L |
| -rw-r--r-- | scripts/admin/repair_user.py | 304L |
| -rw-r--r-- | scripts/admin/runv_jail.py | 299L |
| -rw-r--r-- | scripts/admin/runv_landing_sync.py | 92L |
| -rw-r--r-- | scripts/admin/runv_mount.py | 82L |
| -rw-r--r-- | scripts/admin/setup_alt_protocols.py | 1351L |
| -rw-r--r-- | scripts/admin/setup_email_aliases.py | 246L |
| -rw-r--r-- | scripts/admin/skel.py | 411L |
| -rw-r--r-- | scripts/admin/smoke_test_email_aliases.py | 371L |
| -rw-r--r-- | scripts/admin/starthere.py | 725L |
| -rw-r--r-- | scripts/admin/sync_member_email_aliases.py | 49L |
| -rw-r--r-- | scripts/admin/update_user.py | 842L |
| -rw-r--r-- | scripts/doom/doom.py | 318L |
| -rw-r--r-- | site/build_directory.py | 142L |
| -rw-r--r-- | site/example-users.json | 38L |
| -rw-r--r-- | site/genlanding.py | 590L |
| -rw-r--r-- | site/news/publish_news.py | 546L |
| -rw-r--r-- | site/public/assets/app.js | 204L |
| -rw-r--r-- | site/public/assets/news-page.js | 65L |
| -rw-r--r-- | site/public/assets/style.css | 933L |
| -rw-r--r-- | site/public/data/members.json | 1L |
| -rw-r--r-- | site/public/faq/index.html | 129L |
| -rw-r--r-- | site/public/favicon.svg | 11L |
| -rw-r--r-- | site/public/index.html | 227L |
| -rw-r--r-- | site/public/junte-se/index.html | 96L |
| -rw-r--r-- | site/public/news/data/.gitkeep | 0B |
| -rw-r--r-- | site/public/news/data/news.json.example | 3L |
| -rw-r--r-- | site/public/news/index.html | 61L |
| -rw-r--r-- | site/public/robots.txt | 4L |
| -rw-r--r-- | site/public/sitemap.xml | 38L |
| -rw-r--r-- | site/public/wiki/contas-e-acesso.html | 107L |
| -rw-r--r-- | site/public/wiki/faq.html | 98L |
| -rw-r--r-- | site/public/wiki/index.html | 72L |
| -rw-r--r-- | site/public/wiki/privacidade-e-seguranca.html | 104L |
| -rw-r--r-- | site/public/wiki/punicoes-e-moderacao.html | 123L |
| -rw-r--r-- | site/public/wiki/regras-da-comunidade.html | 106L |
| -rw-r--r-- | site/public/wiki/visao-geral.html | 98L |
| -rw-r--r-- | site/wiki/01_index.txt | 28L |
| -rw-r--r-- | site/wiki/02_visao-geral.txt | 54L |
| -rw-r--r-- | site/wiki/03_contas-e-acesso.txt | 63L |
| -rw-r--r-- | site/wiki/04_regras-da-comunidade.txt | 61L |
| -rw-r--r-- | site/wiki/05_punicoes-e-moderacao.txt | 92L |
| -rw-r--r-- | site/wiki/06_privacidade-e-seguranca.txt | 63L |
| -rw-r--r-- | site/wiki/07_faq.txt | 49L |
| -rw-r--r-- | site/wiki/build_wiki.py | 278L |
| -rw-r--r-- | terminal/close_entre.py | 125L |
| -rw-r--r-- | terminal/closed_app.py | 37L |
| -rw-r--r-- | terminal/config.example.toml | 14L |
| -rw-r--r-- | terminal/data/.gitkeep | 0B |
| -rw-r--r-- | terminal/entre_app.py | 516L |
| -rw-r--r-- | terminal/entre_core.py | 556L |
| -rw-r--r-- | terminal/examples/sshd_match_entre.conf.sample | 19L |
| -rw-r--r-- | terminal/examples/sshd_match_entre_empty.conf.sample | 32L |
| -rw-r--r-- | terminal/gen_config_toml.py | 150L |
| -rw-r--r-- | terminal/scripts/install.sh | 6L |
| -rw-r--r-- | terminal/scripts/test_local.sh | 11L |
| -rw-r--r-- | terminal/scripts/test_mail.sh | 14L |
| -rw-r--r-- | terminal/setup_entre.py | 1013L |
| -rw-r--r-- | terminal/systemd/runv-entre-notify.path | 16L |
| -rw-r--r-- | terminal/systemd/runv-entre-notify.service | 15L |
| -rw-r--r-- | terminal/templates/admin_console_notice.txt | 1L |
| -rw-r--r-- | terminal/templates/admin_mail.txt | 25L |
| -rw-r--r-- | terminal/templates/confirm.txt | 15L |
| -rw-r--r-- | terminal/templates/goodbye.txt | 20L |
| -rw-r--r-- | terminal/templates/intro.txt | 18L |
| -rw-r--r-- | terminal/templates/warning_public_key.txt | 11L |
| -rw-r--r-- | tools/bin/chat | 39L |
| -rw-r--r-- | tools/bin/runv-admin-email-alias | 190L |
| -rw-r--r-- | tools/bin/runv-bulletin | 205L |
| -rw-r--r-- | tools/bin/runv-email-alias | 130L |
| -rw-r--r-- | tools/bin/runv-finger | 118L |
| -rw-r--r-- | tools/bin/runv-games | 45L |
| -rw-r--r-- | tools/bin/runv-help | 78L |
| -rw-r--r-- | tools/bin/runv-links | 26L |
| -rw-r--r-- | tools/bin/runv-profile | 181L |
| -rw-r--r-- | tools/bin/runv-status | 58L |
| -rw-r--r-- | tools/bin/runv-who | 139L |
| -rw-r--r-- | tools/bin/runvers | 43L |
| -rw-r--r-- | tools/lib/runv_community.py | 223L |
| -rw-r--r-- | tools/lib/runv_email_aliases.py | 496L |
| -rw-r--r-- | tools/lib/runv_mail_sync.py | 341L |
| -rw-r--r-- | tools/manifests/apt_packages.txt | 21L |
| -rw-r--r-- | tools/motd/60-runv | 107L |
| -rw-r--r-- | tools/setuptools/tools.txt | 9L |
| -rw-r--r-- | tools/skel/.bash_aliases | 7L |
| -rw-r--r-- | tools/skel/.plan | 1L |
| -rw-r--r-- | tools/skel/.project | 1L |
| -rw-r--r-- | tools/skel/.runv/profile.json | 7L |
| -rw-r--r-- | tools/skel/public_gemini/index.gmi | 5L |
| -rw-r--r-- | tools/skel/public_gopher/gophermap | 3L |
| -rw-r--r-- | tools/skel/public_html/index.html | 48L |
| -rw-r--r-- | tools/sshd/90-runv-jailed.conf | 7L |
| -rw-r--r-- | tools/sudoers/90-runv-pmurad-admin | 3L |
| -rw-r--r-- | tools/tools.py | 737L |