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 / 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
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
View prepend_path.bash
function prepend_path () {
local path; path=$1; shift
export PATH="$(
awk -v RS=: -v "prepend=$path" '
BEGIN { a = prepend ":" }
$0 != prepend { a = a $0 ":" }
END { print(substr(a, 1, length(a)-1)) }
' <<< $PATH
)"
View one-file-cli-kit.rb
#!/usr/bin/env ruby
$:.unshift("/opt/dev/vendor/deps/cli-kit/lib")
$:.unshift("/opt/dev/vendor/deps/cli-ui/lib")
require 'cli/ui'
require 'cli/kit'
CLI::UI::StdoutRouter.enable
View darkness.rb
# detects whether a terminal is dark-on-light or light-on-dark.
# Only purposefully supports Terminal.app and iTerm, but a bunch of things use
# $COLORFGBG.
module BackgroundDetector
DARK = :dark
LIGHT = :light
def terminal_app
theme = `/usr/libexec/PlistBuddy -c "Print :'Default Window Settings'" ~/Library/Preferences/com.apple.Terminal.plist`.chomp
blob = `/usr/libexec/PlistBuddy -c "Print :'Window Settings':'#{theme}':BackgroundColor" ~/Library/Preferences/com.apple.Terminal.plist`.chomp
You can’t perform that action at this time.