Author: Adam <git@apiote.tk>
update README
README.asciidoc | 83 +++++++++++++++++++++++++++++++++++---------------
diff --git a/README.asciidoc b/README.asciidoc index fe08d5d287c88aaa3d264d309f0d019b609f76cf..270f97bda048f533b6e5b9119688f37bd725dd41 100644 --- a/README.asciidoc +++ b/README.asciidoc @@ -2,44 +2,77 @@ = meowsum == NAME -meowsum — print or check Meow hash checksums +meowsum — print or verify Meow hash checksums + +== DESCRIPTION + +The meowsum utility calculates and prints or verifies https://mollyrocket.com/meowhash[Meow hash] checksums. +The output format is consistent with POSIX cksum; +meowsum prints the checksum, number of bytes, and file path to standard output. + +The meowsum is an alternative for such utilities as `cksum`, `md5sum`, `sha512sum`. -== SYNOPSIS +== USAGE -meowsum [-ceq] [FILE]... + meowsum -h + meowsum [-ceq] FILE... + meowsum [-s size] FILE... -meowsum [-s size] [FILE]... + -h show this help and exit + -c read sums from the FILEs and check them + -s size set hash size; size can be 32, 64, 128 bits; + the default is 128 + The following options are useful only when verifying checksums: + -q only return status; do not print OK, ERH, ERS, ERM + -e fail for missing files + +== BUILDING + +meowsum uses mk for building but it can also be built manually. + +To build meowsum, a C compiler that supports C17 is needed. +By default, it’s clang, but it can be changed using the `CC` variable. +Other compilers, however, have not been tested. + +To generate documentation, scdoc is needed. + +To compile only meowsum, run `mk meowsum`. +To generate only the manpage, run `mk meowsum.1`. +To build everything at once, run just `mk`. + +== INSTALLATION + +meowsum can be installed using mk, but also manually. -== DESCRIPTION +To install using mk, run `mk install` as root. +This will copy the binary to `$PREFIX/bin/`, which is `/usr/local/bin/` by default, and the manpage to `/usr/share/man/man1/`. -The meowsum utility calculates and prints or checks Meow hash checksums. -The output format is consistent with POSIX cksum; meowsum prints the checksum, -number of bytes, and file path to standard output. +== FUTURE -When FILE is -, meowsum reads standard input. +meowsum might be rewritten to another language, but it will definitely not be Rust. +It is, however, feature complete. +Feature requests and patches with new features will be dropped. -== OPTIONS +== CONTRIBUTING - -c read sums from the FILEs and check them - -s size set hash size; size can be 32, 64, 128 bits; - the default is 128 - - The following options are useful only when verifying checksums: - -q only return status; do not print OK, ERH, ERS, ERM - -e fail for missing files +Bug fixes are welcome and can be submitted by email to git+meowsum@apiote.tk. +Mind that all mail sent to that address is or will be public in https://asgard.apiote.tk/mimir[apiote’s mail archive]. == AUTHORS -Maintained by Adam Pioterek <me@apiote.tk>. Up-to-date sources can be found at -https://git.apiote.tk/meowsum.git and bugs/patches can be submitted by email to -git+meowsum@apiote.tk. +Maintained by Adam Pioterek <me@apiote.tk>. + +Meowhash created by https://github.com/cmuratori/meow_hash[mollyrocket], Zlib license. == COPYRIGHT -Copyright © 2021 Adam Pioterek. License https://gnu.org/licenses/gpl.html[GPLv3+: GNU GPL version 3 or later]. -This is free software: you are free to change and redistribute it. -There is NO WARRANTY, to the extent permitted by law. +Copyright (C) 2021 Adam Pioterek -== SEE ALSO +This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. -https://github.com/cmuratori/meow_hash[Source code of Meow hash] +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along with this program. +If not, see https://www.gnu.org/licenses/gpl.html