Skip to content

Instantly share code, notes, and snippets.

@rocodes
rocodes / README.md
Created October 19, 2026 17:51
Comparison Tables from .csv

Comparison Table

A Comparison Table allows for showing binary/ternary/quaternary cell data ("Yes, No, Partial, Undefined") for a flexible number of rows and columns.

Data lives in CSV format, with Y, N, P (partial) being recognized values and anything else being interpreted as undefined.

Name,Likes Cheese,Likes Coffee,Likes Vegetables
Alice,Y,N,P
Bob,N,Y,Z
Carol,P,Z,N
@lsd-cat
lsd-cat / qubes-proxmox.md
Last active September 17, 2026 16:27
Qubes in Proxmox

Qubes OS 4.3.1 on Proxmox (nested KVM)

Host: Proxmox 9, AMD Zen4, kvm_amd nested=1.

Steps

  1. Download Qubes-R4.3.1-x86_64.iso to /var/lib/vz/template/iso.
  2. Create the VM:
    • q35 machine
    • SeaBIOS
@thesamesam
thesamesam / xz-backdoor.md
Last active November 8, 2026 20:29
xz-utils backdoor situation (CVE-2024-3094)

FAQ on the xz-utils backdoor (CVE-2024-3094)

This is a living document. Everything in this document is made in good faith of being accurate, but like I just said; we don't yet know everything about what's going on.

Update: I've disabled comments as of 2025-01-26 to avoid everyone having notifications for something a year on if someone wants to suggest a correction. Folks are free to email to suggest corrections still, of course.

Background

@rocodes
rocodes / veracrypt_instructions.md
Last active January 18, 2024 17:40
veracrypt setup

VeraCrypt setup/usage

(These instructions are for QA testing/evaluation purposes only)

To provision a veracrypt drive

  • Download VeraCrypt CLI from https://www.veracrypt.fr/
    • Verify signatures before installing any software. From their site, Veracrypt's PGP key: ID=0x680D16DE, Fingerprint=5069A233D55A0EEB174A5FC3821ACD02680D16DE
    • On debian-based systems, apt-get install libccid pcscd to install VeraCrypt's dependencies. (apt --fix-broken install to resolve dependency issues).
    • Install VeraCrypt or VeraCrypt CLI deb using dpkg. (These instructions will refer to veracrypt cli on Linux. For GUI instructions or Windows CLI instructions, see https://www.veracrypt.fr/en/Documentation.html).
  • Insert USB, attach it, and note its device indentifier (eg /dev/sda)
  • To create a VeraCrypt volume on the CLI, type veracrypt -t -c and follow the prompts. The VeraCrypt documentation will guide you through some of the options; if unsure, it's generally best to use the defaults they provide. Read
@hwayne
hwayne / Intro.md
Last active August 24, 2024 10:42
Securedrop TLA+ specification review

People who take my TLA+ Class get a free specification review. Cory Myers asked for a review of his Reply.tla spec, reproduced from the PR below, and has graciously agreed to let me make it public. The review itself is here.

Note this is a "light" review: I'm looking for general TLA+ antipatterns and techniques that don't require me to deeply understand the problem domain. This represents about an hour of review.

@eaon
eaon / sdkv.py
Last active February 1, 2023 19:39
"""Extension responsible for VM readable hierarchical key value stores"""
import qubes.ext
def _sdkv_get_key(feature):
branch = "sdkv."
return feature[len(branch):] if feature.startswith(branch) else None
@conorsch
conorsch / vidchat.sh
Created November 2, 2021 22:09
Utility script for Qubes OS, to prepare vidchat VMs.
#!/bin/bash
# Utility script for Qubes OS, to prepare vidchat VMs.
# Handles attaching web & mic, also raises scheduling priority
# to ensure that the vidchat VM stays snappy (reduces jitter).
set -eu -o pipefail
# Default to vidchat, but support overriding
default_vm="${VIDCHAT_VM=vidchat}"
target_vm="${1:-$default_vm}"
#!/usr/bin/env python3
# Utility script to copy SecureDrop staging VM connection info
# from a "securedrop" repo to a "securedrop-workstation" repo,
# formatted for use in securedrop-workstation provisioning.
# The CWD where this script is run should contain:
#
# * config.json - which will has its "hidserv.hostname" and "hidserv.key" overridden
# * sd-journalist.sec - containing the private key whose pubkey is on SD Application Server
#
# Also make sure the fingerprint is correct (staging by default is
@woswos
woswos / tor-browser-selenium-wire.py
Last active November 23, 2024 02:09
This script creates a proxy server between the Tor Browser and Tor to capture requests/responses, using the seleniumwire library. You can access and modify the HTTP headers that are being sent/received, including the onion services. Note: You need to have Tor installed and running on the localhost while running this script.
import os
from seleniumwire import webdriver
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
# Uncomment these if you need additional information for debugging
#import logging
#logging.basicConfig(level=logging.DEBUG)
# The location of the Tor Browser bundle
@tatianamac
tatianamac / tatiana-mac-speaker-rider.md
Last active July 13, 2026 18:43
Tatiana Mac's Speaker Rider

Speaker Rider

by Tatiana Mac

Last updated 14 April 2021

What is a speaker rider?

As speaking comes with immense privilege, I have crafted a speaker rider to set expectations and boundaries around my engagement. I am grateful to all the conference organisers who have brilliantly hosted me. I would love to continue to exercise this privilege to speak at conferences, and use this privilege to make the landscape more accessible and beneficial to tech's most historically excluded and marginalised communities.

Considerations

😫 I provide a lot of explanations for those of you who never had to consider these things. Most thoughtful conferences I've attended check most of these boxes intrinsically, particularly when conference runners are experienced speakers. They get it.