For libnss-db, we have a reasonably straightforward solution: use the code in glibc that was created >10 years ago to address this very licensing issue.
I have proposed an MR in glibc to create a BerkeleyDB-free package providing `libnss_db.so.2` (`libc6-libnss-db`): https://salsa.debian.org/glibc-team/glibc/-/merge_requests/38 I also opened bug #1132249 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1132249 to discuss, before I found this bug. I marked the proposed package as Conflicts: libnss-db Replaces: libnss-db Provides: libnss-db So that either can be installed, but not both. I have also made the db dir `/var/db` (the path upstream uses), mostly so that it is distinct from `/var/lib/misc` since the db format changes. This provides a way for system administrators to pre-populate the DB files if they wish, making a managed transition seamless. Assuming this package gets created, we should figure out the best way to switch from one to the other across releases. We could deprecate libnss-db in Forky, and remove it in Duke perhaps ? I don't know what the conventions here are. I would welcome help with the above MR to get it reviewed and merged. I haven't heard from glibc maintainers so far. A helpful #debian-mentors member (sney) helped with a first pass review.

