Ubuntu Server: How to Install Applications from .deb Files

It’s pretty seldom that you have to install packages that aren’t part of the official repositories (for which apt-get is king), but every now and then you will be presented with a .deb application installer file and told to install it on your server.

Luckily this is pretty painless, so long as you know the correct command, which is exactly why I’m noting it down here for future reference.

Packages are manually installed via the dpkg command (Debian Package Management System). dpkg is the backend to commands like apt-get and aptitude, which in turn are the backend for GUI install apps like the Software Center and Synaptic.

To install a .deb file, run:

sudo dpkg -i myInstaller.deb

If dpkg reports an error due to dependency problems, you can run:

sudo apt-get install -f

Running this should download the missing dependencies and configure everything automatically. If however this step reports an error… well let’s just say that you’ll have to sort out the dependencies yourself, something often referred to as “dependency hell” in the support forums!

Conversely, to uninstall a package, run dpkg with -r:

sudo dpkg -r myInstaller

Noted.

ubuntu-logo-banner

Ubuntu Server: How to Extract a .tar.gz Archive File

An old one, but for my own reference purposes, worth noting down here in these pages. In order to extract the contents of a .tar.qz archive file, turn to the tar command (“man tar” for options as per usual):

tar -xvzf archivefile.tar.gz -C /home/craig/downloads

In this example we’ve extracted the contents of archivefile.tar.gz to the /home/craig/downloads directory. (If we left out the -C directive then the operation would simply have extracted the archive contents to the working directory.)

To explain the archivefile.tar.gz file itself, essentially tar collected all the files into one package followed by a call to gzip which then compressed the tar file. (This is often referred to as a tarball in the Linux world.)

To extract the files making up this tarball, we used the following parameters in our call to tar:

x: tar can collect files or extract them. x does the latter.
v: makes tar talk a lot. Verbose output shows you all the files being extracted.
z: tells tar to decompress the archive using gzip
f: this must be the last flag of the command, and the tar file must be immediately after. It tells tar the name and path of the compressed file.

Obviously -v isn’t necessarily, but it is helpful to see what is going on. So in summary, to extract a .tar.gz file, run:

tar -xvzf [archiveFile].tar.gz

Noted.

ubuntu-logo-banner

Stream English and Afrikaan South African Music with Rdio

These days streaming music from the Internet is actually a workable solution here in South Africa, which basically translates into a whole lot more music choice for you and I, the end user. I’ve been using a particular music streaming service for a while now, and seeing as it is pretty much perfect as far as what I’m concerned, I thought it high time I give it the plug it so richly deserves.

From Wikipedia, Rdio (damn it, stop dropping perfectly good letters to come up with hip names Internet service people!) is an online music service that offers ad-supported free streaming service and ad-free subscription services in 60 countries. It is available as a website and also has clients for the iPhone, iPod Touch & iPad, Android, BlackBerry, and Windows Phone mobile devices, which can play streaming music or cache songs for offline playback. There are also clients for the Roku and Sonos systems. The web-based service also offers a native desktop client application for Mac OS X and Windows. Its library has content from the four major record labels, as well as the Merlin Network and the aggregators IODA, INgrooves, The Orchard, CD Baby, IRIS Distribution, BFM Digital, Finetunes, and Catapult. Rdio also offers social networking, allowing users to share playlists and follow others to see what music they listen to.

I primarily use it on my laptop to listen to music whilst I work, and I have to say, the interface is clean, snappy, and makes for easy use. What is particularly nice is their station algorithms that essentially automatically builds custom playlists based on the type of music you listen to. So for example, if you listen to a Jack Parow album, don’t be surprised when immediately following its end, you’re blasted with Dutch rap tunes. I’ve given it a fair spin and the station algorithm has yet to let me down!

However, the biggest plus in my opinion is the localisation. Because it is officially launched in South Africa, you all of a sudden have full access to a plethora of South Africa artists, which in my case means instant access to both English and Afrikaans rockstars, be it the classic Springbok Nude Girls, Sugardrive or Fokofpolisiekar, to maybe something a little newer like Van Coke Kartel or the excellent Woodstock Mafia.

Hell, I can even give good old Robbie Wessels a spin if I feel like a chuckle.

And to top it all off, their selection of obscure, difficult to find musicians is also pretty top notch I have to say.

Rdio a subscription based model, but to date I’m still running under the free plan after a couple of months with absolutely no restrictions at all. Have to say, I’m liking this one a lot!

