[tuto] 8.3.5, openSUSE Tumbleweed, installation

Moderators: Site Moderators, FAHC Science Team

promeneur
Posts: 248
Joined: Tue Aug 07, 2012 11:59 am
Hardware configuration: openSUSE Tumbleweed, x86_64,Asrock B760M-HDV/M.2 D4, Intel Core i3-12100, 16 GB, Intel UHD Graphics 730, NVIDIA GeForce GT 1030, Edup-Love EP-9651GS Wi-Fi Bluetooth, multicard reader USB 3.0 startech.com 35fcreadbu3, Epson XP 7100, Headset Bluetooth 3.0 Philips SHQ7300

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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.
Image
Curiosity
Posts: 12
Joined: Fri May 03, 2024 10:46 pm

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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.
Marcos FRM
Posts: 28
Joined: Fri Feb 23, 2024 6:26 pm

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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...
Last edited by Marcos FRM on Thu May 09, 2024 11:20 am, edited 1 time in total.
Marcos FRM
Posts: 28
Joined: Fri Feb 23, 2024 6:26 pm

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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
Curiosity
Posts: 12
Joined: Fri May 03, 2024 10:46 pm

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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.
Curiosity
Posts: 12
Joined: Fri May 03, 2024 10:46 pm

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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.
promeneur
Posts: 248
Joined: Tue Aug 07, 2012 11:59 am
Hardware configuration: openSUSE Tumbleweed, x86_64,Asrock B760M-HDV/M.2 D4, Intel Core i3-12100, 16 GB, Intel UHD Graphics 730, NVIDIA GeForce GT 1030, Edup-Love EP-9651GS Wi-Fi Bluetooth, multicard reader USB 3.0 startech.com 35fcreadbu3, Epson XP 7100, Headset Bluetooth 3.0 Philips SHQ7300

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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
Image
calxalot
Site Moderator
Posts: 1404
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post by calxalot »

promeneur
Posts: 248
Joined: Tue Aug 07, 2012 11:59 am
Hardware configuration: openSUSE Tumbleweed, x86_64,Asrock B760M-HDV/M.2 D4, Intel Core i3-12100, 16 GB, Intel UHD Graphics 730, NVIDIA GeForce GT 1030, Edup-Love EP-9651GS Wi-Fi Bluetooth, multicard reader USB 3.0 startech.com 35fcreadbu3, Epson XP 7100, Headset Bluetooth 3.0 Philips SHQ7300

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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:
Image
calxalot
Site Moderator
Posts: 1404
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post by calxalot »

Dunno.
Messaged Marcos for help.
calxalot
Site Moderator
Posts: 1404
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post by calxalot »

You built cbang first, right?
promeneur
Posts: 248
Joined: Tue Aug 07, 2012 11:59 am
Hardware configuration: openSUSE Tumbleweed, x86_64,Asrock B760M-HDV/M.2 D4, Intel Core i3-12100, 16 GB, Intel UHD Graphics 730, NVIDIA GeForce GT 1030, Edup-Love EP-9651GS Wi-Fi Bluetooth, multicard reader USB 3.0 startech.com 35fcreadbu3, Epson XP 7100, Headset Bluetooth 3.0 Philips SHQ7300

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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
Image
calxalot
Site Moderator
Posts: 1404
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post by calxalot »

Please try

Code: Select all

scons -C cbang test
You may need to install python module six for the test.
promeneur
Posts: 248
Joined: Tue Aug 07, 2012 11:59 am
Hardware configuration: openSUSE Tumbleweed, x86_64,Asrock B760M-HDV/M.2 D4, Intel Core i3-12100, 16 GB, Intel UHD Graphics 730, NVIDIA GeForce GT 1030, Edup-Love EP-9651GS Wi-Fi Bluetooth, multicard reader USB 3.0 startech.com 35fcreadbu3, Epson XP 7100, Headset Bluetooth 3.0 Philips SHQ7300

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post 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
Image
calxalot
Site Moderator
Posts: 1404
Joined: Sat Dec 08, 2007 1:33 am
Location: San Francisco, CA
Contact:

Re: [tuto] 8.3.5, openSUSE Tumbleweed, installation

Post by calxalot »

I don't know.
I just use

Code: Select all

pip3 install six
in a venv
Post Reply