Skip to content

Instantly share code, notes, and snippets.

@bacongravy
bacongravy / js-eval.sh
Last active January 23, 2018 04:28
js-eval - Execute JavaScript, parse JSON, on vanilla macOS (no dev tools or packages installed)
#!/bin/sh
alias js-eval="osascript -l JavaScript -e"
# examples:
js-eval "1+1"
# 2
js-eval "Math.PI"
@bacongravy
bacongravy / restart-vmnet.sh
Created February 11, 2018 23:07
Restart VMware Fusion networking
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --stop
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --start
@bacongravy
bacongravy / tar-gz.rb
Last active March 16, 2018 04:11
Creates a gzipped tar archive using vanilla Ruby and no temporary files
require 'rubygems/package'
filenames_and_contents = {
"filename" => "content",
}
File.open("archive.tar.gz", "wb") do |file|
Zlib::GzipWriter.wrap(file) do |gzip|
Gem::Package::TarWriter.new(gzip) do |tar|
filenames_and_contents.each_pair do |filename, content|
var me = Application.currentApplication(); me.includeStandardAdditions = true
ObjC.import('Cocoa')
ObjC.registerSubclass({
name: 'MainController',
methods: {
'appDidLaunch:': {
types: ['void', ['id']],
implementation: function(notification) {
@bacongravy
bacongravy / Vagrantfile
Created November 18, 2018 04:39
Vagrantfile for node development on mac
Vagrant.configure("2") do |config|
config.vm.box = "macinbox"
config.vm.provision "shell",
inline: <<~EOF
scutil --set ComputerName macinbox-dev
scutil --set LocalHostName macinbox-dev
defaults write /Library/Preferences/com.apple.screensaver.plist loginWindowIdleTime -integer 0
pmset -b sleep 0
EOF
config.vm.provision "shell", privileged: false,
@bacongravy
bacongravy / prepare_vmdk.sh
Created February 1, 2019 21:39
The origin of the `macinbox` project
#!/bin/sh -e
INSTALLER_APP="$1"
OUTPUT_PATH="$2"
DISK_SIZE=${DISK_SIZE:-64}
USER_NAME=${USER_NAME:-vagrant}
FULL_NAME=${FULL_NAME:-$USER_NAME}
PASS_WORD=${PASS_WORD:-$USER_NAME}
@bacongravy
bacongravy / package_environment.sh
Created February 1, 2019 21:40
The origin of the `vagrant-package-vmware` project
#!/bin/sh -e
INPUT_DIR="$1"
OUTPUT_PATH="$2"
#####
log_info() {
echo " \033[0;32m-- $*\033[0m" 1>&2
}
module.exports = app => {
app.command("/stash", async ({ ack }) => {
await ack("ok");
});
};
module.exports = app => {
app.command("/stash", async ({ ack, respond, command }) => {
await ack();
if (command.text) {
await respond(`I heard '${command.text}'`)
} else {
await respond("What?");
}
});
};
const stash = require("../db").namespace("stash");
module.exports = app => {
app.command("/stash", async ({ ack, respond, command }) => {
await ack();
const uniqueId = `${command.team_id}-${command.user_id}`;
if (command.text) {
await stash.set(uniqueId, command.text);
await respond("Your secret is safe with me.");
} else {
const text = (await stash.get(uniqueId)) || "I don't know your secret.";