Fix info deps + add UPDATE_REMOVE + move to /usr/bin

This commit is contained in:
zawz 2020-07-02 10:27:48 +02:00
parent b8dac99280
commit b471059972
5 changed files with 23 additions and 15 deletions

View file

@ -23,7 +23,7 @@ ssh "$SSH_ADDRESS" mkdir -p "$PKG_PATH" || exit $?
scp .config server_scripts/* "$SSH_ADDRESS":~/ || exit $?
PKG=zpkg
DEST=/usr/local/bin
DEST=/usr/bin
BASHDEST=/etc/bash_completion.d
tmpdir="/tmp/zpkg$(random_string 5)"
fullpath="$tmpdir/$PKG/ROOT"

View file

@ -66,10 +66,13 @@ fi
# Generate conf file
$sudo sh -c "{
echo SSH_ADDRESS=$SSH_ADDRESS
echo HTTP_ADDRESS=$HTTP_ADDRESS
echo COMPRESSION=$COMPRESSION
echo PKG_PATH=pkg
echo "# zpkg config file
SSH_ADDRESS=$SSH_ADDRESS
HTTP_ADDRESS=$HTTP_ADDRESS
COMPRESSION=$COMPRESSION
PKG_PATH=pkg"
ALLOW_ROOT=false
UPDATE_REMOVE=true
} > zpkg.conf"
# install config file
@ -89,7 +92,7 @@ mkdir -p "$tmpdir" || exit $?
cat "zpkg.tar.$extension" | $pcompress -dc 2>/dev/null | tar -xf - || exit $?
# install zpkg package
ROOT/usr/local/bin/zpkg -f install zpkg || exit $?
ROOT/usr/bin/zpkg -f install zpkg || exit $?
)
# cleanup

View file

@ -28,6 +28,7 @@ fi
# resolve relative pkg_path
PKG_PATH="$(resolve_path "$PKG_PATH" "$config_path")"
[ -z "$UPDATE_REMOVE" ] && UPDATE_REMOVE=true
root_check && [ -z "$opt_f" ] && [ "$ALLOW_ROOT" != "true" ] && echo "Cannot run as root" >&2 && exit 10

View file

@ -89,7 +89,7 @@ update)
fetch_pkglist $sudo || exit 1
r_pkg=$(removed_packages)
o_pkg=$(outdated_packages)
if [ -n "$r_pkg" ]
if [ -n "$r_pkg" ] && [ "$UPDATE_REMOVE" = "true" ]
then
echo "Packages to remove: "$r_pkg
for I in $r_pkg

View file

@ -30,7 +30,8 @@ Config (zpkg.conf):
HTTP_ADDRESS HTTP address for downloading packages
PKG_PATH Path to the local package database
COMPRESSION Compression configuration, extension:binary:parallel_binary:options
ALLOW_ROOT Set to true to allow running as root without -f. Default: false"
ALLOW_ROOT Set to true to allow running as root without -f. Default: false
UPDATE_REMOVE Remove packages on update. Default: true"
}
error() {
@ -39,15 +40,18 @@ error() {
# $1 = package name
package_info() {
unset cleanup
status="not installed"
grep -q "^$1 " "$PKG_PATH/pkglist" 2>/dev/null || { echo "Package '$1' not found" && return 1; }
grep -q "^$1 " "$PKG_PATH/installed" 2>/dev/null && status=installed
# prepare
tmpdir="/tmp/zpkg_$(random_string 5)"
mkdir -p "$tmpdir" || return $?
pwd="$(pwd)"
cd "$tmpdir"
# get status
status="not installed"
grep -q "^$1 " "$PKG_PATH/pkglist" 2>/dev/null || { echo "Package '$1' not found" && return 1; }
grep -q "^$1 " "$PKG_PATH/installed" 2>/dev/null && status=installed
# get and unpack
if [ "$status" = "installed" ] && [ -f "$PKG_PATH/$1.tar.$extension" ]
then
pkg="$PKG_PATH/$1.tar.$extension"
@ -56,11 +60,11 @@ package_info() {
pkg="$1.tar.$extension"
fi
unpack "$pkg" >/dev/null
deps=$(cat DEPS 2>/dev/null)
# extract values
deps=$(cat DEPS 2>/dev/null | tr -s ' \t\n' ' ')
desc=$(cat DESC 2>/dev/null)
csize=$(stat -c '%s' "$pkg" | numfmt --to=iec-i --suffix=B --padding 6)
isize=$(du -sb ROOT HOME 2>/dev/null | awk '{print $1}' | paste -sd+ | bc | numfmt --to=iec-i --suffix=B --padding 6)
[ -n "$cleanup" ] && { cd "$pwd"; rm -rd "$tmpdir"; }
cd "$pwd"
rm -rf "$tmpdir"