- check out Puppet Forge
- upgrade to Puppet 3.0 ASAP
- big performance and memory handling improvements over 2.7
- Hiera used internally
- Puppet can write puppet
| #!/bin/zsh -w | |
| # This hook is run after this virtualenv is activated. | |
| # If the virtualenv has a .project file in it then check to see the | |
| # path contained within it exists, and if so collect etags for .py | |
| # files in that path. Also includes etags generated for the | |
| # virtualenv itself—if it finds them. Virtualenv tags are generated | |
| # with the `venvtags` function defined in .zshrc: which should be run | |
| # manually after, for example, installing new requirements. The | |
| # resulting TAGS file is then hooked into the virtualenv by a |
| ===> Compressing manual pages for avr-binutils-2.20.1_1 | |
| ===> Registering installation for avr-binutils-2.20.1_1 | |
| Installing avr-binutils-2.20.1_1...pkg: avr-binutils-2.20.1_1 conflicts with binutils-2.23.1 (installs files into the same place). Problematic file: /usr/local/share/locale/da/LC_MESSAGES/bfd.mo | |
| *** [fake-pkg] Error code 70 | |
| Stop in /usr/ports/devel/avr-binutils. |
Notes on installing Arch Linux from scratch, using LVM partitions.
There's no installer as such; instead, there's a series of tasks carried out on the commandline to partition the disk and bootstrap base packages &c.
Followed the Installation Guide, with forays into other wiki pages to gather configuration options as required.
| (defadvice deft-new-file (after deft-markdown-title | |
| activate compile) | |
| "After Deft creates a new file, make the supplied text a Markdown header" | |
| (if (string-equal deft-text-mode "markdown-mode") | |
| (progn | |
| (goto-char (point-min)) | |
| (insert "# ") | |
| (goto-char (point-max))))) |
| ;; Toggle between split windows and a single window | |
| (defun toggle-windows-split() | |
| "Switch back and forth between one window and whatever split of | |
| windows we might have in the frame. The idea is to maximize the | |
| current buffer, while being able to go back to the previous split | |
| of windows in the frame simply by calling this command again." | |
| (interactive) | |
| (if (not (window-minibuffer-p (selected-window))) | |
| (progn |
| ;; use OSX's Quick Look to browse file:/// URLs | |
| (defun osx-qlook (url &optional some-stuff) | |
| (message "Launching Quick Look preview...") | |
| (start-process | |
| "qlmanage" | |
| (get-buffer-create "*qlmanage*") | |
| "/usr/bin/qlmanage" | |
| "-p" | |
| ;; strip “file://” from URL |
| def ds18b20_convert(lsb, msb): | |
| """ | |
| Converts the 16-bit sign-extended two’s complement number, stored | |
| in the DS18B20's temperature register, into a temperature. | |
| """ | |
| reading = lsb + (msb << 8) | |
| inv = reading & 0x8000 | |
| if inv: # two's compliment | |
| reading = (reading ^ 0xffff) + 1 | |
| val = reading / 16.0 |
| # use AppleScript to communicate with the Pomodoro application | |
| function pom { | |
| case $1 in | |
| start) | |
| # if it weren't for the use of arg ranges here then this function would work in straight sh | |
| TASK=$*[2,-1] | |
| DURATION=25 | |
| BREAK=5 | |
| osascript -e "tell app \"Pomodoro\" to start \"${TASK}\" duration ${DURATION} break ${BREAK}" |
| # use AppleScript to communicate with the Pomodoro application on OSX | |
| function pom { | |
| case $1 in | |
| start) | |
| osascript -e "tell app \"Pomodoro\" to start \"${*}\" duration 25 break 5" | |
| ;; | |
| stop) | |
| osascript -e "tell app \"Pomodoro\" to reset" | |
| ;; | |
| pause) |