Spot/kernel-module-comparison

= Executive summary: Comparing kmods and kmdls =

Cleaned up a bit by spot for accuracy, simplification, and legibility.

{| border="1"
 * ||kmods                                  ||kmod with kver in name||  kmdls 
 * features
 * kernel's version     || available as provides                     ||embedded in name & available as provides || embedded in name & available as provides
 * specfiles/src.rpm ||split for userland vs kernelland             ||split for userland vs kernelland              ||merged together with macros
 * helper applications||kmodtool                                    ||kmodtool||none necessary
 * kernel agnostic  ||yes, with kmodtool                           ||yes, with kmodtool ||yes
 * kernel flavour agnostic||yes, with kmodtool                     ||yes, with kmodtool ||yes
 * comparison
 * rpm        ||          ||
 * rpm -U           ||Will update all kmod packages and replace with one (not really what you want)                ||will update packages on a per kernel basis||will update  packages on a per kernel basis
 * rpm -i         ||works                                         ||works||works
 * $1 in scriplets  ||does not work                                 ||does not work ||works
 * yum w/o plugin and module coinstalls||works||does not work|| does not work
 * yum w/o plugin and module upgrades||does not work||works||works
 * yum w/ full plugin support||possible||possible||possible
 * other depsolvers (smart/apt)||possible||possible||possible
 * maintenance ||every new kernel/flavour needs full rebuild  ||every new kernel/flavour needs full rebuild|| every new kernel/flavour needs full rebuild
 * existing standard of Fedora||yes                           ||no||no
 * existing kmods/kmdls in Fedora||yes, only one, but half a dozen in queue and half a dozen in livna||no||no, but ATrpms has several dozens
 * debuginfos ||ok                                            ||ok ||ok
 * kabi support||possible                                     ||possible||possible
 * buildsystem      ||needs special handling                        ||needs special handling                 ||needs special handling
 * rpmbuild         ||no changes                                    ||no changes                             ||no changes
 * mock, mach, etc. ||no changes                                    ||no changes                             ||no changes
 * yum w/o plugin and module coinstalls||works||does not work|| does not work
 * yum w/o plugin and module upgrades||does not work||works||works
 * yum w/ full plugin support||possible||possible||possible
 * other depsolvers (smart/apt)||possible||possible||possible
 * maintenance ||every new kernel/flavour needs full rebuild  ||every new kernel/flavour needs full rebuild|| every new kernel/flavour needs full rebuild
 * existing standard of Fedora||yes                           ||no||no
 * existing kmods/kmdls in Fedora||yes, only one, but half a dozen in queue and half a dozen in livna||no||no, but ATrpms has several dozens
 * debuginfos ||ok                                            ||ok ||ok
 * kabi support||possible                                     ||possible||possible
 * buildsystem      ||needs special handling                        ||needs special handling                 ||needs special handling
 * rpmbuild         ||no changes                                    ||no changes                             ||no changes
 * mock, mach, etc. ||no changes                                    ||no changes                             ||no changes
 * existing kmods/kmdls in Fedora||yes, only one, but half a dozen in queue and half a dozen in livna||no||no, but ATrpms has several dozens
 * debuginfos ||ok                                            ||ok ||ok
 * kabi support||possible                                     ||possible||possible
 * buildsystem      ||needs special handling                        ||needs special handling                 ||needs special handling
 * rpmbuild         ||no changes                                    ||no changes                             ||no changes
 * mock, mach, etc. ||no changes                                    ||no changes                             ||no changes
 * buildsystem      ||needs special handling                        ||needs special handling                 ||needs special handling
 * rpmbuild         ||no changes                                    ||no changes                             ||no changes
 * mock, mach, etc. ||no changes                                    ||no changes                             ||no changes
 * rpmbuild         ||no changes                                    ||no changes                             ||no changes
 * mock, mach, etc. ||no changes                                    ||no changes                             ||no changes
 * mock, mach, etc. ||no changes                                    ||no changes                             ||no changes