updates
authorThorsten Glaser <tg@mirbsd.org>
Fri, 2 May 2014 14:59:03 +0000 (14:59 +0000)
committerThorsten Glaser <tg@mirbsd.org>
Fri, 2 May 2014 14:59:03 +0000 (14:59 +0000)
mksh/debian-dev/dot.quiltrc
mksh/debian-dev/dscls [new file with mode: 0644]
mksh/debian-dev/mkdebidx.sh

index 1fef496..a80eeab 100644 (file)
@@ -1,4 +1,15 @@
-# $MirOS: contrib/hosted/tg/deb/dot.quiltrc,v 1.3 2012/12/01 14:08:31 tg Exp $
+# $MirOS: contrib/hosted/tg/deb/dot.quiltrc,v 1.5 2013/12/31 10:17:32 tg Exp $
+#-
+# Configuration options (set to non-empty value to enable):
+# * QUILTRC_ENABLE: generate patches in a standardised format
+#   (enabled by default if QUILT_PATCHES was empty or “-” and
+#   we find ourselves to be in a Debian 3.0 (quilt) package)
+# * QUILTRC_NO_DIFF_P: do not show C function context in diffs
+#
+# If QUILT_PATCHES is empty or a sole hyphen-minus, this ~/.quiltrc
+# checks for Debian 3.0 (quilt) source package and sets QUILT_PATCHES
+# to "debian/patches" if found; otherwise, if it was a hyphen-minus,
+# to "patches".
 
 while test -z "$QUILT_PATCHES" || test x"$QUILT_PATCHES" = x"-"; do
        d=.
@@ -12,18 +23,22 @@ while test -z "$QUILT_PATCHES" || test x"$QUILT_PATCHES" = x"-"; do
        # now in Debian packaging tree with unset $QUILT_PATCHES
 
        QUILT_PATCHES="debian/patches"
+       test -d $d/debian/patches || mkdir $d/debian/patches
+       QUILTRC_ENABLE=1
+
+       # this is not a real loop, exit it always
+       break
+done
+if test -n "$QUILTRC_ENABLE"; then
+       # enable options to generate standardised patches
        QUILT_PATCH_OPTS="--reject-format=unified"
        QUILT_DIFF_OPTS=""
        test -n "$QUILTRC_NO_DIFF_P" || \
            QUILT_DIFF_OPTS="$QUILT_DIFF_OPTS --show-c-function"
        QUILT_DIFF_ARGS="-p ab --no-timestamps --no-index --color=auto"
-       QUILT_REFRESH_ARGS="-p ab --no-timestamps --no-index"
+       QUILT_REFRESH_ARGS="-p ab --no-timestamps --no-index --sort"
        QUILT_PUSH_ARGS="--color=auto"
        QUILT_COLORS="diff_hdr=1;32:diff_add=1;34:diff_rem=1;31:diff_hunk=1;33:diff_ctx=35:diff_cctx=33"
-       test -d $d/debian/patches || mkdir $d/debian/patches
-
-       # this is not a real loop, exit it always
-       break
-done
+fi
 test x"$QUILT_PATCHES" = x"-" && QUILT_PATCHES=patches
 :
diff --git a/mksh/debian-dev/dscls b/mksh/debian-dev/dscls
new file mode 100644 (file)
index 0000000..fece45f
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/mksh
+# $MirOS: contrib/hosted/tg/deb/dscls,v 1.1 2014/04/07 20:31:31 tg Exp $
+#-
+# Copyright © 2012
+#      Thorsten Glaser <tg@mirbsd.org>
+#
+# Provided that these terms and disclaimer and all copyright notices
+# are retained or reproduced in an accompanying document, permission
+# is granted to deal in this work without restriction, including un‐
+# limited rights to use, publicly perform, distribute, sell, modify,
+# merge, give away, or sublicence.
+#
+# This work is provided “AS IS” and WITHOUT WARRANTY of any kind, to
+# the utmost extent permitted by applicable law, neither express nor
+# implied; without malicious intent or gross negligence. In no event
+# may a licensor, author or contributor be held liable for indirect,
+# direct, other damage, loss, or other issues arising in any way out
+# of dealing in the work, even if advised of the possibility of such
+# damage or existence of a defect, except proven that it results out
+# of said person’s immediate fault when using the work as intended.
+
+for x in "$@"; do
+       dscname=$x
+       pkgname=${x%%@(.dsc|_+([a-z0-9-]).changes)}
+       if [[ -s $dscname ]]; then
+               y=$(sed -n '/^Source: /s///p' "$dscname" | head -n 1)
+               z=$(sed -n '/^Version: /s///p' "$dscname" | head -n 1)
+               [[ -n $y && -n $z && $x = ?(*/)${y}_* ]] && pkgname=${y}_$z
+       fi
+       print -r -- "$pkgname"
+done
index 3c3a813..fd6b6ab 100644 (file)
@@ -1,5 +1,5 @@
 #!/bin/mksh