rdio logo strip

Related Link: http://www.rdio.com/

Star Wars Rebels hits South African Shores

Following the massive success of the CG animated Star Wars: The Clone Wars series by Lucasfilm Animation (it ran for six seasons, hitting 121 episodes, and was popular with both young and old fans alike), it’s no wonder Disney XD was keen on keeping the spark going by commissioning a brand new Star Wars series from the guys and girls over at Lucasfilm Animation.

Set five years before Star Wars Episode IV: A New Hope and fourteen years after the fall of the Galactic Republic and the Jedi Council in Star Wars Episode III: Revenge of the Sith, Star Wars Rebels follows a motley group of rebels – cowboy Jedi Kanan, ace pilot Hera, street-smart teenager Ezra, tough guy Zeb, warrior firebrand Sabine, and cantankerous old astromech droid Chopper – all of whom have been affected by the Galactic Empire in one form or another, that band together aboard a freighter starship called the Ghost.

The evil Galactic Empire is tightening its grip of power on the galaxy, Imperial forces are hunting down the last of the Jedi Knights and slowly but surely the brickwork for what will become the Rebel Alliance is being laid by this most unlikeliest of crews…

star wars rebels screenshot 1

You can join the rebellion (i.e., catch Star Wars Rebels episodes) every Saturday morning at 09:20 on Disney XD (Dstv channel 304).

To celebrate Star Wars Rebels hitting South African shores, The Walt Disney Company Africa (TWDA) just completed a unique graffiti project in Cape Town and Johannesburg to introduce local communities to the characters of Star Wars Rebels.

Professional artists Justin “Nomad” Badenhorst and Charles “Riot” Keylock, created billboard walls outside Mzoli’s, the popular tourist hotspot and hangout for locals in Gugulethu, Cape Town. The Rebels then gathered in Soweto, where a wall in Pimville was transformed. With local residents looking on, each wall took 5 days to bring the eye catching artwork to completion.

In Cape Town:

star wars rebels graffiti cape town 1

star wars rebels graffiti cape town 2

In Soweto:

star wars rebels graffiti soweto 1

star wars rebels graffiti soweto 2

Of course, everything was captured on camera:

So now it’s just a matter of deciding on whose side you are, right?

star wars rebels screenshot 2

(Please note that this is a Sponsored Post, placed via the MyScoop blog advertising network.)

star wars disney xd logo strip

Related Link: http://en.wikipedia.org/wiki/Star_Wars_Rebels

Jessica, Chantelle and Baby Emily have a Chat

Shame, Emily really does get the short end of the stick in terms of photos and videos posted here on this blog. Second child syndrome I guess you could call it.

20141022 Emily lotter my wise old man little girl

Anyway, seeing as I literally just posted a video of a really big milestone for my wise old baby girl, I thought it only fair to prop up her video numbers by releasing this quick video I took of Emily back in April – when she was just a teensy weensy four month old baby.

And as you can see, Chantelle and Jessica seem to have enjoyed the chat! :)

There, I feel better as a father now.

Emily Leopard Crawls for the First Time

Wow, ten months down the line already and Emily continues to grow cuter by the day. Ticklish, talkative, inquisitive… and now we can add mobile to the list.

20140927 Emily and her bubble bath beard

Well almost anyway. She was already capable of moving her body around in a circle, but this evening she surprised Chantelle and myself by breaking out her first every leopard crawl.

I watched her first attempt, and then quickly ordered Chantelle to reset her for a second so that I could record it. Needless to say, Emily was less than impressed at having to start back at the beginning, but nevertheless, my little girl soldiered on and made her daddy proud!

See, see! :)

Ubuntu Server 14.04: How to Install Webmin

So you’ve loaded up a copy of Ubuntu Server 14.04 (Trusy Tahr) on your VM, and because you don’t feel like doing everything via the command line, you now want the ease of use that Webmin supplies.

No problem, grabbing it and installing Webmin on an Ubuntu Server remains a relatively simple thing to do.

First, log into your server and edit the sources file:

sudo nano /etc/apt/sources.list

Add this line:

deb http://download.webmin.com/download/repository sarge contrib

Save the file and exit the nano editor. Next we need to grab and install the PGP key:

wget -q http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add -

With that all done, now it is a simple matter to install the latest version of Webmin as you would any other Ubuntu package:

sudo apt-get update
sudo apt-get install webmin

