summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-03-20 14:01:05 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-03-20 14:01:05 -0400
commitf0ddd43b17443d9a0f9abe55e787a6235c5bdd49 (patch)
treeb239f9ebd3551214f7fb9a8c8d2fe80ed8e840fb
parent9ae1750c68ca5645e60631c66d70ad561c0f9eca (diff)
reorganize osx app, so it can be put in PATH
Move all the binaries and libraries under a bundle/ subdirectory; so when it's in PATH only git-annex, runshell, and git-annex-webapp will be available.
-rw-r--r--Makefile2
-rw-r--r--debian/changelog2
-rw-r--r--doc/install/OSX.mdwn10
-rw-r--r--standalone/osx/git-annex.app/Contents/MacOS/README9
-rwxr-xr-xstandalone/osx/git-annex.app/Contents/MacOS/runshell14
5 files changed, 27 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 966987587..68d2aa3ff 100644
--- a/Makefile
+++ b/Makefile
@@ -117,7 +117,7 @@ linuxstandalone:
cd tmp && tar czf git-annex-standalone-$(shell dpkg --print-architecture).tar.gz git-annex.linux
OSXAPP_DEST=tmp/build-dmg/git-annex.app
-OSXAPP_BASE=$(OSXAPP_DEST)/Contents/MacOS
+OSXAPP_BASE=$(OSXAPP_DEST)/Contents/MacOS/bundle
osxapp:
$(MAKE) git-annex
diff --git a/debian/changelog b/debian/changelog
index 0969e470d..c1a2b8229 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -29,6 +29,8 @@ git-annex (4.20130315) UNRELEASED; urgency=low
* get, copy, move: Display an error message when an identical transfer
is already in progress, rather than failing with no indication why.
* assistant: Several optimisations to file transfers.
+ * OSX app and standalone Linux tarball now both support being added to
+ PATH; no need to use runshell to start git-annex.
-- Joey Hess <joeyh@debian.org> Fri, 15 Mar 2013 00:10:07 -0400
diff --git a/doc/install/OSX.mdwn b/doc/install/OSX.mdwn
index d87e81c3a..a70074f38 100644
--- a/doc/install/OSX.mdwn
+++ b/doc/install/OSX.mdwn
@@ -9,9 +9,13 @@ Be sure to select the build matching your version of OSX.
If you want to run the [[git-annex_assistant|/assistant]], just
install the app, look for the icon, and start it up.
-To use git-annex at the command line, you need to run
-`git-annex.app/Contents/MacOS/runshell`, which sets up your shell
-to use programs bundled inside the app.
+To use git-annex at the command line, you can add
+`git-annex.app/Contents/MacOS` to your `PATH`
+
+Alternatively, from the command line you can run
+`git-annex.app/Contents/MacOS/runshell`, which makes your shell use all the
+programs bundled inside the app, including not just git-annex, but git, and
+several more. Handy if you don't otherwise have git installed.
This is still a work in progress. See [[/bugs/OSX_app_issues]] for problem
reports.
diff --git a/standalone/osx/git-annex.app/Contents/MacOS/README b/standalone/osx/git-annex.app/Contents/MacOS/README
new file mode 100644
index 000000000..c4bcea383
--- /dev/null
+++ b/standalone/osx/git-annex.app/Contents/MacOS/README
@@ -0,0 +1,9 @@
+This is a app bundle for git-annex. Most users are going to want to
+just click on the icon to start up the git-annex webapp.
+
+To use git-annex at the command line, you can put the directory containing
+this README into your PATH.
+
+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.
diff --git a/standalone/osx/git-annex.app/Contents/MacOS/runshell b/standalone/osx/git-annex.app/Contents/MacOS/runshell
index 211f174fc..6bf926bbe 100755
--- a/standalone/osx/git-annex.app/Contents/MacOS/runshell
+++ b/standalone/osx/git-annex.app/Contents/MacOS/runshell
@@ -11,12 +11,14 @@ if [ ! -d "$base" ]; then
exit 1
fi
-if [ ! -e "$base/git-annex" ]; then
- echo "** base directory $base does not contain git-annex" >&2
+bundle="$base/bundle"
+
+if [ ! -e "$bundle/git-annex" ]; then
+ echo "** bundle directory $bundle does not contain git-annex" >&2
exit 1
fi
if [ ! -e "$base/git" ]; then
- echo "** base directory $base does not contain git" >&2
+ echo "** bundle directory $bundle does not contain git" >&2
exit 1
fi
@@ -43,17 +45,17 @@ fi
# system binaries.
ORIG_PATH="$PATH"
export ORIG_PATH
-PATH=$base:$PATH
+PATH=$bundle:$PATH
export PATH
ORIG_GIT_EXEC_PATH="$GIT_EXEC_PATH"
export ORIG_GIT_EXEC_PATH
-GIT_EXEC_PATH=$base
+GIT_EXEC_PATH=$bundle
export GIT_EXEC_PATH
ORIG_GIT_TEMPLATE_DIR="$GIT_TEMPLATE_DIR"
export ORIG_GIT_TEMPLATE_DIR
-GIT_TEMPLATE_DIR="$base/templates"
+GIT_TEMPLATE_DIR="$bundle/templates"
export GIT_TEMPLATE_DIR
# Indicate which variables were exported above.