Skip to content

Instantly share code, notes, and snippets.

lionello / protogen.go
Last active July 5, 2024 02:39
Generate protobuf schema file from a Go type
package main
import (
compose ""
lionello /
Last active June 12, 2024 22:45
Shell script to bulk-transfer repositories from one org to another
#!/usr/bin/env bash
set -e # Exit on error
repos=$(curl -sL \
-H "Accept: application/vnd.github+json" \
lionello / go.mod
Created May 25, 2024 15:05
Simplest Loki query example in Go
go 1.22.3
require v3.0.0
require ( v1.10.0 // indirect v1.5.1 // indirect v1.5.2 // indirect
lionello /
Last active May 2, 2024 17:36
Script to log into AWS with a SAML assertion. Must replace ACCOUNT number etc. before use!
# Copyright 2024 Lionello Lunesu
# Permission is hereby granted, free of charge, to any person obtaining a copy of
# this software and associated documentation files (the “Software”), to deal in the
# Software without restriction, including without limitation the rights to use, copy,
# modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
# and to permit persons to whom the Software is furnished to do so, subject to
# the following conditions:
lionello / extract-image.ts
Created March 11, 2024 23:49
TS file to extract a file from a container image
import * as tar from "tar-stream";
import gunzip from "gunzip-maybe";
import { pipeline } from "stream";
import { promisify } from "util";
const pipelineAsync = promisify(pipeline);
const dockerRegistryUrl = "";
const imageName = "library/ubuntu"; // Replace with your image name
const tag = "latest"; // or the specific tag you want to download
lionello / Dockerfile
Created October 21, 2023 12:18
Dockerfile for krallin/tini
FROM alpine:3 as tini
# The is automatically set by docker buildx
# From
ADD${TINI_VERSION}/tini-static-${TARGETARCH} /tini
ADD${TINI_VERSION}/tini-static-${TARGETARCH}.asc /tini.asc
RUN apk add --no-cache gnupg \
&& gpg --batch --keyserver hkp:// --recv-keys 595E85A6B1B4779EA4DAAEC70B588DFF0527A9B7 \
&& gpg --batch --verify /tini.asc /tini
lionello / jwk.go
Created March 16, 2023 20:48
JWK in Go
package pkg
import (
lionello /
Last active February 11, 2023 23:10
Shell script to wait for a signal
#!/usr/bin/env python
import signal, subprocess, sys
lionello / flake.nix
Created August 30, 2022 17:53
Generic flake.nix for migrating from shell.nix
outputs = { self, nixpkgs, flake-utils }:
let pkgs = nixpkgs.legacyPackages.${system}; in
devShells.default = import ./shell.nix { inherit pkgs; };
lionello / post-merge
Created August 26, 2022 20:38 — forked from sindresorhus/post-merge
git hook to run a command after `git pull` if a specified file was changed.In this example it's used to run `npm install` if package.json changed and `bower install` if `bower.json` changed.Run `chmod +x post-merge` to make it executable then put it into `.git/hooks/`.
#!/usr/bin/env bash
# MIT © Sindre Sorhus -
# git hook to run a command after `git pull` if a specified file was changed
# Run `chmod +x post-merge` to make it executable then put it into `.git/hooks/`.
changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
check_run() {
echo "$changed_files" | grep --quiet "$1" && eval "$2"