git-annex/standalone/linux/skel
Joey Hess 12a248f823
move cache cleanup to avoid a race
This should fix doc/bugs/standalone_runshell_can_race_and_fail_to_remove___96____126____47__.cache__47__git-annex__47__locales__47____96___dirs
where 2 runshells were running and the second one tried to clean up
LOCPATH while the first one was still populating it.

By moving the cleanup until after LOCPATH is populated, we guarantee
it's populated, so don't need to worry about such a race with another
process populating our same LOCPATH.
2020-10-05 14:07:27 -04:00
..
git Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
git-annex Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
git-annex-shell Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
git-annex-webapp Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
git-receive-pack Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
git-shell Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
git-upload-pack Revert "Unset IFS in shell scripts in the linux standalone build and OSX app." 2020-07-24 14:33:13 -04:00
README Include git-receive-pack, git-upload-pack, and git wrappers in the Linux standalone build, and OSX app, so they will be available when it's added to PATH. 2013-12-24 16:28:10 -04:00
runshell move cache cleanup to avoid a race 2020-10-05 14:07:27 -04:00

You can put this directory into your PATH, or symlink the programs in this
directory to anyplace already in your PATH, and use git-annex the same
as if you'd installed it using a package manager.

Or, you can use the runshell script in this directory to start a shell
that is configured to use git-annex and the other utilities included in
this bundle, including git, gpg, rsync, ssh, etc.

This should work on any Linux system of the appropriate architecture.
More or less.


How it works: This directory tree contains a lot of libraries and programs
that git-annex needs. But it's not a chroot. Instead, runshell sets a lot
of environment variables to cause files from here to be used, and a shim
around the binaries arranges for them to be run with the libraries in here.

It shouldn't even be dependent on the host system's glibc libraries.
All that's needed is a kernel that supports the glibc included in this
bundle.