Android Development x64 Ubuntu 12.10 (Quantal Quetzal)

The android developer guide suggests you install ia32-libs when developing on a 64bit platform. However this installs some 242 packages. A much more sensible option is to only install the 32bit libraries that are actually needed and then you only have to install 57 new packages. Additionally Quantal Quetzal comes with an up to date version of eclipse (3.8) so you can install this via the package manager as well instead of downloading 3.7 as the guide suggests.

To install the packages simply run the following command:

sudo apt-get install eclipse libgl1-mesa-dev:i386 libsdl1.2debian:i386

The installation of eclipse will also provide a compatible Java runtime required for building android apps.

Holidays

I like to write up my holidays so that I can look back and remember what I did, trouble is I usually take so long trying to capture everything that I end up not posting them at all. I have drafts for several Holidays that have been sitting there for years. I have decided that I am just going to post what I have written and improve the post at a later date.

New Release

A few things have been added to RapCAD in the last 6 months so I decided to make a new release. Hopefully now that the release scripts are working on the build server I will be able to make releases more frequently, assuming that enough gets added to the code base to warrant a new release. I’d like to make releases once a month again as I think that was just about right.

Changes

  • Implemented add assign (+=), and subtract assign (-=) operators.
  • Added some simple examples.
  • Implemented center() module for centering about the bounding box.
  • Fix for cylinder and cube of zero height.
  • Updated icons.
  • Added support for non centered spheres
  • Implemented new functions tanh() sinh() cosh() atan() atan2() acos() asin() exp() pow() ceil() floor() round() min() max() sign() abs() sin() cos() tan().
  • Added warning when function cannot be found.

Version 0.7.0 is available this month. See the Download Page for details.

Turkey

(Note: This is a work in progress see Holidays)

 

I arrived in Dalaman airport and was greeted by the Solos rep. It was all a bit confusing because we were mixed in with the Solos sun group, however when I met Sarah we were both relieved that we had got on the right plane, and were with the right age group. We were taken by minibus to the Hotel, I spent most of the journey talking to Nigel who was in the sun group. At the hotel we were introduced to our Solos Guide for the week, We couldn’t pronounce (or remember) his name so we called him by his nickname “Awesome”. Awesome introduced us to the rest of the group. Including the Sarah that I had already met at the minibus there were four Sarah’s in the group which was confusing but this led to some interesting nick names developing during the week. I spent the rest of the afternoon having a few beers and getting to know everyone.

The first day of activities was a Jeep Safari day. It was a really good way to explore the ruins and sarcophagi of Tlos. There was lots of photo opportunities. We then headed over to a beautiful restaurant in Yaka Park full of fountains and waterfalls. We stopped there for a few drinks. The next stop was Saklikent (The Gorge). We were given the option to cross the gorge river using only a rope to stop us from being swept away by the water. Sarah Jeffrey and I jumped at the opportunity, I went first and apparently made it look easy, although I must admit I think I was lucky to not lose my footing as the water was very rapid. Sarah earned her nickname for the week “Zenna” as she crossed the gouge river like a warrior princess! After the gorge walk we had a really nice piece of trout for lunch. I usually don’t like small fish because of the bones, but this trout was barbecued so well, and the meat just slid off the bone. It was delicious. Some of us had signed up for a paddle down the river on rubber rings, so after lunch we got on the rings while the others took the Jeep down to the point where they catch us. Fortunately they did catch us otherwise we might have ended up in Egypt. The next stop was the mud baths, they were nothing fancy but we all got into the spirit of things and slapped some mud over ourselves, apparently making us look ten years younger. Finally on the way back the Jeep stopped off at a Petrol station which had a swimming pool, quite an unusual thing to find at a patrol station but it was nice to go for a dip before heading back to the hotel.

  • Wednesday – Quad biking – Mese and BBQ chicken – Water slide – Turkish bath – Sunset Cruise

