[openbeosnetteam] Re: our package

"v r" <vreikine@xxxxxxxxx> wrote:
> One of the reasons why Unix has these files in /etc directory is that 
> user 
> files can be located on NFS volume. Or to be more precise, network 
> stack 
> can be started independently of starting user-mode application and 
> even 
> mounting user volumes. I am quite realistic about Haiku being long 
> way 
> before be multiuser system with user home directories located on some 
> distributed FS. Still, if network stack is in kernel, then /beos/
> system/settings 
> should be used, if it's user-mode stack than home/settings should be 
> used 
> with a fallback mechanism. If I understand it correctly Waldemar went 
> through this dilema before with his PPP driver - it has to be started 
> by user 
> but it should perform as kernel-mode driver, hence where to put 
> settings 
> question.

Actually, there is no beos/system/settings directory. But that is only 
part of the problem.
I think that there is no need for such a directory either - the system 
directory itself should only contain the base OS, and no user or system 
settings at all. All components of the OS should come with useful built
-in settings.
Anything else should either go to B_COMMON_SETTINGS_DIRECTORY or, to a 
lesser extent, B_USER_SETTINGS_DIRECTORY. Since we don't have a common 
directory right now, I would vote for adding one, either just a /boot/
config/ folder which contains that stuff or a /boot/common/ folder.

> Besides testing purposes, there is also POSIX compatiblity goal and 
> for 
> that Haiku will need to have /etc directory - will it contain actual 
> files or 
> symbolic links is a different story.

/etc is a symbolic link right now, and we probably can't remove it 
either. The point is, that I don't think this directory makes a lot of 
sense. I would better like to separate application data, and settings.
I would suggest to add two new kind of folders to any BeOS system:
- B_{COMMON|USER}_DATA_DIRECTORY for most of the stuff which you can 
now find in /etc (keymaps, timezones, etc.) - if you have a better name 
for that, please tell :)
The other options I would have are "shared", "database", "storage", ... 
- but I think of these, "data" is best.
- B_{COMMON|USER}_CACHE_DIRECTORY for web and other cache data 
(persistent but non-critical data)

Any comments or critics? I would really like to see these directories 
with Haiku R1.

> Had posibility of using attributes for those settings been already 
> discussed? 
> I am not following all discussions here.

It was discussed, but I personally don't like this a lot; it doesn't 
give you anything to put this into attributes. On the contrary, it 
hides the settings a bit more from the user.
I would prefer simple text config files, i.e. driver_settings style (as 
used by Waldemar for his PPP stack, too).

> 'protocols', 'networks', resolve.conf' files are quite small and can 
> easily fit into 
> a BMessage, 'services' is not that small but I think it's unnecessary 
> big on 
> Unix, usually a very small subset of listed services is used.

I don't agree with the BMessages here either, but I agree that we 
probably don't need the "services" bloat :)

Bye,
   Axel.


Other related posts: