Skip to content

Instantly share code, notes, and snippets.

View skull-squadron's full-sized avatar
💭
*aaS unreleased project in Elixir, Rust, Typescript, Kafka, and k8s

🏴‍☠️ skull-squadron

💭
*aaS unreleased project in Elixir, Rust, Typescript, Kafka, and k8s
  • (stealth)
  • ATX
  • 01:36 (UTC -06:00)
View GitHub Profile
@skull-squadron
skull-squadron / ssh-regen-moduli
Last active April 8, 2024 10:39
Regenerate /etc/ssh/moduli for modern openssh
#!/usr/bin/env bash
set -euo pipefail
# This script supports openssh 8.2+
(( ! UID )) || exec /usr/bin/sudo "$0" "$@"
var=${0//[^a-zA-Z0-9_]/_}
eval [ "\${$var-}" ] || exec /usr/bin/env ${var}=1 /usr/bin/flock -en "$0" "$0" "$@"
bits=${1:-4096}
min_bits=$((bits - 1))
moduli::generate() {
@skull-squadron
skull-squadron / cmdline.txt
Created April 8, 2024 05:17
Kernel config diff between CentOS 9-stream (5.14.0-430.el9.x86_64) and Oracle 9.3 UEK (5.15.0-204.147.6.3.el9uek.x86_64)
(HOST1={{hostname1}} HOST2={{hostname2}}; diff -u <(ssh "$HOST1" 'sed "/CONFIG_/!d;s/^# //" /boot/config-$(uname -r) | sort') <(ssh "$HOST2" 'sed "/CONFIG_/!d;s/^# //" /boot/config-$(uname -r) | sort'))
@skull-squadron
skull-squadron / libc-bits.h
Created March 23, 2024 22:25
Include all C headers for C89, C99, C11, C17, and C23 for programming contests and such
#ifndef LIBC_BITS_H
#define LIBC_BITS_H
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
@skull-squadron
skull-squadron / RESOLUTION.md
Last active March 14, 2024 20:24
node v18 refuses to compile with Apple Clang/LLVM >= 16
  1. brew edit node@18
  2. Insert ENV["CXXFLAGS"] = "-Wno-enum-constexpr-conversion" after ENV["PYTHON"] = ...
  3. brew install node@18
  4. Profit!

Notes:

  • i. Don't bother reporting this to homebrew because it has severely unprofessional contributors.
  • ii. Clang/LLVM people insist on breaking all software and systems for idealological purity.
  • iii. Node people refuse to take ownership of this.
@skull-squadron
skull-squadron / 000_README.md
Created March 14, 2024 08:48
macOS Ventura/Sonoma auto Ethernet/Wi-Fi switching

Auto Ethernet/Wi-Fi switching script for macOS

! CRITICAL PROBLEM ! Currently broken because ...../airport -z no longer functions and the replacement is uncertain and nonexistent for now

Installation

  1. Add local.auto-switch-wifi-ethernet.zsh to /usr/local/sbin
  2. Add local.auto-switch-wifi-ethernet.plist to /Library/LaunchDaemons
  3. Create /usr/local/.home.wifi.ssid containing the Wi-Fi network name (SSID) to try to connect to when Ethernet is no longer internet reachable
  4. Start it permanently sudo launchctl unload -w /Library/LaunchDaemons/local.auto-switch-wifi-ethernet.plist
@skull-squadron
skull-squadron / README.md
Last active March 13, 2024 13:36
How to install curses 1.4.x gem on modern macOS

0. brew install ncurses ruby

1. gem install curses -- --use-system-libraries --with-ncurses-dir="$(brew --prefix ncurses)" --with-cflags='-Wno-error=incompatible-pointer-types'

This is because the Ruby maintainers are hipsters unable to work effectively with reality and Clang/LLVM breaking everyone's shit.

@skull-squadron
skull-squadron / main.cpp
Created March 8, 2024 08:41
C++ specialization of stack adapter for forward_list
// Specialize stack to work with forward_list (STL singly-linked lists)
// Notes:
// - This is a proof-of-concept as an exercise for template specialization. Don't use in production!
// - Not cache-efficient.
// - Use stack<T, vector<T>> most of the time instead.
// Output
// ======
// t:
#include <stdbool.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
typedef uint64_t n;
n sqrt_n(n x) {
if (x <= 1) return x;
@skull-squadron
skull-squadron / PAGEDEMO.C
Created November 30, 2023 02:18
Mode X 320x400 256 color VGA mode
/* */
/* PAGEDEMO.C */
/* */
/* There is a nonstandard 320x400 256 color VGA mode which has two pages. */
/* This program demonstrates its use by setting up the mode, drawing to */
/* the two pages, and flipping the pages for instanteous appearance of */
/* of the graphics. */
/* */
/* A scanline function is included which shows how to take advantage of */
/* memory plane masking to draw four pixels simutaneously. */
@skull-squadron
skull-squadron / 0026-glibc-2.33.patch
Created November 28, 2023 23:22
checkinstall glibc 2.33+ fix
diff --git a/installwatch/installwatch.c b/installwatch/installwatch.c
index 15cb75c..77189dc 100644
--- a/installwatch/installwatch.c
+++ b/installwatch/installwatch.c
@@ -157,6 +157,20 @@ static int (*true_unlinkat)(int, const char *, int);
#define inline
#endif
+#ifndef _STAT_VER
+ #if defined (__aarch64__)