[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Perl and other issues



Debian developers,

I recently installed Debian 0.91 thanks to a disk crash.  I must say that 
it's the cleanest system I've used yet, thanks to careful planning by both
the Debian developers and the filesystem standard people.  Kudos to all!

That said, I have several topics to address, so bear with me.

1) The Perl package includes an incorrect perl binary and does not include
   two binaries that it should.  The problem with /usr/bin/perl can be 
   demonstrated by running it through the perl test suite; it will fail on
   the pipe test.  This is caused by an incorrect signal list, and affects
   much more than pipes.

   Also, because the Linux kernel disallows setuid scripts because of security
   problems, perl needs to be compiled for setuid emulation.

   Lastly, for non-STDSTDIO systems, the -T and -B operators (test for text
   or binary files) fail for non-lseekable files.  I have a patch to fix
   this.

2) The hostname and domainname are not set separately.  Installing the hostname
   from net-0.32, symlinking /bin/domainname to hostname, splitting the host.domain
   name in /etc/HOSTNAME into host in /etc/HOSTNAME and domain in /etc/DOMAINNAME,
   and changing the hostname line in /etc/rc.d/rc.inet1 to:

   # Set hostname and domainname
   /bin/hostname `cat /etc/HOSTNAME`
   /bin/domainname `cat /etc/DOMAINNAME`

   is one possible solution.

3) If you don't install the xtralib package (or whatever it's called) to get libg,
   compiling with -g won't work.  If xtralib isn't installed, /usr/lib/libg.a
   should be a symlink to /usr/lib/libc.a (or similarly with lib[cg].sa).
   I'm not sure of the utility of a real libg.a without libc source online anyway.

4) selection is resident in /usr/bin but is invoked (in rc.M) from /usr/sbin.
   One of these should be altered.

5) If the idea of rewriting dpkg in perl is still alive, I may be able to
   help: I have a working curseperl using native Linux (BSD) curses.  I also
   have a much more featureful ncurseperl using ncurses and the panel(3)
   library for overlapping windows and menus.  I'm using this for my
   (temporarily on-hold) ext2fsperl dfs debugger/undelete/etc project.

6) I have a slightly primitive perl script that will take a list of files
   and generate a package from it.  I hear that development on packaging
   tools is already going on, so I will consider this a stopgap measure.
   However, if there is enough interest, I could clean this up and release
   it when I have some spare time to fill the gap until the 'real thing' is
   released.  

7) I wasn't yet on the debian-devel list when I mailed my package dependency
   letter (due to a listserv bug, I think).  So, to recap, I think that
   each package should include a list of packages upon which it depends
   instead of the current scheme of knowing which packages depend on it.
   Did this suggestion receive any comments?  If so, please restate them
   for me.


Upgrades I think would be helpful and why:
------------------------------------------

(ar, gas, gprof, ld, nm, objdump, ranlib, size, strip)
from binutils-1.9l.3-as-2.2l.tar.gz    -  support for QMAGIC binaries

/sbin/arp /bin/hostname /bin/domainname /sbin/ifconfig
/bin/netstat /sbin/route /sbin/slattach
from net-0.32                          - greater functionality and domainname
                     
/usr/sbin/syslogd /usr/sbin/klogd
from sysklogd-1.1                      - fixes "loose cannons" bug in syslogd


New packages I desire (and would be willing to maintain):
---------------------------------------------------------
LISP development (CLISP)
Communications (term, sz/rz/sb/rb/sx/rx, etc.)
Archivers (zip/unzip, zoo, unarj)
Sound (/dev/*, midi player, mod player, Lsox for playback and
       conversion, wavrec for recording, mixer and aumix for
       mixing).
Math (new category) with packages:
   Calc 2.02b for Emacs 19 (can plot with gnuplot)
   Maxima (symbolic math, can plot into PostScript)
   gnuplot for svgalib and X11
   

Packages I can make available in contrib (not ready for mainstream):
--------------------------------------------------------------------
GNU Pascal Compiler 2.5.7 BETA  (already uploaded to contrib)
Perl5 alpha 6*  (latest version of Larry's new OO Perl, passes all
                 regression tests, runs 25% faster than Perl4, and
                 supports MANY new features)


* Perl5 has no Configure support yet, so it requires some effort to compile
  under Linux.  This package is primarily useful for those who wish to
  experiment with Perl5 under Linux but don't have the time to "port" it.
  My port includes all the features of Perl5 except SDBM support and
  dynamic loading of .o files.  I'll be adding the latter in the future.

Misc:
-----
- strace(1) for system call tracing should be in one of the devel packages.
- tic/untic should be included with ncurses; panel(3) should be added as 
  well.
- bash and ftp can be linked with the librl-1.2 shared readline library.
  This saves space and increases ftp's functionality.  
- for those of us using the cluster patches, update/bdflush should be started
  *before* fsck -A is called, or buffers won't be flushed optimally and
  the kernel will complain.  Some care must be taken to ensure that it
  is restarted after a multi-user -> single-user -> multi-user shutdown
  sequence.

Again, I am very impressed with Debian 0.91 and am almost happy my hard
drive crash forced me to change from Slackware.  This letter lists almost
every change I've made to my system since installing it Friday.  I doubt
I'll have to do much more to be completely satisfied with it.  Debian
even got the /dev/hda permissions right (under Slackware, it was world 
readable!).




Reply to: