File: grab_source_list

package info (click to toggle)
debian-cd 3.1.5
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 3,532 kB
  • ctags: 138
  • sloc: sh: 6,174; perl: 2,352; makefile: 349
file content (70 lines) | stat: -rwxr-xr-x 1,403 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/sh

BDIR=$1
ADIR=$2
IN="$3"
OUT="$4"

echo "DONEDONE" > $BDIR/DONE
awk -v max_size=$MAX_PKG_SIZE '
	/^Package:/ {
				  srcname=$2
				  srcs_done++
				}

	/^Section: non-free/ {
				  component[srcname]="non-free"
				  next
				}

	/^Section: contrib/ {
				  component[srcname]="contrib"
				  next
				}

	/^Section:/ {
				  component[srcname]="main"
				  next
				}

	/^DONEDONE/ {
				  parsed=1
				  next
				}

    /^Files:/ {
                  in_files = 1
                  next
                }
    /^ / {
                  if (in_files) {
                      size[srcname]+=$2
                      next
                  }
                }

	/.*/        {
                    in_files = 0
				    if (parsed) {
                        if (size[$0] > max_size) {
				           printf("source:%s:%s-SRCTOOBIG\n", component[$0], $0)
                        } else {
				           printf("source:%s:%s\n", component[$0], $0)
                        }
					}
				}
' $ADIR/$CODENAME-source/apt-state/lists/*Sources $BDIR/DONE $IN > $BDIR/list.mid

if [ "$NONFREE"x = "1"x ] ; then
    grep -v SRCTOOBIG $BDIR/list.mid > $OUT
else
    grep -v -e :non-free: -e SRCTOOBIG $BDIR/list.mid > $OUT
fi

if [ "$EXTRANONFREE"x = "1"x ] ; then 
	grep :non-free: $BDIR/list.mid | grep -v SRCTOOBIG >> $OUT
fi

awk -F : '
    /SRCTOOBIG/   { print $3 }
' $BDIR/list.mid > $BDIR/sourcetoobig