Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 827901 - x11-base/xorg-server-21.1.1 depends on net-libs/libtirpc
Summary: x11-base/xorg-server-21.1.1 depends on net-libs/libtirpc
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-11-30 12:27 UTC by Albert W. Hopkins
Modified: 2021-12-16 02:37 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Albert W. Hopkins 2021-11-30 12:27:05 UTC
I have upgraded (actually looks like rebuilt) xorg-server-21.1.1 on my binpkg server. When the client pulls it in, it does not seem to pull in net-libs/libtirpc.  Which results in:

```
$ Xorg
Xorg: error while loading shared libraries: libtirpc.so.3: cannot open shared object file: No such file or directory
```

Also `revdep-rebuild` picks this up on the client and wants to rebuild xorg-server on the client, but the (re)build also fails.  It also fails on another binhost because libtirpc is not installed:

```
...
Run-time dependency libtirpc found: NO (tried pkgconfig and cmake)
Has header "rpc/rpc.h" : NO

os/meson.build:63:8: ERROR: Problem encountered: secure-rpc requested, but neither libtirpc or libc RPC support were found

A full log can be found at /var/tmp/portage/x11-base/xorg-server-21.1.1/work/xorg-server-21.1.1-build/meson-logs/meson-log.txt
 * ERROR: x11-base/xorg-server-21.1.1::gentoo failed (configure phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  127:  Called src_configure
 *   environment, line 3386:  Called meson_src_configure
 *   environment, line 2654:  Called die
 * The specific snippet of code:
 *       "${mesonargs[@]}" ) || die
 *
```

