pkg/59879: gnats: mkdb fails with: chown: not found, and: gnatsd.user_access: No such file or directory

[email protected]
Newsgroups gmane.os.netbsd.devel.pkgsrc.bugs
Message-ID <[email protected]>
>Number:         59879
>Category:       pkg
>Synopsis:       gnats: mkdb fails with: chown: not found, and: gnatsd.user_access: No such file or directory
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jan 02 17:55:00 +0000 2026
>Originator:     Henryk Paluch
>Release:        current 20260101060018Z, pkgsrc head 20260101
>Organization:
N/A
>Environment:
NetBSD nbsd-curr-gnats.example.com 11.99.4 NetBSD 11.99.4 (GENERIC) #0: Thu Jan  1 06:00:18 UTC 2026  [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC amd64
>Description:
Tested gnats version: gnats-4.2.0nb5

After pkgsrc installation of gnats I'm advised to run mkdb, but it fails with two errors:

root# su - gnats /usr/pkg/libexec/gnats/mkdb default

/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
Copying default files from /usr/pkg/share/gnats/defaults
/usr/pkg/libexec/gnats/mkdb: docp: chown: not found
/usr/pkg/libexec/gnats/mkdb: docp: chown: not found
/usr/pkg/libexec/gnats/mkdb: docp: chown: not found
cp: /usr/pkg/share/gnats/defaults/gnatsd.user_access: No such file or directory
Can't copy file /usr/pkg/share/gnats/defaults/gnatsd.user_access to /var/db/gnats/gnatsdb/gnats-adm/gnatsd.user_access, exiting


>How-To-Repeat:
Install gnats either from binary package or source. I used source:

cd ~/pkgsrc/databases/gnats
make install

Install notice:                                                                                                         
===========================================================================
$NetBSD: MESSAGE,v 1.7 2005/08/27 22:24:02 recht Exp $
                                                                                                                        
See http://www.gnu.org/software/gnats/ for the official web page
and don't forget to run /usr/pkg/libexec/gnats/mkdb default                                                             
as user gnats to create the default database.                                                                                                         
Add the following line to /etc/inetd.conf to activate GNATS:   
    support stream tcp nowait gnats /usr/pkg/libexec/gnats/gnatsd gnatsd
                                                            
Add something like this into the crontab to process incoming bug reports:
    */5 * * * * /usr/pkg/libexec/gnats/queue-pr -r      
                              
To accept PRs by mail you'll need some new mail aliases too, e.g.
        gnats-admin:    postmaster
        bugs:           "| /usr/pkg/libexec/gnats/queue-pr -q"
        query-pr:       "| /usr/pkg/libexec/gnats/mail-query"

===========================================================================


Run command below to create default database:

root# su - gnats /usr/pkg/libexec/gnats/mkdb default

/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
/usr/pkg/libexec/gnats/mkdb: domkdir: chown: not found
Copying default files from /usr/pkg/share/gnats/defaults
/usr/pkg/libexec/gnats/mkdb: docp: chown: not found
/usr/pkg/libexec/gnats/mkdb: docp: chown: not found
/usr/pkg/libexec/gnats/mkdb: docp: chown: not found
cp: /usr/pkg/share/gnats/defaults/gnatsd.user_access: No such file or directory
Can't copy file /usr/pkg/share/gnats/defaults/gnatsd.user_access to /var/db/gnats/gnatsdb/gnats-adm/gnatsd.user_access, exiting


>Fix:
First error "chown: not found" is caused by custom PATH set in mkdb that does not include "/sbin" where is "chmod" located. Proposed fix:

--- usr/pkg/libexec/gnats/mkdb.old      2026-01-02 17:36:35.600476596 +0000
+++ usr/pkg/libexec/gnats/mkdb  2026-01-02 17:42:59.172205964 +0000
@@ -22,7 +22,7 @@
 # along with GNU GNATS; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-PATH="/usr/pkg/libexec/gnats:/usr/pkg/sbin:/usr/pkg/bin:/bin:/usr/bin:${PATH}"
+PATH="/usr/pkg/libexec/gnats:/usr/pkg/sbin:/usr/pkg/bin:/sbin:/bin:/usr/bin:${PATH}"
 export PATH
 
 GNATS_USER=gnats

To fix later bug: "cp: /usr/pkg/share/gnats/defaults/gnatsd.user_access: No such file or directory" we need to copy needed files from example folder to target folder (so it should be enough to add that step to installation message):

cp /usr/pkg/share/examples/gnats/*_access /usr/pkg/share/gnats/defaults/

And rerun as root commands below:

rm -rf /var/db/gnats/gnatsdb # required to remove half-finished remains of gnatsdb
su - gnats /usr/pkg/libexec/gnats/mkdb default

Copying default files from /usr/pkg/share/gnats/defaults

(finishes without error)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.