Dec 15 2006

HOWTO: Installing Netbeans 5.5 on Ubuntu

Tag: HOWTO, Java, Linux, Software Engineering, UbuntuDan @ 11:19 pm

Netbeans is not currently available in the Ubuntu/Debian repositories. I believe this is because it uses the Sun CDDL licence which is considered incompatible with the GPL.

However, as an end-user you may wish to use Netbeans despite that. Although it comes with a neat installer wizard I personally prefer to try to get native .deb packages where possible in order to get native package management and menu/launcher icons. I found a debian packaged version by Daniel Baumann. It appears he put it on the Debian new queue but is wasn’t accepted. He’s made the prepacked binaries available here:

http://archive.daniel-baumann.ch/debian/packages/netbeans/5.5-1/

However, I wanted to learn something so I decided to try building a package using the current 5.5 source dist from Netbeans archive and Daniel Baumann’s debian package source. Here are the steps I took.

Building and Packaging Netbeans 5.5 for Ubuntu

1) Grab daniel-baumann’s patch here

netbeans_5.5-1.diff.gz

2) Get the Netbeans 5.5 source from:

http://www.netbeans.info/downloads/all.php?b_id=2180&src=1

I picked up the ’source’ tgz file from the table of links at the bottom of the page.

3) Untar the sources

  1.  
  2. mkdir netbeans
  3. cd netbeans
  4. tar -zxf netbeans-5_5-ide_sources.tar.gz
  5.  

4) Now apply the patch to the sources

  1.  
  2. # first decompress the patch
  3. gunzip netbeans_5.5-1.diff.gz
  4. cd netbeans-src
  5. patch -p1 < ../netbeans_5.5-1.diff
  6.  

The patch simply installs the debian packaging kit into the Netbeans 5.5 src directory. After applying you will find the new files under the newly created debian directory. For more info on what these files do see The Ubuntu Packaging Guide or the Debian New Maintainers Guide.

6) Next build the packages and install

  1.  
  2. debuild -uc -us
  3. sudo debi
  4.  

When debuild completes there will be 2 .deb files left in the directory above:

netbeans-ide_5.5-1_all.deb
netbeans-platform_5.5-1_all.deb

debi installs both files by reading the netbeans_5.5-1_i386.changes file which will have been generated in the directory above.


Dec 15 2006

HOWTO: Packaging Java 6 for Ubuntu

Tag: HOWTO, Java, Linux, Software Engineering, UbuntuDan @ 10:18 pm

Update: As of Fri 19th Jan 07 Java 6 has now been officially included into the Dapper Backports repository. See it’s package page.

Today I found out how to package Java for Ubuntu/Debian. I wanted to see if a .deb package file of Java 6 was available for Ubuntu I found details on creating one in the following forum post: Re: JDK 6 Available…now when is a deb coming?. The instructions there are great except they don’t work perfectly for Dapper so here are the modified steps for Dapper:

1) Patch ‘java-package’

The Debian Java Maintainers have created a tool make-jpkg which is a neat script to take the Sun Java native linux .bin installer and turn it into a .deb package. This script comes in the ‘java-package’ package which is in the multiverse repo in Ubuntu.

Dapper stocks the 0.27 version which does not support conversion of Java 6 yet. However, mlind attached a patch to his forum post (link above) to add support for Java 6 to java-package version 0.28. Luckily it’s not difficult to tweak the patch for 0.27. Here’s the modified version of the patch:

java-package_sun-java6.dapper.patch

Here’s the instructions on how apply the patch and build the updated package:

  1.  
  2. mkdir java-package
  3. cd java-package
  4. sudo apt-get build-dep java-package
  5. apt-get source java-package
  6. cd java-package-0.27
  7. patch -p1 < ../java-package_sun-java6.dapper.patch
  8. debuild -b -us -uc
  9. cd ..
  10. sudo dpkg -i java-package_0.27local0_all.deb

2) Package sun-jdk6

