Ubuntu 16.04 — Programming Tools

This is a continuation of my notes on installing Ubuntu 16.04. In this post, I install the programs that I use for programming and technical work.

Series Navigation:

Basic Tools

Here are a few basic tools that I use that are easy to install:

  • GVim: Power text editor — vim is the CLI version, and vim-gnome is the GUI version (I like both for different situations)
  • Git: Version control system … git-cola is the GUI client, installs CLI program as a dependency
  • Meld: compare tool like “Beyond Compare”, etc.  nautilus-compare is an add on to launch from the file manager

[sourcecode]
sudo apt-get install \
vim \
vim-gnome \
git-cola \
meld \
nautilus-compare
[/sourcecode]

For vim, I have some plugins in my plugin directories and a customized configuration. So, I restored my ~/.vim directory and /.vimrc. I changed the directory for the backup files as well. I have this in my .vimrc:

[sourcecode]
set bdir=~/.vimtmp
set directory=~/.vimtmp
[/sourcecode]

So, I needed to create a ~/.vimtmp directory.

Web Development

Brackets has become my favorite editor for developing Angular, Javascript, and HTML.  It is an IDE build by Adobe.

I used WebUpd8’s repository to install Brackets:

[sourcecode]
sudo add-apt-repository ppa:webupd8team/brackets
sudo apt-get update
sudo apt-get install brackets
[/sourcecode]

Note: If you don’t install from WebUpd8’s repository, you will need to download and install the libgcrypt11 package from an older version of Ubuntu. See WebUpd8’s article for more information, but I just installed the 64-bit one from here. (I had to do that to test an issue with Brackets 1.7).

After installing the main Brackets application, I installed the following plugins:

I keep Node JS for various tools such as npm and bower. I’ve quit trying to use Bower PHP.

So, this installs: Node JS, the NPM installer, Bower, and Protractor

[sourcecode]
sudo apt-get install nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo apt-get install npm
sudo npm install bower -g
sudo npm install -g protractor
sudo npm install -g gulp
[/sourcecode]

Note: For some reason, the package installs node as nodejs. I had to run the ln command to make a link to node. Previously I had learned that Bower wouldn’t work without that.

Here are the versions:

[sourcecode]
$ nodejs –version
v4.2.6
$ bower –version
1.7.9
$ protractor –version
Version 3.3.0
[/sourcecode]

FYI: In order to list the versions, I used the ls command:

[sourcecode]
$ npm -g ls –depth=0
/usr/local/lib
├── bower@1.7.9
├── gulp@3.9.1
├── jspm@0.16.35
├── protractor@3.3.0
├── typescript@1.8.10
└── typings@1.0.4
[/sourcecode]

Java

I dropped off installing Java 7. I just used Web Upd8’s repository.

[sourcecode]
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
[/sourcecode]

Soap UI

I downloaded Soap UI from their website.

I just ran the shell script without sudo/root access.

[sourcecode]
sh SoapUI-x64-5.2.1.sh
[/sourcecode]

I accepted the defaults going through the wizard. On the previous version of Ubuntu, I had to add a parameter to the SoapUI shortcut to get it to work, but I didn’t have to do that this time.

As a note to myself, I’ll have to try Storm later.

Gluon Scene Developer

I downloaded the Scene Developer from the Gluon website. I downloaded the 64-bit version, and installed it from the commandline with:

[sourcecode]
sudo dpkg -i scenebuilder-8.2.0_x64_64.deb
[/sourcecode]

Eclipse

I found an issue link claiming that the Eclipse Mars Release was added to Ubuntu Make. Unfortunately, I couldn’t get Make to install Eclipse at all. So, I just went the manual route. In fact, I found that Eclipse now has an installer to make matters easier.

[sourcecode]
tar -xzvf eclipse-inst-linux64.tar.gz
cd eclipse-installer
./eclipse-inst
[/sourcecode]

I accepted the defaults on the installer.

Update 6/8/2016: To get it to fully work, I had to update the eclipse.ini file as I learned from an AskUbuntu post.  I updated eclipse/java-latest-released/eclipse/eclipse.ini, and added the following two lines after the first two:

[sourcecode]
–launcher.GTK_version
2
[/sourcecode]

After opening Eclipse, I installed the plugins from Help > Install New Software. (using Luna – http://download.eclipse.org/releases/luna):

  • Collaboration > Command Line Interface for Java Implementation of Git
  • Collaboration > Eclipse GitHub Integration with task focused interface
  • Collaboration > Java Implementation of Git
  • Mylyn Integrations > Mylyn Context Connector: Eclipse IDE
  • Mylyn Integrations > Mylyn Context Connector: Java Development
  • Mylyn Integrations > Mylyn Context Connector: Plug-in Development
  • Mylyn Features > Mylyn Task List
  • Mylyn Features > Mylyn Task-Focused Interface
  • Mylyn Integrations > Mylyn Versions Connector: Git
  • Web, XML, Java EE and OSGi Enterprise Development > Eclipse Web Developer Tools
  • Web, XML, Java EE and OSGi Enterprise Development > Eclipse Java Web Developer Tools
  • Web, XML, Java EE and OSGi Enterprise Development > Javascript Development Tools
  • Web, XML, Java EE and OSGi Enterprise Development > PHP Development Tools

Finally, to make developing with Java FX easier, I installed the e(fx)clipse plugin for Eclipse.  Their install page is pretty good and detailed.

I just added two sites to Window > Preferences under Install/Update > Available Software:

  • http://download.eclipse.org/efxclipse/updates-released/2.3.0/site
  • http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/

On the Install Dialog (Help > Install Software), I picked e(fx)clipse – install > e(fx)clipse – IDE.  Then, I just let it do it’s thing.

SQL Developer

I downloaded SQL Developer from Oracle’s SQL Developer website.  They are on version 4.1.1.19.59 now.  I downloaded the “Other Platforms” version.  Then, I used the sqldeveloper-package program to install it.

sudo apt-get install sqldeveloper-package
make-sqldeveloper-package -b output \
       sqldeveloper*.zip
sudo dpkg -i sqldeveloper*all.deb

Resources

Leave a Comment

Your email address will not be published. Required fields are marked *