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.
This is a continuation of my series of notes on my install of Ubuntu 15.04 on my laptop. The full list of posts is on this page. Previously, in the last post, I installed some media programs. In this post, I’ll install the programming tools that I use.
I really like using the Gvim text editor for many editing tasks. It’s not a full fledged IDE, but it’s great for single files. It’s a simple install from the Software Center — the vim-gnome package.
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:
<br /> set bdir=~/.vimtmp<br /> set directory=~/.vimtmp<br />
So, I needed to create a ~/.vimtmp directory.
I use Git for tracking my source code changes for a few projects. I don’t work in it that much, so it is nice to have a GUI for certain things. The git-cola package has done that nicely in the past. Installing it also installs the actual git application.
I used WebUpd8’s repository to install Brackets:
<br /> sudo add-apt-repository ppa:webupd8team/brackets<br /> sudo apt-get update<br /> sudo apt-get install brackets<br />
After installing the main application, I installed the “Brackets Git” plugin.
I have been doing a bit of web programming, and Node JS seems to come up constantly. For example, everything wants to be installed with bower. I tried to use Bower PHP for a bit, but I quite fighting it. I’ll just install bower even if I don’t have it on my website. I shouldn’t be developing there anyway.
So, this installs: Node JS, the NPM installer, Bower, and Protractor
<br /> sudo apt-get install nodejs<br /> sudo ln -s /usr/bin/nodejs /usr/bin/node<br /> sudo apt-get install npm<br /> sudo npm install bower -g<br /> sudo npm install -g protractor<br />
Note: For some reason, the package installs node as nodejs. I had to run the ln command to make a link to node. Bower wouldn’t work without that.
Here are the versions:
<br /> $ nodejs --version<br /> v0.10.25<br /> $ bower --version<br /> 1.5.2<br /> $ protractor --version<br /> Version 2.2.0<br />
I found that version 0.12 is released, and there are some nice instructions for installing that. I didn’t go down that path.
<br /> sudo add-apt-repository ppa:webupd8team/java<br /> sudo apt-get update<br /> sudo apt-get install oracle-java7-installer<br /> sudo apt-get install oracle-java8-installer<br />
I installed the Oracle 8 installer because SQL Developer says it needs it.
Downloaded from the Soap UI website. Ran
<br /> sh SoapUI-x64-5.2.0.sh<br />
Note: didn’t use sudo.
To test from the command-line:
I got a core dump, so I tried this:
<br /> JAVA_TOOL_OPTIONS="" /bin/sh "/home/skp/SmartBear/SoapUI-5.2.0/bin/SoapUI-5.2.0"<br />
I updated my shortcut with MenuLibre to include that variable:
After that, it worked just fine.
Apparently, the Scene Builder from Oracle is gone. Instead Gluon has taken on maintaining a fork of the Scene Builder. They now offer a Linux Deb file on their Download Page.
Since the last time I installed Eclipse, Ubuntu has now come out with Ubuntu Make. So, I decided to give that a whirl.
I ran these commands
<br /> sudo apt-get install ubuntu-make<br /> umake ide eclipse<br /> umake android<br />
The only question that it asked was the path where to install…
Choose installation path: /home/skp/tools/ide/eclipse
Choose installation path: /home/skp/tools/android/android-studio
I was a little disappointment. On the Eclipse Download page, it looks like the version is a little behind.
After opening Eclipse, I installed the plugins from Help > Install New Software. (using Luna – http://download.eclipse.org/releases/luna):
I just added two sites to Window > Preferences under Install/Update > Available Software:
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.
I can’t get the 2.0 or the 2.1 versions to install in Luna. I had to install the 1.2 version.
I downloaded SQL Developer from Oracle’s SQL Developer website. They are on version 18.104.22.168.59 now. I downloaded the “Other Platforms” version. Then, I used the sqldeveloper-package program to install it.
<br /> sudo apt-get install sqldeveloper-package<br /> make-sqldeveloper-package -b output \<br /> sqldeveloper*.zip<br /> sudo dpkg -i sqldeveloper*all.deb<br />
Note: on my first attempt, I got this error:
dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 7)
I fixed that with:
sudo apt-get install build-essential
Meld is an important tool for comparing text files. I use it mostly for comparing source code or programming-related projects, so it fell under this category. It’s an easy install from the Software Center.
SmartBear Community: Soapui not starting on Ubuntu 15.04
WebUpd8: FIX MISSING LIBGCRYPT11 CAUSING SPOTIFY, BRACKETS AND OTHER APPS NOT TO WORK / INSTALL IN UBUNTU 15.04
Stackoverflow: Where is the JavaFX scene builder gone?
WebUpd8: UBUNTU DEVELOPER TOOLS CENTER RENAMED TO UBUNTU MAKE, SEES NEW RELEASE
Ubuntu Wiki: ubuntu-make
StackOverflow: Installing Bower on Ubuntu
I’ve been having trouble opening WebEx because of a Java error message. The “security settings have blocked the application”. Here’s what I did to fix it…
Your security settings have blocked an application signed with an expired or not-yet-valid certificate from running.
These are just some quick notes on the various Java programs that I install. I’m sorry the notes are not very complete. I’ll do better next time, but I thought these notes might still have some value.
These were the steps that I went through to configure my server after installing Ubuntu. (just to help remember)
My first requirement for a server is that I be able to get to it from my laptop. SSH will allow me to both open remote terminal sessions and copy files from nautilus.
I simply installed this ssh metapackage from the Software Center.
My first attempt to connect brought me this message:
</p> <p>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<br /> @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @<br /> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<br /> IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!<br /> Someone could be eavesdropping on you right now (man-in-the-middle attack)!<br /> It is also possible that a host key has just been changed.
This was because I was reinstalling my server, and I had connected to the previous installation with my laptop. The fix was easy (it was actually in the message):
ssh-keygen -R israel
To set it up to where I could connect without a password, I ran this command:
I have an HP printer, so I chose to install the HPLIP Toolbox from the Software Center.
I could launch it through ssh with the command “hp-toolbox”. Then, I chose the Setup Device option off the Device menu for my printer.
I selected USB:
Then, I selected the device:
Then, I entered the information about the printer:
This added, the printer. Next, I made it the default printer:
To make the printer accessible over the network, I had to tweak the cups configuration. I edited the /etc/cups/cupsd.conf. I added a Listen line with the machine’s hostname.
I also turned “Browsing” on to make it easier to discover the printer.
To make the network name resolve correctly, I removed this line from /etc/hosts:
Finally, I restarted the cups service with the command:
sudo service cups restart
That gave me some access, but I still had issues. Then, I found an easier way to do it. I ran the the printer configuration:
On the printer dialog, there is a Server > Settings option.
There, I checked the sharing options to open things up for my private network.
I have a personal application that I use at home, and Java is a requirement for that. I took the easy route and installed Java using Web Upd8’s method. That just meant running these three commands:
sudo add-apt-repository ppa:webupd8team/java<br /> sudo apt-get update<br /> sudo apt-get install oracle-java8-installer
I confirmed that it installed with:
</p> <p>skp@israel:~$ java -version<br /> java version "1.8.0-ea"<br /> Java(TM) SE Runtime Environment (build 1.8.0-ea-b55)<br /> Java HotSpot(TM) Client VM (build 24.0-b22, mixed mode)<br /> skp@israel:~$ javac -version<br /> javac 1.8.0-ea
Finally, I needed to add a mysql user. I don’t need to install mysql because it’s embedded into my application, but I do need the user. I used this command:
useradd -r mysql
I just ran across a couple of encouraging comments on the Net…
Here’s the first link:
I found this in the comments:
Is Scene Builder going to be integrated with Netbeans and Eclipse in future?
Ya, we designed it so that the SceneBuilder could be embedded in IDEA, Eclipse, and NetBeans. Obviously we’ll be doing the work on NetBeans and hopefully Thomas or somebody in the community will plug it into Eclipse
I also found this ticket. (Maybe something to watch?)
That project has an installation page. I’ll have to try that out. For now, let me just write it down…
I did find a nice tutorial for using JavaFX with Eclipse (its a little old because it doesn’t list Linux):
The Linux files are here:
And, while I am at it, I want to use Swing with JavaFX, and this tutorial looks like a great place to start:
Installing Java was pretty straightforward and easy this go-around. Since the runtime was so easy, we’ll let this post go through installing all the different pieces for a complete development environment: Eclipse, Android SDK, JavaFX SDK, etc.
So, here’s what I did…
At one point, I thought WebEx was working natively in 64-bit Linux. Either I am mistaken or it no longer works on 64-bit. So, I decided to dust off my old 32-bit hack where you install 32-bit versions of Java and Firefox to make it all work.
Earlier, I had thought I would use my regular 64-bit installation, and I had posted my hooking Java up to Firefox for WebEx. I was rightly corrected on troshlyak’s blog. The 64-bit will work, but you can’t share your desktop or view another’s desktop. So, I am back to the old way. So, here’s what I did…
I downloaded the two programs:
I created this script in ~/bin/webex/env.sh:
<br /> #!/bin/sh</p> <p>export WEBEX_HOME=~/bin/webex<br /> export JDK_HOME=$WEBEX_HOME/jdk1.7.0_01<br /> export JAVA_HOME=$JDK_HOME/jre<br /> export FIREFOX_HOME=$WEBEX_HOME/firefox<br /> export MOZ_PLUGIN_PATH=$FIREFOX_HOME/plugins<br /> export PATH=$FIREFOX_HOME:$JAVA_HOME/bin/:$JDK_HOME/bin/:$PATH<br />
To make sure you have it right, you can check it like this:
<br /> [skp@pecan bin]$ . ~/bin/webex/env.sh<br /> [skp@pecan bin]$ which java<br /> ~/bin/webex/jdk1.7.0_01/jre/bin/java<br /> [skp@pecan bin]$ java -version<br /> java version "1.7.0_01"<br /> Java(TM) SE Runtime Environment (build 1.7.0_01-b08)<br /> Java HotSpot(TM) Server VM (build 21.1-b02, mixed mode)<br />
Now, you can link in the Java plugin like this:
<br /> mkdir $MOZ_PLUGIN_PATH<br /> ln -s $JAVA_HOME/lib/i386/libnpjp2.so $MOZ_PLUGIN_PATH/libnpjp2.so<br />
Now, fire up firefox. Note you may be asked to create the WebEx profile. Make sure you create a profile with the same name you use on the command line so it won’t ask you again.
<br /> firefox --no-remote -P WebEx http://java.com/en/download/testjava.jsp<br />
This should give you a successful Java applet working on the test page. You also should see the architecture as i386.
Finally, I created a ~/bin/webex.sh script to launch webex easily for me.
<br /> #!/bin/bash</p> <p>cd ~/bin/webex<br /> . ./env.sh<br /> firefox --no-remote -P WebEx<br />
And you should be good to go.