Skip to content

Instantly share code, notes, and snippets.

@alanivey
alanivey / multi-sapi-5.3.29.patch
Created February 23, 2015 19:50
Build multiple SAPIs, back-ported to PHP 5.3
diff --git a/Makefile.global b/Makefile.global
index 3a5b1c2..7450162 100644
--- a/Makefile.global
+++ b/Makefile.global
@@ -13,6 +13,8 @@ all: $(all_targets)
build-modules: $(PHP_MODULES) $(PHP_ZEND_EX)
+build-binaries: $(PHP_BINARIES)
+
@alanivey
alanivey / php53-opcache.sh
Last active August 29, 2015 14:11
Install opcache for PHP 5.3 or 5.4 in OS X with Homebrew
brew install -v php53-opcache
sed -i '' "s|^\(opcache\.memory_consumption[[:space:]]*=[[:space:]]*\)[0-9]*|\1256|;" $(brew --prefix)/etc/php/5.3/conf.d/ext-opcache.ini
@alanivey
alanivey / etc__cron.daily__drush-update
Last active August 29, 2015 14:07
Global self-updating Drush on CentOS 6
#!/bin/bash
COMPOSERDIR="/usr/local/bin"
COMPOSERNAME="composer"
DRUSHDIR="/usr/local/share/drush"
# Keep Composer up to date
if [[ ! -x $COMPOSERDIR/$COMPOSERNAME ]]; then
/usr/bin/curl -sS https://getcomposer.org/installer | /usr/bin/php -- --install-dir="$COMPOSERDIR" --filename="$COMPOSERNAME" >/dev/null
elif [[ -f $COMPOSERDIR/$COMPOSERNAME ]]; then
@alanivey
alanivey / 0_reuse_code.js
Created May 9, 2014 14:10
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
; The blacklist file is a text file that holds the names of files
; that should not be accelerated. The file format is to add each filename
; to a new line. The filename may be a full path or just a file prefix
; (i.e., /var/www/x blacklists all the files and directories in /var/www
; that start with 'x'). Line starting with a ; are ignored (comments).
; Files are usually triggered by one of the following three reasons:
; 1) Directories that contain auto generated code, like Smarty or ZFW cache.
; 2) Code that does not work well when accelerated, due to some delayed
; compile time evaluation.
; 3) Code that triggers an OPcache bug.
@alanivey
alanivey / gist:11254591
Created April 24, 2014 13:29
tuntap and iodine on OS X 10.9 with Homebrew
brew install tuntap
sudo cp -pR $(brew --prefix tuntap)/Library/Extensions/tap.kext /Library/Extensions/
sudo cp -pR $(brew --prefix tuntap)/Library/Extensions/tun.kext /Library/Extensions/
sudo chown -R root:wheel /Library/Extensions/tap.kext
sudo chown -R root:wheel /Library/Extensions/tun.kext
sudo touch /Library/Extensions/
sudo cp -pR $(brew --prefix tuntap)/tap /Library/StartupItems/
sudo chown -R root:wheel /Library/StartupItems/tap
sudo cp -pR $(brew --prefix tuntap)/tun /Library/StartupItems/
sudo chown -R root:wheel /Library/StartupItems/tun
@alanivey
alanivey / shuttle_config.sh
Created December 10, 2013 18:46
Shuttle (http://fitztrev.github.io/shuttle/) config with Vagrant, all Storm on Demand (stormondemand.com) servers, and all Liquid Web servers
#!/bin/bash
echo "{"
echo "\"_comment\": \"Valid terminals include: 'Terminal.app' or 'iTerm'\","
echo "\"terminal\": \"iTerm\","
echo "\"hosts\": ["
echo "{"
echo "\"name\": \"Vagrant\","
@alanivey
alanivey / gist:7535763
Created November 18, 2013 21:36
XtraBackup Incremental
# backup
innobackupex --no-timestamp /var/lib/mysql-backup/full
innobackupex --no-timestamp --incremental /var/lib/mysql-backup/incremental1 --incremental-basedir=/var/lib/mysql-backup/full
innobackupex --no-timestamp --incremental /var/lib/mysql-backup/incremental2 --incremental-basedir=/var/lib/mysql-backup/incremental1
innobackupex --no-timestamp --incremental /var/lib/mysql-backup/incremental3 --incremental-basedir=/var/lib/mysql-backup/incremental2
#prepare incrementals into full
innobackupex --apply-log --redo-only /root/backup/full
@alanivey
alanivey / .htaccess
Created November 15, 2013 15:13
WordPress default .htaccess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
#!/bin/bash
# tungsten-slave-createcachetables.sh
# Tungsten is not extracting data for the following pattern (Drupal 6 and 7):
# replicator.filter.replicate.ignore=*.access,*.cache,*.cache_*,*.ctools_*_cache,*.views_*_cache,*.sessions,*.watchdog
# This means that the tables would not exist on the slave. It would be ideal to have
# the tables exist, but be empty.
# This script will create empty tables for any table matching the pattern in 'grep' commands below.
# It is manually set to match the same replicator.filter.replicate.ignore in the tungsten config.