UBports Logo

I Love My Ubuntu Phone!

A few months back in Using ssh to Connect to My Ubuntu Phone I described how easy it was to shell into my Ubuntu phone. I’ve now been using it as my only phone for more than three months, so it’s time for a long overdue update.

What I Want in a Phone

With the major phone os makers driven to exploit their increasing knowledge of their users to manipulate them to do things, I want a phone that serves my needs, rather than the other way around. My needs are simple, so I don’t want a million apps. My top priorities are:

  1. Make phone calls (duh!)
  2. Send text messages
  3. Browse the web
  4. View a map of my current location
  5. Listen to podcasts and audio books

I also like to be able to do geeky Linux things using command line tools. My Ubuntu phone makes is super easy to do just that.

To take screenshots of the phone’s UI, you hold down the volume up and volume down at the same time. The images are placed in the /home/phablet/Pictures/Screenshots directory, so after:

$ adb shell

I could cd into the subdirectory with the screenshots and scp them outside the phone. My phone home screen at present looks like this:

Ubuntu Touch Screenshot 1 Ubuntu Touch Screenshot 2

LibriFox

My favorite app on the phone is LibriFox, which is an audiobook player originally written for Firefox OS. Three Summers ago I sponsored a very talented student, Alex Hirschberg, in what I called a “Summer of Code”. I documented this in two blog posts, Firefox OS App Development “Summer of Code” Begins and Mobile Happiness with Firefox OS!. Alex did an amazing job developing the app using my user stories to guide him. This approach almost assures that the customer gets software that satisfies their wants and needs. I certainly did.

<<<<<<< HEAD So I was heartbroken when Firefox OS was discontinued. Now that I’m plunging headlong into my second likely to be discontinued free software mobile phone platform, I naturally wanted to bring LibriFox over to it. Fortunately, I found another super smart student, Marco Sirabella, willing to take on the challenge.

LibriFox lives again, this time on Ubuntu Touch. In addition to downloading and playing free audio books directly from the Librivox ======= It is not surprising that LibriFox is my favorite app. Alex created it using my `user stories for requirements, so I was getting just the application I wanted. And he really delivered, too! LibriFox has a clean, elegant interface and a simplicity in functionality that brings joy to my Pooh bear brain when I use it.

So naturally I was heartbroken when Firefox OS was discontinued. Now that I’m plunging headlong into my second likely to be discontinued free software mobile phone platform, I naturally wanted to bring LibriFox over to it. With another super smart student, Marco Sirabella, willing to take on the challenge, that has now been accomplished.

This screenshots shows LibriFox running on my OnePlus One phone with two audio books loaded - one from LibriVox and another I converted from Audible: >>>>>>> 97c66a3445f0b0c90d4d8639ae08d66316a90c5c

Ubuntu Touch Screenshot 3

Playing Audible Books on LibriFox

In addition to downloading and playing LibriVox books, I want to be able to play my Audible books on LibriFox as well.

To do that I use the following process:

  1. Use a de-DRM tool to remove the freedom destroying access control bits from the audio books which I purchased from Audible, converting the entire book into a single FLAC file.
  2. Use Audacity to split the book into separate WAV files by chapter.
  3. Use FFmpeg to convert the WAV files to MP3.
  4. Use Ex Falso to edit the ID3 metadata, setting the title attribute to the name of the chapter, the album attribute to the name of the book, and the tracknumber attribute to a number that determines the order in which the chapters appear.
  5. Finally, I use adb push to copy the chapter files to /home/phablet/.local/share/librifox.mjsir911/persistent/AudioBooks. LibriFox does not currently allow subdirectories inside the AudioBooks directory, so I use a [book name]_[chapter name].mp3 file naming convention to group the files in a directory listing by book.

Here is a screenshot showing LibriFox displaying the chapters in the currently playing book:

Ubuntu Touch Screenshot 4

Final Thoughts

I made this post in response to a discussion on open source phones that appeared recently on the schoolforge-discuss mailing list. While a relatively small group, we free software activists are deeply dedicated (read: completely insane ;-), and thus stubbornly persistent.

I can only handle one open source phone project at a time, and I’ve already committed myself to the Ubports effort. Still, it is comforting to know that Sailfish OS is alive and kicking and could provide me with yet another quixotic phone os to use should Ubports go the way of Firefox OS.