Skip to content

Instantly share code, notes, and snippets.

View jessestricker's full-sized avatar
:shipit:
do it

Jesse Stricker jessestricker

:shipit:
do it
  • 09:32 (UTC +02:00)
View GitHub Profile
[CmdletBinding()]
param (
[Parameter(Mandatory)]
[string] $Path,
[Parameter(Mandatory)]
[string] $Hash,
[ValidateSet("SHA1", "SHA256", "SHA512")]
[string] $Algorithm = "SHA256"
@jessestricker
jessestricker / color.go
Created September 21, 2022 17:50
Hexe Color Model
package hexe
import (
"math"
hsluv "github.com/hsluv/hsluv-go"
)
// Color defines an 8-bit packed color value in the HSLuv color space.
type Color uint8
@jessestricker
jessestricker / README.md
Last active August 7, 2022 23:38
A collection of reusable bash code.

bashlib

A collection of reusable bash code.

  • log: logging library
@jessestricker
jessestricker / splash.bash
Last active August 3, 2022 16:38
Get a Random Wallpaper from Unsplash!
#! /usr/bin/env bash
set -e -u -o pipefail
# set options
COLLECTION_ID='317099' # Unsplash Editorial (aka Picture of the Day)
# set constants
IMG_RESOLUTION=$(xrandr --current | grep '\*' | awk '{print $1}' | sort | tail -n 1)
IMG_REMOTE_URI="https://source.unsplash.com/collection/${COLLECTION_ID}/${IMG_RESOLUTION}"
@jessestricker
jessestricker / greasemonkey_cppreference_setCppStandard.js
Created January 24, 2022 15:26
Greasemonkey Userscript to set the C++ standard on cppreference.com
// ==UserScript==
// @name Set C++ standard on cppreference.com
// @match https://en.cppreference.com/w/cpp/*
// @icon https://en.cppreference.com/favicon.ico
// ==/UserScript==
const DESIRED_CPP_STANDARD = "C++20";
function changeCppStandard(elem) {
// find option labeled with DESIRED_CPP_STANDARD
@jessestricker
jessestricker / do_purge.sh
Last active October 22, 2020 00:01
List and interactively purge all non-important APT packages.
#!/bin/bash
pkgs=$(./list_purgable.py)
for pkg in $pkgs; do
echo "$(tput setaf 6)purging $pkg$(tput sgr0)"
sudo apt purge "$pkg" || sudo apt-mark manual "$pkg"
done
@jessestricker
jessestricker / llvm-toolchain.cmake
Created May 23, 2020 01:02
CMake Toolchain File for LLVM, using Clang, libc++, lld and LTO
set(flags "-flto")
set(c_flags "")
set(cxx_flags "-stdlib=libc++")
set(link_flags "-fuse-ld=lld")
set(CMAKE_C_COMPILER clang)
set(CMAKE_CXX_COMPILER clang++)
set(CMAKE_C_FLAGS_INIT "${c_flags} ${flags}")
set(CMAKE_CXX_FLAGS_INIT "${cxx_flags} ${flags}")
set(CMAKE_EXE_LINKER_FLAGS_INIT "${link_flags}")
@jessestricker
jessestricker / .clang-format
Last active February 8, 2020 15:21
Code Style for C and C++
BasedOnStyle: WebKit
Language: Cpp
Standard: Cpp11
UseTab: Never
ColumnLimit: 120
AlignEscapedNewlines: Left
NamespaceIndentation: All
@jessestricker
jessestricker / print_int.c
Created October 30, 2017 20:14
GSP: Print integer values with a specific scale
#include <stdint.h>
#include <stdio.h>
void print_int(const int64_t v) {
const bool neg = v < 0;
uint64_t pv = neg ? -v : v;
// convert into digit characters
static const size_t DIGITS_LENGTH = 19;
char digits[DIGITS_LENGTH];