Skip to main content

Rust-based disk usage analyzer with histogram visualization

Project description

Dustr

Build PyPI version Crates.io License PyPI - Python Version

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.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (669.9 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

dustr-1.0.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (661.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

dustr-1.0.2-cp314-cp314-macosx_11_0_arm64.whl (603.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dustr-1.0.2-cp314-cp314-macosx_10_12_x86_64.whl (611.8 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

dustr-1.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (670.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

dustr-1.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (661.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

dustr-1.0.2-cp313-cp313-macosx_11_0_arm64.whl (603.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dustr-1.0.2-cp313-cp313-macosx_10_12_x86_64.whl (612.2 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

dustr-1.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (670.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

dustr-1.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (661.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

dustr-1.0.2-cp312-cp312-macosx_11_0_arm64.whl (603.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dustr-1.0.2-cp312-cp312-macosx_10_12_x86_64.whl (612.5 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

dustr-1.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (673.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

dustr-1.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (664.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

dustr-1.0.2-cp311-cp311-macosx_11_0_arm64.whl (605.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dustr-1.0.2-cp311-cp311-macosx_10_12_x86_64.whl (613.5 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

dustr-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (673.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

dustr-1.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (664.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

dustr-1.0.2-cp310-cp310-macosx_11_0_arm64.whl (605.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dustr-1.0.2-cp310-cp310-macosx_10_12_x86_64.whl (613.6 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

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

File metadata

File hashes

Hashes for dustr-1.0.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bafaa36b69e3e857111d8c842bd7ec799924faad5606599a06c08ab727240a92
MD5 08ea459763eb1696f402b746207b16a4
BLAKE2b-256 4a3555ddb4489a6dd7332eafe10c3527c075b2ccb0b069c3f47346ea74e1cad1

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ef07a954b4d4862d993f1a26f8cc38619564560541cf180855b3afc1050012cb
MD5 4ffceed7f8747a86586a523c8adac6bc
BLAKE2b-256 568784ccf3130f4abe67440570f1fe4e3dd92616cadf79a501b7cff64694b7f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 378a0f8e89e5b8784ec94835b6cb208c7337612e43197bc7b2515c8dbe5e5c73
MD5 51ab8e5e4278dc0bb8779a166f98041e
BLAKE2b-256 b13f17e06a3e65d2c7c0280108ad320ba880e0dc8c7579c5857f59cf3b147367

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4e89ee6c1d4e3801ddb8de082d48e940c6c8051972df44755747f8c66d9783eb
MD5 f0c643ace75532cbd3fd899ea938c367
BLAKE2b-256 902a92eeeb5d794429787583550f493824bcee4ce3cd2067a644c28a1f79519d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f58ec6f7c4d32185ebff03151c7b97839d31d0a14001372ce46d7ed5d4a98a5a
MD5 ced0b41f6f8d3ef5ccc583d74e7f58ba
BLAKE2b-256 2d3ba23618c91adc6feb6f73e3b2d4ebdf32bf10ba42263759f146d1c3eaabb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 99e0494d6efeac300f59e2551fb24504a2249052dbc82a6621b6c1e2ade2461e
MD5 926e7fe073e8e4521d4130008d50a31c
BLAKE2b-256 9183bf72bffb45b606f1090498f7b066635a49606bf905b568b6820eb70eda02

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 585baf8750ea30f39ce9a9fc4f3a0f58916539cb5c3cdb4db62615905f850212
MD5 67ab62eb9fca4fc16c68b20d7837eff8
BLAKE2b-256 94637cbed531695dbc559e86d81e34ac4bade62f01223e01a8bbe305ae8064f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6336f5323713b4f15bb3d6061a024a360144263b411cf94c0c44bc2e1c35ff10
MD5 530cecccceedb7aec0bc3aad113d8e0a
BLAKE2b-256 8f9e07daa7360e132e9a2b39bb9f0c8895435bbdb4ea7a3220ab52b01687843f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 871c0d98417dc68cbee4197a233578e31985177aea743aa03f92ef976072fe4a
MD5 e185a68ecf81941e7f97d985751fcb69
BLAKE2b-256 bddcdaeb4fdbe0502501f416ef3d728f3e0e26a41a8117490804b67dfee5733e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 184a30e076e58833dd85c8e61622e3ef68429a0ccfa381eef1864c37a02d9c73
MD5 da215d044ddd7809d5ef1bde1aaea5b7
BLAKE2b-256 8d1dace3637c02ae39497cdf1534e54c0977c6712d560e285e611d8525548cc5

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98877feef05eb8e595a735c382facaf8f5483f0b3eeb7e8bc0f2cabf4a8f8f59
MD5 d39ad52ec74cc9bb35261d31a145c2f1
BLAKE2b-256 ab8728b78c7064efae3609873b23dfca855d4d17590ef2a70e5575659f916a30

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ec35cbe88d2ebbde6c5d8cd1e36af856e9ee69c5d080f80f56f35cbf3ad39e79
MD5 b14580b86c1d120b17d7d271c590b917
BLAKE2b-256 3aa12bac63e76c5d5021969adbf35c3b963a07cc2ba2796ce318c1164696b09e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dfeece1fe9bd3cb279bd415b61f838fd6bb80060aa2bdd862632c6a003d1a485
MD5 650375075042a3863ee741470dcc0b3b
BLAKE2b-256 212f474fa67f5c524027d00a3f4eb50f090348d2eaf1d54612c0c34177a2df0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 79fd7ebcd7ff5e3b2e482972026ef88d3b5b0a57f955e47c4cc746a1d965c267
MD5 ea8ff2fa2914b9ff47a27bb11b978bff
BLAKE2b-256 a838d3e197ab76c0a8ee77d2efc745245bdac308a0dfba29d58dac3152c2e04d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a368d45bd39e7ebb749c5007b2472b2cb56e6946f058f844e8653ce9691a5e8d
MD5 2c6a3dd9434e12e8b06fa9702b709c26
BLAKE2b-256 b0fa315ee97182801c68be0724ce9d1e65299e90aa20700f18a49270227b6211

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f2827b18be61d174bf9b0fa74af491ce01caba65a3f58c0de0c9f14d44b6a44a
MD5 f0242fe65266670699577e37acf6120d
BLAKE2b-256 65f2d548a1c0ff1f58af36644b88d6233b09bc512b5f65ba513c3122cf757691

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 638c8d9fc5fb2363d040990c8e3070b41dd09d95dd66a219d037b9574b62bbed
MD5 54d34a8cc7404d1d90c3d0e88bc8799e
BLAKE2b-256 e4f4f9d1bc8f6396db2ef37056477534ee1594d3bd98518274816008a4f57ff6

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0293bef8153be02259ba650ae80c137aa00089b6931fd112e237ed46e555b323
MD5 9772cf4bd4dfddcd0194a363261e1cfc
BLAKE2b-256 c033841a9af7624539ba476f899326470792711c8830f5027c1419d3e920adc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fff4c401081a569171c77a0f5a2ffb738cc44e0561d6c5cb96280623468f4213
MD5 f81b4b6a4b11d5605a605882f72ff40e
BLAKE2b-256 5e2751420c26943ff0d3ad98766142192b71b268a698314fed9f636272ff873b

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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.2-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dustr-1.0.2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2444085f9073bdc853e7a9ba32fb4e1d033ca407a0076dcce23d518ff019a6e2
MD5 76e2af01892ff2ca937b804ae45a5e51
BLAKE2b-256 14f44af27519bf734567a394211dbb61287562d9e6dfa56d425aae56acb16d23

See more details on using hashes here.

Provenance

The following attestation bundles were made for dustr-1.0.2-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