Menu

Tree [0c9e87] default tip /
 History

Read Only access


File Date Author Commit
 man 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 mkc_config 2 days ago Brad Lanam Brad Lanam [636d2a] mkconfig pre-update; test updates
 mkconfig 1 day ago Brad Lanam Brad Lanam [68320d] mkconfig 2.6.10 update (preliminary)
 po 2025-01-26 Brad Lanam Brad Lanam [602ace] wip: localization
 tests 1 day ago Brad Lanam Brad Lanam [63e826] test updates/fixes
 utils 1 day ago Brad Lanam Brad Lanam [0c9e87] windows fixes
 web 2 days ago Brad Lanam Brad Lanam [636d2a] mkconfig pre-update; test updates
 wiki 1 day ago Brad Lanam Brad Lanam [0c9e87] windows fixes
 .hgignore 1 day ago Brad Lanam Brad Lanam [63e826] test updates/fixes
 .hgtags 2025-03-10 Brad Lanam Brad Lanam [8a6620] Added tag 6.0.0 for changeset 24af170f12ca
 CMakeLists.txt 1 day ago Brad Lanam Brad Lanam [0c9e87] windows fixes
 LICENSE.txt 2025-01-08 Brad Lanam Brad Lanam [8b830a] wip: re-work: cleanup
 Makefile 2 days ago Brad Lanam Brad Lanam [636d2a] mkconfig pre-update; test updates
 README.md 2 days ago Brad Lanam Brad Lanam [636d2a] mkconfig pre-update; test updates
 VERSION.txt 1 day ago Brad Lanam Brad Lanam [63e826] test updates/fixes
 config.h.in 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 di.c 2025-03-10 Brad Lanam Brad Lanam [24af17] fix crash during processing, abi change
 di.h 2025-03-10 Brad Lanam Brad Lanam [24af17] fix crash during processing, abi change
 di.pc.in 2025-02-23 Brad Lanam Brad Lanam [b29605] build: cleanup; build: netbsd
 didiskutil.c 2025-03-04 Brad Lanam Brad Lanam [46c48b] cleanup
 digetentries.c 2025-02-02 Brad Lanam Brad Lanam [b507c3] wip: updates for windows
 digetinfo.c 1 day ago Brad Lanam Brad Lanam [0c9e87] windows fixes
 diinternal.h 2 days ago Brad Lanam Brad Lanam [c978a5] fix memleak; adjust structs to turn off extra-p...
 dilib.c 1 day ago Brad Lanam Brad Lanam [0c9e87] windows fixes
 dimath.h 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 dimath_def.h 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 dimath_gmp.h 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 dimath_internal.h 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 dimath_mpdec.h 2 days ago Brad Lanam Brad Lanam [636d2a] mkconfig pre-update; test updates
 dimath_tommath.h 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 dimathtest.c 3 days ago Brad Lanam Brad Lanam [41c2ed] mpdecimal; re-arrange dimath.h draft a
 dimntopt.h 2025-01-16 Brad Lanam Brad Lanam [94867b] wip: more cleanup
 dioptions.c 2 days ago Brad Lanam Brad Lanam [710edb] getoptn.c: no strdup, it is pointing at constan...
 dioptions.h 2025-03-04 Brad Lanam Brad Lanam [e973d5] di_strtok; fix parselist
 diquota.c 2025-02-09 Brad Lanam Brad Lanam [aff2b2] arch build; fix pure cmake on macos
 diquota.h 2025-01-27 Brad Lanam Brad Lanam [abe96c] wip: various fixes; sco openserver
 distrutils.c 2025-03-04 Brad Lanam Brad Lanam [e973d5] di_strtok; fix parselist
 distrutils.h 2025-03-04 Brad Lanam Brad Lanam [e973d5] di_strtok; fix parselist
 disystem.h 2025-02-03 Brad Lanam Brad Lanam [3192c6] wip: more testing; solaris 10
 dizone.c 2025-01-28 Brad Lanam Brad Lanam [0432f9] wip: solaris gcc,clang working
 dizone.h 2 days ago Brad Lanam Brad Lanam [c978a5] fix memleak; adjust structs to turn off extra-p...
 getoptn.c 2 days ago Brad Lanam Brad Lanam [710edb] getoptn.c: no strdup, it is pointing at constan...
 getoptn.h 2 days ago Brad Lanam Brad Lanam [c978a5] fix memleak; adjust structs to turn off extra-p...

Read Me

di - disk information utility

SourceForge Project Page
Website
Change Log

CONTENTS

  • Important Notes: Version 5/6
  • Description
  • Documentation
  • Installation
  • Requirements
  • Porting Help
  • Acknowledgements
  • Copyright

IMPORTANT NOTES: VERSION 5/6 (2025-3-10)

