Title: Connect to Mastodon using HTTP 1.0 with Brutaldon | |
Author: Solène | |
Date: 09 November 2020 | |
Tags: openbsd mastodon | |
Description: | |
Today post is about | |
[Brutaldon](https://git.carcosa.net/jmcbray/brutaldon), a | |
Mastodon/Pleroma interface in old fashion HTML like in the web 1.0 | |
era. I will explain how it works and how to install it. Tested and | |
approved on an 16 years old powerpc laptop, using Mastodon with w3m | |
or dillo web browsers! | |
## Introduction | |
Brutaldon is a mastodon client running as a web server. This mean you | |
have to connect to a running brutaldon server, you can use a public | |
one like [Brutaldon.online](https://brutaldon.online) and then you | |
will have two ways to connect to your account: | |
1. using oauth which will redirect through a dedicated API page of | |
your mastodon instance and will give back a token once you logged | |
in properly, this is totally safe of use, but requires javascript | |
to be enabled to works due to the login page on the instance | |
2. there is "old login" method in which you have to provide your | |
instance address, your account login and password. This is not | |
really safe because the brutaldon instance will known about your | |
credentials, but you can use any web browser with that. There are | |
not much security issues if you use a local brutaldon instance | |
## How to install it | |
The installation is quite easy, I wish this could be as easy more | |
often. You need a python3 interpreter and `pipenv`. If you don't have | |
pipenv, you need `pip` to install `pipenv`. On OpenBSD this would | |
translates as: | |
$ pip3.8 install --user pipenv | |
Note that on some system, pip3.8 could be pip3, or pip. Due to the | |
coexistence of python2 and python3 for some time until we can get ride | |
of python2, most python related commands have a suffix to tell which | |
python version it uses. | |
**If you install pipenv with pip, the path will be | |
`~/.local/bin/pipenv`.** | |
Now, very easy to proceed! Clone the code, run pipenv to get the | |
dependencies, create a sqlite database and run the server. | |
$ git clone git://github.com/jfmcbrayer/brutaldon.git | |
$ cd brutaldon | |
$ pipenv install | |
$ pipenv run python ./manage.py migrate | |
$ pipenv run python ./manage.py runserver | |
And voilà! Your brutaldon instance is available on | |
[http://localhost:8000](http://localhost:8000), you only need to open | |
it on your web browser and log-in to your instance. | |
As explained in the `INSTALL.md` file of the project, this method | |
isn't suitable for a public deployment. The code is a Django webapp | |
and could be used with wsgi and a proper web server. This setup is | |
beyond the scope of this article. |