zephyr: Remove Zephyr mirroring support.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg
2025-09-12 13:32:21 -07:00
committed by Tim Abbott
parent fb13de4e10
commit 40a022dcc3
94 changed files with 121 additions and 2067 deletions

View File

@@ -1,99 +0,0 @@
{% extends "zerver/portico.html" %}
{% block title %}
<title>Zephyr mirroring information | Zulip</title>
{% endblock %}
{# Zephyr mirroring information page #}
{% block portico_content %}
<h1 style="margin-top:30px;">The Zephyr mirror script (not recommended)</h1>
<p>
Webathena is the easiest way to use Zulip. With Webathena, you don't need
to run any software in a screen session. Your Athena password never leaves
your computer and the only access that any Zulip computer ever receives is the
ability to send/receive zephyrs as you.
</p>
<p>
We recommend that you use Webathena instead of following these instructions.
Please only follow these instructions if you know that you want to run the zephyr
mirror script instead of using Webathena.
</p>
<h3 id="mirror">Running the Zephyr mirror script</h3>
<p>
On an Athena dialup
(<a href="https://linerva.mit.edu">linerva.mit.edu</a>,
<a href="https://athena.dialup.mit.edu">athena.dialup.mit.edu</a>,
etc.), run the Zephyr mirroring script inside a screen
session.
</p>
<p>
<strong>IMPORTANT: You must keep the Zephyr mirroring script
always running in a session with unexpired Kerberos
tickets.</strong> The script forwards personals you receive on
Zephyr to Zulip, and forwards messages you send in Zulip to
Zephyr. <strong>If it is not running, only other Zulip users
will receive messages you send from Zulip!</strong> The Zulip
web application will warn you if the Zephyr mirroring script is
not running.
</p>
<p>
If you already have BarnOwl running in screen/tmux somewhere,
you can just run:
</p>
<p><code>/mit/tabbott/zulip/zephyr_mirror.py</code></p>
<p>inside that screen session.</p>
<h4>Mirroring without a BarnOwl session</h4>
<p>
If you are not already running a screen/tmux for BarnOwl, you
can set up a screen session to run the Zephyr mirroring script by
running the following on a dialup such
as <a href="https://linerva.mit.edu">linerva.mit.edu</a>:
</p>
<ol>
<li><code>kinit -l7d && aklog</code></li>
<li>(Type your password to create 7-day renewable Kerberos tickets)</li>
<li>
<code>env ZEPHYR_SCREEN_CLIENT=/mit/tabbott/zulip/zephyr_mirror.py
SCREEN_SESSION_NAME=zulip athrun kchen owl-screen
</code>
</li>
</ol>
<p>
This will run the Zephyr mirroring script inside a screen
session, and use `/mit/kchen/bin/cont-renew-notify` to continually
renew your Kerberos tickets for up to a week; each week, it will
send you a Zephyr/Zulip letting you know that you need to renew
your tickets. To do so, log in to the server that you set up the
screen session on and use the following procedure:
</p>
<ol>
<li>
Run <code>screen -x zulip</code> to connect to the mirroring
screen session created above.
</li>
<li>The first time, you'll need to type <code>Ctrl-A c</code> to switch to a new terminal in your screen session.</li>
<li><code>kinit -l7d && aklog</code></li>
<li>(Type your password to renew your Kerberos tickets).</li>
</ol>
<p>
Don't run multiple copies of the Zephyr mirroring script;
doing so will result in messages you sent being forwarded to
Zephyr twice.
</p>
{% endblock %}

View File

@@ -1,79 +0,0 @@
{% extends "zerver/portico.html" %}
{% set entrypoint = "landing-page" %}
{% block title %}
<title>Zephyr for MIT | Zulip</title>
{% endblock %}
{% block customhead %}
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
{% endblock %}
{% block portico_content %}
{% include 'zerver/landing_nav.html' %}
<div class="portico-landing why-page">
<div class="hero small-hero">
<h1 class="center">Zulip for MIT Zephyr</h1>
</div>
<div class="main">
<div class="padded-content">
<div class="inner-content markdown">
<p>If you have an MIT Athena account, you can start using Zulip for Zephyr in a couple of minutes.</p>
<h2 id="first-time-setup">First time setup</h2>
<ol>
<li><p>Activate your account here: <a href="https://zephyr.zulipchat.com/register/">https://zephyr.zulipchat.com/register/</a></p></li>
<li><p>Log in to Zulip here: <a href="https://zephyr.zulipchat.com">https://zephyr.zulipchat.com</a></p></li>
<li><p>Follow the on-screen instructions for linking Zulip with Webathena</p></li>
<li><p>(Optional) Get the Zulip desktop and/or mobile apps here: <a href="https://zephyr.zulipchat.com/apps/">https://zephyr.zulipchat.com/apps/</a></p></li>
</ol>
<h2 id="youre-done">You're done!</h2>
<p>If you have any questions, please e-mail us at <a href="mailto:{{ support_email }}">{{ support_email }}</a></p>
<h2 id="if-you-want-to-automatically-transfer-your-existing-zephyr-subscriptions">If you want to automatically transfer your existing Zephyr subscriptions</h2>
<ol>
<li>
<p>
Get your Zulip API key from the Zulip "Settings" panel and put it in a file in your
Athena home directory called <code>~/Private/.zulip-api-key</code>.
</p>
</li>
<li>
<p>
Run the following command to copy over all of your subscriptions:<br />
<code>/mit/tabbott/zulip/zephyr_mirror.py --sync-subscriptions</code>
</p>
<p>
<strong>NOTE</strong>: Zulip supports several ways to control what messages you want to read
right now, but Zulip does not yet have a direct equivalent to BarnOwl filters.
If you have more subscriptions than you generally read, we recommend that you use
Zulip's "Mute" option to hide those subscriptions from your
home view that you less commonly read. You can still easily access those channels
from Zulip when you want to read them. You can control your subscriptions
and what's in your home view by clicking the gear in the upper right-hand corner
and then selecting "Channels".
</p>
</li>
</ol>
<h2 id="if-you-subscribe-to-any-encrypted-zephyr-classes">If you subscribe to any encrypted Zephyr classes</h2>
<p>
You can get set up to participate on an encrypted Zephyr class using Zulip by either:
</p>
<ol>
<li><p>E-mailing us at <a href="mailto:{{ support_email }}">{{ support_email }}</a> to get set up, or</p></li>
<li><p>Someone who is already set up to participate on that encrypted Zephyr class using Zulip can use Zulip to invite you</p></li>
</ol>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -170,24 +170,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1943053 -->
<div id="alert-popup-container">
<div id="popup_banners_wrapper" class="banner-wrapper alert-box">
<div class="alert alert_sidebar alert-error home-error-bar" id="zephyr-mirror-error">
<div class="exit"></div>
{# The below isn't tagged for translation
intentionally, because the feature is only used at
MIT. #}
<strong>Your Zephyr mirror is not working.</strong>
<span id="normal-zephyr-mirror-error-text">
We recommend that
you <a class="webathena_login">give Zulip the ability to mirror the messages for you via
Webathena</a>. If you'd prefer, you can instead
<a href="/zephyr-mirror/" target="_blank" rel="noopener noreferrer">run the
Zephyr mirror script yourself</a> in a screen
session.
</span>
<span id="desktop-zephyr-mirror-error-text" class="notdisplayed">
To fix this, you'll need to use the web interface.
</span>
</div>
<div class="alert alert_sidebar alert-error home-error-bar" id="home-error"></div>
<div class="alert alert_sidebar" id="request-progress-status-banner">
<div class="alert-zulip-logo">