aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorPatrick Spek <p.spek@tyil.nl>2022-05-11 13:30:22 +0200
committerPatrick Spek <p.spek@tyil.nl>2022-05-11 13:30:22 +0200
commit7eac078e1049493d708097af69f6894d609ec6a8 (patch)
tree300b09fea14d8098333892fa166a5f9ac2059d61 /lib
parentca71525e575f809c77d84550a3e8abc100dfb5a4 (diff)
Implement pkg subcommand
Diffstat (limited to 'lib')
-rw-r--r--lib/main.bash2
-rw-r--r--lib/subcommands/pkg.bash16
2 files changed, 18 insertions, 0 deletions
diff --git a/lib/main.bash b/lib/main.bash
index 385773f..cf3e069 100644
--- a/lib/main.bash
+++ b/lib/main.bash
@@ -78,6 +78,7 @@ Usage:
$BASHTARD_NAME add <playbook>
$BASHTARD_NAME del <playbook>
$BASHTARD_NAME init [repository]
+ $BASHTARD_NAME pkg <install|uninstall> <name>
$BASHTARD_NAME ssh <command>
$BASHTARD_NAME sync [playbook]
$BASHTARD_NAME sysinfo
@@ -89,6 +90,7 @@ Perform maintenance on your infra.
Commands:
add Add a configuration playbook to this machine.
init Initialize the $BASHTARD_NAME configuration system.
+ pkg Interface into the pkg abstraction used by $BASHTARD_NAME.
del Remove a configuration playbook from this machine.
ssh Run a given command on all known hosts.
sync Pull latest changes through git, and synchronize all added
diff --git a/lib/subcommands/pkg.bash b/lib/subcommands/pkg.bash
new file mode 100644
index 0000000..ff5e33f
--- /dev/null
+++ b/lib/subcommands/pkg.bash
@@ -0,0 +1,16 @@
+#!/usr/bin/env bash
+
+# SPDX-FileCopyrightText: 2022 Patrick Spek <p.spek@tyil.nl>
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
+subcommand() {
+ local action
+
+ action="$1" ; shift
+
+ for package in "$@"
+ do
+ pkg "$action" "$package"
+ done
+}