Mastodon 微型博客新手指南

认识 Mastodon,这款像野火一样蔓延的开源 Twitter 替代品。
560 位读者喜欢这个。
Get started with open source, orange flames

Opensource.com

Twitter 的起步就像许多令人兴奋的科技项目一样。它发明并提供了一种独特的“微型博客”服务,一种交互式 RSS 源。Twitter 作为一家公司,对新想法持开放态度,并提供了许多功能。它逐渐成为现代网络使用中如此重要的一部分,以至于它大概觉得有必要将其全部收回。如今,Twitter 显然无法支持人们想要用它做的所有疯狂的事情,并且已经摆脱了他们曾经提供的许多功能,并且经常因同时缺乏监管和限制过多而受到批评。

因为它在现代网络中占有如此重要的地位,人们倾向于将 Twitter 视为“我们”拥有的东西。当然,有人认为,即使是封闭系统的用户最终也拥有它,至少在失去所有用户基本上会结束服务的情况下是这样。然而,事实仍然是,Twitter 是一种封闭源代码的通信方法,运行在原本开放的 HTTP 媒介上。

开源能解决这个技术和社会困境吗?

GNU Social 和 Mastodon

GNU Social 是一款用于公共和私人通信的社交通信软件。它是一个微型博客平台,任何个人或人群都可以运行自己的通信节点,也可以将这些节点相互连接以进行互通。它从字面意义和情感意义上都解决了所有权问题:代码是开源的 (AGPL),为所有人所有,并且节点本身非常多,用户可以货比三家,找到最适合他们的社区,或者启动个人节点。

每个节点都是独立运行和管理的,可以用作私有节点,也可以对其他用户开放,可以阻止用户或信息流,也可以接受信息流。控制权真正掌握在用户手中,但最终结果是一个真正的社交网络。

Mastodon 是 GNU Social 的一种实现,专注于良好、简洁的用户界面和自托管的低门槛。

并且它正在像野火一样蔓延,成为首屈一指的 Twitter 替代品。

它最好的地方在于,您可以将 Mastodon 和 Twitter 捆绑在一起,以方便您的过渡。

加入 Mastodon

Mastodon 的优势之一是它不仅仅只有一个 Mastodon。该项目本身拥有并运行 mastodon.social,但这只是更大网络中的一个节点。您可以加入任何正在接受新用户的 Mastodon 实例。instances.mastodon.xyz 上有一个正在运行的实例列表。

另一方面,如果您喜欢摆弄服务器,您也可以自由运行自己的实例。Mastodon 是开源的,因此(毫不奇怪)开发人员贡献了几种设置方法。您可以将其作为软件包在您的服务器上运行,或者作为 Docker 镜像运行,甚至可以尝试作为 Heroku 服务运行。

注册现有实例很容易。提供一个可用的电子邮件地址用于帐户验证,并设置您想要的密码。验证您的电子邮件地址后,像登录任何其他网站一样登录,使用您的电子邮件地址作为您的登录名和您的密码。登录后,您还可以设置双因素身份验证。

使用 Mastodon

默认的 Mastodon Web 界面比 Twitter 稍微复杂一些,但不会超过 TweetDeck 等。当然,您可以使用其他界面与 Mastodon 交互,包括 移动应用程序 或自定义 Atom 源或使用 Mastodon 丰富 API 的自定义 Web 应用程序。但是,由于每个人都从 Web UI 开始,因此最好先了解一下它,以适应 Mastodon 的功能。

mastodon_basic.jpg

Mastodon Web 界面截图。CC-0。

Web UI 由四列组成。左侧列是您的主控制面板。最重要的是,它包含您的用户名和头像,以及一个供您输入文本的文本字段。在 Mastodon 中,您发布的任何内容都称为“toot”(就像汽车喇叭,或者可能是史前乳齿象发出的声音?)。

左侧列的顶部还有几个选项卡:入门、本地时间线、联合时间线、偏好设置和注销。这几乎是您需要知道的所有内容,以便浏览界面。以下是每个选项卡的作用

入门

“入门”视图是您当前的默认视图。它将所有其他列恢复为默认视图。将其视为您的主页按钮。

本地时间线

本地时间线包含同一 Mastodon 服务器上任何非阻止和非静音用户的所有帖子。这与 Twitter 不同,因为 Twitter 没有本地实例。使用 Mastodon,您可以在一个节点上形成用户社区。

