Hi Jonathan,
On Tue, Oct 03, 2017 at 03:15:26PM -0700, Jonathan Nieder wrote:
> Have you read https://bugs.debian.org/613892#10? Would you be
> interested in working on a patch for upstream Git to do that? We can
> make the error message printed when manpages are missing a value set
> at compile time (see the Makefile for existing compile-time parameters
> like DEFAULT_EDITOR). I'm happy to give pointers, etc. to anyone
> wanting to work on this.
I actually followed a different route and created a patch which is
Debian-specific. Please have a look - it is not yet polished in any way,
esp. all the translations are missing. The patch is against git in
unstable.
Cheers,
--Toni++
diff --git a/builtin/help.c b/builtin/help.c
index 334a849..c2a3670 100644
--- a/builtin/help.c
+++ b/builtin/help.c
@@ -32,6 +32,8 @@ enum help_format {
HELP_FORMAT_WEB
};
+static const char *manpage_canary = "/usr/share/doc/git-man/copyright";
+
static const char *html_path;
static int show_all = 0;
@@ -342,8 +344,15 @@ static void show_man_page(const char *git_cmd)
struct man_viewer_list *viewer;
const char *page = cmd_to_page(git_cmd);
const char *fallback = getenv("GIT_MAN_VIEWER");
+ struct stat throwaway;
+ int find_canary = 0;
setup_man_path();
+ find_canary = stat(manpage_canary, &throwaway);
+ if (find_canary == -1) {
+ printf(_("git: no man pages installed, please ask your system administrator to install the git-man package.\n"));
+ exit(0);
+ }
for (viewer = man_viewer_list; viewer; viewer = viewer->next)
{
exec_viewer(viewer->name, page); /* will return when unable */
diff --git a/debian/control b/debian/control
index 5c2eb20..bc8fc8b 100644
--- a/debian/control
+++ b/debian/control
@@ -27,9 +27,9 @@ Package: git
Architecture: any
Multi-Arch: foreign
Depends: ${misc:Depends}, ${shlibs:Depends}, perl, liberror-perl,
- git-man (>> ${source:Upstream-Version}), git-man (<< ${source:Upstream-Version}-.)
Pre-Depends: ${misc:Pre-Depends}
-Recommends: patch, less, ssh-client
+Recommends: patch, less, ssh-client, git-man (>> ${source:Upstream-Version}),
+ git-man (<< ${source:Upstream-Version}-.)
Suggests: gettext-base, git-daemon-run | git-daemon-sysvinit,
git-doc, git-el, git-email, git-gui, gitk, gitweb,
git-cvs, git-mediawiki, git-svn