mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Nathan McSween <nwmcsween@gmail.com>
To: musl@lists.openwall.com
Subject: Re: _PATH_LASTLOG
Date: Tue, 03 Dec 2013 13:00:26 -0800	[thread overview]
Message-ID: <529E466A.8050907@gmail.com> (raw)
In-Reply-To: <CACCP0GqEr+e8OQHENzeNOCfzguF+EY-FkRB-t5hTMf=jT4=SQA@mail.gmail.com>

You can implement this with bind mounts and containers as well, maybe 
when Linux gets union mounts within the vfs this can be done cleanly 
and per container.

On Tuesday, December 03, 2013 12:51:07 PM, Raphael Cohn wrote:
> I've always believed that the filesystem itself should be used as a
> packaging system...
>
> This is EXACTLY what I want to do. Each package is its own FHS...
>
> Raphael Cohn
> Chief Architect, stormmq
> Co-Chair, OASIS MQTT Standard
> Secretary, OASIS AMQP Standard
> raphael.cohn@stormmq.com
> +44 7590 675 756
>
> UK Office:
> Hamblethorpe Farm, Crag Lane, Bradley BD20 9DB, North Yorkshire, United
> Kingdom
> Telephone: +44 845 3712 567
>
> Registered office:
> 16 Anchor Street, Chelmsford, Essex, CM2 0JY, United Kingdom
> StormMQ Limited is Registered in England and Wales under Company Number
> 07175657
> StormMQ.com
>
>
> On 3 December 2013 20:44, Laurent Bercot <ska-dietlibc@skarnet.org> wrote:
>
>>
>>  One problem I'd like to solve is making a way for users to override
>>> the system resolv.conf;
>>>
>>
>>  The s6-dns client library uses the DNSCACHEIP environment variable for
>> this: if it contains a list of DNS caches, this list will override the
>> /etc/resolv.conf-provided one. (The idea comes from djbdns, but has been
>> extended to a full list instead of a single cache address.)
>>  Same thing with the DNSQUALIFY environment variable, which can have
>> a list of suffixes that overrides resolv.conf. (djbdns had a complex
>> rules-rewriting-based qualification mechanism that nobody ever used,
>> so the simpler approach was easier and better.)
>>
>>  Maybe musl could use the same approach: environment variables are a
>> reasonable place for hardcoded-path overrides. But it has to be balanced
>> against namespace pollution.
>>
>>
>>
>>  This seems like a good foundation for a package system. I've looked
>>> into Nixos before but never really tried it out, and got the
>>> impression that the concept was very good but it might not be the best
>>> implementation. So something similar to Nixos sounds interesting. :-)
>>>
>>
>>  I've always believed that the filesystem itself should be used as a
>> packaging system: every package should have its own system user and reside
>> in its own directory, and /usr/bin and friends should only contain
>> symlinks. Native isolation via Unix permissions, atomic package
>> replacement,
>> easy package management. But for some reason, people seem absolutely
>> reluctant to do this.
>>
>>
>>
>>  The philosophy used in musl, which is somewhat different from the sort
>>> of philosophy you might have when designing a new distribution, is not
>>> to invent new policy but to avoid policy and build on existing,
>>> already-widely-accepteed policy when it's unavoidable.
>>>
>>
>>  I don't agree with all decisions in musl, but this one I can definitely
>> stand for.
>>
>>
>>
>>  There are LOTS of ways one could extend hostname lookups, ranging from
>>>  NSS modules to
>>> hosts.d and resolv.d, but rather than trying to support everything
>>> imaginable (result: bloat and serious security considerations) in
>>> libc, the musl approach to hostname lookup is that libc contains the
>>> basics that are suitable for most/all simple systems, and anything
>>> more advances can be provided by an external daemon running on
>>> localhost that speaks DNS protocol and provides whatever lookup
>>> semantics you desire.
>>>
>>
>>  In the DNS case, the flexible - and best, IMNSHO - approach is to run a
>> small local DNS cache on localhost indeed; but the problem is that there's
>> an existing codebase that sometimes insists on clobbering /etc/resolv.conf,
>> which adds to the packaging burden when your purpose is to create or
>> maintain
>> a distribution. Having extension mechanisms at the libc level can help in
>> that situation.
>>
>> --
>>  Laurent
>>
>>
>


  reply	other threads:[~2013-12-03 21:00 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-03 17:44 _PATH_LASTLOG Raphael Cohn
2013-12-03 18:42 ` _PATH_LASTLOG Szabolcs Nagy
2013-12-03 19:09   ` _PATH_LASTLOG Raphael Cohn
2013-12-03 19:54     ` _PATH_LASTLOG Rich Felker
2013-12-03 20:10       ` _PATH_LASTLOG Raphael Cohn
2013-12-03 20:25         ` _PATH_LASTLOG Rich Felker
2013-12-03 20:44           ` _PATH_LASTLOG Laurent Bercot
2013-12-03 20:51             ` _PATH_LASTLOG Raphael Cohn
2013-12-03 21:00               ` Nathan McSween [this message]
2013-12-03 21:05                 ` _PATH_LASTLOG Raphael Cohn
2013-12-03 21:42                 ` _PATH_LASTLOG Rich Felker
2013-12-03 21:38             ` _PATH_LASTLOG Rich Felker
2013-12-03 20:49           ` _PATH_LASTLOG Raphael Cohn
2013-12-03 20:51         ` _PATH_LASTLOG Laurent Bercot
2013-12-03 20:52           ` _PATH_LASTLOG Raphael Cohn
2013-12-03 19:34 ` _PATH_LASTLOG Rich Felker
2013-12-03 19:50   ` _PATH_LASTLOG Raphael Cohn
2013-12-03 20:03     ` _PATH_LASTLOG Laurent Bercot
2013-12-03 20:11       ` _PATH_LASTLOG Raphael Cohn
2013-12-03 20:06     ` _PATH_LASTLOG Rich Felker
2013-12-03 20:18       ` _PATH_LASTLOG Raphael Cohn
2013-12-03 20:30         ` _PATH_LASTLOG Rich Felker

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=529E466A.8050907@gmail.com \
    --to=nwmcsween@gmail.com \
    --cc=musl@lists.openwall.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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).