Automic VaultAutomic Vault

brew

Install trash-cli with Homebrew, apk, apt, dnf, Nix, pacman, zypper

Command-line interface to the freedesktop.org trashcan. Version 0.24.5.26 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install trash-cli

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add trash-cli

Alpine Linux edge package indexes · trash-cli · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install trash-cli

Debian stable package indexes · trash-cli · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install trash-cli

Fedora Rawhide package metadata · trash-cli · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#trash-cli

nixpkgs package indexes · pkgs/by-name/tr/trash-cli/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S trash-cli

Arch Linux sync databases · trash-cli · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install trash-cli

openSUSE Tumbleweed package metadata · trash-cli · source: download.opensuse.org

overview

Package summary

Command-line interface to the freedesktop.org trashcan

Commands and aliases

  • trash-empty
  • trash-list
  • trash-put
  • trash-restore
  • trash-rm

history

Project history and usage

trash-cli is a Python command-line interface to the freedesktop.org trash can. Its README describes a suite of commands for moving files to trash, listing trashed files, restoring them, emptying trash, and removing matching trashed entries while preserving metadata such as original path, deletion date, and permissions.

Project history

The project grew out of the Unix command-line gap between irreversible `rm` and desktop trash implementations. The official README frames trash-cli as a command-line and scripting interface to the same trash can used by KDE, GNOME, and XFCE, making desktop-style file recovery available from shells and scripts.

GitHub repository metadata identifies `andreafrancia/trash-cli` as an official source repository created in 2011, while the README examples still show older usage dates from 2007 and 2008. The project has continued to publish tagged versions and maintain Python packaging instructions, with the README recommending pipx or pip, source installs from Git, and distro package managers.

Adoption history

trash-cli moved from being a convenience wrapper for freedesktop.org trash semantics into a broadly packaged Unix utility. The official README lists package-manager installation commands for Debian/Ubuntu, Arch Linux, and Fedora, and the batch input additionally records availability in Homebrew, apk, Debian, dnf, MacPorts, Nix, pacman, Ubuntu, and zypper.

The package's adoption is tied to cross-desktop Linux behavior: by using the freedesktop.org trash location and metadata model, it fits systems where graphical file managers and command-line tools need to see the same trash state.

How it is used

Typical use is replacing ad hoc destructive cleanup with explicit trash operations: `trash-put` sends files or directories to the trash, `trash-list` supports shell filtering, `trash-restore` interactively restores entries, `trash-empty` clears trash or old entries, and `trash-rm` removes trashed files matching patterns.

The README explicitly warns against aliasing `rm` directly to `trash-put` because the commands have different semantics, including directory handling. Instead it suggests using shell aliases that remind users not to run `rm`, and it documents cron-based automatic deletion with `trash-empty 30`.

Why package nerds care

For package-manager users, trash-cli is the portable Linux answer to safer deletion from scripts and terminals. It matters because it integrates with the desktop trash standard rather than inventing a private holding directory, so it can be packaged once and behave consistently across common Unix desktops.

The formula is also a good example of a small CLI whose executable surface is intentionally split into subcommands, making it easy for downstream packagers and shell users to expose focused tools instead of one large interactive program.

Timeline

  • 2007-2008: README examples show early trash-list and trash-empty workflows.
  • 2011: Official GitHub repository metadata records creation of `andreafrancia/trash-cli`.
  • 2020s: README documents pipx, pip, Git source installs, and distribution package-manager installs.

Related projects

  • Related to freedesktop.org trash implementations used by KDE, GNOME, and XFCE.
  • Contrasts with `rm`, which permanently unlinks files rather than recording trash metadata for recovery.
  • Complements macOS-specific tools such as Ali Rantakari's `trash`, which targets Finder and macOS Trash behavior.