Once the install has completed, you should be able to access the webmin console by logging in to either https://localhost:10000/ or https://yourIPaddress:10000/ (Note the HTTPS requirement).

Webmin-login

Remember, you need to log in with a user account that has sudo rights and of course a password (i.e., don’t log in with the root user).

webmin-ubuntu-server

ubuntu-logo-banner

Related Link: http://www.webmin.com/

How to Fix the “Invalid jdkhome” Error Message on NetBeans Load

For NetBeans IDE users: Whenever you upgrade/downgrade your JAVA installation, more often than not you will encounter an error message when firing up NetBeans that essentially complains about not being able to locate the JAVA installation in the specified jdkhome variable:

netbeans invalid jdkhome specified error screenshot

(Note, selecting the Yes option will work 9 out of 10 times, unless of course you have completely uninstalled JAVA from your system).

It turns out that to fix this invalid jdkhome error is pretty easy. First, navigate to your NetBeans installation folder which by default should be “C:\Program Files\NetBeans 8.0″ and look for the folder “etc”. Inside that folder should be a file with the name “netbeans.conf”. What you need to do is to open the file with your favorite text reader (notepad as an example) and look for the line that starts with netbeans_jdkhome=.

IMPORTANT: You might need administrative rights to save changes to this file. In that case, first open your text editor by right-clicking on the text editor icon and selecting the Run as Administrator option. (This is assuming that you are using Windows)

The next step is to alter the line to point to the currently installed JAVA JDK version. It should look something like this netbeans_jdkhome=”C:\Program Files\Java\jdk1.8.0_20″. If you are unsure as to which JDK version you currently have installed, navigate to your java’s installation folder (the default path is C:\Program Files\Java) and look for relevant JDK folder there.

Save the changes, and restart NetBeans.

edit netbeans.conf to fix jdkhome error

Simple as that.

Emirates Boeing 777-300ER vs Airbus A340-300

To be fair, the ‘vs’ in this post title is completely misleading – but it just so happens that I’ll be experiencing both the Emirates Boeing 777-300ER and the Emirates Airbus A340-300 on my trip from Cape Town to Japan and back again (with stop-over in Dubai) – which kicks off this morning I might add!

Both planes came out in the early 1990s and both carry more or less the same amount of people, so it will be interesting to compare the flights across the two. Three out of the four legs of the journey will take place on the slightly more modern Boeing 777-300ER, though when I remember that each leg is roughly 10 hours in length, my excitement for these flights diminishes ever so slightly. (That’s a lot of flying to NOT particularly be looking forward to.)

Still, the Emirates in-flight entertainment system looks promising, so hopefully the time goes by faster than what I’m dreading…

Boeing 777-300ER

The Boeing 777 is a family of long-range wide-body twin-engine jet airliners developed and manufactured by Boeing Commercial Airplanes. It is the world’s largest twinjet and has a typical seating capacity for 314 to 451 passengers, with a range of 5,235 to 9,380 nautical miles (9,695 to 17,372 km). Commonly referred to as the “Triple Seven”, its distinguishing features include the largest-diameter turbofan engines of any aircraft, six wheels on each main landing gear, a circular fuselage cross-section, and a blade-shaped tail cone. Developed in consultation with eight major airlines, the 777 was designed to replace older wide-body airliners and bridge the capacity difference between Boeing’s 767 and 747. As Boeing’s first fly-by-wire airliner, it has computer-mediated controls; it is also the first entirely computer-aided designed commercial aircraft.

The 777-300ER (“ER” for Extended Range) is the C-market version of the -300. It features raked and extended wingtips, a wing aspect ratio of 9.0, a new main landing gear, reinforced nose gear, and extra fuel tanks. It also has a strengthened fuselage, wings, empennage, and engine attachments. The -300ER is powered by the GE90-115B turbofan, which is the world’s most powerful jet engine in service, with a maximum thrust of 115,300 lbf (513 kN). Its maximum range is 7,825 nautical miles (14,492 km), made possible by higher MTOW and increased fuel capacity. The -300ER can fly approximately 34 percent farther than the -300 with a full load of passengers and cargo. Following flight testing, aerodynamics refinements have reduced fuel burn by an additional 1.4 percent.

Produced: 1993–present
Number built: 1,212 through June 2014
Unit cost: 777-300ER: US$320.2 million

Related Link: http://en.wikipedia.org/wiki/Boeing_777#777-300ER

Emirates Boeing 777-300ER

