Skip to content

Instantly share code, notes, and snippets.

@cybertk
cybertk / md_github_issue_link.py
Last active August 29, 2015 14:05
Render github issue with link
@cybertk
cybertk / unzip.rb
Last active August 29, 2015 14:05
Unzip and handle filename encoding correctly
#!/usr/bin/ruby
# Download from https://gist.github.com/cybertk/ff72d68e592966b11c23#file-unzip-rb
require 'optparse'
require 'zip'
require 'rchardet'
def GuessEncoding(zipfile_name)
enc = {}
@cybertk
cybertk / mocha_runtime_tests.coffee
Created September 11, 2014 14:21
Create mocha test/suite at runtime
require('chai').should()
Mocha = require 'mocha'
Test = Mocha.Test
Suite = Mocha.Suite
mocha = new Mocha
suite = Suite.create mocha.suite, 'I am a dynamic suite'
suite.addTest new Test 'I am a dynamic test', ->
true.should.equal true
@cybertk
cybertk / rake-apns.rb
Last active August 29, 2015 14:07
Rake tasks for APNs
namespace :apns do
task :verify do
openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert server_certificates_bundle_sandbox.pem -key server_certificates_bundle_sandbox.pem
end
task :p12topem do
openssl pkcs12 -in apns.p12 -out apns.pem -nodes -clcerts
end
end
@cybertk
cybertk / android-dev-env-setup.sh
Created October 22, 2014 07:53
Android Development Environment Setup
MAC_SDK_DIR="/Applications/Android Studio.app/sdk"
LINUX_SDK_DIR="~/opt/android-sdk"
if [ -d "$MAC_SDK_DIR" ]; then
ANDROID_SDK=$MAC_SDK_DIR
fi
# Setup Android SDK Env
if [ -n "$ANDROID_SDK" ]; then
echo "Load Android SDK at $MAC_SDK_DIR"
@cybertk
cybertk / rake-update-version-android-manifest.rb
Last active March 4, 2016 18:46
Update version in AndroidManifest.xml
task :update_build_number do
File.open('AndroidManifest.xml', 'r+') do |f|
manifest = f.read
build = ENV['TRAVIS_BUILD_NUMBER'] || 0
# Update version
manifest = manifest.gsub(
/android:versionCode=".*"/, "android:versionCode=\"#{build}\"")
# Write back
@cybertk
cybertk / Vagrantfile
Created October 30, 2014 16:05
Vagrantfile
# vi: set ft=ruby :
# Fail if Vagrant version is too old
begin
Vagrant.require_version ">= 1.6.0"
rescue NoMethodError
$stderr.puts "This Vagrantfile requires Vagrant version >= 1.6.0"
exit 1
end
description "Flynn layer 0"
#start on (started libvirt-bin and started networking)
respawn
respawn limit 1000 60
script
IP_ADDR=$(/sbin/ifconfig eth1 | grep 'inet addr:' | cut -d: -f2 | awk '{print $1}')
env ETCD_DISCOVERY=https://discovery.etcd.io/e73ebc86a75276ab5954ba7a6447ec94
flynn-host daemon --manifest /etc/flynn/host-manifest.json --external $IP_ADDR --state /tmp/flynn-host-state.json
namespace :apns do
task :verify do
openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert server_certificates_bundle_sandbox.pem -key server_certificates_bundle_sandbox.pem
openssl s_client -connect gateway.push.apple.com:2195 -cert pnpush.pem -key pnpush.pem
end
task :p12topem do
openssl pkcs12 -in apns.p12 -out apns.pem -nodes -clcerts
@cybertk
cybertk / git-copy
Last active August 29, 2015 14:17
Copy a remote git repo to another remote destination
#!/bin/sh
#
# Copy a remote git repo to another remote destination
# https://gist.github.com/cybertk/8a61ed9aca71a66cd711
#
# Copyright (C) 2015 Quanlong <kyan.ql.he@gmail.com>
set -e
# Options validation