The 'feHappyScripts' subsystem



Replaced by a 'tkScriptApplicator'
utility in the 'FILEmanagers' toolchest
of the FE 'tkGooies' system.

FE = Freedom Environment

The ability to run

even if the various
Linux file managers
eventually fail to
preserve that capability

makes me as happy as
this icon.
Javascript is disabled. Please enable Javascript
in order to see image changes on 'mouse-overs'.

FE Home page > The FE Downloads page >

This 'feHappyScripts' Download page

! Note !
'feHappyScripts' was implemented as an alternative way
of running 'Nautilus scripts' --- in case the
Nautilus scripts capability is abandoned in the
Gnome or MATE desktop systems. As noted above,
this system is replaced by a 'tkScriptApplicator'.

This Download page is provided for the historical notes
--- and in case the code is of use --- say,
for a future, updated stand-alone implemenation.

< Go to the 'FE HappyScripts' Download Link
and Instructions, below. >

( Skip the Introduction )

(the sad state of the file managers
of leading Linux distros)

Back in 2010, I expressed concern on the Contact page of this Freedom Environment software site that the Gnome 3.x developers were going to ruin the 'Nautilus scripts' capability of the Gnome 2.x Nautilus file manager.

Gnome-Nautilus :

Well sure enough, here I sit in 2012 October, and the situation has gotten so bad that several Linux distros (like Linux Mint and Ubuntu) are starting to develop their own file managers, because the Gnome 3.x people are taking off in a development direction that does not recognize the value (and original reasons) for many of the features in the Gnome 2.x desktop environment and its Nautilus 2.x file manager.

MATE-Caja :

There has been so much disgust in the Linux user community --- with the 'throwing many babies out with very little bathwater' situation of Gnome 3.x --- that a group of Argentinians started a 'fork' of Gnome 2.x.

They called their fork MATE (MAH-tay), and that fork included a fork of a Nautilus version 2.x file manager that they call Caja (CAH-hah --- Spanish for box or gift).

Linux Mint :

For about a year (2 releases, circa 2011), Linux Mint was using MATE and Caja as a backup option as Linux Mint held onto Gnome 2.x about a year longer than some of the other Linux distros --- and MATE and Caja were retained as a backup option as Linux Mint started developing its own desktop environment, based on adding features to Gnome 3.x (as well as revising some of its components).

Ubuntu-Unity :

The situation with Ubuntu's new 'Unity' desktop environment --- that they started rolling out in 2011, to use in place of Gnome 2.x and 3.x --- is just as bad as with Gnome 3.x.

The Unity desktop has caused as much disgust in the Linux user community as Gnome 3.x, and the Ubuntu Number-1 ranking on Distrowatch has suffered.

Linux Mint took the lead on Distrowatch when its lead developer, 'Clem', chose to stick with Gnome 2.x for at least one or two more releases.

LinuxMint-Cinnamon-Nemo :

Linux Mint is now developing its own desktop environment, called Cinnamon, and the lead developer 'Clem' recently announced (circa 2012 October) that the Mint team is developing its own file manager called 'Nemo'.

It is not surprising to me that Linux Mint is making their own file manager.

Linux Mint probably cannot count on using MATE-Caja as their file manager.

Who knows whether the MATE development team has the wherewithal to continue supporting and developing Caja?

    (There were already 'regressions' in the version of Nautilus from which Caja was forked, and those regressions are still there in early 2013 --- a couple of years after the fork. Can we count on the MATE development team to adequately support and develop Caja?)

Caja and Nautilus regressions :

In 2012, I am still using Nautilus 2.28 (on Ubuntu 9.10, the 2009 October release, 'Karmic Koala' --- the last good Ubuntu release in my humble opinion).

I have found that 'Caja' has some 'regressions' (features that no longer work) yet they work in Nautilus 2.28.

Hence it appears that Caja based their fork of Nautilus on a 2.x release after 2.28 --- and, probably, the Gnome developers had already started messing up the capabilities of Nautilus, in the 2.x series on the lead-up to Gnome 3.x.

I.e. the regressions are probably due to Gnome developers, not MATE developers.

Bottom line :