联合时间线

联合时间线是所有节点上发生的所有公共帖子的信息流。这是 Mastodon 活动中最像 Twitter 的视图,因为它打破了节点的概念,并显示了全球网络上发生的一切。

偏好设置

用户有几个选项可以与其他 Mastodon 用户互动,这些设置在“偏好设置”面板中。

mastodon_pref.jpg

Mastodon 偏好设置。CC-0。

您可以将您的帖子设置为私有,或仅发送给您的关注者。您还可以配置双因素身份验证、编辑您的个人资料、更改您的密码、添加“应用程序”,以便您可以通过其 API 与 Mastodon 交互、配置电子邮件通知等等。

信息流狂潮

这需要吸收很多内容,但最简单的入门方法是只需单击“联合时间线”选项卡,并在第四列中观看所有兴奋的 Mastodon 用户向您发布他们的随机想法。

mastodon_feed.jpg

联合信息流。CC-0。

与其他用户互动是直观的。您可以回复他们的帖子,您可以转发您喜欢的帖子,您可以关注用户,以便他们的帖子出现在您的个人信息流中,位于第二列。

第三列包含通知。当其他用户与您互动时,您将在第三列中看到。

总结

  • 第 1 列是您的指挥中心。
  • 第 2 列是您的个人信息流。
  • 第 3 列包含通知。
  • 第 4 列显示您的本地或联合时间线。

这就是 Mastodon。

使用 Python3 将 Mastodon 连接到 Twitter

社交网络同样依赖于“社交”部分和“网络”部分。Mastodon 在这两方面都有健康的表现。

该技术稳定可靠,因此网络连接良好,自从获得一些备受瞩目的媒体报道以来,用户数量大幅增加。但是,您在 Twitter 上认识的并非所有人可能都已迁移到 Mastodon,因此您可能希望您的帖子也出现在您的 Twitter 信息流中。您不想手动执行此操作。

您可以使用一个名为 MastodonToTwitter 的工具将 Mastodon 和 Twitter 交叉发布。它是一个 Python 3 脚本,通过各自的 API 与 Twitter 和 Mastodon 交互。在 Twitter 方面,它需要进行一些设置,因为在您的帐户上允许 Twitter API 交互是选择加入的。

首先,您需要加入 dev.twitter.com 以获得消费者密钥和访问令牌,每个密钥和令牌都允许您使用外部脚本来控制 Twitter。

在 dev.twitter.com 上创建一个帐户后,导航到 我的应用程序 并单击 创建新应用程序 按钮。

mastodon_app.jpg

创建新应用程序。CC-0。

创建一个新应用程序并不像听起来那么可怕。在这种情况下,“应用程序”实际上只是获取登录令牌的一种机制。随意命名您的应用程序,提供虚假的描述和虚假的网站。将回调字段留空。

mastodon_create.jpg

您可以逐字使用这些设置。CC-0。

创建应用程序后,您将被带到应用程序的概述页面。虽然这确实提供了您的消费者密钥,但您还需要几个其他部分才能启用 API 访问。单击“消费者密钥(API 密钥)”行旁边的 管理密钥和访问令牌 链接。

mastodon_overview.jpg

应用程序概述。CC-0。

在“应用程序设置”屏幕上,单击 创建我的访问令牌 按钮。这将生成您的访问令牌,并将您需要的所有信息显示在一个位置。

mastodon_keys.jpg

保密,安全。CC-0。

请妥善保管这些密钥,因为它们允许在没有用户名和密码等信息的情况下访问您的帐户。不要与他人分享,不要截取它们的屏幕截图并将其发布到网上。

运行 MastodonToTwitter.py

要运行 MastodonToTwitter,您必须安装其依赖项:pip3、python-twitter 和 Mastodon.py。要在 Fedora 或类似的 Linux 发行版上获取这些依赖项

$ sudo dnf install python3-pip
$ sudo python3 -m pip install twitter-python Mastodon.py

然后从 GitHub 下载 MastodonToTwitter。

$ git clone https://github.com/halcy/MastodonToTwitter.git MastodonToTwitter.clone

将目录更改为 MastodonToTwitter.clone,并使用 Python3 运行脚本

$ python3 ./MastodonToTwitter.py

该脚本具有首次运行设置模式,如果找不到配置文件,则会自动启动,因此只需按照提示操作即可。

