The 'tkGooies' subsystem

of the FE system

Download DETAILS page

(First released in 2015 March.)

(FE = effie = Freedom Environment)


The FE '3D Model File Examiner' tkGooie
Javascript is disabled. Please enable Javascript
in order to see image changes on 'mouse-overs'.

FE Home page > The FE Downloads page > The FE 'tkGooies' Download page > This 'tkGooies' Download DETAILS page

! Note ! Some sections here may be touched up or revised occasionally
--- especially when there are new releases of 'tkGooies'.

INTRODUCTION :

The 'parent' page of this 'Download-DETAILS' page is the 'tkGooies' Download page.

That 'parent' page gives a quick summary of how to download and install the 'self-extracting script' that is the install file for the FE 'tkGooies' sub-system.

This page is intended to provide details of the install, including

  • how to do the install via the command-line
  • how to do the install via a GUI file-manager
  • some information on the size and architecture of the install file

So here we go.


The Short Story :

It was mentioned on the 'parent' Download page that the 'tkGooies' install file is provided with a '.sh.exe' suffix.

And, as an alternative, in case you encounter problems in downloading a '.exe' file, another copy of the install file is provided with a '.sh.tar' suffix.

Right click on either the link to the '.sh.exe' file OR the link to the '.sh.tar' file, and, in the popup menu of your web browser, choose to save the install file in a download directory on your machine. (Your web browser will offer an option such as 'Save Link Target As ...'.)

The 'parent' Download page also points out that the install takes only a few steps after downloading the self-extracting install file to your computer :

  1. rename the file to remove the '.exe' or '.tar' suffix, leaving the '.sh' suffix intact
  2. make sure the '.sh' file has execute permission
  3. double-click on the '.sh' file to execute it     (or right-click and Open)

All three of these steps can be done in Nautilus or Caja or some other capable GUI file manager. That is, the install can be done with mostly mouse clicks --- rather than using the command line. (The only keyboard use would be the Backspace or Delete key to remove the suffix.)

When you double-click on the '.sh' file, there is no need for a progress bar. The install occurs within a second or two.

The 'parent' Download page goes on to describe how to set up the 'startup script' of the 'tkGooies' system.

The 'parent' Download page also describes how to install a new release (an update) of the 'tkGooies' system.

The 'parent' page gave the short story. Here are the details.


The 'Long Story' :   (details of the 'tkGooies' install process)

Your home directory or the 'Desktop' directory of your home directory will do, as the download directory. BUT ...

    To keep an organized directory structure, you may find it better to make a directory named 'DOWNLOADS', for example, in your Home directory. Then save ALL your 'third party' application install files there, from then on.

    By 'third party', I mean applications that are NOT distributed via a monolithic package management system of your Linux/Unix system --- like the FE apps are not.

    Seamonkey2 (a Mozilla.org web browser, son of Netscape) is another example of such an app. In mid-2010, it was not available in the 'Ubuntu Software Center' nor in the 'Synaptic Package Manager'.

    I downloaded the Seamonkey2 Linux install file from the Seamonkey website into my $HOME/DOWNLOADS directory --- and I installed it into a $HOME/apps directory that I created for apps that I want to preserve during Linux upgrades. I preserve the apps simply by not overlaying my home directory (and by backing up my home directory as a precaution).

    Similar to that Seamonkey install, the FE subsystem self-extracting install scripts can be put in $HOME/DOWNLOADS and installed in $HOME/apps. So the install scripts can be kept in $HOME/DOWNLOADS and the install files are in $HOME/apps --- with a couple more install files in $HOME/.freedomenv and one 'soft link' in $HOME/apps/bin, as indicated below.

    So all files of the FE subsystems are in your home directory. The files get backed up if you backup your home directory. Furthermore, the files are preserved (not wiped out) if you preserve your home directory when you update your operating system.

A reminder:
To see the quick version of installing the 'tkGooies' subsystem, go to the SUMMARY section of the 'parent' Download page for the FE 'tkGooies' subsystem. Installation details follow.


Preparing the downloaded '.sh' install file for execution :

First, rename the file --- remove the '.exe' or '.tar' suffix.

    If you are positioned at your download directory with the Nautilus (or Caja or other) file manager, simply right click on the install file, choose 'Rename' in the popup menu, and use the Backspace or Delete key to remove the last 4 characters from the filename.

    If you are in a terminal window, positioned at the download directory, you can use the 'mv' (move/rename) Linux/Unix command in a form like this :

                  mv  whatever.sh.exe  whatever.sh
    

