Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- #
- # Copyright 2003 by Tony Brijeski
- #
- # Licensed under the GPL2 License
- #
- #
- # This little script is used to repackage a Slackware package
- # that is installed on your system back into the original tgz package.
- #
- # Main uses are for repacking your customizations or for making a backup
- # of the package before removing it from the system so you can reinstall
- # it if you wish (nobody is perfect!).
- #
- # This version only works on 1 package at a time
- #
- #
- lodir="`pwd`"
- if [ -a /tmp/retgz.tmp ]; then
- rm -f /tmp/retgz.tmp
- fi
- if [ "$1" = "" ]; then
- echo "Usage - retgz package-name "
- echo " "
- echo " package-name is the entry in /var/log/packages"
- echo " "
- exit 1
- fi
- if [ -a /var/log/packages/$1 ]; then
- cd /
- mkdir /install
- if [ -a /var/log/scripts/$1 ]; then
- cp /var/log/scripts/$1 /install/doinst.sh
- fi
- cat /var/log/packages/$1 | grep ":" >>/install/slack-desc
- cat /var/log/packages/$1 | grep "/" >>/tmp/retgz.tmp
- if [ -a /install/doinst.sh ]; then
- tar cvpf $lodir/$1 ./install/doinst.sh ./install/slack-desc
- else
- tar cvpf $lodir/$1 ./install/slack-desc
- fi
- cat /tmp/retgz.tmp | while read LINE; do
- if [ ! "$LINE" = "" ]; then
- tst1=`echo "$LINE" | grep "doinst.sh"`
- tst2=`echo "$LINE" | grep "slack-desc"`
- tst3=`echo "$LINE" | awk -F/ '{print $NF}'`
- if [ "$tst1" = "" ] && [ "$tst2" = "" ]; then
- if [ ! "$tst3" = "" ]; then
- tar rvpf $lodir/$1 ./$LINE
- fi
- fi
- fi
- done
- else
- echo "Package $1 not installed"
- exit 1
- fi
- rm -rf /install
- rm -f /tmp/retgz.tmp
- cd $lodir
- #gzip -S .tgz $1
- xz -S .txz $1 &
- echo " Package $1.txz is in $lodir "
- exit 0
Add Comment
Please, Sign In to add comment