Skip to content

Instantly share code, notes, and snippets.

View phaer's full-sized avatar

Paul Haerle phaer

View GitHub Profile
@phaer
phaer / ostatus_tag.rb
Created April 10, 2011 16:06
Simple Jekyll tag which displays the notices in a given status.net/ostatus feed.
require 'date'
require 'ostatus'
module Jekyll
class RenderOStatus < Liquid::Tag
def render(context)
site = context.registers[:site]
feed = OStatus::Feed.from_url(site.config['ostatus_feed'])
result = "<h2>#{feed.author.name}'s microblog</h2>"
@phaer
phaer / coffeescript_converter.rb
Created May 6, 2011 22:39
A trivial CoffeeScript.org -> Javascript plugin for jekyll ( https://github.com/mojombo/jekyll ). Put this file in '_plugins/' and write a YAML header to your .coffee files (i.e. "---\n---\n")
module Jekyll
require 'coffee-script'
class CoffeeScriptConverter < Converter
safe true
priority :normal
def matches(ext)
ext =~ /coffee/i
end
@phaer
phaer / raw_tag.rb
Created June 11, 2011 19:11
Raw tag for jekyll. Keeps liquid from parsing text betweeen {% raw %} and {% endraw %}
module Jekyll
class RawTag < Liquid::Block
def parse(tokens)
@nodelist ||= []
@nodelist.clear
while token = tokens.shift
if token =~ FullToken
if block_delimiter == $1
end_tag
@phaer
phaer / private.py
Last active December 23, 2015 07:28
Mediagoblin m*e*ddleware to keep your instance private.
from mediagoblin.meddleware import BaseMeddleware
from mediagoblin.tools.response import redirect
class PrivateMeddleware(BaseMeddleware):
"""Private Meddleware
Redirects requests by unauthenticated clients to the login form.
"""
public_views = [
#!/bin/zsh -f
set -e
HOSTNAME=$1
PASSWORD=toor
VMNAME=$HOSTNAME
FILE="$VMNAME.img"
SIZE=2G
ARCH=amd64
{-# LANGUAGE OverloadedStrings #-}
import Prelude hiding (FilePath)
import Control.Monad
import Data.Maybe
import Data.List
import qualified Data.Text as T
import qualified Data.ByteString.Lazy.Char8 as C
import Text.Feed.Types
import Text.Feed.Import
@phaer
phaer / roundcube_subscribe.php
Created June 19, 2015 14:47
roundcube: subscribe to all mailboxes
<?php
define('RCUBE_CONFIG_DIR', '/var/lib/roundcube/config/');
define('RCUBE_PLUGINS_DIR', '/var/lib/roundcube/plugins/');
require_once '/var/lib/roundcube/program/lib/Roundcube/bootstrap.php';
$rcube = rcube::get_instance(rcube::INIT_WITH_DB | rcube::INIT_WITH_PLUGINS);
$imap = $rcube->get_storage();
@phaer
phaer / cfg_to_defaults_main.yml
Created August 25, 2015 01:19
Cfg file to defaults/main.yml
import sys
import re
"""
Loops over a file with configuration in the form of
#key = value
and produces a yaml file suitable for ansibles defaults/main.yml
"""
#
# This file is the units database for use with GNU units, a units conversion
# program by Adrian Mariano adrianm@gnu.org
#
# August 2015 Version 2.13
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006
# 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015
# Free Software Foundation, Inc
#
@phaer
phaer / overpass-query.txt
Created April 14, 2016 01:17
Get RBL number for viennese public transport stops around a given location
/*
This has been generated by the overpass-turbo wizard.
The original search was:
“(railway=station or railway=tram_stop or highway=bus_stop) around Semperdepot”
*/
[out:json][timeout:25];
// adjust the search radius (in meters) here
{{radius=600}}
// gather results
(