The current handling for fetch-restricted packages is really confusing. I presume it considers the fetch restriction unsatisfied because of checksum failure. It behaves like the file never existed, and almost silently renames it when merge is confirmed. What it should do is: 1. Verbosely tell that the provided distfile is not acceptable because of hash mismatch. 2. Do not automatically rename it with 'Refetching' message given that it obviously can't refetch it. --- These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N F ~] app-office/moneydance-2019.2::gentoo 131 256 KiB Total: 1 package (1 new), Size of downloads: 131 256 KiB Fetch Restriction: 1 package (1 unsatisfied) Fetch instructions for app-office/moneydance-2019.2: * Adjusting permissions for FEATURES=userpriv: '/tmp/tmpwm5jz4qc/portage/.distcc' * Adjusting permissions for FEATURES=userpriv: '/tmp/tmpwm5jz4qc/portage/.distcc/lock' * Adjusting permissions for FEATURES=userpriv: '/tmp/tmpwm5jz4qc/portage/.distcc/state' * Please download moneydance-2019.2-amd64.tar.gz from * https://infinitekind.com/stabledl/2019/Moneydance_linux_amd64.tar.gz * and place it in your DISTDIR directory. Would you like to merge these packages? [Yes/No] >>> Verifying ebuild manifests >>> Emerging (1 of 1) app-office/moneydance-2019.2::gentoo Refetching... File renamed to '/tmp/dist/moneydance-2019.2-amd64.tar.gz._checksum_failure_.9_fyf0f4' !!! app-office/moneydance-2019.2 has fetch restriction turned on. !!! This probably means that this ebuild's files must be downloaded !!! manually. See the comments in the ebuild for more information. * Fetch failed for 'app-office/moneydance-2019.2', Log file: * '/var/log/portage/app-office:moneydance-2019.2:20190706-063849.log' * Please download moneydance-2019.2-amd64.tar.gz from * https://infinitekind.com/stabledl/2019/Moneydance_linux_amd64.tar.gz * and place it in your DISTDIR directory. >>> Failed to emerge app-office/moneydance-2019.2, Log file: