Wednesday, July 29, 2009

How to get Chromium / Chrome Nightly Builds on Mac OS X

Google Chrome has been out as a public release for quite some time for Windows, but hasn't been available as a release for the rest of us, that is, Linux and Mac users. You might have heard is blazing fast. Luckily, since Chrome is just Chromium with official Google branding tacked-on, its available in source-code form which you can check out and build. This is a tedious process however; the build takes hours to complete from scratch on my Macbook. The upside is that the process can be automated on your Mac with some scripts that run automatically to pull the latest revisions, and recompile and build Chromium.

Then there is the so called alpha "release", which is nothing more than the binaries from a snapshot of their main tree, and which is by now a really old revision which doesn't do many useful things. As I last recall, this revision couldn't correctly copy and paste, keep bookmarks, or do any other non web-browsing function. Clicking around the web worked; nothing else did. Did I mention it was blazing fast? You know how when you start Firefox, the icon jumps up and down 8-10 times in the Dock while it loads? Chromium doesn't have time to make a single jump. Pages load faster than on Firefox for sure, and I like the interface better than WebKit nightlies or Safari proper.

Then, today, I found the Chromium project buildbot. My little bit of reading up on buildbot during my final days on the NS3 project told me this was the trick. If you don't know, buildbot is a system which automatically builds / compiles software from source then runs unit tests, regression suites, etc. on the code base to make sure there have been no regressions. It's highly configurable and can do this over a farm of real or virtual machines with different processor architectures, operating systems, compiler versions, etc. It can be configured to make the binaries it builds for different platforms available via its web interface. This is precisely what the developers of Chromium have done. Have a look here for yourself to see the Mac OS X builds. The file in this directory "LATEST" is a plaintext file with one line which is the latest revision number that the buildbot has tested, and there is a corresponding folder. Whenever the bot builds another rev, this file is updated, and a new directory full of the bleeding edge binaries is added.

So I whipped up this little script for myself. It pulls down the latest zip of the build, unzips out the Chromium.app, and moves it to your Applications folder. YMMV, but it works for me and here it is. (UPDATED 11 Nov 2010, thanks to thbarnes from the comments; the update makes it more generic by replacing my home directory name with "~", and updating the chromium buildbot URL to what the project is using these days. Also, make a folder on your desktop called chromium_nightly for this to work)

#!/bin/bash

BASEDIR=http://build.chromium.org/f/chromium/snapshots/Mac
cd ~/Desktop/chromium_nightly

echo "Downloading number of latest revision"
REVNUM=`curl -# $BASEDIR/LATEST`

echo "Found latest revision number $REVNUM, starting download"

curl $BASEDIR/$REVNUM/chrome-mac.zip > $REVNUM.zip

echo "Unzipping..."
unzip $REVNUM.zip 2>&1 > /dev/null
echo "Done."

echo "Moving to Applications directory..."
rm -rf /Applications/Chromium.app/
mv chrome-mac/Chromium.app/ /Applications/
echo "Done, update successful"
I hope you like using Chromium as much as I do.

Monday, January 26, 2009

Update: Easy way to get Apple TV boot.efi

Apparently, the file lives in the "firmware" DMGs that Apple offers for download. The most recent version at the time of writing is available from Apple here. You might find a more recent version listed at the bottom of the page on the AwkwardTV wiki, which also features a great collection of information about hacking with Linux on your Apple TV.

To get a copy of boot.efi (on a Mac)
Download the file, and mount it by double clicking; it should mount as /Volumes/OSBoot. On this mounted filesystem, navigate to System/Library/ and copy the boot.efi file you find here. That's all!

The previous post is still valid as a means of ssh-ing into you Apple TV, fun for tinkering anyway :-)

Enable ssh on Apple TV


It has been a long time , but I am going to try and post more frequently again. Lots of technologically cool things have happened since I last posted. Most recently, I helped a friend install OS X onto an external USB drive in a way that makes the USB drive bootable on an Apple TV!

