Tuesday, December 18, 2012

Using development builds of Firefox Nightly

Using Firefox Nightly as my default web browser lets me test the Firefox development changes every day. Firefox Nightly is built from the latest code changes in mozilla-central repository every night. You can learn more about Mozilla Firefox development builds here.

If you are interested to participate in Firefox development, it is good start to use Firefox Nightly or building Firefox from the sources. You can report new bugs you spot in development builds of Firefox Nightly. You can find simple bugs to fix and test new patches.

In this blog post, I'll explain how to install Firefox Nightly and run multiple version of Firefox on gnu/Linux computer. These instructions will also apply to other operating systems. You might need to substitute the paths to Firefox program to match your operating system.

If you are using Mozilla Ubuntu Daily PPA, You can remove those PPA packages safely with 'ppa-purge' command.

 $ sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa

Firefox Nightly on gnu/Linux

Download the Firefox Nightly for gnu/Linux from nightly.mozilla.org. Uncompress the tar.bz2 archive to a directory on your computer. I usually place my programs in /opt/ partition, but you can choose any different directory.

Here is the Firefox Nightly program path /opt/Firefox-Nightly/firefox on my computer. Make sure you have write permission to your Firefox Nightly directory, otherwise you'll have problems while installing the nightly updates.

You can now launch Firefox Nightly using following command /opt/firefox-nightly/firefox -P --no-remote . The -P option starts the Mozilla Profile Manager and --no-remote starts a new instance of Firefox.

Next lets set Firefox Nightly as the default browser with update-alternatives program, this program makes changes to symlinks on Debian/Ubuntu operating systems.

sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /opt/firefox-nightly/firefox 10


$ sudo update-alternatives --config gnome-www-browser 
There are 5 choices for the alternative gnome-www-browser (providing /usr/bin/gnome-www-browser).

  Selection    Path                          Priority   Status
------------------------------------------------------------
  0            /usr/bin/google-chrome         200       auto mode
  1            /opt/firefox-nightly/firefox   10        manual mode
  2            /usr/bin/chromium-browser      40        manual mode
  3            /usr/bin/epiphany-browser      85        manual mode
* 4            /usr/bin/firefox               40        manual mode
  5            /usr/bin/google-chrome         200       manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /opt/firefox-nightly/firefox to provide /usr/bin/gnome-www-browser (gnome-www-browser) in manual mode.

# Launch Firefox Nightly and choose your default profile.
$ /opt/firefox-nightly/firefox -P --no-remote 

For other operating system, read How to make Firefox default on support.mozilla.org website.


How to run multiple Firefox Browsers

If you want to use multiple versions of Firefox at the same time. For example, You want to use Firefox Nightly along side the Firefox Stable version or test a localized version of Firefox for your language.

Open your system terminal and launch Firefox with following command firefox -P --no-remote and choose a different profile for this instance of Firefox.

You can learn more about Firefox Profiles here on Multiple Firefox Profiles page on Mozilla Developer Network (MDN).

Have fun testing Mozilla Firefox Nightly! Don't forget to report bugs and send patches!


Sunday, December 16, 2012

Barcamp Phnom Penh 5

Last year we kick-started Mozilla Firefox Aurora Khmer localization effort at Barcamp Phnom Penh 4. Now a year later, Thanks to efforts of Mozilla Khmer L10N team and invaluable support of several people from various organizations. We have a successful release of Firefox Khmer.

Barcamp Phnom Penh is community organized two day un-conference held in the capital city of Cambodia. Walking around Barcamp Phnom Penh at University of Puthisastra in central Phnom Penh, you'll encounter young Cambodian's engaging in social media on latest smart phones and tablets everywhere. There are numerous booths advertising smart phones, right next English language schools, Media and NGO organizations.

At Barcamp Phnom Penh 5 this year there was marked improvement in quality of talks. The technology related talks were really in-depth and encouraged participation from audience. Cambodia has good English language penetration, learning English ensures better livelihood. In country where 50% of population live below the poverty line, the Cambodian youth have an insatiable thirst for learning and making a better life. This spirit attracts me to Cambodia time and again.

