# Install lsr with Homebrew, Nix

Ls but with io_uring. Version 1.0.0 via Homebrew; verified 2026-07-05. Also installable with nix: nix profile install nixpkgs#lsr.

## Install

```sh
sudo av install brew:lsr
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install lsr
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#lsr
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ls/lsr/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:lsr
- **Package manager:** Homebrew
- **Version:** 1.0.0
- **Source summary:** Ls but with io_uring
- **Homepage:** <https://tangled.org/rockorager.dev/lsr>
- **Last updated:** 2026-07-05T13:15:03+09:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- lsr (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 1.0.0
## Project history and usage

lsr is a Zig implementation of `ls(1)` that uses io_uring where possible to reduce syscall overhead. The official README calls it `ls(1)` but with io_uring, and the author's write-up describes it as an exercise in syscall golf.

### Project history

The project was publicly introduced by Tim Culverhouse in a 2025-05-06 write-up. The author explains that lsr uses the ourio library and io_uring to batch I/O work such as opening directories, reading local time, user and group data, and performing stat-like calls.

The official repository is hosted on Tangled. Its README documents Zig 0.14.0 build/install instructions, a manpage install target, and common `ls`-style display options including long output, columns, sorting, colors, hyperlinks, icons, and directory grouping.

### Adoption history

lsr is young and specialized, but it already reached Homebrew and Nix in the supplied package facts. Its adoption is primarily among users interested in Linux filesystem performance, Zig tooling, and modern `ls` alternatives.

### How it is used

Typical usage mirrors `ls`: run `lsr [options] [path]`. The README documents options for one-entry-per-line output, hidden files, columns, color mode, directories-first grouping, OSC 8 hyperlinks, icons, long output, reverse sort, and modification-time sorting.

The author's benchmarks compare lsr against GNU ls, eza, lsd, uutils ls, and BusyBox ls on directories from 10 to 10,000 files. The README notes that lsr works on macOS and BSD too, but the io_uring syscall batching benefits are Linux-specific.

### Why package nerds care

lsr is package-nerd interesting because it revisits the most ordinary Unix command with a very modern Linux I/O interface. It is not a general replacement for mature `ls` implementations yet, but it is a compact demonstration of where syscall batching can matter in command-line filesystem tools.

### Timeline

- 2025: Author publishes the lsr write-up and benchmarks.
- 2025: Tangled repository documents version 0.1.0 benchmark data.
- 2026: Supplied package facts list Homebrew and Nix packaging.

### Related projects

- Related tools include GNU coreutils ls, BusyBox ls, eza, lsd, uutils ls, the Zig language, io_uring, and the author's ourio library.

### Sources

- <https://rockorager.dev/posts/lsr-ls-but-with-io-uring/>
- <https://tangled.org/rockorager.dev/lsr>
- <https://tangled.sh/@rockorager.dev/lsr>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- Nix - lsr: normalized package name match | nixpkgs package indexes: pkgs/by-name/ls/lsr/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/lsr.yml](https://github.com/mxcl/pkgdb/blob/main/combined/lsr.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
