Home > checkcopy

checkcopy

Checkcopy is a project mainly written in C and C++, based on the GPL-2.0 license.

============================================================================== checkcopy

Version 0.5, released 2009-11-XX http://da.mcbf.net/wiki/Checkcopy

Checkcopy is a copy program which computes checksums on the fly to verify them and/or write them out to disk. It can also be used to just verify checksums.

This program will copy one or more files / directories to a destination, and compute its checksum on the fly. If checksum files are getting copied over, their contents are parsed and compared to the computed checksums. If no checksum was found for a file, then the computed one is written to disk. Checkcopy uses GIO, and as such operates on local and remote files / destinations.

============================================================================== Known Issues

W A R N I N G: Similarly to how `cp' works, checkcopy currently overwrites destination files without warning!

============================================================================== Usage

  1. The source files / directories have to be specified on the command line. So running just ``checkcopy'' is not going to get you anywhere. See TODO.

  2. The destination is can be predetermined, preselected, or simply selected. a. If a destination was specified by the -d switch, then the user will not get asked for one. b. If a default destination was specified by the -D switch, then a file chooser will get displayed, starting at the specified URI. c. Otherwise, a file chooser will be shown with the current directory as the starting location.

If you would like to just verify the files, and not copy them, then specify ``-d verify://'' on the command line.

This should allow easy bindings in file managers.

Before the files are being copied, they are scanned for checksum files. Currently only files ending in .md5, .sha, .sha1 and CHECKSUM are detected as containing checksums. Its contents are then parsed, and remembered.

While the files are copied, the checksum is created. If a checksum is on file, it will get compared. If no checksum was previously discovered, the computed one is written to disk as /foo/bar/${DESTINATION}/${DESTINATION}.CHECKSUM (currently always as sha1).

============================================================================== Requirements

checkcopy requires the following libraries to be installed:

  • gtk+ toolkit: Checkcopy was tested with gtk 2.18.3, but gtk 2.16 would probably suffice.
  • gio: All file operations are based on GIO functions.
  • libxfce4util: Required for some utility functions.

============================================================================== Feedback

Please check the TODO file for the current plan for checkcopy.

All comments, feedback, and bug reports are very welcome! Please email the author at [email protected] .

Previous:Password-Demo