From 7e52878f0aaad5256a01581f11338c47d69d5fbb Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Fri, 24 Oct 2025 11:59:28 +0200 Subject: kbuild: move profiles into .config/kbuild MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Instead of inlining shell scripts inside of the `kbuild` one, move them into subdirectories inside of the new $HOME/.config/kbuild directory. Each subdirectory will match a profile (i.e. no more hacky hardcoded values on `kbuild`), and it will contain the relevant install.sh/uninstall.sh files which matter for that profile. This also allows us more flexibility when it comes to GRUB configuration (e.g. picking the right UUID value without having to re-invent the wheel via esoteric new parameters). Signed-off-by: Miquel Sabaté Solà --- .config/kbuild/vf2/uninstall.sh | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 .config/kbuild/vf2/uninstall.sh (limited to '.config/kbuild/vf2/uninstall.sh') diff --git a/.config/kbuild/vf2/uninstall.sh b/.config/kbuild/vf2/uninstall.sh new file mode 100644 index 0000000..4227b52 --- /dev/null +++ b/.config/kbuild/vf2/uninstall.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env bash +# Copyright (C) 2025-Ω Miquel Sabaté Solà +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +set -ex + +if [ "$EUID" -ne 0 ];then + echo "kbuild (error): run this as root." + exit 1 +fi + +if [ ! -f files.txt ]; then + echo "kbuild (error): there must be a 'files.txt' file." + exit 1 +fi + +xargs rm -f < files.txt +rm -rf /usr/lib/modules/$name +rm -rf /boot/dtbs/$name +rm -rf /usr/lib/firmware/$name +rm -f /boot/initrd-$name +rm -f /boot/initrd.img-$name + +if [ -z "$EDITOR" ]; then + EDITOR=vi +fi + +# Edit the configuration file we just produced just in case and update it. +$EDITOR /etc/grub.d/40_custom +grub2-mkconfig -o /boot/grub2/grub.cfg -- cgit v1.2.3