kman

module
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 25, 2025 License: MIT

README

kman (Linux Kernel Manager)

kman aims to automate the Linux Kernel installation from source process, allowing for a repeatable way of downloading, configuring, patching, compiling, installing, generating a initramfs image and configuring the bootloader, based on the tools and configurations available of your system.

Features

  • No External Library dependencies
  • Automated download of Kernel versions
  • Cross-distro compatibility
  • Incremental updates via patching
  • Support multiple bootloaders configuration
    • GNU grub
    • systemd-boot
    • limine
    • rEFInd
  • Support multiple initramfs generators
    • dracut
    • mkinitcpio
    • initramfs-tools
    • booster
  • Distributed compilation (distcc)
  • Support modprobed-db to reduce compilation time
  • Unified Kernel Image
Design Patterns

Strategy Pattern: The strategy lets the algorithm vary independently from clients that use it. Used for handling multiple bootloaders (e.g., GRUB, LILO, systemd-boot) and multiple initramfs tools (e.g., Dracut, mkinitcpio, booster).

Command Pattern: Encapsulates each operation (downloading, configuring, etc) into a command class, allowing for easy execution and management.

Builder Pattern: Provides a flexible way to construct kernel configuration parameters step-by-step.

Facade Pattern: Manages the kernel context and the flow of commands.

Directories

Path Synopsis
cmd
kman command
internal
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL