Blog - Unity Behind Diversity

Searching for beauty in the dissonance

Tagged: gnu/linux

On Revoking Ubuntu’s Root Privileges

I’ve always had mixed feelings about Canonical, the company behind Ubuntu GNU/Linux. While they’ve made great contributions to free software, they’ve also been very inconsistent in their commitment to software freedom. Mark Shuttleworth’s response to the privacy concerns in Ubuntu 12.10 has fundamentally shattered my trust.

An Uneasy History

From restricted drivers to Launchpad to non-free documentation licences, there have always been concerns about Canonical’s commitment to free software. By 2010, the issues were becoming more serious. Ubuntu used to clearly warn users about restricted drivers, but in the Ubuntu Software Center, no longer is proprietary software merely tolerated, but now it’s celebrated and actively promoted. The average user doesn’t interact with Launchpad, but with Ubuntu One, Canonical’s proprietary service, users must delete, disable or ignore all of the places where it’s built-in to the Ubuntu experience. The concerns were starting to affect my everyday use.

But, I didn’t leave. I uninstalled the Ubuntu One packages, and ignored the Software Centre. Though, I did start exploring my options, with a Debian dual-boot and Trisquel in a virtual machine. However, there are many things that I do like about Ubuntu. My Ubuntu install is still 99% free software. Despite the controversy over the design process and community engagement, there are many things I like about the Unity — the current obsession of Canonical’s founder, Mark Shuttleworth. I appreciate the outcome of his previous obsession as well — Ubuntu’s release cycle works really well. And, maybe there’s some sentiment — I’ve been running the same Ubuntu GNU/Linux install, across three different computers, since I first left Windows in 2007.

In 2010, my relationship with Ubuntu became uneasy, but it didn’t end. I’m not sure I can say the same for 2013.

The Amazon Dash Debacle

The EFF, RMS and this tongue-in-cheek bug report provide a decent summary the issue: Ubuntu 12.10 raises serious privacy concerns by reporting searches in the Unity Dash — which have traditionally been local searches — to Amazon, relayed through Canonical.

That Ubuntu screwed up is obvious — at the very least, by enabling this by default. But it’s more than the mistake; it’s the response. In defending the decision, Mark Shuttleworth writes:

We are not telling Amazon what you are searching for. Your anonymity is preserved because we handle the query on your behalf. Don’t trust us? Erm, we have root. You do trust us with your data already. You trust us not to screw up on your machine with every update. You trust Debian, and you trust a large swathe of the open source community. And most importantly, you trust us to address it when, being human, we err.

This doesn’t build my trust; this shatters it. I did not switch to a free software operating system to have the overlords flaunt their control over my computer. Canonical has done many annoying and prioprietary things in the past, but “Erm, we have root” is antithetical to the very notion of software freedom. Ubuntu does not have root access on my machine, nor does Canonical have access to my data. Yes, I must trust the Ubuntu project every time I run updates on my system, but this is a relationship and responsibility to be handled delicately, transparently, respectfully — not a position of power to be flaunted. I trust Ubuntu to maintain the software on my computer. That I trust Ubuntu to provide my system with security updates and bug fixes does not in any way give them licence to do other things, like relay my Dash searches to a third-party through a proprietary network service.

To make matters worse, Mark Shuttleworth recently referred to “who rant about proprietary software” as “insecure McCarthyists.” In response to a question about “decisions that have been less than popular with the Free-software only crowd,” Shuttleworth writes:

Well, I feel the same way about this as I do about McCarthyism. The people who rant about proprietary software are basically insecure about their own beliefs, and it’s that fear that makes them so nastily critical. […]

If you think you’ll convince people to see things your way by ranting and being a dick, well, then you have much more to learn than I can possibly be bothered to spend time teaching.

Aside from the pot-kettle-black nature of his tone, this does not build my trust in Canonical.

