discuss: getting sponsorship and marketing LDP


Previous by date: 7 Jan 2004 21:43:20 -0000 Re: getting sponsorship and marketing LDP, Guylhem Aznar
Next by date: 7 Jan 2004 21:43:20 -0000 Re: getting sponsorship and marketing LDP, Guylhem Aznar
Previous in thread: 7 Jan 2004 21:43:20 -0000 Re: getting sponsorship and marketing LDP, Guylhem Aznar
Next in thread: 7 Jan 2004 21:43:20 -0000 Re: getting sponsorship and marketing LDP, Guylhem Aznar

Subject: Re: getting sponsorship and marketing LDP
From: Guylhem Aznar ####@####.####
Date: 7 Jan 2004 21:43:20 -0000
Message-Id: <20040106084009.06f516c4.athome@externe.net>

Hello,

On Sat, 13 Dec 2003 15:49:36 -0800
David Lawyer ####@####.#### wrote:
> It's very sad to realize that the LDP has been coopted to distribute
> documentation for non-free software.  The GNU project's goal is to
> create all the software people need as free software.  Stallman said
> something to the effect that if one can't run their business with free
> software, they should find another business.  This was after Guylhem
> introduced me to Stallman at a Linux Expo in Montreal.  But I think GNU
> documentation goes too far by not even allowing the discussion of
> non-free software.

I share your opinion. I think we should be free to discuss non-free software,
but that we should not distribute documentation focusing on non free software.
If the software is not free, the authors can certainly take care of their own
documentation.

Personally, I would like to see these documents removed or at least distributed
in a separate non-free tree (à la debian), but I understand most people feel
otherwise.

> In general, the companies that sell the software should also document
> it.  Volunteers shouldn't be doing it.  Why wouldn't a volunteer prefer
> to document free software instead?

I wholeheartely agree.

> The LDP should not become an organization that companies utilize fo
> their own personal gain by coopting LDP to distribute their documentation
> for free and thus promote their non-free software.

I think we should not accept companies funds unless we can agree with them what
the money will be used for and if it doesn't go against our principles.
Accepting money to fund non existing documentation for free software, or to fund
documentation review/enhancement is ok, accepting money to write documentation
on non free software is not.

In my wildest dreams, volunteers here would receive money from sponsors to keep
writing their documentation. I'm still hoping some e-gov free software
initiative in europe will set apart some budget for that in the future (why not?
they pay commercial companies to write non free documentation!)

It's only a matter of ethics- we should explain what we do, which money we
accept and why we do it.

Best regards,
Guylhem

-- 
####@####.#### ####@####.####
http://externe.net/geekcode http://externe.net/photos http://externe.net/zaurus
GPG: 92EB37C1 DD11C9C9 20519D01 E8FA1B11 42975AF7     http://externe.net/pubkey

--> -->
 
 
<type 'exceptions.IOError'>
Python 2.5.2: /usr/bin/python
Fri Jul 5 09:24: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/<string> in ()
 /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 0x8f4cc6c>
 /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 0x8fc4374>, global ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}
 /opt/ezmlm-browse-0.20/commands/showmsg.py in do(ctxt={'cmd': 'showmsg', 'threadidx': 47, '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 0x8f4c1ec>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, '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': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msgnum=6389)
  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 0x8f4c1b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msg = <email.message.Message instance at 0x8fdd9cc>
 /opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8fdd9cc>, 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 0x8f4c1b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, p = <email.message.Message instance at 0x8fddccc>
 /opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8fddccc>, 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 0x8f4c144>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part = <email.message.Message instance at 0x8fddccc>
 /opt/ezmlm-browse-0.20/globalfns.py in sub_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8fddccc>)
  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 0x8f44e9c>, global html = <function html at 0x8f44ed4>, type = 'application/pgp-signature', type.replace = <built-in method replace of str object at 0x8fe3870>
 /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 0x8f44e9c>, 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 0x8edda7c>, 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 0x8f5aecc>, 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 0x8f5aecc>, 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'