Skip to main content

Rust-based disk usage analyzer with histogram visualization

Project description

Dustr

PyPI version Build PyPI - Python Version License

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

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

dustr-1.0.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (661.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

dustr-1.0.0-cp314-cp314-macosx_11_0_arm64.whl (603.0 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dustr-1.0.0-cp314-cp314-macosx_10_12_x86_64.whl (620.5 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

dustr-1.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (670.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

dustr-1.0.0-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.0-cp313-cp313-macosx_11_0_arm64.whl (603.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dustr-1.0.0-cp313-cp313-macosx_10_12_x86_64.whl (620.6 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

dustr-1.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (670.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

dustr-1.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (661.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

dustr-1.0.0-cp312-cp312-macosx_11_0_arm64.whl (603.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dustr-1.0.0-cp312-cp312-macosx_10_12_x86_64.whl (621.0 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

dustr-1.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (673.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

dustr-1.0.0-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.0-cp311-cp311-macosx_11_0_arm64.whl (605.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dustr-1.0.0-cp311-cp311-macosx_10_12_x86_64.whl (623.1 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

dustr-1.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (673.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

dustr-1.0.0-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.0-cp310-cp310-macosx_11_0_arm64.whl (605.2 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dustr-1.0.0-cp310-cp310-macosx_10_12_x86_64.whl (623.1 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 22385f8fa7229019fb3f4d2301dbbddbca30d26e252b3f2aae7664b31518106c
MD5 2aab190d3ccaf9556849981da2e373fd
BLAKE2b-256 bd190dcba451fc387bf538c6cc169126aeb9802a69bee02c4774d813fd0ffe9e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 383ad9d7d69f6aa535db87573c249155f325e023daed1c5c5d9a572bdc48a5e5
MD5 0eef05f4d8079a6a5e2397393ca41c04
BLAKE2b-256 9620969f27749d7aaede793975635993705584dc41a0279e834ebd4569b89e29

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dd43a272744d2d1c56be055f3f37ccad760bb6fcae5a8f75faffae60b14a9ba5
MD5 4c59299a4752b1c3bf039b924df4b0fa
BLAKE2b-256 3aab4fd493aae5489900b8b1d36ada121792b0260798ce2db1bdbdb25fd0a10f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 64ae70e8d19f45a9de27019899da2723e98e297bd2325c681c1607ea5cc1b4ab
MD5 401e1a31c123834fe67aba3626d28532
BLAKE2b-256 24c12f9a81a7fa1e6fd3b8755fbee46c0c83c081cf0c2ee05f7c9d1ac0e69de2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0c406320a30e996f3f8b852d8c4dd912a6e54ab515754d7d5085bdcd5091deb8
MD5 fed4235a0d2c1e6c1d2f6afbb9189406
BLAKE2b-256 bc49c263b40dbc6692b94158cabe523c2391a25e8c87a6954c2ba2ff915927ea

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2b33c1575bab4b23ef7c5e9f724f7256bc1cba41b74bb83075417f35aa19f0f0
MD5 1c14313ca52a29caf20b2894a69d0644
BLAKE2b-256 ff905f5e22d327f756f6b2f52a2cf4d91b03cd9a380e611cb79f6f2bb9f3d03b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 997cb8ca05f31f507381e57de7f11f50bf096d7dbb6ea9c87d38a3ae7ae0ca8b
MD5 b9c9aee9b9b137aec75468bed51e6b49
BLAKE2b-256 b3adf416a75cb983392ee879d0816270665ee1e93df0ea844a515ebe50f96afc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ff72b67b4cc3694f05e416760f63a535c0944e8213ad413952c6edb272d3cf10
MD5 55a4a373bb951fe82f7d891fe9fb5515
BLAKE2b-256 0847db5310fbbf77b37c9e19a3e8d2de8fa2428c09a47dd6d378fdb69f563cb0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bb7fefbc6286e2bb60ef79f4ecf3e12895b06983e5a0bdb2cabdc3466f045dc4
MD5 7ad1020b7f58b84f25c216e36167bc15
BLAKE2b-256 cb9b6a7f4da1ca622e3323617617c61837d955c3954aeff6ecce1e9e8a8c106f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f0f12cd62974a64a6c654ba9de8d436deafd98369b9a8c953eaf224f51eaf8d9
MD5 830f4cc8d1c87100c2107b51b0a0a4e8
BLAKE2b-256 930dd2b0f76f1c0a9f4fdc5747cd0409eea12b1a0b52ab8c0f0e3e217ae0449b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 38620d8a9fecde0206f5afcfcc95eb1aa780fa12db25cea621c8e592a285746f
MD5 e55e323103e0d7d9541cf14003631b16
BLAKE2b-256 5f6c3330e16c6d8501d2dbd93517594e559dbc0c6af956d878bf7c9ceb959e6f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5392e9dc0cd961f006e7cc896ae19725c35386870232b06253b65c1c0e6afeac
MD5 4f1b102c995116bdbe9993a64d5c6180
BLAKE2b-256 9966b2f60a1197cb1573ad7267546b0d30b5acdec7cb3bed027aeb4fa5e0a1cd

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0394e348ee180858707c6635672a125d490e75d667866e29c5ae122b16516f0f
MD5 fd005ae1f6ceebd1610ba0bb67ebe815
BLAKE2b-256 bdb8fc127184d70b91f5f8ffb7b61b2e6dc364d1d92bcc26384c0ce4fd6fa940

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b93094ef45d7def9ad28baa2b4e206286db03db675d59a37ee3eaba976799135
MD5 1c68d96bd3b80211d6001386391c0a50
BLAKE2b-256 db149b19faeb7f185103918b9de9d9fb7cbbe10d8b052981626aee1b2f7fe851

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 88c3c76c50cb2fc2a7cf15a610c6969a6cef5c2723a65da656db834cb2da772c
MD5 7db71a438935613e5dde11d8eab5d200
BLAKE2b-256 bc72408d68cef179effa167cfb2e8e0ff0885cc7e7a9ca69bda2d7112f8d061b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c9d9751d0ff630957fc9dd9ad49bc31dc89ad7e1fa69e6c6b36d4ac0a9b9984d
MD5 764d42c5cb5c322dcb25d3e52c17ccab
BLAKE2b-256 b09f82ad4944defdf8c1d50c4062710c452570c89a35ad0ab0decf796c9ad9da

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d3c85b1dd625342de37c104801518f659adc36a33e300428e8c09606029cec63
MD5 a8f29da99f0488e12cefe09051c4076d
BLAKE2b-256 ed88254acf499dae313e9e8b659ca7d54a51543d3abe8ef103f642adc7275f6a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5c9b67b04a8e600c8ed3ec4b44c17d4d4af6ce717ad5d62dcccdcc422c8bcae9
MD5 b6ac9be0a3899081f7d4db17ed32f822
BLAKE2b-256 1c5960be8fd20d20474074137b3edfff0745576d4c82f6a21ecaccde9fb807d2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 54971b8a755b29deab5678df42632db97d779842a0d6dfa00039a969e828233d
MD5 9c3acc5a6015d20522eb3a64813603b2
BLAKE2b-256 27747db0a3dae387d7e28cbd67a54176ea75640ad7b1fe5d5ca717c90a29fb71

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for dustr-1.0.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f8c76f356340baf1b11075ce3f508e26cc397a36d9fc9a25700619483e02f2e1
MD5 8e898e8f16168896e6d6a124a0fb1c1f
BLAKE2b-256 015bd0cc45864b84ab61dce7000e2d43d71596647f028dc82990f119be33ba4f

See more details on using hashes here.

Provenance

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