NOTE:
When you download the self-extracting script file to your file system, it may lose its execute permissions. [This is a nice security feature, making it harder for people to run rogue programs on your computer.] You can make sure the '.sh' file is executable as follows.

  • Navigate to it in the Nautilus/Caja/other GUI file-manager --- if you're not there already.

  • Right-click on it and, in the case of using Nautilus, choose 'Properties' at the bottom of the options window that pops up.

  • Go to the 'Permissions' panel on that 'Properties' window and make sure the checkbox labelled 'Allow executing file as program' is turned on.

Altnernatively, in a terminal window, when you are positioned in the directory in which you put the '.sh' install file, issue the 'chmod 755' command on the filename of the self-extracting script. The format :

             chmod 755  whatever.sh


Content of the '.sh' file :

While you are in that terminal window, you can check out the script lines of the file by issuing the 'head -335' command against the file. You will see about 330 lines of script text (lots of comment lines) --- and then some gobbledy-gook characters in the terminal window. That gobbledy-gook is the starting contents of the gzipped tar file that contains the 'tkGooies' installation files.

The self-extracting script is a combination of text lines and binary data. If you try to view the install script with a text editor, like 'gedit', it will not view the file, because the editor detects the binary data and thinks it is dealing with a binary file. The authors of 'gedit' do not allow you to try to display the file --- partly because 'lines' in (some) binary data files are thousands of bytes long.

    As an interesting note (at least I think so), the FE 'xpg' utility is not as finicky as 'gedit'. 'xpg' WILL show contents of binary files.

    Of course, most of the bytes in the file show as gobbledy-gook characters in the 'xpg' text area. But you CAN read strings of human-readable text in the binary file.

    In particular, I tried 'xpg' on the 'tkGooies' self-extracting script file. It brought that combined text-and-binary file up quickly with no complaints --- other than an offer to Stop reading the file at 4 Megabytes.

    I could see the text of the script at the top of the file.

    In fact, when I scrolled down to the part of the file where the binary data started, the 'xpg' window did not complain or go bye-bye.

    On some of the other FE self-extracting script files --- like the ones for the 'FE Nautilus Scripts' releases (which were about 4.5 Megabytes in size in 2014), I have scrolled through the entire self-extracting script file, with 'xpg'.


How to execute the '.sh' install script :

If you are still in a terminal, positioned at the download directory that contains the self-extracting script file, after doing the 'head' command on the '.sh' file, you could execute the '.sh' script right there via the command line. (See a GUI file-manager mouse-click method, below.)

Enter a command of the form

           ./whatever.sh
    

That is, type a dot and slash, then type (or 'mouse-paste') the '.sh' filename and press Enter.

You will see some output from the execution of the script, including

  • 'mkdir' commands that make the 'tkGooies_linux_yyyymmmdd' install directory, under $HOME/apps

  • the 'tail' command that is used to extract the gzipped tar file from the '.sh' file --- putting the '.tgz' file in the '/tmp' directory

  • output of the 'file' command applied to the extracted file --- confirming (hopefully) that the extracted file is indeed a 'gzip compressed data' file

  • the output of 'ls -l' on that extracted file --- to show the number of bytes in that gzipped tar file     (It should be 12,389,244 bytes for the 2015mar09 file.)

  • the output of 'tar ztvf' on the extracted '.tgz' file --- to show the 'table of contents' of the extracted file

      (The table of contents will simply be the directory names and filenames that make up the installation --- along with some file permissions information.)

  • a 'cd' command that sets up the 'working directory' of the install script at the 'tkGooies' install directory, for execution of the following un-tar command

  • the output of 'tar zxvf' on the extracted '.tgz' file, which gunzips the file into a tar file and then extracts the contents of that tar file into the install directory

      (The output of 'tar zxvf' will look a lot like the 'table of contents' output, the output of 'tar ztvf' --- but without the file permissions info.)

      (The 't' in the tar command stands for table of contents, the 'x' for extract.)

  • the 'mkdir' commands that make a '.freedomenv' directory in your home directory --- and a subdirectory named 'tkGooies' under that directory --- if it did not exist already.

  • two 'cp' commands that copy the 'set_FEDIR.shi' and 'set_feDIR.tki' shell 'include' files --- from the installation directories named 'includes_sh' and 'includes_tk', respectively --- to the '$HOME/.freedomenv/tkGooies/' directory.

      (The 'set_FEDIR.shi' shell 'include' file is shell script code that figures out the install directory from the name of whatever FE script is being executed --- that name being available in the $0 variable of the calling script. More than you wanted, or needed, to know, eh?)

      (The 'set_feDIR.tki' Tk script 'include' file does a similar thing for the '.tk' scripts of the FE subsystems.)

  • the 'mkdir' command that makes a 'bin' directory in the $HOME/apps directory, if a 'bin' directory did not exist already

  • a 'link' command that makes a link from filename 'tkGooies_start.sh' in the '$HOME/apps/bin' directory to the 'tkGooies' startup script, namely

      $HOME/apps/tkGooies_linux_yyyymmmdd/scripts/tkGooies_start.sh

