Fix info deps + add UPDATE_REMOVE + move to /usr/bin
This commit is contained in:
parent
b8dac99280
commit
b471059972
5 changed files with 23 additions and 15 deletions
|
|
@ -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"
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
20
src/print.sh
20
src/print.sh
|
|
@ -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"
|
||||
|
|
|
|||
Loading…
Reference in a new issue