debian-boot: This is diverging into a discussion of task- packages. It's
probably reasonable to keep discussion on -policy rather than duplicate it
on both lists, I guess.

On Mon, Oct 09, 2000 at 03:56:15PM -0500, Steve Greenland wrote:
> As far as "mutliple preferred packages", my intent is that such a phrase
> is an oxymoron; the whole *idea* is help the users select one particular
> implementation out of several possibilities. Basically, we'd be saying
> "If you're not sure which {web-server, whatever} to install, try this
> one first."

Well, which of emacs or vi should be the "preferred" editor? Or should
nano, joe, jed, or something else be the preferred editor? Why shouldn't
we say "try emacs & vi, and see what you like, otherwise, choose some
other one"? Why is that worse than saying "try emacs, and see if you
like it, otherwise choose some other one"?

There're technical reasons why we can only recommend one MTA conveniently,
which means we have to limit ourselves to one MTA for people to try by
default, so we do. But there doesn't seem any huge reason to limit other
things to just a single "best" possibility.

> It's not the same as "task packages", because the intent of those (as
> I understand it) is to group various packages that work together. I'm
> also bothered (a little) by the "task-webserver-roxen" (why is there no
> "task-webserver"?), in that it doesn't offer much guidance (because it
> implies the existence of t-w-apache, t-w-boa, etc.).

I don't really understand task packages. I'd assume that they're there
to make it easy for people to do some particular common tasks (setup a
desktop environment, interact with your computer in japanese, play music,
do 3d graphics, program).

It seems to me like it might be bing abused somewhat as an excuse to
advertise particular groups of packages. task-webserver-roxen, and
task-x-window-system come to mind as being more an excuse to group a
bunch of packages together than really focussing on being something
useful for the prospective user, for example. OTOH, "I want a useful X
environment" isn't an unreasonable task.

Actually, going a bit further on that idea.

The *task* is really "usable 2d windowing environment for accessing
programs", it's not kde, or gnome, or xlib, or motif. Is it really
sensible to have the choice between the various windowing toolkits
made here?  Would it be better/possible to have a task-desktop that
included both gnome and kde, and the best apps from both, and just let
the user use them?  Obviously the packager would have to make a choice
amongst xdm, gdm and kdm, but that doesn't seem unreasonably difficult.

Going through the task packages in my available file:

    c-dev, c++-dev, python-dev, tcltk-dev, objc-dev, fortran
        - "i want to program in <foo>"
    debian-devel
        - "i want to create debian packages"
    sgml, tex
        - "i want to write documents in <foo>"
    german, chinese-s, chinese-t, japanese, spanish, polish
        - "i (or some of my users) speak <foo>"
    games
        - "i want to play games on this computer"
    science
        - "i want to do science on this comuter" (this seems a little too
          broad, but maybe no more so than games)
    newbie-help
        -  "i'm a newbie and want to learn about unix" ?

These seem like reasonable "helper" packages, that'll set up your system
to do something relatively complicated, relatively simply:

    dns-server
    news-server             
    imap
    parallel-computing-dev 
    parallel-computing-node
    database-pg (perhaps "sql-database" would be a better name)
    samba (a more generic name would be more consistent, but maybe not better)

We also have a few "my computer is a little different to others" task- packages,
which probably make some sense:

    laptop 
    dialup 
    dialup-isdn         

I don't see a point to:

    python
        - how do I know whether I'm going to write "complicated" apps or not?
    gnome-games
        - i just want to play games, i don't care what toolkit they use
    tcltk
        - how do i kow if i want to run tcltk programs? debian packages will
          install it if they need it, presumably the lsb will do likewise,
          and anything i buy will tell me what i need to install, surely?
    debug
        - if I'm going to be programming, I'm probably going to be debugging.
          if I'm not programming why would i be debugging?
    devel-common            
        - C and C++ and Objective C are already covered with the specific
          tasks, what's the point?
    doc
        - eh?? i have to go out of my way to get "General documentation"??
    python-web
        - a general "i want to work on interactive web sites" task would make
          sense to me (one that included, presumably, a free java, and zope,
          and tomcat, and tools to do cgi in perl and python and whatever else)
          but just for pythn? "apt-get install zope" if that's what you want.

The following seem to be just random collections of packages:

    python-bundle
    x-window-system
    gnome-apps
    gnome-net

Less clear to me are:

    sgml-dev
        - what does it mean to be an SGML "developer" rather than an
          author? making up new SGML dtd? writing programs that interpret
          SGML? Is this really that separate from task-sgml?

    gnome-desktop
    x-window-system-core
        - a task-desktop would make more sense to me here

We could have some extra tasks:

        * authoring HTML pages (somewhat different to web development
          in the python-web sense)

        * browsing the web (without having to download plugins all the
          time, having java support, etc)

        * writing Word documents? word processing in general? (cf the
          tex and sgml tasks)

        * spreadsheets? databases (the GUI side, not the SQL
          side)? office apps (appointments, contacts, time monitoring)?

        * project management (revision control, design, bug tracking; this
          may be what the -devel-common task is intended for, it might
          be nice to rename it if so)

        * strange languages (prolog, lisp, mercury, scheme, intercal...)

        * perl-dev? php-dev?

        * setting up an LDAP-controlled network (install a server task on
          one or more machines, and clients on all the others, answer
          the debconf questions and you've got yourself a easily admined
          multi-user network where people can login on various systems,
          share their home directories, and what not

        * web-server? irc-server? firewall?

        * setting up a local printer? ("my computer has a modem/is a laptop",
          vs "my computer has a printer"?)

        * dialup-cable-modem? dialup-adsl?

So all of this indicates to me that:

        a) There are a bunch of task- packages that aren't really useful.

        b) We can probably split tasks into three areas:

                * Install enough packages to satisfy most people who might
                  say "I want to do <..> with my computer"

                * Help someone set up some complicated service

                * Help someone make use of some hardware they have attached
                  to their computer, in a fairly generic way.

I don't see any *good* reason for task- packages to conflict, though,
in the above, most task packages should be completely independent.

So, going back to what I've said previously (which is probably
completely out of the blue for -boot folks, but what the hey), I think
it's reasonable to expect the -task packages and everything they depend
on to be standard (or above optional, anyway), and to satisfy all the
policy and so forth that goes with that.

Cheers,
aj

--
Anthony Towns <[EMAIL PROTECTED]> <http://azure.humbug.org.au/~aj/>
I don't speak for anyone save myself. GPG signed mail preferred.

  ``We reject: kings, presidents, and voting.
                 We believe in: rough consensus and working code.''
                                      -- Dave Clark

Attachment: pgpLhB4DmST44.pgp
Description: PGP signature

Reply via email to