```
$ emerge  --info =x11-base/xorg-server-21.1.1
Portage 3.0.28 (python 3.10.0-final-0, default/linux/amd64/17.1/no-multilib, gcc-11.2.1, glibc-2.34-r3, 5.15.5-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.15.5-gentoo-x86_64-11th_Gen_Intel-R-_Core-TM-_i7-1165G7_@_2.80GHz-with-glibc2.34
KiB Mem:    16104748 total,   4546792 free
KiB Swap:   23488508 total,  23488508 free
Timestamp of repository gentoo: Tue, 30 Nov 2021 11:20:58 +0000
Timestamp of repository marduk: Sun, 21 Nov 2021 14:52:09 +0000
sh bash 5.1_p12
ld GNU ld (Gentoo 2.37_p1 p1) 2.37
app-shells/bash:          5.1_p12::gentoo
dev-lang/perl:            5.34.0-r5::gentoo
dev-lang/python:          3.9.9::gentoo, 3.10.0_p1::gentoo
sys-apps/baselayout:      2.8::gentoo
sys-apps/sandbox:         2.29::gentoo
sys-devel/autoconf:       2.71-r1::gentoo
sys-devel/automake:       1.16.5::gentoo
sys-devel/binutils:       2.37_p1-r1::gentoo
sys-devel/gcc:            11.2.1_p20211127::gentoo
sys-devel/gcc-config:     2.5-r1::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.15::gentoo (virtual/os-headers)
sys-libs/glibc:           2.34-r3::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://gbp/repos/lighthouse/gentoo
    priority: -1000
    sync-rsync-verify-metamanifest: False
    sync-rsync-verify-max-age: 24
    sync-rsync-extra-opts: 
    sync-rsync-verify-jobs: 1

marduk
    location: /var/db/repos/marduk
    sync-type: rsync
    sync-uri: rsync://gbp/repos/lighthouse/marduk
    masters: gentoo
    priority: 50
    sync-rsync-verify-metamanifest: False
    sync-rsync-extra-opts: 

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE @BINARY-REDISTRIBUTABLE Google-TOS google-chrome google-talkplugin"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="     -O2     -march=native     -mtune=tigerlake     -pipe "
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="     -O2     -march=native     -mtune=tigerlake     -pipe "
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="     --autounmask=n     --binpkg-changed-deps     --binpkg-respect-use     --buildpkg     --changed-deps=y     --color=y     --getbinpkg     --jobs=4     --keep-going     --oneshot     --quiet-build     --quiet-unmerge-warn     --rebuilt-binaries=y     --verbose-conflicts     --with-bdeps=n "
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg cgroup config-protect-if-modified distlocks fixlafiles ipc-sandbox mount-sandbox multilib-strict network-sandbox news noinfo notitles parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms skiprocheck strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="/usr/share/doc"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en"
MAKEOPTS="     --jobs=5     --load-average=5.64 "
PKGDIR="/var/cache/binpkgs"
PORTAGE_BINHOST="https://gbp/binpkgs/lighthouse/"
PORTAGE_COMPRESS=""
PORTAGE_COMPRESS_FLAGS=""
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl aes amd64 asm avx avx2 avx512bw avx512cd avx512dq avx512f avx512vbmi avx512vl f16c fma3 glamor introspection ipv6 jpeg2k libglvnd mmx mmxext nls nptl opentype pam pclmul popcnt rdrand seccomp sha split-usr sse sse2 sse3 sse4_1 sse4_2 ssse3 systemd udev unicode urandom utf8 vaapi vulkan wayland xattr" ABI_X86="64" APACHE2_MODULES="auth_digest authn_core authn_file authz authz_core authz_groupfile authz_host authz_user dav dav_fs dir group_file mime socache_shmcb unixd" APACHE2_MPMS="prefork" CAMERAS="*" CPU_FLAGS_X86="aes avx avx2 avx512f avx512dq avx512cd avx512bw avx512vl avx512vbmi f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="openssl" ELIBC="glibc" FFTOOLS="*" INPUT_DEVICES="libinput" KERNEL="linux" L10N="en" LLVM_TARGETS="AArch64 AMDGPU ARM AVR BPF Hexagon Lanai MSP430 Mips NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore" LUA_SINGLE_TARGET="lua5-4" NGINX_MODULES_HTTP="auth_basic gzip proxy rewrite uwsgi" PYTHON_SINGLE_TARGET="python3_9" PYTHON_TARGETS="python3_9 python3_10" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby27 ruby30" USERLAND="GNU" VIDEO_CARDS="intel i965 iris"
Unset:  CC, CPPFLAGS, CTARGET, CXX, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS, RUSTFLAGS

=================================================================
                        Package Settings
=================================================================

x11-base/xorg-server-21.1.1::gentoo was built with the following:
USE="systemd udev xorg -debug -doc -elogind -minimal (-selinux) -suid -test -unwind -xcsecurity -xephyr -xnest -xvfb"
FEATURES="fixlafiles distlocks protect-owned xattr preserve-libs buildpkg config-protect-if-modified multilib-strict sandbox qa-unresolved-soname-deps strict news assume-digests sfperms binpkg-docompress parallel-fetch noinfo binpkg-multi-instance unmerge-logs unknown-features-warn unmerge-orphans binpkg-dostrip notitles binpkg-logs skiprocheck"
```
Comment 1 Ionen Wolkens gentoo-dev 2021-11-30 12:46:55 UTC
Just seen that as well, libbsd too albeit it's indirectly pulled by libXdmcp

 * VDB: detected possibly incorrect RDEPEND (x11-base/xorg-server-21.1.1)
 *                     > dev-libs/libbsd
 *                     > net-libs/libtirpc:=
Comment 2 Larry the Git Cow gentoo-dev 2021-12-01 13:14:17 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b946dd5a9624f26ead79deb0d341d3d82720fb8d

commit b946dd5a9624f26ead79deb0d341d3d82720fb8d
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2021-12-01 13:12:28 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2021-12-01 13:14:07 +0000

    x11-base/xorg-server: add libselinux dependency for USE=selinux
    
    Not revbumping (yet) as I expect we'll need to for the libtirpc bug.
    
    Bug: https://bugs.gentoo.org/827901
    Signed-off-by: Sam James <sam@gentoo.org>

 x11-base/xorg-server/xorg-server-21.1.1.ebuild | 1 +
 x11-base/xorg-server/xorg-server-9999.ebuild   | 1 +
 2 files changed, 2 insertions(+)
Comment 3 Don O 2021-12-04 20:52:18 UTC
The problem with rpc is you can't turn it off with the ebuild as it is.

