discuss: modifiability of docs: final decision
Subject:
Re: modifiability of docs: final decision
From:
Emma Jane Hogbin ####@####.####
Date:
5 Mar 2005 05:53:37 -0000
Message-Id: <20050305055411.GC9099@smeagol>
On Fri, Mar 04, 2005 at 07:16:39PM -0600, David Horton wrote:
> Rick Moen wrote:
> >Quoting David Horton ####@####.####
> >>I took a look at the three licenses that TLDP recommends in the Author
> >>Guide. These are the GNU FDL, Creative Commons, or LDP License. Each
> >>license says that the document may be modified, but it must be released
> >>under a different name than the original unless the author says
> >>otherwise. (The single exception is if an author were to choose the
> >>"no modify" option of the Creative Commons license which, I believe,
> >>TLDP discourages.)
> >
> >Um, the above and the news about LDP's recommendations is slightly odd,
> >because Creative Commons maintains a _spectrum_ of documentation
> >licences, that are incredibly diverse -- something like nine of them, of
> >which only a minority would meet OSD/DFSG criteria. <snip>
Actually none of the CC licenses are DFSG "free."
http://www.debian.org/legal/licenses/byname
> The text of the author guide is "We recommend using the GNU Free
> Documentation License (GFDL), one of the Creative Commons Licenses, or
> the LDP license (currently under review)."
>
> Perhaps it should be rephrased to specify a specific Creative Commons
> license, because as you say there are many options. I'm guessing
> Attribution-Share-Alike is the most suitable.
The next published version of the Author Guide contains the following
(please excuse the DocBook tags, hopefully everyone can read around them):
<title>Licensing and Copyright</title>
In order for a document to be accepted by the LDP,
it must be licensed and conform to the <quote>LICENSE
REQUIREMENTS</quote> section of the LDP Manifesto located at <ulink
url="http://www.tldp.org/manifesto.html">http://www.tldp.org/manifesto.html</ulink>.
<para> We recommend using the <ulink
url="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation
License (GFDL)</ulink>, one of the <ulink
url="http://www.creativecommons.org/license">Creative Commons
Licenses</ulink> (<ulink url="http://creativecommons.org/licenses/sa/1.0/">Share-Alike</
ulink>, or <ulink url="http://creativecommons.org/licenses/by-sa/2.0/">Attribution-Share-Alike</
ulink>), or the LDP license (currently under review). The
full text of the license must be included in your document, including
the title and version of the license you are using. The LDP will not
accept new documents that do not meet licensing requirements.</para>
<warning>
<title>Debian-compatible licenses</title>
<para>Debian has branched the LDP documents into those with a <quote>free</quote> license
and those with a <quote>non-free</quote> license. For a summary of this list, please read <ulink
url="http://www.debian.org/legal/licenses/byname">Debian License Summaries</ulink>. Currently the
Artistic License, BSD License and the GNU General Public License are listed as <quote>free</quote>.
These licenses will also be accepted by the LDP.</para>
</warning>
Please let me know if there are additional changes to be made to this
section.
thanks,
emma
--
Emma Jane Hogbin
I18N Coordinator, The Linux Documentation Project
www.tldp.org
--> -->
<type 'exceptions.IOError'> | Python 2.5.2: /usr/bin/python Fri Jul 5 08:34:26 2024 |
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/opt/ezmlm-browse-0.20/main.py in main() |
424
|
425 if path is not None:
|
426 main_path(path)
|
427 else:
|
428 main_form()
|
global main_form = <function main_form at 0x8f49c6c> |
/opt/ezmlm-browse-0.20/main.py in main_form() |
378 except ImportError:
|
379 die(ctxt, "Invalid command")
|
380 module.do(ctxt)
|
381
|
382 def main():
|
module = <module 'commands.showmsg' from '/opt/ezmlm-browse-0.20/commands/showmsg.pyc'>, module.do = <function do at 0x8fb2d14>, global ctxt = {'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'} |
/opt/ezmlm-browse-0.20/commands/showmsg.py in do(ctxt={'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}) |
18 write(html('msg-pager') % ctxt)
|
19 write('<hr>')
|
20 sub_showmsg(ctxt, ctxt[MSGNUM])
|
21 write('<hr>')
|
22 write(html('msg-pager') % ctxt)
|
global sub_showmsg = <function sub_showmsg at 0x8f491ec>, ctxt = {'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, global MSGNUM = 'msgnum' |
/opt/ezmlm-browse-0.20/globalfns.py in sub_showmsg(ctxt={'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msgnum=8711) |
229 format_timestamp(ctxt, ctxt)
|
230 write(html('msg-header') % ctxt)
|
231 rec_showpart(ctxt, msg, 0)
|
232 write(html('msg-footer') % ctxt)
|
233 ctxt.pop()
|
global rec_showpart = <function rec_showpart at 0x8f491b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msg = <email.message.Message instance at 0x8fd0d4c> |
/opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8fd0d4c>, partnum=1) |
205 else:
|
206 for p in part.get_payload():
|
207 partnum = rec_showpart(ctxt, p, partnum+1)
|
208 else:
|
209 write(html('msg-sep') % ctxt)
|
partnum = 1, global rec_showpart = <function rec_showpart at 0x8f491b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, p = <email.message.Message instance at 0x8fd0f6c> |
/opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8fd0f6c>, partnum=2) |
208 else:
|
209 write(html('msg-sep') % ctxt)
|
210 sub_showpart(ctxt, part)
|
211 return partnum
|
212
|
global sub_showpart = <function sub_showpart at 0x8f49144>, ctxt = {'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part = <email.message.Message instance at 0x8fd0f6c> |
/opt/ezmlm-browse-0.20/globalfns.py in sub_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 10, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8fd0f6c>) |
164 type = ctxt[TYPE] = part.get_content_type()
|
165 ctxt[FILENAME] = part.get_filename()
|
166 template = html('msg-' + type.replace('/', '-'))
|
167 if not template:
|
168 template = html('msg-' + type[:type.find('/')])
|
global template = <function template at 0x8f41e9c>, global html = <function html at 0x8f41ed4>, type = 'application/pgp-signature', type.replace = <built-in method replace of str object at 0x8fd6330> |
/opt/ezmlm-browse-0.20/globalfns.py in html(name='msg-application-pgp-signature') |
40
|
41 def html(name):
|
42 return template(name + '.html')
|
43
|
44 def xml(name):
|
global template = <function template at 0x8f41e9c>, name = 'msg-application-pgp-signature' |
/opt/ezmlm-browse-0.20/globalfns.py in template(filename='msg-application-pgp-signature.html') |
31 except IOError:
|
32 if not _template_zipfile:
|
33 _template_zipfile = zipfile.ZipFile(sys.argv[0])
|
34 try:
|
35 f = _template_zipfile.open(n).read()
|
global _template_zipfile = None, global zipfile = <module 'zipfile' from '/usr/lib/python2.5/zipfile.pyc'>, zipfile.ZipFile = <class zipfile.ZipFile at 0x8edaa7c>, global sys = <module 'sys' (built-in)>, sys.argv = ['-c', '/opt/ezmlm-browse-0.20'] |
/usr/lib/python2.5/zipfile.py in __init__(self=<zipfile.ZipFile instance at 0x8fd0fcc>, file='-c', mode='r', compression=0, allowZip64=False) |
337 self.filename = file
|
338 modeDict = {'r' : 'rb', 'w': 'wb', 'a' : 'r+b'}
|
339 self.fp = open(file, modeDict[mode])
|
340 else:
|
341 self._filePassed = 1
|
self = <zipfile.ZipFile instance at 0x8fd0fcc>, self.fp = None, builtin open = <built-in function open>, file = '-c', modeDict = {'a': 'r+b', 'r': 'rb', 'w': 'wb'}, mode = 'r' |
<type 'exceptions.IOError'>: [Errno 2] No such file or directory: '-c'
args =
(2, 'No such file or directory')
errno =
2
filename =
'-c'
message =
''
strerror =
'No such file or directory'