Commit Graph

8 Commits

Author SHA1 Message Date
99f2d95aa1 Remove some debugging code
Removed some output that previously appeared when dirdedupe was
    run without the --execute flag. This output was intended to help
    debug and verify atime/mtime preservation, and is no longer needed.
2023-10-25 12:36:22 -04:00
5d677683fd Added SPDX code to source files, LICENSE file
Make licensing clearer and (hopefully?) help GitHub detect the
    appropriate license.
2023-10-24 19:50:46 -04:00
717c700fac Fix syntax error caused by extra spacing
Bash variable assignment requires the = operator to immediately
    follow the variable name, otherwise it will result in a syntax
    error. This commit fixes a syntax error of that nature that would
    prevent the preservation of atime and mtime of the enclosing
    directory of a file that was linked to an identical file.
2023-10-23 12:00:43 -04:00
8c2384acba Remove test code comments, fix indents
Fixed some indents and enabled some commented-out code.
2023-10-23 00:49:41 -04:00
063298dd46 Enhance UI, preserve timestamps
Removed my oh-so-clever "shadowdir" and "shadowfile" concepts for
    the directory to be examined for potential deduplication. Instead
    we call them subject directories and subject files, because they
    are subject to our process.

    Now creates a temporary file, removed on exit, as our temporary
    access and modification time holder. When replacing a file with a
    hard link, we first copy the atime/mtime of its directory to the
    temporary file. THEN we perform the link. After the link, we
    restore the original atime/mtime of the enclosing directory from
    the temporary file. This is useful for backups, where we do not
    want the directories to have newer timestamps (timestamps matching
    the date/time that we run deduplication, because creating the link
    counts as a modification of the directory).
2023-10-23 00:31:34 -04:00
efdf9717db Don't re-link already linked files, UI enhanced
While creating hard links, check if they're already linked first.
    This saves SUBSTANTIAL time in Time Machine directories where many
    files are already hard links.

    Also, be clearer when running about what exactly it is we're doing
    with each file.
2023-10-18 18:29:20 -04:00
74a98e499e README improvements
Modified the README to include installation instructions
and synchronized command line and README usage message.
2022-07-19 12:25:44 -04:00
636cd274db Initial Commit
This initial commit includes a directory deduplicator (for thinning out
Time Machine snapshots) and an automatic tool to detect and apply the
necessary metadata for a successful tmutil inherit (needed when you
want to use a backup drive with a new computer, for example).
2022-07-19 03:32:37 -04:00