meowsum.adoc 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. = meowsum
  2. apiote <me@apiote.xyz>
  3. v1.0.0 2022-06-17
  4. :toc:
  5. == Name
  6. meowsum — print or verify Meow hash checksums
  7. == Description
  8. The meowsum utility calculates and prints or verifies https://mollyrocket.com/meowhash[Meow hash] checksums.
  9. The output format is consistent with POSIX cksum;
  10. meowsum prints the checksum, number of bytes, and file path to standard output.
  11. The meowsum is an alternative for such utilities as `cksum`, `md5sum`, `sha512sum`.
  12. == Usage
  13. meowsum -h
  14. meowsum [-ceq] FILE...
  15. meowsum [-s size] FILE...
  16. -h show this help and exit
  17. -c read sums from the FILEs and check them
  18. -s size set hash size; size can be 32, 64, 128 bits;
  19. the default is 128
  20. The following options are useful only when verifying checksums:
  21. -q only return status; do not print OK, ERH, ERS, ERM
  22. -e fail for missing files
  23. == Building
  24. meowsum uses mk for building but it can also be built manually.
  25. To build meowsum, a C compiler that supports C17 is needed.
  26. By default, it’s clang, but it can be changed using the `CC` variable.
  27. Other compilers, however, have not been tested.
  28. To generate documentation, scdoc is needed.
  29. To compile only meowsum, run `mk meowsum`.
  30. To generate only the manpage, run `mk meowsum.1`.
  31. To build everything at once, run just `mk`.
  32. == Installation
  33. meowsum can be installed using mk, but also manually.
  34. To install using mk, run `mk install` as root.
  35. This will copy the binary to `$PREFIX/bin/`, which is `/usr/local/bin/` by default, and the manpage to `/usr/share/man/man1/`.
  36. == Future
  37. meowsum might be rewritten to another language, but it will definitely not be Rust.
  38. It is, however, feature complete.
  39. Feature requests and patches with new features will be dropped.
  40. == Contributing
  41. This project is finished; no more functions will be implemented; all feature requests will be ignored.
  42. This project uses The Code of Merit, which is available as CODE_OF_CONDUCT file.
  43. Fixes and patches are welcome; please send them to `meowsum@git.apiote.xyz` using `git send-email`. They must include a sign-off to certify agreement to https://developercertificate.org/[Developer Certificate of Origin].
  44. All communication—questions, bugs, etc.—should go through the mailing list available at `meowsum@git.apiote.xyz`. Note that all communication will be made public at https://asgard.apiote.xyz/.
  45. == Mirrors
  46. The canonical repository for this project is https://git.apiote.xyz/meowsum.git it’s mirrored at https://notabug.org/apiote/meowsum
  47. Mirrors exist solely for the sake of the code and any additional functions provided by third-party services (including but not limited to issues and pull requests) will not be used and will be ignored.
  48. == Authors
  49. Maintained by apiote <me@apiote.xyz>.
  50. Meowhash created by https://github.com/cmuratori/meow_hash[mollyrocket], Zlib license.
  51. == Copyright
  52. Copyright (C) 2021 apiote
  53. 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.
  54. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
  55. without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  56. See the GNU General Public License for more details.
  57. You should have received a copy of the GNU General Public License along with this program.
  58. If not, see https://www.gnu.org/licenses/gpl.html