summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--debian/HOWTO.Debian40
-rw-r--r--debian/changelog1289
-rw-r--r--debian/clean2
-rw-r--r--debian/control87
-rw-r--r--debian/copyright37
-rw-r--r--debian/dh-dkms.install4
-rw-r--r--debian/dkms-noautoinstall-test-dkms.dkms1
-rw-r--r--debian/dkms-noautoinstall-test-dkms.install1
-rw-r--r--debian/dkms-test-dkms.dkms1
-rw-r--r--debian/dkms-test-dkms.install1
-rw-r--r--debian/dkms.docs1
-rw-r--r--debian/dkms.install1
-rw-r--r--debian/dkms.lintian-overrides5
-rw-r--r--debian/dkms.maintscript22
-rw-r--r--debian/dkms.modprobe4
-rw-r--r--debian/dkms.postinst57
-rw-r--r--debian/gbp.conf4
-rw-r--r--debian/patches/1001-do-not-perform-rpm-queries-on-Debian-Ubuntu-Arch-bas.patch55
-rw-r--r--debian/patches/only-autobuild-AUTOINSTALL-yes-modules.patch16
-rw-r--r--debian/patches/rebuild-modules-on-header-upgrade.patch22
-rw-r--r--debian/patches/series4
-rwxr-xr-xdebian/rules26
-rwxr-xr-xdebian/scripts/dh_dkms.in192
-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/control99
-rw-r--r--debian/tests/run_test_wrapper.sh17
-rw-r--r--debian/upstream/metadata4
-rw-r--r--debian/watch7
32 files changed, 2274 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..49b57ad
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,1289 @@
+dkms (3.0.13-1) unstable; urgency=medium
+
+ * New upstream release.
+ * Refresh patches.
+ * Downgrade compiler dependency to Recommends to ease cross installation.
+ The linux-headers-* packages have a proper compiler dependency.
+
+ -- Andreas Beckmann <anbe@debian.org> Thu, 07 Mar 2024 11:33:57 +0100
+
+dkms (3.0.12-5) unstable; urgency=medium
+
+ * dkms: Use saner compression defaults. (Closes: #1061427)
+
+ -- Andreas Beckmann <anbe@debian.org> Wed, 07 Feb 2024 20:54:03 +0100
+
+dkms (3.0.12-4) unstable; urgency=medium
+
+ * common.postinst: Use bash for extracting AUTOINSTALL from dkms.conf.
+ (Closes: #1059885)
+ * Stop recommending linux-headers-*.
+ (Closes: #1059895, #918918, #968763, #637877, #755942, #762061, #951404)
+ * postinst: Be less greedy and don't remove module source while cleaning up
+ module builds with empty $arch from the dkms tree. (Closes: #1059900)
+
+ -- Andreas Beckmann <anbe@debian.org> Wed, 03 Jan 2024 20:16:57 +0100
+
+dkms (3.0.12-3) unstable; urgency=medium
+
+ * Autodetect module compression during tests. (Closes: #1059894)
+ * Upload to unstable.
+
+ -- Andreas Beckmann <anbe@debian.org> Tue, 02 Jan 2024 14:10:36 +0100
+
+dkms (3.0.12-2) experimental; urgency=medium
+
+ * Cherry-pick upstream patches:
+ - Use 'unbuild' instead of 'remove' in kernel prerm script to keep the
+ modules in 'added' state. (Closes: #621846, #894250)
+ - Document MOK key *and* cert recreation behavior if MOK key *or* cert is
+ missing. (Closes: #1052243)
+ * kernel/header_postinst.d hook: On header upgrades w/o package name change,
+ 'unbuild' all 'autoinstall'ed modules built against the old version first
+ to ensure they get rebuilt against the upgraded headers on the next
+ 'autoinstall'. (Closes: #1040401, #1034013)
+ * common.postinst: Only build AUTOINSTALL="yes" modules on installation.
+ * Clean up obsolete /etc/kernel/install.d/dkms, renamed to 40-dkms.install.
+ (Closes: #1056949)
+ * postinst: Clean up modules with empty $arch from dkms tree. (Cf. #1036033)
+ * postinst: Clean up dangling source links from dkms tree. (LP: #830915)
+ * dh_dkms: Strip epoch from upstream version. (Closes: #660043)
+ * dh_dkms: Error out on invalid package versions.
+ * dh_dkms: Always substitute #MODULE_VERSION#. (Closes: #736803)
+ * Add dkms-noautoinstall-test-dkms package with a trivial kernel module for
+ dkms tests.
+ * Add autopkgtests using dkms-noautoinstall-test-dkms.
+ * Upload to experimental.
+
+ -- Andreas Beckmann <anbe@debian.org> Wed, 06 Dec 2023 00:48:28 +0100
+
+dkms (3.0.12-1) unstable; urgency=medium
+
+ * New upstream release.
+ * Refresh patches.
+ * New autopkgtest: Test 32-bit i386 userspace with 64-bit kernel.
+ * Only enumerate kernels that potentially have headers installed.
+ (Closes: #1011317)
+ * Clean up after depmod if modules.dep is empty.
+ * postinst: Clean up leftover depmod files from removed kernels/headers.
+
+ -- Andreas Beckmann <anbe@debian.org> Sat, 25 Nov 2023 02:36:21 +0100
+
+dkms (3.0.11-3) unstable; urgency=medium
+
+ * autopkgtest fixes.
+ * Drop Ubuntu-specific patch.
+
+ -- Andreas Beckmann <anbe@debian.org> Fri, 16 Jun 2023 17:15:58 +0200
+
+dkms (3.0.11-2) unstable; urgency=medium
+
+ * dh_dkms: Bump generated dkms dependency for new BUILD_EXCLUSIVE
+ directives.
+ * Fix and unify CC detection.
+ * Fail early if $arch detection fails. (Closes: #1036033, #842596)
+ * Add Breaks against obsolete *-dkms packages that are incompatible with the
+ Linux 6.1 kernel in bookworm. (Closes: #1037425)
+ * Upload to unstable.
+
+ -- Andreas Beckmann <anbe@debian.org> Tue, 13 Jun 2023 19:02:14 +0200
+
+dkms (3.0.11-1) experimental; urgency=medium
+
+ * New upstream release.
+ - Adds BUILD_EXCLUSIVE_{CONFIG,_KERNEL_{MIN,MAX}}. (Closes: #911665)
+ - Fixes BUILD_EXCLUSIVE matches propagating as error. (Closes: #1031561)
+ * Drop patches that were applied upstream.
+ * Avoid unnecessary rpm comands on Debian based systems. (Closes: #741399)
+ (LP: #1069350)
+
+ -- Andreas Beckmann <anbe@debian.org> Thu, 27 Apr 2023 18:12:51 +0200
+
+dkms (3.0.10-9) experimental; urgency=medium
+
+ * Add dkms-test-dkms package with a trivial kernel module for dkms tests.
+ * New autopkgtest: Install some-dkms after linux-headers.
+ * New autopkgtest: Install linux-headers after some-dkms.
+ * New autopkgtest: Install some-dkms after linux-image w/o linux-headers.
+ * New autopkgtest: Install linux-image after some-dkms w/o linux-headers.
+ * Upload to experimental.
+
+ -- Andreas Beckmann <anbe@debian.org> Fri, 31 Mar 2023 14:19:59 +0200
+
+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.) (Closes: #1034303)
+ * 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, #904869)
+ * 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..1df6a90
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,87 @@
+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
+Testsuite: autopkgtest-pkg-dkms
+
+Package: dkms
+Architecture: all
+Multi-Arch: foreign
+Pre-Depends: lsb-release
+Depends: ${misc:Depends},
+ kmod,
+ dpkg-dev,
+ make | build-essential,
+ patch,
+Recommends:
+ gcc | c-compiler,
+ fakeroot,
+ sudo,
+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.
+
+Package: dkms-test-dkms
+Architecture: all
+Depends:
+ ${misc:Depends},
+Description: trivial dkms test kernel module
+ This package provides the dkms source code for the dkms_test kernel module.
+ .
+ This package is only intended for ci tests and not expected to be installed
+ on regular systems
+
+Package: dkms-noautoinstall-test-dkms
+Architecture: all
+Depends:
+ ${misc:Depends},
+Description: trivial dkms noautoinstall test kernel module
+ This package provides the dkms source code for the dkms_noautoinstall_test
+ kernel module.
+ .
+ This package is only intended for ci tests and not expected to be installed
+ on regular systems
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..abc0837
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,37 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Source: https://github.com/dell/dkms
+
+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-2024, 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-noautoinstall-test-dkms.dkms b/debian/dkms-noautoinstall-test-dkms.dkms
new file mode 100644
index 0000000..140aa74
--- /dev/null
+++ b/debian/dkms-noautoinstall-test-dkms.dkms
@@ -0,0 +1 @@
+test/dkms_noautoinstall_test-1.0/dkms.conf
diff --git a/debian/dkms-noautoinstall-test-dkms.install b/debian/dkms-noautoinstall-test-dkms.install
new file mode 100644
index 0000000..c5da104
--- /dev/null
+++ b/debian/dkms-noautoinstall-test-dkms.install
@@ -0,0 +1 @@
+test/dkms_noautoinstall_test-1.0 usr/src/
diff --git a/debian/dkms-test-dkms.dkms b/debian/dkms-test-dkms.dkms
new file mode 100644
index 0000000..f1876da
--- /dev/null
+++ b/debian/dkms-test-dkms.dkms
@@ -0,0 +1 @@
+test/dkms_test-1.0/dkms.conf
diff --git a/debian/dkms-test-dkms.install b/debian/dkms-test-dkms.install
new file mode 100644
index 0000000..3cad773
--- /dev/null
+++ b/debian/dkms-test-dkms.install
@@ -0,0 +1 @@
+test/dkms_test-1.0 usr/src/
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..b33c374
--- /dev/null
+++ b/debian/dkms.maintscript
@@ -0,0 +1,22 @@
+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~
+mv_conffile /etc/kernel/install.d/dkms /etc/kernel/install.d/40-dkms.install 3.0.12-1~
+rm_conffile /etc/kernel/install.d/dkms 3.0.12-2~
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..8582961
--- /dev/null
+++ b/debian/dkms.postinst
@@ -0,0 +1,57 @@
+#!/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
+
+if dpkg --compare-versions "$2" lt-nl "3.0.12" ; then
+ for d in /lib/modules/*
+ do
+ # clean up leftover depmod files if modules.dep is empty
+ # i.e. dkms called depmod after removing the last kernel module
+ if [ -f "$d/modules.dep" ] && [ ! -s "$d/modules.dep" ]; then
+ rm -fv \
+ "$d/modules.alias" \
+ "$d/modules.dep" \
+ "$d/modules.devname" \
+ "$d/modules.softdep" \
+ "$d/modules.symbols" \
+ "$d"/modules.*.bin
+ rmdir --ignore-fail-on-non-empty "$d"
+ test -d "$d" || echo "removed directory $d"
+ fi
+ done
+fi
+
+if dpkg --compare-versions "$2" lt-nl "3.0.12-2~" ; then
+ # missing $arch in the path, #1036033
+ rm -rfv /var/lib/dkms/*/*/[1-6].*/module/
+ rm -rfv /var/lib/dkms/*/*/[1-6].*/log/
+
+ # /usr/src/$module-$version was already removed,
+ # but /var/lib/dkms/$module/$version/source still points there
+ for source in /var/lib/dkms/*/*/source
+ do
+ test -h "$source" || continue
+ test -f "$source/dkms.conf" || rm -fv "$source"
+ done
+
+ for mdir in /var/lib/dkms/*/
+ do
+ test -d "$mdir" || continue
+ find "$mdir" -depth -type d -exec sh -c 'd="{}"; rmdir --ignore-fail-on-non-empty "$d" ; test -d "$d" || echo "removed directory $d"' \;
+ done
+fi
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 0000000..8bfe87a
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,4 @@
+[DEFAULT]
+debian-branch = main
+pristine-tar = True
+upstream-vcs-tag = v%(version)s
diff --git a/debian/patches/1001-do-not-perform-rpm-queries-on-Debian-Ubuntu-Arch-bas.patch b/debian/patches/1001-do-not-perform-rpm-queries-on-Debian-Ubuntu-Arch-bas.patch
new file mode 100644
index 0000000..40242ac
--- /dev/null
+++ b/debian/patches/1001-do-not-perform-rpm-queries-on-Debian-Ubuntu-Arch-bas.patch
@@ -0,0 +1,55 @@
+From 0e69615135244378ade7063ea6da76c7d68474ba Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <anbe@debian.org>
+Date: Wed, 19 Apr 2023 17:37:54 +0200
+Subject: [PATCH] do not perform rpm queries on Debian/Ubuntu/Arch based
+ distributions
+
+Closes #329
+---
+ dkms.in | 15 +++++++++++++++
+ 1 file changed, 15 insertions(+)
+
+diff --git a/dkms.in b/dkms.in
+index 55eced3..5abb8eb 100644
+--- a/dkms.in
++++ b/dkms.in
+@@ -296,6 +296,11 @@ setup_kernels_arches()
+ kernelver[0]=$(uname -r)
+ fi
+ if [[ ! $arch ]]; then
++ case "$running_distribution" in
++ debian* | ubuntu* | arch*)
++ arch[0]=$(uname -m)
++ ;;
++ *)
+ kernelver_rpm=$(rpm -qf "$install_tree/$kernelver" 2>/dev/null | \
+ grep -v "not owned by any package" | grep kernel | head -n 1)
+ if ! arch[0]=$(rpm -q --queryformat "%{ARCH}" "$kernelver_rpm" 2>/dev/null); then
+@@ -304,6 +309,8 @@ setup_kernels_arches()
+ arch[0]="ia32e"
+ fi
+ fi
++ ;;
++ esac
+ fi
+ if [[ ! $arch ]]; then
+ die 12 $"Could not determine architecture."
+@@ -1579,7 +1586,15 @@ do_uninstall()
+ while [[ ${dir_to_remove} != ${dir_to_remove#/} ]]; do
+ dir_to_remove="${dir_to_remove#/}"
+ done
++
++ case "$running_distribution" in
++ debian* | ubuntu* | arch*)
++ (if cd "$install_tree/$1"; then rmdir -p --ignore-fail-on-non-empty "${dir_to_remove}"; fi || true)
++ ;;
++ *)
+ (if cd "$install_tree/$1"; then rpm -qf "${dir_to_remove}" >/dev/null 2>&1 || rmdir -p --ignore-fail-on-non-empty "${dir_to_remove}"; fi || true)
++ ;;
++ esac
+ else
+ echo $" - Module was not found within $install_tree/$1/"
+ fi
+--
+2.20.1
+
diff --git a/debian/patches/only-autobuild-AUTOINSTALL-yes-modules.patch b/debian/patches/only-autobuild-AUTOINSTALL-yes-modules.patch
new file mode 100644
index 0000000..0b000dd
--- /dev/null
+++ b/debian/patches/only-autobuild-AUTOINSTALL-yes-modules.patch
@@ -0,0 +1,16 @@
+--- a/dkms_common.postinst.in
++++ b/dkms_common.postinst.in
+@@ -160,6 +160,13 @@ if [ -z "$autoinstall" ]; then
+ exit 0
+ fi
+
++dkms_conf="/var/lib/dkms/$NAME/$VERSION/source/dkms.conf"
++autoinstall=$(bash -c 'AUTOINSTALL=; . "'"$dkms_conf"'" >/dev/null 2>&1; echo $AUTOINSTALL')
++if [ -z "$autoinstall" ]; then
++ echo "Not building the $NAME module which does not have AUTOINSTALL enabled."
++ exit 0
++fi
++
+ # On 1st installation, let us look for a directory
+ # in @MODDIR@ which matches $(uname -r). If none
+ # is found it is possible that buildd is being used
diff --git a/debian/patches/rebuild-modules-on-header-upgrade.patch b/debian/patches/rebuild-modules-on-header-upgrade.patch
new file mode 100644
index 0000000..437bd23
--- /dev/null
+++ b/debian/patches/rebuild-modules-on-header-upgrade.patch
@@ -0,0 +1,22 @@
+--- a/kernel_postinst.d_dkms.in
++++ b/kernel_postinst.d_dkms.in
+@@ -34,6 +34,19 @@ case "${uname_s}" in
+ ;;
+ esac
+
++case $0 in *header_postinst.d*)
++ # unbuild all autoinstalled modules for this kernel to ensure they get
++ # rebuilt against the updated headers by the next autoinstall below
++ for mod_ver in $(dkms status -k "$inst_kern" 2>/dev/null | grep ': installed' | cut -d, -f1 | sort -u)
++ do
++ dkms_conf="/var/lib/dkms/$mod_ver/source/dkms.conf"
++ autoinstall=$(bash -c 'AUTOINSTALL=; . "'"$dkms_conf"'" >/dev/null 2>&1; echo $AUTOINSTALL')
++ test -n "$autoinstall" || continue
++ dkms unbuild -k "$inst_kern" "$mod_ver"
++ done
++ ;;
++esac
++
+ if [ -x @LIBDIR@/dkms_autoinstaller ]; then
+ exec @LIBDIR@/dkms_autoinstaller start "$inst_kern"
+ fi
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..21e13c0
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,4 @@
+
+1001-do-not-perform-rpm-queries-on-Debian-Ubuntu-Arch-bas.patch
+rebuild-modules-on-header-upgrade.patch
+only-autobuild-AUTOINSTALL-yes-modules.patch
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..e2ae425
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,26 @@
+#!/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
+
+execute_after_dh_install:
+ DH_AUTOSCRIPTDIR=debian/scripts debian/scripts/dh_dkms
diff --git a/debian/scripts/dh_dkms.in b/debian/scripts/dh_dkms.in
new file mode 100755
index 0000000..2af732a
--- /dev/null
+++ b/debian/scripts/dh_dkms.in
@@ -0,0 +1,192 @@
+#!/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);
+ $l =~ /BUILD_EXCLUSIVE_KERNEL_MIN=(["']?)(.*)\1/ && ($build_exclusive_config = "yes");
+ $l =~ /BUILD_EXCLUSIVE_KERNEL_MAX=(["']?)(.*)\1/ && ($build_exclusive_config = "yes");
+ }
+ close(IN);
+
+ #$ENV{DH_AUTOSCRIPTDIR} = "debian/scripts/";
+ if ($build_exclusive_config) {
+ addsubstvar($package, "misc:Depends", "dkms", ">= 3.0.11");
+ }
+ 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 eq "#MODULE_VERSION#") {
+ $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/-[^-]+$//;
+ # Remove the Debian epoch
+ $package_version =~ s/^\d+://;
+ }
+
+ 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);
+
+ error "invalid package version '$package_version'"
+ unless $package_version =~ /^[-+.~:0-9a-zA-Z]+$/;
+
+ 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..7444368
--- /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 $dkms_pkg/$dkms_ver $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 $dkms_pkg/$dkms_ver $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 $dkms_pkg/$dkms_ver $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 $dkms_pkg/$dkms_ver $kver${crlf}"
+ result=1
+ continue
+ fi
+
+ if ! echo "$dkmsstatus" | grep -q "installed$"; then
+ echo "E: not installed" >&2
+ summary="${summary}I: FAIL $dkms_pkg/$dkms_ver $kver${crlf}"
+ result=1
+ continue
+ fi
+
+ summary="${summary}I: PASS $dkms_pkg/$dkms_ver $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..61159ee
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,99 @@
+Test-Command: sh debian/tests/run_test_wrapper.sh
+Features: test-name=run_test.sh
+Depends:
+ dkms,
+ openssl,
+ linux-headers-generic
+ | linux-headers-rpi [armel]
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+ skip-not-installable,
+
+# install some-dkms after linux-headers
+Test-Command: apt-get install -yf dkms-test-dkms && dkms status
+Features: test-name=install_some-dkms_after_linux-headers
+Architecture: amd64
+Depends:
+ dkms,
+ linux-headers-generic,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+
+# install linux-headers after some-dkms
+Test-Command: apt-get install -yf linux-headers-generic && dkms status
+Features: test-name=install_linux-headers_after_some-dkms
+Architecture: amd64
+Depends:
+ dkms-test-dkms,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+
+# install some-dkms after linux-image w/o linux-headers
+Test-Command: apt-get install -yf dkms-test-dkms && dkms status
+Features: test-name=install_some-dkms_after_linux-image_without_linux-headers
+Architecture: amd64
+Depends:
+ dkms,
+ linux-image-generic,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+
+# install linux-image after some-dkms w/o linux-headers
+Test-Command: apt-get install -yf linux-image-generic && dkms status
+Features: test-name=install_linux-image_after_some-dkms_without_linux-headers
+Architecture: amd64
+Depends:
+ dkms-test-dkms,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+
+# install some-noautoinstall-dkms after linux-headers
+Test-Command: apt-get install -yf dkms-noautoinstall-test-dkms && dkms status
+Features: test-name=install_some-noautoinstall-dkms_after_linux-headers
+Architecture: amd64
+Depends:
+ dkms,
+ linux-headers-generic,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+
+# install linux-headers after some-noautoinstall-dkms
+Test-Command: apt-get install -yf linux-headers-generic && dkms status
+Features: test-name=install_linux-headers_after_some-noautoinstall-dkms
+Architecture: amd64
+Depends:
+ dkms-noautoinstall-test-dkms,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+
+# 32-bit userspace with 64-bit kernel
+# cf. https://bugs.debian.org/1042993
+# workaround: apt-get install -yf linux-compiler-gcc-13-x86:amd64
+Test-Command:
+ dpkg --add-architecture amd64 &&
+ apt-get update &&
+ apt-get install -yf linux-headers-amd64 &&
+ /usr/lib/dkms/dkms-autopkgtest dkms-test-dkms
+Features: test-name=32-bit_userspace_with_64-bit_kernel
+Architecture: i386
+Depends:
+ dkms,
+Restrictions:
+ allow-stderr,
+ needs-root,
+ breaks-testbed,
+ flaky,
diff --git a/debian/tests/run_test_wrapper.sh b/debian/tests/run_test_wrapper.sh
new file mode 100644
index 0000000..8d27992
--- /dev/null
+++ b/debian/tests/run_test_wrapper.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+KERNEL_VER=
+NO_SIGNING_TOOL=
+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
+ grep -q "^CONFIG_MODULE_SIG_HASH=" "/lib/modules/$kver/build/.config" ||
+ NO_SIGNING_TOOL="--no-signing-tool"
+ break
+ fi
+done
+
+export KERNEL_VER
+bash ./run_test.sh $NO_SIGNING_TOOL
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)