From meson_options
option('secure-rpc', type: 'boolean', value: true)
There needs to be a rpc flag for the ebuild that will set this to true/false and pass the appropriate option to meson.
Comment 4 Ionen Wolkens gentoo-dev 2021-12-05 04:39:03 UTC
(In reply to Don O from comment #3)
> The problem with rpc is you can't turn it off with the ebuild as it is.
> 
> From meson_options
> option('secure-rpc', type: 'boolean', value: true)
> There needs to be a rpc flag for the ebuild that will set this to true/false
> and pass the appropriate option to meson.
On a side-note, a while back on nvidia-drivers I decided to make libtirpc unconditional given how unlikely it was to be missing rather than introduce a new USE=nvpd / =persistenced or so (formerly unneeded because libtirpc was statically linked with prebuilt persistenced, but building it now).

Systems without libtirpc notably need man-db[-nls] (or mandoc) to avoid po4a->opensp->libtirpc dependency, and there's also samba and nfs-utils that need tirpc.

If xorg-server does decide to make it optional, I'll likely revisit that in nvidia to match. But personally wouldn't see a problem with just keeping =true with the dep (especially given how the option has "secure" in it, not that I looked into it so that's not saying much).
Comment 5 Ionen Wolkens gentoo-dev 2021-12-05 04:43:49 UTC
(In reply to Ionen Wolkens from comment #4)
> Systems without libtirpc notably need man-db[-nls] (or mandoc) to avoid
> po4a->opensp->libtirpc dependency, and there's also samba and nfs-utils that
> need tirpc.
Meant opensp->libnsl->libtirpc here, a lot of packages need libnsl too.
Comment 6 Don O 2021-12-05 14:01:33 UTC
If you're going to keep libtirpc then you need to make it an *depend.

Having said that, I don't have it on my system, never have, never needed it, so there are probably many that don't have it installed.

If you look at the xwayland ebuilds you'll see an rpc use flag.

Personally I don't care which way it goes, but things should be kept consistent.
Comment 7 Ionen Wolkens gentoo-dev 2021-12-09 01:57:14 UTC
Yes, to clarify personally I don't mind either way. Albeit I'm interested in knowing what's picked by the X11 team given I may change things on my end to make libtirpc optional as well.
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-12-09 01:58:50 UTC
(In reply to Don O from comment #6)
> If you're going to keep libtirpc then you need to make it an *depend.
> 

He was just saying that depending on the choice made by the x11@ team in Gentoo, other packages may need to be adapted too.
Comment 9 Larry the Git Cow gentoo-dev 2021-12-16 02:37:37 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72c14cae8f9e8e7fd3eadc2f32cfeeb0eb04ab33

commit 72c14cae8f9e8e7fd3eadc2f32cfeeb0eb04ab33
Author:     Matt Turner <mattst88@gentoo.org>
AuthorDate: 2021-12-16 01:17:43 +0000
Commit:     Matt Turner <mattst88@gentoo.org>
CommitDate: 2021-12-16 02:37:22 +0000

    x11-base/xorg-server: Disable 'secure-rpc'
    
    We've never had this option enabled with autotools. When we switched to
    meson, it became automagic (if libtirpc was installed). The option
    controls an old authentication protocol, SUN-DES-1, that is extremely
    unlikely to be of any use today.
    
    Closes: https://bugs.gentoo.org/827901
    Signed-off-by: Matt Turner <mattst88@gentoo.org>

 x11-base/xorg-server/xorg-server-9999.ebuild | 1 +
 1 file changed, 1 insertion(+)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ebf35b27eb793eefcdb3e2f2b13534d52fdf6994

commit ebf35b27eb793eefcdb3e2f2b13534d52fdf6994
Author:     Matt Turner <mattst88@gentoo.org>
AuthorDate: 2021-12-16 02:18:47 +0000
Commit:     Matt Turner <mattst88@gentoo.org>
CommitDate: 2021-12-16 02:37:22 +0000

    x11-base/xorg-server: Add dependency on dev-libs/libbsd
    
    Bug: https://bugs.gentoo.org/827901
    Signed-off-by: Matt Turner <mattst88@gentoo.org>

 x11-base/xorg-server/xorg-server-9999.ebuild | 1 +
 1 file changed, 1 insertion(+)