witchie/README.rst

197 lines
5.3 KiB
ReStructuredText
Raw Normal View History

2017-05-08 07:17:32 +00:00
============================
Toot - a Mastodon CLI client
============================
2017-04-12 15:23:50 +00:00
.. image:: https://raw.githubusercontent.com/ihabunek/toot/master/trumpet.png
Interact with Mastodon social network from the command line.
2017-04-12 15:23:50 +00:00
2017-04-16 13:07:27 +00:00
.. image:: https://img.shields.io/travis/ihabunek/toot.svg?maxAge=3600&style=flat-square
:target: https://travis-ci.org/ihabunek/toot
2017-04-12 15:23:50 +00:00
.. image:: https://img.shields.io/badge/author-%40ihabunek-blue.svg?maxAge=3600&style=flat-square
:target: https://mastodon.social/@ihabunek
2017-08-26 09:35:20 +00:00
.. image:: https://img.shields.io/github/license/ihabunek/toot.svg?maxAge=3600&style=flat-square
2017-04-12 15:23:50 +00:00
:target: https://opensource.org/licenses/MIT
.. image:: https://img.shields.io/pypi/v/toot.svg?maxAge=3600&style=flat-square
:target: https://pypi.python.org/pypi/toot
2017-04-12 14:42:04 +00:00
Installation
------------
2018-06-12 10:14:18 +00:00
Debian Buster
~~~~~~~~~~~~~
If you're running Debian Buster (testing), toot is available in the Debian
package repository.
.. code-block::
sudo apt install toot
2018-06-25 12:43:36 +00:00
Debian package is maintained by `Jonathan Carter <https://mastodon.xyz/@highvoltage>`_.
2018-06-12 10:14:18 +00:00
From APT package repository
~~~~~~~~~~~~~~~~~~~~~~~~~~~
This works for Debian, Ubuntu and derivatives.
The repo is signed with my `keybase.io <https://keybase.io/ihabunek>`_ key.
Add the `bezdomni.net` repository:
.. code-block::
echo "deb http://bezdomni.net/packages/ ./" | sudo tee /etc/apt/sources.list.d/bezdomni.list
curl https://keybase.io/ihabunek/pgp_keys.asc | sudo apt-key add -
Install the package:
2017-08-29 12:10:46 +00:00
.. code-block::
sudo apt update
sudo apt install python3-toot
2017-08-29 12:10:46 +00:00
From FreeBSD ports
~~~~~~~~~~~~~~~~~~
Install the package:
.. code-block::
2018-05-05 22:43:25 +00:00
pkg install py36-toot
Build and install from sources:
.. code-block::
cd /usr/ports/net-im/toot
make install
2018-06-12 10:46:05 +00:00
FreeBSD port is maintained by `Mateusz Piotrowski <https://mastodon.social/@mpts>`_
From Nixpkgs
~~~~~~~~~~~~
This works on NixOS or systems with the Nix package manager installed.
.. code-block::
nix-env -iA nixos.toot
2017-12-28 10:00:53 +00:00
From OpenBSD ports
~~~~~~~~~~~~~~~~~~
Install the package:
.. code-block::
pkg_add toot
Build and install from sources:
.. code-block::
cd /usr/ports/net/toot
make install
2018-06-12 10:46:05 +00:00
OpenBSD port is maintained by `Klemens Nanni <mailto:kl3@posteo.org>`_
2017-12-28 10:00:53 +00:00
From Python Package Index
~~~~~~~~~~~~~~~~~~~~~~~~~
2017-08-29 12:10:46 +00:00
Otherwise, install from PyPI using pip, preferably into a virtual environment:
2017-04-12 14:42:04 +00:00
.. code-block::
pip install toot
Usage
-----
2017-04-16 13:07:27 +00:00
Running ``toot`` displays a list of available commands.
Running ``toot <command> -h`` shows the documentation for the given command.
2017-04-19 12:47:30 +00:00
.. code-block::
$ toot
toot - a Mastodon CLI client
Authentication:
toot login Log into a mastodon instance using your browser (recommended)
toot login_cli Log in from the console, does NOT support two factor authentication
toot activate Switch between logged in accounts.
toot logout Log out, delete stored access keys
toot auth Show logged in accounts and instances
Read:
toot whoami Display logged in user details
toot whois Display account details
toot instance Display instance details
toot search Search for users or hashtags
toot timeline Show recent items in a timeline (home by default)
toot curses An experimental timeline app (doesn't work on Windows)
Post:
toot post Post a status text to your timeline
toot upload Upload an image or video file
toot delete Delete an existing status
Accounts:
toot follow Follow an account
toot unfollow Unfollow an account
toot mute Mute an account
toot unmute Unmute an account
toot block Block an account
toot unblock Unblock an account
2017-04-19 12:47:30 +00:00
To get help for each command run:
toot <command> --help
https://github.com/ihabunek/toot
2017-04-19 12:51:30 +00:00
It is possible to pipe status text into `toot post`, for example:
.. code-block::
echo "Text to post" | toot post
cat mypost.txt | toot post
2017-04-16 13:07:27 +00:00
Authentication
--------------
Before tooting, you need to login to a Mastodon instance.
2017-04-12 14:42:04 +00:00
.. code-block::
2017-04-13 11:52:28 +00:00
toot login
You will be redirected to your Mastodon instance to log in and authorize toot to access your account, and will be given an **authorization code** in return which you need to enter to log in.
If you don't use two factor authentication you can also log in directly from the command line:
.. code-block::
toot login_cli
2017-04-12 14:42:04 +00:00
You will be asked to chose an instance and enter your credentials.
2017-04-12 15:18:56 +00:00
The application and user access tokens will be saved in the configuration file located at ``~/.config/toot/instances/config.json``.
2017-04-12 15:18:56 +00:00
It's possible to be logged into **multiple accounts** at the same time. Just repeat the above process for another instance. You can see all logged in accounts by running ``toot auth``. The currently active account will have an **ACTIVE** flag next to it.
2017-04-12 15:18:56 +00:00
To switch accounts, use ``toot activate``. Alternatively, most commands accept a ``--using`` option which can be used to specify the account you wish to use just that one time.
2017-04-13 11:52:28 +00:00
Finally you can logout from an account by using ``toot logout``. This will remove the stored access tokens for that account.
2017-05-08 07:17:32 +00:00
License
-------
2017-11-19 20:49:31 +00:00
Copyright 2017 Ivan Habunek <ivan@habunek.com>
2017-05-08 07:17:32 +00:00
Licensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html