aboutsummarylogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorJonathan Kotta2020-03-14 20:32:25 -0500
committerJonathan Kotta2020-03-14 20:32:25 -0500
commitf5dff153c22dfb3f59cd3d714781bf9c57949e05 (patch)
tree74f14f66e5d9c8e31e86190265d65f3d35f74fd5 /README
downloadaur-f5dff153c22dfb3f59cd3d714781bf9c57949e05.tar.gz
initial commit
Diffstat (limited to 'README')
-rw-r--r--README31
1 files changed, 31 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 000000000000..ef40b5ae1a59
--- /dev/null
+++ b/README
@@ -0,0 +1,31 @@
+This is a set of pacman hooks and systemd units to preserve the running
+kernel's modules during upgrades. If one upgrades the kernel but
+doesn't reboot right away, any modules that were not loaded yet are
+lost. Modules are often loaded dynamically due to hardware being
+hotplugged at runtime (e.g. a USB device). While it's recommended to
+reboot immediately after an upgrade, sometimes it's inconvenient. On
+the next boot, any saved kernels are purged.
+
+* /usr/share/libalpm/hooks/50-save-kernel-modules-pre.hook
+ PreTransaction hook. Should be before 60 because of mkinitcpio-remove and dkms-remove.
+
+* /usr/share/libalpm/hooks/90-save-kernel-modules-post.hook
+ PostTransaction hook. Should be after 70 because of dkms-install.
+
+* /usr/lib/modules/saved-kernel-modules/modules/
+ Where the modules are preserved
+
+* /usr/lib/modules/saved-kernel-modules/pre-hook
+ Pacman hook to save the running kernel
+
+* /usr/lib/modules/saved-kernel-modules/pre-hook
+ Pacman hook to link the running kernel back in to /usr/lib/modules/
+
+* /usr/lib/modules/saved-kernel-modules/cleanup
+ Script to clean any saved kernels on the next boot
+
+* /usr/lib/systemd/system/saved-kernel-modules.service
+ Runs cleanup on the next boot
+
+* /usr/lib/systemd/system/saved-kernel-modules.timer
+ Schedules the clean up