GForm, An interactive shell GUI builder
Description:
Fully interactive GUI builder for shell scripts using 'pipe' files for control or
can be used like zenity to create a simple multiple button option requester.
See OPEN PIPE for usage of pipes and their purpose.
With this app you can simply (kind of) create your own GUI's in a shell script and
monitor/react to the actions in the script.
Goal:
The goal is to allow you to be able to make fully functional GUI apps just with shell
scripting in bash.
It creates a form/window and adds objects to it vertically or you can create a HBox and add objects to that horizontally.
Currently supported objects are...
Button, ToggleButton, ToolButton, TextBox, TextArea,
MaskBox (for passwords), CheckBox, ListBox, GridView, DirBox, FontBox, ComboBox, Label, HBox, Spring, Menu
Distribution/Download contents:
Provided is a few demo bash scripts and some help texts containing all the arguments/commands.
One of the example scripts is called GForm HELP.sh
this simply loads each help file into a TextArea object for your viewing.
(So it's a good first script to try)
Usage:
Mostly the GForm program is run from within the scripts with a few args to make a GUI.
The pipe=/tmp/fifo1 argument makes the app create a pipe that the script then opens and
waits for messages from the GUI and the listen=/tmp/fifo2 argument makes a pipe for the
script to be able to control the GUI. (There's a help file on pipe basics)
Messages come in the form of name|text or name|text|value depending on the calling object
Notes:
There are various examples. Simple, Medium and advanced.
SEE THE EXAMPLE SCRIPTS AND HELP TEXTS FOR INFO ON HOW TO MAKE YOUR OWN SHELL GUI APP.
Check out the GForm homepage to see examples of how it looks.
See the github page (linked below) for readme , version history, source.
This App is currently beta and still partially in development (will probably add some more controls to it) but is quite functional.
Included in the examples is a fully working app called pkAppMan, there are 2 versions, one uses a
ListBox and does a lot of text processing within the script, the other uses a GridView, both fully working applications for managing the pkexec policy rule list. Shown in the screenshot below, what you are seeing is a GUI made by running GForm from a bash script.
Happy Scripting :)
Bruce