I don’t like the mess some software makes when it install in my system so I want to move it to a more appropriate place.
My questions are:
1- Where is the most appropriated directory for this? (some hidden folder made with this purpose, I thought linux had something like this as a standard)
2- How I move it without breaking anything?
The appropriate directory's are the XDG Base Directory, check this page on arch wiki to move them correctly. You can also use xdg-ninja and it will scan for these extra directories on your $HOME and tell you what you need to do to move them to their appropriate location or not if these directories are hardcoded or cannot be moved.
~/go
is created when compiling go programs, you can change it's location with the GOPATH environment variable to something likeGOPATH=$HOME/.local/go
, and moving the directory there.Never seen
~/perl5
, could you provide the output ofperl -V
Don't know about perl but for go you need to look up setting gopath like here https://stackoverflow.com/questions/10838469/how-to-compile-go-program-consisting-of-multiple-files/61793820#61793820
cool, thanks!
I see syncthing; I comment this.
OK
RE Go: Others have already mentioned the right way, thought I'd personally prefer
~/opt/go
over what was suggested.
RE Perl: To instruct Perl to install to another directory, for example to
~/opt/perl5
, put the following lines somewhere in your bash init files.export PERL5LIB="$HOME/opt/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}" export PERL_LOCAL_LIB_ROOT="$HOME/opt/perl5${PERL_LOCAL_LIB_ROOT:+:${PERL_LOCAL_LIB_ROOT}}" export PERL_MB_OPT="--install_base \"$HOME/opt/perl5\"" export PERL_MM_OPT="INSTALL_BASE=$HOME/opt/perl5" export PATH="$HOME/opt/perl5/bin${PATH:+:${PATH}}"
Though you need to re-install the Perl packages you had previously installed.
[This comment has been deleted by an automated system]
- You don't 🙃
/s Sorry, I had to 🤣
lol
- usually ~/.config/PROGRAM_NAME/
You probably want to look into $XDG_CONFIG_HOME and the freedesktop spec documentation if you are interested in more of where these standards come from:
https://specifications.freedesktop.org/basedir-spec/latest/ar01s02.html(and more generally)
Thanks!