As a Debian user, you may choose to adopt the distro-managed rebuild of the world’s greatest web browser.  But, by doing so, you may not be able to use G+.  Don’t worry, the answer is at hand.

Visit the Firefox add-on page for User Agent Switcher:

https://addons.mozilla.org/en-US/firefox/addon/useragentswitcher/

Install the add-on and restart your browser.

Now, go to Tools > User Agent Switcher > User Agent Switcher > Options…

Add a new User Agent, call it Firefox 11.

Add the following text in the fields:

  • Description: Firefox 11
  • User Agent: Mozilla/5.0 (X11; Linux i686; rv:11.0) Gecko/20100101 Firefox/11.0
  • App Code Name: Mozilla
  • App Name: Netscape
  • App Version: 5.0 (X11
  • Platform: Linux i686

If you’re running an amd64 build, plonk that in the Platform field instead (it’ll probably already be populated).

Make sure there is no reference to Iceweasel in the User Agent field.

Make sure this user agent is active, and then browse to Google+.

Have fun! 🙂

Minimalism & Debian

Less is more, as the saying goes.

While I love using Fedora in my daily work, sometimes when I want to relax I find using an alternative distribution is good therapy.  Fedora is fabulous with its GNOME Shell finery, but occasionally I hanker for something simpler and more lightweight.  It’s also good to see how the other half lives 🙂

So, I decided to put Debian on my netbook.  With no GUI.  Everything I do on it must be by the command line, including web research.  Compared to Fedora, Debian‘s system requirements are practically non-existent, which is especially good if you want your system to still run nice and quick.

First steps…

  1. Firstly, I had of course to grab the distribution.  I’m not over-fussed about running cutting edge stuff on this machine.  For me, the most important thing is a low-maintenance base where I don’ t need to think much about the distribution changing every 6 months.

    I visited the Debian Mirror List and grabbed a NetInst CD image.

  2. Next off, I plugged in the USB CD/DVD drive and installed the software, making sure I didn’t overwrite my XP partition.  Well, you need a reminder every so often how awful life used to be.. 😉
  3. I won’t go into the installation process here – there’s plenty of documentation elsewhere which covers that.  So, once installed, I really wanted to keep the installed software as trim as possible.  That is, with one or two exceptions…
     
  1. Firstly, I have tried and tried it again but I just can’t/don’t/won’t do vi, vim or anything similar.  It’s just not my bag.  It’s emacs for me.  I also want to keep my mail inside emacs, so it’s goodbye to mutt – even if it does suck less, apparently 😉
  2. Also, Exim4.  The servers I manage don’t use it (generally it’s Postfix or QMail) and I already have a tiny smattering of Sendmail knowledge – so I have no desire to pick up on this.  I’m sure it’s a fine MTA and undoubtedly there are many technical reasons why I should keep it on my netbook… but even so, no thanks.

    Therefore, my software changes are:

    $ sudo aptitude remove exim4 exim4-base exim4-config exim4-daemon-light vi mutt

    $ sudo aptitude install emacs w3m-el sendmail

  • So far so good.  However, I was still stuck with a chunky 80×25 character screen when booting up, which is real ugly.  Through much searching and grub configuration editing, I found that my answer was actually to install the intel video package.

    $ sudo aptitude install xserver-xorg-video-intel

    You’re on to a winner here, because Debian Squeeze is already set up for Kernel Mode Setting.  In other words, as soon as your system starts booting up, the video drivers get loaded and the optimal video mode is enabled (or, at least, that’s the intention).

    Whether or not it’s worth specifying screenmode in grub is open for debate.  FWIW, I put this in /etc/default/grub:

    GRUB_GFXMODE=1024x600
    GRUB_GFXPAYLOAD=1024x600x16

    … And in /etc/grub.d/40_custom:

    set gfxpayload=1024x600x16

    Then, I simply updated grub with the new config:

    $ sudo update-grub

    Please note that this step relates to my Intel-based netbook.  Yours may vary.

  • The only significant piece of the puzzle remaining was to get wireless sorted out and connect to my server:

    $ sudo aptitude install wireless-tools iw wpasupplicant autofs nfs-common

    ** PLEASE NOTE: this step assumes your wireless network device doesn’t require firmware or that you already have the firmware installed in /lib/firmware. **

    Once done, you need to uncomment the /net line in /etc/auto.master and restart autofs:

    $ service restart autofs

    If you want to refer to server by hostname and are not running a DNS server, add the hostname to /etc/hosts (somewhere below the localhost lines):

    111.222.333.444      myserver.mydomain.com  myserver

    At this point, assuming all went well, you can cd to /net/ in either the shell or a file manager such as nautilus (if running a GUI).

    So, this takes care of a basic local network configuration, but we still need to actually get connected to it on wifi.  So, there is, in my /etc/network/interfaces:

    # The loopback network interface
    auto lo
    iface lo inet loopback

    # The primary network interface
    allow-hotplug eth0
    iface eth0 inet dhcp

    # Wireless
    auto wlan0
    iface wlan_mynet inet dhcp
    wpa_ssid my-network-ssid
    wpa-psk  my-network-key

    Once done, save this file and change the permissions for extra security:

    $ sudo chmod 0600 /etc/network/interfaces

    – and connect up, like this:

    $ sudo ifup wlan0=wlan_mynet

  • Voila!  With luck, maybe a little patience, and possibly an extra step or two (which you can hopefully figure out, if needed) these are the key set up steps which will make your netbook/laptop nice and lean, and perhaps more fun to play with.

    Next time, I’ll go through a few tools I use for ‘net stuff.

    *Getting into Getting Things GNOME!*

    (Edit: this is an old draft, now published for testing purposes)

    This is the beginning of what I hope will become a multi-part journal of my adventure into contributing free software.  I thought I’d share my education, FWIW! 🙂

    Part 1: Read The Flipping Manual(s)!

    As a user of a great amount of free software, I often wondered what was involved in producing it.  I was aware of the basic process – or at least I thought, but not really much of the details.

    Here’s how I kinda reckoned the basic process works:

    My take on the basic process of Free/Open Source software projects

    1. Some people (usually one person) would start a project off, following their interest in some way.
    2. He/She would set up somewhere for software code to live (a repository) which would be available to anyone to download.  This, the source of the project’s code, would be what’s often referred to as “upstream”.  It’s where the goodness flows from.
    3. Other people interested in this software could also join up and contribute changes to the code.
    4. At some point, someone involved with a distributor/vendor like Red Hat or Debian would “notice” the project and be interested in packaging up the software.
    5. The upstream software would get duly packaged up and released into the distributor’s/vendor’s “downstream” repository.  Users could then install and use it at-will.

    This only really covers the basic of software creation though.  What about bugs?  Even the best software has the odd bug or two.  What happens then?

    There are two main places for bugs to be recorded:

    1. On a downstream bug reporting/management system.
    2. On an upstream bug reporting/management system.

    Typically, users of the distributor’s packaged version of the software will report bugs with it on the distributor’s (downstream) system.  Why not on the upstream one?  Mainly because a distro (distribution) will contain an older version of the software that may, upstream, now be fixed of that bug.

    When a distro user reports a bug, he/she is reporting against the distribution’s version of that software, not against that software in general.

    Doesn’t this create a duplication of bug reports?

    In a nutshell, yes.  But it’s better that the same bug is reported twice, than not at all.  Quite often duplicates relating to the same issue are recorded, even on the same system.  They are simply marked as such, with one bug record being the “master”, to which the others are link for reference.

    Getting involved upstream

    The project I chose to get involved with is Getting Things Gnome! – a Getting Things Done-inspired task manager application for the GNOME desktop.

    My motivations to get involved were:

    • I like the GTD methodology – it helps bring focus and organisation to my working day;
    • I want to learn how to program in Python – a well respected and widely utilised programming language;
    • I want to see the gtg tool develop so I can use it more effectively; and
    • I want to contribute something back to the free/open source software community.

     

    Expressing (and progressing) an interest

    The first thing to do was to express my interest with a project leader.  From doing this, I received very supportive and constructive emails relating to ways in which I could contribute which suited both the project and me.  (a hat-tip to Izidor Matušov for enormous support and coaching in the early days).

    Secondly, after receiving such great support, the thing I soon realised is that the responsibility to check things out really rests with me.  I want to be involved, so I should be the person reading the mailing list posts, reading related blog posts, reading the web site, reading the manual for hackers… You get the idea.  If you’re considering joining a software project, you need to read a lot to learn what it’s all about!

    Finally, be prepared.  Prepare your computer to work in the best way possible.  Prepare your mind to be opened up to learning new programming techniques.  And prepare your attitude – you will be rewarded and pleasantly surprised by the capability and maturity of others who are already contributing to the project.

    Getting involved in free/open source software is educating, inspiring, liberating and, most importantly … (I hope he doesn’t mind me stealing this line from his first email), “Don’t forget, hacking opensource should be about having fun!”

    And it is.

    So, from time to time (read: most of the time) when I’m working I listen to music.  More often than not, it’s electronic in one form or another.

    The point of this post is simply to list a few stations I like listening to, to build up my collection.  If it grows over time, I’ll probably divide into genres or something.

    Here’s a few to get started with.

    Radio Schizoid : http://78.46.73.237:8000/schizoid

    PsyRadio.fm : http://streamer.psyradio.org:8010/

    Chromanova : http://85.25.86.69:8000/

    Digitally Imported Goa-Psy Trance :

    After Hours – Trance : http://fr3.ah.fm:9000

    PsyMusic UK : http://www.psymusic.co.uk:8010/

    Bassdrive :

    Google is undoubtedly suffering from some adverse PR in respect of its new privacy policy.  While it may have considered itself on to a PR “winner” with its “privacy made simple” approach, there has been considerable backlash in opinion and re-consideration of the use of its services.

    So, what could Google do to demonstrate that it still takes on-line security seriously?

    How about setting up its own Certificate Authority, and issuing free SSL certificates?

    Google has the infrastructure, manpower and, I’d argue, interest in doing such a thing.  In fact, in many ways, it already offers the flesh around this missing skeleton.

    Perhaps it could support the CACert effort with funding and enough energy to get it through the audits required to have their root certificate included in Mozilla’s Firefox, as-shipped?  And, while Google are at it (restoring their image of benevolence, that is), they could include that root certificate in Chrome too.

    Just saying…

    Strong headline maybe, but if you’re not on Google+ then you might consider your stance after reading this.

    Jeri Ryan, best known as borg escapee “Seven of Nine” in Star Trek:Voyager, hosted a Hangout today on Google+, in celebration of having over 1 million fans subscribing to her feed.

    Someone lucky enough to participate
    in Jeri Ryan’s hangout!

    There was a lot of buzz around it, with hundreds of comments flying around under the Hangout post, updating in real time.  It was pretty hard to get a video stream from Google, such were the number of simultaneous subscriptions.

    In many ways, this reminded me of the excitement of the early internet, where we learned about things such as bandwidth… The kids today, they have everything!

    Still, the excitement wasn’t only in the new broadcast/interaction (intercast?!) method through G+ hangouts, it was the realisation that, should they choose, celebs can now use a nice, safe way of engaging with their fan base.  Directly.  Over time, this may disarm broadcast controllers and empower people, be they celebrities or fans, into collaboration through constructive, enriching dialogue.

    Wil Wheaton, self-confessed geek and well-known actor likewise, was notably impressed with hangouts.  It was refreshing to see people observing great netiquette while chatting with Jeri.  How much more enjoyable, this, than suffering typically mundane updates as you might in another social networking system.

    As Google measures and expands upon functionality in G+, I hope they’ll see fit to bring more interactive tools to the table.  I get the feeling that hangouts are just the start of the next revolution.  As Android gathers increasing momentum and Google+ apps appear on both major mobile platforms, we could see real-time social networking emerge as the number one communication method.

    People, known and unknown to each other, will communicate, partly in mimicry, utilising all tools at their disposal.  And, with open source platforms gathering adoption, they will inevitably add both their biological and technological distinctiveness to our own. 

    Resistance, my friends, is futile.

    UPDATE – here’s the recording:

    It takes a long time to ditch those applications with which you’re intimately familiar.

    It starts, quite often, with your Office Suite.  No, I’m not talking about desk and chair, but rather Microsoft Office.  Excel is an excellent spreadsheet tool, there’s no doubt of that.  But quite often, people like to work differently to the prescribed “norm”, and Libre Office allows just that.  It’s not the only open source office suite, of course: there’s also KOffice, the Abiword/Gnumeric combiniation and so on.

    Recently I’ve ditched other proprietary applications which I have worked with for years.  Why?  Well, for one I believe that switching applications is good, because it challenges you to think differently.  You have to learn new ways of doing old things, and this can help you think of new, better things to do.

    Secondly, you get no love with proprietary applications.  Time and again, you pay your money and end up getting no support.  So, really, what is the point?  I’m not just talking about Microsoft, either; many proprietary software vendors are only able to make a profit by re-packaging open source software and selling access to it from within a proprietary system. Parallels, I’m thinking of you here.

    The only way to beat companies is to not buy their products. It’s this simple.  Here are the ways I have ditched proprietary software:

    • Operating System: was Microsoft Windows XP, is now Fedora (16, currently)
    • Email:  was Microsoft Outlook, is now Mozilla Thunderbird
    • Office: was Microsoft Office, is now Libre Office
    • Web Browser: was always Firefox 😉
    • ..the list goes on…

    Here’s the deal:

    1)You have no time and you want to try the latest Fedora release because it looks pretty darn good.
    2) You accept the default disk partitioning scheme which the kind people at Red Hat / Fedora project set up for you, because they only have your best interests at heart, right?
    3) While using this cutting-edge release, something nasty happens like, ooh, perhaps a sound driver locks up the entire system and you have to hard-reset the machine (that is, switch it off by the power switch because nothing responds to input).

    What next? If, like me (on one occassion) you try to boot up the machine and get no further than the recovery console, you’d feel a bit aggravated. But there is an alternative – do a disk check. You may have read my verbose coverage for How to do a disk check in Linux before. This takes it one step further – how to check your logical volume when it’s encrypted and formatted using the latest ext4 filesystem.

    Instead of the method used before, this time I booted from a Live CD. You can find one to download at the Fedora project. Ensure that this CD matches the release of the version you are trying to recover. In this case, that’s Fedora 10.
    Once you have booted the offending machine up with the Live CD, open up a terminal by pointing to Applications > System Tools > Terminal. Once in the terminal window, just type:

    # su

    …to become the root user. This is essential to using all the disk tools.
    You may be tempted to check for volume groups first:

    # vgscan

    .. but this would return nothing.
    What’s happening here is that the Volume Group, located on that partition, is itself encrypted. Once unlocked, you can then gain access to both of the Logical Volumes – the swap volume and the root (/) volume.
    To unlock the encrypted Volume Group, first you need to establish which partition it resides on:

    # fdisk /dev/sda
    The number of cylinders for this disk is set to 12161.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
    (e.g., DOS FDISK, OS/2 FDISK)

    Hit p to print the partitions on your primary disk:

    Command (m for help): p
    Disk /dev/sda: 100.0 GB, 100030242816 bytes
    255 heads, 63 sectors/track, 12161 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Disk identifier: 0xb07eb07e

    Device     Boot  Start End    Blocks   Id System
    /dev/sda1    *       1 5377 43190721 7 HPFS/NTFS
    /dev/sda2         5378 5402    200812+ 83 Linux
    /dev/sda3         5403 12161 54291667+ 8e Linux LVM

    So the partiton of type “Linux LVM” (Logical Volume Managed) is the baby we’re after.
    To unlock the encrypted Volume Group, use the following:

    # cryptsetup luksOpen /dev/sda3 mydisk


    This sets up the encryption/decryption kernel subroutines to allow access to device /dev/sda3, mapped to a device node called “mydisk” in /dev/mapper/ . We’ll not actually need to use this device node, but it could be handy to know if you needed to perform further diagnostics.
    You will be prompted to enter the encryption key which is stored in one of eight “slots” on the disk. If the key you enter matches a key in any slot, your disk will become unlocked. Assuming that it is, you can then scan once again for Volume Groups:

    # vgscan
    Reading all physical volumes. This may take a while...
    Found volume group "VolGroup00" using metadata type lvm2


    Now we’re getting somewhere. Let’s activate the VG and display the LVs (Logical Volumes) it contains:

    # vgchange -a y
    2 logical volume(s) in volume group "VolGroup00" now active
    # lvdisplay
    --- Logical volume ---
    LV Name /dev/VolGroup00/LogVol00
    VG Name VolGroup00
    LV UUID RE7t2h-nIy9-dWZ9-xt26-Fgq4-gFd8-34E3f2
    LV Write Access read/write
    LV Status available
    # open 0
    LV Size 47.81 GB
    Current LE 1530
    Segments 1
    Allocation inherit
    Read ahead sectors auto
    - currently set to 256
    Block device 253:3

    --- Logical volume ---
    LV Name /dev/VolGroup00/LogVol01
    VG Name VolGroup00
    LV UUID B7XJzD-9sS0-3iHx-AWBE-W9qN-TvRb-vCdYZF
    LV Write Access read/write
    LV Status available
    # open 0
    LV Size 3.91 GB
    Current LE 125
    Segments 1
    Allocation inherit
    Read ahead sectors auto
    - currently set to 256
    Block device 253:4

    We can deduce from the sizes of these two volumes that the first of the two is the root (/) volume, and the second is the swap volume.
    As the purpose is to FIX the filesystem on it, which may have become corrupt through the hard-reset performed earlier, we do not want to mount this volume. Instead, as we now have a device node for this activated volume, at /dev/VolGroup00/LogVol00, we can simply perform a disk check straight on it.
    To check which extn file system checking tools are on the system, you can tab-complete at the command line:

    # fsck. (hit tab)
    fsck.cramfs fsck.ext3 fsck.ext4dev fsck.vfat
    fsck.ext2 fsck.ext4 fsck.msdos


    As this was formatted an ext4 volume, that’s what we use:

    # fsck.ext4 /dev/VolGroup00/LogVol00
    esfsck 1.41.3 (12-Oct-2008)
    /dev/VolGroup00/LogVol00: recovering journal
    Clearing orphaned inode 730 (uid=0, gid=500, mode=0100600, size 2263160)
    Clearing orphaned inode 187182 (uid=500, gid=500, mode=0100600, size 4096)

    ... and so on until ...
    /dev/VolGroup00/LogVol00: clean, 190926/3137536 files, 2016683/12533760 blocks

    Now there are two more steps to perform: de-activate the volume group, and lock the encryption of the drive.

    # vgchange -a n
    0 logical volume(s) in volume group "VolGroup00" now active
    # cryptsetup luksClose mydisk

    The second command returns nothing, which means it did not error (the disk is now encrypted and not writable-to without unlocking again).
    I hope that helps someone with a sense for adventure but not enough time on their hands for when things go somewhat awry!

    I work daily with visual designers and am constantly in awe of their skills.  Visual design makes so much in life interesting.  Playing with logos and branding is always a fun thing to do, as it offers a counterpoint in thinking about who the people are behind the image.

    Here are a few of my favourite images, spotted across other blogs and RSS feeds…

    21st Century drug

    from: http://lukreszja.deviantart.com/art/XXI-century-drug-197126336

    The origins of logos

    from: http://rayvellest.com/humorously-combined-logos

    Honest Logos

    from: http://www.logodesignlove.com/honest-logos-viktor-hertz

    and

    from: https://secure.flickr.com/photos/hertzen/sets/72157626308238830/

    Enjoy 🙂