On Tue, 17 Dec 2019 at 03:23, Jonathan Nieder <jrnie...@gmail.com> wrote: > That said, I'd still welcome a git-libsecret (or git-secretservice) > package, just like you're hinting. Patches welcome.
Adjusted patch attached. It's untested and I'm not that familiar with building Debian packages, so approach with care. I hope someone will take it to completion from here.
From 00cbebce522ca7959aab62946796250d9794a1e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= <ville.sky...@iki.fi> Date: Tue, 17 Dec 2019 07:52:37 +0200 Subject: [PATCH] Ship git-libsecret --- debian/control | 22 +++++++++++++++++++--- debian/git-libsecret.install | 1 + debian/rules | 6 +++++- 3 files changed, 25 insertions(+), 4 deletions(-) create mode 100644 debian/git-libsecret.install diff --git a/debian/control b/debian/control index e6be01c90a..716bda9e5f 100644 --- a/debian/control +++ b/debian/control @@ -5,7 +5,7 @@ Maintainer: Gerrit Pape <p...@smarden.org> Uploaders: Jonathan Nieder <jrnie...@gmail.com>, Anders Kaseorg <ande...@mit.edu> Build-Depends: libz-dev, gettext, libpcre2-dev | libpcre3-dev, - libcurl4-gnutls-dev, libexpat1-dev, + libcurl4-gnutls-dev, libexpat1-dev, libsecret-1-dev, subversion, libsvn-perl, libyaml-perl, tcl, python, libhttp-date-perl | libtime-parsedate-perl, @@ -33,7 +33,7 @@ Pre-Depends: ${misc:Pre-Depends} Recommends: ca-certificates, patch, less, ssh-client 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 + git-cvs, git-mediawiki, git-svn, git-libsecret Replaces: gitweb (<< 1:1.7.4~rc1), git-core (<< 1:1.7.0.4-1.) Breaks: bash-completion (<< 1:1.90-1), gitweb (<< 1:1.7.4~rc1), @@ -323,12 +323,28 @@ Description: fast, scalable, distributed revision control system (web interface) If libcgi-fast-perl is installed, gitweb can also be run over FastCGI (and served by nginx, for example). +Package: git-libsecret +Architecture: all +Multi-Arch: foreign +Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.) +Description: fast, scalable, distributed revision control system (libsecret credential helper) + Git is popular version control system designed to handle very large + projects with speed and efficiency; it is used for many high profile + open source projects, most notably the Linux kernel. + . + Git falls in the category of distributed source code management tools. + Every Git working directory is a full-fledged repository with full + revision tracking capabilities, not dependent on network access or a + central server. + . + This package provides a helper for storing credentials using libsecret. + Package: git-all Architecture: all Multi-Arch: foreign Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), git-doc, git-el, git-cvs, git-mediawiki, git-svn, - git-email, git-gui, gitk, gitweb + git-email, git-gui, gitk, gitweb, git-libsecret Recommends: git-daemon-run | git-daemon-sysvinit Description: fast, scalable, distributed revision control system (all subpackages) Git is popular version control system designed to handle very large diff --git a/debian/git-libsecret.install b/debian/git-libsecret.install new file mode 100644 index 0000000000..d61ca822bc --- /dev/null +++ b/debian/git-libsecret.install @@ -0,0 +1 @@ +debian/tmp/usr/lib/git-core/git-credential-libsecret* usr/lib/git-core diff --git a/debian/rules b/debian/rules index d5d81608d8..74b9fb82a1 100755 --- a/debian/rules +++ b/debian/rules @@ -63,6 +63,7 @@ build-stamp: override_dh_auto_build-arch: build-stamp $(MAKE) -C contrib/subtree all $(OPTS) ln -s contrib/subtree/git-subtree + $(MAKE) -C contrib/credential/libsecret all $(OPTS) override_dh_auto_test-arch: test -z '$(TEST)' || \ @@ -90,6 +91,7 @@ override_dh_auto_clean: $(MAKE) -C contrib/subtree clean $(OPTS) $(MAKE) clean $(OPTS) rm -f git-subtree + $(MAKE) -C contrib/credential/libsecret clean $(OPTS) override_dh_clean: dh_clean -Xmailinfo.c.orig @@ -98,11 +100,13 @@ override_dh_auto_install-arch: # git DESTDIR='$(GIT)' $(MAKE) install $(OPTS) DESTDIR='$(GIT)' $(MAKE) -C contrib/subtree install $(OPTS) + install -m0755 contrib/credential/libsecret/git-credential-libsecret \ + '$(GIT)'/usr/lib/git-core/ install -d -m0755 '$(GIT)'/var/lib/git rm -rf '$(GIT)'/usr/share/man # don't include arch, cvs, p4, svn, email, gui tools, and gitk program for i in git-archimport git-cvs git-p4 git-svn git-send-email \ - git-gui git-citool; do \ + git-gui git-citool git-credential-libsecret; do \ rm -f '$(GIT)'/usr/lib/git-core/$$i*; \ done rm -f '$(GIT)'/usr/bin/git-cvsserver -- 2.17.1