Skip to content

Instantly share code, notes, and snippets.

Erica Ehrhardt SteelPangolin

Block or report user

Report or block SteelPangolin

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
SteelPangolin / etc_init.d_foo
Last active Jan 20, 2016
Run socat as a SysV service to write TCP stream contents to a file
View etc_init.d_foo
# Provides: foo
# Defalt-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Writes TCP on port 8725 to a file
source /etc/rc.d/init.d/functions
SteelPangolin / robbyrussell-hostname.zsh-theme
Created Oct 20, 2015
Tweak robbyrussell ZSH theme to prepend hostname
View robbyrussell-hostname.zsh-theme
local hostname="%{$fg_bold[black]%}%m"
local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ %s)"
PROMPT='${hostname} ${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}"
SteelPangolin / adblock-related-content.txt
Created Jul 20, 2015
Adblock filter list for "related content" garbage
View adblock-related-content.txt
SteelPangolin / php-pecl-parsekit-1.3-php56-variadic-fix.patch
Created May 20, 2015
patch by @Hubbitus for Parsekit on PHP 5.6; see PHP bug #67854
View php-pecl-parsekit-1.3-php56-variadic-fix.patch
diff -Naur php-pecl-parsekit-1.3.0.orig/parsekit-1.3.0/parsekit.c php-pecl-parsekit-1.3.0/parsekit-1.3.0/parsekit.c
--- php-pecl-parsekit-1.3.0.orig/parsekit-1.3.0/parsekit.c 2014-08-16 21:55:32.000000000 +0400
+++ php-pecl-parsekit-1.3.0/parsekit-1.3.0/parsekit.c 2014-08-18 12:50:05.377165855 +0400
@@ -300,7 +300,7 @@
add_assoc_long(return_value, "num_args", ops->num_args);
add_assoc_long(return_value, "required_num_args", ops->required_num_args);
- add_assoc_bool(return_value, "pass_rest_by_reference", ops->fn_flags & ZEND_ACC_PASS_REST_BY_REFERENCE);
+ add_assoc_bool(return_value, "pass_rest_by_reference", ops->fn_flags & ZEND_ACC_VARIADIC);
#!/usr/bin/env python
Translate a CSV document with a header to a YAML document that is a list of maps.
Uses constant memory and keeps field names in the original order.
import sys
import csv
import yaml # requires PyYAML
SteelPangolin /
Created May 12, 2015
Generate a random X-COM mission name.
#!/usr/bin/env python3
Generate a random X-COM mission name.
from random import choice
prefixes = [
View Exploring is never
SteelPangolin /
Created Apr 7, 2015
Packer template for building a Debian-based AMI suitable for developing and running Python 3.4-based services

This is a Packer template for building a Debian-based AMI suitable for developing and running Python 3.4-based services. It uses a Debian 8 prerelease image as the base.

To build the AMI:

  • Install Packer.
  • Make sure your Amazon credentials are in ~/.aws/credentials.
  • If using an AWS region other than Oregon, change region and source_ami in packer-template.json.
  • Run packer build packer-template.json.
SteelPangolin /
Created Apr 3, 2015
Upgrade all outdated packages managed by pip. Great for virtualenvs.
pip list --outdated | cut -d ' ' -f 1 | xargs pip install -U
View parsekit
--- a/parsekit-1.3.0/parsekit.c
+++ b/parsekit-1.3.0/parsekit.c
@@ -78,18 +78,18 @@
#ifdef IS_CV
/* PHP >= 5.1 */
} else if (node->op_type == IS_CV) {
- add_assoc_long(return_value, "var", node->u.var);
- add_assoc_stringl(return_value, "varname", op_array->vars[node->u.var].name, op_array->vars[node->u.var].name_len, 1);
+ add_assoc_long(return_value, "var", node->u.op.var);
+ add_assoc_stringl(return_value, "varname", op_array->vars[node->u.op.var].name, op_array->vars[node->u.op.var].name_len, 1);
You can’t perform that action at this time.