This file is indexed.

/usr/share/pyshared/kid/run.py is in python-kid 0.9.6-2.1.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  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
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# This module provides the "kid" command

"""Usage: kid [options] file [args]
Expand a Kid template file.

OPTIONS:

  -e enc, --encoding=enc
          Specify the output character encoding.
          Default: utf-8
  -o outfile, --output=outfile
          Specify the output file.
          Default: standard output
  -s host:port, --server=host:port
          Specify the server address if
          you want to start the HTTP server.
          Instead of the Kid template,
          you can specify a base directory.
  -h, --help
          Print this help message and exit.
  -V, --version
          Print the Kid version number and exit.

file:
  filename of the Kid template to be processed
  or "-" for reading the template from stdin.

args:
  key=value or other arguments passed to the template.
"""

__revision__ = "$Rev: 492 $"
__date__ = "$Date: 2007-07-06 21:38:45 -0400 (Fri, 06 Jul 2007) $"
__author__ = "Ryan Tomayko (rtomayko@gmail.com)"
__copyright__ = "Copyright 2004-2005, Ryan Tomayko"
__license__ = "MIT <http://www.opensource.org/licenses/mit-license.php>"

import sys
from os.path import dirname, abspath
from getopt import getopt, GetoptError as gerror

try:
    from os import EX_OK, EX_DATAERR, EX_USAGE
except ImportError:
    EX_OK, EX_DATAERR, EX_USAGE = 0, 1, 2

import kid

def main():
    # get options
    try:
        opts, args = getopt(sys.argv[1:], 'e:o:s:hV',
            ['encoding=', 'output=', 'server=', 'help', 'version'])
    except gerror, e:
        sys.stderr.write(str(e) + '\n')
        sys.stdout.write(__doc__)
        sys.exit(EX_USAGE)
    enc = 'utf-8'
    outfile = server = None
    for o, a in opts:
        if o in ('-e', '--encoding'):
            enc = a
        elif o in ('-o', '--output'):
            outfile = a
        elif o in ('-s', '--server'):
            server = a
        elif o in ('-h', '--help'):
            sys.stdout.write(__doc__)
            sys.exit(EX_OK)
        elif o in ('-V', '--version'):
            from kid import __version__
            sys.stdout.write('Kid %s\n' % __version__)
            sys.exit(EX_OK)
    if server is None:
        if args:
            # get template file
            f = args.pop(0)
            sys.argv = [f]
            if f != '-':
                # make sure template dir is on sys.path
                path = abspath(dirname(f))
                if not path in sys.path:
                    sys.path.insert(0, path)
            else:
                f = sys.stdin.read()
            # get arguments for the template file
            kw = {}
            while args:
                a = args.pop(0).split('=', 1)
                if len(a) > 1:
                    kw[a[0]] = a[1]
                else:
                    sys.argv.append(a[0])
            # do not run as __main__ module
            sys.modules['__kid_main__'] = sys.modules['__main__']
            __name__ = '__kid_main__'
            del sys.modules['__main__']
            # load kid template as __main__ module
            module = kid.load_template(f, name='__main__', cache=False)
            # execute the template and write output
            if not outfile:
                outfile = sys.stdout
            module.write(outfile, encoding=enc, **kw)
        else:
            sys.stderr.write('kid: No template file specified.\n')
            sys.stderr.write("     Try 'kid --help' for usage information.\n")
            sys.exit(EX_USAGE)
    else:
        if len(args) < 2:
            if outfile:
                stderr = file(outfile, 'a', 1)
                sys.stderr = stderr
            sys.stdout.write('Starting HTTP server ...\n')
            if args:
                # get base directory
                basedir = args.pop(0)
                from os import chdir
                chdir(basedir)
            from os import getcwd
            basedir = getcwd()
            sys.stdout.write('Base directory: %s\n' % basedir)
            if outfile:
                sys.stdout.write('Server log: %s\n' % outfile)
            if server == '-':
                server = 'localhost'
            sys.argv[1:] = [server]
            from kid.server import main
            main()
            if outfile:
                sys.stderr = sys.__stderr__
                stderr.close()
        else:
            sys.stderr.write('kid: Server does not need additional arguments.\n')
            sys.stderr.write("     Try 'kid --help' for usage information.\n")
            sys.exit(EX_USAGE)

if __name__ == '__main__':
    main()