Nav's Place: Nav's Home on the Interwebs

Gmail introduces Priority Inbox

Gmail recently introduced “Priority Inbox”. It basically puts all the important emails in a separate section at the top of your inbox window.

How Priority Inbox works
In order to predict which messages are important to you, Gmail uses some of the same technology that it uses to weed spam out of your Inbox. If it incorrectly predicts which messages are important you can help train it with the importance buttons just like you can help Gmail’s spam filter by using the Report as spam button.

More »

OpenParallel Week3 / Week 4

Has been a pretty busy few weeks. We have had meetings during the past week to decide on our various roles within the team. We divided up the work for Phase 1 of the project as much as we could tonight and are working towards our goals for next week.

Workgroup Manager showing 1000 results only

Today at work we had an issue where our snow leopard Mac server was only showing the first 1000 users in Workgroup Manager. This was obviously a problem as we have more than 1000 users in out Active Directory. This also caused an issue when trying to set permissions for a particualar file, as all the users are not displayed on the userlist.

So, to workaround this 1000 user limit issue we had to change the number of records that Active Directory places in 1 page. Active Directory by default will place 1000 users on one page, then any additional users on the next page and so on… Workgroup Manager does not understand this paging system very well so it only displays the first page.

What you will need to do is go on to your AD server and run the ntdsutil util. Here are the steps

More »

OpenParallel – Week 2

Had the call to Intel this week. Overall a very positive outcome – got introduced to James Reinders and Vasanth Tovinkere. We have also managed to get a custom function “yo” to work with hip-hop.

It basically does the same thing an echo does, but this small step has allowed us to learn a whole lot more about the inner workings of the hip-hop beast and will hopefully have a for loop going soon-ish.

OpenParallel – Week 1

I am part of this great team of people who are currently working on a project for intel. We are basically trying to make large scale php based web sites such as facebook and wordpress work better by utalizing multicore processors. It is an extremly interesting project escpecially for me since I have always been curious about multicore technology and it a privilage to be working on this project with a bunch of great guys.

So far it has been a week since the project kicked off and we have made some interesting discoveries about how TBB (Thread Building Blocks) and Hip-Hop works.

Currently we have made progress in the following areas:

– made Hip-Hop compile and work on a 32-bit machine
– figured out how the functions are defined such as the for statement and echo
– passed in a php file to get c++ code at the end

– Made first Parallel program today
– Learnt a bit more about how the parallel_for fucntion works

I will try and keep posting our progress on this blog every Friday(NZST)

Wish us Luck!

SMTP Relay Server with Gmail

This is a brief guide on installing a SMTP relay server on Fedora 12. I have taken these instructions from various sites and tried to merge them into one. These are the sites I used in my research:

Soup to Nuts
G-loaded Journal
Carlton’s Online Notebook

The commands and things used in this guide are explained in more details on those sites. If you want to know what the commands are for then please feel free to visit those sites.

Here is the guide:

More »

Add Custom source to IPCOP Cache

Inorder to cache updates with IPCOP you need to download and install the update accelerator plugin. By default the plugin will cache Adobe, Apple, Avast, Linux (deb/rpm), Microsoft, Symantec and Trend Micro updates. While this is a pretty good list of vendors there might be situations where you need to cache other updates, for example if you are using the free version of Avira, you might wish to cache the updates for that.

Firstly, what you need to do is figure out where the updates are being downloaded from. In this example I will be adding Avira Free edition to the update caching list. In my case Avira gets all its updates from http://dl[0-9] If you are unsure of where your updates are being downloaded from URL Helper is a great utility to use, as this will also tell you which extensions are being downloaded which will be usefull later on.

More »

KB977165 Blue Screen of Death

Today I was fixing a PC which would restart randomly during xp boot. It showed a BSOD(Blue Screen of Death) and would instantly restart, this did not give me much time to study the error and figure out what was going on. So to prevent the system from restarting on BSOD I booted up the pc with UBCD4Win and opened up the registry editor

Once in the regedit utility I browsed to the following reg key:


and changed the AutoReboot Value from 1 to 0

Note: System_on_C will show up only if you are using the UBCD4Win regedit, to do this without UBCD4Win microsoft had a pretty good writeup about it on their support site.

Once I rebooted I could see what the BSOD was saying and it turned out to be the good ‘ol PAGE_FAULT_IN_NONPAGED_AREA issue. This kind of error usually occurs when there is a memory fault, but I recently read on computerworld that one of the microsoft updates(KB977165) caused random BSODS.

So, to remove this update I booted into UBCD4Win again and did the following:

Open Command Prompt

go to C:\WINDOWS

So at this point the command window should read something like C:\WINDOWS>

then CD $NtUninstallKB977165$\spuninst

once in the spuninst directory run the uninstall txt file as a script by typing BATCH spuninst.txt

In my case this did not work.. so I just renamed the spuninst.txt to spuninst.bat by running “ren spuninst.txt spuninst.bat”

After running the batch file rebooted into windows and everything was fine.

Moving a Window in Windows 7

Recently I came across a problem where one of my windows opened on a non-existent monitor. In windows XP you could right-click and move the window to the correct monitor but in the default 7 setup there is no such option

