Skip to content

Instantly share code, notes, and snippets.

View Fleshgrinder's full-sized avatar

Richard Fussenegger Fleshgrinder

View GitHub Profile
Fleshgrinder / ghpr
Last active September 30, 2022 07:59
#!/usr/bin/env bash
git push -u || exit 1
gh pr create --assignee @me "$@" || exit 2
gh pr merge --auto --squash || gh pr merge --auto
Fleshgrinder /
Last active October 6, 2022 14:45
Deletes a GitHub Workflow by deleting all its Runs.
#!/usr/bin/env bash
set -Eeuo pipefail
# There is no button in the interface of GitHub (and as it seems also no API) with which workflows can be deleted.
# They are eventually removed automatically, but in case you want to clean up your Actions UI it is sometimes nice
# to have the possibility to get rid of workflows that are not required anymore. This interactive script allows you
# to achieve exactly that by deleting each individual run of a workflow, after which GitHub deletes the workflow.
Fleshgrinder / settings.gradle.kts
Created April 2, 2021 14:04
Simple Version Management for Gradle
gradle.projectsLoaded {
val versions = java.util.Properties().apply {
} as Map<String, String>
allprojects {
// We export the versions so that our tasks can access them
// programmatically as well if required.
extra["versions"] = versions
Fleshgrinder / build.gradle.kts
Last active March 29, 2021 08:32
Disallow transitive JUnit 4 and JUnit 5 Vintage dependencies in all Gradle configurations.
configurations.all {
// If this configuration supports transitive dependencies then we
// exclude any transitive JUnit 4 dependencies from all dependencies
// that are declared in this configuration. This means that users have
// to define an explicit dependency on JUnit 4 if they want to use it.
if (isTransitive) {
withDependencies {
forEach {
(it as? ExternalModuleDependency)
?.takeIf { != "org.junit.vintage" }
Fleshgrinder / rmfr.bat
Created December 6, 2020 14:28
Fast recursive directory deletion in Windows
ECHO Delete Folder: %CD%?
CD /
Fleshgrinder /
Created August 28, 2020 17:31
Load Zulu JDKs into jEnv
#!/usr/bin/env bash
set -Eeuo pipefail
if ! command -v jenv &>/dev/null; then
echo 'Could not find jenv in your PATH, make sure it is installed correctly and in your PATH.' >&2
exit 1
readonly JENV_HOME=${JENV_HOME:-"$HOME/.jenv"}
Fleshgrinder /
Created August 28, 2020 16:50
Install Azul Zulu JDKs on Ubuntu
#!/usr/bin/env bash
set -Eeuo pipefail
if ((EUID != 0)); then
echo 'You need superuser privileges (e.g. sudo) to run this script' >&2
exit 1
apt-key adv --keyserver hkp:// --recv-keys 0xB1998361219BD9C9
apt-add-repository 'deb stable main'
Fleshgrinder / jenv
Last active June 19, 2019 20:22
How to install jEnv on a Mac with Maven and Gradle wrapper support.
#!/usr/bin/env bash
set -Eeuo pipefail
brew install gradle jenv mvn
mkdir -p ~/bin
curl -Lo ~/bin/gradle ''
chmod +x ~/bin/gradle
Fleshgrinder / mvn
Last active March 18, 2020 11:49
Script to execute Maven wrapper with jEnv and fallback to global Maven installation.
#!/usr/bin/env bash
set -Eeuo pipefail
JAVA_HOME=$(jenv javahome)
export JAVA_HOME
if [[ -f mvnw ]]; then
exec ./mvnw "$@"
readonly project_dir=$PWD

Keybase proof

I hereby claim:

  • I am Fleshgrinder on github.
  • I am fleshgrinder ( on keybase.
  • I have a public key whose fingerprint is 07DC 4CF5 EF0B 27D9 A311 9EA5 A5A2 6F7B 85A4 A347

To claim this, I am signing this object: