Skip to content

Latest commit

 

History

History
236 lines (148 loc) · 3.06 KB

File metadata and controls

236 lines (148 loc) · 3.06 KB

System

System is a unified command-line utility written in C that consolidates common system operations into a single executable.

It provides functionality across filesystem inspection, process control, package management, networking, environment handling, and execution — all through a consistent interface.


Overview

System is a compact multi-call binary inspired by tools like BusyBox.
It exposes multiple system-level operations through a single entry point.


Features

  • Filesystem inspection and permission checks
  • Process management and signaling
  • Package management (APT environments)
  • Command execution and scripting
  • Node.js execution and package installation
  • Network file retrieval
  • Git integration
  • Environment variable control
  • Device node creation
  • APK downgrade support
  • System information access

Build

Requirements:

  • C compiler (clang or gcc)
  • Autotools
autoreconf --install
./configure
make

Installation

Default install:

make install

Custom install path:

./configure --prefix=/path
make
make install

Uninstall:

make uninstall

Usage

System OPTION [ARGUMENTS...]

Options

Filesystem

-a DIRPATH
    List all files including hidden entries

-l [DIRPATH]
    List files in long format

-x FILE
    Check if file exists

-y FILE
    Check if file is readable

-xx FILE
    Check if file is executable

-z FILE
    Check if file is writable

Device

-b MAJOR:MINOR PATH
    Create block device node

Process

-k SIGNAL PID
    Send signal to a process

-p
    Display CPU count and kernel configuration

Package Management

-i PACKAGE
    Install package

-u PACKAGE
    Remove package

-Sy
    Update package lists

-Su
    Upgrade installed packages

-Syu
    Perform full system upgrade

-Ss
    Clear package cache

Execution

-c COMMAND
    Execute command in shell

-n FILE [ARGS...]
    Execute Node.js script

APK

-d FILE
    Downgrade APK using rish

Node Package

-g PACKAGE
    Install npm package

Network

-q URL
    Download file using wget

Git

-m MESSAGE
    Commit changes

Environment

-e KEY=VALUE
    Set environment variable

-o OPTION
    Enable shell option

Test

-t VAL OP VAL
    Evaluate condition

Setup

-f
    Setup dependencies (reserved)

Misc

-j
    Output static message

Design

  • Written in C for minimal overhead
  • Uses execvp for external delegation
  • Designed for Linux and Termux
  • Single-binary architecture

Limitations

  • Depends on external tools (git, npm, wget, apt)
  • Device creation requires elevated privileges
  • APK downgrade requires rish
  • Some kernel data may be restricted

License

MIT License


Author

System CLI Project