Sources

  • Batch input fields: source_facts.description, source_facts.executables, source_facts.package-manager
  • Official GitHub repository metadata: https://github.com/andreafrancia/trash-cli
  • Official README: https://github.com/andreafrancia/trash-cli#readme

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
trash-emptycliglobal executable
trash-listcliglobal executable
trash-putcliglobal executable
trash-restorecliglobal executable
trash-rmcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.24.5.26
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://github.com/andreafrancia/trash-cli

install metadata

Package metadata

Package keybrew:trash-cli
Version0.24.5.26
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/trash-cli
Homepagehttps://github.com/andreafrancia/trash-cli
Repositoryhttps://github.com/andreafrancia/trash-cli
Upstream docshttps://github.com/andreafrancia/trash-cli#readme
LicenseGPL-2.0-or-later
Source archivehttps://files.pythonhosted.org/packages/f7/6c/d51b36377c35e4f9e69af4d8b61a920f26251483cdc0165f5513da7aefeb/trash_cli-0.24.5.26.tar.gz
Dependenciespython@3.14
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nametrash-cli
Version Scheme0
Revision0
Head VersionHEAD
Conflicts With
  • macos-trash
  • osx-trash
  • trash
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyyes
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

trash-cli 0.24.5.26-0.3

command line trashcan utility

https://github.com/andreafrancia/trash-cli

sudo apt install trash-cli
  • Section: utils
  • Architecture: all
  • 2 dependencies
  • normalized package name match
  • Matched by: Trash Cli
Debian stable package indexes · deb.debian.org · Debian stable package indexes: trash-cli from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

trash-cli

nix profile install nixpkgs#trash-cli
  • normalized package name match
  • Matched by: Trash Cli
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/tr/trash-cli/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

trash-cli 0.23.11.10-1

command line trashcan utility

https://github.com/andreafrancia/trash-cli

sudo apt install trash-cli
  • Section: universe/utils
  • Architecture: all
  • 6 dependencies
  • normalized package name match
  • Matched by: Trash Cli
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: trash-cli from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

trash-cli 0.24.5.26-r1

Command line interface to the freedesktop.org trashcan

https://github.com/andreafrancia/trash-cli

sudo apk add trash-cli
  • License: GPL-2.0-or-later
  • Architecture: x86_64
  • Source Package: trash-cli
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Trash Cli
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: trash-cli from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

trash-cli-doc 0.24.5.26-r1

Command line interface to the freedesktop.org trashcan (documentation)

https://github.com/andreafrancia/trash-cli

sudo apk add trash-cli-doc
  • License: GPL-2.0-or-later
  • Architecture: x86_64
  • Source Package: trash-cli
  • normalized package name match
  • Matched by: Trash Cli
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: trash-cli-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

trash-cli-pyc 0.24.5.26-r1

Precompiled Python bytecode for trash-cli

https://github.com/andreafrancia/trash-cli

sudo apk add trash-cli-pyc
  • License: GPL-2.0-or-later
  • Architecture: x86_64
  • Source Package: trash-cli
  • 1 dependencies
  • normalized package name match
  • Matched by: Trash Cli
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: trash-cli-pyc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

trash-cli 0.24.5.26-20.fc45

Command line interface to the freedesktop.org trashcan

https://github.com/andreafrancia/trash-cli

sudo dnf install trash-cli
  • License: GPL-2.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: trash-cli
  • 3 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Trash Cli
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: trash-cli from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

trash-cli 0.24.5.26-3

Command line trashcan (recycle bin) interface

https://github.com/andreafrancia/trash-cli

sudo pacman -S trash-cli
  • License: GPL-2.0-only
  • Architecture: any
  • 3 dependencies
  • normalized package name match
  • Matched by: Trash Cli
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: trash-cli from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

trash-cli 0.24.5.26-1.4

Command line interface to the freedesktop.org trashcan

https://github.com/andreafrancia/trash-cli

sudo zypper install trash-cli
  • License: GPL-2.0-or-later
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: trash-cli
  • 3 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Trash Cli
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: trash-cli from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment