diff options
author | Leah Rowe <leah@libreboot.org> | 2024-12-30 21:53:55 +0000 |
---|---|---|
committer | Leah Rowe <leah@libreboot.org> | 2024-12-30 21:53:55 +0000 |
commit | d3a732a64db0f40a90648106436097373225d00a (patch) | |
tree | 6a7a97530eb96681dc22cd2bdf882ef015ca2794 | |
parent | 466ada423ddabacd6d7c8488b32ca1812f134033 (diff) |
lib.sh dependencies: support --reinstall argument
./mk dependencies debian --reinstall
Add --reinstall and it'll do:
apt-get install --reinstall
This can be useful when updating from a stable release
to a testing release. The variable, "reinstall" can be
configured for other distros, but it's currently only
configured for Debian-based distros.
Also, it can be anything. For example, you could add -y;
however, a 4th argument will not be accepted. For example,
you cannot do:
./mk dependencies debian --reinstall -y
If you do this, it'll only see --reinstall; similarly, if
you did this command:
./mk dependencies debian -y --reinstall
then -y would be passed, but not --reinstall. This is an
intentional design decision, in case you accidentally pasted
or subshelled something that outputted something undesirable,
to prevent possible abuse.
Signed-off-by: Leah Rowe <leah@libreboot.org>
-rwxr-xr-x | config/dependencies/debian | 2 | ||||
-rwxr-xr-x | config/dependencies/trisquel | 2 | ||||
-rwxr-xr-x | config/dependencies/ubuntu2004 | 2 | ||||
-rwxr-xr-x | config/dependencies/ubuntu2404 | 2 | ||||
-rw-r--r-- | include/lib.sh | 4 |
5 files changed, 7 insertions, 5 deletions
diff --git a/config/dependencies/debian b/config/dependencies/debian index 94ff104c..48dab1c9 100755 --- a/config/dependencies/debian +++ b/config/dependencies/debian @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-3.0-or-later -pkg_add="apt-get install" +pkg_add="apt-get install $reinstall" pkglist=" \ acpica-tools autoconf autogen automake autopoint autotools-dev bc \ binutils-arm-none-eabi bison build-essential cmake curl device-tree-compiler \ diff --git a/config/dependencies/trisquel b/config/dependencies/trisquel index e8110260..5575cd38 100755 --- a/config/dependencies/trisquel +++ b/config/dependencies/trisquel @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-3.0-or-later -pkg_add="apt-get install" +pkg_add="apt-get install $reinstall" pkglist=" \ autoconf autogen automake autopoint autotools-dev bc binutils-arm-none-eabi \ bison build-essential cmake curl device-tree-compiler doxygen e2fsprogs efitools \ diff --git a/config/dependencies/ubuntu2004 b/config/dependencies/ubuntu2004 index d22cafdd..de4e3449 100755 --- a/config/dependencies/ubuntu2004 +++ b/config/dependencies/ubuntu2004 @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-3.0-or-later -pkg_add="apt-get install" +pkg_add="apt-get install $reinstall" pkglist=" \ autoconf autogen automake autopoint autotools-dev bc binutils-arm-none-eabi \ bison build-essential cmake curl device-tree-compiler doxygen e2fsprogs efitools \ diff --git a/config/dependencies/ubuntu2404 b/config/dependencies/ubuntu2404 index cb44fbf5..4d9add19 100755 --- a/config/dependencies/ubuntu2404 +++ b/config/dependencies/ubuntu2404 @@ -1,6 +1,6 @@ # SPDX-License-Identifier: GPL-3.0-or-later -pkg_add="apt-get install" +pkg_add="apt-get install $reinstall" pkglist=" \ autoconf autogen automake autopoint autotools-dev bc binutils-arm-none-eabi \ bison build-essential cmake curl device-tree-compiler doxygen e2fsprogs efitools \ diff --git a/include/lib.sh b/include/lib.sh index 2c86e37d..4911c34f 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -45,7 +45,7 @@ chkvars() } eval `setvars "" _nogit board xbmk_parent versiondate projectsite projectname \ - aur_notice configdir datadir version relname` + aur_notice configdir datadir version relname reinstall` for fv in projectname projectsite version versiondate; do eval "[ ! -f "$fv" ] || read -r $fv < \"$fv\" || :" @@ -72,6 +72,8 @@ e() install_packages() { [ $# -lt 2 ] && $err "fewer than two arguments" + [ $# -gt 2 ] && reinstall="$3" + eval `setcfg "config/dependencies/$2"` $pkg_add $pkglist || $err "Cannot install packages" |