Some of the many ways to implement that 'tkGooies' startup script are described in the SUMMARY section of the 'parent' Download page for the FE 'tkGooies' subsystem. See the 'Finishing the Install' section.

Note that the above description amounts to 'full-disclosure' of the install process for the 'tkGooies' subsystem. (More than you wanted to know, eh?)


An alternative to running the install script by typing its name
in a terminal-shell window (namely, a GUI mouse-click method) :

If you are positioned at the '.sh' install script (that is, positioned in your download directory) with a GUI file manager like Nautilus or Caja, you could double-click on the '.sh' file --- after making sure that it has execute permission, as described above --- and choose the option to 'Run in a terminal'. You will see the messages described above appearing in the terminal that pops up.

    If the terminal window just flashes and does not stay open (or the installation goes so fast that the terminal window does not even flash open for an instant), navigate to the '$HOME/apps' directory, and see if the 'tkGooies_linux_yyyymmmdd' directory was created.

    Check whether the 'scripts' subdirectory of that directory was created, containing the 'tkGooies_start.sh' startup script. And check the 'tkGUIs' subdirectory of the install directory, which should contain a 'make_chest.tk' file. If those directories and files exist, then the installation probably went OK.


Where the application files 'land' :   (via a safer-than-most install strategy)

When the self-extracting shell script file executes, it automatically puts a set of sub-directories in a '$HOME/apps/tkGooies_linux_yyyymmmdd' directory --- that is, under your home directory --- where yyyymmmdd represents a release date.

Example: $HOME/apps/tkGooies_linux_2015mar09

Note that you do not have to change to 'root' to do the install. In fact, I never like having to switch to 'root' to do an install.

    When I have to supply the root password to do an install, I am being put in the position of having to trust the people who put the install package together that they are not going to use that all powerful permission to do serious damage to the root-owned directories and files on my machine.

    And I am trusting that they are NOT going to install key-loggers or Linux/Unix viruses/trojan-horses on my machine, hidden in that massive directory structure. Or, 'they' could install a 'hidden' program that sends data to an organization (or person), over the Internet, or do some other useless-to-me thing, whenever their program is 'triggered', hidden among all those directories (and when I have my connection to the Internet on). [I, and my wife, have been a victim of these several things on MS Windows. I now setup separate 'admin' and 'user' accounts on MS Windows, similar to 'root' and 'user' on Linux/Unix.]

    Do you hear that HP, Microsoft, Google, and a large number of software vendors? Cut the nonsense out! At least prompt us, before taking liberties with our computers. For example, let us decide whether we want your programs to start up as part of our computer's boot up process. Maybe we don't want your 'stuff' shoved in our faces every time we log on --- or every time we start up an app in which your (never-going-to-be-used-by-me) stuff has been included as an intrusive plugin. (Hear that, Mozilla Firefox and Google and Yahoo??)

So rest easy. This install does not require you to open yourself to damage like mangling of your root-owned directories --- or commandeering of root-owned processes. And nothing is added to your computer's startup processes. YOU are the one who decides when the 'tkGooies' components are run.

For some simplicity, this install does not ask for an install directory. It simply makes an 'apps' directory in your home directory, if you do not have one. And it makes a directory called 'tkGooies_linux_yyyymmmdd' under the 'apps' directory.


    Having apps like this in your home directory can be a real boon at Linux OS upgrade time. If you follow the procedure of preserving your home directory (as a separate disk partition) during a Linux OS upgrade, then you do not have to re-install the FE 'tkGooies' subsystem installation files, after your Linux upgrade.

    Since these installation files are not in a system directory like '/usr', they will not be wiped out in a Linux system upgrade.

    And even if you allow the Linux OS upgrade to wipe out your home directory, if you simply drag your 'apps' directory onto a USB stick (or some other storage device) before the Linux upgrade, you can simply drag it back to your home directory after the Linux upgrade is complete.

    Better yet, backup your entire home directory before the Linux OS upgrade. Then restore the home directory after the upgrade --- especially if the upgrade trashed a lot of the 'preferences' files, or other files, in your home directory.