Bottom line is that I cannot depend on Caja as a substitute for the Nautilus file manager --- and the Gnome 3.x developers are on a path of really messing up the Nautilus file manager --- especially the features related to

  • the 'Nautilus scripts' capability

  • the list-view capability (Gnome 3.x is focused on icon-view)

  • the 'Open With > Other Application ...' capability --- where I have found 'regression'.

    It simply doesn't work anymore, and the response from Gnome to my bug report seems to be that this feature is bathwater and not a baby.

So it has become necessary for me to provide an alternative way to run the FE Nautilus scripts.

Unfortunately, the answer of Clem (the lead Linux Mint developer) to a question from a Linux Mint user on the 'Nautilus scripts' capability indicates that putting (or maintaining) a 'Nautilus scripts' capability in the 'Nemo' file manager is not a high priority.

Furthermore, it appears that, if a scripts capability is to be in 'Nemo', it will be an 'actions' capability that sounds like it is going to be similar to a capability in the Thunar file manager, which is used in the Xfce desktop environment.

I do not think that the Thunar scripting capability has the 'depth' of the Nautilus scripts capability --- that is, a capability to select from a multitude of scripts in a hierarchical directory structure of scripts.

Bottom of the bottom line :

The very bottom of the bottom line is that

  • I cannot depend on Nautilus 3.x or Caja to be able to run my 'feNautilusScripts' (that is, I cannot depend on the Gnome3 or MATE developers)

  • I cannot depend on Linux Mint or Ubuntu developers to develop a file manager that has the needed set of 'Nautilus scripts' capabilities that were present in Nautilus 2.28 (and before)

  • I can write file-system-navigator-and-file-selector GUI's, and script-selector GUI's --- and even complete file-manager GUI's in the Tcl-Tk scripting language.

    In fact, these GUI's can display directory lists of more than a thousand files much, much faster than the Nautilus or Caja (or KDE Dolphin) file managers.

Birth of 'feHappyScripts' :
(alias the 'feScriptApplicator')

Because of the events outlined above, I am bundling together

  • a Tcl-Tk file-system-navigator-and-file-selector GUI

  • a Tcl-Tk script-selector GUI

  • for use with the 450-plus 'feNautilusScripts'

and I am calling this new FE subsystem 'feHappyScripts' --- because I am so happy to be free of the mess that is the file managers Gnome-Nautilus 3.x, MATE-Caja, LinuxMint-Nemo, and Ubunutu-Unity-<whatever-its-file-manager-will-be-called>.

Eventually, I will put together a detailed description of the 'feHappyScripts' system, in these web pages.

(There is a description in a help file that comes with the installation.)

When I refer to the 'feScriptApplicator', I am referring to the combination of two GUI's:

  • a Tcl-Tk file-system-navigator-and-file-selector GUI
  • and a Tcl-Tk script-selector GUI.

It is the combination of those two Tcl-Tk GUI scripts (dubbed 'feScriptApplicator') that is intended to serve as a replacement for the 'Nautilus scripts' capability of the Gnome-Nautilus and MATE-Caja file managers.

For now, you can see descriptions of the 'feNautilusScripts' FE subsystem, consisting of 450-plus utility scripts, at the

Those pages will give an idea of the nature (and power) of 'Nautilus scripts'.

Below are a couple of images of preliminary versions of the file-selector and script-selector GUI's that will be used as the 'feScriptApplicator' in the 'feHappyScripts' system --- to access the 'feNautilusScripts'.

These GUI images came from a first, preliminary release, in the 'feHandyTools' FE system, of the select-one-or-more-files-and-select-a-script-to-apply capability --- a capability that I more briefly call the 'Nautilus scripts capability'.

See the 'A Previous Preliminary-Release' section below.

When the 'feHappyScripts' system is released in its first release as a stand-alone FE subsystem (done in 2013 March), the GUI's may have a somewhat different appearance.

The emphasis initially with the 'feHappyScripts' Tcl-Tk GUI's is to provide the select-one-or-more-files-and-select-a-script-to-apply capability.

Eventually, I plan to give the user the capability to 'prettify' the GUI's --- perhaps via an 'Embellish' button on the GUI's.

Eventually, I may develop the first of these 2 GUI's into a 'full-fledged' file manager --- with capabilities like 'Rename', 'Delete', 'Copy', 'Cut', 'Paste', 'Properties', etc.

But, for now, the main emphasis with the 'feHappyScripts' subsystem is to provide a means of running the 'feNautilusScripts'.

