Tutorial – Mastodon
Tutorial – Mastodon
The open and simple Mastodon API makes it easy to create applications to interact with this federated microblogging platform. Here are some of the clients that the community has come up with and how you can use them.
Last issue [1], I introduced the Fediverse [2] and, in particular, what is becoming the rising star in the federated universe: Mastodon [3]. Mastodon, a microblogging platform á la Twitter, is succeeding because it is simple to use, while at the same time packed with features. It comes with none of the shady shenanigans proprietary platforms inflict upon their users, and it looks slick, cool, and attractive.
Thanks to Mastodon's open and simple API, you can easily write scripts to interact with your account. This has led to a whole gaggle of web clients, desktop and mobile apps, and command-line tools for Mastodon.
Web Clients
To begin with, there is Mastodon's own default web interface. Your first interaction with Mastodon is probably going to be through this. It comes with a lot of features, so many that I dedicated a large chunk of last month's article to explaining all of Mastodon's ins and outs. That said, there are more web clients out there.
Halcyon [4] is one of them. Halcyon is good if you want to enjoy the simplicity of the good, old Twitter look and feel (Figure 1) – from back when Twitter actually looked good.
Then there is Mastodon Scheduler [5]. More than a web client for Mastodon, Mastodon Scheduler is a web application, one that lets you schedule toots to be posted at a later date. A word of warning, you cannot add attachments to posts submitted with Mastodon Scheduler.
For Mastodon Scheduler to work, you need to register a new application with your account. Log in to your Mastodon account, go to Settings | Development and click the New application button. Fill in the Application name text box with, say, Scheduler (although the name does not seem to matter all that much), and click SUBMIT at the bottom of the page. This will log your application with the federated network.
Now, if you click on your application's name, it will show a list of three keys at the top of the page. The key labeled Your access token is what you need to input in the Access token text box on the Mastodon Scheduler form.
Finally, Pinafore [6] is another web-based front end, which may not seem to add anything new until you try it on a mobile device (Figure 2). Then it makes sense: On a tall, narrow screen, it makes Mastodon much less intimidating than using the default web interface.
Mobile Apps
Then again, there are a lot of mobile apps that you can use to toot on Mastodon. Tusky [7], for example, is a good-looking, entry-level app. It allows you to manage several accounts simultaneously and post, boost, and draft toots. When you are browsing your timelines, you can swipe right or left and see another timeline, so you can swipe from your home, to notifications, to local, to the federated timeline, and then back again.
If you want something with more features, check out SubwayTooter [8]. Apart from allowing you to manage several accounts like Tusky, the array of options is impressive – tap the hamburger menu icon in the lower left-hand corner of the app to see them all. In addition to being able to swipe through multiple columns like in Tusky, you can display two columns at the same time when you hold your phone horizontally (Figure 3) and add new columns to the list.
To do this, say you want to add a column that shows all posts that contain the #linux hashtag. Tap the hamburger menu (bottom left), tap the search icon (a magnifying glass), and type in your search term. That in itself already creates a new column with all the search results. However, if you tap the first result containing the hashtagged term, it will create a new column with all the toots containing the hashtag.
At the bottom of the screen, you have a kind of map that shows you where you are in the list of columns and what columns you have on the right and left. Your home timeline is represented by a house icon, notifications are a speech bubble with an exclamation mark, the local timeline is an icon of a running man for some reason, and the federated timeline is a man on a bike.
You also have a column for liked toots (represented by a star icon) and a column for conversations with other users (two overlapping speech bubbles). A hashtag column is represented by a #, and a search is represented by a magnifying glass.
If you want to get rid of a column, just tap the X in the upper right-hand corner. You can reorder columns by tapping on the hamburger menu and selecting Columns list.
SubwayTooter's other interesting feature is the possibility to schedule your toots directly from within the app. This is something that is built into Mastodon's protocol (supposedly). Some servers do not support scheduled toots, and others seem a bit flaky. Either way, it's a great idea that I am looking forward to seeing implemented more universally in the Fediverse.
Precisely to avoid the kinks, Fedilab [9], an app I started talking about last issue [1], adds one more feature: scheduling from the device itself. When you write your toot, you can choose to schedule and then decide whether you'd prefer to schedule it on the server (which, as mentioned, may not work) or let the app take charge. In my experience, the latter is more reliable. Fedilab also allows you to swipe through columns and add new ones, just like SubwayTooter.
Desktop Applications
While there are plenty Mastodon clients for mobile phones, desktop clients are pretty thin on the ground. The only one that seems to work is Whalebird [10], an Electron-based application. In other words, it is basically a thinly veiled web app wrapped in a desktop interface (Figure 4).
The first time you run Whalebird, you give it your instance and your login details, and it will open your Mastodon instance in a web browser and ask you to authorize the application. Once you do that, it will give you an authorization code that you copy and paste into Whalebird.
Whalebird is pretty basic. Although it supports managing several accounts, it can only show one column at a time, and there are no scheduling features. It is quite pretty to look at, though.
The other tested clients did not run, did not compile, or did not contain the boasted hooks to Mastodon.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
New Steam Client Ups the Ante for Linux
The latest release from Steam has some pretty cool tricks up its sleeve.
-
Gnome OS Transitioning Toward a General-Purpose Distro
If you're looking for the perfectly vanilla take on the Gnome desktop, Gnome OS might be for you.
-
Fedora 41 Released with New Features
If you're a Fedora fan or just looking for a Linux distribution to help you migrate from Windows, Fedora 41 might be just the ticket.
-
AlmaLinux OS Kitten 10 Gives Power Users a Sneak Preview
If you're looking to kick the tires of AlmaLinux's upstream version, the developers have a purrfect solution.
-
Gnome 47.1 Released with a Few Fixes
The latest release of the Gnome desktop is all about fixing a few nagging issues and not about bringing new features into the mix.
-
System76 Unveils an Ampere-Powered Thelio Desktop
If you're looking for a new desktop system for developing autonomous driving and software-defined vehicle solutions. System76 has you covered.
-
VirtualBox 7.1.4 Includes Initial Support for Linux kernel 6.12
The latest version of VirtualBox has arrived and it not only adds initial support for kernel 6.12 but another feature that will make using the virtual machine tool much easier.
-
New Slimbook EVO with Raw AMD Ryzen Power
If you're looking for serious power in a 14" ultrabook that is powered by Linux, Slimbook has just the thing for you.
-
The Gnome Foundation Struggling to Stay Afloat
The foundation behind the Gnome desktop environment is having to go through some serious belt-tightening due to continued financial problems.
-
Thousands of Linux Servers Infected with Stealth Malware Since 2021
Perfctl is capable of remaining undetected, which makes it dangerous and hard to mitigate.