whatisgithub

What is coreutils?

alerque/coreutils — explained in plain English

Analysis updated 2026-07-17 · repo last pushed 2025-05-31

RustAudience · developerComplexity · 4/5StaleLicenseSetup · moderate

In one sentence

A from-scratch rewrite of GNU coreutils (ls, cp, cat, etc.) in Rust that works as a drop-in replacement across Linux, macOS, and Windows for cross-platform command-line consistency.

Mindmap

mindmap
  root((repo))
    What it does
      Reimplements GNU coreutils
      Drop-in replacement
      Single multicall binary
    Tech stack
      Rust
      GNU test suite
      BusyBox-style binary
    Use cases
      Cross-platform scripts
      CI pipelines
      Windows dev machines
    Audience
      Developers
      System admins
      DevOps teams
    Key features
      Portable across OSes
      Builds individual tools
      Tracks test pass rate

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build shell scripts that run identically on Linux, macOS, and Windows without command-not-found errors.

USE CASE 2

Standardize command-line tools on Windows development machines that need to run scripts originally written for Linux.

USE CASE 3

Create cross-platform CI pipelines using a consistent set of core utilities.

USE CASE 4

Build only the specific command-line tools you need instead of the entire suite.

What is it built with?

RustCargo

How does it compare?

alerque/coreutils0xr10t/pulsefi404-agent/codes-miner
Stars00
LanguageRustRustRust
Last pushed2025-05-31
MaintenanceStale
Setup difficultymoderatehardmoderate
Complexity4/54/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Rust toolchain installed and building from source, deploying as drop-in replacements requires setting up symlinks or binary aliases.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

Every computer operating system ships with a set of basic command-line tools, things like ls (list files), cp (copy), rm (remove), cat (view file contents), and dozens more. On Linux, these come from a package called GNU coreutils. uutils coreutils is a from-scratch rebuild of that same toolkit, written in a programming language called Rust. The goal is to provide the exact same commands with the exact same behavior, so that scripts and workflows built around the GNU originals work as drop-in replacements without modification. The main motivation is portability. The GNU originals are tightly coupled to Unix-like systems, which means they don't run natively on Windows. Because Rust compiles to many platforms, this rewrite works on Linux, macOS, Windows, and others. That means someone writing a shell script or automation pipeline on a Mac can run the same commands on a Windows machine or a Linux server without hitting "command not found" errors or subtle behavioral differences. The project is built so that all the utilities compile into a single "multicall" binary, one executable file that behaves differently depending on the name used to call it, similar to how BusyBox works. You can also build only the specific tools you need rather than the whole suite. The README notes that while every program has been implemented, some options may still be missing or behave differently, and the project treats any deviation from GNU's behavior as a bug. The target audience is developers and system administrators who want a consistent set of command-line tools across different operating systems, for instance, someone building cross-platform CI pipelines, or a team standardizing on Windows development machines that still need to run scripts originally written for Linux. The project tracks its progress by measuring how many of the official GNU test suite's tests it passes, and the README shows that number has been climbing steadily over time.

Copy-paste prompts

Prompt 1
I need a cross-platform shell script that uses ls, cp, and cat. How do I set up uutils coreutils so my script works on both Windows and Linux?
Prompt 2
Show me how to build only the ls and rm utilities from uutils coreutils instead of the full multicall binary.
Prompt 3
How do I install the uutils coreutils multicall binary on Windows and create symlinks so ls, cp, and cat all work in PowerShell or CMD?
Prompt 4
I'm setting up a CI pipeline that runs on both Linux and Windows runners. How do I use uutils coreutils to guarantee the same command-line behavior on both?
Prompt 5
Help me run the GNU coreutils test suite against uutils coreutils to see which tests pass and which fail on my machine.

Frequently asked questions

What is coreutils?

A from-scratch rewrite of GNU coreutils (ls, cp, cat, etc.) in Rust that works as a drop-in replacement across Linux, macOS, and Windows for cross-platform command-line consistency.

What language is coreutils written in?

Mainly Rust. The stack also includes Rust, Cargo.

Is coreutils actively maintained?

Stale — no commits in 1-2 years (last push 2025-05-31).

What license does coreutils use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is coreutils to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is coreutils for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.