1 stable release
Uses new Rust 2024
| new 1.0.0 | Nov 17, 2025 |
|---|
#160 in Unix APIs
75KB
575 lines
RPMI: Graphical Utility for Managing RPM Packages

RPMI is a simple graphical utility, developed in Rust using EGUI, designed for installing, upgrading, and removing RPM packages on Linux operating systems. It provides an intuitive interface for interacting with packages, using dnf as its backend.
Features
- Install RPM Packages: Easily install new RPM packages.
- Upgrade RPM Packages: Upgrade existing packages to newer versions.
- Remove RPM Packages: Remove unwanted packages from your system.
- Graphical User Interface: Intuitive user interface built with EGUI.
- Detailed Package Information: View package name, version, architecture, size, summary, URL, and description before installation.
- Process Logging: Monitor the progress of
dnfoperations in real-time.
Installation
Cargo
You can install egui_rpm_installer directly from crates.io using cargo:
cargo install egui_rpm_installer
COPR
For Fedora and RHEL-based systems, you can install RPMI from the COPR repository:
sudo dnf copr enable arabianq/rpmi
sudo dnf install rpmi
Pre-built Binaries
You can download pre-built binaries for various platforms from the GitHub Releases page.
Build and Run
Dependencies
To build and run RPMI, you will need:
- Rust (version 1.70 or higher)
dnf(for package management)pkexec(for executing commands with elevated privileges)
Build
Clone the repository and build the project:
git clone https://github.com/arabianq/rpmi.git
cd rpmi
cargo build --release
The executable will be located at target/release/rpmi.
Run
You can run RPMI by passing the path to one or more RPM files:
./target/release/rpmi /path/to/your/package.rpm
If you pass multiple files, a separate RPMI instance will be launched for each.
Usage
- Launch: Start RPMI by specifying the path to an RPM file.
- Package Information: The RPMI window will display detailed information about the package.
- Action: Depending on the package's state (new, older version, newer version of installed), you will be offered "Install", "Upgrade", or "Remove" buttons.
- Execute: Click the appropriate button to begin the process. The execution log will be displayed in the window.
- Completion: After the process is complete, you can close the application.
License
This project is distributed under the MIT License. See the LICENSE file for details.
Dependencies
~13–38MB
~574K SLoC