Python Update Your Eggs

Quite awhile ago I needed an easy way to update all my Python eggs, this is tedious at best especially if you didn’t explicitly keep track of what you’ve installed over time. The script below isn’t mine (I’ve made a few subtle changes) but it is invaluable. I’ve been using it for the last 8-months without fail. Many thanks to Flávio Codeço Coelho for making his script available online. #!/usr/bin/env python from setuptools.command.easy_install import main as install from pkg_resources import Environment, working_set import sys #Packages managed by setuptools plist = [dist.key for dist in working_set] def autoUp(): for p in Environment(): try: install(['-U', '-v']+[p]) except: print "Update of %s failed!" %p print "Done!" def stepUp(): for p in Environment(): a = raw_input("updating %s, confirm? (y/n)" %p) if a.upper() =='Y': try: install(['-U']+[p]) except: print "Update of %s failed!"%p else: print "Skipping %s"%p print "Done!" print "You have %s packages currently managed through Easy_install"%len(plist) print plist ans = raw_input('Do you want to update them... (N)ot at all, (O)ne-by-one, (A)utomatically (without prompting)') if ans.upper() == 'N': sys.exit() elif ans.upper() == 'O': stepUp() elif ans.upper() == 'A': autoUp() else: print "Oops, you chose a non-existant option. Please run the script again."

April 12, 2010 · 1 min · Matt Brandt

MIPS

Spring is in the air (finally) in Colorado and it doesn’t look like we’re going to get huge amounts of snow anytime soon. I was dinking around my file system to see what files I’m willing to delete thinking to myself, “can I clear up any mind clutter?” Well I was able to delete quite a bit of my old adventures from the past. However, I came across a bit of MIPS code that I wrote, I almost deleted it until I remembered somewhat recently I was able to help some poor student with his homework on one of the Ubuntu forums. ...

April 5, 2010 · 3 min · Matt Brandt