Firefox Khmer, FirefoxOS and Web API

On the first day of Barcamp Phnom Penh, I talked Mozilla mission and future of Web, As a platform. The demo of development version of FirefoxOS phone was well received.

The next day Vannak ENG talked about the about Mozilla localization and walked the audience through various steps of translating Firefox. It was great to see people hanging out after the talk to interact with Vannak. Such interactions help us build a good contributor community and help keep the Firefox translations update-to-date every 6 weeks

Mozilla Khmer L10N demo

At the end of Barcamp Phnom Penh, I gave lightening talk titled '6 kick-ass things you can do with your browser'. The talk provided a whirlwind tour of Mozilla Web API and their status.

Khmer Language support in Firefox Mobile on Android 4.1 (Jelly Bean)

I met Danh Hong, the creator Khmer Web Fonts and we talked about the font rendering issues in Firefox Mobile(Bug 793474) running on Android Jelly Bean (4.x). These issues are now resolved in new HarfBuzz update (Bug 780409)

Mozilla Firefox Mobile showing Khmer page

Few other issues in Khmer language support remain. Android Jelly Bean (4.1) supports Khmer rendering well, but Khmer fonts are not shipped with Android. You need to use third party app to install them.

On Desktop computers, though high quality Khmer fonts are available for various operating systems. There is lack of proper documentation about the installation process and the license are not very clear.


Upcoming Barcamps in Cambodia

The barcamp camp team deserves a pat on the back for organizing yet another fantastic event. Next year they are organizing five Barcamps all over Cambodia.

Perhaps I'll try organize a hands-on workshop on web technologies at Hacker Space Phnom Penh or Small World Phnom Penh. If you are interested, get in touch with me.



Saturday, December 1, 2012

CyanogenMod 10 Installation on Google Nexus 7

You got a Nexus 7 tablet. Are you ready to unlock the devices true potential. In this post you'll learn how to update the Nexus 7 tablet to latest Android Jelly Bean (Android 4.1/4.2) firmware from CyanogenMod project.

These instructions are from Truong Anh Tuan and team's CyanogemMod 10 installation on Google Nexus 7 running Jelly Bean 4.2 stock firmware at recent CyanogenMod Bootcamp in Hanoi. Thank you for sharing your notes.

‏Before you get started consider backing up your tablet data using Android apps such as Titanium Backup. Alternatively you can copy the data manually by connecting the tablet to your computer with an USB cable.

Disclaimer: Installing third-party firmware will void your device warranty and if something goes wrong it could make your device unusable. The installation process will wipe data/apps, Please backup everything. You have been warned!

Prerequisites: What do you need?

Installing CyanogenMod 10 on Nexus 7 tablet

  1. Enable USB debugging mode: Go to System Settings > About tablet. Tap “Build number” seven times until you get a 'You are a developer!' dialog.
  2. Connect your device to the computer with an USB cable and copy the previously downloaded files to devices sdcard using the 'adb' program.
    
    sudo adb push recovery-clockwork-6.0.1.9-grouper.img /sdcard
    sudo adb push cm-10-20121123-NIGHTLY-grouper.zip /sdcard
    sudo adb push Google Apps.zip /sdcard
    

  3. Unlock the Nexus 7 bootloader:

    Reboot to bootloader:

    sudo adb reboot bootloader

    Unlock the bootloader:

    sudo fastboot oem unlock

  4. Install ClockWorkMod(CWM) Recovery:
     sudo fastboot flash recovery recovery-clockwork-6.0.1.9-grouper.img
  5. Install CyanogenMod 10 Nightly Build and Google apps
    1. Select wipe data/factory reset.
    2. Select Install zip from sdcard and choose Cyanogenmod 10 Nightlies.zip file
    3. Select Install zip from sdcard and choose Google Apps.zip file

That's all folks!. Reboot your tablet and if everything goes well, the Nexus 7 will boot into CM10. Don't forget you can automatically download and install nightly builds via CyanogenMod OTA update feature.

