Ubuntu Raring Software Development
Spyder is a powerful interactive Open Source development environment for the Python language with advanced editing, interactive testing, debugging, and introspection features.
sudo apt-get install spyder
Eric is a full featured IDE and Python and Ruby editor, written in Python. It is based on the cross-platform Qt Gui toolkit, integrating the highly flexible Scintilla editor control. It is a quick and dirty editor as well as a professional project management tool (integrating many advanced Python features). Eric4 includes the integration of a downloadable plug-in system.
sudo apt-get install eric
Kompozer Web Development Editor
sudo apt-get install kompozer
Quanta Plus (Web IDE)
Quanta Plus is an integrated development environment integrated with the KDE desktop. It allows webpage development, database design, and XML design and scripting, for example, using multiple development tools. The latest stable version is 3.5, however, and integrates with the KDE 3.5 environment (Ubuntu Hardy Heron). You should therefore use Ubuntu Hardy Heron with this product. (There is also a commercial version (Quanta Gold), also oriented towards KDE 3).
sudo apt-get install quanta kompare kxsldbg cervisia
sudo apt-get install netbeans
BlueFish Web Development Editor
sudo apt-get install bluefish
Gobby (Multi-user development)
Gobby is a free, multi-platform open source collaborative editor supporting multiple documents in one session and a multi-user chat. Install:
sudo apt-get install gobby
Eclipse is a free open-source cross-platform integrated development environment with plugin support for a large set of programming languages, e.g. Java, C/C++, Python, PHP.
sudo apt-get install eclipse
- See this section for a list of open-source game engine development environments.
Version control software
Copies of software being developed at many different locations require a method to ensure that the multiple distributed copies remain synchronized. This can be done using a central repository or using a distributed synchronization technique. For further information, see the official Ubuntu documentation. Several version control platforms exist:
- Bazaar is sponsored by Canonical and also allows distributed synchronization. Also see the official Ubuntu documentation. Install Bazaar with a GTK-based GUI and Nautilus integration:
sudo apt-get install bzr bzr-gtk nautilus-bzr
- Subversion. Now part of Apache, this is one of the most widely used systems and uses a central repository for synchronization. Also see the official Ubuntu documentation. Install along with Nautilus integration scripts:
sudo apt-get install subversion nautilus-script-collection-svn
- Mercurial (hg) is a newer, low-resource version control system. Install:
sudo apt-get install mercurial
- CVS was previously the most widely used system. Also see the official Ubuntu documentation. Install:
sudo apt-get install cvs
- TkCVS is a GUI frontend for both CVS and Subversion. Install:
sudo apt-get install tkcvs
- Git allows distributed synchronization and is currently one of the most widely used systems. Also see the Ubuntu community documentation. The git client can be installed:
sudo apt-get install git
- and the gitosis server software:
sudo apt-get install gitosis
- GitK is a Tk-based Git tree visualizer. Install:
sudo apt-get install gitk
SparkleShare (Git frontend)
sudo add-apt-repository ppa:warp10/sparkleshare sudo apt-get update sudo apt-get install sparkleshare
(K)Ubuntu uses Debian (.deb) packages. Individuals or organizations can create repositories for personal or specialized use. See the Debian wiki introduction. Also see this Ubuntu community advice and this.
DebArchiver is a command-line utility that allows the creation of a folder-based repository. Instructions are from man debarchiver (in a command-line terminal). Install:
sudo apt-get install debarchiver
FTP (online file transfer)
- See this section on FTP servers for more information about vsftp and proftp.
- See this section on FTP clients for more information about FileZilla.
- Also see these FTP tips.
WebDAV (online folders)
See this section on WebDAV for more information about WebDAV servers and clients.
Dropbox (online cloud storage)
Dropbox is a free but proprietary online remote hosting service for private files (similar to the free open-source alternative SparkleShare). Be careful of any storage solution not under your complete control (especially proprietary solutions); they are insecure and should be used for temporary storage of non-critical files only (as an alternative to sending files by email).
- Install prerequisities (several may already be installed on your system):
sudo apt-get install sqlite3 python python-gpgme
- Download and install the Dropbox client daemon:
wget -O dropbox-current_amd64.deb https://www.dropbox.com/download?dl=packages/ubuntu/dropbox_1.6.0_amd64.deb sudo dpkg -i dropbox-current_amd64.deb sudo rm dropbox-current_amd64.deb
- or for the 32-bit version:
wget -O dropbox-current_i386.deb https://www.dropbox.com/download?dl=packages/ubuntu/dropbox_1.6.0_i386.deb sudo dpkg -i dropbox-current_i386.deb sudo rm dropbox-current_i386.deb
- The default Dropbox client installation will also install an add-on plugin for the Nautilus file manager. If not, install the plugin:
sudo apt-get install nautilus-dropbox
- See this article if interested in using Dropbox as a webseed for BitTorrent. Because Dropbox is insecure, you may wish to consider installing Dropbox within a quarantined virtual machine and run the virtual machine containing Dropbox only when connected to a secure Internet connection (such as through Tor).
Google Drive (online cloud storage)
Google Drive is a free but proprietary online remote hosting service for private files (similar to the free open-source alternative SparkleShare). Be careful of any storage solution not under your complete control (especially proprietary solutions); they are insecure and should be used for temporary storage of non-critical files only (as an alternative to sending files by email).
- Grive is a free, open-source command-line API for Linux systems to interface with Google Drive.
- Download and install a 32-bit or 64-bit .deb package here.
sudo apt-get install sphinxsearch