对于 Twitter,将有四个提示:每个提示对应于您从创建 Twitter 应用程序中获得的密钥。只需粘贴密钥代码,与 Twitter 提供给您的一模一样。

对于 Mastodon,您只需要您的注册电子邮件地址和密码。

完成所有设置步骤后,MastodonToTwitter 将以非交互方式运行,静默监听 Twitter 和 Mastodon 的任何活动。在 Mastodon 上发布一些内容,您将看到它被 MastodonToTwitter 检测到,然后在大约 30 秒内,相同的帖子会作为 Twitter 帖子弹出。反过来也是如此。

如何运行 MastodonToTwitter 取决于您。您可以随时手动运行它以进行交叉发布,也可以将其设置为 cron 作业,使其每隔一两个小时运行一次。如果您是非常活跃的 Twitter 用户,您甚至可以在服务器上将其作为守护程序运行(低功耗的 Raspberry Pi 服务器非常容易设置),以便它可以立即同步您的帐户。

加入联邦

独立和自由网络的未来在于联邦:由真实的人和值得信赖的社区管理的独立节点,所有这些节点都汇入更大的融合体。GNU 项目、MediaGoblin、Mastodon、GNUnet 和许多其他项目正在努力实现这一目标。

与其抱怨被您的互联网企业赞助商虐待,不如加入联邦?柯克船长加入了,事情对他来说进展顺利。试用一下 Mastodon!

Seth Kenlon
Seth Kenlon 是一位 UNIX 极客、自由文化倡导者、独立多媒体艺术家和 D&D 爱好者。他曾在电影和计算机行业工作,通常同时从事这两个行业。

9 条评论

您好,
联邦又多了一名战士 https://mastodonfrance.com

加油伙计们,启动您自己的实例真的很快很简单。

可能值得一提的是,您可以通过在 toot 中提及 Mastodon 的另一个用户来 ping 他们,语法如下:@seth@anticapitalist.party

其中 @seth 是用户名,@anticapitalist.party 是他们拥有帐户的实例(或节点或服务器)。

或者,此语法:http://anticapitalist.party/@seth

有人知道如果您通过特定实例注册,而该实例暂时关闭或该实例的维护者决定永久将其关闭会发生什么吗?

我实际上也想知道同样的事情。我喜欢这个想法,但这是一个非常现实的问题。猜猜我们会发现的

回复 作者 Leon Palmer (未验证)

Twitter 用户在 Twitter 暂时或永久关闭时发生的事情相同,但至少对于联邦(GNU Social、Mastodon 等),网络的其余部分不会随之关闭,就像电子邮件网络在 GMail 关闭时不会暂时或永久关闭一样。

托管您自己的实例是避免依赖他人服务器的一种方法,但在一段时间内(如果不是永远),有些人就是无法托管我们自己的实例(因为缺乏服务器端技能或托管费用)。努力使每个用户的身份在实例之间可移植是当务之急,包括他们的社交关系图(关注者、被关注者)和帖子历史记录。理想情况下,身份不仅可以跨实例移植,而且可以跨运行该实例的任何联邦应用程序移植。

回复 作者 Leon Palmer (未验证)

正如 Strypey 所说,是的,如果您使用的实例消失了,那么您的用户帐户也会消失。这是现代 Web 服务的现实,可能也是许多人选择使用数百万美元的提供商的原因;大概,它们永远不会消失(不是真的,但这是人们的看法,而且在实践中,似乎确实存在一种趋势,如果互联网的某个角落失败了,某个更大的实体会将其收购)。

在独立网络上,您有不同的方法来降低这种风险。

1) 首先,您可以导出您的数据。Mastodon 允许通过其 Web UI 和其 API 执行此操作。因此,如果您非常担心丢失过去的 toot 或您的朋友列表等等,您可以定期导出数据,甚至可以通过 API 编写脚本。

2) 或者,您可以运行自己的实例,或与一些您信任的可靠人群合作并运行合作实例。

3) 到目前为止提出的许多实例也有 Patreon 帐户,因此如果您想帮助确保实例持续存在,请向其捐款。了解管理员。在您的 Web 使用中发挥积极作用!消费者文化倾向于吞噬自身,因此将此视为成为您使用的系统一部分的机会。

很多选择!

回复 作者 Leon Palmer (未验证)

我想设置一个服务器。是否有关于执行维护任务的分步说明,例如升级到最新版本?

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.