Twitter RSS Feeds

Now that Twitter has totally killed their V1 API there is no official way to get Twitter feeds via RSS. Which is a real shame as RSS is a well accepted Open Standard for this type of information :-(



The Twitter REST API v1 is no longer active. Please migrate to API v1.1. https://dev.twitter.com/docs/api/1.1/overview.

SHAME ON YOU TWITTER !

Currently there seem to be very few third party sites providing RSS services and it appears unlikely many will as Twitter will just kill them with changes to their API and/or terms & conditions as soon as they gain traction.

Here is one I found to get a Users Timeline (which is not all that useful).
http://www.twitter-rss.com/

However Hashtag or Search to RSS services are harder to find and will need a lot more work to implement
http://www.queness.com/post/14004/easiest-way-to-retrieve-twitter-timeline-and-hashtags-twitter-oauth-api-11

Please use the comment section if you are aware of others !

Quick ‘manual’ Eclipse install on Ubuntu

Since I always had trouble with the Eclipse version that is avaialable via the Ubuntu repositories I often need to install Elcipse on new machinery. Hence I am documenting the process for myself and hopefully it might help others as well.

Orion’s Umbra by jah~, on Flickr
Creative Commons Attribution-Noncommercial 2.0 Generic License  by  jah~ 

If you haven’t got the Java dependencies

Java dependencies install

sudo apt-get install openjdk-7-jre openjdk-7-jdk icedtea-7-plugin

Eclipse download

Note: download link needs to be updated – current as of 2014-01-27

cd /tmp
wget http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/luna/M4/eclipse-standard-luna-M4-linux-gtk-x86_64.tar.gz&mirror_id=1051
tar -xzf eclipse-standard-luna-M4-linux-gtk-x86_64.tar.gz
sudo mv eclipse/ /opt
rm -f eclipse-standard-luna-M4-linux-gtk-x86_64.tar.gz

Create symlink

ln -s /opt/eclipse/eclipse /usr/bin/eclipse

Create application launcher

NOTE: (Edit 2014-01-27) as of Ubuntu 13.10 you need to change the ‘exec’ line in the desktop launcher to include “env UBUNTU_MENUPROXY=0” as you otherwise will not see any of the menu items in the top nav-bar.

sudo touch /usr/share/applications/eclipse.desktop
sudo echo "[Desktop Entry]" >> /usr/share/applications/eclipse.desktop
sudo echo "Version=4.2" >> /usr/share/applications/eclipse.desktop
sudo echo "Name=Eclipse" >> /usr/share/applications/eclipse.desktop
sudo echo "Comment=Integrated Development Environment" >> /usr/share/applications/eclipse.desktop
sudo echo "Exec=env UBUNTU_MENUPROXY=0 /opt/eclipse/eclipse" >> /usr/share/applications/eclipse.desktop
sudo echo "Type=Application" >> /usr/share/applications/eclipse.desktop
sudo echo "Icon=/opt/eclipse/icon.xpm" >> /usr/share/applications/eclipse.desktop
sudo echo "Terminal=false" >> /usr/share/applications/eclipse.desktop
sudo echo "NoDisplay=false" >> /usr/share/applications/eclipse.desktop
sudo echo "Categories=Development;IDE" >> /usr/share/applications/eclipse.desktop
sudo update-desktop-database

Installing Ubuntu on Toshiba Z930 Ultrabook

Since I have been really happy with the performance and mobility on the Toshiba Ultrabooks (see previous blog entries) I have now chosen to stay with a tried brand and uprgrade to the Z930 i7 model.

Unfortunately this now comes with added hurdles by our good friends at Microsoft in the form of UEFI and the pre-installed disaster that is Windows 8. Instead of totally wiping the system as I did with the Z830 model I decided to install next to Windows 8 as lots of people have reported problems with the UEFI bootloader and the BIOS if you start messing with the pre-installed partitions (specially the EFI partition).


EDIT (2013-06-10): It turns out that Ubuntu works just fine without the factory partitions (which I found out accidentally & not necessarily planned … see cautionary note at the end of this article). The important part is the “Fix GRUB bootloader” section below as the unit refuses to boot without that step. Hat tip and thank you to the boot-repair developers !


Install procedure

Resize Windows partition

I resized the Windows partition in the Windows Control Panel (after I spent considerable time actually finding the damn thing in that crazy Metro UI) and removed all the Windows Crapware that comes pre-installed with this thing (such as Norton Security, Microsoft Office and other annoying ad-ware). I decieded to use 200GB for the Ubuntu system leaving roughly 40GB for Windows.

Boot off the Ubuntu 13.04 USB
Keep F12 key pressed on power up to get the choice boot from USB. Choose “Try Ubuntu” (this is a good idea to see if you have any issues with Ubuntu) and then start the install process from the desktop.

Install Ubuntu

I used 5GB of swap space (10GB of RAM) and the rest of the free disk space as root partition, but you can use any layout you like) and installed Ubuntu.