Note that you will still be able to use the 'feNautlilusScripts' as 'Nautilus scripts' and as 'Caja scripts' --- with the Nautilus file manager or the Caja file manager.

Now, in the event that Nautilus or Caja 'lose' the Nautilus scripts capability, you will still be able to run Nautilus scripts --- yours or those in the 'feNautilusScripts' FE system --- by use of this 'feScriptApplicator' of the 'feHappyScripts' system.

Detailed Documentation for 'feHappyScripts' :

You can see a relatively brief description of the first four FE subsystems at the FE Overview page.

Eventually a brief description of 'feHappyScripts' may be added there --- and a detailed description of the 'feHappyScripts' subsystem will eventually be put together on its own web page and a link will be placed here.

For now, we simply point out the following.

    In the 'feHappyScripts' system, a pair of Tcl-Tk GUI's (dubbed 'feScriptApplicator') are provided to allow for selecting one or more files and then selecting a 'Nautilus script' to apply to the selected file(s).

    The 'feScriptApplicator' (pair of GUI's) eliminates the need to use the Nautilus file manager --- or the Caja file manager --- to run a 'Nautilus script'.

The 'feHappyScripts' web-page description will add to the FE library of subsystem descriptions --- the previously released web-page descriptions being

A Previous Preliminary-Release (of these GUI's) :

Note that you/I can actually run 'feNautilusScripts' via the 2 GUI's above, because I implemented them in the 'feHandyTools' system around 2012 April --- when I got concerned about the direction that the Gnome developers were taking.

You can see a description of the 'backup method' of running the 'feNautilusScripts' at the how-to-run-feNautilusScripts-in-feHandyTools page.

Based on an initial release of 'feHappyScripts', I plan to eventually develop a more robust version of the first of the two main GUI's --- a version that avoids some issues with dealing with 'symbolic links' in file systems.

The preliminary release of the GUI's in the 'feHandyTools' system have some problems in that regard --- but are otherwise quite useful as a backup to the disintegration of the Nautilus file manager in the hands of the Gnome 3 developers.

The 'feHappyScripts' download file and install instructions are below.

As an alternative to a more detailed description of 'feHappyScripts' in a web page ...

There is an 'feHappyScripts' help file --- named 'feHappyScripts.hlp' --- in the 'helps' directory of the installation.

That file is shown via the 'Help' button on the initial, main GUI of the 'feHappyScripts' system.

(The FE 'xpg' text browser utility is used to show that large, plain-text help file.)

and Install Instructions :

The install file is a self-extracting shell script.

It would be nice if we could simply name it with a '.sh' suffix.

But it appears that most web browsers (or, actually, web servers) will assume that it is an all-text file, when, in fact, it has a gzipped tar file appended to the script portion of the file.

When a web browser asks for the file from the web server, if the file has the '.sh' suffix, the file will be downloaded in 'ascii' mode instead of 'binary' mode.

The binary data in the file (the gzipped tar stuff) gets corrupted.

    Web servers usually require a suffix on the file in an HTML page link, and the suffix is used by the web server to determine how to handle the file.

As a workaround, the '.sh' file is provided with a suffix of '.sh.exe' --- in hopes that the web-browser/web-server combo will think the file is a 'binary' file and download it in a 'binary' mode that does not corrupt the file.

    This seems to work. '.sh.exe'-suffixed files download fine for me, using the Seamonkey2 web browser on Ubuntu Linux --- on a little Acer netbook.

* feHappyScripts *

Right click here, on this link to the '.sh.exe' file, and, in the popup menu of your web browser, choose to save this self-extracting shell script in a download directory on your machine.

(Your web browser will offer an option such as 'Save Link Target As ...'.)


For good measure (that is, as an alternative), the install file is also provided with the suffix '.sh.tar'.

So if the '.sh.exe' file does not work for you (say, the web-server/web-browser 'dance' tries to do something 'funny' with files with a '.exe' suffix), right click here, on the '.sh.tar' file link, and, in the popup menu of your web browser, choose to save this self-extracting shell script in a download directory on your machine.

To see the quick version of installing 'feHappyScripts', go to the SUMMARY section at the bottom of this web page.

Go to the FE Videos page to see the install videos for the several FE subsystems.

The install procedure for each subsystem is similar --- namely, prepare and run a self-extracting script, in 3 quick steps.

    (There is no install video for 'feHappyScripts', yet.

    See the install video for 'feAppMenus'.

    The install procedure is the same for both systems.)

    The '2013mar08' release of 'feHappyScripts' is a 'preliminary' 'alpha' release.

    The directory-navigator-and-file-selector GUI of the 2013mar08 release of 'feHappyScripts' will not handle 'symbolic links' in a robust fashion.

    A later release will provide for more robust navigation and handle symbolic-links properly whether they point to directories or to 'regular' files --- and even when the links are 'broken'.

    I go ahead and release the 'feHappyScripts' in its current form because it is quite usable in most cases.

    For example, when I am using 'IMAGEtools' Nautilus scripts on directories of image files, I do not have symbolic links in the directories of image files and the image-tools (scripts) can be applied to selected files with no problems.

    I also release 'feHappyScripts' in this preliminary 'alpha' form so that I can install it on one or more of my netbook computers and be testing, using, and developing on a netbook --- say, when I am 'on the road'.

    I intend to have a release that handles 'symbolic links' robustly before the end of 2015. (This was done via a 'tkScriptApplicator' utility in the 'FILEmanagers' toolchest of the FE 'tkGooies' system, circa 2014 July.)

Th following 'SUMMARY' section gives a brief set of instructions on how to do the install from the self-extracting script file.

To see the install steps described in much more detail, see the feHappyScripts Installation Details page.

SUMMARY of the Install Steps :

The install takes only a few steps after downloading the self-extracting install file to your computer :

  • rename the file to remove the '.exe' or '.tar' suffix
    (leaving the '.sh' suffix intact)

  • make sure the '.sh' file has execute permission

  • double-click on the '.sh' file to execute it
    (or right-click and Open)

and all three of these steps can be done in Nautilus 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.

Go to the FE Videos page to see the install videos for several of the FE subsystems.

The install procedure for each subsystem is similar --- namely, prepare and run a self-extracting script --- in 3 simple, quick steps.

To make a desktop icon

To finish off the installation, you can make a desktop icon for 'feHappyScripts' --- in the usual way for your desktop environment (say Gnome or Xfce or LXDE or KDE or ...).

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 'feHappyScripts', and in the 'Command:' field, enter the name


    where $HOME represents the full name of your home directory.

      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 'bin' directory of $HOME/apps, and click on the '' filename.

    Then click 'OK' and you should now have an 'feHappyScripts' icon on your desktop.

    Click on it to see the initial 'feHappyScripts' GUI --- a directory-navigator-and-file-selector GUI, with an 'Appy-a-Script' button.

      If you want to use a different icon from the standard Gnome launcher icon --- a platform-on-a-spring or a rocket or whatever, depending on the Gnome release or depending on your Linux distro --- click on the launcher icon in the upper left of the 'Create Launcher' window and choose a different icon, before you press the OK button on the 'Create Launcher' window.

      There are some icons provided in the 'feHappyScripts' installation, in the directory


      You can navigate to that directory and choose an icon.

      There is an icon of a big smile there:

      In fact, you could right-click on this image and use an option such as 'Save Image As...' to save the image to your local computer.

      Then put that file in an appropriate directory and use it in the 'Create Launcher' dialog.

      (Resize the image if necessary. In fact, you can do that with a RESIZE script in the 'IMAGEtools' group of 'feNautilusScripts'.)

For more info on the nature and features of the 'feHappyScripts' subsystem, and 'licensing' info, please see the 'feHappyScripts.hlp' text file in the 'helps' directory of the 'feHappyScripts' installation.

That file is shown via the 'Help' button at the bottom of the initial, main 'feHappyScripts' GUI.

FE Happy Scripts . . . . Software to Tickle
(and Tcl) Your Fancy.

Bottom of this
FE 'HappyScripts' subsystem

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. >

Page history:

Page was created 2012 Oct 22.

Page was changed 2014 Dec 07.

Page was changed 2018 Aug 16.
(Added css and javascript to try to handle text-size for smartphones, esp. in portrait orientation.)

Page was changed 2019 Jul 23.
(Specified image widths in percents to size the images according to width of the browser window. Did some minor text reformatting for readability. Added some notes on 'tkGooies' replacing 'feHandyTools'.)