discuss: New HOWTO: minit


Previous by date: 13 Oct 2004 11:53:27 -0000 Re: New HOWTO: minit, Rahul Sundaram
Next by date: 13 Oct 2004 11:53:27 -0000 Re: New HOWTO: minit, Rahul Sundaram
Previous in thread: 13 Oct 2004 11:53:27 -0000 Re: New HOWTO: minit, Rahul Sundaram
Next in thread: 13 Oct 2004 11:53:27 -0000 Re: New HOWTO: minit, Rahul Sundaram

Subject: Re: New HOWTO: minit
From: Nico Schottelius ####@####.####
Date: 13 Oct 2004 11:53:27 -0000
Message-Id: <20041013115301.GA10213@schottelius.org>

Rahul Sundaram [Tue, Oct 12, 2004 at 09:11:11AM -0700]:
> > Hello!
> > 
> > The corrected version of the minit-howto can be
> > found at
> >
> http://nico.schotteli.us/papers/linux/howto/minit-howto/index.html
> > 
> > I would be happy about any critic and/or
> > corrections.
> > 
> 
> Does this break the LSB?

If you ask for my personal opinion I would say "I don't care, as
LSB is nothing one want to use, as the spec of 1.3 and 2.0 have many
points explained to detailled, while others are open like the heaven.",

but that's not your question.

From
http://refspecs.freestandards.org/LSB_2.0.0/LSB-Core/LSB-Core/command.html:

I would say yes: We don't have install_initd.

From
http://refspecs.freestandards.org/LSB_2.0.0/LSB-Core/LSB-Core/iniscrptact.html
they speak about init scripts, which we don't have with minit.

So: yes.

And further on:

http://refspecs.freestandards.org/LSB_2.0.0/LSB-Core/LSB-Core/initsrcinstrm.html
http://refspecs.freestandards.org/LSB_2.0.0/LSB-Core/LSB-Core/initscrcomconv.html
(one of the most senseles parts, as comments should never used to
control program execution. I don't know if they simply saw that they
need dependencies and put it in the first place they could find).


My answer is yes: minit breaks LSB, and that's a real advantage.

> what kind of performance benefits are we expecting here?

Booting up the system (Displaping login:) within 10 seconds
(start counting after kernel starts init) versus 30 or more seconds
with standard debian sysvinit.

> do many people use this system?.

no, it's yet to new. And most people won't, because there is a big
lack of documentation. That's why I wrote this Howto.

> i am curious about its orgins and usage

What do you mean with that?

Nico

P.S.: In the next half hour I'll release v0.2.2 of the Howto, which
answers your questions and has one correction.

-- 
Keep it simple & stupid, use what's available.
Please use pgp encryption: 8D0E 27A4 is my id.
http://nico.schotteli.us | http://linux.schottelius.org

--> -->
 
 
<type 'exceptions.IOError'>
Python 2.5.2: /usr/bin/python
Sat Jul 6 02:03:30 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 0x9018c6c>
 /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 0x9083294>, global ctxt = {'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}
 /opt/ezmlm-browse-0.20/commands/showmsg.py in do(ctxt={'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...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 0x90181ec>, ctxt = {'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, global MSGNUM = 'msgnum'
 /opt/ezmlm-browse-0.20/globalfns.py in sub_showmsg(ctxt={'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msgnum=7974)
  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 0x90181b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msg = <email.message.Message instance at 0x909cf2c>
 /opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x909cf2c>, 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 0x90181b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, p = <email.message.Message instance at 0x90a31ec>
 /opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x90a31ec>, 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 0x9018144>, ctxt = {'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part = <email.message.Message instance at 0x90a31ec>
 /opt/ezmlm-browse-0.20/globalfns.py in sub_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 6, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x90a31ec>)
  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 0x9010e9c>, global html = <function html at 0x9010ed4>, type = 'application/pgp-signature', type.replace = <built-in method replace of str object at 0x90a2838>
 /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 0x9010e9c>, 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 0x8fa9a7c>, 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 0x903244c>, 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 0x903244c>, 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'