Our second activity was a half day of quad biking. We were picked up by bus and taken to the quad bike training course. We were given some simple safety instructions and shown how to use the quad bikes. Every driver had to then do a quick test around the training circuit. Not everyone on the trip was driving the quad bikes and I had Ke as a passenger on my bike. The quad bike course took us round some scenic village roads, then into the forest for some off road action, this was my favourite part as the terrain got progressively more challenging. Sarah Holton was really good at quad biking and so she earned the nickname “Dr Quad”. After we had finished the off road part of the course we rode the quad bikes down into the cove for some refreshing drinks by the bay. After we had ridden the bikes back to the start point we were taken off for lunch in a local restaurant. Lunch was a Meze and barbecue chicken. In the afternoon when we got back to the hotel we thought we would give the hotel water slide a go. It was actually quite fun although a little short, it was nice to just relax by the pool and dry off in the hot sun whilst having a few more beers. In the evening Awesome told us that we could all get a free Turkish bath at Sanctuary, so some of us that had previously turned down the idea decided to go. It was an unusual experience, but good, I felt very clean afterwards and smelled like Turkish soap. While I was there I also had a haircut, and a straight razor shave which was a new experience for me.

  • Thursday – Canoeing – BBQ – Karaoke – Dancing on Bar
  • Friday – Boat Trip – Sunbathing – Back flips – Fishing – Feeling ropey
  • Saturday – Hiking – Chicken Baguettes – Blue lagoon – Bartering – Dinner still mooing.
  • Sunday – Paragliding – Shopping

On sunday we went paragliding

  • Sky Sports
  • about half way through the flight the pilot asked me if I would like to take control
  • Tricks!
  • Monday – Traveling home

Ownership Permissions of /var in Debian Squeeze

Suppose you happen to accidentally do sudo chown -R www-data:www-data * whilst the current directory is /var. Now that’s a fairly daft thing to do! but we all make mistakes. There doesn’t seem to be an easy way to correct this other than restore a backup or look at another machine with a similar setup. Rather than having to restore a backup I looked at a machine with a similar setup, the machine has lighttpd, mysql, and sendmail installed on it so I built the following script based on the permissions with those packages installed on a fresh install of Debian Squeeze

#!/bin/bash

echo "Setting Directory ownership" &&
chown -R root:root /var &&
chown -R man:root /var/cache/man &&
chown -R www-data:www-data /var/cache/lighttpd &&
chown -R libuuid:libuuid /var/lib/libuuid &&
chown -R smmta:smmsp /var/lib/sendmail &&
chown -R mysql:mysql /var/lib/mysql &&
chown -R www-data:www-data /var/log/lighttpd &&
chown -R mysql:adm /var/log/mysql &&
chown -R www-data:www-data /var/run/lighttpd &&
chown -R mysql:root /var/run/mysqld &&
chown -R smmsp:smmsp /var/run/sendmail/msp &&
chown -R smmta:smmsp /var/run/sendmail/mta &&
chown -R smmta:smmsp /var/spool/mqueue &&
chown -R smmsp:smmsp /var/spool/mqueue-client &&
chown -R root:staff /var/local &&
chown -R root:mail /var/mail &&
chown -R root:smmta /var/run/sendmail &&
chown -R root:smmsp /var/run/sendmail/stampdir &&
chown -R root:crontab /var/spool/cron/crontabs &&
chown -R www-data:www-data /var/www &&
echo "Setting File ownership" &&
chown root:smmsp /var/lib/sendmail/dead.letter &&
chown root:adm 
 /var/log/auth.log 
 /var/log/boot 
 /var/log/daemon.log 
 /var/log/debug 
 /var/log/dmesg* 
 /var/log/fsck/checkfs 
 /var/log/fsck/checkroot 
 /var/log/kern.log 
 /var/log/lpr.log 
 /var/log/mail.err 
 /var/log/mail.info 
 /var/log/mail.log 
 /var/log/mail.warn 
 /var/log/messages 
 /var/log/news/news.crit 
 /var/log/news/news.err 
 /var/log/news/news.notice 
 /var/log/syslog 
 /var/log/user.log &&