-rcsid='$MirOS: contrib/hosted/tg/deb/mkdebidx.sh,v 1.58 2013/03/18 16:55:37 tg Exp $'
+rcsid='$MirOS: contrib/hosted/tg/deb/mkdebidx.sh,v 1.60 2013/11/14 15:07:45 tg Exp $'
 #-
 # Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013
 #      Thorsten Glaser <tg@mirbsd.org>
@@ -20,7 +20,7 @@ rcsid='$MirOS: contrib/hosted/tg/deb/mkdebidx.sh,v 1.58 2013/03/18 16:55:37 tg E
 # of said person's immediate fault when using the work as intended.
 
 set -A normarchs -- i386
-repo_keyid=0x405422DD
+repo_keyid=0xAA917C6F
 # either '' (locally) or 'remsign user@host.domain.com' (remote ssh)
 gpg_remote=
 repo_origin='The MirOS Project'
@@ -79,6 +79,20 @@ function Lcdbhash_add {
        done
 }
 
+# escape XHTML characters (three mandatory XML ones plus double quotes,
+# the latter in an XML safe fashion numerically though)
+function xhtml_escape {
+       if (( $# )); then
+               print -nr -- "$@"
+       else
+               cat
+       fi | sed \
+           -e 's\ 1&\ 1\&amp;\ 1g' \
+           -e 's\ 1<\ 1\&lt;\ 1g' \
+           -e 's\ 1>\ 1\&gt;\ 1g' \
+           -e 's\ 1"\ 1\&#34;\ 1g'
+}
+
 set +U
 export LC_ALL=C
 unset LANGUAGE
@@ -448,7 +462,7 @@ done
 EOF
 print -r -- " <title>${repo_title} Index</title>"
 cat <<'EOF'
- <meta name="generator" content="$MirOS: contrib/hosted/tg/deb/mkdebidx.sh,v 1.58 2013/03/18 16:55:37 tg Exp $" />
+ <meta name="generator" content="$MirOS: contrib/hosted/tg/deb/mkdebidx.sh,v 1.60 2013/11/14 15:07:45 tg Exp $" />
  <style type="text/css">
   table {
    border: 1px solid black;
@@ -608,7 +622,7 @@ while read -p num rest; do
                print "<!-- bp #$i -->"
                print "<tr class=\"binpkgline\">"
                print " <td class=\"binpkgname\">${bp_disp[i]}</td>"
-               print " <td class=\"binpkgdesc\">${bp_desc[i]}</td>"
+               print " <td class=\"binpkgdesc\">$(xhtml_escape "${bp_desc[i]}")</td>"
                for suitename in $allsuites; do
                        eval pv=\${bp_ver_${suitename}[i]}
                        if [[ -z $pv ]]; then
@@ -648,7 +662,7 @@ for i in ${bp_sort[*]}; do
        print "<!-- bp #$i -->"
        print "<tr class=\"binpkgline\">"
        print " <td class=\"binpkgdist\">${bp_dist[i]}</td>"
-       print " <td rowspan=\"2\" class=\"binpkgdesc\">${bp_desc[i]}</td>"
+       print " <td rowspan=\"2\" class=\"binpkgdesc\">$(xhtml_escape "${bp_desc[i]}")</td>"
        for suitename in $allsuites; do
                eval pv=\${bp_ver_${suitename}[i]}
                if [[ -z $pv ]]; then