Reboot

After first reboot I was sort of hoping to get a choice, but the thing booted straight back into Windows 8. Turns out you have to do some more work to get rid Windows 8.

Fix boot options

Go to the PowerOff options, and while holding the SHIFT key, click on Restart.

Window Troubleshoot Power Options

When the menu below appears, select Troubleshoot, then UEFI Firmware Settings.

Window Advanced Power Options

It will ask you to reboot to go to BIOS.

BIOS Changes

Disable “Secure boot” in the “Security” tab

Control Panel –> Power Options –> Choose what the power button does

Note: You need to click on “Change settings that are currently unavailable” and should see something like below.

disable fastboot

Uncheck the option that says “Turn on fast startup”

Fix GRUB bootloader

You need to boot from USB stick again (and choose “Try Ubuntu”). This might be avoidable if you change the BIOS settings before you install Ubuntu. Please leave a comment on this blog for other users if you can test this as I certainly do not want to go through this procedures just to test if the order can be changed. :-)

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && (boot-repair &)

boot-repair

Check the options and follow the instructions given.

Source:
https://help.ubuntu.com/community/Boot-Repair
https://help.ubuntu.com/community/UEFI

Reboot and you should be presented with the GRUB Boot Menu (which should default to UBUNTU, but still allow you to boot into Windows 8 for those who have masochistic tendencies).

Enjoy !!!

CAUTION (2013-06-10): Be careful when re-installing Ubuntu in a dual-boot configuration. Do not choose the option “Remove existing Ubuntu partitions & re-install” – manually delete and re-create the partitions instead. I found out the hard way that this option will REMOVE ALL EXISTING PARTITIONS. In my case that does not matter as I wasn’t planning to use Windows 8 at all. I just left it there as some people reported trouble booting when the partitions were removed. It actually means I just have just recovered 40GB of wasted SSD space. But if you want to dual-boot be careful with that option.

EDIT (2013-06-08): turns out there is a confirmed bug in the ACPI power management module on this unit. However thanks to Alexander Pevzner there is a temporary kernel module that fixes the issue.

Organisational micro-blogging for all

Having seen more and more articles on the use of micro-blogging tools in educational and corporates settings, I am constantly surprised that one of the most useful options from my point-of-view seems to be constantly overlooked. Micro-blogging is like Twitter, but private to your organisation. It is a great way to capture those more informal internal discussions. It can help distribute useful information (such as links) throughout your organisation or help kick-start conversations.

StatusNet poster

The major advantages of StatusNet as a platform over competing proprietary systems (such as Jammer) are:

  • Ownership of information: you can host StatusNet yourself and StatusNet fully supports DataPortability.org to get your data exported from StatusNet as well.
  • Customisation: since you can host Status.net yourself it is possible to fully customise it to suit your needs.
  • Integration potential: since StatusNet is Open Source software you can easily integrate and build upon it.

To download Status.net head to http://gitorious.org/statusnet/ or try a personal account with Identi.ca. You can also use a cloud-hosted version provided by StatusNet http://status.net/cloud. A Yammer import tool is also available for users looking for a Yammer Alternative.

However being a tool that is private to your organisation does not mean your users will be isolated. There is the ability for your user to connect StatusNet with with their Twitter account should they wish to post messages outside.

Note: this is a cross-posting from my work blog at http://www.brightcookie.com/blog

Installing Poptop (pptpd) VPN Server on CentOS 6

For roaming mobile clients PPTP (Point-to-Point Tunneling Protocol) is still the quickest way to get VPN connections to tunnel traffic over a secure link.