These responses strike at very heart of my decision to use GNU/Linux — software freedom. Canonical has never consistently cared about software freedom, but their offences and missteps have come closer and closer to my everyday computing. Now, a serious violation of privacy is brushed aside dismissively because I should just trust Ubuntu and Canonical because “erm, we have root,” and to raise concerns about proprietary software is akin to “McCarthyism.”

No, Mr. Shuttleworth, you don’t have root. The fact that you think you do makes me want to move far away from Ubuntu.

After Ubuntu: An Exit Strategy

I would rather not leave Ubuntu. I don’t take the decision lightly. But developments over the past few years have made me very uneasy, and Shuttleworth’s attitude has shattered any trust I ever had in Canonical. Even if Ubuntu fixes this particular problem, I’m not sure what can be done to rebuild trust.

At the very least, I’m preparing an exit strategy:

  1. I’m going to install GNOME 3 in Ubuntu (and maybe LXDE). I like many things about Unity, but adjusting to a different desktop environment will make leaving Ubuntu easier.
  2. Then, I’ll re-evaluate other GNU/Linux distributions. I really like Debian GNU/Linux — it’s just the release cycle that gets me for a primary machine, but I’ve heard good things about Debian testing for everyday use. I’ll also take another look at Trisquel.
  3. I may give Ubuntu 13.04 a chance. I don’t look forward to migrating to another distribution, and the Ubuntu GNOME Remix might be a compromise. Also, it’s not just me — my wife, father, and some machines at the office all run Ubuntu, as well as my living room and recording studio machine. I’m just not sure if I can trust Ubuntu anymore. So, seeing as it may take me a few months to try out other desktop environments and distributions, I may wait to see what changes in Ubuntu 13.04, and re-evaluate middle-ground options like the Ubuntu GNOME Remix, though I’m wary of just “fixing” the problem for myself.

I’ve been patient through many Canonical missteps, and I’ve defended the Ubuntu project over the years. But the “erm, we have root” response shatters my trust in any Shuttleworth-run endeavour. It’s antithetical to the reason I switched to GNU/Linux — software freedom — and I’ll switch again if that’s what it takes.

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (4)

Watch Movie Kong: Skull Island (2017)


Quality : HD
Title : Kong: Skull Island
Release : 2017-03-08
Genre : Science Fiction, Action, Adventure, Fantasy min.
Stars : Tom Hiddleston, Brie Larson, Samuel L. Jackson, John C. Reilly, Terry Notary, Corey Hawkins, Jason Mitchell, John Goodman, Thomas Mann, Shea Whigham, John Ortiz, Toby Kebbell, Eugene Cordero, Jing Tian, Will Brittain, Richard Jenkins, Marc Evan Jackson, Thomas Middleditch, Thomas Middleditch

Explore the mysterious and dangerous home of the king of the apes as a team of explorers ventures deep inside the treacherous, primordial island.

Incoming search term :

Kong: Skull Island 2017
Kong: Skull Island English Subtitles
Watch Kong: Skull Island
Watch Kong: Skull Island English Subtitles
Watch Movie Kong: Skull Island
Watch Movie Kong: Skull Island 2017 English Subtitles
Watch Movie Online Kong: Skull Island 2017
Watch Movie Online Kong: Skull Island English Subtitles
Watch Full Movie Kong: Skull Island
Watch Full Movie Kong: Skull Island English Subtitles
Watch Full Movie Online Kong: Skull Island 2017
Watch Full Movie Online Kong: Skull Island English Subtitles
Streaming Kong: Skull Island Streaming Kong: Skull Island 2017 English SubtitlesStreaming Movie Kong: Skull Island 2017 Streaming Movie Kong: Skull Island English SubtitlesStreaming Online Kong: Skull Island Streaming Online Kong: Skull Island 2017 English SubtitlesStreaming Full Movie Kong: Skull Island 2017 English SubtitlesStreaming Full Movie Online Kong: Skull Island 2017 Streaming Full Movie Kong: Skull Island 2017 Streaming Full Movie Online Kong: Skull Island 2017 English SubtitlesDownload Kong: Skull Island 2017 Download Kong: Skull Island English SubtitlesDownload Movie Kong: Skull Island 2017 Download Movie Kong: Skull Island 2017 English SubtitlesDownload Movie Online Kong: Skull Island Download Movie Online Kong: Skull Island English SubtitlesDownload Full Movie Kong: Skull Island Download Full Movie Kong: Skull Island 2017 English SubtitlesDownload Full Movie Online Kong: Skull Island 2017 Download Full Movie Online Kong: Skull Island English Subtitles

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (5)

