diff options
Diffstat (limited to 'trunk/src/repos')
-rwxr-xr-x | trunk/src/repos | 99 |
1 files changed, 12 insertions, 87 deletions
diff --git a/trunk/src/repos b/trunk/src/repos index c37e625..191af44 100755 --- a/trunk/src/repos +++ b/trunk/src/repos @@ -10,100 +10,25 @@ # # Changes by rhatto at riseup.net to fit http://slack.sarava.org needs # -# TODO: - simplepkg's config file support +# TODO: - config file options # - integration with binary repository # - package's and CHECKSUMS.md5 signature creation # -function usage { - - echo "`basename $0` [pkg [file]|all|new|svnmeta|PACKAGESTXT|FILELIST|MD5]" - -} - -function svn_add_meta { +BASENAME="`basename $0`" +REPOS_CONF="/etc/simplepkg/repos.conf" +COMMON="/usr/libexec/simplepkg/common.sh" - find *meta -exec svn add {} 2> /dev/null \; - find . -name *meta -exec svn add {} 2> /dev/null \; +if [ -f "$COMMON" ]; then + source $COMMON +else + echo "error: file $COMMON found, check your $BASENAME installation" + exit 1 +fi -} - -function gen_filelist { - - local cwd - - for file in `find | grep -e ".tgz$"`; do ls -l $file; done > FILELIST.TXT - echo "Created new FILELIST.TXT" - if [ -d "patches" ]; then - cwd="`pwd`" - cd patches - for file in `find | grep -e ".tgz$"`; do ls -l $file; done > FILE_LIST - echo "Created new patches/FILE_LIST" - cd $pwd - fi - -} - -function gen_packages_txt { - - echo '' > PACKAGES.TXT - find . -type f -name '*.meta' -exec cat {} \; >> PACKAGES.TXT - cat PACKAGES.TXT | gzip -9 -c - > PACKAGES.TXT.gz - echo "Created new PACKAGES.TXT and PACKAGES.TXT.gz" - if [ -d "patches" ]; then - find patches -type f -name '*.meta' -exec cat {} \; >> patches/PACKAGES.TXT - cat patches/PACKAGES.TXT | gzip -9 -c - > patches/PACKAGES.TXT.gz - echo "Created new patches/PACKAGES.TXT and patches/PACKAGES.TXT.gz" - fi - -} - -function gen_md5_checksums { - - echo '' > CHECKSUMS.md5 - find . -type f -name '*.tgz' -exec md5sum {} \; >> CHECKSUMS.md5 - cat CHECKSUMS.md5 | gzip -9 -c - > CHECKSUMS.md5.gz - echo "Created new CHECKSUMS.md5 and CHECKSUMS.md5.gz" - if [ -d "patches" ]; then - find patches -type f -name '*.tgz' -exec md5sum {} \; >> patches/CHECKSUMS.md5 - cat patches/CHECKSUMS.md5 | gzip -9 -c - > patches/CHECKSUMS.md5.gz - echo "Created new patches/CHECKSUMS.md5 and patches/CHECKSUMS.md5.gz" - fi - -} - -function gen_meta { +function usage { - if [ ! -f $1 ]; then - echo "File not found: $1" - exit 1; - else - echo "Processing $1" - fi - if [ "`echo $1|grep -E '(.*{1,})\-(.*[\.\-].*[\.\-].*).tgz[ ]{0,}$'`" == "" ]; then - return; - fi - NAME=$(echo $1|sed -re "s/(.*\/)(.*.tgz)$/\2/") - LOCATION=$(echo $1|sed -re "s/(.*)\/(.*.tgz)$/\1/") - SIZE=$( expr `gunzip -l $1 | tail -n 1|awk '{print $1}'` / 1024 ) - USIZE=$( expr `gunzip -l $1 | tail -n 1|awk '{print $2}'` / 1024 ) - REQUIRED=$(tar xzfO $1 install/slack-required 2>/dev/null|xargs -r -iZ echo -n "Z,"|sed -e "s/,$//") - CONFLICTS=$(tar xzfO $1 install/slack-conflicts 2>/dev/null|xargs -r -iZ echo -n "Z,"|sed -e "s/,$//") - SUGGESTS=$(tar xzfO $1 install/slack-suggests 2>/dev/null|xargs -r ) - METAFILE=${NAME%tgz}meta - echo "PACKAGE NAME: $NAME" > $LOCATION/$METAFILE - if [ -n "$DL_URL" ]; then - echo "PACKAGE MIRROR: $DL_URL" >> $LOCATION/$METAFILE - fi - echo "PACKAGE LOCATION: $LOCATION" >> $LOCATION/$METAFILE - echo "PACKAGE SIZE (compressed): $SIZE K" >> $LOCATION/$METAFILE - echo "PACKAGE SIZE (uncompressed): $USIZE K" >> $LOCATION/$METAFILE - echo "PACKAGE REQUIRED: $REQUIRED" >> $LOCATION/$METAFILE - echo "PACKAGE CONFLICTS: $CONFLICTS" >> $LOCATION/$METAFILE - echo "PACKAGE SUGGESTS: $SUGGESTS" >> $LOCATION/$METAFILE - echo "PACKAGE DESCRIPTION:" >> $LOCATION/$METAFILE - tar xzfO $1 install/slack-desc | grep -E '\w+\:'|grep -v '^#' >> $LOCATION/$METAFILE - echo "" >> $LOCATION/$METAFILE + echo "`basename $0` [pkg [file]|all|new|svnmeta|PACKAGESTXT|FILELIST|MD5]" } |