Skip to content

Instantly share code, notes, and snippets.


Brian Cline briancline

  • SoftLayer / IBM Cloud
  • Dallas, Texas
View GitHub Profile
briancline /
Created Nov 25, 2022 — forked from rbarrois/
Proper module for patching
# This code is in the public domain
# Author: Raphaël Barrois
from __future__ import print_function
import datetime
import mock
briancline / reasonable-corners.js
Last active Oct 29, 2022
Everyone please calm down with the gigantic fisher-price rounded corners on everything (especially you, Google)
View reasonable-corners.js
_chill_factor = 0.25;
_chill_threshold = 5; // px
for (const el of document.querySelectorAll('*')) {
for (const _corner of ['TopLeft', 'TopRight', 'BottomRight', 'BottomLeft']) {
_prop = 'border' + _corner + 'Radius';
if (window.getComputedStyle(el)[_prop] !== '0px') {
_rad = parseInt(window.getComputedStyle(el)[_prop]);
if (isNaN(_rad) || _rad <= _chill_threshold) {
briancline / .pylintrc
Created Jun 6, 2022
Example pylintrc (mostly based off a few OpenStack projects' pylintrcs)
View .pylintrc
# generated-members=SymbolName
# C0111: Missing module docstring
# C0301: Line too long (pycodestyle checks this)
briancline / 0-pvemanagerlib-fix-sorting.diff
Created Dec 8, 2021
Proxmox VE - Fix strange ID-based sorting to sort by VM/container names instead
View 0-pvemanagerlib-fix-sorting.diff
--- /usr/share/pve-manager/js/pvemanagerlib.js 2021-11-24 11:32:51.000000000 -0600
+++ /usr/share/pve-manager/js/bc-pvemanagerlib.js 2021-11-29 15:44:54.070286236 -0600
@@ -3785,7 +3785,7 @@
if (Ext.isNumeric(info.vmid) && info.vmid > 0) {
text = String(info.vmid);
if ( {
- text += " (" + + ')';
+ text = + ' (' + text + ')';
} else { // node, pool, storage
briancline /
Created Mar 24, 2021
Fix for nginx + flask
from werkzeug.middleware import proxy_fix
app = flask.Flask('thing')
app.wsgi_app = proxy_fix.ProxyFix(app.wsgi_app, x_proto=1, x_host=1)
briancline /
Last active Jun 2, 2018
ubuntu-17.10: Fix resolver behavior for dhclient when systemd-resolved is disabled (fall back to resolvconf)

The problem

So systemd-resolved has bugs. Disabling and stopping systemd-resolved to escape these is the logical step, but a dhcp-managed system does gracefully not fall back to resolvconf-managed file even though dhclient still executes the hook for it. As a result, you're then left with a broken resolv.conf that never gets updated by dhclient.

The reason is the systemd-resolved hook in dhclient only checks to see whether it is executable, and not whether it is also enabled. As a result, it still overwrites the default make_resolv_conf shell function with systemd-resolved logic. Since the resolvconf hook is executed before the resolved hook, you either have to rename it to a name that sorts after resolved, or symlink it thusly; but this doesn't fix the bug.

This diff fixes the resolved hook to actually check for the enabled state of the service in addition to checking whether it is executable. Not the best sequence of steps -- better to check the binary's executable state first, then check whe

briancline / data.sql
Created May 4, 2018
Extra flair for CRDB bug report
View data.sql
-- PostgreSQL database dump
-- Dumped from database version 10.3 (Ubuntu 10.3-1.pgdg16.04+1)
-- Dumped by pg_dump version 10.3 (Ubuntu 10.3-1.pgdg16.04+1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
briancline / vpnc-script
Created Dec 31, 2016 — forked from dzderic/vpnc-script
A custom OpenConnect script to set DNS using `networksetup` on OSX, which makes it work with things that don't read from `/etc/resolv.conf`
View vpnc-script
# Originally part of vpnc source code:
# © 2005-2012 Maurice Massar, Jörg Mayer, Antonio Borneo et al.
# © 2009-2012 David Woodhouse <>
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
View gist:c91c4b91e0f5bf9629c8c11fbbaf4ca2
root@saio:/opt/go/src/ make get test all
go get -t ./...
go vet ./...
go test -cover ./...
? [no test files]
? [no test files]
? [no test files]
ok 4.325s coverage: 62.1% of statements
ok 0.009s coverage: 82.7% of statements
ok 3.399s coverage: 71.0% of statements
briancline / hands-off-my-scrollwheel-asshole.js
Last active May 24, 2016
Prevent brain-dead UI/UX terrorists from crapping on OS-native scrolling / touchpad behavior
View hands-off-my-scrollwheel-asshole.js
* Copied for updates/additions from this Chrome extension (highly recommended):
* "Smooth Scroll Sucks" (
* If you're a UX terrorist who thinks it's "super cool" or "totally sweet" to
* to hijack the scrollwheel/trackpad to make things horrifically slow: stop.
* Just stop it with that shit. This is not good behavior. Your site actually
* provides the perceived feedback of a pile of mayonnaise slowly sliding down
* the edge of the world's largest turd.