Version 5's code base has changed. The build process has changed and
optionally uses cmake (3.13+). The display processing is entirely new code.
Version 6 had an ABI change to fix a crash.

Version 5/6 installs a shared library that can be used to get the disk
space or percentages.

DESCRIPTION

'di' is a disk information utility, displaying everything
(and more) that your 'df' command does. It features the
ability to display your disk usage in whatever format you
prefer. It is designed to be highly portable. Great for
heterogenous networks.

DOCUMENTATION

wiki


Change Log


Test Results

INSTALLATION

To build:

make -e PREFIX=$HOME/local
make -e PREFIX=$HOME/local install

The build will use cmake if it is available and recent enough (3.13),
otherwise the mkconfig configuration tool will be used.

To use cmake in a stand-alone fashion (as of version 5.0.4):

cmake -DCMAKE_INSTALL_PREFIX=$HOME/local -S . -B build
cmake --build build
cmake --install build

To select one of the multi-precision libraries when using cmake:

DI_USE_MATH=DI_MPDECIMAL \
    cmake -DCMAKE_INSTALL_PREFIX=$HOME/local -S . -B build

Where DI_USE_MATH can be set to one of DI_GMP, DI_MPDECIMAL,
DI_TOMMATH or DI_INTERNAL.

If the GMP, mpdecimal or libtommath library is found, it will be used,
otherwise the numerics will be handled using standard C data types
(long double, double, etc.).

To turn off the use of the multi-precision libraries;

make -e PREFIX=$HOME/local DI_USE_MATH=DI_INTERNAL

Long doubles are quite capable, there's nothing wrong with
building it this way (as of 2025).

To force GMP:

make -e PREFIX=$HOME/local DI_USE_MATH=DI_GMP

To force MPDecimal:

make -e PREFIX=$HOME/local DI_USE_MATH=DI_MPDECIMAL

To force libtommath:

make -e PREFIX=$HOME/local DI_USE_MATH=DI_TOMMATH

To force the use of mkconfig:

make -e PREFIX=$HOME/local mkc-all
make -e PREFIX=$HOME/local mkc-install

REQUIREMENTS

  • cmake build
    • make
    • cmake (3.13+)
    • pkg-config
    • msgfmt
    • C compiler
    • sed grep tr test /bin/sh
    • awk (gawk/nawk/awk)
  • mkconfig build

    • make
    • pkg-config
    • msgfmt
    • C compiler
    • bourne/ksh/bash shell
    • awk (gawk/nawk/awk)
    • cat chmod ln mkdir mv rm sed test expr grep sort
  • Required Libraries:

    • Linux: tirpc (nfs quotas)
    • MP Math (optional): gmp or libmpdec or libtommath

BUG REPORTS

I need to know what operating system and what version of
operating system you are on. Also which compiler, and the version
of the compiler.

For build issues, capture the output from make, and the files
listed below.

For runtime issues, I want to see the output from 'di -A -a -X 5'
and the output from your standard df command (as verbose as possible),

Files to include in your report:

  • cmake:
    • build/config.h
    • build/CMakeOutput.log
    • build/CMakeError.log
    • build/CMakeFiles/CMakeConfigureLog.yaml
  • mkconfig:
    • config.h
    • di.env
    • di.reqlibs
    • mkc_files/mkconfig.log
    • mkc_files/mkconfig_env.log
    • mkc_files/mkc_compile.log

Open a ticket at SourceForge
Or e-mail : brad.lanam.di / gmail.com

PORTING HELP

I use my own set of virtual machines, the gcc compile farm, and
polarhome (which is now limited, and will probably die at some
point).

If you have a computer on the internet with a less common or older
operating system, I could use access for portability testing.

I need access to HP-UX.

ACKNOWLEDGEMENTS

And for their comments/source/manual pages and/or bug fixes, thanks!

J.J.Bailey
Karl Vogel [pyramid]
Bryan Costales
Mark Neale
Pat Myrto [sunOS filesystem type stuff]
Henri Karrenbeld [sgi]
Peter Bray
George M. Sipe [manual page]
Jeffrey Mogul [ultrix, osf/1, manual page, new format options]
Th. Bullinger [help usage]
Seth Theriault [next, tru64]
Stephen J. Walick [SCO]
Gerald Rinske [sgi]
Mike Grupenhoff [linux]
R.K.Lloyd [hpux]
William Gibbs [xenix]
Randy Thompson [sequent]
Erik O'Shaughnessy [aix]
Bill Davidsen [linux, SCO, etc., new format options]
Fred Smith [coherent 4.2.05]
Andrey Blochintsev [bsdi]
Brian Ginsbach [netbsd, irix, unicos]

et. al.

Copyright 1994-2025 Brad Lanam, Pleasant Hill, CA, USA
brad.lanam.di / gmail.com

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.