Go to file
Emil Velikov ed44595747 ci: add more SPDX copyright/license identifiers
This concludes the files, I'm planning to reuse in usbutils so I'll stop
before it gets too annoying :-D

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://github.com/kmod-project/kmod/pull/151
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
2024-09-27 23:08:09 -05:00
.github ci: add more SPDX copyright/license identifiers 2024-09-27 23:08:09 -05:00
libkmod libkmod: Avoid OOB with huge ELF files 2024-09-27 23:05:38 -05:00
m4 m4: remove verbose license exception clause 2024-08-10 11:03:26 -05:00
man tools/insmod: add --force longopt and document it 2024-09-21 10:53:12 -05:00
scripts build: Fix KDIR again 2024-09-11 14:39:10 -05:00
shared shared: mass convert with clang-format 2024-09-24 09:59:20 -05:00
shell-completion shell-completion/*/insmod: add bash/fish/zsh completion 2024-09-22 16:11:57 -05:00
testsuite testsuite: mass convert with clang-format 2024-09-24 09:59:20 -05:00
tools tools: mass convert with clang-format 2024-09-24 09:59:20 -05:00
.clang-format clang-format: Override settings 2024-09-08 23:39:19 -05:00
.codespellignore ci: add more SPDX copyright/license identifiers 2024-09-27 23:08:09 -05:00
.editorconfig ci: add more SPDX copyright/license identifiers 2024-09-27 23:08:09 -05:00
.gitignore gitignore: ignore gtk-doc.m4 2024-07-03 10:14:47 -05:00
.mailmap .mailmap: Forward to my personal email 2024-06-14 13:49:03 -05:00
autogen.sh ci: build: add docs in ci/developer builds 2024-09-06 14:39:06 -05:00
build-dev.ini ci: add SPDX copyright/license identifiers 2024-09-22 17:34:56 -05:00
CODING-STYLE CONTRIBUTING.md: mention s-o-b tag, includ DCO copy 2024-09-16 21:49:47 -05:00
configure.ac shell-completion/*/lsmod: add bash/fish/zsh completion 2024-09-22 16:11:57 -05:00
CONTRIBUTING.md CONTRIBUTING.md: mention license and SPDX 2024-09-16 21:58:41 -05:00
COPYING Clarify what licences apply where 2014-10-09 01:26:34 -03:00
DCO.txt CONTRIBUTING.md: mention s-o-b tag, includ DCO copy 2024-09-16 21:49:47 -05:00
Makefile.am shell-completion/*/insmod: add bash/fish/zsh completion 2024-09-22 16:11:57 -05:00
meson_options.txt shell-completion/*/lsmod: add bash/fish/zsh completion 2024-09-22 16:11:57 -05:00
meson.build shell-completion/*/insmod: add bash/fish/zsh completion 2024-09-22 16:11:57 -05:00
NEWS Address all codespell (flagged) typos 2024-08-16 17:05:43 -05:00
README.md CONTRIBUTING.md: add initial contributing guideline 2024-09-11 14:57:08 -05:00

kmod - Linux kernel module handling

OVERVIEW

kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases.

These tools are designed on top of libkmod, a library that is shipped with kmod. See libkmod/README for more details on this library and how to use it. The aim is to be compatible with tools, configurations and indexes from module-init-tools project.

Links

Compilation and installation

In order to compile the source code you need the following software packages:

  • GCC/CLANG compiler
  • GNU C library / musl / uClibc
  • rsync

Optional dependencies:

  • ZLIB library
  • LZMA library
  • ZSTD library
  • OPENSSL library (signature handling in modinfo)

Typical configuration and installation

meson setup builddir/
meson compile -C builddir/
sudo meson install -C builddir/

Alternatively you can try autotools build. NOTE: The autotools build is slated for removal with kmod v35

./configure CFLAGS="-g -O2" --prefix=/usr \
            --sysconfdir=/etc --libdir=/usr/lib

Configure automatically searches for all required components and packages.

To compile and install run:

make && make install

Hacking

When working on kmod, use the included build-dev.ini file, as:

meson setup --native-file build-dev.ini builddir/

Make sure to read our contributing guide and the other READMEs: libkmod and testsuite.

Compatibility with module-init-tools

kmod replaced module-init-tools, which was EOL'ed in 2011. All the tools were rewritten on top of libkmod and they can be used as drop in replacements. Along the years there were a few behavior changes and new features implemented, following feedback from Linux kernel community and distros.