Skip to content

Instantly share code, notes, and snippets.

@Frederick888
Frederick888 / zfs-utils-guard.patch
Last active May 10, 2025 12:18
zfs-utils kernel version guard
From da74e58cb74903153c290b4e33c62ce8c301102b Mon Sep 17 00:00:00 2001
From: Frederick Zhang <[email protected]>
Date: Sat, 10 May 2025 21:39:14 +1000
Subject: [PATCH] Add example Pacman hook that guards against incompatible
kernels
Signed-off-by: Frederick Zhang <[email protected]>
---
00-zfs-dkms-guard.hook | 18 ++++++++++++++++++
PKGBUILD | 16 +++++++++++++---
@Frederick888
Frederick888 / Arch Linux `initcpio` hook that additionally unloads NVIDIA modules and exports ZFS pools.md
Last active March 1, 2024 14:45
Arch Linux `initcpio` hook that additionally unloads NVIDIA modules and exports ZFS pools
  1. Put the files below in place (replace _ with /)
  2. Add my-shutdown to /etc/mkinitcpio.conf's HOOKS, after zfs and before filesystems. For example, HOOKS=(base udev autodetect keyboard keymap modconf kms block zfs my-shutdown filesystems).
public interface Functional {
void consume(String value);
String supply();
String operate(String value);
}
@Frederick888
Frederick888 / Counting.java
Created May 11, 2023 03:34
Counting Java
public class Counting {
private int counter;
public int increaseCounter() {
counter = counter + 1;
return counter;
}
}
@Frederick888
Frederick888 / gpghub.sh
Created December 31, 2021 13:31
Import PGP keys in a Git repository from GitHub
#!/usr/bin/env bash
OWNER="$1"
REPO="$2"
declare -A PROCESSED
function import_github_pgp() {
local github_login="$1"
printf 'Importing PGP key of GitHub user %s\n' "$github_login"
@Frederick888
Frederick888 / 1-diff-from-neovim-0.4.3.diff
Created April 26, 2020 15:19
Simplified NeoVim man.vim for GNU Linux
--- /usr/share/nvim/runtime/autoload/man.vim 2020-03-31 21:23:02.000000000 +1100
+++ ./man.vim 2020-04-27 01:04:54.716553901 +1000
@@ -8,31 +8,8 @@
let s:find_arg = '-w'
let s:localfile_arg = v:true " Always use -l if possible. #6683
let s:section_arg = '-s'
-function! s:init_section_flag()
- call system(['env', 'MANPAGER=cat', 'man', s:section_arg, '1', 'man'])
- if v:shell_error
@Frederick888
Frederick888 / 10-snapshot.hook
Last active April 20, 2025 00:31
Simple pacman hook to take ZFS snapshots
[Trigger]
Operation=Install
Operation=Upgrade
Operation=Remove
Type=Package
Target=*
[Action]
When=PreTransaction
Exec=/usr/local/bin/pacman-snapshots.sh
@Frederick888
Frederick888 / control.sh
Last active May 20, 2025 11:30
Bash script to pull latest Docker container, (re)start container if needed, and clean up dangling images
#!/usr/bin/env bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null && pwd )"
IMAGE=
TAG='latest'
CONTAINER=
function printf() {
format="\e[1;31m$1\e[m"
shift
@Frederick888
Frederick888 / #Usage.md
Created January 28, 2020 04:02
Offloading XDG cache home to tmpfs
  1. Configure /tmp as per fstab, adjust size if needed
  2. Copy xdg-cache.service to /etc/systemd/user/xdg-cache.service
  3. Copy xdg-cache.sh to /usr/local/bin/xdg-cache.sh and then chmod +x /usr/local/bin/xdg-cache.sh
  4. Run systemctl --user enable xdg-cache.service as the user that needs this service
@Frederick888
Frederick888 / update_jbrsdk.sh
Last active September 7, 2020 10:48
JetBrains Java SDK Management Scripts
#!/usr/bin/env bash
# shellcheck disable=SC2001
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
OS=$(uname)
case "$OS" in
Linux)
OS="${OS,,}"