[Python-Dev] [Python-3000] Reminder: last alphas next Wednesday 07-May-2008 (original) (raw)

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