View previous topic :: View next topic |
Author |
Message |
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Thu Nov 19, 2020 6:25 pm Post subject: KDE Circular Dependency "dbus" |
|
|
Hi thanks for your time.
I'm in a VirtualBox VM that I spun up myself. I'm on a hardened / selinux profile currently. I'd like to stay on it if possible. I'd also like to avoid systemd for now until I get a better understanding of the architecture, because it adds complexity I don't want.
KDE needs dbus to install according to portage, but when I go to install it, later, I get:
Code: | sec-policy/selinux-dbus -> sys-apps/policycoreutils -> sys-apps/dbus -> sec-policy/selinux-dbus |
I am familiar with #ifndef in C and it frustrates me right out of the gate that it doesn't self-resolve in that same way, but I accept that some people do things differently, regardless of how I feel about it.
What is the correct route to resolve this problem please? |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Thu Nov 19, 2020 7:05 pm Post subject: |
|
|
Buck100,
Welcome to gentoo.
Please put the emerge command you gave and all of the output onto a pastbin site.
wgetpaste can help.
Notice that there is no /hardened/selinux/desktop/plasma profile.
Your profile sets a lot of USE flags, so you don't ned to do it yourself.
Conpare your current output to that with selecting the /desktop/plasma profile.
There will be a lot of additional USE flags set that you will want.
Don't forget to switch your profile back before you install anything.
Its not the cause of your dbus issue but it will save you rebuilding things later as you discover that you need more USE flags on packages you have already built. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Thu Nov 19, 2020 7:27 pm Post subject: |
|
|
NeddySeagoon wrote: | Please put the emerge command you gave and all of the output onto a pastbin site.
wgetpaste can help. |
If you don't mind us taking a second to pan out the topic before continuing, I would like to be able to manipulate scrollback and copy/paste which seem inaccessible in the Gentoo VM. Is there a simple way to "Install Guest Additions"? It seem to barf whenever I try to insert the CD. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Thu Nov 19, 2020 7:34 pm Post subject: |
|
|
Buck100,
Are you still in the chroot or are you booted into your own kernel?
Console scrollback has been removed in the 5.9 kernel, so you may not have it.
Install with ssh and a virtual console to get scrollback or try screen or tmux. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
|
Back to top |
|
|
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Thu Nov 19, 2020 8:00 pm Post subject: |
|
|
NeddySeagoon wrote: | Are you still in the chroot or are you booted into your own kernel? |
I'm in my own custom system, just no desktop yet. I do have internet and somewhat know my way around /etc/make.conf - although the more customized ways of doing USE flags are still new to me.
I tried and failing that specified Code: | # emerge app-misc/screen | which actually gives the exact same circular dependency error as this thread. So we are back on-topic!
PS: I really fail to understand the decision to eliminate scrollback. I cannot imagine a use case where terminal scroll is not a desirable feature, but to each his own. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Thu Nov 19, 2020 8:11 pm Post subject: |
|
|
Buck100,
The kernel code was old and broken and unmaintained, so one assumes, unused.
Linus removed the code.
The error message usually says something about temporarily disabling a USE flag on a package.
A copy/paste of the error, over ssh would be really useful.
FInd the hint in the error message and run Code: | USE=-<USE_Flag_to_turn_off> emerge --oneshot <category>/<parkage> |
Now try the original emerge again. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Thu Nov 19, 2020 8:57 pm Post subject: |
|
|
NeddySeagoon wrote: | FInd the hint in the error message |
I'll screenshot for now if that works for you, apologies for the resolution of the host:
https://i.ibb.co/kHx4yCm/emerge-kde.png
When I go ahead and do the "clue" it's giving me, removing dbus, we get back to square 1 where I need dbus in order to install KDE in the first place, that's why I posted here for the most part.
Thanks for any help.
PS: My current use flags are:
/etc/make.conf: | USE="elogind X wayland gui widgets qml icu dbus ogg vorbis pcre16 text egl bindist" |
|
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Thu Nov 19, 2020 9:21 pm Post subject: |
|
|
Buck100,
I can't copy/paste from an image.
You don't remove dbus from make.conf.
It looks like portage is suggesting that you build sys-apps/policycoreutils with USE=-dbus.
Putting that into the command template I gave Code: | USE=-<USE_Flag_to_turn_off> emerge --oneshot <category>/<parkage> |
the command to do what portage is suggesting becomes
Code: | USE=-dbus emerge --oneshot sys-apps/policycoreutils -av |
If that command won't run, post the error.
Unless you intend to share the packages built on this host publicly, remove bindist from your USE.
It causes a world of pain by omitting patent encumbered code and code that its is not permissible to share. in binary format.
You can make this much easier for everyone by connecting the the VM via ssh.
That will give you scrolling and copy/paste. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Fri Nov 20, 2020 2:21 am Post subject: |
|
|
NeddySeagoon wrote: | You don't remove dbus from make.conf.
...
It looks like portage is suggesting that you build sys-apps/policycoreutils with USE=-dbus.
...
Code: | USE=-dbus emerge --oneshot sys-apps/policycoreutils -av |
If that command won't run, post the error. |
Ah this is a new skill for me on Gentoo, I was only aware you could control use flags from make.conf and the other configuration file whose name escapes me. I did not realize you could create a sub-build per-unit in order to then go and attach it to the general system settings in make.conf
It's running now. I'll post back. I'll also take a look at setting up a ssh tunnel to the VM, although I'm going for a secure system here so I was preferring to avoid poking holes in the listening ports. But I get the use in this isolated case, certainly.
EDIT: And thank you! |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Fri Nov 20, 2020 9:59 am Post subject: |
|
|
Buck100,
Command line environmental variables are applied for that command only, portage will not remember that sys-apps/policycoreutils was emerged with USE=-dbus. Which is exactly what is needed here.
Portage appends USE flags to the USE string in the order in which they are encountered.
That's your selected profile, make.conf, package.use and lastly the command line.
The last invocation of a flag is the one that gets used.
Thus dbus is on in make.cont, off on the command line so the command is executed with USE=-dbus.
Read up on the --oneshot option though. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Fri Nov 20, 2020 1:14 pm Post subject: |
|
|
Alright so I've done the above but it now complains of LLVM:
Code: | >>> Failed to emerge sys-devel/llvm-10.0.1, Log file:
>>> `/var/tmp/portage/sys-devel/llvm-10.0.1/temp/build.log`
* Messages for package sys-devel/llvm-10.0.1:
* ERROR: sys-devel/llvm-10.0.1::gentoo failed (compile phase):
* ninja -v -j3 -l0 failed
*
* Call stack
* ebuild.sh, line 125: Called src_compile
* environment, line 3840: Called multilib-minimal_src_compile
* environment, line 2490: Called multilib_foreach_abi `multilib-minimal_abi_src_compile`
* environment, line 2760: Called multibuild_foreach_variant `_multilib_multibuild_wrapper` `multilib-minimal_abi_src_compile
*
,
* environment, line 2425: Called _multibuild_run `_multilib_multibuild_wrapper` `multilib-minimal_abi_src_compile
* environment, line 2423: Called _multilib_multibuild_wrapper `multilib-minimal_abi_src_compile`
* environment, line 548: Called multilib-minimal_abi_src_compile
* environment, line 2484: Called multilib_src_compile
* environment, line 2972: Called cmake_src_compile
* environment, line 1249: Called cmake_build
* environment, line 1218: Called eninja
* environment, line 1670: Called die
* The specific snippet of code:
* "$@ || die "${nonfatal_args[@]}" "${*} failed"
*
* If you need support..... |
That's copied by hand but everything should be in order. If you need more info to diagnose please let me know. I don't see any immediately obvious way to use the technique you previously described (hints on USE flags) in this case, so I think it may be a harder problem. Any help appreciated. Thanks as always. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Fri Nov 20, 2020 3:35 pm Post subject: |
|
|
Buck100,
Code: | If you need support..... |
The path to the build log was there. We need that log.
Code: | * ninja -v -j3 -l0 failed | How much RAM do you have in the VM?
If its not at least 6G, that -j3 is too high for some packages.
If you still have the build log, run Code: | grep -i killed /path/to/build/log |
There should be nothing, if you get a hit, you ran out of RAM and the kernel killed one of you build threads.
The next thing to check is Code: | grep -i 'error 1' /path/to/build/log |
If that's there we need 100 lines before and 20 lines after.
The entire build log is even better. That's a job for wgetpaste.
Check and
Running out of space or i-nodes is a very bad thing. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Buck100 n00b
Joined: 19 Nov 2020 Posts: 7
|
Posted: Fri Nov 20, 2020 4:16 pm Post subject: |
|
|
NeddySeagoon wrote: | Code: | * ninja -v -j3 -l0 failed | How much RAM do you have in the VM?
If its not at least 6G, that -j3 is too high for some packages. |
Oh I'm positive that's at least one of the problems, the VM has 2 gigs lol. Let's attack that first?
Is there a way to run "ninja" manually and issue it a different (-j1?) flag? |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54308 Location: 56N 3W
|
Posted: Fri Nov 20, 2020 4:26 pm Post subject: |
|
|
Buck100,
You can set MAKEOPTS on a per package basis. on on the command line.
Try Code: | MAKEOPTS="-j1" emerge sys-devel/llvm --oneshot |
If that works, add some RAM to the VM or start a list of packages that need MAKEOPTS="-j1". _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
|