Airbus A340-300

The Airbus A340 is a long-range four-engine wide-body commercial passenger jet airliner. It was developed and produced by Airbus, a consortium of European aerospace companies, which is a subsidiary of Airbus Group (which was previously known as EADS). The A340 was assembled at Toulouse, France. It seats up to 375 passengers in the standard variants and 440 in the stretched -600 series. Depending on the model, it has a range of between 6,700 to 9,000 nautical miles (12,400 to 16,700 km). It is similar in design to the twin-engined A330 with which it was concurrently designed. Its distinguishing features are four high-bypass turbofan engines and three-bogie main landing gear.

The A340-300 flies 295 passengers in a typical three-class cabin layout over 6,700 nautical miles (12,400 km). This is the initial version, having flown on 25 October 1991, and entered service with Lufthansa and Air France in March 1993. It is powered by four CFMI CFM56-5C engines and uses the Honeywell 331–350[A] APU, similar to the -200. Its closest competitor is the Boeing 777-200ER.

The A340-300E, often mislabelled as A340-300X, has an increased MTOW of up to 275 tonnes (606,000 lb) and is powered by the more powerful 34,000 lbf (150 kN) thrust CFMI CFM56-5C4 engines. Typical range with 295 passengers is between 7,200 to 7,400 nautical miles (13,300 to 13,700 km).

Produced: 1991–2011
Number built: 377
Unit cost: A340-300: US$238.0 million

Related Link: http://en.wikipedia.org/wiki/Airbus_A340#A340-300

Emirates Airbus A340-300

(In case you are wondering just why I am so excited by this flight prospect, please take into account my love for planes and the fact that I have never ever flown overseas in my life before. That’s 34 years of looking up at the sky and marveling at these metal beasts of burden!)

I Lost Jessica.

I’m not making a very big deal out of this, or at least wasn’t at the time, but in truth it really is a big deal. You see, today I lost Jess. I did not know where my daughter was and it was scary as heck. At the time I was calm and collected, but looking back at it now, it was scary as hell.

And it could have ended much worse.

The stupid part is that all of it was down to a very basic parenting mistake quite frankly – I should, and do, know better. Parenting 101. But mistakes do happen and today a very big one was made.

With Chantelle working, I was left on kid duty for the day, and still needing things for my upcoming trip to Japan, I bundled Emily and Jessica into the car and headed off to Somerset Mall. With Emily in her pram, and Jessica holding my hand, we entered Pick ‘n Pay and made our way through a very busy store (payday weekend) down to the furthest corner which houses the clothing section.

Together Jessica and I browsed through the t-shirts and loaded up the pram with a few new ones which she helped me pull out. Then I stopped to have a quick look at the shorts because the only pair of shorts that I currently possess has a great big hole in the crotch area and I’m having huge difficulties in sourcing shorts big enough to fit my large posterior and tree trunk legs. One pair in particular looked quite promising.

Meanwhile, bored, Jessica had taken to climbing up and down the staff ladder and was happily busy entertaining herself in the clothing area.

I asked for access to the fitting cubicle and pulled Emily, pram and all inside. I looked to my side and saw Jessica still happily playing on the ladder. I told her that Emily and I were going inside, and when she is finished she must come here to me. I closed the door and started changing pants.

All of a sudden I hear Jess’ voice crying “Daddy, daddy, where are you?!?”, and recognizing that the voice was travelling away from the area at a very fast pace, I basically flung open the door, pulled up my pants, grabbed Emily’s pram and started searching. Soon I had a number of ladies that were in the area helping me with my search (it is a very large store), and whilst they combed down the aisles, I headed straight down the line of tills, loudly bellowing “Jessica!” down each and every aisle that I passed.

As I reached the entrance of the store, one of the ladies who was helping me look down the aisles, caught my eye gestured that she had spotted Jess, and I won’t lie, my heart skipped a beat when I turned at the entrance to spot a quivering, sobbing Jessica sitting at the manager’s desk in the front of the store.

I swooped in and picked up my frantic little girl, giving her the biggest bear hug that you can imagine.

Twenty seconds later, with a packet of Nik Naks now in her possession, and no more tears in sight, we were walking back towards the clothing section, hand firmly in hand.

(For the record, this time Emily, Emily’s pram, Jessica, and I all squeezed into the cubicle together. The shorts didn’t fit.)

jessica lotter eating mcdonalds chocolate sundae ice cream

A lesson learned indeed.