Page 3 of 4

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Wed May 08, 2024 9:08 am
by promeneur
For those who want the beta version and an almost easy installation.

Install fah-client-bastet-alpha rpm.

Get the beta version (8.3.5) of fah-client executable from
https://download.foldingathome.org/rele ... se.tar.bz2

Give to "root" the right to modify /usr/bin/ folder
As "root", replace the alpha version of fah-client executable by the beta version of fah-client in /usr/bin/ .
Give to root the right to only read the /usr/bin/ folder.

Restart your PC.

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Wed May 08, 2024 9:01 pm
by Curiosity
Beta 8.3.5 is available at https://software.opensuse.org/package/f ... astet-beta

I will remove the alpha package soon, unless there's an explicit need for it.

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Thu May 09, 2024 10:50 am
by Marcos FRM
Curiosity wrote: Tue May 07, 2024 9:09 pm
Marcos FRM wrote: Tue May 07, 2024 6:31 pm cbang packaging machinery is working fine on Fedora/RHEL and openSUSE. Give viewtopic.php?p=363756#p363756 a try (you can git checkout the release tags before building).
I'm not the least bit interested in local builds that rape rpmbuild. I'm using this https://build.opensuse.org which results in 5 repositories there https://software.opensuse.org/package/f ... stet-alpha

To all openSUSE users: Please switch to package "fah-client-bastet-alpha".
OBS can build for Fedora/RHEL, right?

We could tweak your spec with

Code: Select all

%if 0%{?sle_version}
    foo
%else
    bar
%endif
or so for the divergent options. Please use upstream service file and merge there any useful options, dropping useless stuff like RuntimeDirectory=, PIDFile=, EnvironmentFile=, ExecStartPost=, ExecStop=, possible others.

Are you packging /var/lib/fah-client directory?

Code: Select all

%attr (0750, %_name, %_name) /var/lib/%{_name}
Missing "%dir" here?

For the sandbox I think we should add RestrictSUIDSGID=yes and RemoveIPC=yes to the upstream file. With them our settings basically map to the same ones auto applied when DynamicUser=yes is in use. But require much newer systemd (242 and 248), not supported on RHEL 8 (239), Debian 10 (241), Debian 11 (247). It should work anyway, only print a warning.

Also Wants=network-online.target is a big hammer we should avoid. Joseph made some changes to make the client more robust in case of missing network at startup. It should not require this anymore. syslog.target does not exist for more than decade. remote-fs.target is not needed...

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Thu May 09, 2024 10:54 am
by Marcos FRM
CPUSchedulingPolicy=idle is probably too much (and I am not sure it is actually applied to child processes). This approach is better IMHO:

https://github.com/FoldingAtHome/fah-cl ... nt-8578995

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Sun May 19, 2024 8:41 pm
by Curiosity
Marcos FRM wrote: Thu May 09, 2024 10:50 am OBS can build for Fedora/RHEL, right?
Yes, it could. It fails with RHEL-7, because 'BuildRequires: scons' can't be resolved.
Fedora-40 looks better, however a couple of adaptions are required.
Marcos FRM wrote: Thu May 09, 2024 10:50 am Please use upstream service file and merge there any useful options, dropping useless stuff like RuntimeDirectory=, PIDFile=, EnvironmentFile=, ExecStartPost=, ExecStop=, possible others.
I'm sorry to say that this is MY project on OBS, and I'm adding anything I think is useful.
Marcos FRM wrote: Thu May 09, 2024 10:50 am Are you packging /var/lib/fah-client directory?

Code: Select all

%attr (0750, %_name, %_name) /var/lib/%{_name}
Missing "%dir" here?
The line works as intended. The semantic of "%dir" isn't need here.
Marcos FRM wrote: Thu May 09, 2024 10:50 am Also Wants=network-online.target is a big hammer we should avoid. Joseph made some changes to make the client more robust in case of missing network at startup. It should not require this anymore. syslog.target does not exist for more than decade. remote-fs.target is not needed...
All services on openSUSE depending on network connectivity use "network-online.target". This is exactly how I want it. Booting my desktop has absolute priority, whereas I don't care if fah-client comes 1 or 10 seconds later.

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Sun May 19, 2024 9:05 pm
by Curiosity
AMD users had to replace "libOpenCL.so.1" in the core directory to avoid a crash on openSUSE. This step can now be skipped by installing the latest rpm and adding the line

Code: Select all

FAHCLIENT_OPTIONS="--lib-path=/usr/lib64"
to "/etc/sysconfig/fah-client". This line will already be present for new installations.

Background: fah-client prepends the path of the core directory to the library search path (LD_LIBRARY_PATH). The option "--lib-path" in turn prepends the argument (e.g. /usr/lib64) to the library search path. This way the system libraries are preferred over the libraries shipped with the core.

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 8:39 am
by promeneur
Marcos FRM wrote: Fri Feb 23, 2024 6:33 pm Please compile from source instead. The generated RPM should work on openSUSE.

