Broken .deb dependencies on Debian stable

Moderators: Site Moderators, FAHC Science Team

Post Reply
vext01
Posts: 3
Joined: Tue Mar 31, 2020 10:43 am

Broken .deb dependencies on Debian stable

Post by vext01 »

Hi all,

First of all, thanks for folding@home. What an excellent project!

We have a spare server which I've just installed as a folding node. I wanted to share my experience with setting it up. Please take this as constructive criticism.

It's all very simple apart from the need to use `--force-depends` to install the Debian packages. `--force-depends` is super-annoying because it effectively breaks the package manager on a Debian stable box. e.g.:

Code: Select all

# apt-get install ncdu
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 fahcontrol : Depends: python-gnome2 but it is not installable
              Recommends: fahviewer but it is not installable
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
So the FAH packages list non-existant dependencies. Perhaps the package was built on an older version of Debian?

After reluctantly using `--force-depends` running `FAHControl` will give:

Code: Select all

# FAHControl 
Traceback (most recent call last):
  File "/usr/bin/FAHControl", line 25, in <module>
    from fah import FAHControl, load_fahcontrol_db
  File "/usr/lib/python2.7/dist-packages/fah/__init__.py", line 22, in <module>
    import util
  File "/usr/lib/python2.7/dist-packages/fah/util/__init__.py", line 22, in <module>
    import gtk
ImportError: No module named gtk
This can be fixed by installing `python-gtk2`. Perhaps the `python-gnome2` dependency should be `python-gtk2`?

I guess what I'm saying is, it's not good to ask users to install stuff with `--force-depends`. Is there any plan to fix this? Why not use dependencies found in the package manager?

Thanks :D

P.S. I'd also have liked to run FAH on my BSD machines, but that's another story.
Joe_H
Site Admin
Posts: 7870
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: Broken .deb dependencies on Debian stable

Post by Joe_H »

I have posted elsewhere on this where others have asked about the dependencies, and others have posted what they did to take care of those. The short of it is that there is a single developer paid to work on the client and server software. The current version of the client is 2 years old and not constantly updated, a new version was planned, and currently on hold due to the COVID-19 response. The dependencies used at the time of release were to support current and LTS versions of a number of Linux distros.

BSD would be an additional OS to support. In the past some have managed to get things to work with Linux support added to their BSD system, but I understand it can be a bit of work.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
ipkh
Posts: 175
Joined: Thu Jul 16, 2015 2:03 pm

Re: Broken .deb dependencies on Debian stable

Post by ipkh »

It is being actively worked on via the github page. That is a better way to check on progress and offer help to the programmers working on it.
vext01
Posts: 3
Joined: Tue Mar 31, 2020 10:43 am

Re: Broken .deb dependencies on Debian stable

Post by vext01 »

Thanks everyone for your responses!

OK, so this is clearly a known issue, so sorry for my noise.

About the github project you mention. I found the account here:
https://github.com/FoldingAtHome

But I don't see the FAHClient sources. Is it still closed-source?

If I can get the sources for FAHClient and its dependencies, I can build from source on BSD.

Thanks!
Jesse_V
Site Moderator
Posts: 2851
Joined: Mon Jul 18, 2011 4:44 am
Hardware configuration: OS: Windows 10, Kubuntu 19.04
CPU: i7-6700k
GPU: GTX 970, GTX 1080 TI
RAM: 24 GB DDR4
Location: Western Washington

Re: Broken .deb dependencies on Debian stable

Post by Jesse_V »

vext01 wrote:About the github project you mention. I found the account here:
https://github.com/FoldingAtHome

But I don't see the FAHClient sources. Is it still closed-source?
If I can get the sources for FAHClient and its dependencies, I can build from source on BSD.
FAHClient is closed-source due to concerns about people modifying their client, manipulating workunits, and corrupting the scientific data returned back to their servers. This was a similar problem that BOINC ran into and they solved it by double-checking work. That is very inefficient, so F@h chose instead to close the source for the FAHClient component. Instead, you could set up a script that downloads FAHClient from the F@h website.
F@h is now the top computing platform on the planet and nothing unites people like a dedicated fight against a common enemy. This virus affects all of us. Lets end it together.
ipkh
Posts: 175
Joined: Thu Jul 16, 2015 2:03 pm

Re: Broken .deb dependencies on Debian stable

Post by ipkh »

You don't need fahcontrol to fold. There are workarounds for it but as long as the fahclient itself is installed you can fold just fine.
At worst you might have to edit the config.xml file to input your username passkey and team info.
bruce
Posts: 20910
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: Broken .deb dependencies on Debian stable

Post by bruce »

Warning: When you hand-edit config.xml be very careful. FAHClient is totally intolerant of unexpected things in that file.
vext01
Posts: 3
Joined: Tue Mar 31, 2020 10:43 am

Re: Broken .deb dependencies on Debian stable

Post by vext01 »

FAHClient is closed-source due to concerns about people modifying their client, manipulating workunits, and corrupting the scientific data returned back to their servers.
I see. It's a shame that that's the kind of world we live in, but I totally understand.

Then again, if that's what bad guys want to do, then they will probably still achieve it via reverse engineering and binary modification :(

Thanks everyone for your answers.
Joe_H
Site Admin
Posts: 7870
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: Broken .deb dependencies on Debian stable

Post by Joe_H »

But that is more work than most are willing to put into doing that kind of thing, and they would also need to overcome digital signing of the files sent between servers and clients.

Not perfect but that was the approach taken. My understanding is that there are plans to make more of the client open source, but those currently are interrupted by COVID-19 response. So far the science code, OpenMM and Gromacs, is open, and the parts of the client other than FAHClient are already open. There is also an API available for connecting to FAHClient, you could write you own replacement for FAHControl or Web Control.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
Post Reply