#!/bin/sh
# TazPkg - Tiny autonomous zone packages manager, hg.slitaz.org/tazpkg
# repack-config - TazPkg module
# Create SliTaz package archive from configuration files

. /lib/libtaz.sh
. /usr/libexec/tazpkg/getenv
TMP_DIR="$(mktemp -d)"
cd "$TMP_DIR"
CONFIG_VERSION='1.1'
mkdir "config-$CONFIG_VERSION"
cd "config-$CONFIG_VERSION"
for i in $INSTALLED/*/volatile.cpio.gz; do
zcat "$i" | cpio -t --quiet
done > files.list
mkdir fs
cd fs
( cd / ; cpio -o -H newc --quiet ) < ../files.list | cpio -idm --quiet > /dev/null
mkdir -p etc/tazlito boot
awk -F$'\t' '{print $1"-"$2}' "$PKGS_DB/installed.info"> etc/tazlito/config-packages.list
cat /proc/cmdline > boot/cmdline
cd ..
echo "etc/tazlito/config-packages.list">> files.list
echo "boot/cmdline">> files.list
cat > receipt <<EOT
PACKAGE="config"
VERSION="$CONFIG_VERSION"
CATEGORY="base-system"
SHORT_DESC="$(_n 'User configuration backup on date %s' "$(date +"%x %X")")"
DEPENDS="$(ls $INSTALLED)"
EOT
cd ..
tazpkg pack "config-$CONFIG_VERSION"
cp "config-$CONFIG_VERSION.tazpkg" "$TOP_DIR"
cd "$TOP_DIR"
rm -rf "$TMP_DIR"
