Skip to content

Instantly share code, notes, and snippets.

@ebeigarts
ebeigarts / keybase.md
Created October 12, 2016 07:27
keybase.md

Keybase proof

I hereby claim:

  • I am ebeigarts on github.
  • I am ebeigarts (https://keybase.io/ebeigarts) on keybase.
  • I have a public key whose fingerprint is A14B 0A98 2061 C331 E4D8 C62B BD92 D3E2 0910 B700

To claim this, I am signing this object:

@ebeigarts
ebeigarts / deploy.rb
Created February 24, 2016 09:19
Capistrano 2 + Slack
set :slack_webhook_url, "https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXX"
namespace :slack do
task :deploy_started do
username = ENV['USER']
on_rollback do
slack(
color: "danger",
message: "*#{username}* cancelled deployment of *#{application}* to *#{rails_env}*"
@ebeigarts
ebeigarts / become_matcher.rb
Last active November 20, 2015 18:27
become_matcher.rb
require "timeout"
RSpec::Matchers.define :become do |expected|
supports_block_expectations
match do |block|
begin
Timeout.timeout(Capybara.default_wait_time * 3) do
sleep(0.1) until (@actual = block.call) && @actual == expected
true
#!/usr/bin/env ruby
class Infinity
def self.run
1.times { run }
end
end
Thread.new do
loop do
@ebeigarts
ebeigarts / gc_threads_issue.rb
Last active November 17, 2015 19:31
Ruby GC Threads Stack level too deep issue
#!/usr/bin/env ruby
# $ ruby -v
# ruby 2.3.0dev (2015-11-17 trunk 52623) [x86_64-darwin15]
# ruby gc_threads_issue.rb
# stack level too deep
# GC major: 0, minor: 0
# GC major: 0, minor: 0
# GC major: 0, minor: 0
# Killed: 9 # <- gets stuck, so kill -9 is the only way to stop it
# Become root
su -
# Add multimedia source
echo "deb http://www.deb-multimedia.org jessie main non-free" > /etc/apt/sources.list.d/deb-multimedia.org.list
echo "deb-src http://www.deb-multimedia.org jessie main non-free" >> /etc/apt/sources.list.d/deb-multimedia.org.list
apt-get update
apt-get install deb-multimedia-keyring # if this aborts, try again
apt-get update
@ebeigarts
ebeigarts / oatmeal_cookies.md
Last active August 29, 2015 14:02
Oatmeal cookies

Oatmeal cookies

Ingredients

  • 1 cup old fashioned oats
  • 1½ tablespoons chia seeds
  • ¼ cup oat milk
  • goji berries
@ebeigarts
ebeigarts / carrierwave_with_nginx.md
Last active August 29, 2015 13:57
Carrierwave + nginx X-Accel-Redirect

Carrierwave + nginx X-Accel-Redirect

nginx.conf

location /protected {
  internal;
  alias /var/www/myapp/current/protected;
}
@ebeigarts
ebeigarts / Latvian_fixed.keylayout
Last active March 14, 2024 14:48
Better latvian keyboard layout for OS X
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE keyboard SYSTEM "file://localhost/System/Library/DTDs/KeyboardLayout.dtd">
<!-- Fri, 24 Feb 2006 Generated from KCHR: "Latvian" -->
<!--Last edited by Ukelele version 1.8b6 on 2008-04-23 at 22:32 (EEST)-->
<!--Created by Ukelele version 1.8b6 on 2008-04-23 at 21:59 (EEST)-->
<keyboard group="29" id="30765" name="Latvian fixed" maxout="1">
<layouts>
<layout first="0" last="0" modifiers="commonModifiers" mapSet="ANSI"/>
</layouts>
<modifierMap id="commonModifiers" defaultIndex="8">
@ebeigarts
ebeigarts / RAILS_RELATIVE_URL_ROOT.md
Last active February 2, 2023 15:16
RAILS_RELATIVE_URL_ROOT

RAILS_RELATIVE_URL_ROOT

Rails

By default RAILS_RELATIVE_URL_ROOT is used only for asset pipeline.

To namespace your rails routes you need to wrap run MyApp::Application with map in your config.ru:

map ENV['RAILS_RELATIVE_URL_ROOT'] || "/" do