Most modern-looking, encrypted and functional in-console onion chat that you control!
Project description
🐲 dragonion
Most modern-looking, encrypted and functional in-console onion chat that you control!!
📜 Table of Contents
📝 Note
dragonion IS NOT a chat for everyday use. It is specific application focused on privacy and safety. It can contain functions, that you won't like or don't contain some functions you would like to have in regular chat application. You need to set up [dragonion-server] by yourself or using existing server, hosted by your guild/organisation. We don't provide any official servers.
🛣️ Usage plan
- Check [📜 Table of Contents] (optionally)
- Read [📝 Note]
- Read [🛣️ Usage guide]
- Go to [⚙️ Configuration guide], choose your platform, navigate to opted installation method (they are arranged from most to least recommended)
- Make sure you have access to an up-to-date service provided by an administrator or friends, or run your own personal service using the [dragonion-server]
- Install pre-requirements, install app, run it, checking [💻 Usage guide] if needed
💻 Usage guide
To use dragonion-server, you need to install it first. To do this, you can visit [Configuration guide].
If you have questions that are not described in the documentation, you can chat with [AI based on this repository]
dragonion is textual application. It means, that it works entirely in the terminal, while having a modern design and user experience that does not differ from ordinary applications.
When using the application, you will come across terms such as services and rooms.
- Services from the user's point of view is a pair of id-key or .auth file that you received from the administrator of your organization/guild or your friends.
- The so-called rooms are sections of the service that separate users and make their communication private by protecting the rooms with a password. Rooms do not have a "correct" or "incorrect" password. Rooms with the same name and password - the same room, rooms with the same name but different password - different rooms (similarly with other situations, to get into one room with the interlocutors - everyone must enter the same name-password combination)
Let's say that you have a friend who suggested you connect via encrypted dragonion chat. In this case, friend most likely provided you with either two strings (service id and auth string) or an .auth file. Below, we will figure out what to do in each of these situations.
If not, you will most likely have to start the server yourself. It doesn't require any special programming or computer skills, but it can be a little more difficult than starting a chat. Check [dragonion-server] page to get more information about starting your own dragonion service.
After you have received the options for authentication, you need to install dragonion. To do this, you can use the [🔧 Configuration guide] or ask a question to [AI], specifying your platform and choosing the appropriate installation method for yourself.
With the program installed, you can proceed to launch and authenticate. If you have an .auth file, you need to copy it to the working directory of the program or run dragonion from the directory that contains this file. If there are authentication strings, you just need to save them for yourself and paste them into the appropriate fields at startup.
Start app using dragonion
command or running executable, you will see user-friendly
interface. Remember, that if you do not understand any part of the interface,
you can always ask [AI] for help.
dragonion also has cli options to automate startup.
--auth
or-a
specifies service name. Ifservice_name.auth
file exists in working directory, first screen with entering auth data will be skipped.--username
or-u
used to specify username to skip second screen of launch.--connect
or-c
to start connecting right after application launch and entering user and auth information.--dev-proxy-port
is used for development and specifies local proxy port through which the dragonion will connect to the torus to skip the step of starting the internal proxy.
Use /connect
and /join room password
commands to manage connection. Also, you
can get in-application help using /help
command in chat input. If something is
unclear, use [AI] to figure out
what to do in this situation.
🔧 Configuration guide
You can use [pipx] to install dragonion:
pipx install dragonion
Or download pre-built executable:
If you are missing something, you use non-x64 (ARM) or Android system or just want to have more installation options, consider checking sections below.
Windows
Windows guide
There are several different ways to install the program available, they are arranged from the most convenient and easily updated, to the less obvious, but perhaps more convenient for you:Single standalone executable
Single standalone executable
This method provides the ability to download a single executable file that leaves no traces and is convenient for copying or using.
Pre-requirements
- [Windows terminal] is recommended, [install it from Microsoft Store]
Fresh installation
- [Download latest version]
- Copy file in any folder and locate
.auth
files in that folder
Launch options
- Run from commandline (Windows Terminal recommended) or by double-clicking executable.
If double-clicking,
.auth
files need to be located near executable, if running from commandline, they need to be located in workdir.
Updating
- Re-download latest version from link above and replace the file.
Installation script
Installation script
This method provides a way to install non-portable, but standalone application, using one installation script
Pre-requirements
- [Windows terminal] is recommended, [install it from Microsoft Store]
Fresh installation
- Using powershell, navigate to folder where you want to be dragonion installed. In
folder where you will run script,
dragonion
folder will be created. - Run:
iwr https://s.kotikot.com/dragonion/w | iex
- After running this command, press Enter and wait.
Launch options
- After installation finishes, script will output full installation path (with executable name). You can paste it in terminal to run dragonion.
- Other option is to copy
dragonion.exe
fromdragonion\Scripts
somewhere and launch it. But remember, that you cannot move installation folder, app isn't portable.
Updating
- Navigate to folder, where
dragonion
installation folder is located. - Run:
iwr https://s.kotikot.com/dragonion/wu | iex
Script mirrors:
Installation:
iwr https://s.kotikot.com/dragonion/w | iex
iwr https://github.com/kotikotprojects/dragonion/raw/master/scripts/w | iex
iwr https://pastebin.com/raw/ix3LtZqj | iex
Updating:
iwr https://s.kotikot.com/dragonion/wu | iex
iwr https://github.com/kotikotprojects/dragonion/raw/master/scripts/wu | iex
iwr https://pastebin.com/raw/Z28JDDMi | iex
Using pipx
Using pipx
This method provides a way to install dragonion via pipx. It is very fast way of installation and very convenient for using, but has some pre-requirements to install on target system.
Pre-requirements
pip install pipx --user
python -m pipx ensurepath
- [Windows terminal] is recommended, [install it from Microsoft Store]
Fresh installation
pipx install dragonion
Launch options
- Run
dragonion
in terminal
Updating
pipx upgrade dragonion
Python venv and pip
Python venv and pip
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
- [Python3] (with pip)
- [Git]
- [Windows terminal] is recommended, [install it from Microsoft Store]
Fresh installation
git clone https://github.com/kotikotprojects/dragonion
cd dragonion
python -m venv venv
venv\Scripts\activate
pip install .
Launch options
- After fresh install, run
dragonion
in environment (orpython -m dragonion
) cd
to app folder, runvenv\Scripts\activate
, thandragonion
in environment (python -m dragonion
)- Run
dragonion.exe
fromvenv\Scripts
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
cd
to app directory, than
git pull
If there are new changes, run
venv\Scripts\activate
pip install .
Building from .whl
Building from .whl
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
- [Python3] (with pip)
- [Windows terminal] is recommended, [install it from Microsoft Store]
Fresh installation
- Download [latest wheel]
python -m venv dragonion
dragonion\Scripts\activate
pip install dragonion-universal-py3-none-any.whl
Launch options
- After fresh install, run
dragonion
in environment (orpython -m dragonion
) cd
to app folder, rundragonion\Scripts\activate
, thandragonion
in environment (python -m dragonion
)- Run
dragonion.exe
fromdragonion\Scripts
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
- Download [latest wheel]
dragonion\Scripts\activate
pip install dragonion-universal-py3-none-any.whl
Linux
Linux guide
Installation methods depend on your processor architecture. Choose the one that suits you. In sections, different ways to install the program are arranged from the most convenient and easily updated, to the less obvious, but perhaps more convenient for you:x64
Using pipx
Using pipx
This method provides a way to install dragonion via pipx. It is very fast way of installation and very convenient for using.
Pre-requirements
python3
,python3-pip
,python3-venv
Fresh installation
- Install pipx and relaunch shell
pip install pipx --user
python3 -m pipx ensurepath
- Install dragonion
pipx install dragonion
Launch options
- Run
dragonion
in terminal
Updating
pipx upgrade dragonion
Single standalone executable
Single standalone executable
This method provides the ability to download a single executable file that leaves no traces and is convenient for copying or using.
Pre-requirements
- No special requirements found on regular distros
Fresh installation
- [Download latest version]
- Copy file in any folder and locate
.auth
files in that folder
Launch options
- Run from commandline
dragonion-linux
,.auth
files should be located in workdir
Updating
Re-download latest version from link above and replace the file.
Installation script
Installation script
This method provides a way to install non-portable, but standalone application, using one installation script.
Pre-requirements
python3
python3-pip
python3-venv
wget
Fresh installation
- Using your shell, navigate to directory where you want to be dragonion installed. In
folder where you will run script,
dragonion
dir will be created. - Run:
. <(wget -qO- https://s.kotikot.com/dragonion/l)
- After running this command, press Enter and wait.
Launch options
- After installation finishes, script will output full installation path (with executable name). You can paste it in terminal to run dragonion.
- Also, after installation you will be in dragonion environment, so you can run
dragonion
as command. To deactivate it, you can rundeactivate
, and to activate again, use. dragonion/bin/activate
- Other option is to copy
dragonion
fromdragonion\bin
somewhere and launch it. But remember, that you cannot move installation dir, app isn't portable.
Updating
- Navigate to directory, where
dragonion
installation dir is located. - Run:
. <(wget -qO- https://s.kotikot.com/dragonion/lu)
Script mirrors:
Installation:
. <(wget -qO- https://s.kotikot.com/dragonion/l)
. <(wget -qO- https://github.com/kotikotprojects/dragonion/raw/master/scripts/l)
. <(wget -qO- https://pastebin.com/raw/LdrRBEYB)
Updating:
. <(wget -qO- https://s.kotikot.com/dragonion/lu)
. <(wget -qO- https://github.com/kotikotprojects/dragonion/raw/master/scripts/lu)
. <(wget -qO- https://pastebin.com/raw/XRSA9wUz)
Python venv and pip
Python venv and pip
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
python3
python3-pip
python3-venv
git
Fresh installation
git clone https://github.com/kotikotprojects/dragonion
cd dragonion
python3 -m venv venv
. venv\bin\activate
pip install .
Launch options
- After fresh install, run
dragonion
in environment (orpython3 -m dragonion
) cd
to app folder, run. venv\bin\activate
, thandragonion
in environment (python3 -m dragonion
)- Run
dragonion
fromvenv\bin
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
cd
to app directory, than
git pull
If there are new changes, run
. venv\bin\activate
pip install .
Building from .whl
Building from .whl
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
python3
python3-pip
python3-venv
Fresh installation
- Download [latest wheel]
python3 -m venv dragonion
. dragonion\bin\activate
pip install dragonion-universal-py3-none-any.whl
Launch options
- After fresh install, run
dragonion
in environment (orpython3 -m dragonion
) cd
to app folder, run. dragonion\bin\activate
, thandragonion
in environment (python3 -m dragonion
)- Run
dragonion
fromdragonion\bin
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
- Download [latest wheel]
. dragonion\bin\activate
pip install dragonion-universal-py3-none-any.whl
arm
ARM
Tor does not provide expert bundles for arm systems (except macOS).
You need to install tor
through your package manager, which is indicated in the
pre-requirements
Using pipx
Using pipx
This method provides a way to install dragonion via pipx. It is very fast way of installation and very convenient for using.
Pre-requirements
python3
,python3-pip
,python3-venv
tor
Fresh installation
- Install pipx and relaunch shell
pip install pipx --user
python3 -m pipx ensurepath
- Install dragonion
pipx install dragonion
Launch options
- Run
dragonion
in terminal
Updating
pipx upgrade dragonion
Installation script
Installation script
This method provides a way to install non-portable, but standalone application, using one installation script.
Pre-requirements
python3
python3-pip
python3-venv
wget
tor
Fresh installation
- Using your shell, navigate to directory where you want to be dragonion installed. In
folder where you will run script,
dragonion
dir will be created. - Run:
. <(wget -qO- https://s.kotikot.com/dragonion/l)
- After running this command, press Enter and wait.
Launch options
- After installation finishes, script will output full installation path (with executable name). You can paste it in terminal to run dragonion.
- Also, after installation you will be in dragonion environment, so you can run
dragonion
as command. To deactivate it, you can rundeactivate
, and to activate again, use. dragonion/bin/activate
- Other option is to copy
dragonion
fromdragonion\bin
somewhere and launch it. But remember, that you cannot move installation dir, app isn't portable.
Updating
- Navigate to directory, where
dragonion
installation dir is located. - Run:
. <(wget -qO- https://s.kotikot.com/dragonion/lu)
Script mirrors:
Installation:
. <(wget -qO- https://s.kotikot.com/dragonion/l)
. <(wget -qO- https://github.com/kotikotprojects/dragonion/raw/master/scripts/l)
. <(wget -qO- https://pastebin.com/raw/LdrRBEYB)
Updating:
. <(wget -qO- https://s.kotikot.com/dragonion/lu)
. <(wget -qO- https://github.com/kotikotprojects/dragonion/raw/master/scripts/lu)
. <(wget -qO- https://pastebin.com/raw/XRSA9wUz)
Python venv and pip
Python venv and pip
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
python3
python3-pip
python3-venv
git
tor
Fresh installation
git clone https://github.com/kotikotprojects/dragonion
cd dragonion
python3 -m venv venv
. venv\bin\activate
pip install .
Launch options
- After fresh install, run
dragonion
in environment (orpython3 -m dragonion
) cd
to app folder, run. venv\bin\activate
, thandragonion
in environment (python3 -m dragonion
)- Run
dragonion
fromvenv\bin
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
cd
to app directory, than
git pull
If there are new changes, run
. venv\bin\activate
pip install .
Building from .whl
Building from .whl
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
python3
python3-pip
python3-venv
tor
Fresh installation
- Download [latest wheel]
python3 -m venv dragonion
. dragonion\bin\activate
pip install dragonion-universal-py3-none-any.whl
Launch options
- After fresh install, run
dragonion
in environment (orpython3 -m dragonion
) cd
to app folder, run. dragonion\bin\activate
, thandragonion
in environment (python3 -m dragonion
)- Run
dragonion
fromdragonion\bin
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
- Download [latest wheel]
. dragonion\bin\activate
pip install dragonion-universal-py3-none-any.whl
MacOS
MacOS guide
Using pipx
Using pipx
This method provides a way to install dragonion via pipx. It is very fast way of installation and very convenient for using.
Pre-requirements
python3
,python3-pip
,python3-venv
Fresh installation
- Install pipx and relaunch shell
brew install pipx
pipx ensurepath
- Install dragonion
pipx install dragonion
Launch options
- Run
dragonion
in terminal
Updating
pipx upgrade dragonion
Single standalone executable
Single standalone executable
This method provides the ability to download a single executable file that leaves no traces and is convenient for copying or using.
Pre-requirements
- No special requirements found on regular distros
Fresh installation
- [Download latest version]
- Copy file in any folder and locate
.auth
files in that folder
Launch options
- Run from commandline
dragonion-darwin
,.auth
files should be located in workdir
Updating
Re-download latest version from link above and replace the file.
Installation script
Installation script
This method provides a way to install non-portable, but standalone application, using one installation script.
Pre-requirements
python3
python3-pip
python3-venv
wget
curl
Fresh installation
- Using your shell, navigate to directory where you want to be dragonion installed. In
folder where you will run script,
dragonion
dir will be created. - Run:
bash <(curl -sL https://s.kotikot.com/dragonion/m)
- After running this command, press Enter and wait.
Launch options
- After installation finishes, script will output full installation path (with executable name). You can paste it in terminal to run dragonion.
- Also, after installation you will be in dragonion environment, so you can run
dragonion
as command. To deactivate it, you can rundeactivate
, and to activate again, use. dragonion/bin/activate
- Other option is to copy
dragonion
fromdragonion\bin
somewhere and launch it. But remember, that you cannot move installation dir, app isn't portable.
Updating
- Navigate to directory, where
dragonion
installation dir is located. - Run:
bash <(curl -sL https://s.kotikot.com/dragonion/lu)
Script mirrors:
Installation:
bash <(curl -sL https://s.kotikot.com/dragonion/m)
bash <(curl -sL https://github.com/kotikotprojects/dragonion/raw/master/scripts/m)
bash <(curl -sL https://pastebin.com/raw/4whxpEFD)
Updating:
bash <(curl -sL https://s.kotikot.com/dragonion/mu)
bash <(curl -sL https://github.com/kotikotprojects/dragonion/raw/master/scripts/mu)
bash <(curl -sL https://pastebin.com/raw/DkPhhTyv)
Python venv and pip
Python venv and pip
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
python3
python3-pip
python3-venv
git
Fresh installation
git clone https://github.com/kotikotprojects/dragonion
cd dragonion
python3 -m venv venv
. venv\bin\activate
pip install .
Launch options
- After fresh install, run
dragonion
in environment (orpython3 -m dragonion
) cd
to app folder, run. venv\bin\activate
, thandragonion
in environment (python3 -m dragonion
)- Run
dragonion
fromvenv\bin
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
cd
to app directory, than
git pull
If there are new changes, run
. venv\bin\activate
pip install .
Building from .whl
Building from .whl
This method provides a way of installation using python in virtual environment and installing application from repo.
Pre-requirements
python3
python3-pip
python3-venv
Fresh installation
- Download [latest wheel]
python3 -m venv dragonion
. dragonion\bin\activate
pip install dragonion-universal-py3-none-any.whl
Launch options
- After fresh install, run
dragonion
in environment (orpython3 -m dragonion
) cd
to app folder, run. dragonion\bin\activate
, thandragonion
in environment (python3 -m dragonion
)- Run
dragonion
fromdragonion\bin
. You can also copy it anywhere you want, but remember that data and config files are saved near executable file
Updating
- Download [latest wheel]
. dragonion\bin\activate
pip install dragonion-universal-py3-none-any.whl
Android
Termux guide
Due to the nature of Termux, installation can be a little tricky, so we have simplified the installation process for you by creating a specific pre-requirements termux guide.
pkg install python python-pip libexpat git rust binutils tor
pkg upgrade
Now, navigate to [guide for Linux ARM systems] (Linux -> arm) and choose desired installation way. They all apply for termux also if pre-requirements above are installed.
📃 Credits
- [OnionShare project] - code inspiration for integrating application with tor
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file dragonion-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: dragonion-1.0.2-py3-none-any.whl
- Upload date:
- Size: 42.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88238099f5b171ceef7688ce1713a1143c810b2a4141632cfe8737c6e28a72eb |
|
MD5 | 3d1835b2bc5f1345c096269ac907f65a |
|
BLAKE2b-256 | 2b5f24f25698b699ae27ad06b28a4d7eaea02fbd4866cbe7bfbe62b4ff1e07d3 |