Skip to content

Instantly share code, notes, and snippets.

View d0ugal's full-sized avatar
👋
Hi!

Dougal Matthews d0ugal

👋
Hi!
View GitHub Profile
➜ Desktop brew install -v dvdauthor
==> Downloading http://downloads.sourceforge.net/project/dvdauthor/dvdauthor/0.7.1/dvdauthor-0.7.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/dvdauthor-0.7.1.tar.gz
/usr/bin/tar xf /Library/Caches/Homebrew/dvdauthor-0.7.1.tar.gz
==> ./configure --disable-dependency-tracking --prefix=/usr/local/Cellar/dvdauthor/0.7.1 --mandir=/usr/local/Cellar/dvdauthor/0.7.1/share/man
./configure --disable-dependency-tracking --prefix=/usr/local/Cellar/dvdauthor/0.7.1 --mandir=/usr/local/Cellar/dvdauthor/0.7.1/share/man
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... autotools/install-sh -c -d
checking for gawk... no
@d0ugal
d0ugal / install_vagrant_sudoers.sh
Created December 11, 2012 09:26 — forked from beddari/install_vagrant_sudoers.sh
Allow Vagrant sudo-access without password for NFS-setup
#!/bin/bash
# Script for placing sudoers.d files with syntax-checking
if [ -z "$1" ]; then
# Making a temporary file to contain the sudoers-changes to be pre-checked
TMP=$(mktemp)
cat > $TMP <<EOF
Cmnd_Alias VAGRANT_EXPORTS_ADD = /bin/su root -c echo '*' >> /etc/exports
Cmnd_Alias VAGRANT_NFSD = /etc/init.d/nfs-kernel-server restart
Cmnd_Alias VAGRANT_EXPORTS_REMOVE = /bin/sed -e /*/ d -ibak /etc/exports
s,z,Z,L,X=" ","%s",zip,len,xrange;print"\n".join(x.rstrip()for x in(lambda y:y[0](y,5,1))([lambda y,n,w:[s*w for _ in X(1,w)]+["__"*w]if n==0 else[z*3%(s*(L(t)//2),t,s*(L(t)//2))for t in y[0](y,n-1,w)]+[z*2%m for m in Z(y[1](y,n-1,w),y[2](y,n-1,w))],lambda y,n,w:[(s*i)+"/"+(s*j)for(i,j)in Z(X(w-1,-1,-1),X(w,w*2))]if n==0 else[z*3%(s*(L(t)//2),t,s*(L(t)//2))for t in y[2](y,n-1,w)]+[z*2%m for m in Z(y[0](y,n-1,w),y[1](y,n-1,w))],lambda y,n,w:[(s*i)+"\\"+(s*j)for(j,i)in Z(X(w-1,-1,-1),X(w,w*2))]if n==0 else[z*3%(" "*(L(t)//2),t," "*(L(t)//2)) for t in y[1](y,n-1,w)]+ [z*2%m for m in Z(y[2](y,n-1,w),y[0](y,n-1,w))]]))
@d0ugal
d0ugal / gist:3288929
Created August 7, 2012 20:08
brew install glib failing.
➜ ~ brew install glib
==> Installing glib dependency: gettext
==> Downloading http://ftpmirror.gnu.org/gettext/gettext-0.18.1.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/gettext-0.18.1.1.tar.gz
==> Downloading patches
######################################################################## 100.0%
######################################################################## 100.0%
==> Patching
patching file gettext-tools/configure
patching file gettext-tools/Makefile.in
@d0ugal
d0ugal / locache-example.js
Created April 9, 2012 12:29
locache.js example.
var seconds = 60
locache.set("key", {
'user': 1,
'books': ['a', 'b', 'c']
}, seconds)
locache.get("key")
// {'user': 1, 'books': ['a', 'b', 'c']}
// Note the object is returned, not a string.
@d0ugal
d0ugal / contribute_to_model.py
Created April 3, 2012 14:09
Patch an existing django model.
from django.db import models
from django.utils.functional import curry
def contribute_to_model(contrib, destination):
"""
Update ``contrib`` model based on ``destination``.
Every new field will be created. Existing fields will have some properties
updated.
@d0ugal
d0ugal / gist:1941104
Created February 29, 2012 14:06
Auto-activating virtualenvs with autoenv and virtualenvwrapper.
PROJECT_DIR="$(dirname "${BASH_SOURCE:-$0}" )";
ABSOLUTE_DIR=`$SHELL -c "cd \"$PROJECT_DIR\" && pwd"`;
PROJECT_NAME="$( basename $ABSOLUTE_DIR)";
if [[ -n $PROJECT_NAME && $VIRTUAL_ENV != *"$PROJECT_NAME" ]];
then workon $PROJECT_NAME;
fi;
unset PROJECT_DIR;
unset ABSOLUTE_DIR;
@d0ugal
d0ugal / gist:1013188
Created June 7, 2011 21:16
Quick n dirty decorator for profiling a view.
import hotshot
import os
import time
try:
PROFILE_LOG_BASE = settings.PROFILE_LOG_BASE
except:
PROFILE_LOG_BASE = "/tmp"
def profile(log_file):
@d0ugal
d0ugal / gist:966226
Created May 11, 2011 10:01
SOCKS Proxy
browsesecure() {
python <<SWITCH
import sys
from subprocess import Popen, call, PIPE
import time
def switch_location(name):
call(['scselect', name], stdout=open('/dev/null', 'w'))
print "Switched to %s" % name
@d0ugal
d0ugal / Chrome cross-domain loading
Created May 10, 2011 18:26
Do this from the command line to run chrome so that it can load AJAX etc cross-domain
open -a /Applications/Google\ Chrome.app --args --disable-web-security