Rescan Channels in MythTV Remotely

From time to time I need to rescan channels for my parents’ MythTV box. It happens so rarely that I forget what to do, so, for future reference:

Use a particularly fast X-forwarding over ssh:

ssh -c arcfour,blowfish-cbc -XC mymyththtv.home

Start mythtv-setup in a small window:

mythtv-setup -w --geometry 640x480

It will ask to stop the backend, but that doesn’t always work, so be sure to check that there are no mythtv backends or frontends running before you do the channel scan.

Go to [Channel Inputs] select the card and run a full scan. This takes ages, and maybe a few attempts.

For where my folks live, the channels it finds correspond to the mux channels listed on:

So, I could probably save a lot of time by doing a Full Scan (tuned) instead of a Full Scan. In my case, it shows that it finds channels on Channel 23 and 26 (Mount Leinster). I’ll try that next time.


IPython notebook with Plone

IPython notebook is a browser based python shell with lots of nice features. Almost every presentation at featured it in some way or other. If you’re a fan of using IPython with plone, you may find notebook interesting too.

It’s easy to get it working via buildout, just add an extra argument to the initialization:

recipe = zc.recipe.egg
eggs = 
initialization =
    import sys, os
    os.environ["INSTANCE_HOME"] = "${instance:location}"
    sys.argv[1:1] = "notebook --profile zope2".split()
scripts = ipython=ipzopenb


DIY Standing Desks

I’ve just finished my second standing desk and I’m really happy with it, so I thought I’d throw up some photos. Materials cost about €60 and it took about four hours to slap it together, although it took another five hours to tweak it so that my monitor was in the right place.

My new action station!
Half way
In the end, I removed the top board and mounted my monitor directly to the back


And for some pics of the last desk I made. This one was way simpler and quicker to make, it also tilts like a draghtsman’s desk. Only 5 wooden boards are needed for the construction, and it cost about €35 for the wood. I think it took about three hours to stick it together.

You may be able to see one of the two hinges here, on the left

IMG_20130630_131031 IMG_20130630_131052

IE 7 and IE 8 on Linux with Wine 1.1.20

In an interview with Jeremy White (C.E.O. of CodeWeavers) on The Linux Action Show he mentioned they have IE7 working in CrossOver Office in the latest beta release of version 8 and that the latest version of Wine has lots of improvements that make this possible. I thought I’d try it out as I’m working on a new site and would like to be able to test it. I installed the latest version available for Mandriva 2009.0 in the package manager and did the following dance:

Created a fresh ~/.wine
Ran winetricks and set the version to win2k and installed IE6.
Ran winetricks and set the version to winxp.
Installed IE7:
$ wine IE7-WindowsXP-x86-enu.exe
Installed IE8:
$ wine IE8-WindowsXP-x86-ENU.exe
I think it installed the first time, but when I tried to run it, it threw an error. For no good reason I ran the installer again. After that it works fine (except it doesn’t seem to run any JavaScript). I think it is very usable for testing layout issues.

Some sites throw an error: “Internet Explorer couldn’t download %ws” and not having JavaScript working is a problem, perhaps I’m just missing a dll or something. I think it’s really great news though. I bet the CrossOver Office folks will have this polished pretty soon (if they don’t already).

It’s really phenominal work the Wine community do and it is greatly appreciated. I have no copy of Microsoft Windows and from time to time I really need to run a Windows application (e.g. Tax Software from the Government) and without Wine this wouldn’t be possible. Up until today I could only partially test in IE7 so it is great to know that I now have a way to make sure that sites I make are at least functional in Internet Explorer. Unless the site is for a client I’m not going to go to kill myself trying to make it work perfectly though, I tend to assume that people who use Internet Explorer are accustomed to things not working perfectly 😀

Goal oriented searching?

I was just wondering if there’s a way to search according to a particular goal. Since we “check for updates” to news items, activity on social networks etc. “read up on” topics in wikipedia, blogs etc. “look for” products, instead of just “searching” by keywords and trying to pick clever ones to get decent results wouldn’t it be nice to express our intention? sounds like a proposal to do something like that, but doesn’t seem to have taken off, and at a glance seems overly complicated with some natural language processing functionality. Since you probably never want to “read about” something on ebay or “shop” on wikipedia is there a simple approach? Could it be that most sites serve a particular goal and would fit into a neat and small set of goals which would be easy to state? I guess something like might already have user created searches which could effectively do this, but it seems a bit too manual.

How about adding metadata to a page to indicate it’s purpose? Like keyword metadata maybe this would just be abused by SEOs until it is worthless. Hmm …

GMail please put spam in my inbox instead of my inbox in spam

I usually only have a look in my gmail spam folder for a laugh. Today I had a look and found it half full of valid emails. Emails related to projects I’m working on, replies to queries I thought I had never received and from people I regularly correspond with. I must see if I can add a filter to move everything from the spam box into my inbox otherwise I have to regularly clean out the spam manually which, I suspect, is going to take all the fun out of the computer generated poetry 😦

# We’re looking for a name for the next high end free video editor
# and there are quite a lot of suggestions so far
# to test for available domain names I put this ditty together

# I believe a whois lookup doesn’t really tell you if a name
# has been taken but I guess it’s something

import commands
import sys
import time

if len(sys.argv) == 2:
    namelist = sys.argv[1]
    print “please run it like this: python filename”

    names = open(namelist, “r”).read().split(“\n”)[:-1]
    print “the following domain names may be available”
    for name in names:
        availabletlds = “”
        for tld in [“com”, “net”, “org”]:
            domainname = name+”.”+tld
            whoisresult = “”
            while not whoisresult or “fgets” in whoisresult or “LIMIT EXCEEDED” in whoisresult:
                whoisresult = commands.getoutput(“whois %s”% domainname)
                # whois gets upset if you query it too often
                if “fgets” in whoisresult or “LIMIT EXCEEDED” in whoisresult:
                if “No match” in whoisresult or “NOT FOUND” in whoisresult:
                    availabletlds += ” “+tld
        print name + ” ” + availabletlds

except Exception, error:
    print error