I followed the directions here mostly:
http://www.hackint0sh.org/forum/f98/634.htm
There is a section where it mentions a boot.efi file, but no link or hint or info is given. So, this is how you get the boot.efi file.
Update: I posted a much easier way; This guide remains valid as a way to enable ssh.

The approach is to install an ssh daemon onto the Apple TV, and then copy the boot.efi file to your local machine. On a Mac:
  1. Get the atvusb-creator, and run it
  2. Make a USB stick or drive with that tool. For this, we only need the ssh daemon, so untick the other options:
  3. In the "Create Using->" drop down, choose your USB device which will be the vector for the ssh change.
  4. Click the "Create Using->" button. atvusb-creator will download the Apple TV firmware. Let it do its thing.
  5. When its done, eject the USB drive and plug it into a powered-down Apple TV, and then power up. You'll be greeted by Tux sitting on an Apple TV, followed by a kernel boot and some messages! It will install the patch, and then prompt you to yank the power on the Apple TV. Remove the flash when you do so, then power up the Apple TV.
  6. Navigate the Apple TV setup menu until you find the Network settings which specify the IP address of the Apple TV. Lets call this a.b.c.d
  7. From your Mac now, open a terminal.
  8. scpssh frontrow@a.b.c.d:/System/CoreServices/boot.efi .
  9. The password is frontrow
Congrats, you now have made a copy of the boot.efi from your Apple TV! Now use that file in your procedure as specified in the link above. are in to your Apple TV! Play around with the terminal and enjoy!

Tuesday, August 26, 2008

iPhone Jailbreak Update

I ended up jailbreaking my iPhone! I have been using the iPhone dev team's PwnageTool. The process is as I suspected:
  1. Get the tool
  2. Get Apple firmware (tell iTunes to download but not install)
  3. Allow the tool to find and patch the firmware
  4. Force the phone into update mode
  5. Flash the patched firmware onto your phone
  6. Restore your phone
The tool really walks you though steps 3-5, so it should be straightforward. There are some REALLY cool Cydia/Installer Apps that aren't available in the App store. My favorite is MxTube, a tool that lets you download YouTube content onto your phone for offline viewing. I started working on an app that does this on your Mac...but more on this later if I ever get it off the ground. The coolest thing in my mind is the ability to ssh into your iPhone and tinker. I have also successfully used SOCKS proxy techniques on my phone to enable me to use 3G on my laptop. More on this in another post as well.

The downside of jailbreaking is that whenever Apple pushes a new firmware out over iTunes, you have to wait for a new PwnageTool update which can patch the latest firmware. It has been my experience that it takes them on the order of several days to get out the PwnageTool update. Luckily, the tool which supports firmware 2.0.3 just came out, so I will be using that to update tonight. Happy jailbreaking!

Sunday, August 17, 2008

Comcast Firewire Audio Update

Okay, two updates. The first is that I have found a workaround to the issue! I posted it to the AVS thread first, so you can see that there, I am hoping to do a nice tutorial here soon.
http://www.avsforum.com/avs-vb/showthread.php?p=13927293

The second update is also related to the forum: someone there works for Comcast and is working to get the issue fixed! If you have this problem, please see the forum post and reply to the guy there with the info he requests. According to them, the engineers are looking at the issue.

Friday, July 25, 2008

Comcast broke firewire audio in firmware update

I recently noticed my Comcast DVR (Motorolla DCT6XXX something) had different looking menus from before, indicating to me that the firmware had been updated. Incidentally, this breaks the firewire DVR goodness I have been using for months to increase my DVR storage space. I'm going to call Comcast and complain that they are breaking FCC rules here. The only thing I could find on the nets was this single forum post.

If anyone out there knows of a solution, please post comments here.

Sunday, July 20, 2008

No word from the community on 2.0 jailbreak

My RSS feeds are all coming up with nil on the iPhone jailbreak front. From what I can gather from reading comments in the few posts I have found, it looks like it doesn't brick your iPhone and works just as promised. I think I'm still going to wait just a bit longer for some good guides with more clear info to come out before I jump in head first. I'll be posting updates here as I progress in jailbreaking my iPhone.