Skip to content

An alternative collection of CLI utilities written in Rust, providing modern replacements for common system tools with improved performance, safety, and user experience.

License

Notifications You must be signed in to change notification settings

MVDW-SplashOS/splash-cli-utils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

splash-cli-utils

An alternative collection of CLI utilities written in Rust, providing modern replacements for common system tools with improved performance, safety, and user experience.

🚀 Available Tools

✅ Completed Tools

  • mkdev - Advanced disk image writer with auto-optimization and progress tracking
  • signals - Process signal management tool (binary: sig)

📋 Planned Tools

  • mkimg - Create disk images from devices or folders
  • delete - Smart file deletion with trash support
  • copy - Advanced file/folder copying with clipboard integration
  • paste - Paste files/folders from clipboard
  • cut - Cut files/folders to clipboard or another location
  • archive - Universal archive management (zip, tar, etc.)
  • seek - Fast file/folder search by name or content
  • peek - Enhanced file content preview (head/tail with extras)

📦 Installation

Quick Install (Recommended)

The easiest way to build and install both tools:

./install.sh

This will install all tools to /usr/local/bin by default.

Custom Installation

# Install to a custom location
./install.sh --prefix ~/.local

# Build in debug mode
./install.sh --debug

# Non-interactive installation
./install.sh --yes

# Force overwrite existing binaries
./install.sh --force

# See all options
./install.sh --help

Manual Build and Install

If you prefer to use the Makefile directly:

# Build both tools
make build

# Build individual tools
make mkdev
make signals

# Install (may require sudo for /usr/local)
make install

# Install to custom location
make install PREFIX=~/.local

# Build in debug mode
make build PROFILE=debug

# Clean build artifacts
make clean

Using Cargo Workspace

You can also build using Cargo directly:

# Build all tools in the workspace
cargo build --release --workspace

# Build individual tools
cargo build --release -p mkdev
cargo build --release -p sig

# Run tests
cargo test --workspace

# Check code
cargo check --workspace
cargo clippy --workspace
cargo fmt --workspace

🛠️ Tool Usage

mkdev - Disk Image Writer

A modern replacement for dd with automatic buffer optimization and real-time progress tracking.

# Basic usage
mkdev source.iso /dev/sdX

# With custom buffer size
mkdev source.iso /dev/sdX --buffer-size 32

# Examples
mkdev ubuntu-22.04.iso /dev/sdc
mkdev raspios-lite.img /dev/sdc --buffer-size 64

Features:

  • Auto-detects optimal buffer size for your hardware
  • Real-time progress with speed and ETA
  • Data integrity with sync operations
  • Safe confirmation prompts
  • Modern, colorful output

sig - Signal Management

Send signals to processes by PID or name with advanced matching.

# Send signal by PID
sig kill 1234
sig term 1234
sig int 1234

# Send signal by process name
sig kill chrome
sig term nginx
sig int python

# Send to all matching processes
sig kill --all chrome
sig term -a python

# Using signal numbers
sig 9 1234
sig 15 chrome --all

Supported signals:

  • int, interrupt, sigint (2)
  • term, terminate, sigterm (15)
  • kill, sigkill (9)
  • hup, hangup, sighup (1)
  • quit, sigquit (3)
  • usr1, sigusr1 (10)
  • usr2, sigusr2 (12)
  • stop, sigstop (19)
  • cont, sigcont (18)
  • Or any numeric signal

📋 Requirements

  • Rust 1.70+ (install from rustup.rs)
  • Linux (tools use Linux-specific system calls)
  • libc (automatically handled by Cargo)

🤝 Acknowledgments

These tools are inspired by traditional Unix utilities but redesigned with modern safety, performance, and usability in mind.

About

An alternative collection of CLI utilities written in Rust, providing modern replacements for common system tools with improved performance, safety, and user experience.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published