Skip to main content

Rust-based disk usage analyzer with histogram visualization

Project description

Dustr

Build PyPI version Crates.io License PyPI - Python Version Benchmarks

Dustr is a Rust-based implementation of duk, a commandline utility that shows disk usage statistics in a directory with a histogram visualization.

Introduction

Dustr provides the same functionality as duk but with a Rust backend for improved performance. It will show you a histogram of the disk usage in a directory:

Statistics of directory "." :

Size           In %   Histogram            Name
4.0 KB         1.39  #                    .gitignore
4.0 KB         1.39  #                    setup.py
4.0 KB         1.39  #                    README.md
12.0 KB        4.17  ##                   dist/
12.0 KB        4.17  ##                   dustr/
12.0 KB        4.17  ##                   build/
16.0 KB        5.56  ##                   duk.egg-info/
220.0 KB       76.39 ####################  .git/

Total directory size: 284.0 KB

Installation

From PyPI

pip install dustr

From source

First, ensure you have Rust installed (see rustup.rs).

Then install maturin:

pip install maturin

Build and install the package:

cd dustr
maturin develop  # For development
# OR
maturin build --release  # To build a wheel
pip install target/wheels/dustr-*.whl

Usage

dustr [OPTIONS] [DIRECTORY]

Options:

  • -i, --inodes: Show inode count instead of size
  • -g, --nogrouping: Don't use thousand separators (for inode mode)
  • -f, --noF: Don't add file type indicators (/ for directories, @ for symlinks)
  • -j, --json: Output results as JSON

JSON output

dustr --json .
{
  "directory": ".",
  "mode": "size",
  "entries": [
    { "name": ".gitignore", "value": 4, "percentage": 1.41 },
    { "name": ".git/", "value": 220, "percentage": 77.46 }
  ],
  "total": 284
}

Differences from duk

  • Performance: Rust backend with parallel directory traversal (jwalk + rayon)
  • Implementation: Uses native Rust file system operations instead of calling du command

Requirements

  • Python >= 3.9
  • Rust toolchain (for building from source)

License