For more information, Please read the original blog post and Unlock, Root & Install Cyanogenmod 10 Nightlies guide.

Sunday, November 25, 2012

CyanogenMod Bootcamp in Hanoi

Back in Hanoi after a long trip, it is time to do yet another hack event. This weekend I organized an CyanogenMod Bootcamp. If you haven't heard about CyanogenMod project, it is an aftermarket firmware for a number of cell phones based on the open-source Android operating system.



We got two Samsung Galaxy S2 mobile phones and a Nexus 7 tablet to work with at the bootcamp. The goal was to try to install CM10 Android Jelly Bean on devices without bricking them. The three teams worked in parallel and jotted down their notes on etherpad.






Before you start, Understand the basic terminology. Now Get, Set .. Go!

Nexus 7 running CM10 Android Jelly Bean


Samsung Galaxy S2 I9100 running CM10 (Nightly release)


Samsung Galaxy S2 I9100G running Android 4 Jelly Bean CM10 (Stable release)



Keep watching this space for detailed instructions on how to install Android 4.0 Jelly Bean on these devices.

Monday, October 22, 2012

Kinect-Powered Interactive Ads Display System

Spotted this interaction Ads display in a shopping mall in Warsaw. Watch the video here




Marketed by Lemon & Orange, this Kinect powered gesture controlled interaction display shows talk bubbles with products over the heads of shoppers walking by.


It is a nice hack. No, it doesn't read minds.

Friday, July 13, 2012

GNOME Asia Summit 2012, Hong Kong


The city of Hong Kong hosted the Gnome Asia Summit this year. GNOME is a popular open source desktop environment for gnu/Linux Operating System. This annual event attracts people from diverse open source communities across Asia.

GNOME Asia Summit kicked off with the pre-event GNOME Design Workshop. The workshop helped GNOME contributors and developers understand GNOME environment design process. The workshop was intended for novice and experience UX designers, graphic artists and experienced desktop users.

Arky interacting at GNOME-Asia 2012, Photo Credit: Sammy

The usability of the Open Source desktop environments has always left something to be desired. The keynote talks at the event delivered by GNOME Developers were very interesting. The GNOME community which was mired by conversation and dissent. Recently the developers revamping the software under the 'Every Detail Matters' initiative. Efforts to bring new UX paradigms into GNOME are also in full swing. Check out the GNOME team mock-ups here.

3D software used to create eye-popping prototypes. Don't believe me, check out this YouTube video Channel.


Graphical User Interface's visual elements such as icons, graphics are being re-designed. You can look at the latest icon theme from the GNOME project here. Graphic designers can use Inkscape and Blender to create high-quality visual graphices. You can download the basic symbolic gnome icon set from here.

In the last few years, Javascript programming language had become very popular. Today applications written in Javascript are just as fast as native applications. Gnome-shell window manager is written using Javascript, thanks to GObject Introspection libraries such as Gjs and Seed. This means you can use your web development skills to enhance and extend your GNOME Desktop functionality.

The Gnome-shell add-ons is integrated closely with the Gnome Extensions service. It lets you share your extensions easily, search and enabling new features is a breeze.

The summit also featured talks related to teaching Open Hardware concepts, Gnome Accessibility, Community development and Gender equality in Open Source communities and Localization tools and GNOME predictive text input system


Monday, June 25, 2012

Startup Investment Hour in Hanoi

Opportunities abound for those who think big in Vietnam. Recently 5Desire, a local startup accelerator organized Startup Investment hour. The event attracted a large gathering of young bright eyed entrepreneurs in Hanoi City.

Arky, Pham Le, a Japanese Investor at the event

After some informal social networking over a cup of coffee. The event kicked off with an interactive session on investment opportunists for startups in Vietnam. Four startups did elevator pitches and fending some real hard questions from the investor panel and the audience.

Startup culture in this booming economy is still in its infant stage. Events like do help young entrepreneurs learn more about the opportunities startups with some great ideas.


View more pictures from the event on 5Desire page

.

Popular Posts