oru

Crates.iooru
lib.rsoru
version0.1.6
created_at2025-12-11 04:48:01.521133+00
updated_at2025-12-21 04:30:05.836085+00
descriptionOru is a system configuration manager for Origami Linux
homepage
repository
max_upload_size
id1979152
size153,239
LILAY (li-lay)

documentation

README

Oru

Oru is a system configuration manager for Origami Linux.

Features

  • Interactive Terminal Popup: Execute privileged commands with an embedded pseudo-terminal for password entry
  • System Updates & Maintenance: Check for updates, apply updates, rollback, view deployment history
  • Shell Management: List, change, and config shells
  • System Information: System overview, hardware info, resource usage, health check
  • Package Management: CLI commands for installing, removing, searching, and getting info on packages

Terminal Popup Feature

The application includes an integrated pseudo-terminal (PTY) popup that allows you to execute commands requiring interactive input (like password entry) directly within the TUI. This provides a seamless experience for privileged operations without switching to an external terminal.

Key capabilities:

  • Interactive command execution with real-time output
  • Secure password entry
  • Full terminal emulation with ANSI color support
  • Keyboard input forwarding (Ctrl+C, arrow keys, etc.)
  • Exit status reporting

For detailed documentation, see docs/terminal_popup.md.

Installation

cargo install --path .

Usage

Oru can be used in two modes: interactive TUI and command-line interface.

Interactive TUI

oru

Run without arguments to start the interactive TUI for system configuration.

Navigation

  • ↑/k: Move up
  • ↓/j: Move down
  • Enter/l: Select/Execute
  • Esc/h: Go back
  • q: Quit

CLI Commands

Oru provides command-line interface for package management:

  • oru install <package>... - Install packages using rpm-ostree
  • oru remove <package>... - Remove packages using rpm-ostree
  • oru search <query>... - Search for packages using dnf
  • oru info <package>... - Show package information using dnf

Examples

oru install vim git
oru search "text editor"
oru info firefox

Options

  • --help, -h: Display help information
  • --version, -V: Display version information

Technology Stack

  • TUI Framework: Ratatui (v0.30.0-beta)
  • Terminal Backend: Crossterm (v0.29.0)
  • CLI Framework: Clap (v4.5.53)
  • PTY Support: portable-pty (v0.8.1)
  • Terminal Emulation: vt100 (v0.15.2)
  • Error Handling: color-eyre (v0.6.3)
  • Language: Rust (edition 2021)

Development

Building

cargo build

Running

cargo run

Testing

cargo test

License

Copyright (c) LILAY contact@lilay.dev

This project is licensed under the MIT license (LICENSE or http://opensource.org/licenses/MIT)

Commit count: 0

cargo fmt