LGPL-3.0-or-later

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dustr-1.0.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (675.0 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

dustr-1.0.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (666.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

dustr-1.0.5-cp314-cp314-macosx_11_0_arm64.whl (604.9 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dustr-1.0.5-cp314-cp314-macosx_10_12_x86_64.whl (620.8 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

dustr-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (675.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

dustr-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (668.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

dustr-1.0.5-cp313-cp313-macosx_11_0_arm64.whl (605.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dustr-1.0.5-cp313-cp313-macosx_10_12_x86_64.whl (620.8 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

dustr-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (675.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

dustr-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (668.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

dustr-1.0.5-cp312-cp312-macosx_11_0_arm64.whl (606.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dustr-1.0.5-cp312-cp312-macosx_10_12_x86_64.whl (621.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

dustr-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (678.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

dustr-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (670.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

dustr-1.0.5-cp311-cp311-macosx_11_0_arm64.whl (607.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dustr-1.0.5-cp311-cp311-macosx_10_12_x86_64.whl (622.7 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

dustr-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (677.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

dustr-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (670.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

dustr-1.0.5-cp310-cp310-macosx_11_0_arm64.whl (607.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dustr-1.0.5-cp310-cp310-macosx_10_12_x86_64.whl (622.7 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file dustr-1.0.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 47340a7e108c6a273147f6db10e85e6fa9077eda8cb50afc26e44799b9c6f79c
MD5 5625839f1e836d39bacf398d010d113e
BLAKE2b-256 483f84901cdfc435d9b29ea27d6e6bd5dab7ee0b2a18457b0e42529fec517629

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2d72ec64b9d337c8e6a18c6d6732d2dab7386eff9c6c17fddea532c8cf098f88
MD5 42baa0e963fef6c6c955d8d0e3f1e72b
BLAKE2b-256 0746daabd9d88bb59467fbe43eeb81ee28d4ec4cfabe649a1f597443535fe778

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 688602a10d8d8f8ef43fd271ecb47e92d864eb981bc73b5ab2101ab8c2714078
MD5 2a87ea300087315e1c864e8c25192cdf
BLAKE2b-256 24d176a2c2610a49c03cc8c0bc6f7249dfcc44f9f5d181e6c072fd51b8122038

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dfbfa95a1e40bc6dc704ac4cb23bc47b65e15dc6a7ecdfaa341a38f3ec8e0cc5
MD5 7a19a9dabca2810569291e7ed97001cc
BLAKE2b-256 927b99b1319a11a0a60b1ffd0efac3c43e10255de70127c730a5984b3516ac5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e3b9c6546335e4ded5d5b3ec520aa8398ad98390a46760b5328f6339beeadc03
MD5 f4d2d1ecb9ada3edc80df48f32638907
BLAKE2b-256 2e404a40615b80b939008aea63a0c2e8f7945396a049222971337d4cdcbb65eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5ed0d276ee98b7c8f8d7a1fb1e1ab44ce7adfdc77909b0ad411a066e142ba15b
MD5 167b19863af20a31de1b97a9932c4e0c
BLAKE2b-256 452b3d4c5c36f1dcf36aa3c2148bb27e60930d00a5df08699410681af0330354

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c70ffb36975fc3089f63ef0ae601b774da6a4b235be58a6037028e948ce8dc51
MD5 1ae0d2018a8918119b907d9f90f511d5
BLAKE2b-256 12f7753d61f22655d37b8bf9a6a6afabab5882f70277acc91f78ac0523facab2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 eb11133cf8b5258bfafc9c307e30aa4bb67928d96af33638ace40d9c57494a58
MD5 a198ccd1c13f2cf2629e71b58f718242
BLAKE2b-256 88f165d42c5cc68da6031bce9a9c590258e473fe442deaf467b38461123dd4b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 921dd91d5b585fc28aa0d302936d83af381c870536d8cbf56ba7a441e4020cec
MD5 8ab137ee17233941d0657eced0f42c18
BLAKE2b-256 bb5662835f57f796b6a67c6285fedc89dcc87b14f0b7bfbe02302f807515b06d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 01938ce5c0b448a855257e966dbcd694572dda87016f667615b9dfaa2af0ffc7
MD5 1a20fa7d6ddbc2085dfd6f962ca5c1d1
BLAKE2b-256 aea4cd0d99d1dc3366e002b7dc1c9480dab6e00c81ada0e5c996c5df2d912578

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec17a8980bc8c2f89477a3e777762e9cfbcda3a0ecc0f82bb60e551cae67e7b6
MD5 e44f3877b87ca8ab269e8418e5acae87
BLAKE2b-256 96f5d551d7446c3672440a74dfe86b1db0c1573a06b8f724c1b2d0548ba24627

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c3256454e84a879dd41982c168b9ecac6698d8563c8ba28153a9e73670d7bc02
MD5 31717140b8f50a6ccd7ec599a32920a9
BLAKE2b-256 2f7a764733cbcd331175d8a25c983de582fc7df68c857ddd08aba5465f4603ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 389c6dc84aafc4683e7775e92d7aef109cef7bc92f13e213f5c2fbd2f0b445ac
MD5 045bd6502825ae4ed62c17bc9e36dcfa
BLAKE2b-256 be166a1d8e10048219c5da5f99dc552b7a6542247c9fd3923e5bf153471e94fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b12c8d4246fc070af40d16a9fbd51699b486a60603b9d94cfde0f8929acecf14
MD5 18d19d432aa7f74d241b7bf65a85aad8
BLAKE2b-256 a02e06ee2b5cae91a074359c14141a6a549ee4d5763217454810b3c46bc51182

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 361fab2359a71a39b0b6823a86a0971589d3218e7322bbfe2389f18504011954
MD5 a60ff50de8d8387bbd4b7dc69cbe1317
BLAKE2b-256 be66b8e14f469efcf6fd40554d66068ab79365a47c47aca665795e2fc4d902f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4e8aeb3b293ba2a806960fcd3d5f71234908a2220e9b6ea43beac7ca013d5e3f
MD5 7aa6c9b41358fea9eec526c6aa21d519
BLAKE2b-256 e12254359745a0045f6e6d0b626bb90acbb193edc052a438e5c18fd06a905eb1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3b9eae074cfec2b5ed82ee5f45afd737832c7c3f5ad78cdc19b7763af78b4e7e
MD5 be78eeda5d88e6eda54d0c4762ad7282
BLAKE2b-256 8791f2e0302a96c3ec39ea7133790ac5e26e8b3271833a90461999f58ca52f43

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4f92330207990c130246b94d9e93aa21afe91f22c68a098a0659373d74bf3efe
MD5 b79c89d5fd211053d98192f0b25abeb6
BLAKE2b-256 ca086cc6efce89f7e30af2a5a08d61ebb2f4ac59f2ea4f6f081fd7a8d7bc9fcf

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2c1c5ad37c7b74df1a03504237b86e176146f78844fe13d3c942f60c7c04b3bd
MD5 82c358ff95f1ad3ce6947c4617ff61d5
BLAKE2b-256 7ac6c1e13fde374fd743ef5ce69503af5661ffb77e380f751022f0930c125d2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dustr-1.0.5-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.5-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 42ca2bc1b882a2cda5419869b7530b1d90d9fd528fd6e5606f668967b0493cb3
MD5 082e260999fd1a75d5671e17129b5190
BLAKE2b-256 512c72551064f2377c55b629f00980122559223cd2448f0a96d75f94c2ccb80c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.5-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: build.yml on wvangeit/dustr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page