PythonCAD: Open Source 2D CAD Software (Part 1)
This is my tenth post, and my first reviewing a free and open source CAD package. Considering that the About page says I'm a "staunch supporter of FOSS", well it was about time! Since writing about the installation process took longer than anticipated, I decided to do a two-parter: next part will be about running and using the software.
PythonCAD is a simple - I'd even say rudimentary - 2D CAD app which is programmed, as one might guess, in Python. It's a free project licenced under the GPL. One of its goals is to provide a scriptable application.
The project was initially developed continuously from 2002 to 2007, with no less than 36 releases in that span, then it was abandoned. In May 2009, the project was picked up by a new maintainer, how a few months after published a new release, in Dec. 2009.
This 37th and latest version is still a development release. It can be downloaded from SourceForge here as a .tar.gz archive.
(Please note: there is also a pythoncad package available in the Debian and Ubuntu repositories, which would be a lot more easier, and really quick to install through the Synaptic package manager or the Ubuntu Software Centre. But since this package is built from the DS1-R35 release from way back in 2006, I chose to install the latest R37 from the project's website; it supposedly eliminates bugs and adds a few more features.)
Installation
Those who don't like to deal with permissions management may prefer to extract the archive in their home folder (/home/username), which will make sudo use unnecessary. I chose to extract it in /opt so my home folder wouldn't get cluttered. The /opt folder requires root access, so using the terminal is in that case mandatory. If the file was saved into the home folder, the terminal command should read as such:
$ sudo tar xvf PythonCAD-DS1-R37.tar.gz -C /opt
Then, change the directory to the one just created:
$ cd /opt/PythonCAD-DS1-R37
And execute the python install script:
$ sudo python setup.py install
Now, to launch the app from the terminal without entering the complete path, we copy the gtkpycad.py script to /usr/local/bin and change permissions to it:
$ sudo cp gtkpycad.py /usr/local/bin $ sudo chmod a+x /usr/local/bin/gtkpycad.py
Lauching from the terminal
$ gtkpycad.py
Creating a launcher in the GUI (GNOME)
I usually don't care much for launching apps through the terminal, more so when they are graphical apps! So I figured I'd create a launcher in Ubuntu's Applications menu by going to System > Preferences > Main Menu, make a new "CAD" menu to contain it, then click on "New element". But after many tries, I was unable to get a launcher to execute gtkpycad.py. So I took an alternate route, by creating a new shell script with the Gedit text editor, which contained this:
#!/bin/sh cd /opt/PythonCAD-DS1-R37 python gtkpycad.py
I saved it under the name pycadlaunch.sh, and copied it to the PythonCAD folder, with read access to all users, and the execute as a program option:
$ sudo cp pycadlaunch.sh /opt/PythonCAD-DS1-R37 $ sudo chmod a+x /opt/PythonCAD-DS1-R37/pycadlaunch.sh
A working launcher can now be created, either on the desktop or in the main menu, with these properties:
- Type: Aplication
- Name: PythonCAD-DS1-R37
- Command: /opt/PythonCAD-DS1-R37/pycadlaunch.sh
- Comment: Simple 2D CAD App

There is a personalized icon supplied in the PythonCAD-DS1-R37 folder. To select it, just click on the generic launcher icon button; this opens the Browse icons window. Then click on the Browse... button and navigate to the folder. Select the icon, click on the OK button, that's it, you're done.

In the second part: I review PythonCAD's interface and use.
- Classification:

