Idiocy of unix's dot file names: .svn .htaccess .DS_Store …

,

Here's a nice article. The author modified Mac Finder to not generate .DS_Store: 〔Death to .DS_Store By Spencer Nielsen. @ www.aorensoftware.com…

Mac OS X also creates other junk, example:

.DS_Store
.localized
.FBCIndex
.FBCLockFolder
.FBCSemaphoreFile
Desktop DB
Desktop DF

and Windows used to create Thumbs.db among others.

Who started all this f���? Its your beloved unix, folks. Example:

.bash_history
.bash_profile
.bashrc
.cache
.config
.dmenu_cache
.dmrc
.emacs
.esd_auth
.eshell
.fontconfig
.gconf
.gegl-0.0
.gimp-2.6
.gksu.lock
.gnome2
.profile
.viminfo
.xinitrc
…

.htaccess
.cvs
.svn
emacs~
…

These are headaches in many ways. Particularly nasty are those that litters in every directory it touches (⁖ {.cvs, .svn, emacs_backup~, #emacs#, .htaccess, .DS_Store, …}) When you use {rsync, unison, grep, …} you have to exclude a gazillion files/dirs by some long unreadable regex (and each of the shell tool uses a incompatible syntax and char escape mechanisms). Or, when you transfer files across network or by {zip, usb}, you get a bunch of garbage. In essence, the problem is that these programs create side-effects for their own convenience, not user's convenience. It stem from certain unix philosophy.

Proper solution is for the programs to set a designated folder to store their stuff. Either as a OS convention of one single designated folder per user (⁖ Modern Windows's %HOMEPATH%\AppData\ or Mac's ~/Library/). If the OS doesn't provide such a dir, then the app should set a designated folder for it, not litter random files in every folder it touches.

Unix do this f��� up of course because it is convenient at the moment. That's the life story of unix. It's super convenient for the lazy app developer, because he doesn't have to deal with one extra directory, dir mapping, data syncing issues, etc. (⁖ .cvs.) And you just brain wash your users to feel that's natural way of life.

“I liken starting one's computing career with Unix, say as a undergraduate, to being born in East Africa. It is intolerably hot, your body is covered with lice and flies, you are malnourished and you suffer from numerous curable diseases. But, as far as young East Africans can tell, this is simply the natural condition and they live within it. By the time they find out differently, it is too late. They already think that the writing of shell scripts is a natural act.” — Ken Pier, Xerox PARC (≈1980s?)

See also: Rob Pike on the Origion of unix Dot File Names.

Here's some useful scripts and tutorials:

Here's some unix hatred articles:

Did svn Stop Creating .svn Files?

did recent svn version finally removed the .svn dirs littered in subdirs? or am i smoking something?

Yes, starting with svn 1.7, released on . http://subversion.apache.org/docs/release-notes/1.7.html

The unix f���ers, after 30 years, finally realized their wrong doing.

blog comments powered by Disqus