Skip to content

termongel/termongel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

termongel

a privacy first one of a kind (as in weird and unusable) terminal emulator, made and tested on arch linux but should work on other distros too.

termongel

image

overview

termongel is a minimalist unix style terminal that prioritizes privacy, php hackability, and an offline first philosophy. it’s not trying to beat gpu accelerated terminals like kitty or alacritty in speed. it’s for people who care more about hacking their tools, community plugins, and running in total isolation when needed.

highlights

privacy first zero telemetry tracking or analytics

plugin system community plugins using plain php

offline by default no connection required

proxy support optional tor or local proxy routing

php hackability just open a file and edit

paranoid mode locked down sandbox for testing

one line plugin bootstrap scaffold plugins instantly


installation

requirements

  • php 7.4 or newer with curl extension
  • git
  • bubblewrap (optional for paranoid mode)

quick install

git clone https://github.com/termongel/termongel.git
cd termongel
chmod +x install.sh
./install.sh

manual install

  1. copy termongel.php to /usr/local/bin/termongel
  2. copy tmongel to /usr/local/bin/tmongel
  3. make both files executable
  4. create plugin folder ~/.termongel/plugins

usage

launch the terminal

termongel

you get

  • colorful prompt termongel@hostname ~ $
  • command history and alias support
  • plugin support

paranoid mode

termongel --paranoid

runs in a bubblewrap sandbox

  • no internet
  • no file writes
  • no untrusted binaries perfect for testing sketchy scripts

plugin manager

tmongel -S <plugin>      # install a plugin  
tmongel -R <plugin>      # remove a plugin  
tmongel -Ss <keyword>    # search plugins  
tmongel -Qi <plugin>     # show plugin info  
tmongel -Su              # update plugin index  
tmongel -Syu             # update all plugins  
tmongel -L               # list installed plugins  

making plugins

quick bootstrap

tmongel plugin create myplugin

creates

myplugin/
  main.php
  manifest.json

ready to hack

plugin structure

myplugin/
  main.php        plugin logic
  manifest.json   metadata and permissions
  config.json     optional user config
  README.md       optional docs

manifest.json

{
  "name": "weather",
  "version": "1.0.0",
  "description": "shows current weather",
  "author": "dev@example.com",
  "entry": "main.php",
  "permissions": {
    "net": true,
    "fs": ["~/.cache/weather"]
  }
}

simple example

tmongel plugin new myplugin

main.php

<?php
function handleCommand($args) {
    echo "hello world\n";
    return true;
}

return [
    "commands" => [
        "myplugin" => "handleCommand"
    ]
];

test it

cd ~/.termongel/plugins/myplugin
php main.php test

plugin communication

plugins can talk using intents

weather plugin emits

emitIntent("weather_update", $data)

status bar plugin listens

onIntent("weather_update", function ($data) {
    // update display
})

configuration

config lives in ~/.termongel/config.json

{
  "prompt": "termongel@%h %d $ ",
  "theme": "default",
  "plugins": [],
  "aliases": {},
  "history_size": 1000,
  "paranoid_mode": false,
  "proxy": {
    "enabled": false,
    "type": "tor",
    "address": "127.0.0.1",
    "port": 9050
  }
}

why not just use a normal terminal

  • plugin system inspired by pacman
  • editing is just php
  • runs on anything from vms to web shells
  • zero network access unless you allow it
  • paranoid mode for testing sketchy stuff safely

license

mit license


contributing

pull requests welcome weird ideas also welcome just don’t break stuff too much


privacy

we don’t want your data

  • no telemetry
  • no analytics
  • no tracking
  • works offline
  • proxy support if you want even more privacy

credits

code by notclavilux

readme by chatgpt

logo also by chatgpt thanks chatgpt

About

unconvential php based terminal emulator for linux

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors