climenu provides a fairly simple way to configure simple-term-menu to act as a command line navigable menu system. As well as being able to be configured for launching programmes, entries an be added for scripts, start an ssh session, basically almost anything you can write a cli command for.
Install simple-term-menu
Download, unzip, copy to a directory of your choice, here it is .climenuin the home directory, and make climenu.sh executable
wget https://github.com/graynada/climenu/archive/refs/heads/main.zip
unzip main.zip
mkdir $HOME/.climenu
mv climenu-main/* $HOME/.climenu
rm -r climenu-main
rm main.zip
chmod +x $HOME/.climenu/climenu.shRun 'climenu.sh'
$HOME/.climenu/climenu.shI set up an alias m to run climenu
With default config.py
Modify config.py
Add a menu:
new_menu = Menu(name="Name", items=[sub_menu_1, sub_menu_2, launcher_1, launcher_2])
Add new launcher:
new_launcher = Launcher(name="Launcher", action=["part_1", "part_2"])
eg:
update_system = Launceher(name="Update All", action=["sudo", "apt", "upgrade", "-y"])