SOLUTION: Firefox Fails When Upgrading After Using Mozilla PPA

This is a quick fix for a problem I had when upgrading to Ubuntu 10.04, after having used the Mozilla PPA.

The Firefox upgrade failed during the distribution upgrade process (from 9.10 to 10.04). I was told to run `dpkg -a –configure`, and the same error occurred again (it’s in bold).

$ sudo dpkg -a --configure
Setting up firefox (3.6.3+nobinonly-0ubuntu4) ...
update-alternatives: error: alternative path /usr/bin/firefox doesn't exist.
dpkg: error processing firefox (--configure):
subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of firefox-3.5:
firefox-3.5 depends on firefox; however:
Package firefox is not configured yet.
dpkg: error processing firefox-3.5 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of firefox-3.0:
firefox-3.0 depends on firefox; however:
Package firefox is not configured yet.
dpkg: error processing firefox-3.0 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of firefox-gnome-support:
firefox-gnome-support depends on firefox (= 3.6.3+nobinonly-0ubuntu4); however:
Package firefox is not configured yet.
dpkg: error processing firefox-gnome-support (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of firefox-3.5-gnome-support:
firefox-3.5-gnome-support depends on firefox-gnome-support; however:
Package firefox-gnome-support is not configured yet.
dpkg: error processing firefox-3.5-gnome-support (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
firefox
firefox-3.5
firefox-3.0
firefox-gnome-support
firefox-3.5-gnome-support

A quick web search brought up a bug report, and I was able to figure out this fix with the help of one of the comments:

Update: Fixed.My original solution was only temporary, and had to be repeated for each Firefox update (all the way through every update with 10.04, 10.10, now 11.04…). I’ve found the root of the problem now, by comparing local dpkg diversions for Firefox on my affected machines against an unaffected clean Ubuntu install.

On my laptop:

$ sudo dpkg-divert --list | grep firefox
local diversion of /usr/bin/firefox to /usr/bin/firefox.ubuntu
local diversion of /usr/bin/mozilla-firefox to /usr/bin/mozilla-firefox.ubuntu

The clean Ubuntu install returned no results for the above command. (Also, note that in the full output for dpkg-divert –list, those were the only local diversion — another hint that they were from the PPA upgrade rather than Ubuntu itself.)

So, I ran the following commands to remove the diversions:
$ sudo dpkg-divert --remove /usr/bin/mozilla-firefox
$ sudo dpkg-divert --remove /usr/bin/firefox

Then, the most recent Firefox upgrades worked without a hitch on both of my affected machines. Finally fixed… *fingers crossed*

Updated: This isn’t a complete fix, as the problem reoccurs every time Firefox is updated. If someone knows how to fix this for good, let me know…

$ sudo rm /usr/bin/firefox
$ cd /usr/bin
$ sudo ln -s ../lib/firefox-<your-current-version>/firefox.sh firefox
$ sudo chmod 0777 firefox
$ sudo apt-get -f install

The symlink for /usr/bin/firefox had been pointing to /usr/bin/firefox-3.5, which no longer existed, so the commands above (1) remove the dead-end link; (2) add the proper link (YMMV depending on which version of Firefox you are upgrading to); (3) resume the upgrade process.

Hope that helps!

This is a quick fix for a problem I had when upgrading to Ubuntu 10.04, after having used the Mozilla PPA. The Firefox upgrade failed during the distribution upgrade process…

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (1)

Watch Movie Online Race (2016) subtitle english

Poster Movie Race 2016

Race (2016) HD

Director : Stephen Hopkins.
Producer : Karsten Brünig, Luc Dayan, Kate Garwood, Stephen Hopkins, Jean-Charles Levy, Nicolas Manuel, Louis-Philippe Rochon, Dominique Séguin.
Release : February 19, 2016
Country : Canada, Germany.
Production Company : Forecast Pictures, Solofilms, JoBro Productions & Film Finance, Trinity Race.
Language : English.
Runtime : 134 min.
Genre : Action, Drama.

Buy Now on Amazon Race (2016) Full Movie

Movie ‘Race’ was released in February 19, 2016 in genre Action. Stephen Hopkins was directed this movie and starring by Stephan James. This movie tell story about Based on the incredible true story of Jesse Owens, the legendary athletic superstar whose quest to become the greatest track and field athlete in history thrusts him onto the world stage of the 1936 Olympics, where he faces off against Adolf Hitler’s vision of Aryan supremacy. Starring Stephan James, Jason Sudeikis, Jeremy Irons, Carice Van Houten and William Hurt – Race is an enthralling film about courage, determination, tolerance, and friendship, and an inspiring drama about one man’s fight to become an Olympic legend.

Do not miss to Watch movie Race (2016) Online for free with your family. only 2 step you can Watch or download this movie with high quality video. Come and join us! because very much movie can you watch free streaming.

Watch movie online Race (2016)

Incoming search term :

Watch Race 2016 Online Free Viooz
Watch Race 2016 Online Megashare
streaming Race 2016 movie
Race 2016 Watch Online
download full film Race 2016
film Race 2016 trailer
watch Race 2016 movie online now
Race 2016 HD English Full Episodes Download
Watch Race 2016 Online Free megashare
Watch Race 2016 Online Free putlocker
Race 2016 English Episodes
Race 2016 English Full Episodes Download
Race film
watch Race 2016 film now
Race 2016 Episodes Watch Online
Watch Race 2016 Online Putlocker
download film Race 2016 now
Race 2016 English Episode
Race 2016 For Free online
Race 2016 Full Episodes Watch Online
Watch Race 2016 Online Free Putlocker
watch full Race 2016 film
live streaming film Race online
Race 2016 For Free Online
Race 2016 English Full Episodes Watch Online
streaming movie Race 2016
film Race online streaming
Race 2016 Online Free Megashare
Race 2016 Episodes Online
Race 2016 Full Episodes Online
Watch Race 2016 Online Free
Race 2016 English Episodes Free Watch Online
Race 2016 English Full Episodes Free Download
streaming film Race 2016
Race 2016 English Full Episodes Online Free Download
Race 2016 Full Episode
film Race 2016 streaming
Race movie download
Race 2016 HD Full Episodes Online
Watch Race 2016 Online Viooz
Race 2016 film download

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (3)

SOLUTION: Extract .exe archive with 7z in Ubunu 9.04, fix “Unsupported Method” error

Just posting a quick fix to a problem I had with using 7z to extract an archive. I could list the contents of the archive, but any attempts to extract gave an “Unsupported Method” error. Dan Jacobson posted a solution to the debian bug tracking system, which is to install the package p7zip-rar.

In Ubuntu 9.04, I ran:
sudo apt-get install p7zip-rar

Now, I can extract the contents of my file with 7z as follows:
7z e TekSavvyAM.exe

Just posting a quick fix to a problem I had with using 7z to extract an archive. I could list the contents of the archive, but any attempts to extract…

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (10)

HOWTO: Installing Android on the Freerunner + Rogers APN

I’ve been using the Openmoko Neo Freerunner as my mobile phone for over two months now. The phone can run a variety of software distributions. I started off with the Om 2008.12 Update, but spent the first few weeks testing out other popular distributions: FDOM, SHR, Qt Extended and finally Android. When I first tested Android, I had some trouble connecting to the GSM network and it felt like there were still some issues being worked out, so I went back to Om 2008.12, with the intention of dual-booting Android. The dual-boot turned out to be a bit trickier than anticipated, and I kept putting it off. Om 2008.12 is a cool idea, but there were some really annoying bugs and little hope of future development [Update: Ben left a comment about the recent flurry of development, including progress on Om2009t5], so yesterday I took the dive and went to a single-boot Android setup.

I started off on the Openmoko wiki page about installing Android on the Freerunner, but the installation is quite simple if you’re going with Koolu’s Android images (though there are a few other options). They provide a near automatic installation with the latest beta releases. Simply visit the website to download the images, and the installation process is dead simple:

Installation Instructions for Beta4 and Later

  1. Unpack the files on to a FAT formatted SD card.
  2. Insert card into the Freerunner, and boot from NOR menu (hold AUX key, then power)
  3. Chose boot from SD Card (FAT and ext2)

The automated install process should begin. It installs the Qi bootloader, reboots, the kernel, reboots, then the system image.

NOTE: This install process overwrites *everything* on the NAND in the phone, including the bootloader. If this is not what you would like to do, please either look at the install process, and modify it to suit your needs.

I’m in the process and figuring out the APN settings for Rogers to make use of my data plan. Oliver Fisher has the details for how to setup the Rogers APN on a G1, which matches the details I got from calling Rogers tech support, but I haven’t been able to connect yet. Not sure if this is a problem with my APN settings or with my data plan. I’ll update this post with the details when I figure it out.

Update: I can’t seem to get connected, though sometimes it says connecting, but I’ve found two posts about the Android settings on the T-Mobile G1 with Rogers which match what I’ve been told when calling 1-888-ROGERS1 (internet.com, wapuser1 / wap).

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (2)

Solution: Amarok Won’t Play Anything After An Upgrade To Ubuntu 9.04

I was happy to discover earlier today that Ubuntu 9.04 includes Amarok 2. But once I figured out how to queue up some music (which took a little time), I realized that nothing would play.

This was the standard output when I ran it from the command line:
balleyne@balleyne-laptop:~$ amarok
amarok(14270) Phonon::KdePlatformPlugin::createBackend: using backend: "GStreamer"
Object::connect: No such slot MainWindow::showStatistics() in /build/buildd/amarok-2.0.2mysql5.1.30/amarok-2.0.2/src/MainWindow.cpp:692
Object::connect: (receiver name: 'MainWindow')
QLayout: Attempting to add QLayout "" to MainWindow "MainWindow", which already has a layout
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
QWidget::insertAction: Attempt to insert null action
QWidget::insertAction: Attempt to insert null action
QWidget::insertAction: Attempt to insert null action
QWidget::insertAction: Attempt to insert null action
QWidget::insertAction: Attempt to insert null action
QWidget::insertAction: Attempt to insert null action
QWidget::insertAction: Attempt to insert null action
amarok(14270) Plasma::Applet::save: saving to "1"
amarok(14270) Context::ContextView::setContainment: "" Line: 599
amarok(14270) Plasma::ThemePrivate::config: using theme for app "amarok"
amarok(14270) Plasma::Applet::save: saving to "2"
amarok(14270) Plasma::Applet::save: saving to "3"
amarok(14270) Plasma::Applet::save: saving to "4"
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
amarok(14270) Context::ColumnContainment::insertInGrid: "" Line: 603
amarok(14270) Context::ColumnContainment::insertInGrid: "" Line: 603
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
Object::connect: No such slot FileBrowser::Widget::setDir( const QString& ) in /build/buildd/amarok-2.0.2mysql5.1.30/amarok-2.0.2/src/browsers/filebrowser/FileBrowser.cpp:112
Object::connect: (sender name: 'KBookmarkHandler')
Object::connect: (receiver name: 'FileBrowser::Widget')
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
link XMLID_7_ hasn't been detected!
link XMLID_7_ hasn't been detected!
Couldn't resolve property: radialGradient3986
balleyne@balleyne-laptop:~$ amarok(14270) MagnatuneConfig::load: load
QPainter::begin: Cannot paint on a null pixmap
QPainter::begin: Cannot paint on a null pixmap
QPainter::begin: Cannot paint on a null pixmap
QPainter::begin: Cannot paint on a null pixmap
QPainter::begin: Cannot paint on a null pixmap
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
amarok(14270) CoverFetcher::CoverFetcher: ""
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
QString::arg: Argument missing: Amarok - No track playing., 0:00
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
amarok(14270) CurrentTrack::dataUpdated: CurrentTrack::dataUpdated
amarok(14270) Context::ContextView::clear: "" Line: 165
amarok(14270) Context::ContextView::clear: "" Line: 165
amarok(14270) Context::ContextView::clear: "" Line: 165
amarok(14270) Context::ContextView::clear: "" Line: 165
amarok(14270) CoverFetcher::~CoverFetcher: ""

The “QString::arg: Argument missing: Amarok – No track playing., 0:00” seemed to be the problem. I found the solution from Xavier Merino:

sudo apt-get install phonon-backend-xine

I restarted Amarok and now it works fine.film The 5th Wave trailer

Update: People are reporting mixed results in the comments. This fix doesn’t work for everyone. Let me know if you become aware of a better solution and I’ll update here.

Another suggestion is sudo apt-get install libxine1-ffmpeg

I was happy to discover earlier today that Ubuntu 9.04 includes Amarok 2. But once I figured out how to queue up some music (which took a little time), I…

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (19)

Getting Started with the Openmoko FreeRunner: Installing Om 2008.12 in Ubuntu

Heather, my girlfriend fiancée, was kind enough to buy me an OpenMoko Freerunner in January. I went out to get a new SIM card (since there were known issues with my current one) and I experimented with it for a couple weeks, but had to leave it be lately as the past couple months have been very busy.

This morning I got back into the game.

One thing I wish I’d known from the outset is that there are a bunch of different distributions available. When I went into the IRC channel for help, I got several (polite) rtfms directing me to the Getting Started guide (which I was already looking at). Except, the Getting Started guide and FAQ provided a ton of contradictory information (which I’ve since tried to correct) about which distribution ships by default, nevermind a clear explanation that there are different distributions to begin with. Even worse, the FreeRunner ships with Om 2007.2, which is old, basic and not even supported anymore. (My mom asks, “so, would you say that it’s not quite ready for the average user yet?” Considering that the first order of business is to reflash it with a new distribution…) It took me a while to figure all that out. I hope to spend some more time soon trying to improve the documentation so that new users aren’t as confused as I was in the beginning.

I’ve decided to start with Om 2008.12 Update, the latest official distribution. I may consider FAT and Dirty Openmoko (FDOM) soon, which is just Om 2008.12 “updated with many ready-to-use applications.” Qt Extended is on my radar as the just-a-working-phone distribution (but where’s the fun in that?). Though, the next major step I think will be to dual-boot with Android, as that seems like it may be the best option in the long-run (though it’s very much a work in progress now).

Installing Om 2008.12 Update in Ubuntu

Installing Om 2008.12 was actually pretty easy in Ubuntu: download the kernel and rootfs, then follow the instructions to flash the NeoFreeRunner. (I didn’t worry about a backup since I had nothing of value on there.)

I choose to use dfu-util instead of the NeoTool GUI because dfu-util is already in the Ubuntu 8.10 repositories.

sudo apt-get install dfu-util

I only encountered one problem when following the instructions. When I tried to run the dfu-util command, it detected two devices, even though I had nothing else plugged into my laptop but a power cord. The second one was named “UNDEFINED”, which wasn’t particularly helpful either.

$ sudo dfu-util --llist
dfu-util - (C) 2007 by OpenMoko Inc.
This program is Free Software and has ABSOLUTELY NO WARRANTY
Found Runtime: [0x1d50:0x5119] devnum=4, cfg=0, intf=2, alt=0, name="USB Device Firmware Upgrade"
Found Runtime: [0x0a5c:0x2110] devnum=3, cfg=0, intf=3, alt=0, name="UNDEFINED"

According to the comments on this ticket, it’s actually expected behaviour for dfu-util, and it could very well be my bluetooth interface that was showing up. Instead of disabling it, I just used the -d flag as suggested in the comments to specify which device to update. (Also, under Ubuntu, don’t forget sudo…)

sudo dfu-util -a kernel -R -d 0x1d50:0x5119 -D Om2008.12-om-gta02.uImage.bin
sudo dfu-util -a rootfs -R -d 0x1d50:0x5119 -D ./Om2008.12-om-gta02.rootfs.jffs2

… where 0x1d50:0x5119 is vendor/product ID of the FreeRunner (found via `dfu-util –list`).

The FreeRunner can boot from flash memory or a microSD card. I plan to try Om 2008.12 (or a variant) in flash and I’ll probably dual-boot with Android on the microSD card at a later date. So far, I’ve just turned it on and sent Heather a message and added her as a contact, but I hope to finally be getting some real use out of it soon!

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Post a Comment

HOWTO: Compile Unison (and OCaml) under Unslung 6.10 on a Linksys NSLU2

This is a pretty obscure and incomplete howto, but I was left to figure all this out without much help so I figure I might as well post what I learned in case it is of assistance to anyone else.

At the office, we’re running a Linksys NSLU2 with the Unslung 6.10 firmware as our file server. We wanted to use Unison to do a two-way sync between portions of the server and a laptop, so that we can access documents offline and out of the office (e.g. in a meeting off-site). The unslung NSLU2 has a lot of software available through the OptWare package system, but Unison is not available. Since the architecture is non-standard (I want to say “arm” or something? anyways, not x86), I figured we’d have to compile from source. Then, one more roadblock — it’s written in OCaml, which also lacks an OptWare package and would need to be compiled from source.

Obviously, make sure you read and follow all the instructions provided with OCaml and Unison, and be sure to pay attention to the documentation at the NSLU2 Linux wiki. The following are just some tips for things that weren’t in the documentation which we had to figure out along the way.

Compiling OCaml

This proved a bit tricky. First all, you’ll need to install a few dependencies, which thankfully have OptWare packages available: make, crosstool-native (for gcc), and gawk.

Second, make sure to use the prefix flag in the configure step to install to /opt/bin and /opt/lib, rather than the standard /bin and /lib (i.e. you want to install it on one of the NSLU2 drives, not the limited internal memory). So, for example:

./configure -prefix /opt

Last, there is one problem with the MakeFile generated — there is a reference to “awk” somewhere to needs to be changed to /opt/bin/awk (unless you’re luckier than me and somehow have /opt/bin correctly on the path, but trust me, I tried…). So, I did a `grep -n awk MakeFile` to find it and then you can use nano/vim to make the edit manually to the file before compiling.

If you do those things first, compilation should be easy (just be prepared to wait awhile):

make world opt 2>&1 > log.worldopt
make install

Compiling Unison

Don’t ask me what “etags” are, but the compiler will complain if you don’t have them, and I figured out it has something to do with emacs. Once you install emacs, it gets past that stage in the compilation, so:

ipkg update
ipkg install emacs

The emacs installation actually gave me an error with a file conflict of sorts, so I had to run:
ipkg -force-overwrite install emacs

For some reason, Nathan discovered that you need to set NATIVE=false when you make Unison. I didn’t see the command, but I gather it looked something like this:
make NATIVE=false UISTYLE=text

Lastly, you’ll want to put unison on your path, so something like…
cp ./unison /opt/bin/

And then, magic! Or tragedy, if you did something wrong.

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Post a Comment

HOWTO: ThinkVantage Button in Ubuntu 8.10

I’m pretty sure this is the same fix I used in Gutsy and Hardy, but I had to do it again to get my ThinkVantage button working on my ThinkPad T61 in Ubuntu 8.10 Intrepid. I just added the following line to /usr/share/hotkey-setup/ibm.hk and it worked after a reboot.

setkeycodes e017 148 #thinkvantage button

Creative Commons Attribution-ShareAlike 4.0 International Permalink | Comments (1)