link_directory must be a directory

ActionView::Template::Error at / link_directory argument must be a directory Rails 5 doesn’t tell you enough to find where this error is coming from, which brought you here. link_directory is in your app/assets/config/manifest.js and it’s pointing at a non-existant folder.

Deactivating the Z170N's internal bluetooth in Clover

Welcome! Esteemed google for cryptic phrases! Yes, you can disable the built-in Wifi/Bluetooth adaptor of Z170N/H170N and possibly others. You probably want to do this to let your cough excellent operating system use the USB bluetooth dongle which actually works. Short version Add uia_exclude=HS08 to your bootflags. Longer version The build-in Intel device has: Device product ID: 0x0a2b Device vendor ID: 0x8087 Go to About this Mac -> System Report -> USB and find the bluetooth device (or any other USB device, actually) you want to deactivate.

   98, 97, 115, 104, 44, 32, 98, 97, 115, 104, 105, 110, 103, 45, 109, 121, 45, 104, 101, 97, 100, 45, 105, 110, 44, 32, 103, 105, 116, 44, 32, 106, 101, 107, 121, 108, 108

Massdrop is the worst spammer I've seen since the 90ies

I signed up to Massdrop on May 5th. Pretty soon, my mailbox looked like this: Everyone loves Massdrop newsletters, with reviews and fresh droppings 💩 Lucky guy, I though, and clicked the unsubscribe link which wasn’t actually hidden too well. I did the same again, a few days later. Then two days in a row, starting to question my sanity. On day 4 or so, I took a closer look at that unsubscribe form.

Verifying NGINX configurations in ansible

Thou shalt always verify the configurations you produce: -name: nginx config become: yes template: src: "nginx.conf.j2" dest: "/etc/nginx/nginx.conf" validate: "nginx -t -c %s" …even if you’re only creating a partial configuration - name: Add managed vhost config file (if any vhosts are configured). template: src: vhost.j2 dest: "{{ nginx_vhost_path }}/{{ hostname }}.conf" validate: "echo 'http { include \'%s\'; }' > /tmp/n && nginx -t -c /tmp/n"


Error: ANSIBLE_MODULE_CONSTANTS not found in environment. Unable to figure out what constants were passed This happened when trying to run run ansible directly from the repository checkup. I’m pretty sure it’s got something to do with a python misconfiguration, possibly because libraries from python2 and python3 are interfering. I gave up on actually solving it and installed ansible with a make && make install in the repository folder. It’s just one more step after every update and I’m actually happy to get rid of the slow shell startup script.

Autogenerate a Dash Docset with Object Graph and documentation Statistics on Rails Migrate

These are a few rake tasks that automate my current rails documentation workflow. Specifically, they add: Generating the Object Graph as a dotfile and rendering it with Graphviz Adding a short overview of Documentation Statistics to the documentation index. Generating a docset for Dash from the Yard documentation. Auto-annotation of Models This uses the Annotate Models gem. Install the gem as well as the Kramdown gem, run rails g annotate:install and edit the options in lib/tasks/auto_annotate_models.

I rule (.svg)

Here’s a neat little ruler in SVG for your enjoyment. It fills whatever size it’s parent allows it to fill. Unfortunately, I couldn’t get the JS to work when it’s loaded as an external file, so for now it has to be inline in the html or css.

React and Relay error scrapbook

I’m stumbling upon a few Relay errors for which the depths of the internet have no answer yet. So, mostly because I’ll just repeat them in six months, here’s what I did wrong. Your mileage may vary.

Get a Grid, at least vertically

Need a vertical grid in Chrome, Safari or Firefox? Disappointed by the half-assed plugins available? Fear not, use this: var m=15; for(var i=1;i*m<document.body.offsetHeight;i+=1) { var a=document.createElement('div'); a.setAttribute( 'style', 'position:absolute;top:' +i +'rem;left:0;width:' +document.body.offsetWidth +'px;height:1px;background-color:#000;' ); document.body.appendChild(a) if(i==1){ m=a.getBoundingClientRect().top } } Click this Link to get a grid, or right-click and save it as a bookmarklet for when you really need to go chasing that elusive Vertical Rhythm. Lines are conveniently spaced 1rem apart.