subuser-security/subuser — pull request #111 by peter1000 (2014-02-21 14:05:29+00:00)
Title: IMPROVED:  install command code

NOTE: this builds upon some of the previous pull requests I sent: and replaces the one I closed
#61

* moved common code to subuserlib as per https://github.com/subuser-security/subuser/pull/84#issuecomment-35587683
* some code cleanup
* using python string.format
* removing unused imports
* make use of out new function: getAvailableProgramsText
* renamed some variables: not good idea to call them the same as existing function names or imports
FIX-ERROR ``` use some 'os.path.join' for path instead of simply + UnboundLocalError: local variable 'permissions' referenced before assignment```
* added argument to function: installExecutable(programName):

* using: paths.getMakeBaseImageScriptPath to have it in a cleaner way
replacing occurrences with new function

* ENHANCEMENT: let multiple programs be installed from commandline #8

* installing a program there is much console output: there is too much output: a user will hardly recognize the nice info provided: add some space

For multiple programs one get's at the and all info in a nice format

i did on a clean subuser: `subuser install vim xterm --from-cache`

output
```
Successfully built f91d9aa5d268
Installing xterm ...
Uploading context 2.56 kB
Uploading context
Step 0 : FROM subuser-libx11
---> f91d9aa5d268
Step 1 : RUN apt-get update
---> Using cache
---> 1212d05e5edc
Step 2 : RUN TERM=linux apt-get install -y xterm
---> Using cache
---> e3d74feb4992
Successfully built e3d74feb4992

============= INSTALLATION OK =============

vim: has been installed with the following permissions.
vim:
Description: A simple powerful text editor
Maintainer: Timothy Hobbs
Executable: /usr/bin/vim
Can access the directory from which it was launched.
You can change this program's permissions at any time by editing it's permissions.json file.

xterm: has been installed with the following permissions.
xterm:
Description: A trivial terminal emulator
Maintainer: Timothy Hobbs
Executable: /usr/bin/xterm
Can display X11 windows.
Can access the directory from which it was launched.
Can access the network/internet.
You can change this program's permissions at any time by editing it's permissions.json file.
workerm@notebook:~$
```