summaryrefslogtreecommitdiffstats
path: root/source/ap/slackpkg/files/pkglist.awk
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/slackpkg/files/pkglist.awk')
-rw-r--r--source/ap/slackpkg/files/pkglist.awk35
1 files changed, 35 insertions, 0 deletions
diff --git a/source/ap/slackpkg/files/pkglist.awk b/source/ap/slackpkg/files/pkglist.awk
new file mode 100644
index 000000000..5a0c18e86
--- /dev/null
+++ b/source/ap/slackpkg/files/pkglist.awk
@@ -0,0 +1,35 @@
+!/source\// && !/\.asc$/ {
+ INPUT=$NF
+ fs=FS
+ FS="/" ; OFS="/"
+ $0=INPUT
+ if ( $2 != "var" ) {
+ DIR=$2
+ FULLPACK=$NF
+ } else {
+ DIR="local"
+ FULLPACK=$NF".tgz"
+ }
+ NF=NF-1
+ PATH=$0
+ FS="-" ; OFS="-"
+ $0=FULLPACK
+ if ( NF > 3 ) {
+ SIZE=split($NF,RELEXT,".")
+ EXTENSION=RELEXT[SIZE]
+ LAST=length($NF)-4
+ RELEASE=substr($NF,1,LAST)
+ ARCH=$(NF-1)
+ VERSION=$(NF-2)
+ NF=NF-3
+ NAME=$0
+ } else {
+ RELEASE=none
+ ARCH=none
+ VERSION=none
+ EXTENSION=tgz
+ NAME=$0
+ }
+ FS=fs
+ print DIR" "NAME" "VERSION" "ARCH" "RELEASE" "NAME"-"VERSION"-"ARCH"-"RELEASE" "PATH" "EXTENSION
+}