Skip to content

Instantly share code, notes, and snippets.

View cmsj's full-sized avatar
🏠
Working from home

Chris Jones cmsj

🏠
Working from home
View GitHub Profile
@cmsj
cmsj / lol.py
Last active April 14, 2018 08:20
#!/usr/bin/env python
"""
Enforce the usage of Hammerspoon's Lua stack guarding macros
"""
from __future__ import print_function
import sys
from clang.cindex import Config
from clang.cindex import Index
@cmsj
cmsj / homegnu.sh
Last active April 28, 2019 13:38
#!/bin/echo Don't execute this script directly, source it into your shell.
# This script will attempt to make your macOS system behave more like GNU for shell scripts
# by diverting as many commands as possible, to the GNU versions, provided by Homebrew
#
# For most Homebrew tools, their presence in /usr/local/bin and that being in your $PATH
# means you can use them as-is, but some tools appear with different names because macOS
# already has such a tool (e.g. find(1)). These tools generally also have a `gnubin` path
# which we can use to make them higher priority than the macOS equivalents.
#
# To use this:
@cmsj
cmsj / tangent.lua
Last active December 23, 2017 23:06
hs.console.clearConsole()
local hubMessage = {
["INITIATE_COMMS"] = 0x01,
["PARAMETER_CHANGE"] = 0x02,
["PARAMETER_RESET"] = 0x03,
["PARAMETER_VALUE_REQUEST"] = 0x04,
["MENU_CHANGE"] = 0x05,
["MENU_RESET"] = 0x06,
["MENU_STRING_REQUEST"] = 0x07,
script = [[
tell application "Google Chrome"
set currentURL to URL of active tab of first window
end tell
return currentURL
]]
hs.applescript(script)
- (void)fill:(int)button withColor:(NSColor*)fillColor {
int imageSideLength = 72;
NSImage *image = [[NSImage alloc] initWithSize:NSMakeSize(imageSideLength, imageSideLength)];
[image lockFocus];
[fillColor drawSwatchInRect:NSMakeRect(0, 0, imageSideLength, imageSideLength)];
[image unlockFocus];
//NSData *imageTiff = image.TIFFRepresentation;
//NSBitmapImageRep *imageRep = [NSBitmapImageRep imageRepWithData:imageTiff];
//NSData *data = [imageRep representationUsingType:NSBitmapImageFileTypeBMP properties:@{}];
@cmsj
cmsj / iOS-File-System-Extraction.md
Created July 31, 2017 12:04
Guide to extract the root file system and decompress the kernel cache for iOS.

iOS File System Extraction

For iOS 10 and Up

Starting with iOS 10.0 Apple decrypted the file system and kernel cache. All you have to do is download an IPSW, change the extension to .zip, and unarchive it. The largest size disk image inside the unarchived zip will be the root file system. Simply mount it to see its contents.

Links to download all iOS IPSWs.

For iOS 9 and Below

Originally from /u/RowRocka on Reddit. Gently edited for clarity.

Links to download all iOS OTA ZIPs.

{
"global": {
"check_for_updates_on_startup": true,
"show_in_menu_bar": false,
"show_profile_name_in_menu_bar": false
},
"profiles": [
{
"complex_modifications": {
"rules": [
lastApp = nil
function launchFocusOrSwitchBack(appName)
-- This function will launch appName if it's not running, focus
-- it if it is running, or if it's already focused, switch back
-- to whatever the last focused App was
-- (The Pro version of this would use hs.windowfilter to track
-- window focus events, but for now we'll just assume that this
-- is the only way apps will be switched)
local currentApp = hs.application.frontmostApplication()
@cmsj
cmsj / protect.py
Created January 9, 2017 11:04 — forked from beekhof/protect.py
#!/usr/bin/env python
from datetime import datetime
import subprocess
import getopt
import sys
import os
import re
results={}
" Be iMproved
set nocompatible
filetype off
set rtp+=~/.vim/bundle/vundle
call vundle#rc()
" Bundles
Bundle 'gmarik/vundle'
Bundle 'ctrlpvim/ctrlp.vim'