Skip to content
This repository has been archived by the owner on Apr 4, 2024. It is now read-only.

Updated to Python3 / Gtk3 for >= Ubuntu 20.04 support #70

Open
wants to merge 114 commits into
base: master
Choose a base branch
from

Conversation

cdberkstresser
Copy link

This is a fairly intense update from Python2 / Gtk2 to Python3 / Gtk 3. The Glade xml file is completely gtk3 with no deprecated widgets and should allow easier maintenance into the future without the backward dependencies that are being phased out like python-support and python-gtk2.

@cdberkstresser cdberkstresser marked this pull request as ready for review April 14, 2020 19:00
@cdberkstresser cdberkstresser changed the title Updating to Python3 / Gtk3 for >= Ubuntu 20.04 support Updated to Python3 / Gtk3 for >= Ubuntu 20.04 support Apr 15, 2020
ffissore and others added 3 commits April 19, 2020 15:14
Merging in changes from ffissore

Wrapping labels of slot dialog
Converting slot option `value` to string, in order to avoid `ValueError`
fah/Client.py Outdated Show resolved Hide resolved
@ffissore
Copy link

I'll jot down here two things I've found. Unless you fix them in the meanwhile, I'll fix them asap

  • when saving configuration with a changed username, a b is prepended. this is due to unicode_escape. Since string_escape is apparently gone, a simple value.replace('\'', '\\\'') should do
  • when saving configuration, the cause is lost (it becomes an empty string)

unicode_escape replacement
saving cause now
attaching donor, team, and cause to combo box model indices correctly in glade
@cdberkstresser
Copy link
Author

@ffissore I believe those are fixed now :)

@nkorell1970
Copy link

nkorell1970 commented Feb 27, 2022

I would like to commend all who have worked on this effort to fix what so desperately needed doing. I am a self proclaimed newbie who is trying to continue to run a Ubuntu box for the sake of FaH. Needless to say I ran into the Python dependency wall and have been dead in the water for months. What is the correct sequence of how to install the FaH software and also correct the dependencies. Could someone please post a quick set of instructions or point me in the direction of what someone may have already completed? I would like to correctly utilize this code. I have a fresh install of 20.04.

@TheFlipside
Copy link

I would carefully like to ask about the status of this, there are multiple PR which all aim for the transition to Python3 but the overall process seems to be stalled.

@Artoria2e5
Copy link

I would carefully like to ask about the status of this, there are multiple PR which all aim for the transition to Python3 but the overall process seems to be stalled.

This is the PR to work on, because it also does Gtk3 transition. Last time I checked it works fine on Windows. You can PR the PR at https://github.com/cdberkstresser/fah-control/pulls.

I'm actually pretty surprised to see it in my notification again!

@cdberkstresser
Copy link
Author

cdberkstresser commented May 18, 2023

@Artoria2e5 I don't work for FaH, so just my personal guess here. I'm expecting FAHControl itself to obsolete and die along with this PR. Their beta is moving to a more web ui direction bundled with the client. I just added a bit to this PR recently to keep FAHControl usable until that happens. Hope it helps and happy folding!

@TheFlipside
Copy link

if FAHControl would become obsolete and die as you describe I won't let that happen and would personally fork it and continue to make it work

@kbernhagen
Copy link
Contributor

FAHControl would require major changes to support v8, which uses asynchronous JSON over websockets.

Your efforts might be better spent contributing to HFM, once it supports v8. Of course, you would need to be happy using C#.

https://github.com/harlam357/hfm-evo

@FalconFour
Copy link

Going back a layer, I guess the question is - instead of kicking along this old software along, what use cases does it serve that the web interface (which seems to be the primary point of development) doesn't? I would imagine that the web UI dev team would be well served to listen closely to the use cases of people still needing FAHControl in order to integrate those features and use cases into the Web UI.

For me, it's when doing more advanced setup of dedicated systems, and controlling/managing multiple systems in a dashboard - maybe you could call it an "enterprise interface" for larger-scale dedicated FAH systems. The web interface feels like Little Tikes / Fisher-Price compared to the controls available in FAHControl, and that's why I immediately close the web interface and open up FAHControl whenever I work with FAH. There's a LOT you can't see or configure in the web interface, especially when working with weird high-performance setups.

If there were better controls available in the web interface, I would imagine none of us would even be trying to shoehorn Python2 into a modern system to get FAHControl running.

If there is no such effort underway already to bring more advanced configuration and diagnostics to the web UI, then yeah, definitely, there's a need to port FAHControl into the current decade. Just wondering where the team's priorities are.

@TheFlipside
Copy link

Ah yes I see, well I don't wanna be an obstacle in the way of modern progress but I do wish for an application which offers the same functionality as FAHControl today; mostly to be able to monitor and control multiple systems in one UI, I don't want to have to open multiple browser tabs to get access to all my systems.
And as you said it should also offer the possibilities to advanced settings like currently possible with FAHControl.

@Wedge009
Copy link

...instead of kicking along this old software along, what use cases does it serve that the web interface (which seems to be the primary point of development) doesn't?

I never really used the web interface as I found it unreliable/unresponsive. Also, I mainly use the 'advanced' interface because I can monitor multiple hosts from my main computer - I haven't seen if the web interface can do that.

I admit I only discovered this repository today - since the most recent stable release was in October 2020 (that's nearly three years ago at time of writing), I thought there wasn't any active development on the FAH platform. I haven't read through all the comments here but are there major reasons for this not yet being merged (and a new release made available)? I saw the comment that this branch can be run manually against Python 3, but for Ubuntu 22.04 I've just been manually installing old Python 2 packages from older Ubuntu releases to continue using FAH on Linux. I suppose that may not be feasible by the time 24.04 comes along (and that's less than a year away).

@jcoffland
Copy link
Member

Current development efforts are focused on the new v8 client which is in beta. https://github.com/FoldingAtHome/fah-client-bastet & https://github.com/FoldingAtHome/fah-web-client-bastet

@Wedge009
Copy link

Thanks for the pointer.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.