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

Re: Priorities



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 <aj@humbug.org.au> <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: pgpRosTjdUlmv.pgp
Description: PGP signature


Reply to: