Monday, December 14, 2009

Mount the iPhone on Ubuntu

I had some experience with the iPhone jailbreaking, and liked it very much. To be able to detain complete control of your mobile is very nice (from SSH mostly, you can just do anything you want). The latest 3.1.2 firmware did not come out right just yet, and I am having problems (already spent long nights trying to solve it) with my SSH connection.

Meanwhile, I really needed an alternative to access my phone the way I want. Then I got to know the libiphone, a package prepared to mount your iPhone on linux (it should be possible, since you connect the device through USB and such). Actually, the iFuse is a ready-to-go package that you just install and start using.

I went through the compiling it from the source, but it is too much trouble. Just follow the DEB packages example (to add their address to the repository list), and use simple apt-get, that will give same result.

I will leave here a beginner version of the installation procedure (as explained in the main page of iFuse):

# to get your ubuntu release codename
codename=`cat /etc/lsb-release | grep CODENAME | awk ' BEGIN { FS="=" }; { print $2 }'`

# place the iFuse repository urls
echo -e "
# For iFuse (manually added at `date +'%Y/%m/%d %H:%M:%S'` by $USER)
deb http://ppa.launchpad.net/jonabeck/ppa/ubuntu $codename main
deb-src http://ppa.launchpad.net/jonabeck/ppa/ubuntu $codename main" >> \
/etc/apt/sources.list

# register iFuse key
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com F0876AC9

# install the application
sudo apt-get install ifuse 

Once the application is installed (this took me a while to figure out, since most help available, here, talk about a mount.fuse.ifuse that does not come with the ifuse packages by default).

# to mount the iPhone (does not require jailbreak)
ifuse /path/to/mount/point/

# to unmount the iPhone
fusermount -u /path/to/mount/point/

# where the /path/to/mount/point/ is anything you want.
# Following a standard in Ubuntu, I suggest creating a directory at:
# /media/iPhone/ (also advised by the iFuse help page).

The only problem is that this action only mounts the current logged in user on the iPhone, the [mobile] user, which means that you will have access to everything it has, but nothing else beyond that.

To mount the root path (and have total control of the phone), you need to:

# to mount the iPhone (requires jailbreak)
ifuse /path/to/mount/point/ --root

Note: This did not work for me on 3.1.2 version... :(
The screenshot of what the attempt does with my iPhone directory... (weird)


Friday, December 11, 2009

Wallpaper rotation with Drapes

I was recently checking the news on Linux Journal, when this post caught my attention. I had seen this kind of software before, but never gave it a try on Ubuntu. The application Drapes is really simple.

After a simple installation:
$ sudo apt-get install drapes
It just worked perfectly.  I keep saying, if the quality and easiness of programs on Ubuntu (Linux in general) continue on this pace, there will be no room for competitors soon...

Some screenshots:

How to start it for the first time (later you just set it to start on machine startup):



Check the settings:



Monday, December 7, 2009

Python, Python and Python

Just recently (a year ago, maybe) since I decided to move to python programming for real, motivated by the Google App Engine (GAE), and by the fact that Google is all about python.

I even started an open-source initiative at work (actually on my spare time and late hours at home), the JobTracker (a tool to monitor and measure team work), using Google's infrastructure on GAE. The results are good, although there is a lot of work to be done (database issues, performance, and reliability - Google went off-line 5 times unexpectedly since I started using). But the every day work from their team is noticeable and incentives all of us to use the framework.

Today I just got the news that I was not the only one affected by it, laughs... A report from Evans Data tells: New Survey Shows Python Use Has Risen 45% Since Google App Engine Debuted (the link requires registration).

For those interested in adventuring in python, I recommend:
Dive into Python


You can download this book for free. Useful for those coming from other languages (recommended to me by a friend).

And for those crazy about it already, I would take a pick at:

http://www.pythonchallenge.com/

Happy python programming!!!

Thursday, December 3, 2009

Pidgin Accounts disappearing

This is the second time it happened to me (now on Ubuntu 9.10, since 9.04). I reported first here (bug 331863), but I will leave posted in my blog for my reference.

The issue is that every time you start pidgin, the initial screen comes up with no Accounts registered, and even if you do that, it still pops up back with no accounts.

In the here (bug 331863), some people reported locking issues, but with me it was the simple fact that the pidgin home directory was created by root and not by my user, hence the pidgin application did not have enough permissions to store any data there.

To solve it, simply change the owner of the folder to your own username:

# do it recursively if there are any files in there (not likely though)
user@localhost:~$ sudo chown user:user ~/.purple/ -R

And pidgin should be able now to store your account info there.

Tuesday, December 1, 2009

VirtualBox Client screen resolution


I was testing the VirtualBox (with USB support) version, and notice something different from the previous version (or some discrete incompactibility to the new Ubuntu 9.10). Even if you install the Guest Additions, the VirtualBox does not allow you to increase the default screen size (800×600). I found the solution for this here, but for my own reference, I will leave the code posted here too:
Just close the current VirtualBox, and from the terminal (command-line), you just type:

# the resolution should be the maximum supported by the host screen
user@localhost:~$ VBoxManage setextradata global GUI/MaxGuestResolution 1280,800

And once you restart VirtualBox, you may then increase the screen resolution on the client machine.

Starting… (again)


After many complaints on why my website is not well enough interactive as it should, I decided to move to a better environment ready for this.
This is a simple reference guide to my own experiences on Linux world. My previous posts are located at:
(under Google Sites, which lack some blogging features, as of this moment – no doubt, it is supposed to be a Wiki solution, so I dont blame them for that).
Hope to see people around… :-)