Skip to content

Instantly share code, notes, and snippets.

View ssaavedra's full-sized avatar

Santiago Saavedra ssaavedra

View GitHub Profile
#!/bin/bash
# "Repair" VSCode WSLServer script to include genie invocation
# Author: Santiago Saavedra <info@ssaavedra.eu>
# License: Public Domain or CC0
patch_file () {
patch -r- -F0 "$1" <(cat <<EOF
--- /dev/null 2022-02-15 00:14:03.180843900 +0100
+++ $1 2022-03-06 13:07:22.380000000 +0100
@ssaavedra
ssaavedra / diffmatcher.py
Last active July 22, 2021 15:42
DiffMatcher is a tool to check an input against a database of known variants.
'''
DiffMatcher is a tool to check an input against a database of known variants.
For example, to determine (and resort to fuzzy-matching if required) whether
some unsanitized fields of user-input match a preset of known-good entries.
Author: Santiago Saavedra <info@ssaavedra.eu>
SPDX-License-Identifier: CC0-1.0
'''
@ssaavedra
ssaavedra / primevideospeedchanger.user.js
Last active April 9, 2020 01:59
PrimeVideo Speed Changer
// ==UserScript==
// @name PrimeVideo/Netflix Speed Changer
// @namespace http://ssaavedra.eu/
// @version 1.2.3
// @description ALlows changing the playback speed on Primevideo and Netflix
// @author ssaavedra
// @homepageURL https://gitlab.com/ssaavedra.eu/userscripts
// @downloadURL https://gitlab.com/ssaavedra.eu/userscripts/-/raw/master/primevideospeedchanger.user.js
// @updateURL https://gitlab.com/ssaavedra.eu/userscripts/-/raw/master/primevideospeedchanger.user.js
// @match https://www.primevideo.com/*
@ssaavedra
ssaavedra / realboot.xml
Last active April 17, 2019 14:01
Libvirt configuration to boot from a real harddrive with VGA Passthrough on 00:07.0 + 00:07.1 with audio attached to PulseAudio of user id 1000 and support for a PS/2 mouse shared with the host (Use Ctrl_L + Ctrl_R to switch). With looking-glass IVSHM configured (17M is enough for fullhd, but round to nearest power of 2).
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
<name>win10</name>
<uuid>3716c67d-59b9-42f4-8ac4-f0ada39ef48a</uuid>
<memory unit='KiB'>16588800</memory>
<currentMemory unit='KiB'>4194304</currentMemory>
<memoryBacking>
<hugepages/>
</memoryBacking>
<vcpu placement='static'>8</vcpu>
<iothreads>2</iothreads>
@ssaavedra
ssaavedra / pre-commit
Last active September 19, 2018 13:29
Setup a repo pre-commit hook to use scalafmt
#!/bin/sh
# Licensed under CC0 in jurisdictions where this is not directly in the Public Domain
# Authored by Santiago Saavedra (github.com/ssaavedra)
git scalafmt --test || exit 1
# If there are whitespace errors, print the offending file names and fail.
exec git diff-index --check --cached $against --
Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: Code that was considered unreachable by closed-world analysis was
reached
at java.lang.Throwable.<init>(Throwable.java:265)
at java.lang.Error.<init>(Error.java:70)
at com.oracle.svm.core.jdk.UnsupportedFeatureError.<init>(UnsupportedFeatureError.java:31)
at com.oracle.svm.core.jdk.Target_com_oracle_svm_core_util_VMError.unsupportedFeature(VMErrorSubstitutions.java:109)
at com.oracle.svm.core.snippets.SnippetRuntime.unreachedCode(SnippetRuntime.java:199)
at scala.collection.mutable.ResizableArray.swap$(ResizableArray.scala:111)
at scala.collection.mutable.PriorityQueue$ResizableArrayAccess.p_swap(PriorityQueue.scala:66)
at scala.collection.mutable.PriorityQueue.fixUp(PriorityQueue.scala:87)
@ssaavedra
ssaavedra / utils.sh
Created July 26, 2018 18:07
Get latest offset from a Kafka topic
get_latest_offset () {
kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list "$KAFKA_BROKER_LIST" --topic "$1" |cut -d: -f3 | sort | head -1
}

Keybase proof

I hereby claim:

  • I am ssaavedra on github.
  • I am ssaavedra (https://keybase.io/ssaavedra) on keybase.
  • I have a public key whose fingerprint is 7346 F19D 9BB3 A08C 7532 E0E6 92CB A518 CBD9 18D9

To claim this, I am signing this object:

@ssaavedra
ssaavedra / fix-vodafone-router.user.js
Last active March 19, 2018 18:49
Fix Vodafone's router UI to be able to auto-fill the user/password again
// ==UserScript==
// @name Fix dumb "new" Vodafone router page
// @namespace http://192.168.1.1//
// @include /http:\/\/(192\.168|10\.(\d{1,3})|172\.(\d+))\.(\d+).1\/login.html/
// @license https://opensource.org/licenses/MIT
// @grant none
// ==/UserScript==
// Uses a regex so that your router can be configured on any local IP.
@ssaavedra
ssaavedra / create-aws-repo.sh
Created May 10, 2017 12:32
Create an AWS ECR repository and add a policy to it from an already existing repo.
#!/bin/bash
# Author: Santiago Saavedra
# License: CC0
# Usage: $0 --help
POLICY_REPOSITORY=${AWS_DEFAULT_ECR_POLICY_REPOSITORY:-policy-repo}
usage () {
cat <<-EOF | awk 'NR==1 && match($0, /^ +/){n=RLENGTH} {print substr($0, n+1)}'
Usage: $0 <aws-repository-name>