summaryrefslogtreecommitdiffstats
path: root/README.md
blob: 017161f191f62cf2cb85ef509093ad892bcdbd35 (plain) (blame)
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
# gns-deb-diff

This script is an effort to automate the documentation of the
differences between gNewSense and Debian.

The present list of differences is documented at the
[gNewSense wiki][2]. Look at the [savannah task #12794][1] for more
info.

[1]: https://savannah.nongnu.org/task/?12794
[2]: http://www.gnewsense.org/Documentation/3/DifferencesWithDebian

## Synopsis

    $ python gns-deb-diff.py packages-list-file output-table-file local-packages-directory remote-bzr-url

**defaults**

    local-packages-directory = "~/gnewsense/packages-parkes"
    remote-bzr-ur = "bzr://bzr.savannah.gnu.org/gnewsense/packages-parkes"

`packages-list-file`, is a file which contains a list of package names
that differ from Debian. Look at `packages-parkes.list` file for a
sample.

`output-table-file`, is the file to which the script should write the difference table.

## Description

This is what the script does at present:

+ **S1** The script pulls the latest version of the packages, listed
in the `packages-list-file`, from their respective bzr repos.

+ **S2** For packages which contain the `README.gNewSense` file, it
reads the content into a dict; the keys being the names of the
packages.

+ **S3** The script puts the names of packages, which doesn't contain
`README.gNewSense` file, into a seperate list.

+ **S4** The dict produced in **S2** is used to generate moinmoin
marked up table, like [the one here][2].

+ **S5** The generated table is written to the `output-table-file`.

+ **S4** The list of packages which doesn't contain `README.gNewSense`
is barfed out to stdout.

## Notes

1. At present the script reads the whole `README.gNewSense` file and
puts it in the second column of the table. The file typically about 10
lines big & contains newlines.

Unforunately, the MoinMoin markup for the table doesn't allow the
columns to have new lines. So, the table generated by the script, at
present, must be manually edited to remove newlines.

A possible solution would be to have a one line description, of how
the respective package differs from Debian, at the beginning of the
`README.gNewSense`. This line can then be used by the script to
generate the table.


## License

The script is under the WTFPL version 2 license. See COPYING for more
details. This license is [compatible with GNU GPL][3].

[3]: http://www.gnu.org/licenses/license-list.html#WTFPL