A simple TUI file utility. This program is only designed to run and compile on 64-bit Linux.
- Download or otherwise obtain the compiled executable.
- Make it executable:
$ chmod +x file_utility
. - Place it somewhere in your PATH: e.g.
$ mv file_utility $HOME/bin
. - Navigate to the directory where you'd like the program to start: e.g.
$ cd ~
. - Execute the program:
file_utility
.
You can use the Esc
key to abort text-input mode.
If you don't see the Usage panel at the bottom, try resizing your terminal window. It usually just works but if that seems to fix it if not.
I've only tested this on Fedora 34 and Debian 10, but it is fully statically linked and I would expect it to work on many other 64-bit Linux systems.
This program is implemented in Rust, using a handful of dependencies found on crates.io.
- Stable Rust: The default stable toolchain is fine. Obtainable via
rustup
using the instructions at this link. x86_64-unknown-linux-musl
target: Oncerustup
is installed and ready to use, executerustup target add x86_64-unknown-linux-musl
. Alternatively, you could delete or rename the.cargo/config.toml
which forces this target. This program should also build for the default Linux target and run fine on your machine. To ensure this binary is as portable as possible, this repository is configured to always compile for this alternate target. In default builds, Rust statically links all your dependencies but still dynamically links to the systemlibc
, which means incompatible versions may prevent the executable from running. Using this alternatelibc
allows even this to be statically linked, removing the runtime dependency on a minimum installed version.
Clone or download this repository. Enter the project directory containing Cargo.toml
and execute cargo run
to compile and execute the program. The resulting executable will be located at target/x86_64-unknown-linux-musl/debug/file_utility
. To compile with release mode, add the --release
flag. Use cargo build
to build the binary without running it. Use cargo test
to run tests.