Code: Select all

sudo zypper -n in git scons gcc-c++ libopenssl-devel zlib-devel libbz2-devel systemd-devel rpm-build systemd-rpm-macros

git clone https://github.com/cauldrondevelopmentllc/cbang
git clone https://github.com/foldingathome/fah-client-bastet

export CBANG_HOME=$PWD/cbang
scons -C cbang
scons -C fah-client-bastet
scons -C fah-client-bastet package
Install double-clicking on the RPM file. GNOME Software or similar will take care of it. Or use the terminal:

Code: Select all

sudo zypper in ./fah-client-bastet/fah_client-<version>-1.x86_64.rpm
Ignore ("i") when zypper complains the package is not signed.
Hello i made a tutorial for fah-client-bastet based on your statements see viewtopic.php?t=42550
It works well.
But what are the statements for the stable fah-client 8.4.9 ?

Thanks

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 8:55 am
by calxalot

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 9:17 am
by promeneur
calxalot wrote: Tue Feb 18, 2025 8:55 am There was an update to
https://github.com/FoldingAtHome/fah-cl ... ING-RPM.md
All works well till this

:~/rpmd/fah/rpm/8.4.9> scons -C fah-client-bastet
scons: Entering directory `/home/roubach/rpmd/fah/rpm/8.4.9/fah-client-bastet'
Adding logic to propagate SOURCE_DATE_EPOCH from the shell environment when building with SCons
scons: Reading SConscript files ...
Compiler: gcc (gnu)
Platform: posix
Compiler Mode: gnu
Build Mode: release
Arch: None
GCC Version: 14
Jobs: 8
Checking for C library pthread... yes
FileNotFoundError: [Errno 2] No such file or directory: '/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/cbang/../../include/cbang/config.h':
File "/home/roubach/rpmd/fah/rpm/8.4.9/fah-client-bastet/SConstruct", line 38:
conf.CBConfig('cbang')
File "/usr/lib/python3.11/site-packages/SCons/SConf.py", line 740:
ret = self.test(context, *args, **kw)
File "/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/__init__.py", line 200:
ret = conf.env.cb_methods[name](conf, **kwargs)
File "/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/cbang/__init__.py", line 142:
with open(home + '/include/cbang/config.h', 'r') as f:

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 9:36 am
by calxalot
Dunno.
Messaged Marcos for help.

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 9:42 am
by calxalot
You built cbang first, right?

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 9:48 am
by promeneur
calxalot wrote: Tue Feb 18, 2025 9:42 am You built cbang first, right?
I followed the statements

export CBANG_HOME=$PWD/cbang
scons -C cbang
scons -C fah-client-bastet

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 9:52 am
by calxalot
Please try

Code: Select all

scons -C cbang test
You may need to install python module six for the test.

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 10:02 am
by promeneur
calxalot wrote: Tue Feb 18, 2025 9:52 am Please try

Code: Select all

scons -C cbang test
You may need to install python module six for the test.
there are many python311 modules in openSUSE repo. What is the package name ?

scons -C cbang test
scons: Entering directory `/home/roubach/rpmd/fah/rpm/8.4.9/cbang'
Adding logic to propagate SOURCE_DATE_EPOCH from the shell environment when building with SCons
scons: Reading SConscript files ...
Executing: ['/usr/bin/python3.11', '/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/test/../../tests/testHarness', '-C', 'tests', '--diff-failed', '--view-failed', '--view-unfiltered', '--save-failed', '--build']
Adding logic to propagate SOURCE_DATE_EPOCH from the shell environment when building with SCons
scons: Reading SConscript files ...
Compiler: gcc (gnu)
Platform: posix
Compiler Mode: gnu
Build Mode: release
Arch: x86
GCC Version: 14
Jobs: 8
Checking for C library pthread... yes
FileNotFoundError: [Errno 2] No such file or directory: '/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/cbang/../../include/cbang/config.h':
File "/home/roubach/rpmd/fah/rpm/8.4.9/cbang/tests/SConstruct", line 16:
conf.CBConfig('cbang')
File "/usr/lib/python3.11/site-packages/SCons/SConf.py", line 740:
ret = self.test(context, *args, **kw)
File "/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/__init__.py", line 200:
ret = conf.env.cb_methods[name](conf, **kwargs)
File "/home/roubach/rpmd/fah/rpm/8.4.9/cbang/config/cbang/__init__.py", line 142:
with open(home + '/include/cbang/config.h', 'r') as f:
ERROR: Command "scons" failed

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Posted: Tue Feb 18, 2025 10:06 am
by calxalot
I don't know.
I just use

Code: Select all

pip3 install six
in a venv