aboutsummaryrefslogtreecommitdiff
path: root/utils/guix
blob: bbfb8e59730f8353b762d55701e82f031c46245c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# Functions used for interactive installation of new changes to running system
# vim: ft=sh

guix_install() {
	local installed
	installed="$(guix package --list-installed)"
	local -a toinstall
	for pkg in "$@"; do
		if awk -v ec=0 -v "PKG=$pkg" '$1 == PKG { ec = 1; } END { exit ec; }' <<<"$installed"; then
			toinstall+=("$pkg")
		fi
	done
	if [[ "${#toinstall[@]}" -gt 0 ]]; then
		guix install "${toinstall[@]}"
	fi
}