So, to get around this, there is a handy keyboard shortcut you can use. Select the window that not on the monitor and press win + shift + left to move it to a monitor on the left if you press the right arrow key it will move it to the right.

Here is a handy list of shortcuts from windows7news

Managing Windows

1. [Win+M] – Minimize all open windows
2. [Win+Shift+M] – Undo all window minimization
3. [Win+D] :- Toggle showing the desktop
4. [Windows+Up] – Maximize window
5. [Windows+Down] – Minimize windows / Restore
6. [Windows+Left] – Dock window to the left side
7. [Windows+Right] – Dock window to the right side
8. [Windows+Shift Up] – Maximize vertical size of window
9. [Windows+Shift Down] – Restore vertical size
10. [Windows+Shift Left] – Move window to left monitor
11. [Windows+Shift Right] – Move window to right monitor
12. [Win+Spacebar] – Aero desktop peek
13. [Win+Home] – minimize/maximize all inactive windows
14. [Alt+F4] – Close the active window
15. [Alt+Tab] – Switch to previous active window
16. [Alt+Esc] – Cycle through all open windows
17. [Win+Tab]- Flip 3D
18. [Ctrl+Win+Tab]- Persistent Flip 3D


1. [Win+Any number (1, 2, 3, .., 0)] – open the corresponding taskbar pinned program
2. [Ctrl+Click a pinned taskbar icon] – cycle through the program’s open windows
3. [Shift+Click a pinned taskbar icon] -run a new instance of the program
4. [Ctrl+Shift+Click a pinned taskbar icon] – run a new instance of the program as administrator
5. [Shift+Right-click on icon] – Show window menu (Restore, Minimize, Move etc)
6. [Shift+Right-click on grouped icon] – Show window menu (Restore All, Minimize All, Move All etc)
7. [Win+T] – Cycle through applications on taskbar (showing its live preview)
8. [Win+Shift+T] – As above, but in reverse order
9. [Win+R] – Opens Run dialog box


1. [Win+P] – show presentation mode projector options
2. [Win+G] – show desktop gadgets
3. [Win+L] – Lock computer
4. [Win+X] – Mobility Center
5. [Win++] – Zoom in
6. [Win+-] – Zoom out
7. [Win+=] – Magnifier

Windows Explorer

1. [Alt+P] – Show/hide Preview Pane
2. [Alt+Up] – Go up one level
3. [Alt+Left/Right] – Back/forward

Linux Based Thin Client

I recently had to turn a few old pc’s at work into thin clients to bring them back to life. To do this I used PCTSC and puppy linux. At first everything installed fine but there were a few issues once everything was installed. In this article I will go through the Issues we faced and the solutions for the issues. Hopefully these finding will help some of you with your PCTSC installations.

Problem 1:

If a terminal Service session times out, it is unable to reconnect to the server and a blank screen remains.


There is a file called .rdesktop which gets created in the root directory. This file prevents a connection from being made again. So the solution was to just remove this file whenever a connection is being made. To do this perform the following edits:

If you have already installed PCTSC to the harddrive then the file will be located at /usr/local/bin, browse to that location and edit the file with you favorite text editor. Add the following line rm -rf ~/.rdesktop above the rdesktop -f -k en-us -N -K -u “” -a 24 `cat /etc/` line.

If you have not installed PCTSC then you need to look in the TSC folder located in root. Browse to TSC then usr.local.bin to find the file. Apply the same changes as mentioned above.

Problem 2

If the power goes out or a user turns the pc off at the wall then Puppy Linux will not boot up into X. This is a major problem as end users will not know what to do..


I had to actually switch versions of puppy linux for this to work, I was using Puppy version 4.3.1 but this was no good as the fix i found browsing the puppy forums did not work on this version ( although it did seem to work for certain hardware.. not sure what’s up with that.)

So I downloaded Puppy version puppy-4.2-k2.6.25.16-seamonkey and applyed the following fixes.

Open up /etc/rc.d/rc.sysinit and add the following lines:


ln -s /proc/mounts /etc/mtab

After that line add:

##############SHUTDOWN RECOVERY Add to /etc/rc.d/rc.sysinit################
#If we were not shutdown cleanly, try and recover
if [ -f /RUNNING ];then
echo -n “(Cleaning up after Unclean SHUTDOWN)” >/dev/console
rm -f /var/log/X*
rm -f /RUNNING
rm -rf /tmp/*
rm -f /var/lock/LCK*
rm -f /var/run/*.pid
rm -rf /root/tmp 2>/dev/null
rm -rf /root/.thumbnails/* 2>/dev/null
rm -f /etc/.XLOADED

###################Detect Bad Shut######################
#create a file in tmp that should be deleted on a clean shutdown
if [ ! -f /RUNNING ];then
echo ‘this file is deleted during a clean shutdown’ > /RUNNING

Open up /etc/rc.d/rc.shutdown


echo “Puppy is now shutting down…” > /dev/console

After it add:

rm -f /RUNNING
echo “Puppy is deleting RUNNING…” > /dev/console

Those are all the edits I had to do and Puppy is running all good now without any problems.