Skip to content

Instantly share code, notes, and snippets.

has_behavior :supports_groups_and_categories
def has_behavior(behavior)
mod = behavior.to_s.camelize.constantize
class << mod
def class_methods
mod::ClassMethods
end
def instance_methods
mod::InstanceMethods
# Maintainer: Brian Bidulock <bidulock@openss7.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Aline Freitas <aline@alinefreitas.com.br>
pkgname=polkit-git
_pkgname=polkit
pkgver=121.r10.g4e937fd
pkgrel=1
epoch=1
pkgdesc="Application development toolkit for controlling system-wide privileges"
@joefiorini
joefiorini / PKGBUILD
Last active May 12, 2022 17:27 — forked from 4Evergreen4/PKGBUILD
Bitwig Beta 4.3 PKGBUILD
# Maintainer: Jonathon Fernyhough <jonathon at_m2x+dev>
# Contributor: Aleksej Komarov <stylemistake@gmail.com>
# Contributor: MKzero <info[at]linux-web-development[dot]de>
# Contributor: Evergreen <evergreenubuntu[at]gmail[dot]com>
# Upstream: Bitwig GmbH <support@bitwig.com>
# Original PKGBUILD taken wholesale from stylemistake's bitwig-studio package
# JF added a prepare() to allow side-by-side installation with release version
pkgname=bitwig-studio-beta
@joefiorini
joefiorini / idiomatic_mofo.rb
Created January 7, 2012 05:34
Camelize Hash keys to return in JSON request. In other words, idiomatic JSON for your Rubies. Consider this pseudo-code as it's about 40% untested.
def HashExtensions(hash)
hash.extend(HashExtensions)
end
module HashExtensions
def camelize_keys
dup.camelize_keys!
end
var define, requireModule;
(function() {
var registry = {}, seen = {};
define = function(name, deps, callback) {
registry[name] = { deps: deps, callback: callback };
};
requireModule = function(name) {
$.ajaxPrefilter(function(options, originalOptions, jqXHR) {
var token;
if (!options.crossDomain) {
token = $('meta[name="csrf-token"]').attr('content');
if (token) {
return jqXHR.setRequestHeader('X-CSRF-Token', token);
}
}
});
@joefiorini
joefiorini / sway-launcher-desktop.sh
Last active October 22, 2019 20:14 — forked from Biont/sway-launcher-desktop.sh
sway-launcher-desktop
#!/usr/bin/env bash
# terminal application launcher for sway, using fzf
# Based on: https://gitlab.com/FlyingWombat/my-scripts/blob/master/sway-launcher
# https://gist.github.com/Biont/40ef59652acf3673520c7a03c9f22d2a
shopt -s nullglob
if [[ "$1" == 'describe' ]]; then
shift
if [[ $2 == 'command' ]]; then
title=$1
@joefiorini
joefiorini / init.vim
Created September 3, 2019 13:33
My 2019 NeoVim Config
" == VIM PLUG ================================
call plug#begin('~/.vim/plugged')
"------------------------ COC ------------------------
" coc for tslinting, auto complete and prettier
Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}
" coc extensions
let g:coc_global_extensions = ['coc-eslint', 'coc-tsserver', 'coc-emmet', 'coc-css', 'coc-html', 'coc-json', 'coc-yank', 'coc-prettier', 'coc-import-cost', 'coc-svg', 'coc-gitignore', 'coc-lists', 'coc-snippets', 'coc-git', 'coc-pairs', 'coc-marketplace', 'coc-stylelint', 'coc-jest', 'coc-project', 'coc-vimlsp']
"------------------------ VIM TSX ------------------------
@joefiorini
joefiorini / Brocfile.js
Created June 12, 2014 01:42
My setup for building an Angular.js app with Broccoli & grunt
var ngMin = require('broccoli-ng-min');
var uglify = require('broccoli-uglify-js');
var compileSass = require('broccoli-ruby-sass');
var pickFiles = require('broccoli-static-compiler');
var mergeTrees = require('broccoli-merge-trees');
var findBowerTrees = require('broccoli-bower');
var env = require('broccoli-env').getEnv();
var compileES6 = require('broccoli-es6-concatenator');
var app = 'app/scripts';
module Main exposing (..)
import Html exposing (Html, program, text)
import MountableProgram as Mountable exposing (Mountable, mountableProgram)
import Time
type alias Model =
()