How can I add Processing to the Unity launcher?
Install Processing
Once you have downloaded Processing it first needs to be unpacked.
tar zxvf processing-2.1-linux64.tgz
The processing
file then needs to be copied to /usr/bin
cd processing-2.1
sudo mv processing /usr/bin/
The rest of the files then need to be copied to the /opt
directory.
sudo mkdir /opt/processing
sudo cp -r processing-2.1/* /opt/processing/
The tldp website provides a great explanation of why to install to /opt
This directory is reserved for all the software and add-on packages that are not part of the default installation. For example, StarOffice, Kylix, Netscape Communicator and WordPerfect packages are normally found here. To comply with the FSSTND, all third party applications should be installed in this directory. Any package to be installed here must locate its static files (ie. extra fonts, clipart, database files) must locate its static files in a separate /opt/'package' or /opt/'provider' directory tree (similar to the way in which Windows will install new software to its own directory tree C:\Windows\Progam Files\"Program Name"), where 'package' is a name that describes the software package and 'provider' is the provider's LANANA registered name.
Although most distributions neglect to create the directories /opt/bin, /opt/doc, /opt/include, /opt/info, /opt/lib, and /opt/man they are reserved for local system administrator use. Packages may provide "front-end" files intended to be placed in (by linking or copying) these reserved directories by the system administrator, but must function normally in the absence of these reserved directories. Programs to be invoked by users are located in the directory /opt/'package'/bin. If the package includes UNIX manual pages, they are located in /opt/'package'/man and the same substructure as /usr/share/man must be used. Package files that are variable must be installed in /var/opt. Host-specific configuration files are installed in /etc/opt. Interpret this as you wish, but to my understanding you do this if you want to run a self-contained package i.e. one that contains all that is needed within the download itself.
Next it needs to be linked to java
cd /opt/processing
ln -s /usr/lib/jvm/java-6-sun java
And finally to create a link
sudo sed -i 's/APPDIR=`readlink -f "$0"`//'g /usr/bin/processing
sudo sed -i 's/`dirname "$APPDIR"`/\/opt\/processing/'g /usr/bin/processing
Create Unity launcher
With Processing now "installed" the launcher can now be made. The Ubuntu website provides a good tutorial of this, which is summarised below. First, create the launcher
sudo touch /usr/share/applications/processing.desktop
And then open it for editing
sudo gedit /usr/share/applications/processing.desktop
With the file now open fill it with the following information and save.
[Desktop Entry]
Version=2.1
Name=Processing
Comment=graphics and animation language
Exec=processing
Icon=/opt/processing/lib/icons/pde-256.png
Terminal=false
Type=Application
Categories=AudioVideo;Video;Graphics;
With that now saved you should be able to find Processing in the Unity Dash
Upgrading will require you to just copy over the files in /opt/processing with the new ones, though do check that the directory and file structure is the same as before.
Associate .pde files with Processing
Finally, to associate .pde files with Processing - so double-clicking a .pde launches Processing - you need create a new MIME type and associate Processing with that type.
The GNOME dev center provides an explanation of how to create a new MIME type. First, create the new MIME type
sudo touch /usr/share/mime/packages/processing.xml
Then open it for editing
sudo gedit /usr/share/mime/packages/processing.xml
Put the following data in that file and then save it
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="text/x-processing">
<comment>Proecssing source code</comment>
<sub-class-of type="text/x-csrc"/>
<glob pattern="*.pde"/>
</mime-type>
</mime-info>
Update the MIME database
sudo update-mime-database /usr/share/mime
Finally, associate the new MIME type with Processing. The default applications list is stored in a file called defaults.list
sudo gedit /usr/share/applications/defaults.list
Add text/x-processing=processing.desktop
somewhere in that file.
Now, when you double-click a .pde file it'll open the file Processing.