Example: $ cvs commit -m checkpoint cvs commit: Examining . Checking in tkextractvis; /var/lib/cvs/perl/tkextractvis/tkextractvis,v <-- tkextractvis cvs [commit aborted]: Failed to create temporary file: Permission denied strace shows that cvs is attempting to open the temporary file in the directory in which it was configured and built: open("/var/tmp/portage/cvs-1.11.5/temp/cvs6ZSQcd", O_RDWR|O_CREAT|O_EXCL, 0600) = -1 EACCES (Permission denied)
Hi, cvs-1.11.5 has a configure option '--with-tmpdir'. Adding it to econf will fix the problem. econf --with-tmpdir=/tmp || die thanks,
*** Bug 14324 has been marked as a duplicate of this bug. ***
I committed a new ebuild that sets tmpdir to /tmp, but this directory may not be the best choice for all people. Perhaps there is a better solution?
The cvs server should probably continue using the same temporary directory as in previous versions, unless there's an easy-to-maintain customization method that could be added to the ebuild. Looking at the cvs manual, it appears that the server gets the temp directory from the environment variables: TMPDIR TMP TEMP No /etc/cvsrc? That's a shame. and the client gets the temp directory from either the command line, environment, or ~/.cvsrc? Could you drop a NNcvs file in /etc/env.d to allow customization of the temporary directory for the server?
Probably setting a sane default (/tmp) at compile time is a good idea anyway. The /var/tmp/portage location is bad in any case. Of course setting TMP is allways a good idea anyway. (Of course you are free to set it yourself)
-r1 fixed this bug.