Missing package: ldns-utils

Wanted to install ldns-utils to get drill, but the package is not found when searching with dnf.

$ dnf se ldns*
# ...
ldns.i686 : Low-level DNS(SEC) library with API
ldns.x86_64 : Low-level DNS(SEC) library with API
ldns-devel.i686 : Development package that includes the ldns header files
ldns-devel.x86_64 : Development package that includes the ldns header files

Anyway, the spec-file says that drill is in ldns-utils.

Any ideas?

· Eric

It's in the crb for rocky 9.x

(1017 / 19) [~]$: dnf list ldns*
Last metadata expiration check: 0:59:08 ago on Sat 11 Feb 2023 05:59:21 AM MST.
Installed Packages
ldns.x86_64                                     1.7.1-11.el9                               @appstream
Available Packages
ldns.i686                                       1.7.1-11.el9                               appstream
ldns-devel.x86_64                               1.7.1-11.el9                               crb
ldns-doc.noarch                                 1.7.1-11.el9                               crb
ldns-utils.x86_64                               1.7.1-11.el9                               crb

Probably a better way for searching is to use pkgs.org - since dnf will only generally provide results for repositories that are enabled. As above, it’s in crb (what used to be powertools in Rocky8), had this repo been enabled, it would have appeared in your search.

So if it doesn’t appear in a dnf search, using pkgs.org will then show you what repository it belongs to, so that it can be enabled appropriately and then installed.

Thanks. I forgot to mention I’m on rl8, but great to see that they’re all in rl9. (Have another computer that will get rl9).


Thanks. Yes, powertools is enbabled - and ldns-devel is in it.

$ dnf repolist --enabled | grep power && dnf list ldns*
powertools                Rocky Linux 8 - PowerTools
Last metadata // ... ...
Available Packages
ldns.i686           1.7.0-21.el8    appstream 
ldns.x86_64         1.7.0-21.el8    appstream 
ldns-devel.i686     1.7.0-21.el8    powertools
ldns-devel.x86_64   1.7.0-21.el8    powertools

So, both ldns-{doc,utils} seems to be missing.

Looks like there is a version, in a 3rd-party repo: https://pkgs.org/search/?q=ldns-utils from the release before (1.7.0-20).

Maybe I’ll try to build it locally using the rl8 spec-file, or maybe use the one from rl9 to get a slightly newer version. Or, maybe it’s better to try to update to latest (1.8.3), update all the patches, etc. Last changelog in the spec is 2019, so maybe an update would be great anyway.


1 Like

Ah seems not available for Rocky8 weird as Rocky9 has it. But yeah it can be built easily enough with mock using a src rpm from Fedora perhaps.

Thanks! :+1: Well, that explains it - though the explaination the gave: (“… ldns-utils was omitted because of the existing alternatives for most of the utilities in the package …”) wasn’t a good one. Sounds more like an excuse, than a reason IMO.

Yes, it is. I will prob do that, but first I want to try to upgrade to 1.8.3. I’ve fixed/updated/edited all the patches. Most of the patch-fixes are now already implemented - like all the stuff that was sent in from NLnets are already there. So, it’s down to one patch-file now, intead of 4.

It builds fine, but there’s an error about a file/folder that can’t be created. I’m guessing this is in the install/move the files section.

/usr/bin/install -p -m 644 packaging/libldns.pc /home/<user>/.rpm/rpmbuild/ldns/BUILDROOT/ldns-1.8.3-1.el8.x86_64/usr/lib64/pkgconfig/ldns.pc
/usr/bin/install: cannot create regular file '/home/<user>/.rpm/rpmbuild/ldns/BUILDROOT/ldns-1.8.3-1.el8.x86_64/usr/lib64/pkgconfig/ldns.pc': No such file or directory
make: *** [Makefile:400: install-pc] Error 1

The spec file have this line a bit down in the script:

# install pkg-config file
install -D -m644 packaging/libldns.pc %{buildroot}%{_libdir}/pkgconfig/ldns.pc

Not sure if that is happening before or after the error. Found this PR: #123, where they’ve both changed and reverted a change related that file. Maybe one could add something to that (Makefile.in) file instead, to make sure the folder is created first? (When it breaks, /usr/lib64/ is in the BUILDROOT, but not /usr/lib64/pkgconfig/.)

If that’s the only problem it would be great to get a more recent version.

You can get it from koji:

1 Like

Thank you! :+1: I havn’t had time to sit with it for a few days, but I’ll try to finish that build first - at least see if I can get passed that error. But, that’s really good to now. I’ll head over there and download it in case… And also to see what other goodies are stored over there. :slight_smile:

Is it a repo, or just a file directory? I know there’s a koji over @ Fedora. Didn’t know RL had one as well.

Koji is the build system that Rocky Linux uses for 8 (we use a different one for Rocky Linux 9). During the build process koji saves all the packages that are built, but in the case of ldns (and others) not all of the resulting binary packages are actually placed in repos. This is based on metadata provided by Red Hat. The “orphaned” packages are always kept in the koji system, though.

If you file a bug report at https://bugs.rockylinux.org/ then there’s a very good chance that ldns-utils can be included in a side repo in the future. If so can you please link the bug ticket here?

Thanks. That’s good to know. :crossed_fingers:


Like a feat. reqeust? Yes, I guess I can do that later. Maybe the plus-repo could be good for those kind of orphaned packages (as in: install ldns, “plus” the utils).

Usually these types of packages go in devel, but this one may be more appropriate in extras. At the end of the day they can determine which repo is best suited for it.

Yes, that of course. Any repo would be fine.