Installation

I always prefer installation via a yum repository as this will ensure patches are applied during regular system updates

sudo rpm --import http://poptop.sourceforge.net/yum/RPM-GPG-KEY-PPTP
sudo rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm
sudo yum install ppp pptpd -y

Configuration

Note: replace $USERNAME and $PASSWORD with actual values

IP configuration
echo "localip 192.168.0.1" >> /etc/pptpd.conf
echo "remoteip 192.168.0.100-199" >> /etc/pptpd.conf

DNS configuration
echo "ms-dns 8.8.8.8" >> /etc/ppp/options.pptpd
echo "ms-dns 4.2.2.1" >> /etc/ppp/options.pptpd

Authentication configuration
echo "$USERNAME pptpd $PASSWORD *" >> /etc/ppp/chap-secrets

Firewall config
service iptables start
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
echo "iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE" >> /etc/rc.local
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
service iptables restart
service iptables save
chkconfig iptables on

Start ppptd
chkconfig pptpd on
service pptpd start

Open Source creative tools

Since I am tired to constantly recite this list whenever one of these designer-type people tells me that they need Adobe’s Whatever Suite to do some basic task here is a summary that I can point them to.

Vector Graphics

Inkscape (http://inkscape.org/)
Xara Extreme (http://www.xaraxtreme.org/)

Raster Graphics

Gimp (http://www.gimp.org/)

Desktop Publishing

Scribus (http://www.scribus.net/)

Photo Editing

Gimp (see above)
Darktable (http://www.darktable.org/)
RawTherapee (http://www.rawtherapee.com/)
Luminance HDR (http://qtpfsgui.sourceforge.net/)
Layout Tools (DTP): Scribus (http://scribus.net/canvas/Scribus)

3D Modelling & Animation

Gimp (see above + plugins)
Blender (http://www.blender.org/)

Video Editing

CinelerraCV (http://cinelerra.org/)
OpenShot (http://www.openshot.org/)

Audio Editing

Audacity (http://audacity.sourceforge.net/)
Ardour (http://www.ardour.org/)

Before anybody thinks this is to start a flame-war – I don’t have a problem with a creative professional whose livelyhood depends on this work needing a professional package such as Adobe Creative Suite. I do however have a problem when some graduate or work-experience kid dabbling in graphics tells me he can not do this with anything else. Hopefully this list helps to open some minds ….

Running Android 4.0 (ICS) on Virtualbox

Debugging things on the Android Emulator (incluced in the SDK) can be a very slow and cumbersome process. Thanks to the Android-x86 Project it’s quite easy to run Android in VirtualBox. This is highly useful when you need to test mobile apps and websites from the Android Browser (as well as Chrome Mobile).

  1. Download an Ethernet enabled ISO from Tablets x86

    wget http://dl.dropbox.com/u/75945873/android-x86-4.0-eth0-generic_x86-20120426.iso.torrent
    transmission android-x86-4.0-eth0-generic_x86-20120426.iso.torrent

  2. Create new ViratualBox VM
    VM Settings 1
    VM Settings 2
    VM Settings 3
    Important Settings (see screenshots)

    • OS: Linux, Version: Linux 2.6
    • Enable VTx/AMD-V
    • Use Bridged Network Adapter (if you want to allow direct Internet Access)
  3. Mount the ISO file downloaded previosly and start the VM
    Install dialog
  4. Create the Root Filesystem (ext3) on the VBox .vdi created with the new VM, mark as bootable
  5. Write the Filesystem changes to disk (VDI) and format the disk
  6. Install GRUB Boatloader
  7. Copy files from ISO to VDI
  8. Unmount the ISO image and reboot
  9. Note: You need to disable the mouse pointer integration (if you have installed VirtualBox Client Add-ons) in the menu of Virtualbox (‘Machine’ –> ‘Disable Mouse Integration’) when you start the VM (see screenshot). I have not found a way to disable this by default on Virtualbox on Ubuntu (If anybody has managed this I would love to know how !)

    Disable Mouse Integration

  10. Start the Android Setup Wizard to set locale and you should be up and running (network should already function to test external sites from Android browser) !

Intel Ultrabook tweaks on Ubuntu 12.04

After upgrading my Toshiba Z830 Ultrabook to 12.04 (Precise Pangolin) I noticed that the ability to control the screen back-light was not working using the Toshiba Fn F6/F7 keys.

Thanks to http://www.linlap.com/wiki/acer+aspire+s3 the solution was found quite quickly.

sudo vim /etc/default/grub

This will open the grub configuration file. (Grub is the initial boot selection software)
To be able to dim the screen brightness, You’ve got to modify the line:

GRUB_CMDLINE_LINUX=""

to these two lines:

pcie_aspm=force
GRUB_CMDLINE_LINUX="quiet splash pcie_aspm=force i915.i915_enable_rc6=1 i915.lvds_downclock=1 acpi_osi=Linux acpi_backlight=vendor elevator=noop"

Another neat tip: intel-gpu-tools can be used to control brightness from the commandline.

# will set brightness at 50%
intel_backlight 50


EDIT [2012-08-24]: to avoid issues on resume you need to add a script to the

sudo vim /etc/pm/sleep.d/20_wakeup

Add the following:

#!/bin/bash
case "$1" in
suspend|hibernate)
#do nothing
;;
resume|thaw)
echo 7 > /sys/class/backlight/toshiba/brightness
;;
*)
exit 1
;;
esac
exit 0

Mark the file as executable
sudo chmod +x /etc/pm/sleep.d/20_wakeup

Installing Java6 JDK on Ubuntu 12.04

UPDATE: [01-May-2012] It appears that this PPA repo is currently broken (does not allow to get GPG key and has unmet dependencies on x84_64). It appears that the install on i386 systems does work anyway if you ignore the GPG key error, but I wouldn’t install in that case as PPA installs are security risk enough without GPG errors.


UPDATE: [11-May-2012] The reason the PPA does not work is that it has been disabled by Ubuntu due to a licensing issue with (not hard to guess) Oracle. Flexion.org have however created a script (hosted on Github) to allow the automated update of Java 6 for those who still require it as a dependency.

wget https://github.com/flexiondotorg/oab-java6/raw/0.2.1/oab-java6.sh -O oab-java6.sh
chmod +x oab-java6.sh
sudo ./oab-java6.sh

Hat tip to Martin Wimpress from Flexion !


UPDATE: [07-Aug-2012] Thanks to a comment from Pierre-Yves Langlois this seems to be the best method (uses the latest version of the Flexion script from Github rather than the version referenced above)

sudo apt-get purge sun-java* #You need to do that if you want the mozilla plugin to work without conflict with java7 for instance.
mkdir ~/src
cd ~/src
git clone https://github.com/flexiondotorg/oab-java6.git
cd ~/src/oab-java6
sudo ./oab-java.sh

Then when its finished, install java:
sudo apt-get install sun-java6-plugin sun-java6-jre sun-java6-bin sun-java6-jdk

You can follow the installation process with:
tail -f ~/src/oab-java6/oab-java.sh.log


Note: If you do not need Java 6 it’s much safer to stick to the current Oracle Java 7 release.


This is an update to the Java6 install on 11.10 since the previous PPA repository has not been updated. To install on Precise Pangolin you need to add the following repository

sudo add-apt-repository ppa:flexiondotorg/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-plugin


EDIT: [01-May-2012] since there seem to be many comments about the repo not working here’s the manual process (since I can’t find any working PPA that is actually maintained).

Download the Linux .bin install (32 or 64bit) from Oracle’s site Java Archive.

#change permissions to allow execute
chmod a+x jdk-6u[current_version_number]-linux-i586.bin
#run the installer file
./jdk-6u[current_version_number]-linux-i586.bin

Note: you obviously need to also maintain the Java6 updated manually.

Installing the latest stable version of LibreCAD on Ubuntu

I have recently been looking at different CAD options on Ubuntu and LibreCAD (http://librecad.org/) is looking like the best option for my needs at current (apart from the wish there would be some DWG support).

Since the main Ubuntu repositories are usually a fair bit behind the lastest stable realeases of LibreCAD you need to add the LibreCAD Dev PPA Repository

sudo add-apt-repository ppa:librecad-dev/librecad-stable
sudo apt-get update
sudo apt-get install librecad