Now that you’ve updated java-package it’s time to package Java 6. First download Java 6 from Sun. You need to download the Linux self extracting file (jdk-6-linux-i586.bin). Here are the instructions on building it (taken from the forum post listed above).

  1.  
  2. mkdir sun-jdk6
  3. cd sun-jdk6
  4. # put jdk-6-linux-i586.bin into this directory
  5. make-jpkg jdk-6-linux-i586.bin
  6. dpkg -i sun-j2sdk1.6_1.6.0_i386.deb
  7. sudo update-alternatives –config java
  8. # select the new Java 6 installation as the provider of java
  9. java -version
  10. # Output of the above command should be
  11. # java version "1.6.0"
  12. # Java(TM) SE Runtime Environment (build 1.6.0-b105)
  13. # Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)

Jul 18 2006

HOWTO: screen command quickstart

Tag: HOWTO, Linux, System AdministrationDan @ 1:32 pm

Screen is a window manager for unix shells. It’s useful when logged in to a remote server because it allows you to have more than one shell running through the same terminal window. So you don’t have to log in multiple times through SSH to, for example, run a long running command in one shell and continue working in another.

Screen screen-shot

This is just a quick note to help remember the most common commands. For more information see man screen.

Getting in and out

Start screen

Type screen in the terminal
Detach from a screen session (session remains open)

Ctrl+a d
Reattach to an open screen session

screen -D -R
Quit screen completely (session closed)

Ctrl+a Ctrl+\

Controlling windows

Create a new window with a shell and switch to it:

Ctrl+a c
List currently open windows for selection:

Ctrl+a "
Close current window:

Ctrl+a k

Controlling Regions

Using regions allows you to display more than one shell on your terminal.

Split the current region into 2 new ones (note: new region will be blank, you need to switch to it then select a window to display in it):

Ctrl+a S
Switch focus to the next region:

Ctrl+a TAB
Remove the current region:

Ctrl+a X

That should be enough to get started


May 24 2006

HOWTO: Getting started with Java

Tag: HOWTO, JavaDan @ 7:22 pm

This is a rough quick start guide. It was written to help a relative of mine who was starting to learn Java.

  1. Get the Java Development kit here: Java Platform, Standard Edition (Java SE). The current version at the time of writing is Java 5
  2. Once installed set the following environment variable in order to ease use of the development tools on the command line. This environment variable is used by various tools including Ant and Tomcat also.

    JAVA_HOME=[set this to the path you installed Java in]

    The default install location for Java 5 on Windows is C:\Program Files\Java\jdk1.5.0_06.

    To set permanent environment variables on Windows XP/2000:

    1. Right-click on My Computer icon
    2. Select Properties from the context menu
    3. In the dialog that appears click on the ‘Advanced’ tab
    4. At the bottom of this tab there is a button labelled ‘Environment Variables’ click it
    5. In the dialog that appears create the new environment variable in the bottom box labelled ‘System variables’ - that will set the variable for all users of the system.

    This process is completely different on Unix/Linux systems, I can describe the setup process for Redhat and Ubuntu systems in a comment if someone needs it.

  3. Next make sure the Java executable binaries are on your system path, this is so that you can use the Java tools to compile your code. On Windows modify the definition of the Path environment variable to include this at the very end (semi-colon at the beginning is required):

    ;%JAVA_HOME%\bin

    When the system loads %JAVA_HOME% will expand to the value you defined in point 2.

  4. Test the setup from above by opening a command console (Start > Programs > Accessories > Command Prompt) and type:

    java -version

    You should see the following output:


    java version "1.5.0_06"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
    Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)

    If you don’t get that type set to list the environment variables and check that the two variables you set in steps 2 and 3 are ok.

  5. Now you are all set to start learning. I recommend starting with the Java Tutorial.
  6. For alternate/advanced coverage see Bruce Eckel’s free book “Thinking In Java”.

Advice

  • Don’t use an IDE to start coding Java. It may get you started quickly but IDEs hide a lot of the real details of how a technology works. Eventually all good developers need to understand these details; it’s quicker and easier to do this from the start. Get yourself a decent text editor and learn to use the command line tools. Once you understand how Java works an IDE such as Eclipse can be very empowering.
  • Decent editors are (IMHO on Windows): JEdit, Notepad2, Vim, of course there are many others ;)
  • When you get fed-up typing javac to compile your code learn to use Ant
  • Learn as much as you can about Object Orientated Programming

Enjoy.

This was written quickly so if you notice any mistakes or things which could be improved please add a comment and I’ll fix it.