🍓 lipu pi jan noa

dotfiles

no thank you

dotfiles are a bug.

well, that's not really true, anymore. they started as a bug, but we're past that now.

it doesnt matter anyway, because regardless, theyre a mess. inconsistent locations make transfering data difficult. whats important, what isnt? why am i dragging around an opaque binary several megabytes in size?

i have a system which would probably make a lot of people quite disapproving.

export XDG_CONFIG_HOME=$HOME/etc
export XDG_DATA_HOME=$HOME/prog
export XDG_CACHE_HOME=$XDG_DATA_HOME

stick junk in ~/prog, and things i want to keep in ~/etc. does this work? sometimes. the issue is that a lot of programs ignore, this, and a lot hardcode ~/.config. neither of which i want. what can i do?

$ chmod -222 $HOME

good start. no more dots in my home. but this will break quite a few things. some things wont run, like certain browsers. other things will give warnings all the time, like vim (i dont use vim often enough to work out how to stop this).

export SCREENRC=$XDG_CONFIG_HOME/screen
export GNUPGHOME=$XDG_CONFIG_HOME/gpg
export MAILRC="$XDG_CONFIG_HOME/mailrc"
export MH="$XDG_CONFIG_HOME/mh/config"

thats an excerpt of my ~/.profile (which unfortunately is quite difficult to move). a lot of programs have environment variables for things like that.

others dont, and you have to use a command line flag to change the location.

#!/usr/bin/env sh

/usr/bin/ssh -F "$XDG_CONFIG_HOME/ssh/config" "$@"

this is a script `ssh' i have on my path. that's probably bad practice, but it does what i want. i have quite a few of these.

its not a great situation. slowly im doing less configuring, but theres always going to be some. for now, i can cope with copying ~/etc around and ln'ing my profile to ~/.profile.

thats all,

stay wonderful ~

←back to the archive