I broke system monitor?

I’m not sure how but system was working fine before I tried installing some packages…specifically the plugins for netspeed but now when I try to run it I get:

[famewolf@e525 ~]$ deepin-system-monitor
deepin-system-monitor: error while loading shared libraries: libnethogs.so.0.8.5: cannot open shared object file: No such file or directory

I’ve tried with both “nethogs” and “nethogs-git”. I’ve uninstalled both packages and reinstalled them. any ideas?

update I figured it out eventually. The deepin-system monitor is looking for libnethogs.so.0.8.5 and the latest nethogs now is libnethogs.so.0.8.6. I added a symbolic link to libnethogs.so.0.8.5 pointing to libnethogs.so.0.8.6 and it worked fine for now but it needs to be recompiled by someone. I wasn’t sure where to report this. Please let me know if you know where.

A symlink is always a short time answer. And just report this to archlinux bugtracker as EndeavourOS is Archlinux at 99.9% :smiley:

1 Like

Well I must be an idiot. I registered at the arch bug site and search on deepin-system-monitor to confirm it had not been reported but did not see anywhere to add a new bug. I ended up sending an email to the email of the packages of that particular community package with the info.

I have no knowledge but I read this on the wiki. May be of some help:

If a partial upgrade scenario has been created, and binaries are broken because they cannot find the libraries they are linked against, do not “fix” the problem simply by symlinking . Libraries receive soname bumps when they are not backwards compatible . A simple pacman -Syu to a properly synced mirror will fix the problem as long as pacman is not broken.

source: https://wiki.archlinux.org/index.php/System_maintenance#Partial_upgrades_are_unsupported

Try updating your mirror list and updating. That might probably fix it.

1 Like

Updated mirrors via the popup window on endeavouros. It didn’t fix the issue as deepin-system-monitor has not been upgraded and is a binary only package. While I understand what your saying the symlink was a quick and dirty fix to get the monitor working because deepin doesn’t have anything that shows network speed as least not that I can get to work. There are 3 different plugins stating they show cpu and network speed but none of them actually WORK with the existing deepin installation which is probably why they were not included in the meta package.

1 Like

Then this must be a real bug

I just ran reflector --latest 200 --protocol http --protocol https --sort rate --save /etc/pacman.d/mirrorlist and will try the pacman -Syu again after it finishes but yeah I believe so.

I also finally got logged into the bug tracker. Last pass was trying to use my confirmation code as my username which explains the issue. Now I can add a task.


deepin-system-monitor --> Last Updated: 2020-03-11 09:17 UTC

nethogs --> Last Updated: 2020-04-16 16:35 UTC

you could try rebuilding it against changed nethogs:
with makepkg -si to see if it will work :wink:

1 Like

Thank you! I knew how to git clone and do a make install but had not yet learned enough on makepkg. I was reading to see if “checkinstall” which will build a rpm, deb etc depending on distro worked in arch. I’ve added it to my notes to read more on asap.

I think I’m missing a few steps…the dir you provided has a PKGBUILD and a .install file which basically looks like a generic template with nothing in it. I don’t see the actual source or am I not supposed to? Apologies if I’m missing something basic.


Ok I see my problem…shouldn’t use git clone…will try wget.

PKGBUILD is only the build instruction used by makepkg, and install file is for initial install also declared inside PKGBUILD

but it fails to build here to giving errors related to nethogs…

Latest commit e664d3d on 5 Jul 2019

long time not changed too…

src/network_traffic_filter.cpp:69:57: error: too few arguments to function ‘int nethogsmonitor_loop(NethogsMonitorCallback, char*, int)’
69 | const int status = nethogsmonitor_loop(&onNethogsUpdate);
| ^
In file included from src/network_traffic_filter.h:27,
from src/network_traffic_filter.cpp:24:
/usr/include/libnethogs.h:64:25: note: declared here
64 | NETHOGS_DSO_VISIBLE int nethogsmonitor_loop(NethogsMonitorCallback cb,
| ^~~~~~~~~~~~~~~~~~~
make: *** [Makefile:1134: out/network_traffic_filter.o] Error 1
==> ERROR: A failure occurred in build().

So…is there a simple method to downgrade nethogs? (it may have gotten upgraded as a dependency of a plugin that did not work and was later uninstalled.)

Still interested in knowing how to downgrade but package maintainer just replied in email “Thanks for the info. Fixed in deepin-system-monitor 5.0.0-3.”

╭─joekamprad@empowered64 ~  
╰─$ downgrade
usage: downgrade <pkg> [pkg...] [-- pacman_option...]
see downgrade(8) for details.

should the next to try:

downgrade nethogs