[Python-Dev] [Python-3000] Reminder: last alphas next Wednesday 07-May-2008
Guido van Rossum
guido at python.org
Fri May 2 03:55:56 CEST 2008
On Thu, May 1, 2008 at 5:03 PM, <glyph at divmod.com> wrote:
> On 11:45 pm, guido at python.org wrote:
>
> > I like this, except one issue: I really don't like the .local
> > directory. I don't see any compelling reason why this needs to be
> > ~/.local/lib/ -- IMO it should just be ~/lib/. There's no need to hide
> > it from view, especially since the user is expected to manage this
> > explicitly.
> >
>
> I've previously given a spirited defense of ~/.local on this list (
> http://mail.python.org/pipermail/python-dev/2008-January/076173.html ) among
> other places.
>
> Briefly, "lib" is not the only directory participating in this convention;
> you've also got the full complement of other stuff that might go into an
> installation like /usr/local. So, while "lib" might annoy me a little, "bin
> etc games include lib lib32 man sbin share src" is going to get ugly pretty
> fast, especially if this is what comes up in Finder or Nautilus or Explorer
> every time I open a window.
Unless I misread the PEP, there's only going to be a lib subdirectory.
Python packages don't put stuff in other places AFAIK.
On the Mac, the default Finder window is not your home directory but
your Desktop, which is a subdirectory thereof with a markedly public
name. In fact, OS X has a whole bunch of reserved names in your home
directory, and none of them start with a dot. The rule seems to be
that if it contains stuff that the user cares about, it doesn't start
with a dot.
> If it's going to be a visible directory on the
> grounds that this is a Python- specific thing that is explicitly *not*
> participating in a convention with other software, then please call it
> "~/Python" or something.
Much better than ~/.local/ IMO.
> Am I the only guy who finds software that insists on visible, fixed files
> in my home directory rude? vmware, for example, wants a "~/vmware"
> directory, but pretty much every other application I use is nice enough to
> use dotfiles (even cedega, with a roughly-comparable-to- lib "applications
> I've installed for you" folder).
The distinction to my mind is that most dot files (with the exception
of a few like .profile or .bashrc) are not managed by most users --
the apps that manage them provide an APIs for manipulating their
contents. (Sort of like thw Windows registry.) Non-dot files are for
stuff that the user needs to be aware of.
I'm not sure where Python packages fall, but ISTM that this is
something a user must explicitly choose as the target of an installer.
The user is also likely to have to dig through there to remove stuff,
as Python package management doesn't have a way to remove packages.
> Put another way - it's trivial to make ~/.local/lib show up by symlinking
> ~/lib,
That's not the same thing at all.
> but you can't make ~/lib disappear, and lots of software ends up
> looking at ~.
But what software cares about another file there? My home directory is
mostly a switching point where I have quick access to everything I
access regularly.
--
--Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-Dev
mailing list