Glacier v 3.2.2 - New option: -li/local-install
This commit is contained in:
parent
8a9641be67
commit
d43995befa
64
src/glacier
64
src/glacier
@ -20,11 +20,13 @@ source /etc/glacier/hooks
|
|||||||
|
|
||||||
get_pkg() {
|
get_pkg() {
|
||||||
printf "$blue[ i ]$reset Downloading archive for package '$2'...\n"
|
printf "$blue[ i ]$reset Downloading archive for package '$2'...\n"
|
||||||
|
# Extremely ugly but does what it needs to do
|
||||||
$GLACIER_DOWNLOAD_BACKEND $GREPO1/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO2/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO3/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO4/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO5/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO6/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO7/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO8/$2.tar.gz
|
$GLACIER_DOWNLOAD_BACKEND $GREPO1/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO2/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO3/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO4/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO5/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO6/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO7/$2.tar.gz || $GLACIER_DOWNLOAD_BACKEND $GREPO8/$2.tar.gz
|
||||||
if [ "$?" != "0" ]; then
|
if [ "$?" != "0" ]; then
|
||||||
printf "$red[ $error ]$reset Package '$2' not found.\n"
|
printf "$red[ $error ]$reset Package '$2' not found.\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
# same goes for this
|
||||||
$GLACIER_DOWNLOAD_BACKEND $GREPO1/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO2/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO3/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO4/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO5/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO6/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO7/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO8/$2.tar.gz
|
$GLACIER_DOWNLOAD_BACKEND $GREPO1/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO2/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO3/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO4/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO5/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO6/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO7/$2.checksum || $GLACIER_DOWNLOAD_BACKEND $GREPO8/$2.tar.gz
|
||||||
if [ "$?" != "0" ]; then
|
if [ "$?" != "0" ]; then
|
||||||
printf "$red[ $error ]$reset Package checksum not found.\n"
|
printf "$red[ $error ]$reset Package checksum not found.\n"
|
||||||
@ -127,7 +129,7 @@ clear_cache() {
|
|||||||
#
|
#
|
||||||
|
|
||||||
debug_info() {
|
debug_info() {
|
||||||
printf "$blue>> Glacier v3.2.1$reset\n"
|
printf "$blue>> Glacier v3.2.2$reset\n"
|
||||||
printf ">> Checking for valid download backend...\n"
|
printf ">> Checking for valid download backend...\n"
|
||||||
whereis wget
|
whereis wget
|
||||||
whereis curl
|
whereis curl
|
||||||
@ -222,10 +224,19 @@ post_hooks () {
|
|||||||
/etc/glacier/post-hooks
|
/etc/glacier/post-hooks
|
||||||
}
|
}
|
||||||
|
|
||||||
|
search_for_local_pkg() {
|
||||||
|
printf "$blue[ i ]$reset Searching working directory for package $2...\n"
|
||||||
|
find $2.tar.gz
|
||||||
|
if [ "$?" != 0 ]; then
|
||||||
|
printf "$red[ $error ]$reset Package $2 not found.\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
-h|--help)
|
-h|--help)
|
||||||
printf "$blue[ * ] Glacier - Manage installed packages on the system$reset\n"
|
printf "$blue[ * ] Glacier - Manage installed packages on the system$reset\n"
|
||||||
printf "usage: glacier [-f] [-u] [-x] [-q] [-c] [-ci] [-cc] [--debuginfo]\n"
|
printf "usage: glacier [-f] [-u] [-x] [-q] [-c] [-ci] [-cc] [-li] [--debuginfo]\n"
|
||||||
printf "\n"
|
printf "\n"
|
||||||
printf "$blue=== Information ===$reset\n"
|
printf "$blue=== Information ===$reset\n"
|
||||||
printf "glacier {-h/--help} - Show this message and exit\n"
|
printf "glacier {-h/--help} - Show this message and exit\n"
|
||||||
@ -239,6 +250,7 @@ case $1 in
|
|||||||
printf "glacier {-c/cache} - Download a package to the cache\n"
|
printf "glacier {-c/cache} - Download a package to the cache\n"
|
||||||
printf "glacier {-ci/cache-install} - Install a package from the cache\n"
|
printf "glacier {-ci/cache-install} - Install a package from the cache\n"
|
||||||
printf "glacier {-cc/cache-clear} - Clear the cache\n"
|
printf "glacier {-cc/cache-clear} - Clear the cache\n"
|
||||||
|
printf "glacier {-li/local-install} - Install a package from a local directory\n"
|
||||||
printf "\n"
|
printf "\n"
|
||||||
printf "$blue=== Debugging ===$reset\n"
|
printf "$blue=== Debugging ===$reset\n"
|
||||||
printf "glacier {--debuginfo} - Show debugging information\n"
|
printf "glacier {--debuginfo} - Show debugging information\n"
|
||||||
@ -250,12 +262,12 @@ case $1 in
|
|||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
-v|--version)
|
-v|--version)
|
||||||
printf "${blue}Glacier v3.2.1${reset}\n"
|
printf "${blue}Glacier v3.2.2${reset}\n"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
-f|install)
|
-f|install)
|
||||||
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
printf "$red[ $error ]$reset Please run Glacier as root.\n"
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -287,7 +299,7 @@ case $1 in
|
|||||||
;;
|
;;
|
||||||
-u|update)
|
-u|update)
|
||||||
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
printf "$red[ $error ]$reset Please run Glacier as root.\n"
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -319,7 +331,7 @@ case $1 in
|
|||||||
;;
|
;;
|
||||||
-x|remove)
|
-x|remove)
|
||||||
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
printf "$red[ $error ]$reset Please run Glacier as root.\n"
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -356,7 +368,7 @@ case $1 in
|
|||||||
;;
|
;;
|
||||||
-c|cache)
|
-c|cache)
|
||||||
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
printf "$red[ $error ]$reset Please run Glacier as root.\n"
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -382,7 +394,7 @@ case $1 in
|
|||||||
;;
|
;;
|
||||||
-ci|cache-install)
|
-ci|cache-install)
|
||||||
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
printf "$red[ $error ]$reset Please run Glacier as root.\n"
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -414,7 +426,7 @@ case $1 in
|
|||||||
;;
|
;;
|
||||||
-cc|cache-clear)
|
-cc|cache-clear)
|
||||||
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
printf "$red[ $error ]$reset Please run Glacier as root.\n"
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -422,6 +434,40 @@ case $1 in
|
|||||||
printf "$green[ $check ]$reset Operation completed.\n"
|
printf "$green[ $check ]$reset Operation completed.\n"
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
|
-li|local-install)
|
||||||
|
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
|
||||||
|
printf "$red[ $error ]$reset Failed to commit to transaction - permission denied. Are you root?\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$2" == "" ]; then
|
||||||
|
printf "$red[ $error ]$reset No package name was supplied.\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
search_for_local_pkg "$@"
|
||||||
|
|
||||||
|
printf "$blue[ i ]$reset Installing package '$2' from local file.\n"
|
||||||
|
read -p "$(printf "$blue[ ? ]$reset Proceed with this operation? (y/n) ")" -n 1 -r
|
||||||
|
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||||||
|
cp $2.tar.gz /opt/glacier/workspace
|
||||||
|
cd /opt/glacier/workspace
|
||||||
|
printf "\n"
|
||||||
|
pre_hooks "$@"
|
||||||
|
unpack_pkg "$@"
|
||||||
|
pre_op_hooks "$@"
|
||||||
|
installpkg "$@"
|
||||||
|
post_hooks "$@"
|
||||||
|
cleanup_keep_rm "$@"
|
||||||
|
printf "$green[ $check ]$reset Operation completed.\n"
|
||||||
|
exit 0
|
||||||
|
elif [[ $REPLY =~ ^[Nn]$ ]]; then
|
||||||
|
printf "\n"
|
||||||
|
printf "$red[ $error ]$reset Aborting.\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
--debuginfo)
|
--debuginfo)
|
||||||
debug_info "$@"
|
debug_info "$@"
|
||||||
exit 0
|
exit 0
|
||||||
|
Loading…
Reference in New Issue
Block a user