Skip to content

Instantly share code, notes, and snippets.

View sublimino's full-sized avatar
:shipit:
Investigating the Unexplainable

Andrew Martin sublimino

:shipit:
Investigating the Unexplainable
View GitHub Profile
@sublimino
sublimino / polyglot.cmd
Created March 5, 2018 09:01 — forked from jdarpinian/C and shell polyglot.cmd
A polyglot file which is simultaneously valid in C, Unix shell, and Windows batch. Builds and runs itself on Windows, Linux, and Mac.
#if 0 // 2>NUL & GOTO :startbatch
COMPILER_OPTIONS="-g -Wall -Wextra --std=c99 -O1";THIS_FILE="$(cd "$(dirname "$0")"; pwd -P)/$(basename "$0")";OUT_FILE="/tmp/build-cache/$THIS_FILE";mkdir -p "$(dirname "$OUT_FILE")";test "$THIS_FILE" -ot "$OUT_FILE" || $(which clang || which gcc) $COMPILER_OPTIONS -xc "$THIS_FILE" -o "$OUT_FILE" || exit;exec "$OUT_FILE" "$@"
:startbatch
@echo off
setlocal enableextensions enabledelayedexpansion
md %TEMP%%~p0 2>NUL
rem Use xcopy to test if this file is newer than the cached executable.
for /f %%i in ('xcopy %0 %TEMP%%~pnx0.exe /D /Y /Q') do set copied=%%i
if "%copied:~0,1%" neq "0" (
rem Search for Visual Studio env vars. These are set globally if VS <2017 is installed.
@sublimino
sublimino / docker_cheat.md
Last active January 23, 2022 14:50 — forked from wsargent/docker_cheat.md
Docker cheat sheet

Docker Cheat Sheet

Why

Why Should I Care (For Developers)

"Docker interests me because it allows simple environment isolation and repeatability. I can create a run-time environment once, package it up, then run it again on any other machine. Furthermore, everything that runs in that environment is isolated from the underlying host (much like a virtual machine). And best of all, everything is fast and simple."

TL;DR, I just want a dev environment