From: Grant Miner <mine0057@mrs.umn.edu>
To: reiserfs-list@namesys.com
Subject: Re: OT: package scripts (was Re: software packaging and ReiserFS v4)
Date: Fri, 05 Sep 2003 16:37:12 -0500 [thread overview]
Message-ID: <3F590208.5060900@mrs.umn.edu> (raw)
In-Reply-To: <20030905203950.GA12183@rahul.net>
I'm excited about your packaging system. I hope you make something very
useful. Here are some ideas I have had about packaging and operating
system design; they might be interesting to you. Comments, suggestion,
other ideas are wanted.
Ideally, each user's home dir would mirror the system directories (i.e.
users have their own bin, share, lib and var). This way, users can
install a package (and it would be local to them) and root could install
the exact same package (and it would be global to the system). Right
now, on every distribution, only root can install packages; this is a
place where a new packaging system could have huge advantages.
Ideally, users' directories would get unioned to system's directories
(in their namespace) upon login, so / would be their "home", /bin would
be system's bin plus user's bin, etc. This way programs ALWAYS know the
"right path" to everything (which has always been an annoying problem in
Unix).
Packages contain file sets only. This avoids side-effects of scripts.
Well-designed programs do not need pre- and post-install scripts. If
you want to install apache, say as www user, root would create that
user, switch users to www, and then install apache as www.
/sbin would go away; all sbin programs go to appropriate bin directories
(because non-root users often need programs like fdisk, etc).
/etc, /bin, /lib and /boot all have the files only necessary for bootup.
Users can have an rc.d script directory in /etc (who gets to have rc.d
scripts would be up to the sys admin) for launching services upon
runlevel changes. Perhaps it would be better to put these dirs as
/boot/bin, /boot/lib, etc, and use /bin for system-wide bin (i.e., like
the present /usr/bin).
/share/etc-defaults would contain default configurations, instead of
cluttering up /etc (which is just stuff needed for booting and launching
services). /share/etc-defaults could be mounted below user's /etc.
(optional) /share/etc-mandatory could be mounted above user's /etc, for
settings users should not be able to change (sometimes called "lock-down").
Environment variables are replaced by files, ala Plan 9. Instead of
$EDITOR have /etc/default-applications/text-editor, web-browser, etc.
TIdeally no programs should use environment variables for configuration;
their existence is not obvious to the user, and neither is their
possible values. (Shell scripts of course would still use env vars.)
Programs should watch their configuration files for changes, to achive
that instant-apply effect.
I'm most excited for that once we have a stable Reiser4 system with
files as dirs, it should be easy to write a universal configurator tool
using files as keys.
next prev parent reply other threads:[~2003-09-05 21:37 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-09-03 16:54 software packaging and ReiserFS v4 Bennett Todd
2003-09-03 21:18 ` Jürgen Botz
2003-09-03 21:37 ` Bennett Todd
2003-09-03 21:52 ` Jürgen Botz
2003-09-04 1:28 ` Bennett Todd
2003-09-04 5:05 ` Jeffrey Yasskin
2003-09-03 23:11 ` Grant Miner
2003-09-05 18:15 ` Grant Miner
2003-09-05 19:44 ` Mike Fedyk
2003-09-05 20:18 ` Ragnar Kjørstad
2003-09-05 20:35 ` Mike Fedyk
2003-09-05 20:39 ` OT: package scripts (was Re: software packaging and ReiserFS v4) Bennett Todd
2003-09-05 21:37 ` Grant Miner [this message]
2003-09-08 9:49 ` software packaging and ReiserFS v4 Nikita Danilov
2003-09-08 10:52 ` Hans Reiser
2003-09-05 7:08 ` Richard Heycock
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3F590208.5060900@mrs.umn.edu \
--to=mine0057@mrs.umn.edu \
--cc=reiserfs-list@namesys.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.