"how-can-i-help" suggested this bug as suitable for a newcomer.  Would
the attached patch be of use?

J.
From ba6ab2cbfa5a68d8fca99d43eda119d2a11f3c95 Mon Sep 17 00:00:00 2001
From: Jeremy Sowden <jer...@azazel.net>
Date: Thu, 15 Jan 2015 16:29:22 +0000
Subject: [PATCH] Create quilt-el package.

---
 debian/control                  | 15 ++++++++++++++-
 debian/quilt-el.emacsen-install | 37 +++++++++++++++++++++++++++++++++++++
 debian/quilt-el.emacsen-remove  | 10 ++++++++++
 debian/quilt-el.emacsen-startup | 26 ++++++++++++++++++++++++++
 debian/rules                    |  8 ++++++++
 5 files changed, 95 insertions(+), 1 deletion(-)
 create mode 100644 debian/quilt-el.emacsen-install
 create mode 100644 debian/quilt-el.emacsen-remove
 create mode 100644 debian/quilt-el.emacsen-startup

diff --git a/debian/control b/debian/control
index 7e0f9ed..da44698 100644
--- a/debian/control
+++ b/debian/control
@@ -31,13 +31,26 @@ Description: Tool to work with series of patches
  for Linux kernel hackers (Andrew Morton, from the -mm  branch, is the
  original author), and its main use by the current upstream maintainer is to
  manage the (hundreds of) patches against the kernel made for the SUSE
- distribution. 
+ distribution.
  .
  This package provides seamless integration into Debhelper or CDBS,
  allowing maintainers to easily add a quilt-based patch management system in
  their packages. The package also provides some basic support for those not
  using those tools. See README.Debian for more information.
 
+Package: quilt-el
+Architecture: all
+Depends: emacs | emacsen, quilt (>= 0.48), ${misc:Depends}
+Description: simple Emacs interface of quilt
+ This is an Emacs minor mode for quilt. By using this,
+ it becomes easy to edit files controlled by quilt.
+ The main features are as follows:
+ .
+  - Automatically detects files that are in a quilt hierarchy
+   and enables itself.
+  - Only files in topmost patch can be writable.
+  - Some handy shortcut keys of quilt commands.
+
 # Local Variables:
 # Coding: utf-8
 # End:
diff --git a/debian/quilt-el.emacsen-install b/debian/quilt-el.emacsen-install
new file mode 100644
index 0000000..7fafa87
--- /dev/null
+++ b/debian/quilt-el.emacsen-install
@@ -0,0 +1,37 @@
+#! /bin/sh -e
+# /usr/lib/emacsen-common/packages/install/quilt-el
+
+# Written by Jim Van Zandt <j...@debian.org>, borrowing heavily
+# from the install scripts for gettext by Santiago Vila
+# <sanv...@ctv.es> and octave by Dirk Eddelbuettel <e...@debian.org>.
+
+FLAVOR=$1
+PACKAGE=quilt-el
+
+if [ ${FLAVOR} = emacs ]; then exit 0; fi
+
+echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR}
+
+SITEFLAG="-no-site-file"
+FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile"
+
+ELDIR=/usr/share/emacs/site-lisp/${PACKAGE}
+ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE}
+
+install -m 755 -d ${ELCDIR}
+cd ${ELDIR}
+rm -f ${ELCDIR}/*.el
+FILES=`echo *.el`
+cp ${FILES} ${ELCDIR}
+cd ${ELCDIR}
+
+cat << EOF > path.el
+(setq load-path (cons "." load-path) byte-compile-warnings nil)
+EOF
+${FLAVOR} ${FLAGS} ${FILES}
+rm -f *.el path.el
+for i in ${FILES}; do
+  ln -fs ${ELDIR}/$i
+done
+
+exit 0
diff --git a/debian/quilt-el.emacsen-remove b/debian/quilt-el.emacsen-remove
new file mode 100644
index 0000000..b1b15d9
--- /dev/null
+++ b/debian/quilt-el.emacsen-remove
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+# /usr/lib/emacsen-common/packages/remove/quilt-el
+
+FLAVOR=$1
+PACKAGE=quilt-el
+
+if [ ${FLAVOR} != emacs ]; then
+    echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR}
+    rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE}
+fi
diff --git a/debian/quilt-el.emacsen-startup b/debian/quilt-el.emacsen-startup
new file mode 100644
index 0000000..30afb6a
--- /dev/null
+++ b/debian/quilt-el.emacsen-startup
@@ -0,0 +1,26 @@
+;; -*-emacs-lisp-*-
+;;
+;; Emacs startup file, e.g.  /etc/emacs/site-start.d/50quilt-el.el
+;; for the Debian quilt-el package
+;;
+;; Originally contributed by Nils Naumann <naum...@unileoben.ac.at>
+;; Modified by Dirk Eddelbuettel <e...@debian.org>
+;; Adapted for dh-make by Jim Van Zandt <j...@debian.org>
+
+;; The quilt-el package follows the Debian/GNU Linux 'emacsen' policy and
+;; byte-compiles its elisp files for each 'emacs flavor' (emacs19,
+;; xemacs19, emacs20, xemacs20...).  The compiled code is then
+;; installed in a subdirectory of the respective site-lisp directory.
+;; We have to add this to the load-path:
+(let ((package-dir (concat "/usr/share/"
+                           (symbol-name flavor)
+                           "/site-lisp/quilt-el")))
+;; If package-dir does not exist, the quilt-el package must have
+;; removed but not purged, and we should skip the setup.
+  (when (file-directory-p package-dir)
+    (if (fboundp 'debian-pkg-add-load-path-item)
+	(debian-pkg-add-load-path-item package-dir)
+      (setq load-path (cons package-dir load-path)))
+    (autoload 'quilt-mode "quilt"
+      "Minor mode for editing files on quilt hierarchy."
+      t)))
diff --git a/debian/rules b/debian/rules
index b08cc75..07f7838 100755
--- a/debian/rules
+++ b/debian/rules
@@ -35,6 +35,14 @@ endif
 	pod2man -c Debhelper debian/dh_quilt_patch debian/dh_quilt_patch.1
 	pod2man -c Debhelper debian/dh_quilt_unpatch debian/dh_quilt_unpatch.1
 
+override_dh_auto_install:
+	dh_auto_install
+	install -d -m 0755 $(CURDIR)/debian/quilt-el/usr/share
+	mv $(BUILD_ROOT)/usr/share/emacs $(CURDIR)/debian/quilt-el/usr/share
+
+override_dh_installdocs:
+	dh_installdocs --link-doc=quilt
+
 override_dh_installchangelogs:
 	dh_installchangelogs NEWS
 
-- 
2.1.4

Attachment: signature.asc
Description: Digital signature

Reply via email to