-
-
Notifications
You must be signed in to change notification settings - Fork 393
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Switch Linux CI to python docker image #479
Conversation
Have you test that TagStudio works on Debian 11/Rocky 9/Ubuntu 20.04? |
I have not fully tested every functionality but I did make sure that it does start and the GUI shows up on my 20.04 install. I'll give it another go in a fresh new 20.04 VM to make sure it's not just working because of my weird config. EDIT: I tested in a VM with a completely fresh install of Ubuntu 20.04.6. I had to install Also, there's other software like Calibre 6 that's also written in Python and uses Qt6, and that works on Ubuntu 20.04 just fine as well, so I'm not sure what the issue with OBS or related projects is. |
df70463
to
e90c138
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I dont have linux machine to test this, but it looks legit to me 🤷
Getting around to some of these stale issues. I believe the reason we ever used Ubuntu 22.04 as the runner in the beginning is that the 20.04 runner had some sort of issue in building (it has been some time, so details have slipped my mind). Whatever it was, it wouldn't even get to the point of building, which I guess something about this container works around. To gauge the scope of things, here is a list of distros that are still supported and shipping a GLIBC below 3.35:
That essentially leaves Rocky Linux 9 being the sole distro with any significant support window, and no upgrade available, with the reason for its behavior seemingly for the sake of supporting enterprise usage. Unfortunately, we aren't going to shift CI to support a tiny group of users on this system, to give potential issues for everyone else. We do have build information on our documentation page if one does wish to have an executable for their outdated system: https://docs.tagstud.io/install/#building |
Currently, the build CI for Linux uses Github's Ubuntu 22.04 VM image. Ubuntu 22.04 comes with Glibc 2.35, so this means that the Linux builds of TagStudio will only run on distributions that also come with Glibc >= 2.35.
This PR changes that around so Githubs VM image is still being used, but inside that image it uses a Debian Bullseye docker container image with Python 3.12. Bullseye is a fair bit older and comes with Glibc 2.31.
This change should add support for running TagStudio under Debian Bullseye (11), Ubuntu 20.04 (Focal) and Rocky Linux 9 (see #386), and any other Linux distributions coming with glibc < 2.35 and >= 2.31.
I'm not sure if this change will have unintended side effects, but at least for me, TagStudio built with this change will actually start on Ubuntu 20.04 where before it just complained about a wrong Glibc version.
EDIT: Is this the correct target branch or should this target alpha-v9.4? Looks like the CI is a bit different between the two branches.