chown root:utmp 
 /var/log/lastlog 
 /var/log/btmp 
 /var/log/wtmp 
 /var/run/utmp &&
chown root:smmsp 
 /var/run/sendmail/mta/smsocket 
 /var/run/sendmail/stampdir/reload &&
chown -f root:smmsp /var/run/sendmail/mta/sendmail.pid &&
chown mysql:adm 
 /var/log/mysql.err 
 /var/log/musql.log &&
chown -f mysql:adm /var/run/mysqld.pid &&
echo "Done."

In addition you will need to set the ownership permissions of /var/spool/cron/crontabs/<user> and /var/mail/<user> depending on the users on the system.

Nutrition Information Calculator

Often food in the United Kingdom is labelled with nutrition infomation per 100g. This handy calculator allows you to calculate the values if you eat the whole lot! or a smaller portion of it for that matter.

Nutrition Information

Per 100g Per
g
serving
Energy kcal kcal
Protein g g
Carbohydrate g g
  (of which sugars) g g
Fat g g
  (of which saturates) g g
Fibre g g
Sodium g g
Update

Meddeling with Mendel

Its been nearly a year and a half since I last posted about my Reprap Mendel.  I haven’t actually made any progress building it either! This is because I got side tracked with other things including developing RapCAD
Well recently I have taken interest again and started meddling with my Mendel. The first outstanding task was to solder the voltage reg and capacitor to the motherboard. I didn’t much like the official reprap solution of powering the motherboard entirely via the usb port! so rather than add a jump wire between the comms port and the 5v track I instead used a spare track to connect a power connector at J4. This still leaves J1 J2 and J3 to be used for additional extruder’s.
The motherboard will be powered instead from my previously hacked ATX power supply which will provide 0v 5v and 12v via the XLR connections. For some reason the official reprap uses these 3 wire connectors as well but doesn’t utilise the third wire.

New Interest

I haven’t been able to work on RapCAD for a few months as I have been busy with other activities. I have however been contacted by a few people who are still interested in the project. I have even had one person willing to help out with the coding, so I would like to take the opportunity to welcome Steve Kelly aboard the dev team.

Build Server

RapCAD builds are becoming a bit tedious so I am trying to streamline the process by setting up a build server that hopefully will automagically build for Windows, Mac, and Linux. Because of this, I have not done much development on RapCAD this month just a few bug fixes.

The build server is a small mini-itx based rackmount server that stays on permanently and runs a few other daemons and cron jobs. It has quite a nice hard disk layout with the main readonly partition being on a flash drive and the /home on a large RAID array. /tmp and swap are on partitions of the disks that do not form part of the array. The server runs some VirtualBox VMs that do the build processes for the various platforms.


Version 0.6.0 is available this month. See the Download Page for details.

Revisited – make a DVD out of just about any video file.

I recently was asked to create a DVD from a .mov video file. I had already made a post about how to do this under windows using windows ports of various linux based applications. Coming back to it and this time running completely on linux, I have realised that it can be done much more simply.

The required software can be installed using

sudo apt-get install ffmpeg dvdauthor growisofs

First off the video file has to be transcoded into an dvd compatible mpeg2 file.

ffmpeg -i <video.mkv> -aspect 16:9 -target pal-dvd output.mpg

Then the file has to be authored into the correct VOB files using dvdauthor. To make sure that there are no errors in the process the following environment variable must be set.

export VIDEO_FORMAT=PAL

Rather than using an xml control file for simple DVD’s the following two dvdauthor commands will suffice.

dvdauthor -o DVD/ -t output.mpg &&
dvdauthor -o DVD/ -T

Finally the files are burned to DVD media using growisofs

growisofs -dvd-compat -Z /dev/dvd -dvd-video -V "<name>" ./DVD