pkgbase is broken because of Kerberos (was: Re: Why is my base tree not updating?)

From: Philip Paeps <philip_at_freebsd.org>
Date: Fri, 08 Aug 2025 10:12:31 UTC
On 2025-08-06 17:46:56 (+0800), Dan Mahoney (Ports) wrote:
>  I'm running pkgbase on 15-CURRENT AMD64 I'm using the repo that 
> claims (per https://wiki.freebsd.org/PkgBase) there are builds twice a 
> day:
>
> https://pkg.freebsd.org/${ABI}/base_latest
>
>  And yet, when I try to update, I'm often told that I'm up to date, 
> even after days or weeks, despite seeing changes in the git tree.

I found some time to look into this today.

pkgbase builds have been broken since the Kerberos updates hit the tree.

All builds on main for all architectures fail with:

--- all_subdir_usr.bin/telnet ---
ld: error: undefined symbol: telnet_net_write
>>> referenced by encrypt.c:895 
>>> (/home/pkgbuild/worktrees/main/contrib/telnet/libtelnet/encrypt.c:895)
>>>               encrypt.pieo:(EncryptStopInput) in archive 
>>> /home/pkgbuild/obj/home/pkgbuild/worktrees/main/amd64.amd64/lib/libtelnet/libtelnet_pie.a
>>> referenced by encrypt.c:857 
>>> (/home/pkgbuild/worktrees/main/contrib/telnet/libtelnet/encrypt.c:857)
>>>               encrypt.pieo:(EncryptStopOutput) in archive 
>>> /home/pkgbuild/obj/home/pkgbuild/worktrees/main/amd64.amd64/lib/libtelnet/libtelnet_pie.a
>>> referenced by encrypt.c:885 
>>> (/home/pkgbuild/worktrees/main/contrib/telnet/libtelnet/encrypt.c:885)
>>>               encrypt.pieo:(EncryptStartInput) in archive 
>>> /home/pkgbuild/obj/home/pkgbuild/worktrees/main/amd64.amd64/lib/libtelnet/libtelnet_pie.a
>>> referenced 17 more times
--- all_subdir_rescue ---
--- realpath.lo ---
--- all_subdir_usr.bin ---
cc: error: linker command failed with exit code 1 (use -v to see 
invocation)

I tried to upgrade the pkgbase builder to a later version of main (our 
cluster buildworld does work) and that made matters much worse:

philip@costaud1.chi:~ % su
Segmentation fault
philip@costaud1.chi:~ % ksu
ksu: Operation not permitted while selecting the best principal

(Our cluster su uses pam_krb5.so.)

I logged in out of band and kicked off a build for giggles: no dice.  
Same telnet linker error as above.

So two things need to happen for any progress to be made:

- Kerberized su / pam_krb5.so su need to work.
- The pkgbase builds need to be fixed in a post-Kerberos-update world.

I am happy to test commits but I do not have the time to debug this 
further.

I have restarted the pkgbase and pkg-kmods builds on this builder so 
pkgbase builds for stable/14, releng/14.2 and releng/14.3 as well as the 
kmods_latest will continue to update on the previous schedule.

main will continue to be broken until this gets fixed.

Note that we cannot upgrade _ANY_ machines in the cluster until we have 
a working su.

Philip