73 lines
2.3 KiB
Markdown
73 lines
2.3 KiB
Markdown
# CachyOS Kernel Manager
|
|
|
|
A simple, terminal-based UI (TUI) application for managing CachyOS and standard Arch Linux kernels on your system. This tool provides an easy way to view, install, and uninstall various kernels.
|
|
|
|
## Features
|
|
|
|
- **Interactive TUI:** A straightforward menu allows you to see all managed kernels at a glance.
|
|
- **Status Indicators:** Clearly shows which kernels are currently installed.
|
|
- **Batch Operations:** Select multiple kernels to install or uninstall in a single operation.
|
|
- **Simplified Management:** Automates the process of running `pacman` commands to add or remove kernels and their corresponding headers.
|
|
|
|
## Managed Kernels
|
|
|
|
The application manages a pre-defined list of popular CachyOS and standard Arch Linux kernels:
|
|
|
|
### CachyOS Kernels
|
|
- `linux-cachyos`
|
|
- `linux-cachyos-bmq`
|
|
- `linux-cachyos-bore`
|
|
- `linux-cachyos-deckify`
|
|
- `linux-cachyos-eevdf`
|
|
- `linux-cachyos-hardened`
|
|
- `linux-cachyos-lts`
|
|
- `linux-cachyos-rc`
|
|
- `linux-cachyos-rt-bore`
|
|
- `linux-cachyos-server`
|
|
|
|
### Standard Kernels
|
|
- `linux`
|
|
- `linux-hardened`
|
|
- `linux-lts`
|
|
- `linux-rt`
|
|
- `linux-zen`
|
|
|
|
## Getting Started
|
|
|
|
### Prerequisites
|
|
|
|
- A CachyOS or Arch Linux-based distribution.
|
|
- .NET 8.0 SDK installed.
|
|
- `pacman` package manager.
|
|
|
|
### Building and Running
|
|
|
|
1. **Clone the repository:**
|
|
```bash
|
|
git clone <repository-url>
|
|
cd CachyOSKernelManager
|
|
```
|
|
|
|
2. **Run the application:**
|
|
You can run the application directly using the .NET CLI:
|
|
```bash
|
|
dotnet run --project CachyOSKernelManager.csproj
|
|
```
|
|
|
|
3. **Build a release executable (Optional):**
|
|
To create a self-contained executable:
|
|
```bash
|
|
dotnet build -c Release
|
|
```
|
|
The executable will be located in `bin/Release/net8.0/linux-x64/`.
|
|
|
|
## How to Use
|
|
|
|
When you run the application, you will be presented with a list of kernels.
|
|
|
|
- **Navigate:** Use the **Up Arrow** and **Down Arrow** keys to move through the list.
|
|
- **Select/Deselect:** Press the **Spacebar** to toggle a kernel for installation or uninstallation.
|
|
- `[X]` indicates the kernel is selected for an action (or already installed).
|
|
- `[ ]` indicates the kernel is not selected.
|
|
- **Apply Changes:** Press **Enter** to apply the selected changes. The application will then run the necessary `pacman` commands.
|
|
- **Quit:** Press **Q** to exit the application at any time.
|