Skip to content

Instantly share code, notes, and snippets.

Burke Libbey burke

Block or report user

Report or block burke

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
@burke
burke / remotepaste.md
Last active Feb 13, 2020
This sets up keybindings in tmux that allow you to copy/paste to/from your OS X clipboard from tmux running inside an SSH connection to a remote host. Partially borrowed from http://seancoates.com/blogs/remote-pbcopy
View remotepaste.md

Local (OS X) Side

~/Library/LaunchAgents/pbcopy.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
     <key>Label</key>
     <string>localhost.pbcopy</string>
@burke
burke / 0-readme.md
Created Jan 27, 2012 — forked from funny-falcon/cumulative_performance.patch
ruby-1.9.3-p327 cumulative performance patch for rbenv
View 0-readme.md

ruby-1.9.3-p327 cumulative performance patch for rbenv

This installs a patched ruby 1.9.3-p327 with various performance improvements and a backported COW-friendly GC, all courtesy of funny-falcon.

Requirements

You will also need a C Compiler. If you're on Linux, you probably already have one or know how to install one. On OS X, you should install XCode, and brew install autoconf using homebrew.

View ,
#!/bin/bash
#
# usage example:
# $ , yarn --help
# This finds a derivation providing a bin/yarn, and runs it with `nix run`.
# If there are multiple candidates, the user chooses one using `fzy`.
set -euo pipefail
if [[ $# -lt 1 ]]; then
>&2 echo "usage: , <program> [arguments]"
@burke
burke / 0-README.md
Last active Oct 22, 2019
Code Release for NixCon 2019
View 0-README.md

The rest of these files are the code referenced in my NixCon 2019 talk which live in Shopify's non-public codebases. Everything in this gist is extracted with minimal or no change from our codebase, and thus some of it references libraries or other code not included here. cli-ui and cli-kit probably comprise a majority of these cases.

All code Copyright Shopify, 2019, released here under MIT License.

View ohno.rb
require('yaml')
module Ohno
def self.replace_index(welp, index)
case welp
when String
welp == "$index" ? index : welp.gsub(/\$index/, index.to_s)
else
welp
end
@burke
burke / genkey.rb
Created Oct 12, 2016
Create an Elliptic Curve keypair in ruby
View genkey.rb
require 'openssl'
k = OpenSSL::PKey::EC.new('secp384r1').generate_key
p = OpenSSL::PKey::EC.new(k.public_key.group)
p.public_key = k.public_key
puts k.to_pem, p.to_pem
View vscode-vim.md

r<cr>

Replacing a space with a newline doesn't obey indentation rules:

  def foo(x)
    a = x.each { |e| puts(e) }
                  # ^ put cursor here and press `r<cr>`.
View centers.rb
#!/usr/bin/ruby --disable-gems
require('open3')
# http://fsck.com/~jesse/tmp/2019-02-15/bdfca368-6f85-40d3-ba47-e730c4c2b712/left-key-spacing.pdf
out, stat = Open3.capture2('qpdf', '--qdf', '--object-streams=disable', 'left-key-spacing.pdf', '-')
abort('qpdf fail') unless stat.success?
out.force_encoding(Encoding::BINARY)
# coordinates are indexed from top-left, x is horizontal; y is vertical
View helm-dev.el
;;; helm-dev.el --- dev cd - projectile/helm interface. -*- lexical-binding: t -*-
;; Version: 1.0.0
;; Package-Requires: ((helm "1.5") (cl-lib "0.5") (emacs "24.1"))
;;; Code:
(require 'cl-lib)
(require 'helm)
(require 'helm-utils)
View http-promise.rb
ctx = OpenSSL::SSL::SSLContext.new
ctx.set_params(verify_mode: OpenSSL::SSL::VERIFY_PEER)
raw_sock = TCPSocket.new(host, 443)
ssl_sock = OpenSSL::SSL::SSLSocket.new(raw_sock, ctx)
ssl_sock.hostname = host
ssl_sock.sync_close = true
ssl_sock.connect
You can’t perform that action at this time.