Skip to content

Instantly share code, notes, and snippets.

View cgoldberg's full-sized avatar
🐢
compiling!

Corey Goldberg cgoldberg

🐢
compiling!
View GitHub Profile
@cgoldberg
cgoldberg / download-selenium-server.sh
Last active March 7, 2020 15:14
Download latest Selenium Standalone Server (shell script)
#!/usr/bin/env bash
# Corey Goldberg 2018
#
# download latest release of Selenium Standalone Server
#
# requires:
# * `curl`
# * `xpath` utility from the `XML::XPath` Perl module. On Debian,
# this is provided by the `libxml-xpath-perl` package.
@cgoldberg
cgoldberg / check_root.bash
Last active November 25, 2018 07:56
got root?
# add this to the beginning of a bash script to ensure it can only be run with root access.
if [[ $EUID -ne 0 ]]; then
echo "permission denied."
echo "$(basename $0) must be run as root."
exit 1
fi
@cgoldberg
cgoldberg / sniff.txt
Created October 24, 2017 20:09 — forked from manifestinteractive/sniff.txt
A friendly formatter for curl requests to help with debugging.
\n
============= HOST: ==========\n
\n
local_ip: %{local_ip}\n
local_port: %{local_port}\n
remote_ip: %{remote_ip}\n
remote_port: %{remote_port}\n
\n
======= CONNECTION: ==========\n
\n
@cgoldberg
cgoldberg / install-webdrivers.sh
Last active May 11, 2019 12:00
Selenium - download and install WebDriver binaries for Firefox (geckodriver) and Chrome (chromedriver)
#!/usr/bin/env bash
#
# Installer for WebDrivers
# ------------------------
# - Binary webdrivers are required to drive Firefox and Chrome browsers from Selenium.
# - This script will fetch the 64-bit binaries (geckodriver/chromedriver) for MacOS or Linux.
set -e
@cgoldberg
cgoldberg / geckodriver-install.sh
Last active August 18, 2023 10:20
download and install latest geckodriver for linux or mac (selenium webdriver)
#!/bin/bash
# download and install latest geckodriver for linux or mac.
# required for selenium to drive a firefox browser.
install_dir="/usr/local/bin"
json=$(curl -s https://api.github.com/repos/mozilla/geckodriver/releases/latest)
if [[ $(uname) == "Darwin" ]]; then
url=$(echo "$json" | jq -r '.assets[].browser_download_url | select(contains("macos"))')
elif [[ $(uname) == "Linux" ]]; then
url=$(echo "$json" | jq -r '.assets[].browser_download_url | select(contains("linux64"))')
@cgoldberg
cgoldberg / pldiffs.md
Last active October 15, 2025 12:26
compare .plist changes between 2 git branches

Comparing p-lists (iOS Property List Files)

In OS X and iOS programming frameworks, property list files are used to store information about bundles and applications. Analyzing .plist files can tell you a lot about an application. It is often useful to compare content and view modifications to .plist files to understand what has changed between versions of an application.


  • list paths of .plist files modified between 2 branches
$ git diff --name-only "origin/branch1" "origin/branch2" -- 
@cgoldberg
cgoldberg / selenium-rum.py
Last active April 8, 2018 02:21
selenium-rum
"""
Instructions
************
1. install ubuntu deps:
-----------------------
sudo apt-get python-pip
sudo apt-get install firefox
sudo apt-get install chromium-browser
@cgoldberg
cgoldberg / num_cpu_cores.py
Created November 1, 2015 00:06
Find the number of CPU cores (Linux)
def num_cpu_cores():
with open('/proc/cpuinfo') as f:
return f.read().count('processor')
@cgoldberg
cgoldberg / got_root.py
Created November 1, 2015 00:04
check if the process is running as root (Unix/Linux)
import os
def got_root():
"""check if we are running as root."""
if os.geteuid() == 0:
return True
return False
@cgoldberg
cgoldberg / bounce_services.sh
Created October 5, 2015 16:54
bounce supervisor controlled services
#!/bin/bash
# Bounce services and print start/stop messages to console and /var/log/syslog.
logger -s Restarting all processes controlled by supervisor now...
logger -s $(/usr/bin/supervisorctl restart all)
# Scheduled by system cron to run every hour:
# 0 */1 * * * /deploy/bounce_services.sh