summaryrefslogtreecommitdiff
path: root/SYNTAX
blob: 4680ab440eda99eef379ad9a0c93a163a92f0ca5 (plain)
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
The *blacklist.txt files consist of lines in the following format:

    original-package:[libre-replacement]:[ref]:[id]:short-description

where something within [] is optional.

* original-package is the name of the binary package from Arch

* libre-replacement is the name of the binary package that provides
  and replaces the original-package, or empty if there is no
  compatible replacement. The replacement must be compatible for use
  by humans and scripts, e.g. fastjar is not a replacement for zip
  although both solve the same problem. Packages in
  your-freedom_emu-blacklist.txt are not meant to have a replacement.

* ref is described by the following table:

    debian: &debian http://bugs.debian.org/
    fsf: &fsf http://libreplanet.org/wiki/List_of_software_that_does_not_respect_the_Free_System_Distribution_Guidelines#
    savannah: &sv https://savannah.nongnu.org/bugs/?
    fedora: &fedora https://bugzilla.redhat.com/show_bug.cgi?id=
    parabola: &parabola https://labs.parabola.nu/issues/

  Use the value after & as the ref column value, the URL pointed by it and
  concatenated with the id field should point to an issue
  reporting/describing the reason for the package being blacklisted.

  We should prefer FSF refs, since they are easily available for other
  distros.  Hopefully some lines will move from parabola:X to fsf:Y with
  the LibrePlanet wiki linking to the X issue on labs.parabola.nu.

* short-description categorizes original-package with some tags,
  followed by a short verbal explanation. Popular tags are:

    [nonfree]·······This package is blatently nonfree software.

    [semifree]······This package is mostly free, but contains some nonfree
                    software.

    [uses-nonfree]··This package depends on, recommends, or otherwise
                    inappropriately integrates with other nonfree software
                    or services.

    [branding]······This package has branding needs adjusted; it refers to
                    "Arch" instead of "Parabola", or "Linux" instead of
                    "GNU/Linux", etc.

    [technical]·····This package cannot be imported from Arch because of
                    technical reasons, rather than freedom reasons; this is
                    NOT to do with freedom of privacy issues in the
                    package.  This usually comes down to two things: it
                    must be recompiled against our version of a dependency
                    package, or it must be compiled from source, as we are
                    stricter about that than Arch is.

                    Either the original-package and the
                    libre-replacement should match; or the
                    libre-replacement should be empty, and it also have
                    [FIXME:package] on it.  If neither of those are true,
                    then you are using this tag wrong.  If this is the only
                    tag, and "nonfree" appears in the description, you are
                    using this tag wrong.

    [FIXME:package] This package has a free replacement, or could be built
                    in a way that is acceptable, but no one has done so
                    yet.

    [FIXME:description] Someone needs to fix the description in
                        blacklist.txt

  To make reporting issues to gnu-linux-libre easier, we should explain
  in the description if the package is blacklisted due to an upstream FSDG
  issue, problem introduced by Arch (e.g. not including required license
  text, adding optional dependency on a nonfree package), or just
  branding, dependency or non-freedom-related issues which don't need
  reporting to other distros.