Subscribe to Feeds
ubuntu.com
Free PageRank Checker

Facebook in Ubuntu with Avant Window Navigator

Posted by Panji Nushantara | Sunday, January 29, 2012

My earlier post about Facebook and Ubuntu was written back in 2009. There are many changes since then, but stay connected with Facebook with Ubuntu is still easy as it was in earlier Ubuntu, only better.
One of the changes is prism no longer available in newer Ubuntu repository. 
This is a refresh post, but instead of listing all the methods in single post, I try to explain in one post at a time. 

Let's start with Avant Window Navigator (AWN).

There are a lot of things to like about AWN, especially if you don't like how Unity and Gnome Shell treats your shortcuts. 
If you are an avid Facebook user., you'll have more reason to love AWN.
The first step is obviously to install Avant Window Navigator, and then configure it to add a Web Applet.
add Web Applet

Then, click your new applet to choose which service you want to use, Facebook in this case.
choose your applet


After that, it will ask your Facebook login.
awn facebook login

and now you get little Facebook applet on your AWN, if the appearance looks familiar it because it logs into iphone.facebook.com. 
small but complete - awn facebook applet

Update your status now ...

How To Use Tor With Chrome | Ubuntu 11.10

Posted by Panji Nushantara | Saturday, January 28, 2012