Size of the installation :

After installation, the 'tkGooies' files occupy about 25 Megabytes of space. The 2015mar09 self-extracting install script is about 11.8 Megabytes in size. About 99 percent of that is the compressed installation files.

The installation files, after extraction from the compressed file that was appended to the self-extracting install script, expand to about 25 megabytes in size --- about one-half of one percent of the space on a 4 Gigabyte USB memory 'stick' or 'chip'.

    (A 4 Gigabyte USB stick is the smallest that manufacturers continued to make in early 2015.)

I contend that you can get a lot of bang, for zero bucks, from this set of 'tkGooies' files that can be carried on a memory-chip so small that you can hardly see it.


The sub-directories of the FE 'tkGooies' install :

The install directories go under the 'tkGooies_linux_yyyymmmdd' directory --- fullname $HOME/apps/tkGooies_linux_yyyymmmdd.

It is a simple, almost-'flat' directory structure.

The directory names are

  • chestdef_scripts
  • chestdefs
  • helps
  • images
  • includes_sh
  • includes_tk
  • scripts
  • tkGUIs

There is another level of sub-directories under the 'images' and 'tkGUIs' sub-directories. For example, the 'images' directory contains 'bullets' and 'icons' directories.

The 'chestdef_scripts' and 'chestdefs' directories contain about 20 files each. The most files (for the 'apps') are in the 'tkGUIs' sub-directories.

The main file for the user to be aware of is the main startup script --- 'tkGooies_start.sh' --- in the 'scripts' directory.


Running 'tkGooies' :

If you want to make an 'alias' for the 'tkGooies' startup script --- to put in your '.bashrc' file (or '.bash_aliases' file on Ubuntu 9.10) --- you can use a statement like

           alias tkg="$HOME/apps/bin/tkGooies_start.sh"
    

You can also make a desktop icon for 'tkGooies', if you wish --- in the usual way for your desktop environment (say MATE or Gnome2 or Gnome3 or KDE3 or KDE4).

Gnome2 example :

    For Gnome 2, you can right-click on the desktop and choose 'Create Launcher ...'.

    In the 'Create Launcher' window that pops up, in the 'Name:' field enter a name like 'tkGooies', and in the 'Command:' field, enter the name

      $HOME/apps/bin/tkGooies_start.sh

    which is a link to the startup script for the 'tkGooies' system.

      Note that there is a 'Browse...' option, so you do not have to key in the fully-qualified name of the startup script. You can simply navigate to the 'apps/bin' directory of your home directory, and click on the 'tkGooies_start.sh' filename.

    Then click 'OK'. (If you want to use a different icon from the standard Gnome2 launcher icon --- a platform on a spring in Ubuntu 9.10 --- click on that launcher icon in the upper left of the 'Create Launcher' window and choose a different icon, before you press OK.)

KDE (3?) example:

    For KDE, you can right-click on the desktop and choose 'CreateNew -> Link to Application'. In the 'General' panel that pops up, fill in a short name, like 'tkGooies', which will appear on the screen under your desktop icon.

    (You can click on the default gear-icon in the panel, and choose a different icon from a large array of icons.)

    Then click on the 'Application' panel and click on the 'Browse' button to find the startup script (preferably the 'link' to that script, in $HOME/apps/bin) that is to be associated with the KDE desktop icon :

      $HOME/apps/bin/tkGooies_start.sh

After you have your desktop icon (for Gnome, KDE, or whatever) :

    You can click on the 'tkGooies' icon to bring up the starting 'tkGooies' chest-of-drawers.


You can also make tkGooies available via a 'quick-launch' icon on the Gnome2 (or MATE) panel across the top of the desktop.

Simply right-click on the Gnome2 or MATE 'top-panel' and use 'Add to Panel ...'. I leave the rest of the steps as an exercise. The steps are similar to creating an icon on the Gnome2 or MATE desktop.


SUMMARY of the Install Steps :

At this point, we can return to the 'parent' Download page --- to see the SUMMARY of Install Steps section for the FE 'tkGooies' subsystem.

"Tk Gooies . . . sugar-free 'END-USER' utilities ... giving you power without adding weight"

Bottom of the 'tkGooies' FE subsystem DOWNLOAD-DETAILS page.

FE = Freedom Environment

To return to a previously visited web page, click on the
Back button of your web browser a sufficient number of times.
OR, use the History-list option of your web browser.
OR ...

< Go to Top of Page, above. >
< Go to the FE Home page >

Page created 2015 Mar 10.