summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2012-07-30 01:53:56 +0200
committerDaniel Baumann <daniel@debian.org>2012-07-30 18:19:23 +0200
commit913c6037af2c4a7fb03e6c73f233f96149a735cd (patch)
tree86c1e6703540b765710e2290a7e3a8408ed9a597
parenta48c974c9ca35c0ded39df3ab6ac91c415d08f13 (diff)
downloadvyos-live-build-913c6037af2c4a7fb03e6c73f233f96149a735cd.tar.gz
vyos-live-build-913c6037af2c4a7fb03e6c73f233f96149a735cd.zip
Adding shortcut helper for dctrl-tools.
This 'Packages' shortcut helper can be used for simplified usage of grep-aptavailable from dctrl-tools. Rather than needing to specify the following explicit command: ! grep-aptavail -n -sPackage -FPriority standard in package lists, the following shortcut can be used: ! Packages Priority standard
-rw-r--r--Makefile2
-rwxr-xr-xscripts/build/lb_binary_package-lists9
-rwxr-xr-xscripts/build/lb_chroot_package-lists9
-rwxr-xr-xshare/bin/Packages30
4 files changed, 49 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 578def605..7ac672d58 100644
--- a/Makefile
+++ b/Makefile
@@ -4,7 +4,7 @@ SHELL := sh -e
LANGUAGES = $(shell cd manpages/po && ls)
-SCRIPTS = bin/* frontends/cgi/live-build-cgi frontends/cgi/live-build-cgi.cron functions/* examples/auto/* examples/hooks/* scripts/*.sh scripts/*/* share/hooks/*
+SCRIPTS = bin/* frontends/cgi/live-build-cgi frontends/cgi/live-build-cgi.cron functions/* examples/auto/* examples/hooks/* scripts/*.sh scripts/*/* share/bin/* share/hooks/*
all: build
diff --git a/scripts/build/lb_binary_package-lists b/scripts/build/lb_binary_package-lists
index 74b34e8b8..598baeb3c 100755
--- a/scripts/build/lb_binary_package-lists
+++ b/scripts/build/lb_binary_package-lists
@@ -51,6 +51,13 @@ then
# Installing depends
Install_package
+ if [ -e "${LIVE_BUILD}/share/bin/Packages" ]
+ then
+ cp "${LIVE_BUILD}/share/bin/Packages" chroot/bin
+ else
+ cp /usr/share/live/build/bin/Packages chroot/bin
+ fi
+
mkdir -p chroot/binary.deb/archives/partial
mv chroot/var/lib/dpkg/status chroot/var/lib/dpkg/status.tmp
touch chroot/var/lib/dpkg/status
@@ -121,6 +128,8 @@ then
cd "${OLDPWD}"
+ rm -f chroot/bin/Packages
+
rm -rf chroot/binary.deb
mv chroot/var/lib/dpkg/status.tmp chroot/var/lib/dpkg/status
diff --git a/scripts/build/lb_chroot_package-lists b/scripts/build/lb_chroot_package-lists
index f38fff7b6..55cf9323c 100755
--- a/scripts/build/lb_chroot_package-lists
+++ b/scripts/build/lb_chroot_package-lists
@@ -55,6 +55,13 @@ then
# Installing depends
Install_package
+ if [ -e "${LIVE_BUILD}/share/bin/Packages" ]
+ then
+ cp "${LIVE_BUILD}/share/bin/Packages" chroot/bin
+ else
+ cp /usr/share/live/build/bin/Packages chroot/bin
+ fi
+
for LIST in config/package-lists/*.list \
config/package-lists/*.list.chroot \
config/package-lists/*.list.chroot_${_PASS}
@@ -67,6 +74,8 @@ then
fi
done
+ rm -f chroot/bin/Packages
+
# Removing dctrl-tools again if the user has not installed it
if ! grep -qs dctrl-tools chroot/root/packages.chroot
then
diff --git a/share/bin/Packages b/share/bin/Packages
new file mode 100755
index 000000000..06ce05ed3
--- /dev/null
+++ b/share/bin/Packages
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+## live-build(7) - System Build Scripts
+## Copyright (C) 2006-2012 Daniel Baumann <daniel@debian.org>
+##
+## live-build comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
+## This is free software, and you are welcome to redistribute it
+## under certain conditions; see COPYING for details.
+
+
+set -e
+
+if [ ! -e /usr/bin/grep-aptavail ]
+then
+ echo "E: /usr/bin/grep-aptavail: No such file."
+
+ exit 1
+fi
+
+if [ -z "${@}" ]
+then
+ echo "Usage: $(basename ${0}) FIELD VALUE"
+
+ exit 1
+fi
+
+_FIELD="${1}"
+_VALUE="${2}"
+
+grep-aptavail -n -sPackage -F${_FIELD} ${_VALUE} | sort