Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Dive | 36,142 | 1 | 5 days ago | 28 | July 02, 2021 | 152 | mit | Go | ||
A tool for exploring each layer in a docker image | ||||||||||
Textual | 18,400 | 65 | 11 hours ago | 19 | April 30, 2022 | 128 | mit | Python | ||
Textual is a Rapid Application Development framework for Python. Build sophisticated user interfaces with a simple Python API. Run your apps in the terminal and (coming soon) a web browser! | ||||||||||
Bubbletea | 17,410 | 301 | 7 days ago | 130 | August 19, 2022 | 63 | mit | Go | ||
A powerful little TUI framework 🏗 | ||||||||||
Nnn | 15,995 | 19 hours ago | 20 | July 26, 2022 | 5 | bsd-2-clause | C | |||
n³ The unorthodox terminal file manager | ||||||||||
Goaccess | 15,930 | 5 days ago | 355 | mit | C | |||||
GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser. | ||||||||||
Wtf | 14,702 | 1 | a day ago | 97 | February 18, 2022 | 29 | mpl-2.0 | Go | ||
The personal information dashboard for your terminal | ||||||||||
Spotify Tui | 14,201 | 2 months ago | 24 | August 24, 2021 | 262 | mit | Rust | |||
Spotify for the terminal written in Rust 🚀 | ||||||||||
Glow | 11,966 | 19 | 7 days ago | 25 | February 14, 2022 | 95 | mit | Go | ||
Render markdown on the CLI, with pizzazz! 💅🏻 | ||||||||||
Duf | 10,735 | 7 days ago | 23 | March 02, 2022 | 42 | other | Go | |||
Disk Usage/Free Utility - a better 'df' alternative | ||||||||||
Gtop | 9,326 | 3 | a month ago | 15 | January 12, 2022 | 35 | mit | JavaScript | ||
System monitoring dashboard for terminal |
OnionJuggler is a minimal requirement, portable collection of scripts and documentation to help the service operator juggle (manage) his onion(s).
WARNING: do not trust this repo yet
, backup your hs keys in another location. This project has not been released and should be considered for development only.
Quick link to this repository: git.io/onionjuggler
This project was started after seeing the amazing OnionShare CLI python scripts, which possibilitates ephemeral onion services that never touch the disk and can be run on Tails or Whonix easily. Then after seeing the RaspiBlitz onion service bash script for the Raspberry Pi, the idea to port it to any Debian distribution started. As the idea grew, using GNU Bash and Linux was a single point of failure 1 2, so the making the script POSIX compliant to be compatible with any Unix-like system was a definitive goal.
The goal of this project is:
Mitigation from a single point of failure:
Linux
to also BSD
and any other Unix-like system.Bash
to also any POSIX shell such as ksh
, (y,d)ash
and Zsh
(emulating sh).Systemd
to also RC
, OpenRC
, SysVinit
, Runit
.Editing the tor configuration file (torrc) is not difficult, but automation solves problem of misconfiguration and having:
<HiddenServiceDir>/authorized_clients/<client>.auth
. If any client is configured, the service will not be acessible without authentication.<ClientOnionAuthDir>/<SOME_ONION>.auth_private
.dialog
and whiptail
.@all
to include all services or clients depending on the option --service
or --client
, list enabled arguments[SERV1,SERV2,...]
and [CLIENT1,CLIENT2,...]
, the command will loop the variables and apply the combination.General:
Required programs:
dash
0.5.4+, bash
2.03+, ksh
88+, mksh
R28+, yash
2.29+, busybox ash
1.1.3+, zsh
3.1.9+ (zsh --emulate sh
) etc.Optional programs:
Development programs:
Mainly tested on Debian systems, including Whonix.
It can work on OpenBSD -
basez
from source, as it is not in ports.Regarding other operating systems, please see etc/onionjuggler for pre-defined configuration for your operating system. They were not all tested
git clone https://github.com/nyxnor/onionjuggler.git
cd onionjuggler
Run from inside the cloned repository to create the tor directories, create manual pages and copy scripts to path:
./configure.sh --install
You should not modify the default configuration on /etc/onionjuggler/onionjuggler.conf
, it will be modified on every update. Your local configurations should be on /etc/onionjuggler/conf.d/*.conf
, and from this folder, they will be parsed using lexical order, and the last value will supersede the defaults.
Each configuration and script has its own manual page and help message, it is the best way to learning onionjuggler entirely.
Before executing any script to make changes, it is recommended to see what options are configured. Every script has a --getconf
option that will print the current configuration read by onionjuggler:
onionjuggler-cli --getconf
It is also possible to get command line options without making changes, useful to see if the assignment is correct:
onionjuggler-cli --getopt --service=example --hs-version=3
To use the TUI, just run:
onionjuggler-tui
To create a service on the CLI:
onionjuggler-cli --on --service=terminator --socket=tcp --hs-version=3 --port="80:127.0.0.1:80"
Many more things are possible, read the man pages