Skip to content

Instantly share code, notes, and snippets.

@ishad0w
ishad0w / README.md
Last active June 25, 2025 01:08
Debian 12 on Oracle Cloud (Free Tier) - (AMD64/ARM64)

Requirements:

⚠️ Only FRESH and CLEAN instances are supported. Ubuntu 22.04 (Minimal) images ONLY ⚠️

⚠️ Also you NEED to temporarily open the connection to the 1022 port in Security List / Ingress Rules for your VCN ⚠️

⚠️ After transformation YOU get a clean Debian 12 instance. All other data will be lost. ⚠️

The tmpfs partition is limited to 700m for x86_64 (free tier) compatibility.

This guide has been moved to my blog

Old post (not updated!)Most Switch communications are over TLS - this includes NEX and Eagle communications (for Nintendo Switch Online)* as well as other servers such as BAAS (friends/status) and NPNS (notifications)

*NPLN, the new Switch online servers that Monster Hunter Rise demo used, cannot be dumped with Charles currently as it doesn't support gRPC - use grpc-dump to dump these communications - the gPRC section will explain this better.

@philhartung
philhartung / dante-aes67-relay.js
Last active March 27, 2025 22:47
Relay Dante multicast to AES67. This assumes the AES67 device is synced to the same PTP master, as no PTP timestamping is done (timestamp from Dante is copied to AES67 RTP packet)
const dgram = require('dgram');
const client = dgram.createSocket({ type: 'udp4', reuseAddr: true });
const sdp = require('./sdp');
//config
const addr = '10.10.1.100';
const danteMulticast = '239.255.220.221';
const aes67Multicast = '239.69.1.122';
const samplerate = 48000;
const channels = 2;
@pepijnolivier
pepijnolivier / NearestValue.php
Created June 20, 2017 08:56
Finds the 'nearest value' of a needle in a SORTED numeric array (ascending). Via https://stackoverflow.com/a/22375510/237739
<?php
/**
* Class NearestValue
* Finds the 'nearest value' of a needle in a SORTED numeric array (ascending)
* Via https://stackoverflow.com/a/22375510/237739
*
* Usage:
* $array = [1000,2000,3000,4000,5000];
* $needle = 1337;
@vermorel
vermorel / Half.cs
Last active June 4, 2025 14:25
C# Half-precision data type
/// ================ Half.cs ====================
/// The code is free to use for any reason without any restrictions.
/// Ladislav Lang (2009), Joannes Vermorel (2017)
using System;
using System.Diagnostics;
using System.Globalization;
namespace SystemHalf
{
@mattdesl
mattdesl / IceMaterial.js
Last active May 17, 2024 09:48
fast subsurface scattering in ThreeJS PBR material — see "TRANSLUCENCY" in the frag shader
const glslify = require('glslify');
const path = require('path');
const assign = require('object-assign');
const defined = require('defined');
// This is the original source, we will copy + paste it for our own GLSL
// const vertexShader = THREE.ShaderChunk.meshphysical_vert;
// const fragmentShader = THREE.ShaderChunk.meshphysical_frag;
// Our custom shaders
@Rhomboid
Rhomboid / mersenne_predict.py
Last active July 30, 2024 00:24
Predict output of Mersenne Twister after seeing 624 values
#!/usr/bin/env python
#
# Mersenne Twister predictor
#
# Feed this program the output of any 32-bit MT19937 Mersenne Twister and
# after seeing 624 values it will correctly predict the rest.
#
# The values may come from any point in the sequence -- the program does not
# need to see the first 624 values, just *any* 624 consecutive values. The
# seed used is also irrelevant, and it will work even if the generator was
@Hendy
Hendy / DeleteAllVersions.sql
Last active October 28, 2020 10:10
Umbraco - delete version history for all content
-- Create a temporary table for all documents which are published and not in the recycle bin
CREATE TABLE #Nodes (id int)
-- Delete all rows if the table exists before
TRUNCATE TABLE #Nodes
-- Insert all nodeIds from all documents which are published and not in the recycle bin
INSERT INTO #Nodes
SELECT N.id
FROM umbracoNode N
INNER JOIN cmsDocument D ON N.ID = D.NodeId
anonymous
anonymous / setup_kiosk.sh
Created November 6, 2014 17:17
create a kiosk user
#!/bin/bash
# This script
# - creates a user (named below)
# - sets up a union (aufs) filesystem on top of the users immutable home
# - creates a cleanup script (/usr/local/bin/cleanup.sh) that empties the aufs
# layer on login/logout/boot
# - replaces the lightdm config
# - replaces rc.local to run the script
#
@nojhan
nojhan / test.gdbinit
Created November 5, 2014 16:48
Manipulate the output of GDB with a python function
# We want to be able to manipulate the output of GDB with a python function.
#######################################################################
# Example 1: Defining the hook as a python function that would gdb.execute the same command
# Problem: The command is executed twice and we can't access args in the hook.
#######################################################################
python