summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 09:20:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 09:20:55 +0000
commit751abe5af6e60af060ea7979512574d903a49eb0 (patch)
tree991d21305c4f60a4b0c13964436f8b8e08fee34b
parentAdding upstream version 3.0.10. (diff)
downloaddkms-751abe5af6e60af060ea7979512574d903a49eb0.tar.xz
dkms-751abe5af6e60af060ea7979512574d903a49eb0.zip
Adding debian version 3.0.10-8+deb12u1.debian/3.0.10-8+deb12u1debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--debian/HOWTO.Debian40
-rw-r--r--debian/changelog1177
-rw-r--r--debian/clean2
-rw-r--r--debian/control65
-rw-r--r--debian/copyright39
-rw-r--r--debian/dh-dkms.install4
-rw-r--r--debian/dkms.docs1
-rw-r--r--debian/dkms.install1
-rw-r--r--debian/dkms.lintian-overrides5
-rw-r--r--debian/dkms.maintscript20
-rw-r--r--debian/dkms.modprobe4
-rw-r--r--debian/dkms.postinst18
-rw-r--r--debian/gbp.conf3
-rw-r--r--debian/gitlab-ci.yml3
-rw-r--r--debian/patches/0001-default-built_module_name-0-to-PACKAGE_NAME.patch24
-rw-r--r--debian/patches/0002-man-clarify-dkms-add-arguments.patch55
-rw-r--r--debian/patches/0003-print-a-warning-if-proc-is-not-mounted.patch46
-rw-r--r--debian/patches/0004-use-echo-n-as-fallback-for-log_daemon_msg.patch33
-rw-r--r--debian/patches/0005-use-log_action_msg-instead-of-log_daemon_msg-w-o-log.patch33
-rw-r--r--debian/patches/0006-dkms_autoinstaller-skip-autoinstall-if-headers-are-m.patch62
-rw-r--r--debian/patches/0007-prepare_build-use-return-code-77-if-skipping-due-to-.patch66
-rw-r--r--debian/patches/BUILD_EXCLUSIVE_CONFIG.patch41
-rw-r--r--debian/patches/fix-builtin-archive-dkms-coinstallation.patch45
-rw-r--r--debian/patches/messaging.patch16
-rw-r--r--debian/patches/reinstate-enroll.patch16
-rw-r--r--debian/patches/series14
-rw-r--r--debian/patches/spelling.patch16
-rw-r--r--debian/patches/version-sort.patch22
-rwxr-xr-xdebian/rules23
-rwxr-xr-xdebian/scripts/dh_dkms.in185
-rwxr-xr-xdebian/scripts/dkms-autopkgtest229
-rw-r--r--debian/scripts/dkms.pm8
-rw-r--r--debian/scripts/postinst-dkms27
-rw-r--r--debian/scripts/prerm-dkms10
-rw-r--r--debian/source/format1
-rw-r--r--debian/tests/control11
-rw-r--r--debian/tests/run_test_wrapper.sh14
-rw-r--r--debian/upstream/metadata4
-rw-r--r--debian/watch7
39 files changed, 2390 insertions, 0 deletions
diff --git a/debian/HOWTO.Debian b/debian/HOWTO.Debian
new file mode 100644
index 0000000..532e5b9
--- /dev/null
+++ b/debian/HOWTO.Debian
@@ -0,0 +1,40 @@
+HOWTO Build DKMS debs w/ Debian & Ubuntu systems
+Copyright 2008 Dell Inc.
+ Author: Mario Limonciello <Mario_Limonciello@Dell.com>
+
+------------
+
+A dkms deb is a common representation of a DKMS package that can be distributed across multiple machines.
+After you have a functional DKMS package, you can follow these steps to build a DKMS deb.
+
+1) Start out by putting together a tree in /usr/src/PACKAGE-VERSION. For our example, we are going to use
+the PACKAGE lirc and VERSION 0.8.3~pre1. Create a dkms.conf per the recommendations in the DKMS guide.
+
+2) "Add" the package to the dkms tree system:
+ dkms add -m lirc -v 0.8.3~pre1
+
+3) "Build" the binary modules for the current kernel:
+ dkms build -m lirc -v 0.8.3~pre1
+
+4) Make the deb and/or dsc for the package:
+ dkms mkdeb -m lirc -v 0.8.3~pre1
+ dkms mkdsc -m lirc -v 0.8.3~pre1
+
+The end result will be a deb and/or dsc in /var/lib/dkms/lirc/0.8.3~pre1/deb or /var/lib/dkms/lirc/0.8.3~pre1/dsc
+
+------------
+If you would prefer not to contaminate your system with the changes from building these debs, you should
+create a framework.conf that contains these variables (adjust for your use case):
+
+ source_tree="/path/to/source/tree"
+ dkms_tree="/path/to/dkms/tree"
+
+You will then call DKMS with an extra variable, '--dkmsframework'. Here is an example of how this would work
+using the same lirc example above:
+
+ dkms add -m lirc -v 0.8.3~pre1 --dkmsframework framework.conf
+ dkms build -m lirc -v 0.8.3~pre1 --dkmsframework framework.conf
+ dkms mkdeb -m lirc -v 0.8.3~pre1 --dkmsframework framework.conf
+ dkms mkdsc -m lirc -v 0.8.3~pre1 --dkmsframework framework.conf
+
+The end result will be both a debian binary package and a debian source package that you can use.
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..a5d87cd
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,1177 @@
+dkms (3.0.10-8+deb12u1) bookworm; urgency=medium
+
+ * Add Breaks against obsolete *-dkms packages that are incompatible with the
+ Linux 6.1 kernel in bookworm. (Closes: #1037425)
+
+ -- Andreas Beckmann <anbe@debian.org> Wed, 12 Jul 2023 13:43:22 +0200
+
+dkms (3.0.10-8) unstable; urgency=medium
+
+ * Disable tests broken by fix-builtin-archive-dkms-coinstallation.patch.
+ (Closes: #1033396)
+ * Run autopkgtest for all architectures using the headers from the
+ linux-headers-generic (virtual) meta-package.
+ * Generate dh_dkms.1 at build time.
+ * Clean up /boot/*.old-dkms on upgrades from bullseye. (Closes: #717584)
+ * Clean up obsolete /etc/dkms/sign_helper.sh on upgrades. (Closes: #1019563)
+ * dkms-autopkgtest: Try to 'dkms install' its BUILD_DEPENDS before testing a
+ module. (Single level only, without recursion.)
+ * Fix fallback value for BUILD_MODULE_NAME[0]. (Closes: #651973)
+ * dkms.8: Clarify 'dkms add' arguments. (Closes: #704917)
+ * Print a warning if /proc is not mounted. (Closes: #810665, #968074)
+ * dkms_autoinstaller: Skip autoinstall if headers are missing (like
+ dkms_common.postinst). (Closes: #1030595)
+ * Use return code 77 if skipping due to BUILD_EXCLUSIVE_*.
+ * Sort kernels by version.
+
+ -- Andreas Beckmann <anbe@debian.org> Fri, 31 Mar 2023 14:01:26 +0200
+
+dkms (3.0.10-7) unstable; urgency=medium
+
+ [ Dimitri John Ledkov ]
+ * Fix release regression preventing co-installing in-archive dkms
+ packages with kernels that built-in identical or newer versions of the
+ same dkms package. LP: #2008269
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 22 Mar 2023 00:02:08 +0100
+
+dkms (3.0.10-6) unstable; urgency=medium
+
+ * Fix test failure on s390x due to typo in "linux" package installation
+ name.
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 14 Feb 2023 09:37:48 +0100
+
+dkms (3.0.10-5) unstable; urgency=medium
+
+ * dkms-autopkgtest: fix typo in variable name
+
+ -- Aron Xu <aron@debian.org> Wed, 08 Feb 2023 11:14:35 +0800
+
+dkms (3.0.10-4) unstable; urgency=medium
+
+ * dkms-autopkgtest: fix build vs install checks
+
+ -- Dimitri John Ledkov <dimitri.ledkov@canonical.com> Tue, 07 Feb 2023 19:02:02 +0000
+
+dkms (3.0.10-3) unstable; urgency=medium
+
+ [ Andreas Beckmann ]
+ * dkms: Drop Depends: dh-dkms, the B-D: dkms have migrated to
+ B-D: dh-sequence-dkms or B-D: dh-dkms.
+ * Provide virtual package dkms-autopkgtest.
+ * dkms-autopkgtest: Accept a list of packages to be tested as parameters.
+ * dkms-autopkgtest: Ensure dctrl-tools and openssl are installed.
+ * Bump Standards-Version to 4.6.2, no changes needed.
+ * dh_dkms: Error out if dkms.conf cannot be read. (Closes: #1028331)
+ * dh_dkms: Fall back to debian/tmp when looking up the dkms.conf template.
+
+ [ Aron Xu ]
+ * add autopkgtest for dkms itself
+
+ -- Aron Xu <aron@debian.org> Tue, 07 Feb 2023 14:55:19 +0800
+
+dkms (3.0.10-2) unstable; urgency=medium
+
+ * dkms-autopkgtest:
+ - Use dkms --force to force installation and build
+ if the module is already found (e.g. provided by kernel)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 31 Jan 2023 10:16:53 +0100
+
+dkms (3.0.10-1) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Drop gencontrol hack, now that the Breaks has been removed
+
+ [ Aron Xu ]
+ * New upstream version 3.0.10 (Closes: #1025783, #1026822)
+ * Drop patch merged upstream
+
+ -- Aron Xu <aron@debian.org> Tue, 10 Jan 2023 22:08:49 +0800
+
+dkms (3.0.9-1) unstable; urgency=medium
+
+ * New upstream version 3.0.9 (Closes: #1019425)
+ * Remove patches merged upstream and refresh remainders
+ * Remove unused override: source/maintainer-manual-page
+ * Remove unused "Breaks: ${dkms:Breaks}" from d/control
+ * Fix bash term in dkms_common.postinst
+
+ -- Aron Xu <aron@debian.org> Tue, 13 Dec 2022 18:01:38 +0800
+
+dkms (3.0.8-3) unstable; urgency=high
+
+ * Revert back to 3.0.8-1 behavior to prevent breakages for sid users
+ (Closes: #1025214, #1025171)
+
+ -- Aron Xu <aron@debian.org> Fri, 02 Dec 2022 19:49:16 +0800
+
+dkms (3.0.8-2) unstable; urgency=medium
+
+ * export-CC, exact-cc: Merge and improve the two patches. Ensure that
+ compiler is set and exported as early in the prepartion stage as
+ possible, is not subsequently unset (already unset at the start of the
+ dkms script), and also export MAKEFLAGS to ensure that environment CC
+ variable is used by kernel's Makefile. Fixes LP: #1997841
+ * Drop dangling unapplied patch from git.
+
+ -- Dimitri John Ledkov <dimitri.ledkov@canonical.com> Thu, 24 Nov 2022 14:59:45 +0000
+
+dkms (3.0.8-1) unstable; urgency=medium
+
+ [ Andreas Beckmann ]
+ * Update watch file.
+ * Make messages more consistent.
+
+ [ Gianfranco Costamagna ]
+ * New upstream version 3.0.7 (Closes: #1019330, #1021966)
+ * New upstream version 3.0.8
+ * Drop upstream patches:
+ - 2b76d4aa29e65ae4ed8e89685c4e729f1276c5fc
+ - 3ca52f8769bdf7ebdc83735355fff7c5c0664152
+ - 7f3c4b03c506e40f0a5ce9315a8ade88b108ce0f
+ - 8d60956f6dcda0679066954215eb8be4045413b4
+ - 985bfd584f0e87bc726865bfdc17887d4713c854
+ * Refresh patches
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 18 Nov 2022 22:34:50 +0100
+
+dkms (3.0.6-4) unstable; urgency=medium
+
+ [ Dimitri John Ledkov ]
+ * Fix dkms signing regressions with cherry-picks from 3.0.7 upstream
+ git. LP: #1991725
+ - Reinstate enroll call, as it causes dpkg-trigger action during dpkg
+ transaction to enroll newly created key, if it wasn't enrolled yet.
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 20 Oct 2022 21:04:14 +0200
+
+dkms (3.0.6-3) unstable; urgency=medium
+
+ * Export exact CC compiler earlier, before pre_build script is run. Some
+ dkms modules already perform compilation in pre_build script, and thus
+ need correct CC variable earlier. LP: #1991664
+
+ -- Dimitri John Ledkov <dimitri.ledkov@canonical.com> Tue, 04 Oct 2022 15:22:46 +0100
+
+dkms (3.0.6-2) unstable; urgency=medium
+
+ * debian/patches/7f3c4b03c506e40f0a5ce9315a8ade88b108ce0f.patch
+ - Apply upstream patch suggested by Marinelli Giorgio, to fix an issue due
+ to an extra $ character.
+ * debian/patches/49d647b6476d605feb10548e33fc3807415ec724.patch
+ - Apply another upstream hotfix.
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 07 Sep 2022 12:27:13 +0200
+
+dkms (3.0.6-1) unstable; urgency=medium
+
+ [ Andreas Beckmann ]
+ * dkms-autopkgtest: Print a summary for all tested kernels.
+ * Update Lintian overrides.
+
+ [ Dimitri John Ledkov ]
+ * Use exact compiler for dkms as used to build the kernel, when possible.
+ * Fix dkms-autopkgtest when a given dkms package is built into the kernel
+ already of the same version. (i.e. zfs-linux on Ubuntu).
+
+ [ Gianfranco Costamagna ]
+ * New upstream version 3.0.4 (Closes: #665774)
+ * New upstream version 3.0.6
+ * Refresh patches for new release
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 07 Sep 2022 10:11:13 +0200
+
+dkms (3.0.3-4) unstable; urgency=medium
+
+ * Make deprecation warnings less noisy and more informative.
+ (Closes: #1012043)
+ * Add new feature BUILD_EXCLUSIVE_CONFIG="CONFIG_FOO !CONFIG_BAR".
+ * dh_dkms: Bump generated dependency if BUILD_EXCLUSIVE_CONFIG is used.
+ * Upload to unstable.
+
+ -- Andreas Beckmann <anbe@debian.org> Tue, 14 Jun 2022 09:28:22 +0200
+
+dkms (3.0.3-3) experimental; urgency=medium
+
+ * dkms-autopkgtest: Try not to fail if linux-doc is not installed.
+ * Set 'our $VERSION' in dh_dkms to show it along autoscripts.
+ * Move dh-dkms into a separate package. (Closes: #966601)
+ * Regenerate dh_dkms(1).
+ * Clean up obsolete conffiles from /etc/dkms/template*/*.
+ (Closes: #1012285, #1009148)
+ * Upload to experimental.
+
+ -- Andreas Beckmann <anbe@debian.org> Thu, 02 Jun 2022 23:49:20 +0200
+
+dkms (3.0.3-2) unstable; urgency=medium
+
+ [ Andreas Beckmann ]
+ * dkms-autopkgtest: Only install linux-headers-* packages matching the
+ source version of linux-doc (a dependency generated by autodep8 for
+ autopkgtest-pkg-dkms). Mixing different versions may fail if multiple
+ distros (e.g. testing and unstable) are enabled and pinning is used.
+ (Closes: #1010883)
+ * Provide versioned virtual package dh-dkms.
+ * Drop maintainer script code handling upgrades from versions predating
+ squeeze/trusty.
+ * Properly clean up ancient /etc/bash_completion.d/dkms.
+ * Clean up ancient /etc/dkms/kernel_install.d_dkms. (Closes: #996812)
+ * Add debian/upstream/metadata.
+ * Bump Standards-Version to 4.6.1, no changes needed.
+ * Add myself to Uploaders.
+
+ [ Debian Janitor ]
+ * Remove constraints unnecessary since buster.
+ - dkms: Drop versioned constraint on coreutils in Depends.
+
+ -- Andreas Beckmann <anbe@debian.org> Fri, 27 May 2022 16:12:46 +0200
+
+dkms (3.0.3-1) unstable; urgency=low
+
+ * New upstream version 2.8.8 (Closes: #650331, #763534)
+ * New upstream version 3.0.3 (Closes: #996104, #1005812, #996648)
+ * Drop examples removed upstream
+ * Drop patches now part of upstream codebase:
+ - 149.patch
+ - do-not-load-modules.patch
+ * Refresh export-CC patch
+
+ [ Andreas Beckmann ]
+ * dkms-autopkgtest: If no linux-headers-* packages are installed, install
+ all available ones before building modules. (Closes: #945594)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 07 Apr 2022 12:08:47 +0200
+
+dkms (2.8.7-2) unstable; urgency=medium
+
+ * Drop old conffile moved upstream (Closes: #990138)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Mon, 11 Oct 2021 09:16:04 +0200
+
+dkms (2.8.7-1) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * New upstream version 2.8.7
+ * Refresh patches
+ * Bump std-version to 4.6.0
+ * Remove AUTHORS file, dropped upstream
+ * override_dh_auto_install to fix double installation and failure in second gzip of manpage
+
+ [ Dimitri John Ledkov ]
+ * dkms-autopkgtest: only test dkms builds against kernel abi in the ADT
+ trigger such that results are reported only for the requested kernel
+ flavour. This is to catch cases when dkms module builds for a
+ derivative kernel, but not for generic (or any other flavour) that may
+ be installed on the test system in addition to the requested kernel
+ flavour.
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 08 Oct 2021 10:23:02 +0200
+
+dkms (2.8.4-4) unstable; urgency=medium
+
+ * debian/patches/149.patch:
+ - upstream proposed patch to fix wrong bash interpreter (Closes: #986674)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 09 Apr 2021 14:28:48 +0200
+
+dkms (2.8.4-3) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Team upload.
+
+ [ Andreas Beckmann ]
+ * Export the CC variable from .kernelvariables in the kernel source to allow
+ module build systems use the kernel's compiler also outside of Kbuild.
+ (Closes: #984929)
+
+ -- Andreas Beckmann <anbe@debian.org> Wed, 10 Mar 2021 12:11:42 +0100
+
+dkms (2.8.4-2) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Team upload
+
+ [ Andreas Beckmann ]
+ * Add Provides: dh-sequence-dkms to help reverse-dependencies use it. (Closes: #981395)
+
+ [ Marcelo Henrique Cerri ]
+ * dkms-autopkgtest: Also select binary packages that depends on dkms for testing (LP: #1915051)
+ Closes: #982315
+
+ -- Marcelo Henrique Cerri <marcelo.cerri@canonical.com> Thu, 11 Feb 2021 11:56:32 -0300
+
+dkms (2.8.4-1) unstable; urgency=medium
+
+ [ Debian Janitor ]
+ * Fix day-of-week for changelog entry 2.0.17.5-0ubuntu1.
+
+ [ Aron Xu ]
+ * New upstream version 2.8.4
+ * Refresh patch do-not-load-module.patch
+
+ -- Aron Xu <aron@debian.org> Tue, 22 Dec 2020 14:32:22 +0800
+
+dkms (2.8.3-4) unstable; urgency=medium
+
+ * Silently source dkms.conf files, to help iptables-netflow work
+ in autopkgtests (Addresses: #966483)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 11 Aug 2020 12:03:25 +0200
+
+dkms (2.8.3-3) unstable; urgency=medium
+
+ * dynamically generate breaks for shim-signed in Ubuntu and Derivates
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 29 Jul 2020 10:30:50 +0200
+
+dkms (2.8.3-2) unstable; urgency=medium
+
+ * tweak dkms-autopkgtest script to avoid cases where some files called "dkms.conf"
+ are stored somewhere else (e.g. /etc).
+ This fixes e.g.
+ dpkg -L broadcom-sta-dkms |grep "dkms.conf"
+ /etc/modprobe.d/broadcom-sta-dkms.conf
+ /usr/src/broadcom-sta-6.30.223.271/dkms.conf
+ and others (8168-dkms) (Closes: #959910)
+ * Make copyright file machine readable and add myself to it
+ * Add R^3: no
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 29 Jul 2020 09:28:05 +0200
+
+dkms (2.8.3-1) unstable; urgency=medium
+
+ * New upstream version 2.8.3
+ * Drop patches:
+ - 130,
+ - no-autoinstall-flag-file,
+ - 885f8275aa65fb11be1e17bc28a0b0ea734dc585: upstream
+ * Refresh patch do-not-load-modules
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 28 Jul 2020 18:44:36 +0200
+
+dkms (2.8.2-2) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Tweak previous patch to do bash string comparison (Closes: #956245)
+ thanks Thorsten Glaser for the reminder!
+
+ [ Andreas Beckmann ]
+ * use /etc/dkms/no-autoinstall as flag file to disable autoinstall
+ * improve dkms-autopkgtest (Closes: #959910)
+
+ [ Seth Forshee ]
+ * Cherry-pick upstream fix for dkms failure with signed kernel modules
+ - debian/patches/885f8275aa65fb11be1e17bc28a0b0ea734dc585.patch:
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 17 Jun 2020 10:00:12 +0200
+
+dkms (2.8.2-1) unstable; urgency=medium
+
+ * New upstream version 2.8.2 (Closes: #585771)
+ * Drop verboselog patch: upstreamed
+ * Refresh do-not-load-modules patch
+ * Bump std-version to 4.5.0
+ * Bump debhelper compat level to 13
+ * Bump watch file version to 4
+ * Add upstream proposed patch to close Debian bug 956245. (Closes: #956245)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Mon, 15 Jun 2020 11:21:01 +0200
+
+dkms (2.8.1-5) unstable; urgency=medium
+
+ * Team upload.
+ * Patch dkms to not load random modules during dkms install
+ Closes: #931017
+ * Replace maintainer email address with dkms@packages.debian.org
+ * Drop Depends on lsb-release, we have Pre-Depends already.
+
+ -- Raphaƫl Hertzog <raphael@offensive-security.com> Wed, 22 Jan 2020 12:42:37 +0100
+
+dkms (2.8.1-4) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Team upload
+ * Import Ubuntu patch
+
+ [ Dimitri John Ledkov ]
+ * Some dkms modules are included by the Ubuntu kernel and not overriden
+ by default. That's ok, as long as they are installed. Do not fail
+ autopkgtest in this case. See virtualbox dkms test.
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Sun, 22 Dec 2019 10:00:44 +0100
+
+dkms (2.8.1-3) unstable; urgency=medium
+
+ * Suggest e2fsprogs (Closes: #887263)
+ * Add some verbosity on log messages (Closes: #840620)
+ * Depend on lsb-release (Closes: #896814)
+ * Do not depend anymore on python3-apport, removed even from experimental
+ (Closes: #881709)
+ * Add back the pre-depends on lsb-release (Closes: #826928)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 08 Nov 2019 12:39:25 +0100
+
+dkms (2.8.1-2) unstable; urgency=medium
+
+ * QA upload
+ * Fix build by dropping patch revert
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 07 Nov 2019 23:27:29 +0100
+
+dkms (2.8.1-1) unstable; urgency=medium
+
+ * New upstream version 2.8.1
+ * Drop all the patches, all of them are now upstream
+ - 0001-688904.patch
+ - 0002-757758.patch
+ - 0003-Do-not-ignore-kernelsourcedir.patch
+ - 0004-mkbmdeb-support-for-lean-binary-package-with-only-th.patch
+ - 0008-Don-t-assume-boot-config-exists-test-first.patch
+ - 0009-Add-support-for-UEFI-Secure-Boot-validation-toggling.patch
+ - 0015-change-arch-in-mkdeb-template.patch
+ - 0017-fix-OBSOLETE_BY-in-DKMS.CONF-Closes-81.patch
+ - lp-1827697.patch
+ - 0008-man-fix-manpage-has-errors-from-man-lintina-warning.patch
+ - 0019-add-force-version-override-and-dkms-_version-overrid.patch
+ - 0020-versioned-provides.patch
+ * Bump std-version to 4.4.1, no changes required
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 07 Nov 2019 17:49:54 +0100
+
+dkms (2.7.1-5) unstable; urgency=medium
+
+ [ Aron Xu ]
+ * Allow any c-compiler to satisfy the required Depends (Closes: #620754)
+ * Only test "-dkms" packages in dkms-autopkgtest (Closes: #903588)
+
+ [ Alex Tu ]
+ * revert 0019-fix-OBSOLETE_BY-be-blocked-by-force-Closes-89.patch
+ * cherry-pick from upstream 9bbef17 for issue #89 #42
+ - 0019-add-force-version-override-and-dkms-_version-overrid.patch
+ (LP: #1838921)
+
+ [ Martijn Grendelman ]
+ * Add versioned provides to mkbmdeb (Closes: #943484)
+
+ [ Gianfranco Costamagna ]
+ * QA upload.
+ * Add Ubuntu patch, now upstream
+ * Drop old patch
+ * Add patch from Martijn Grendelman to add versioned provides to dkms
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Sat, 26 Oct 2019 12:47:11 +0200
+
+dkms (2.7.1-4) unstable; urgency=medium
+
+ * QA upload.
+ * Cherry-pick two other Ubuntu/Upstream patches:
+ - 0017-fix-OBSOLETE_BY-in-DKMS.CONF-Closes-81.patch
+ - lp-1827697.patch
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 06 Sep 2019 10:17:59 +0200
+
+dkms (2.7.1-3) unstable; urgency=medium
+
+ * QA upload
+
+ [ You-Sheng Yang ]
+ * Fix lintian warnings related to manpages typos
+ * Add debian/ci yaml file
+ * Fix lintian warning about python shebang
+
+ [ Dimitri John Ledkov]
+ * Try to improve dkms-autopkgtest when testing incompatible dkms
+ modules. Ensure package is purged first, as make.log is not
+ regenerated upon second installation. Also, before checking the
+ make.log check if the package in question is a dkms.conf one, as
+ otherwise empty tarball is created. This should now unbreak
+ testability of multi-binary packages, which have build-excluded dkms
+ modules.
+
+ [ Timo Aaltonen ]
+ * dkms: cherry-pick from upstream a35d981 for issue #89
+ 0019-fix-OBSOLETE_BY-be-blocked-by-force-Closes-89.patch (LP: #1838921)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 06 Sep 2019 10:08:19 +0200
+
+dkms (2.7.1-2) unstable; urgency=medium
+
+ * QA upload
+ [ Seth Forshee ]
+ * debian/dkms-autopkgtest: skip testing when package is disabled from
+ building by a BUILD_EXCLUSIVE directive.
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Mon, 29 Jul 2019 15:36:18 +0200
+
+dkms (2.7.1-1) unstable; urgency=medium
+
+ * QA upload
+ * Upload to unstable
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 02 Jul 2019 09:41:26 +0200
+
+dkms (2.7.1-1~exp2) experimental; urgency=medium
+
+ * QA upload
+ * Drop trailing newlines
+ * Use DEB_VERSION_UPSTREAM to guess upstream revision
+ * Drop old get-orig-source target
+ * Bump compat level to 12
+ * Bump std-version to 4.3.0, no changes required
+ * Apply UEFI patch from Ubuntu,
+ it is not applied in Debian (removed in debian/rules conditional statement)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 25 Jun 2019 11:09:04 +0200
+
+dkms (2.7.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+ * QA upload
+ * Drop upstream patches:
+ - {63,6ef1a48eda99ec0d728302830483fd0137174d17,bash-completions}.patch
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 25 Jun 2019 10:45:13 +0200
+
+dkms (2.6.1-4) unstable; urgency=medium
+
+ * Remove shim-signed break
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 15 Jan 2019 13:27:05 +0100
+
+dkms (2.6.1-3) unstable; urgency=medium
+
+ * debian/patches/63.patch:
+ - cherry-pick upstream fix when default shell is zsh (Closes: #910526)
+ * Install bash completion script in usr/share new location (Closes: #912849)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 02 Jan 2019 18:06:43 +0100
+
+dkms (2.6.1-2) unstable; urgency=medium
+
+ * Team upload (salsa shared repo)
+ * Add dpkg-dev dependency, needed for dpkg-architecture calls (Closes: #884658)
+ * cherry-pick shim-signed break relationship from Ubuntu
+ - (will be needed if Debian shim-signed is updated)
+ * debian/patches/6ef1a48eda99ec0d728302830483fd0137174d17.patch:
+ cherry-pick upstream fix for kernel version parsing
+ * debian/patches/0015-change-arch-in-mkdeb-template.patch: cherry-pick
+ Ubuntu applied fix for mkbmdeb (Closes: #832558)
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 02 Jan 2019 16:15:32 +0100
+
+dkms (2.6.1-1) unstable; urgency=medium
+
+ [ Petter Reinholdtsen ]
+ * Remove Giuseppe Iuculano as uploader on request from the MIA team.
+ (Closes: #866839)
+
+ [ Aron Xu ]
+ * New upstream version 2.4.0 (Closes: #848608)
+ * New upstream version 2.6.1
+ * Drop patches not used
+ * Use @tracker.d.o address
+ * Use salsa.d.o Git URLs
+ * Set std-ver to 4.1.4
+
+ -- Aron Xu <aron@debian.org> Sun, 05 Aug 2018 01:52:35 +0800
+
+dkms (2.3-3) unstable; urgency=medium
+
+ * Upstream post-2.3 cherry-picks for apport (LP: #1661843)
+
+ -- Aron Xu <aron@debian.org> Tue, 07 Feb 2017 23:27:25 +0800
+
+dkms (2.3-2) unstable; urgency=medium
+
+ [ Adam Cornad ]
+ * Don't assume /boot/config-* exists, test first.
+
+ [ Aron Xu ]
+ * d/control: update VCS-*, std-ver: 3.9.8
+ * d/rules: add shim support for Ubuntu derivatives
+
+ -- Aron Xu <aron@debian.org> Wed, 28 Dec 2016 19:57:32 +0800
+
+dkms (2.3-1) unstable; urgency=medium
+
+ [ Adel Belhouane ]
+ * Update mkbmdeb behavior (Closes: #830670)
+
+ [ Aron Xu ]
+ * Downgrade menu from Recommends to Suggests (Closes: #744054)
+ * Imported Upstream version 2.3
+ * Upstream post-release cherry-picks
+ * d/compat: 7 -> 9
+
+ [ D. Jared Dominguez ]
+ * update URLs
+
+ -- Aron Xu <aron@debian.org> Wed, 26 Oct 2016 14:26:44 +0800
+
+dkms (2.2.1.0+git20160527-1) unstable; urgency=medium
+
+ * Rebase to upstream commit eb402f72b9a71ccdd0d3610db8570195eb048f1f
+ * Update patches
+
+ -- Aron Xu <aron@debian.org> Tue, 23 Aug 2016 14:24:38 +0800
+
+dkms (2.2.0.3-5) unstable; urgency=medium
+
+ [ Aron Xu ]
+ * Remove obsolete virtual package 'linux-image' from Recommends (Closes: #724566)
+ * Do not ignore --kernelsourcedir (Closes: #653176)
+ * Update upstream link to github
+ * Use gbp-pq to manage patches
+
+ [ Daniel Kahn Gillmor ]
+ * Make dh_dkms name and version parsing more proper (Closes: #829123)
+
+ [ Dirk Griesbach ]
+ * Port apport hook to python3 and add python3-apport to Suggests (Closes: #707008)
+
+ [ Thijs Kinkhorst ]
+ * mkbmdeb: support for lean binary package with only the built modules (Closes: #554843)
+
+ -- Aron Xu <aron@debian.org> Wed, 06 Jul 2016 05:51:37 +0800
+
+dkms (2.2.0.3-4) unstable; urgency=medium
+
+ * Acknowledge 2.2.0.3-2.1 NMU. (Closes: #822351)
+ * Make sure apport code write files in binary mode. (Closes: #684377)
+ * Build modules using all CPU cores. (Closes: #663114)
+ * Improve message printed when kernel headers are missing. (Closes: #690866)
+ * Add gbp.conf to ensure pristine-tar feature is used.
+
+ -- Petter Reinholdtsen <pere@debian.org> Sun, 01 May 2016 15:27:22 +0200
+
+dkms (2.2.0.3-3) unstable; urgency=medium
+
+ [ Petter Reinholdtsen ]
+ * Correct indentation of mkdeb in dkms(8) manual page. (Closes: #690865)
+ * Drop the unneeded quilt build dependency. (Closes: #728550)
+ * Added myself and Aron Xu as uploaders.
+
+ [ Aron Xu ]
+ * Added patches from Darik Horn and Ubuntu:
+ - Add support for BUILD_DEPENDS (Closes: #729015)
+ - Correct handling of POST_BUILD (Closes: #704989)
+
+ -- Petter Reinholdtsen <pere@debian.org> Wed, 27 Apr 2016 10:20:15 +0200
+
+dkms (2.2.0.3-2.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Add dkms-autopkgtest script from Ubuntu (Closes: #769095).
+ * Updated Standards-Version from 3.9.2 to 3.9.7.
+
+ -- Petter Reinholdtsen <pere@debian.org> Sat, 23 Apr 2016 19:55:25 +0200
+
+dkms (2.2.0.3-2) unstable; urgency=low
+
+ * [49fccbc] Depends on kmod | kldutils (Closes: #761728)
+ * [9064776] Fixed "sed without options" issue.
+ Thanks to Cristian Ionescu-Idbohrn (Closes: #757758, #762324, #763929)
+ * [1fa1a31] fixes have_one_kernel for non-zero return code.
+ Thanks to Mario Limonciello (Closes: #659672, #735181)
+ * [ba6140d] Added Multi-Arch: foreign.
+ Thanks to Ben Hutchings (Closes: #693634)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Sat, 04 Oct 2014 19:51:23 +0200
+
+dkms (2.2.0.3-1.3) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Replace dependency on transitional module-init-tools package with kmod.
+ (Closes: #733695)
+
+ -- Michael Biebl <biebl@debian.org> Thu, 21 Aug 2014 05:43:30 +0200
+
+dkms (2.2.0.3-1.2) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Don't fail if kernel major version number is not single-digit (like on
+ kfreebsd-10) (Closes: 688904)
+
+ -- Christoph Egger <christoph@debian.org> Fri, 05 Oct 2012 20:52:34 -0700
+
+dkms (2.2.0.3-1.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Do not fail if /lib/modules does not exist. (Closes: #666023)
+ * Remove the directory where the module was installed. (Closes: #657145)
+
+ -- Andreas Beckmann <debian@abeckmann.de> Thu, 19 Jul 2012 22:20:45 +0200
+
+dkms (2.2.0.3-1) unstable; urgency=low
+
+ * [e24a52f] Imported Upstream version 2.2.0.3
+ * [09da5c7] bump standards version
+ * [713ebfd] add missing debhelper token to preinst
+ * [8970435] add versioned build depends for debhelper
+ * [db4238c] switch to dh7
+ * [13a34c7] update lintian override for DKMS apport rule
+
+ -- Mario Limonciello <mario_limonciello@dell.com> Wed, 07 Dec 2011 13:21:33 -0600
+
+dkms (2.2.0.2-1) unstable; urgency=low
+
+ [ Mario Limonciello ]
+ * [c5846b6] Imported Upstream version 2.2.0.2
+ - Doesn't leave files in /tmp (Closes: #633802)
+ - Autoinstall works on multiple kernels (Closes: #634979) (LP: #812979)
+ - PRE_BUILD command working directory fix. (LP: #812088)
+ * [83b5f6e] Drop kfreebsd.patch. Merged upstream
+
+ [ Giuseppe Iuculano ]
+ * [a80ecc5] Updated VCS control field
+
+ -- Mario Limonciello <Mario_Limonciello@Dell.com> Fri, 22 Jul 2011 13:36:32 -0500
+
+dkms (2.2.0.1-3) unstable; urgency=low
+
+ * [c9f7ed0] Fixed kFreeBSD subdirs check
+ * [57c5c9d] Removed improved-error-messages.patch
+ * [370ff7b] Remove debian-lsb.patch. Now Ubuntu can sync from Debian
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Fri, 15 Jul 2011 16:44:11 +0200
+
+dkms (2.2.0.1-2) unstable; urgency=low
+
+ * [6b2d392] Run depmod command only in Linux.
+ Thanks to Robert Millan (Closes: #631657)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Fri, 15 Jul 2011 16:00:05 +0200
+
+dkms (2.2.0.1-1) unstable; urgency=low
+
+ * [18353fe] Imported Upstream version 2.2.0.1
+ * [2a56b4e] Refreshed and removed patches merged upstream.
+ * [c552af9] Use linux-headers-686-pae and linux-headers-amd64 in Recommends
+ (Closes: #628873)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Fri, 15 Jul 2011 12:56:08 +0200
+
+dkms (2.1.1.2-6) unstable; urgency=low
+
+ [ Michael Gilbert ]
+ * [430b97f] Fix logging for compound make statements (closes: #577972)
+ - Thanks to Anders Kaseorg!
+ * [935ae61] Check for debhelper when using 'dkms mkdeb' (closes: #592863)
+ * [e739e8c] fixup logging patch
+
+ [ Giuseppe Iuculano ]
+ * [46cc01a] Merge from Ubuntu: Before using the current kernel we need to make
+ sure that this kernel doesn't belong to the host of a chroot and we should
+ also be more careful when adding kernels to the candidates list
+ (LP: #602408). - Thanks to Alberto Milone
+ * [313d661] Merge from Ubuntu: depend on patch instead of recommending it, if
+ its missing the "patches" feature of dkms will no longer work and that will
+ cause build failures (LP: #653899) Thanks to Michael Vogt
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Sat, 12 Mar 2011 11:07:47 +0100
+
+dkms (2.1.1.2-5) unstable; urgency=low
+
+ * [bd3b35d] Set DISTRIB_ID=Debian in case lsb_release is missing
+ * [2465627] Removed lsb-release from Pre-Depends
+ * [1732998] Do not use lsb_release to determine the distribution, add
+ a static assignment (Closes: #547353)
+ * [d00ff09] Do not return error if /etc/dkms/framework.conf is missing
+ (LP: #613407) - thanks to pasadrul
+ * [618efc8] Copy from the right directory with mkdsc and copy
+ source.changes when building with mkdsc (LP: #611652) - thanks to
+ David Henningsson
+ * [f23d6b0] Bump to standards-version 3.9.1, no changes needed
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Wed, 04 Aug 2010 16:03:16 +0200
+
+dkms (2.1.1.2-4) unstable; urgency=low
+
+ * [f649aa1] Added coreutils >= 7.4 in Depends (Closes: #586356)
+ * [01c7c14] Remove old modules when removing a kernel (Closes: #586724)
+ - thanks to Jan Muszynski
+ * [b6182ba] Bump to Standards-Version 3.9.0, no changes needed
+ * [eaeddb3] dkms_common.postinst: handle dkms build error gracefully
+ by skipping build for the non matching kernels. (Closes: #588585) -
+ thanks to Jan-Marek Glogowski
+ * [73533c2] Promote lsb-release to Pre-Depends (Closes: #589308)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Sat, 17 Jul 2010 13:23:43 +0200
+
+dkms (2.1.1.2-3) unstable; urgency=low
+
+ [ Michael Gilbert ]
+ * Update to source format 3 (quilt) for better patch management/handling.
+ * Improve the status info displayed during the kernel postinst, and
+ provide informative/useful messages when things go awry.
+ * Fix bashism in dkms_common.postinst (closes: #581079).
+ * Document odd behavior of MAKE[#] (closes: #553625).
+ * Document package naming convention (closes: #571753).
+ * Use system TMPDIR setting in all scripts (closes: #581568).
+
+ [ Giuseppe Iuculano ]
+ * [208b229] Added a lintian override for python-script-but-no-python-
+ dep, dkms.py is an apport hook
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Fri, 04 Jun 2010 13:53:23 +0200
+
+dkms (2.1.1.2-2) unstable; urgency=low
+
+ * [67fb76a] Do not remove /etc/header_postinst.d/dkms in preinst. Hopefully
+ now Ubuntu can sync dkms from Debian
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Tue, 23 Feb 2010 10:02:40 +0100
+
+dkms (2.1.1.2-1) unstable; urgency=low
+
+ [ David Paleino ]
+ * [ff95487] dh_dkms: continue the loop if there's nothing to do on the
+ current package. (Closes: #568580)
+ * [73dd83f] dh_dkms: specify that version mangling only happens if
+ PACKAGE_VERSION=#MODULE_VERSION# in dkms.conf
+ * [cdda61c] debian/scripts/postinst-dkms: really make sure the error
+ is thrown when nothing is found. (Closes: #568591)
+
+ [ FrĆ©dĆ©ric BriĆØre ]
+ * [2930aa9] Insert the package version directly into postinst at
+ creation time
+ * [9ccbdc7] Skip prerm removal if there are no modules for that
+ version
+
+ [ Giuseppe Iuculano ]
+ * [898ab8c] Imported Upstream version 2.1.1.2
+ * [4fff928] Removed 01_shell_error.patch, merged in upstream
+ * [c5566c7] Removed 02_header_postinst.patch to avoid delta with
+ Ubuntu. Hopefully /etc/kernel/header_postinst.d directory will be
+ supported in Debian soon
+ * [e8aeb49] Add a comment in debian/patches/series and fix quilt-
+ build-dep-but-no-series-file lintian warning
+ * [bc89600] Fixed a minor spelling error in dh_dkms man page
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Mon, 22 Feb 2010 15:34:12 +0100
+
+dkms (2.1.1.1-2) unstable; urgency=low
+
+ [ David Paleino ]
+ * [d56bce9] Add -V flag to dh_dkms, thanks to FrĆ©dĆ©ric BriĆØre
+ <fbriere@fbriere.net> for the patch. (Closes: #568589)
+ * [dc7e358] dh_dkms: don't return an error if there's nothing to do
+ (Closes: #568580)
+ * [ecfc1c7] debian/scripts/postinst-dkms: don't exit on success, only
+ do it on errors (Closes: #568591)
+
+ [ Giuseppe Iuculano ]
+ * [adb3042] Really remove obsolete conffiles
+ * [3fe380c] Do not install /etc/header_postinst.d/dkms, at this moment
+ Debian kernel doesn't support it
+ * [ad6a1f2] Bump Standards-Version (no changes).
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Sun, 14 Feb 2010 12:02:42 +0100
+
+dkms (2.1.1.1-1) unstable; urgency=low
+
+ [ David Paleino ]
+ * [19ac85e] Added DKMS debhelper script (Closes: #553665)
+
+ [ Giuseppe Iuculano ]
+ * [9d66264] Imported Upstream version 2.1.1.1
+ * [0735c11] Removed 01_upstart.patch
+ * [ec26539] Merge from Ubuntu: Remove the init script and Upstart job.
+ There is no reason that DKMS needs to run on boot; you can build
+ modules for non-running kernels just fine at installation time.
+ * [48ff9a4] Correct a minor shell error in dkms_autoinstaller
+ * [5c76a45] Fixed a minor spelling error in dh_dkms man page
+ * [c611461] debian/preinst: Use set -e
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Wed, 27 Jan 2010 10:02:27 +0100
+
+dkms (2.1.1.0-2) unstable; urgency=low
+
+ * [8510207] Do not install upstart job file
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Tue, 15 Dec 2009 08:57:24 +0100
+
+dkms (2.1.1.0-1) unstable; urgency=low
+
+ * [3122b6c] Imported Upstream version 2.1.1.0
+ * [ac6fb91] Removed patches applied in upstream
+ * [d40faf7] debian/rules: Use new make install-debian target
+ * [5d2e1e4] debian/rules: Do not stop /etc/init.d/dkms_autoinstaller
+ on upgrade
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Mon, 14 Dec 2009 22:38:54 +0100
+
+dkms (2.1.0.1-4) unstable; urgency=low
+
+ * [fdaa289] Use new upstream patch for optimized init. (Closes: #560267)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Fri, 11 Dec 2009 09:11:01 +0100
+
+dkms (2.1.0.1-3) unstable; urgency=low
+
+ [ David Paleino ]
+ * [d3f1e76] debian/control: updated my email address
+
+ [ Giuseppe Iuculano ]
+ * [ad96cbc] Updated vcs control fields
+ * [40941ad] /etc/init.d/dkms_autoinstaller:
+ - optimize with a single find call instead of multiple loops with ls.
+ - port to POSIX sh and drop the /bin/bash from the shebang.
+ - drop localization of the usage message - this is inconsistent with all
+ other init scripts on the system.
+ - use case instead of grep for string matching
+ - Patch based on work done by Steve Langasek, thanks (LP: #484386)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Sun, 06 Dec 2009 18:36:43 +0100
+
+dkms (2.1.0.1-2) unstable; urgency=low
+
+ [ David Paleino ]
+ * [47e453e] debian/patches/02-improve_error_message.patch: improve
+ error message, and add Debian/Ubuntu specific suggestion.
+ (Closes: #553600)
+
+ [ Giuseppe Iuculano ]
+ * [27f707a] Do not build as a nobody user and don't chown the build
+ directory, no files should be owned by nobody. (Closes: #554168)
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Tue, 03 Nov 2009 22:52:30 +0100
+
+dkms (2.1.0.1-1) unstable; urgency=low
+
+ * [34e006a] debian/patches/02_dkms.8.patch: Fix typos in the man page,
+ thanks A. Costa (Closes: #534662)
+ * [7735c89] Imported Upstream version 2.1.0.1
+ * [3bdb6c1] Removed all patches, they are now merged in upstream.
+ Thanks to Mario Limonciello.
+ * [dbb778c] debian/rules: template-dkms-mkdeb/debian/postrm was
+ removed in upstream, do not chmod it
+ * [09cd9d3] Updated to standards version 3.8.3 (No changes needed)
+ * [96663f0] Updated my email address and removed DM-Upload-Allowed
+ control field. Thanks to Ben Hutchings for his previous sponsorship
+ * [4848db2] debian/patches/01_init.patch: Added dkms_autoinstaller in
+ Provides and fixed init.d-script-does-not-provide-itself lintian
+ warning
+
+ -- Giuseppe Iuculano <iuculano@debian.org> Sat, 03 Oct 2009 11:12:04 +0200
+
+dkms (2.0.22.0-1) unstable; urgency=low
+
+ * [023618e] Imported Upstream version 2.0.22.0
+ * [d6e0b15] Deleted patches merged in upstream: 01-fix_manpage.patch
+ 02-fix_distribution.patch 04-use_su-to-root.patch 05-
+ do_not_check_admin_group.patch 06-fakeroot.patch 07-exit-if-build-
+ fails.patch 09-lilo_detection.patch 10-lsb.patch 11-bash-
+ completion.patch 12-use_invoke-rc.d.patch 13-template.patch
+ 14_new_module-init-tools.patch 08-support_kernel-img.conf.patch
+ * [c5b7822] debian/patches/15_modprobe.patch: do not create an empty
+ /etc/modprobe.d/package_name.conf. It is opened and parsed every
+ time modprobe is run (and it is run very often at boot time). Create
+ it only if necessary.
+ * [3731c00] debian/patches/08-support_kernel-img.conf.patch: Use
+ update-initramfs, it is the default in Debian/Ubuntu and it also computes
+ and stores some checksums. (Closes: #529038)
+ * [f4a197f] debian/patches/16_old_module.patch: Do not move away the old
+ module, by default dkms install the new one in
+ /lib/modules/<kernelversion>/updates/dkms (Closes: #529059)
+ * [db7ffe7] debian/patches/01_kernel_postinst.patch: shut up "which" in the
+ the kernel kernel_postinst.d script, only the exit code is needed.
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it> Fri, 05 Jun 2009 22:00:35 +0200
+
+dkms (2.0.21.1-1) unstable; urgency=low
+
+ * [bcda131] Imported Upstream version 2.0.21.1
+ * [487ad26] debian/patches/13-template.patch:
+ Updated template-dkms-mkdeb Changes:
+ - Bump to debhelper 7 compatibility levels
+ - Updated to standards version 3.8.1
+ - Use Dynamic Kernel Modules Support Team as maintainer field
+ - Remove bash and add ${misc:Depends} in Depends
+ - Use dh_prep instead of dh_clean -k
+ * [c75e860] Updated to standards version 3.8.1 (No changes needed)
+ * [0d14f3e] Update dkms to check for /etc/modprobe.d/dkms.conf,
+ dh_installmodules now gives files in /etc/modprobe.d a .conf syntax,
+ as required by new module-init-tools.
+ * [ceff6d3] Move to kernel section as by ftpmasters override
+ * [aa84c76] debian/control: Fix VCS-Browser field
+ * [6cd45ec] debian/patches/15_modprobe.patch: Do not install
+ /etc/modprobe.d/dkms, it only contains comments and is opened and
+ parsed every time modprobe is run (and it is run very often at boot
+ time). Use instead (and create if necessary)
+ /etc/modprobe.d/package_name.conf. (Closes: #525379)
+ * [171907c] debian/postinst: if /etc/modprobe.d/dkms is modified, put
+ its content in /etc/modprobe.d/dkms.conf and remove it.
+ * [426868b] update debian/copyright to add Giuseppe Iuculano to
+ copyright on debian/*
+ * [1ffb2cd] Removed 03-use-new-header_postinst.d_directory.patch,
+ /etc/kernel/header_postinst.d is used only by kernel-package. dkms
+ must use /etc/kernel/postinst.d/ directory.
+ * [eff2f3e] debian/control: demoted linux-headers and linux-image in
+ Recommends, removed kernel-package and build-essential from Depends,
+ and added only gcc and make.
+ * [508c115] debian/postinst: Remove also
+ /etc/kernel/header_postinst.d/dkms and do an init script remove to
+ un-do the "bad" links created by previous version
+
+ [ Mario Limonciello ]
+ * [848d7f9] update debian/copyright to add Mario Limonciello to
+ copyright on debian/*
+ * [791fc37] Update debian/rules to only run DKMS on the startup
+ targets. This change was proposed from Ubuntu some time back as DKMS
+ doesn't do anything on shutdown.
+
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it> Mon, 04 May 2009 09:55:18 +0200
+
+dkms (2.0.21.0-1) unstable; urgency=low
+
+ * [0c2c36b] New Upstream version 2.0.21.0
+ * First Debian release (Closes: #481590)
+ * [6723982] debian/patches/: Refreshed patches, and deleted
+ 03-remove_dkms_lib_directory_if_empty.patch (now it is in upstream)
+ * [592acec] debian/patches/04-use_su-to-root.patch: Do not test for $DISPLAY
+ as su-to-root does not require an X display
+ * [22d2ce2] debian/patches/09-lilo_detection.patch: grep for
+ do_bootloader instead of postinst_hook
+ * [b910eb3] debian/patches/03-use-new-
+ header_postinst.d_directory.patch: Use new
+ /etc/kernel/header_postinst.d directory introduced in kernel-package
+ 11.017
+ * [f59cc66] debian/control: Add kernel-package (>= 11.017) in Depends
+ * [6ebb0c4] Removed debian/postinst and debian/prerm
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it> Mon, 16 Feb 2009 11:06:58 +0100
+
+dkms (2.0.20.4-1) unstable; urgency=low
+
+ [ David Paleino ]
+ * debian/control:
+ - using new Homepage field in source stanza
+ - setting team as Maintainer
+ - adding myself and Mario Limonciello as Uploaders
+ - removed awk and bash dependencies: they are "essential" (de facto)
+ packages (LP: #314774)
+ - DM-Upload-Allowed set
+ - added menu|sudo to Recommends
+ * debian/copyright:
+ - updated to machine-readable format
+ - clarified license for debian/HOWTO.Debian
+ * debian/compat bumped to 7
+ * debian/docs:
+ - sample.{conf,spec} moved to debian/examples
+ * debian/rules updated
+ * debian/patches/01-fix_manpage.patch added, to fix hyphen-used-as-minus-sign
+ lintian warning
+ * debian/postinst added
+ * debian/HOWTO.Debian from Ubuntu package added
+ * debian/modprobe added
+ * debian/prerm:
+ - use sed instead of tricky grep hack
+ - always do the default thing
+ * added get-svn-source to debian/rules
+ * debian/patches/08-use_update-initramfs.patch: updated to parse
+ /etc/kernel-img.conf
+ * debian/patches/11-bash-completion.patch:
+ - better usage of bash builtins
+ - _filename_parts(): fix wrong behaviour when /usr/src/ is a symlink
+ - added patch description
+
+ [ Giuseppe Iuculano ]
+ * Added myself as Uploader
+ * Standards-Version bumped to 3.8.0
+ - Add debian/README.source to document quilt usage
+ * debian/prerm: quiet grep, do not write anything to standard output.
+ * debian/rules:
+ - remove some pointless blank lines
+ - fix dh-clean-k-is-deprecated lintian warning, use dh_prep instead of
+ dh_clean -k
+ * debian/patches/03-remove_dkms_lib_directory_if_empty.patch: Merge from
+ Ubuntu, ensure that the /lib/modules/<version>/updates/dkms directory is
+ removed if it is empty after a removal. This allows the modules directory
+ to be removed as it becomes empty.
+ * debian/patches/04-use_su-to-root.patch: Use su-to-root if available
+ * debian/patches/05-do_not_check_admin_group.patch:
+ - Do not check for admin group, this isn't a Debian standard group.
+ - added a g modifier to replace all underscores in function make_debian()
+ * debian/patches/06-fakeroot.patch: Do not use fakeroot for source-
+ only build, and use -rfakeroot for binary build
+ * debian/patches/07-exit-if-build-fails.patch: Fix exit when build
+ fails
+ * debian/patches/08-support_kernel-img.conf.patch: Use update-initramfs
+ if ramdisk value in /etc/kernel-img.conf is missing
+ * debian/patches/09-lilo_detection.patch: check /etc/kernel-img.conf
+ to find if user is using grub
+ * debian/patches/10-lsb.patch:
+ - /etc/lsb-release is not present in Debian, so run run lsb_release
+ - Added Debian as known distro in override_dest_module_location()
+ * debian/control:
+ - Added lsb-release in Recommends
+ - Updated VCS control field
+ - Added build-essential in Depends (LP: #304014),
+ Removed ${shlibs:Depends} from Depends and removed make, dpkg-dev and
+ gcc from Recommends
+ * debian/patches/11-bash-completion.patch: Improve bash-completion
+ support (Origin Mandriva)
+ * debian/patches/01-fix_manpage.patch: fix wrong path into man page
+ (LP: #292289)
+ * debian/patches/12-use_invoke-rc.d.patch: Use invoke-rc.d in
+ kernel_postinst.d_dkms and fix script-calls-init-script-directly lintian
+ warning
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it> Thu, 08 Jan 2009 15:01:39 +0100
+
+dkms (2.0.19-0ubuntu2) hardy; urgency=low
+
+ * Depend on awk instead of gawk. All variants of awk provide the
+ currently required functionality.
+
+ -- Mario Limonciello <mario_limonciello@dell.com> Wed, 26 Mar 2008 16:51:33 -0500
+
+dkms (2.0.19-0ubuntu1) hardy; urgency=low
+
+ * New upstream version.
+ - Fixes appending date to debian/changelog in mkdeb.
+
+ -- Mario Limonciello <mario_limonciello@dell.com> Wed, 26 Mar 2008 10:46:52 -0500
+
+dkms (2.0.17.6-0ubuntu1) hardy; urgency=low
+
+ [ Matt Domsch ]
+ * Correct kernel uninstall trigger (LP: #192240)
+ * Call udevadm trigger if present, fall back to udevtrigger (LP: #192241)
+ * Fix uninstallation with weak modules (Red Hat BZ#429410)
+ * debian/control:
+ - Update standards version to 3.7.3
+ - Add Vcs-git repository.
+
+ -- Mario Limonciello <mario_limonciello@dell.com> Mon, 18 Feb 2008 09:40:18 -0600
+
+dkms (2.0.17.4-0ubuntu4) hardy; urgency=low
+
+ * Fix -x call.
+
+ -- Scott James Remnant <scott@ubuntu.com> Fri, 14 Dec 2007 16:52:51 +0000
+
+dkms (2.0.17.4-0ubuntu3) hardy; urgency=low
+
+ * dkms: call udevadm instead of udevtrigger
+
+ -- Scott James Remnant <scott@ubuntu.com> Fri, 14 Dec 2007 16:15:13 +0000
+
+dkms (2.0.17.5-0ubuntu1) hardy; urgency=low
+
+ * Correct DKMS file install/uninstall problems (LP: #151644)
+ - call udevtrigger if we install a module for the currently running kernel
+ - uninstall from /extra before DEST_MODULE_LOCATION
+ - Run depmod after uninstall
+
+ -- Matt Domsch <Matt_Domsch@dell.com> Wed, 10 Oct 2007 16:50:00 -0500
+
+dkms (2.0.17.4-0ubuntu1) gutsy; urgency=low
+
+ * initial debian packaging for Ubuntu (LP: #121676)
+
+ -- Matt Domsch <Matt_Domsch@dell.com> Mon, 17 Sep 2007 09:58:46 -0500
diff --git a/debian/clean b/debian/clean
new file mode 100644
index 0000000..bacc8b2
--- /dev/null
+++ b/debian/clean
@@ -0,0 +1,2 @@
+debian/scripts/dh_dkms
+debian/scripts/dh_dkms.1
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..69d328c
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,65 @@
+Source: dkms
+Section: kernel
+Priority: optional
+Maintainer: Dynamic Kernel Module System Team <dkms@packages.debian.org>
+Uploaders: David Paleino <dapal@debian.org>,
+ Petter Reinholdtsen <pere@debian.org>,
+ Aron Xu <aron@debian.org>,
+ Mario Limonciello <Mario_Limonciello@dell.com>,
+ Andreas Beckmann <anbe@debian.org>,
+Build-Depends: debhelper-compat (= 13)
+Standards-Version: 4.6.2
+Homepage: https://github.com/dell/dkms
+Vcs-Git: https://salsa.debian.org/debian/dkms.git
+Vcs-Browser: https://salsa.debian.org/debian/dkms
+Rules-Requires-Root: no
+
+Package: dkms
+Architecture: all
+Multi-Arch: foreign
+Pre-Depends: lsb-release
+Depends: ${misc:Depends},
+ kmod | kldutils,
+ gcc | c-compiler,
+ dpkg-dev,
+ make | build-essential,
+ patch,
+Recommends: fakeroot,
+ sudo,
+ linux-headers-generic | linux-headers-686-pae | linux-headers-amd64 | linux-headers,
+Suggests: menu, e2fsprogs
+Breaks:
+# in buster, not in bullseye
+ sl-modem-dkms (<< 2.9.11~20110321-16.0),
+# in stretch, not in buster
+ blktap-dkms (<< 2.0.93-0.10.0),
+# in jessie, not in stretch
+ oss4-dkms (<< 4.2-build2020-1~),
+# in wheezy, not in jessie
+ blcr-dkms (<< 0.8.6~b3-1.0),
+Provides:
+ dkms-autopkgtest (= ${binary:Version}),
+Description: Dynamic Kernel Module System (DKMS)
+ DKMS is a framework designed to allow individual kernel modules to be upgraded
+ without changing the whole kernel. It is also very easy to rebuild modules as
+ you upgrade kernels.
+
+Package: dh-dkms
+Architecture: all
+Multi-Arch: foreign
+Depends:
+ ${perl:Depends},
+ ${misc:Depends},
+Breaks:
+ dkms (<< 3.0.3-3~),
+Replaces:
+ dkms (<< 3.0.3-3~),
+Provides:
+ dh-sequence-dkms,
+Description: debhelper addon for the Dynamic Kernel Module System (DKMS)
+ DKMS is a framework designed to allow individual kernel modules to be upgraded
+ without changing the whole kernel. It is also very easy to rebuild modules as
+ you upgrade kernels.
+ .
+ This package provides a debhelper add-on 'dkms' that simplifies packaging of
+ dkms kernel module source packages.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..4a7e34d
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,39 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Source: https://github.com/dell/dkms
+Upstream-Contact: they are listed on AUTHORS file
+
+Files: *
+Copyright: Ā© 2003-2022, Dell, Inc. <dkms-devel@lists.us.dell.com>
+License: GPL-2+
+
+
+Files: debian/*
+Copyright: Ā© 2008-2009, David Paleino <d.paleino@gmail.com>
+ Ā© 2005-2008, Matt Domsch <Matt_Domsch@dell.com>
+ Ā© 2008-2009, Mario Limonciello <Mario_Limonciello@dell.com>
+ Ā© 2008-2009, Giuseppe Iuculano <giuseppe@iuculano.it>
+ Ā© 2019-2023, Gianfranco Costamagna <locutusofborg@debian.org>
+ Ā© 2020-2023, Andreas Beckmann <anbe@debian.org>
+License: GPL-2+
+
+Files: debian/HOWTO.Debian
+Copyright: Ā© 2008-2020, Dell, Inc. <dkms-devel@lists.us.dell.com>
+License: GPL-2+
+
+License: GPL-2+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License,
+ or (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ .
+ On Debian systems, the complete text of the GNU General Public License
+ can be found in /usr/share/common-licenses/GPL-2 file.
diff --git a/debian/dh-dkms.install b/debian/dh-dkms.install
new file mode 100644
index 0000000..bc5fcae
--- /dev/null
+++ b/debian/dh-dkms.install
@@ -0,0 +1,4 @@
+debian/scripts/dh_dkms usr/bin
+debian/scripts/dh_dkms.1 usr/share/man/man1/
+debian/scripts/*-dkms usr/share/debhelper/autoscripts/
+debian/scripts/dkms.pm usr/share/perl5/Debian/Debhelper/Sequence/
diff --git a/debian/dkms.docs b/debian/dkms.docs
new file mode 100644
index 0000000..b017ad0
--- /dev/null
+++ b/debian/dkms.docs
@@ -0,0 +1 @@
+debian/HOWTO.Debian
diff --git a/debian/dkms.install b/debian/dkms.install
new file mode 100644
index 0000000..fc647cc
--- /dev/null
+++ b/debian/dkms.install
@@ -0,0 +1 @@
+debian/scripts/dkms-autopkgtest usr/lib/dkms/
diff --git a/debian/dkms.lintian-overrides b/debian/dkms.lintian-overrides
new file mode 100644
index 0000000..42abd78
--- /dev/null
+++ b/debian/dkms.lintian-overrides
@@ -0,0 +1,5 @@
+# dependency is provided by apport
+python3-script-but-no-python3-dep python3 (does not satisfy python3:any | python3-minimal:any) [usr/share/apport/package-hooks/dkms_packages.py]
+
+# this location is used by multiple external scripts to find dkms bits
+executable-in-usr-lib
diff --git a/debian/dkms.maintscript b/debian/dkms.maintscript
new file mode 100644
index 0000000..385ab3b
--- /dev/null
+++ b/debian/dkms.maintscript
@@ -0,0 +1,20 @@
+rm_conffile /etc/bash_completion.d/dkms 3.0.3-2~
+rm_conffile /etc/dkms/kernel_install.d_dkms 3.0.3-2~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/rules 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/prerm 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/postinst 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/dirs 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/copyright 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/control 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/compat 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/changelog 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/debian/README.Debian 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkdeb/Makefile 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/debian/rules 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/debian/copyright 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/debian/control 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/debian/compat 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/debian/changelog 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/debian/README.Debian 3.0.3-3~
+rm_conffile /etc/dkms/template-dkms-mkbmdeb/Makefile 3.0.3-3~
+rm_conffile /etc/dkms/sign_helper.sh 3.0.10-8~
diff --git a/debian/dkms.modprobe b/debian/dkms.modprobe
new file mode 100644
index 0000000..508b7f4
--- /dev/null
+++ b/debian/dkms.modprobe
@@ -0,0 +1,4 @@
+# modprobe information used for DKMS modules
+#
+# This is a stub file, should be edited when needed,
+# used by default by DKMS.
diff --git a/debian/dkms.postinst b/debian/dkms.postinst
new file mode 100644
index 0000000..c5342da
--- /dev/null
+++ b/debian/dkms.postinst
@@ -0,0 +1,18 @@
+#!/bin/sh
+set -e
+
+#DEBHELPER#
+
+if dpkg --compare-versions "$2" lt-nl "3.0.3-3~" ; then
+ for d in /etc/dkms/template-dkms-mkdeb/debian /etc/dkms/template-dkms-mkdeb /etc/dkms/template-dkms-mkbmdeb/debian /etc/dkms/template-dkms-mkbmdeb
+ do
+ test ! -d $d || rmdir --ignore-fail-on-non-empty $d
+ done
+fi
+
+if dpkg --compare-versions "$2" lt-nl "3.0.10-8~" ; then
+ for f in /boot/*.old-dkms
+ do
+ test ! -f "$f" || rm -fv "$f"
+ done
+fi
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 0000000..cabf8bc
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,3 @@
+[DEFAULT]
+pristine-tar = True
+debian-branch = bookworm
diff --git a/debian/gitlab-ci.yml b/debian/gitlab-ci.yml
new file mode 100644
index 0000000..0c22dc4
--- /dev/null
+++ b/debian/gitlab-ci.yml
@@ -0,0 +1,3 @@
+include:
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
diff --git a/debian/patches/0001-default-built_module_name-0-to-PACKAGE_NAME.patch b/debian/patches/0001-default-built_module_name-0-to-PACKAGE_NAME.patch
new file mode 100644
index 0000000..ae73d88
--- /dev/null
+++ b/debian/patches/0001-default-built_module_name-0-to-PACKAGE_NAME.patch
@@ -0,0 +1,24 @@
+From 78bc5aa693ec9928778836469b815d2da5434e19 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Mon, 27 Mar 2023 01:39:01 +0200
+Subject: [PATCH] default built_module_name[0] to $PACKAGE_NAME
+
+$module is not yet set in add_source_tree
+---
+ dkms.in | 2 +-
+ run_test.sh | 13 ++++++++-----
+ 2 files changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/dkms.in b/dkms.in
+index 25d4b9e..6069e82 100644
+--- a/dkms.in
++++ b/dkms.in
+@@ -540,7 +540,7 @@ read_conf()
+ # If unset, set by defaults
+ [[ ! ${built_module_name[$index]} ]] && \
+ ((${#DEST_MODULE_LOCATION[@]} == 1)) && \
+- built_module_name[$index]=$module
++ built_module_name[$index]=$PACKAGE_NAME
+ [[ ! ${dest_module_name[$index]} ]] && \
+ dest_module_name[$index]=${built_module_name[$index]}
+ [[ ${built_module_location[$index]} && \
diff --git a/debian/patches/0002-man-clarify-dkms-add-arguments.patch b/debian/patches/0002-man-clarify-dkms-add-arguments.patch
new file mode 100644
index 0000000..16a1693
--- /dev/null
+++ b/debian/patches/0002-man-clarify-dkms-add-arguments.patch
@@ -0,0 +1,55 @@
+From 93461d6737f79bf53be3ce2e2b3b613fe1795aff Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Thu, 30 Mar 2023 18:48:01 +0200
+Subject: [PATCH] man: clarify 'dkms add' arguments
+
+---
+ dkms.8.in | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/dkms.8.in b/dkms.8.in
+index a3af903..47655e6 100644
+--- a/dkms.8.in
++++ b/dkms.8.in
+@@ -55,13 +55,16 @@ is a framework which allows kernel modules to be dynamically built
+ for each kernel on your system in a simplified and organized fashion.
+ .SH ACTIONS
+ .SY add
+-.OP module/module\-version
+-.OP /path/to/source\-tree
+-.OP /path/to/tarball.tar
++.OP "module/module\-version | /path/to/source\-tree | /path/to/tarball.tar"
+ .YS
+ .IP "" 4
+ Adds a module/module\-version combination to the tree for builds and installs.
+-If module/module\-version, \-m module/module\-version, or \-m module\ \-v version are passed as options, this command
++If
++.IR module/module\-version ,
++.IR "\-m module/module\-version" ,
++or
++.I \-m module\ \-v module\-version
++are passed as options, this command
+ requires source in
+ .I /usr/src/<module>\-<module\-version>/
+ as well as a properly
+@@ -74,7 +77,7 @@ is passed as an option, and source-tree contains a
+ file, it will copy
+ .I /path/to/source\-tree
+ to
+-.I /usr/src/module\-module\-version.
++.IR /usr/src/module\-module\-version .
+ If
+ .I /path/to/tarball.tar
+ is passed, this command behaves like the
+@@ -755,7 +758,7 @@ Used by the common postinst for DKMS modules. It controls if the build should be
+ line equivalent.
+ .TP
+ .B $sign_file
+-This is the path of the
++This is the path of the
+ .I sign-file
+ kernel binary that is used to sign the kernel modules. The variable
+ .B $kernelver
+--
+2.20.1
+
diff --git a/debian/patches/0003-print-a-warning-if-proc-is-not-mounted.patch b/debian/patches/0003-print-a-warning-if-proc-is-not-mounted.patch
new file mode 100644
index 0000000..dd0ee6f
--- /dev/null
+++ b/debian/patches/0003-print-a-warning-if-proc-is-not-mounted.patch
@@ -0,0 +1,46 @@
+From 0285b2ad62086f868c23414fe46d0ccdcbe8c6db Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Fri, 31 Mar 2023 09:45:00 +0200
+Subject: [PATCH] print a warning if /proc is not mounted
+
+---
+ dkms.in | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/dkms.in b/dkms.in
+index 3f5fc41..6a52a55 100644
+--- a/dkms.in
++++ b/dkms.in
+@@ -672,7 +672,7 @@ get_module_verinfo(){
+ ;;
+ esac
+ done < <(modinfo "$1")
+-
++
+ echo -E "${ver}"
+ # Use obsolete checksum info if srcversion is not available
+ echo -E "${srcver:-$checksum}"
+@@ -767,7 +767,7 @@ check_version_sanity()
+ return 0
+ fi
+ local dkms_module=$(compressed_or_uncompressed "$dkms_tree/$module/$module_version/$1/$2/module/" "${4}")
+-
++
+ local cmp_res="$(compare_module_version "${kernels_module}" "${dkms_module}")"
+ if [[ "${cmp_res}" = ">" ]]; then
+ if [[ ! "$force" ]]; then
+@@ -2499,6 +2499,11 @@ done
+
+ # Sanity checking
+
++# The <(cmd) idiom does not work if /proc is not mounted
++if [ ! -e <(echo) ]; then
++ warn $"dkms will not function properly if /proc is not mounted."
++fi
++
+ # Error out if binaries-only is set and source-only is set
+ if [[ $binaries_only && $source_only ]]; then
+ die 8 $" You have specified both --binaries-only and --source-only." \
+--
+2.20.1
+
diff --git a/debian/patches/0004-use-echo-n-as-fallback-for-log_daemon_msg.patch b/debian/patches/0004-use-echo-n-as-fallback-for-log_daemon_msg.patch
new file mode 100644
index 0000000..d06fe3f
--- /dev/null
+++ b/debian/patches/0004-use-echo-n-as-fallback-for-log_daemon_msg.patch
@@ -0,0 +1,33 @@
+From 1d95db4b07e31848335824e3facc78dd51e11f45 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Wed, 22 Mar 2023 16:39:22 +0100
+Subject: [PATCH] use 'echo -n' as fallback for log_daemon_msg
+
+the final newline is supplied by log_end_msg
+---
+ dkms_autoinstaller | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/dkms_autoinstaller b/dkms_autoinstaller
+index 2cd31b9..bff9ac5 100755
+--- a/dkms_autoinstaller
++++ b/dkms_autoinstaller
+@@ -23,13 +23,11 @@ elif [ -f /etc/rc.d/init.d/functions ]; then
+ . /etc/rc.d/init.d/functions
+ fi
+
+-# We only have these functions on debian/ubuntu
++# We only have these functions on Debian/Ubuntu
+ # so on other distros just stub them out
+ if [ ! -f /etc/debian_version ]; then
+- alias log_daemon_msg=/bin/echo
++ alias log_daemon_msg='/bin/echo -n'
+ log_end_msg() { if [ "$1" = "0" ]; then echo " Done. "; else echo " Failed. "; fi; }
+- alias log_action_begin_msg=log_daemon_msg
+- alias log_action_end_msg=log_end_msg
+ fi
+
+ exec="/usr/sbin/dkms"
+--
+2.20.1
+
diff --git a/debian/patches/0005-use-log_action_msg-instead-of-log_daemon_msg-w-o-log.patch b/debian/patches/0005-use-log_action_msg-instead-of-log_daemon_msg-w-o-log.patch
new file mode 100644
index 0000000..cc138a8
--- /dev/null
+++ b/debian/patches/0005-use-log_action_msg-instead-of-log_daemon_msg-w-o-log.patch
@@ -0,0 +1,33 @@
+From 31e43a6a7f7241f552e12c1464bdefb85b40f033 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Fri, 17 Mar 2023 12:30:52 +0100
+Subject: [PATCH] use log_action_msg instead of log_daemon_msg w/o log_end_msg
+
+---
+ dkms_autoinstaller | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/dkms_autoinstaller b/dkms_autoinstaller
+index bff9ac5..8c9450c 100755
+--- a/dkms_autoinstaller
++++ b/dkms_autoinstaller
+@@ -28,6 +28,7 @@ fi
+ if [ ! -f /etc/debian_version ]; then
+ alias log_daemon_msg='/bin/echo -n'
+ log_end_msg() { if [ "$1" = "0" ]; then echo " Done. "; else echo " Failed. "; fi; }
++ alias log_action_msg=/bin/echo
+ fi
+
+ exec="/usr/sbin/dkms"
+@@ -45,7 +46,7 @@ case "$1" in
+ kernel=$(uname -r)
+ fi
+ if [ -f /etc/dkms/no-autoinstall ]; then
+- log_daemon_msg "$prog: autoinstall for dkms modules has been disabled"
++ log_action_msg "$prog: autoinstall for dkms modules has been disabled"
+ else
+ log_daemon_msg "$prog: running auto installation service for kernel $kernel"
+ dkms autoinstall --kernelver $kernel
+--
+2.20.1
+
diff --git a/debian/patches/0006-dkms_autoinstaller-skip-autoinstall-if-headers-are-m.patch b/debian/patches/0006-dkms_autoinstaller-skip-autoinstall-if-headers-are-m.patch
new file mode 100644
index 0000000..4a403f2
--- /dev/null
+++ b/debian/patches/0006-dkms_autoinstaller-skip-autoinstall-if-headers-are-m.patch
@@ -0,0 +1,62 @@
+From 2e65ddb5449a18602eb81776e87e048adfb5f114 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Wed, 22 Mar 2023 18:16:03 +0100
+Subject: [PATCH] dkms_autoinstaller: skip autoinstall if headers are missing
+
+align the behavior with dkms_common.postinst which also skips the build
+step if headers are not available
+
+Before this change the following installation order succeeds (while
+linux-headers-... is *not* installed) (Debian syntax):
+ apt install linux-image-... && apt install ...-dkms
+while the opposite order causes a failure:
+ apt install ...-dkms && apt install linux-image-...
+After this change both ways succeed.
+---
+ dkms_autoinstaller | 23 +++++++++++++++++++++++
+ 1 file changed, 23 insertions(+)
+
+diff --git a/dkms_autoinstaller b/dkms_autoinstaller
+index 8c9450c..1b54c51 100755
+--- a/dkms_autoinstaller
++++ b/dkms_autoinstaller
+@@ -38,6 +38,27 @@ test -f $exec || exit 0
+
+ [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
+
++uname_s=$(uname -s)
++
++_get_kernel_dir() {
++ KVER=$1
++ case ${uname_s} in
++ Linux) DIR="/lib/modules/$KVER/build" ;;
++ GNU/kFreeBSD) DIR="/usr/src/kfreebsd-headers-$KVER/sys" ;;
++ esac
++ echo $DIR
++}
++
++_check_kernel_dir() {
++ DIR=$(_get_kernel_dir $1)
++ case ${uname_s} in
++ Linux) test -e $DIR/include ;;
++ GNU/kFreeBSD) test -e $DIR/kern && test -e $DIR/conf/kmod.mk ;;
++ *) return 1 ;;
++ esac
++ return $?
++}
++
+ case "$1" in
+ start)
+ if [ -n "$2" ]; then
+@@ -47,6 +68,8 @@ case "$1" in
+ fi
+ if [ -f /etc/dkms/no-autoinstall ]; then
+ log_action_msg "$prog: autoinstall for dkms modules has been disabled"
++ elif ! _check_kernel_dir $kernel; then
++ log_action_msg "$prog: autoinstall for kernel $kernel was skipped since the kernel headers for this kernel do not seem to be installed"
+ else
+ log_daemon_msg "$prog: running auto installation service for kernel $kernel"
+ dkms autoinstall --kernelver $kernel
+--
+2.20.1
+
diff --git a/debian/patches/0007-prepare_build-use-return-code-77-if-skipping-due-to-.patch b/debian/patches/0007-prepare_build-use-return-code-77-if-skipping-due-to-.patch
new file mode 100644
index 0000000..2f2cf9b
--- /dev/null
+++ b/debian/patches/0007-prepare_build-use-return-code-77-if-skipping-due-to-.patch
@@ -0,0 +1,66 @@
+From 3638f1119debd177b46836cdf7502d25e9888042 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Fri, 17 Mar 2023 10:54:49 +0100
+Subject: [PATCH] prepare_build: use return code 77 if skipping due to
+ BUILD_EXCLUSIVE_*
+
+error code 9 is used at multiple locations throughout the dkms code
+to indicate different unrelated errors
+
+error code 77 has been used by GNU autotest for skipped tests and was
+later adopted by other testing frameworks
+---
+ dkms.8.in | 11 +++++++----
+ dkms.in | 2 +-
+ dkms_common.postinst | 2 +-
+ run_test.sh | 4 ++--
+ 4 files changed, 11 insertions(+), 8 deletions(-)
+
+diff --git a/dkms.8.in b/dkms.8.in
+index b003da6..b197878 100644
+--- a/dkms.8.in
++++ b/dkms.8.in
+@@ -654,10 +654,13 @@ missing or broken dependencies cause non-fatal warnings.
+ .TP
+ .B BUILD_EXCLUSIVE_KERNEL=
+ This optional directive allows you to specify a regular expression which defines
+-the subset of kernels which DKMS is allowed to build your module for. If the kernel
+-being built for does not match against this regular expression, the dkms build
+-will error out. For example, if you set it as ="^2\.4.*", your module would not be
+-built for 2.6 kernels.
++the subset of kernels which DKMS is allowed to build your module for.
++If the kernel being built for does not match against this regular expression (or
++does not the satisfy the constraints of any other
++.B BUILD_EXCLUSIVE_*
++directive), the dkms build will error out with exit code 77.
++For example, if you set it as ="^2\.4.*", your module would not be built for 2.6
++or later kernels.
+ .TP
+ .B BUILD_EXCLUSIVE_ARCH=
+ This optional directive functions very similarly to
+diff --git a/dkms.in b/dkms.in
+index 0383bef..128157b 100644
+--- a/dkms.in
++++ b/dkms.in
+@@ -1023,7 +1023,7 @@ prepare_build()
+ read_conf_or_die "$kernelver" "$arch"
+
+ # Error out if build_exclude is set
+- [[ $build_exclude ]] && die 9 \
++ [[ $build_exclude ]] && die 77 \
+ $"The $base_dir/dkms.conf for module $module includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch."\
+ $"This indicates that it should not be built."
+
+diff --git a/dkms_common.postinst b/dkms_common.postinst
+index 3f1ddf3..a66a23f 100644
+--- a/dkms_common.postinst
++++ b/dkms_common.postinst
+@@ -238,7 +238,7 @@ for KERNEL in $KERNELS; do
+ set +e
+ dkms build -m $NAME -v $VERSION -k $KERNEL $ARCH > /dev/null
+ case $? in
+- 9)
++ 77)
+ set -e
+ echo "Skipped."
+ continue
diff --git a/debian/patches/BUILD_EXCLUSIVE_CONFIG.patch b/debian/patches/BUILD_EXCLUSIVE_CONFIG.patch
new file mode 100644
index 0000000..26701a1
--- /dev/null
+++ b/debian/patches/BUILD_EXCLUSIVE_CONFIG.patch
@@ -0,0 +1,41 @@
+Author: Andreas Beckmann <anbe@debian.org>
+Description: add BUILD_EXCLUSIVE_CONFIG
+ support build exclusion depending on kernel features being present/absent,
+ e.g. BUILD_EXCLUSIVE_CONFIG="CONFIG_FOO !CONFIG_BAR"
+Forwarded: https://github.com/dell/dkms/issues/219
+
+--- a/dkms.in
++++ b/dkms.in
+@@ -28,6 +28,7 @@ shopt -s extglob
+ readonly dkms_conf_variables="CLEAN PACKAGE_NAME
+ PACKAGE_VERSION POST_ADD POST_BUILD POST_INSTALL POST_REMOVE PRE_BUILD
+ PRE_INSTALL BUILD_DEPENDS BUILD_EXCLUSIVE_KERNEL BUILD_EXCLUSIVE_ARCH
++ BUILD_EXCLUSIVE_CONFIG
+ build_exclude OBSOLETE_BY MAKE MAKE_MATCH
+ PATCH PATCH_MATCH patch_array BUILT_MODULE_NAME
+ built_module_name BUILT_MODULE_LOCATION built_module_location
+@@ -622,6 +623,15 @@ read_conf()
+ # Set build_exclude
+ [[ $BUILD_EXCLUSIVE_KERNEL && ! $1 =~ $BUILD_EXCLUSIVE_KERNEL ]] && build_exclude="yes"
+ [[ $BUILD_EXCLUSIVE_ARCH && ! $2 =~ $BUILD_EXCLUSIVE_ARCH ]] && build_exclude="yes"
++ if [[ $BUILD_EXCLUSIVE_CONFIG && -e $kernel_source_dir/.config ]]; then
++ local kconf
++ for kconf in $BUILD_EXCLUSIVE_CONFIG ; do
++ case "$kconf" in
++ !*) grep -q -E "^${kconf#!}=[ym]" $kernel_source_dir/.config && build_exclude="yes" ;;
++ *) grep -q -E "^${kconf}=[ym]" $kernel_source_dir/.config || build_exclude="yes" ;;
++ esac
++ done
++ fi
+
+ # Fail if absolutely no DEST_MODULE_LOCATION
+ if ((${#dest_module_location[@]} == 0)); then
+@@ -1009,7 +1019,7 @@ prepare_build()
+
+ # Error out if build_exclude is set
+ [[ $build_exclude ]] && die 77 \
+- $"The $base_dir/dkms.conf for module $module includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch."\
++ $"The $base_dir/dkms.conf for module $module includes a BUILD_EXCLUSIVE directive which does not match this kernel/arch/config."\
+ $"This indicates that it should not be built."
+
+ # Error out if source_tree is basically empty (binary-only dkms tarball w/ --force check)
diff --git a/debian/patches/fix-builtin-archive-dkms-coinstallation.patch b/debian/patches/fix-builtin-archive-dkms-coinstallation.patch
new file mode 100644
index 0000000..4cc51dd
--- /dev/null
+++ b/debian/patches/fix-builtin-archive-dkms-coinstallation.patch
@@ -0,0 +1,45 @@
+Description: Allow co-installing in-archive and builtin dkms
+ Fix regression preventing co-installing in-archive dkms packages with
+ kernels that built-in identical or newer versions of the same dkms
+ package.
+Author: Dimitri John Ledkov <dimitri.ledkov@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/2008269
+
+
+--- a/dkms.in
++++ b/dkms.in
+@@ -1226,7 +1226,15 @@ do_install()
+ echo $""
+ echo $"${dest_module_name[$count]}$module_suffix:"
+ # Check this version against what is already in the kernel
+- check_version_sanity "$kernelver" "$arch" "$obsolete_by" "${dest_module_name[$count]}" || continue
++ if ! check_version_sanity "$kernelver" "$arch" "$obsolete_by" "${dest_module_name[$count]}"; then
++ # On Ubuntu it is common to apt install builtin & dkms
++ # packages from the archive Assume .deb package
++ # installation is successful in such cases. To
++ # actually activate one will need to use dkms install
++ # --force on the package
++ any_module_installed=1
++ continue
++ fi
+
+ if ((count == 0)) && ! run_build_script pre_install "$pre_install" && ! [[ $force ]]; then
+ die 101 $"pre_install failed, aborting install." \
+--- a/run_test.sh
++++ b/run_test.sh
+@@ -726,6 +726,7 @@ dkms_multiver_test/1.0, ${KERNEL_VER}, $
+ dkms_multiver_test/2.0, ${KERNEL_VER}, $(uname -m): built
+ EOF
+
++if false ; then
+ echo 'Installing the multiver test modules'
+ run_with_expected_output dkms install -k "${KERNEL_VER}" -m dkms_multiver_test -v 1.0 << EOF
+
+@@ -796,6 +797,7 @@ if [[ -e "/lib/modules/${KERNEL_VER}/${e
+ echo >&2 "Error: module not removed in /lib/modules/${KERNEL_VER}/${expected_dest_loc}/dkms_multiver_test.ko${mod_compression_ext}"
+ exit 1
+ fi
++fi
+
+ echo 'Unbuilding the multiver test modules'
+ run_with_expected_output dkms unbuild -k "${KERNEL_VER}" -m dkms_multiver_test -v 1.0 << EOF
diff --git a/debian/patches/messaging.patch b/debian/patches/messaging.patch
new file mode 100644
index 0000000..7697d94
--- /dev/null
+++ b/debian/patches/messaging.patch
@@ -0,0 +1,16 @@
+--- a/dkms_autoinstaller
++++ b/dkms_autoinstaller
+@@ -71,9 +71,11 @@ case "$1" in
+ elif ! _check_kernel_dir $kernel; then
+ log_action_msg "$prog: autoinstall for kernel $kernel was skipped since the kernel headers for this kernel do not seem to be installed"
+ else
+- log_daemon_msg "$prog: running auto installation service for kernel $kernel"
++ log_action_msg "$prog: running auto installation service for kernel $kernel"
+ dkms autoinstall --kernelver $kernel
+- log_end_msg $?
++ res=$?
++ log_daemon_msg "$prog: autoinstall for kernel" "$kernel"
++ log_end_msg $res
+ fi
+ ;;
+ stop|restart|force-reload|status|reload)
diff --git a/debian/patches/reinstate-enroll.patch b/debian/patches/reinstate-enroll.patch
new file mode 100644
index 0000000..0c46db8
--- /dev/null
+++ b/debian/patches/reinstate-enroll.patch
@@ -0,0 +1,16 @@
+Description: Upstream pull request incorrectly drops enroll-key option
+ When a brand new secureboot key is created, and it hasn't been
+ previously enrolled as a mok key, it will be rejected by the
+ kernel. After creating a new key, one should be enrolling it.
+Index: dkms/dkms.in
+===================================================================
+--- dkms.orig/dkms.in
++++ dkms/dkms.in
+@@ -956,6 +956,7 @@ prepare_signing()
+ fi
+ echo "Certificate or key are missing, generating them using update-secureboot-policy..."
+ SHIM_NOTRIGGER=y update-secureboot-policy --new-key &>/dev/null
++ update-secureboot-policy --enroll-key
+ fi
+
+ ;;
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..3b80e22
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,14 @@
+0001-default-built_module_name-0-to-PACKAGE_NAME.patch
+0002-man-clarify-dkms-add-arguments.patch
+0003-print-a-warning-if-proc-is-not-mounted.patch
+0004-use-echo-n-as-fallback-for-log_daemon_msg.patch
+0005-use-log_action_msg-instead-of-log_daemon_msg-w-o-log.patch
+0006-dkms_autoinstaller-skip-autoinstall-if-headers-are-m.patch
+0007-prepare_build-use-return-code-77-if-skipping-due-to-.patch
+
+messaging.patch
+version-sort.patch
+BUILD_EXCLUSIVE_CONFIG.patch
+spelling.patch
+reinstate-enroll.patch
+fix-builtin-archive-dkms-coinstallation.patch
diff --git a/debian/patches/spelling.patch b/debian/patches/spelling.patch
new file mode 100644
index 0000000..40ecf3c
--- /dev/null
+++ b/debian/patches/spelling.patch
@@ -0,0 +1,16 @@
+Author: Andreas Beckmann <anbe@debian.org>
+Description: spelling corrections
+
+Index: dkms/dkms_common.postinst
+===================================================================
+--- dkms.orig/dkms_common.postinst
++++ dkms/dkms_common.postinst
+@@ -254,7 +254,7 @@
+ dkms_status=$(dkms status -m $NAME -v $VERSION -k $KERNEL $ARCH)
+ else
+ echo "Module build for kernel $KERNEL was skipped since the"
+- echo "kernel headers for this kernel does not seem to be installed."
++ echo "kernel headers for this kernel do not seem to be installed."
+ fi
+ fi
+
diff --git a/debian/patches/version-sort.patch b/debian/patches/version-sort.patch
new file mode 100644
index 0000000..d0f0327
--- /dev/null
+++ b/debian/patches/version-sort.patch
@@ -0,0 +1,22 @@
+--- a/dkms_common.postinst
++++ b/dkms_common.postinst
+@@ -127,7 +127,7 @@ if [ -r /etc/dkms/framework.conf ]; then
+ . /etc/dkms/framework.conf
+ fi
+
+-KERNELS=$(ls /lib/modules/ 2>/dev/null || true)
++KERNELS=$(ls -v /lib/modules/ 2>/dev/null || true)
+ CURRENT_KERNEL=$(uname -r)
+
+ #We never want to keep an older version side by side to prevent conflicts
+--- a/dkms.in
++++ b/dkms.in
+@@ -269,7 +269,7 @@ setup_kernels_arches()
+ kernelver[$i]=${line%/*}
+ arch[$i]=${line#*/}
+ i=$(($i + 1))
+- done < <(module_status_built "$module" "$module_version")
++ done < <(module_status_built "$module" "$module_version" | sort -V)
+ fi
+
+ # Set default kernel version and arch, if none set (but only --all isn't set)
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..2588aa9
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,23 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+include /usr/share/dpkg/pkg-info.mk
+
+%:
+ dh $@
+
+debian/scripts/dh_dkms: debian/scripts/dh_dkms.in
+ sed -r "s,^#VERSION#,our \$$VERSION = \"$(DEB_VERSION)\";," $< > $@
+ chmod +x $@
+
+debian/scripts/dh_dkms.1: debian/scripts/dh_dkms
+ pod2man \
+ --center "DKMS Debhelper" \
+ --release $(DEB_VERSION_UPSTREAM) \
+ $< > $@
+
+override_dh_auto_build: debian/scripts/dh_dkms
+override_dh_auto_build: debian/scripts/dh_dkms.1
+
+override_dh_auto_install:
+ $(MAKE) install-debian DESTDIR=$(CURDIR)/debian/dkms
diff --git a/debian/scripts/dh_dkms.in b/debian/scripts/dh_dkms.in
new file mode 100755
index 0000000..b956797
--- /dev/null
+++ b/debian/scripts/dh_dkms.in
@@ -0,0 +1,185 @@
+#!/usr/bin/perl -w
+
+=head1 NAME
+
+dh_dkms - correctly handle DKMS usage by a kernel module package
+
+=cut
+
+use strict;
+use Debian::Debhelper::Dh_Lib;
+
+=head1 SYNOPSIS
+
+B<dh_dkms> [S<I<debhelper options>>] [S<B<-l>>] [S<B<-V>[I<version>]>] [S<B<--> I<file>>]
+
+=head1 DESCRIPTION
+
+dh_dkms is a debhelper program that is responsible for correctly setting
+postinst, postrm and dependencies in kernel module packages using DKMS.
+
+If a file named debian/package.dkms exists, then different actions are
+performed, depending on its contents.
+
+=head1 FILES
+
+=over 4
+
+=item debian/I<package>.dkms
+
+=item debian/dkms
+
+It can be a proper configuration file, and in this case it would be installed
+in the proper directory as dkms.conf.
+
+It can also point to another file (this should be used when the configuration
+is provided by upstream), and in this case that file will be installed as dkms.conf
+in the proper directory.
+
+This file can only miss if a filename is provided when calling dh_dkms.
+
+=back
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-l>, B<--legacy>
+
+Add code to also support DKMS versions < 2.1.0.0.
+
+=item B<-V>, B<-V> I<version>
+
+If C<PACKAGE_VERSION> in F<dkms.conf> is set to C<#MODULE_VERSION#>, set it to
+the given I<version> or, if none is given, default to the upstream version of
+the current package. Otherwise, leave the value specified in F<dkms.conf>.
+
+=item B<--> I<file>
+
+Don't look for debian/I<package>.dkms or debian/dkms, but install I<file> as dkms.conf.
+
+=back
+
+=head1 NOTES
+
+Note that this command is not idempotent. L<dh_prep(1)> should be called
+between invocations of this command. Otherwise, it may cause multiple
+instances of the same text to be added to maintainer scripts.
+
+=cut
+
+# placeholder substituted at build time
+# is shown along generated autoscripts
+#VERSION#
+
+init(options => {
+ "l|legacy" => \$dh{LEGACY_DKMS},
+});
+
+foreach my $package (@{$dh{DOPACKAGES}}) {
+ #next if is_udeb($package);
+
+ my $tmp = tmpdir($package);
+ my $dkms_dir = "/usr/lib/dkms/";
+ my $dkms_conf = pkgfile($package, "dkms");
+ my $is_snippet = 0;
+ my @other_conf;
+ my $name;
+ my $package_name;
+ my $package_version;
+ my $build_exclusive_config;
+
+ if ($dkms_conf) {
+ # let's see if it's a proper snippet
+ open(IN, "< $dkms_conf");
+ while (my $l = <IN>) {
+ $l =~ /PACKAGE_NAME=(["'])(.*)\1/ && ($is_snippet = 1);
+ }
+ close(IN);
+
+ if ($is_snippet) {
+ $name = $dkms_conf;
+ }
+ else {
+ my @search_dirs = ($dh{SOURCEDIR} // '.', default_sourcedir($package));
+ @other_conf = filearray($dkms_conf, \@search_dirs);
+ if ($#other_conf > 1) {
+ error "cannot list more than one file in $dkms_conf!";
+ }
+ else {
+ $name = $other_conf[0];
+ }
+ }
+ }
+ elsif ($#ARGV == 0) {
+ $name = $ARGV[0];
+ }
+ else {
+ next;
+ }
+ verbose_print "installing $name as dkms.conf";
+
+ # now, parse our configuration file
+ open(IN, "< $name") || error("cannot read $name: $!");
+ while (my $l = <IN>) {
+ $l =~ /PACKAGE_NAME=(["']?)(.*)\1/ && ($is_snippet = 1 && $package_name = $2);
+ $l =~ /PACKAGE_VERSION=(["']?)(.*)\1/ && ($package_version = $2);
+ $l =~ /BUILD_EXCLUSIVE_CONFIG=(["']?)(.*)\1/ && ($build_exclusive_config = $2);
+ }
+ close(IN);
+
+ #$ENV{DH_AUTOSCRIPTDIR} = "debian/scripts/";
+ if ($build_exclusive_config) {
+ addsubstvar($package, "misc:Depends", "dkms", ">= 3.0.3-4~");
+ }
+ elsif ($dh{LEGACY_DKMS}) {
+ doit("install", "-p", "-D", "-m755", "$dkms_dir/common.postinst", "$tmp/usr/share/$package/postinst");
+ addsubstvar($package, "misc:Depends", "dkms");
+ }
+ else {
+ addsubstvar($package, "misc:Depends", "dkms", ">= 2.1.0.0");
+ }
+
+ if ($dh{V_FLAG_SET}) {
+ $package_version = $dh{V_FLAG};
+ if ($package_version eq "") {
+ # Call isnative because it sets $dh{VERSION}
+ # as a side effect.
+ isnative($package);
+ $package_version = $dh{VERSION};
+ # Remove the Debian revision
+ $package_version =~ s/-[^-]+$//;
+ }
+
+ my $old_name = $name;
+ $name = "debian/".pkgext($package)."dkms.debhelper";
+ doit("cp", "-a", $old_name, $name);
+ doit("sed", "-i", "s/#MODULE_VERSION#/$package_version/g", $name);
+ }
+
+ error "could not determine package name"
+ unless defined($package_name);
+
+ error "could not determine package version"
+ unless defined($package_version);
+
+ autoscript($package, "prerm", "prerm-dkms",
+ "s/#MODULE_NAME#/$package_name/;s/#MODULE_VERSION#/$package_version/");
+ autoscript($package, "postinst", "postinst-dkms",
+ "s/#MODULE_NAME#/$package_name/;s/#MODULE_VERSION#/$package_version/");
+ doit("install", "-p", "-D", "-m644", "$name", "$tmp/usr/src/$package_name-$package_version/dkms.conf");
+}
+
+=head1 SEE ALSO
+
+L<debhelper(1)>
+
+This program is part of the Debian DKMS package.
+
+L<dkms(8)>
+
+=head1 AUTHOR
+
+David Paleino <dapal@debian.org>
+
+=cut
diff --git a/debian/scripts/dkms-autopkgtest b/debian/scripts/dkms-autopkgtest
new file mode 100755
index 0000000..a8fe3df
--- /dev/null
+++ b/debian/scripts/dkms-autopkgtest
@@ -0,0 +1,229 @@
+#!/bin/sh
+# Common autopkgtest script for testing a dkms source package.
+# Author: Martin Pitt <martin.pitt@ubuntu.com>
+# Copyright: (C) 2014 Canonical Ltd.
+set -eu
+
+export DEBIAN_FRONTEND=noninteractive
+
+result=0
+summary=
+crlf="
+"
+
+header_packages=
+check_for_linux_headers() {
+ # Act only on the first run.
+ if [ -n "$header_packages" ]; then
+ return
+ fi
+
+ # Which Linux header packages are installed?
+ header_packages=$(dpkg-query -f '${Status} ${Package}\n' -W 'linux-headers-*' 2>/dev/null | sed -r -n 's/^install ok installed //p')
+ if [ -n "$header_packages" ]; then
+ echo "I: Using the following Linux header packages that were already installed:"
+ for p in $header_packages ; do
+ echo "I: $p"
+ done
+ return
+ fi
+
+ # Which Linux header packages could be installed?
+ # linux-doc is a dependency generated by autodep8 for autopkgtest-pkg-dkms
+ # install only linux-headers-* matching the source version of linux-doc
+ wanted_source_version=$(dpkg-query -f '${source:Version}' -W linux-doc 2>/dev/null || true)
+ candidates=$(apt-cache search --names-only '^linux-headers-' | awk '{print $1}' | grep -v -E -e '-common(-rt)?$')
+ echo "I: No Linux header packages are installed."
+ echo "I: Installing all available ones from src:linux $wanted_source_version:"
+ for p in $candidates ; do
+ if [ -z "$wanted_source_version" ]; then
+ echo "I: $p"
+ header_packages="$header_packages $p"
+ continue
+ fi
+ source_versions=$(apt-cache show $p | perl -ne 'if (/^$/) { print $s || $v, "\n"; $s=$v=""; } $s=$1 if /^Source: .* \((.*)\)$/; $v=$1 if /^Version: (.*)$/;')
+ for sv in $source_versions ; do
+ if [ "$sv" = "$wanted_source_version" ]; then
+ echo "I: install $p"
+ header_packages="$header_packages $p"
+ continue 2
+ fi
+ done
+ echo "I: skip $p"
+ done
+ RC=0
+ apt-get install --no-install-recommends -yq $header_packages </dev/null 2>&1 || RC=$?
+ if [ "$RC" -ne 0 ]; then
+ echo "E: Linux headers failed to install." >&2
+ exit 1
+ fi
+}
+
+run_pkg() {
+ pkg="$1"
+
+ test -x /usr/bin/openssl || apt-get install --no-install-recommends -yq openssl </dev/null 2>&1
+
+ echo "I: Removing binary package $pkg, to get clean state."
+ apt-get purge -yq $pkg </dev/null 2>&1 >/dev/null || true
+
+ echo "I: Installing binary package $pkg"
+ RC=0
+ apt-get install --no-install-recommends -yq $pkg </dev/null 2>&1 || RC=$?
+ if [ "$RC" -ne 0 ]; then
+ echo "E: Package $pkg failed to install." >&2
+ result=1
+ return
+ fi
+
+ # Try and remove dkms to spot packages which miss a dkms dependency
+ echo "I: Checking for missing dkms dependency by trying to deinstall dkms"
+ dpkg --remove dkms || true
+
+ if ! dkms_conf=$(dpkg -L $pkg | grep '/usr/src' | grep '/dkms.conf$'); then
+ echo "I: Package $pkg has no dkms.conf, skipping."
+ return
+ fi
+
+ check_for_linux_headers
+
+ echo "I: Testing binary package $pkg"
+
+ dkms_pkg=$(bash -c ". $dkms_conf > /dev/null; echo \$PACKAGE_NAME" 2>/dev/null)
+ dkms_ver=$(bash -c ". $dkms_conf > /dev/null; echo \$PACKAGE_VERSION" 2>/dev/null)
+ build_depends=$(bash -c ". $dkms_conf > /dev/null; echo \$BUILD_DEPENDS" 2>/dev/null)
+ versioned_build_depends=
+
+ for bd in $build_depends
+ do
+ bdpath=$(ls -d /usr/src/${bd}-*)
+ versioned_build_depends="$versioned_build_depends ${bd}/${bdpath#/usr/src/${bd}-}"
+ done
+
+ for k in $(ls -dv /lib/modules/*/build)
+ do
+ test -d "$k" || continue
+ kver="${k%/build}"
+ kver="${kver#/lib/modules/}"
+
+ # If any linux-meta is in triggers, only test abistems that
+ # match triggers otherwise continue. This helps integration
+ # with adt-matrix which specifically requests test results
+ # against each individual linux-meta and tracks unique results
+ # per kernel abi.
+ abistem=$(echo $kver | sed 's/-[a-z]*$//')
+ case "${ADT_TEST_TRIGGERS-}" in
+ *linux-meta*)
+ case "$ADT_TEST_TRIGGERS" in
+ *"$abistem"*)
+ ;;
+ *)
+ continue
+ ;;
+ esac
+ esac
+
+ for bdv in $versioned_build_depends
+ do
+ echo "I: Trying to install build dependency $bdv for $kver"
+ dkms install "$bdv" -k "$kver" || test $? = 77
+ done
+
+ echo "I: Trying to build $dkms_pkg/$dkms_ver for $kver"
+ res=0
+ dkms build -m "$dkms_pkg" -v "$dkms_ver" -k "$kver" || res=$?
+
+ if [ "$res" = 77 ]; then
+ echo "I: $dkms_pkg/$dkms_ver is not supported on $kver (BUILD_EXCLUSIVE directive), skipping."
+ summary="${summary}I: SKIP $kver${crlf}"
+ continue
+ fi
+
+ if [ "$res" != 0 ]; then
+ echo "E: $dkms_pkg/$dkms_ver failed to build for $kver" >&2
+ makelog="/var/lib/dkms/$dkms_pkg/$dkms_ver/build/make.log"
+ echo "========== $makelog ==========" >&2
+ cat "$makelog" >&2 || true
+ echo "====================" >&2
+ summary="${summary}I: FAIL $kver${crlf}"
+ result=1
+ continue
+ fi
+
+ if ! dkms install --force -m "$dkms_pkg" -v "$dkms_ver" -k "$kver" ; then
+ echo "E: $dkms_pkg/$dkms_ver failed to install for $kver" >&2
+ summary="${summary}I: FAIL $kver${crlf}"
+ result=1
+ continue
+ fi
+
+ echo "I: Testing if $dkms_pkg modules are correctly installed."
+ dkmsstatus="$(dkms status $dkms_pkg -k $kver)"
+ echo "$dkmsstatus"
+ if [ -z "$dkmsstatus" ]; then
+ echo "E: dkms status output is empty!" >&2
+ summary="${summary}I: FAIL $kver${crlf}"
+ result=1
+ continue
+ fi
+
+ if ! echo "$dkmsstatus" | grep -q "installed$"; then
+ echo "E: not installed" >&2
+ summary="${summary}I: FAIL $kver${crlf}"
+ result=1
+ continue
+ fi
+
+ summary="${summary}I: PASS $kver${crlf}"
+
+ done
+
+ # collect build logs as artifacts
+ if [ -d /var/lib/dkms ]; then
+ (cd /var/lib/dkms; find $dkms_pkg -name "make.log" -print0 | xargs -r -0 tar cvz) > "${AUTOPKGTEST_ARTIFACTS:-.}/$pkg-make-logs.tar.gz"
+ fi
+
+ # skip modprobing for now; this fails too often (needs particular
+ # hardware/firmware/etc)
+ # for mod in $(awk -F '"' '/^BUILT_MODULE_NAME/ {print $2}' $dkms_conf); do
+ # echo "I: modprobe $mod"
+ # if ! modprobe $mod; then
+ # echo "E: Failed to modprobe module $mod" >&2
+ # exit 1
+ # else
+ # echo "I: $modname loaded"
+ # fi
+ # done
+}
+
+# Do not (fail to) build the modules upon linux-header-* and *-dkms package
+# installation, which can cause apt-get to fail. We will do this later with
+# improved error reporting.
+# (This only works if the *-dkms package is not yet installed.)
+touch /etc/dkms/no-autoinstall
+
+pkg_list="$*"
+if [ -z "$pkg_list" ]; then
+ test -x /usr/bin/grep-dctrl || apt-get install --no-install-recommends -yq dctrl-tools </dev/null 2>&1
+ pkg_list="$(grep-dctrl -FDepends -e '(^| )dkms' -o -FPackage -e '\-dkms' debian/control -sPackage -n)"
+fi
+
+for pkg in $pkg_list; do
+ # package might be arch: restriction or udeb etc.
+ if ! apt-cache show $pkg >/dev/null 2>&1; then
+ echo "I: Skipping unavailable package $pkg"
+ continue
+ fi
+ run_pkg $pkg
+done
+
+if [ -n "$summary" ]; then
+ echo "I: Summary:"
+ echo -n "$summary"
+fi
+
+rm -f /etc/dkms/no-autoinstall
+
+exit $result
+
+# vim: sw=4:ts=4:et
diff --git a/debian/scripts/dkms.pm b/debian/scripts/dkms.pm
new file mode 100644
index 0000000..a337a9c
--- /dev/null
+++ b/debian/scripts/dkms.pm
@@ -0,0 +1,8 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use Debian::Debhelper::Dh_Lib;
+
+insert_before("dh_installinit", "dh_dkms");
+
+1;
diff --git a/debian/scripts/postinst-dkms b/debian/scripts/postinst-dkms
new file mode 100644
index 0000000..0084a6e
--- /dev/null
+++ b/debian/scripts/postinst-dkms
@@ -0,0 +1,27 @@
+# The original file can be found in template-dkms-mkdeb/debian/postinst
+# in the DKMS tarball, check it for copyright notices.
+
+DKMS_NAME=#MODULE_NAME#
+DKMS_PACKAGE_NAME=$DKMS_NAME-dkms
+DKMS_VERSION=#MODULE_VERSION#
+
+postinst_found=0
+
+case "$1" in
+ configure)
+ for DKMS_POSTINST in /usr/lib/dkms/common.postinst /usr/share/$DKMS_PACKAGE_NAME/postinst; do
+ if [ -f $DKMS_POSTINST ]; then
+ $DKMS_POSTINST $DKMS_NAME $DKMS_VERSION /usr/share/$DKMS_PACKAGE_NAME "" $2
+ postinst_found=1
+ break
+ fi
+ done
+ if [ "$postinst_found" -eq 0 ]; then
+ echo "ERROR: DKMS version is too old and $DKMS_PACKAGE_NAME was not"
+ echo "built with legacy DKMS support."
+ echo "You must either rebuild $DKMS_PACKAGE_NAME with legacy postinst"
+ echo "support or upgrade DKMS to a more current version."
+ exit 1
+ fi
+ ;;
+esac
diff --git a/debian/scripts/prerm-dkms b/debian/scripts/prerm-dkms
new file mode 100644
index 0000000..6e93a1b
--- /dev/null
+++ b/debian/scripts/prerm-dkms
@@ -0,0 +1,10 @@
+DKMS_NAME=#MODULE_NAME#
+DKMS_VERSION=#MODULE_VERSION#
+
+case "$1" in
+ remove|upgrade|deconfigure)
+ if [ "$(dkms status -m $DKMS_NAME -v $DKMS_VERSION)" ]; then
+ dkms remove -m $DKMS_NAME -v $DKMS_VERSION --all
+ fi
+ ;;
+esac
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 0000000..352610d
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,11 @@
+Test-Command: sh debian/tests/run_test_wrapper.sh
+Features: test-name=run_test.sh
+Depends:
+ dkms,
+ openssl,
+ linux-headers-generic,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+ skip-not-installable,
diff --git a/debian/tests/run_test_wrapper.sh b/debian/tests/run_test_wrapper.sh
new file mode 100644
index 0000000..5ccf011
--- /dev/null
+++ b/debian/tests/run_test_wrapper.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+KERNEL_VER=
+for kver in $(dpkg-query -W -f '${Package}\n' 'linux-headers-*' | sed s/linux-headers-//)
+do
+ if [ -d "/lib/modules/$kver/build" ]
+ then
+ KERNEL_VER=$kver
+ break
+ fi
+done
+
+export KERNEL_VER
+bash ./run_test.sh
diff --git a/debian/upstream/metadata b/debian/upstream/metadata
new file mode 100644
index 0000000..9b54dee
--- /dev/null
+++ b/debian/upstream/metadata
@@ -0,0 +1,4 @@
+Bug-Database: https://github.com/dell/dkms/issues
+Bug-Submit: https://github.com/dell/dkms/issues/new
+Repository: https://github.com/dell/dkms.git
+Repository-Browse: https://github.com/dell/dkms
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..3a13323
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,7 @@
+version=4
+
+#we no longer are hosted on linux.dell.com
+#http://linux.dell.com/dkms/permalink/dkms-(.*)\.tar\.gz
+
+https://github.com/dell/dkms/tags \
+.*[^n]/(?:|v|version-|r|REL_|rel-|dkms(?:_|-))(\d[^\s/]*)\.(?:tar\.xz|txz|tar\.bz2|tbz2|tar\.gz|tgz)