diff --git a/Build/BundledPrograms.hs b/Build/BundledPrograms.hs index a9a29b6039..271e1dd982 100644 --- a/Build/BundledPrograms.hs +++ b/Build/BundledPrograms.hs @@ -31,6 +31,16 @@ extraBundledPrograms = catMaybes [ SysConfig.gpg #else [ +#endif +#ifndef darwin_HOST_OS +#ifndef mingw32_HOST_OS + -- OS X has ssh installed by default. + -- On Windows, git provides ssh. + -- Linux probably has ssh installed system wide, + -- and if so the user probably wants to use that one. + , Just "ssh" + , Just "ssh-keygen" +#endif #endif ] @@ -57,15 +67,6 @@ preferredBundledPrograms = catMaybes , Just "xargs" #endif , Just "rsync" -#ifndef darwin_HOST_OS -#ifndef mingw32_HOST_OS - -- OS X has ssh installed by default. - -- Linux probably has ssh, but not guaranteed. - -- On Windows, git provides ssh. - , Just "ssh" - , Just "ssh-keygen" -#endif -#endif #ifndef mingw32_HOST_OS , Just "sh" #endif diff --git a/CHANGELOG b/CHANGELOG index 3939762919..524ad53c23 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -3,6 +3,8 @@ git-annex (6.20170301.2) UNRELEASED; urgency=medium * Bugfix: Passing a command a filename that does not exist sometimes did not display an error, when a path to a directory was also passed. * status: Propigate nonzero exit code from git status. + * Linux standalone builds put the bundled ssh last in PATH, + so any system ssh will be preferred over it. -- Joey Hess Thu, 02 Mar 2017 12:51:40 -0400 diff --git a/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible.mdwn b/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible.mdwn index 13f09d964f..a61caca667 100644 --- a/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible.mdwn +++ b/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible.mdwn @@ -51,3 +51,4 @@ git-annex: sync: 2 failed ### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders) +> [[done]]; moved ssh to extra directory. --[[Joey]] diff --git a/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible/comment_1_abdd5622dc1733a8b59dc11885083799._comment b/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible/comment_1_abdd5622dc1733a8b59dc11885083799._comment new file mode 100644 index 0000000000..2024b296f3 --- /dev/null +++ b/doc/bugs/configuration_options_for_system_ssh_and_bundled_ssh_are_incompatible/comment_1_abdd5622dc1733a8b59dc11885083799._comment @@ -0,0 +1,20 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 1""" + date="2017-03-02T21:30:55Z" + content=""" +One way to deal with this would be to put the bundled ssh in the +git-annex.linux/extra/ directory. Programs in that directory are added to the +end of the path, so that system versions will be preferred when available. + +That was earlier done for gpg and didn't cause any problems. + +There is the potential for some sort of versioning problem. Currently the +only thing git-annex probes about the bundled ssh is if it supports +connection caching. That's quite an old feature by now, so a system ssh not +supporting it would either be super out of date and insecure openssh, or +perhaps some other ssh implementation. + +Seems worth moving the bundled ssh to the extra directory, and see what +breaks.. +"""]]