Tor is a great tool to enhance and protect your online privacy, but you already knew that. You want to know how to combine it with Google Chrome without applying Tor in system wide proxy setting , don't you? Read on.
I installed Tor, Polipo and Vidalia in Ubuntu and successfully use it with Firefox + FoxyProxy, but have no luck with Chrome + Proxy Switchy (many articles suggest this extension, so I tried it first but it doesn't work). Then, I tried other proxy manager extension, and I found the one that works with Tor. it's Proxy Anywhere.

 

After installation, configure it to use :
  • Protocol : socks5
  • Host : 127.0.0.1
  • Port : 9050

You can configure it to start automatically and/or even in Incognito mode only.


Click the small button to activate Proxy Anywhere, if it haven't already and go to https://check.torproject.org to check are you using Tor or not.
Voila, Tor in Chrome!



Works for me, your mileage may vary.


keyword : tor, chrome, ubuntu


This is a Gnome Shell extension to make Advanced Settings (aka Gnome Tweak Tool) easier to access, via shortcut in User Menu.
Here's the extension download link. Just slide to install. Make sure you already installed Gnome Tweak Tool.

Advanced Settings in UserMenu by outbreak

If you have "Alternative Status Menu" extension installed, these two extensions may have conflicted and as the result the Advanced Settings shortcut doesn't always appear after restart in User Menu.
The latest version of Alternative Status Menu extension should fix this, but in case you haven't the latest version here's how to fix it (courtesy of erguille), apply on your own risk. I did this and it works, your mileage may vary :
  1. Disable "Advanced Setting in UserMenu"
  2. backup first then open alternative-status-menu extension.js , it maybe located in/usr/share/gnome-shell/extensions/alternative-status-menu@gnome-shell-extensions.gnome.org/ or
    /home/USER/.local/share/gnome-shell/extensions
  3. on line 5 add:
    const Shell = imports.gi.Shell;
  4. anywhere add:function _onAdvancedSettingsActivate() { Main.overview.hide();
    let app = Shell.AppSystem.get_default().lookup_app('gnome-tweak-tool.desktop');
    app.activate(); }
  5. Between "System Settings" and PopupSeparator add:
    item = new PopupMenu.PopupMenuItem(_("Advanced Settings"));
    item.connect('activate', Lang.bind(item, _onAdvancedSettingsActivate)); this.menu.addMenuItem(item);
  6. restart Gnome Shell with Alt+F2 "r" 


The whole code should look like this, the formatting maybe slightly off so don't just copy and paste it may not work. Changes are in bold, so you can compare it with yours.:


/* -*- mode: js2 - indent-tabs-mode: nil - js2-basic-offset: 4 -*- */
const Lang = imports.lang;
const St = imports.gi.St;


const Main = imports.ui.main;
const PopupMenu = imports.ui.popupMenu;
const Shell = imports.gi.Shell; 
const GnomeSession = imports.misc.gnomeSession;
const UserMenu = imports.ui.userMenu;


const Gettext = imports.gettext.domain('gnome-shell-extensions');
const _ = Gettext.gettext;


function updateSuspend(object, pspec, item) {
    item.actor.visible = object.get_can_suspend();
}


function updateHibernate(object, pspec, item) {
    item.actor.visible = object.get_can_hibernate();
}


function onSuspendActivate(item) {
    Main.overview.hide();


    this._screenSaverProxy.LockRemote(Lang.bind(this, function() {
        this._upClient.suspend_sync(null);
    }));
}


function onHibernateActivate(item) {
    Main.overview.hide();


    this._screenSaverProxy.LockRemote(Lang.bind(this, function() {
        this._upClient.hibernate_sync(null);
    }));
}


function createSubMenu() {
    let item;


    item = new UserMenu.IMStatusChooserItem();
    item.connect('activate', Lang.bind(this, this._onMyAccountActivate));
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupSwitchMenuItem(_("Notifications"));
    item.connect('activate', Lang.bind(this, this._updatePresenceStatus));
    this.menu.addMenuItem(item);
    this._notificationsSwitch = item;


    item = new PopupMenu.PopupSeparatorMenuItem();
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupMenuItem(_("Online Accounts"));
    item.connect('activate', Lang.bind(this, this._onOnlineAccountsActivate));
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupMenuItem(_("System Settings"));
    item.connect('activate', Lang.bind(this, this._onPreferencesActivate));
    this.menu.addMenuItem(item);
    
    item = new PopupMenu.PopupMenuItem(_("Advanced Settings"));
    item.connect('activate', Lang.bind(item, _onAdvancedSettingsActivate));
    this.menu.addMenuItem(item);
    
    item = new PopupMenu.PopupSeparatorMenuItem();
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupMenuItem(_("Lock Screen"));
    item.connect('activate', Lang.bind(this, this._onLockScreenActivate));
    this.menu.addMenuItem(item);
    this._lockScreenItem = item;


    item = new PopupMenu.PopupMenuItem(_("Switch User"));
    item.connect('activate', Lang.bind(this, this._onLoginScreenActivate));
    this.menu.addMenuItem(item);
    this._loginScreenItem = item;


    item = new PopupMenu.PopupMenuItem(_("Log Out..."));
    item.connect('activate', Lang.bind(this, this._onQuitSessionActivate));
    this.menu.addMenuItem(item);
    this._logoutItem = item;


    item = new PopupMenu.PopupSeparatorMenuItem();
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupMenuItem(_("Suspend"));
    item.connect('activate', Lang.bind(this, onSuspendActivate));
    this._upClient.connect('notify::can-suspend', Lang.bind(this, updateSuspend, item));
    updateSuspend(this._upClient, null, item);
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupMenuItem(_("Hibernate"));
    item.connect('activate', Lang.bind(this, onHibernateActivate));
    this._upClient.connect('notify::can-hibernate', Lang.bind(this, updateHibernate, item));
    updateHibernate(this._upClient, null, item);
    this.menu.addMenuItem(item);


    item = new PopupMenu.PopupMenuItem(_("Power Off..."));
    item.connect('activate', Lang.bind(this, function() {
this._session.ShutdownRemote();
    }));
    this.menu.addMenuItem(item);
}


// Put your extension initialization code here
function init(metadata) {
    imports.gettext.bindtextdomain('gnome-shell-extensions', metadata.localedir);
}


function reset(statusMenu) {
    statusMenu._updateSwitchUser();
    statusMenu._updateLogout();
    statusMenu._updateLockScreen();


    statusMenu._presence.getStatus(Lang.bind(statusMenu, statusMenu._updateSwitch));


    // HACK! Obtain the IMStatusChooserItem and force a _updateUser
    statusMenu.menu._getMenuItems()[0]._updateUser();
}


function enable() {
    imports.mainloop.timeout_add(9000, function() { _enable(); });
}


function _enable() {
    let statusMenu = Main.panel._statusArea.userMenu;
    statusMenu.menu.removeAll();
    createSubMenu.call(statusMenu);
    reset(statusMenu);
}


function disable() {
    // not guarranteed to work, if more extensions operate in the same place
    let statusMenu = Main.panel._statusArea.userMenu;
    statusMenu.menu.removeAll();
    statusMenu._createSubMenu();
    reset(statusMenu);
}
function _onAdvancedSettingsActivate() {
    Main.overview.hide();
    let app = Shell.AppSystem.get_default().lookup_app('gnome-tweak-tool.desktop');
    app.activate();
  
} 



keyword : advanced setting, user menu

Battery Percentage Indicator | Gnome Shell | Ubuntu 11.10

Posted by Panji Nushantara | Friday, January 27, 2012

The tiny battery icon in Gnome Shell may not telling you clearly the percentage of your battery power left, this Battery Percentage Indicator comes to save the day by showing percentage label next to the battery panel icon.
Install it here.

Battery Percentage Indicator by paravoid



   keyword : battery percentage indicator, gnome shell

How To Install Journal In Gnome Shell (Ubuntu 11.10)

Posted by Panji Nushantara | Thursday, January 26, 2012

Journal extension is a Zeitgeist based activity-history journal that appear in gnome-shell overview tab.
To install it in Gnome Shell you need Zeitgeist to be installed first. After that visit Journal extension at extensions.gnome.org here.
Instead of manually downloading and installing the extension, this website offers automatic installation (you must use Gnome Shell when visiting this website apparently). Just slide the On/Off button, and you'll have this extension installed and activated automatically. Cool.

slide to install
If everything went well, you'll have :


Journal : by seif
Gnome Shell Theme : Ice Cream Shell
Wallpaper : EgFox ICS Chroma wallpaper HD
Font : Roboto

keyword : journal, gnome shell

How To Move Message Tray to Top Panel In Gnome Shell

Posted by Panji Nushantara | Tuesday, January 24, 2012

Been wondering how to move message tray to top panel in Gnome Shell?
Install Gnome Shell extension called gnome-shell-classic-systray from webup8 Gnome 3 PPA, this extension when activated will move icons in bottom Message Tray to top panel just like classic Gnome was, like screenshot below.
As you can see Shutter, Vidalia and Bluetooth icons are located on top panel. They used to reside in the bottom Message Tray.


Install gnome-shell-classic-systray in Ubuntu 11.10 :

Open Terminal and type :
sudo add-apt-repository ppa:webupd8team/gnome3 sudo apt-get update sudo apt-get install gnome-shell-classic-tray

Restart Gnome Shell, either by Login Out or Press Alt+F2 and type r
And then activate it via Advanced Settings (you must install gnome-tweak-tool first)


keyword : ubuntu, gnome shell, move message tray

How To Remove Bottom Panel | Message Tray In Gnome Shell

Posted by Panji Nushantara | Wednesday, January 18, 2012

There's an extension for that!

I found that the gnome shell bottom panel very interfering and annoying, especially since I use auto hide in Avant Window Navigator(AWN). There are times that I struggled just to get to AWN icons because it was blocked by occasionally popping out bottom bar.
You have to install gnome-tweak-tool (via Ubuntu Software Center or Synaptic) first, to let you install extensions and manages them.

remove bottom bar extension
I am a little disappointed though, a customization as simple as this should be included in basic setting, not an extension.



keyword : remove, bottom, bar, panel, message, tray, notification, gnome shell