-
Notifications
You must be signed in to change notification settings - Fork 72
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
Ubuntu 20.x ships outdated glibc version for use with Yad appimage #595
Comments
Wow, thank you for opening this issue! Was this Definitely a good idea to add it to the wiki, I'll add a note later tonight crediting you and linking to this issue. Do you know if there is a straightforward way of updating For Thanks to you I think we can help users that may experience Issues and also this will likely save a lot of developer headaches on our part trying to figure out why Ubuntu users were having trouble. |
I can't say about what happened in the past, as I only now discovered steamtinkerlaunch and its Yad requirement. It does seem likely that Yad updated to require a more modern version of glibc, but I haven't previously attempted installation to confirm or deny, and ran into the issue. Unfortunately, the only means of updating glibc that I can discern is by manually compiling, which can be an absolute nightmare. You can download the latest from the main website here and carefully follow the compile instructions found here. However, this is a massive undertaking, given the size of the project. Ideally, Ubuntu would finally get off their collective duffs and update to a more modern version of glibc, and maybe updating their repo version of Yad in the process. However Ubuntu is extremely resistant to any such requests from their users, so unless something from one of the large contributors causes them to update, they likely won't. The only other option would be to use something other than Yad for the GUI, such as Glade (which uses the GTK toolkit). Which... I rather doubt the devs are willing to do something so drastic. Unfortunately, my talents don't lie in that direction so I'm not really able to meaningfully contribute to such a project, or I'd be tempted to roll up my sleeves and give it a crack. Besides that, the final option I can think of would involve backdating the Yad dependency to one which is compatible with glibc 2.31. I see this as... extremely unlikely, as they wouldn't have updated Yad dependency to a more modern version if they weren't taking advantage of some of the newer features offered. Ubuntu used to be the 'it just works' distro back in the day. But their glacially slow repo updating system (which, granted, at least has the excuse of leaning to stability rather than speed) has bit me more than once while trying to get things done. Maybe I should go try an Arch based distro again, it's been a few years. Heck, if Steam Deck runs an Arch distro, it can't be that hard anymore. |
Update: I've discovered the issue! Mint 20 is based on Ubuntu 20 which uses glibc 2.31. However, Mint 21 is based on Ubuntu 21 which uses glibc 2.34 which WOULD be compatible In other words, anyone running into this issue needs to upgrade their distro to one which is compatible. Manually upgrading glibc is NOT SUGGESTED as it is a core function which can and will break a lot of things if you attempt it. Updated title to clarify the problem. |
Ah, well welcome! And thank you for getting involved, even if it's not under ideal circumstances.
Oh god, yeah I can imagine. Manually compiling something like glibc is... not ideal as you have pointed out.
I entirely agree with you, I could write a book on my... "opinions" on Ubuntu's package versions 😅 But our gripes with Ubuntu won't change that as it stands SteamTinkerLaunch has problems on Ubuntu.
Not a bad suggestion but as you suspected this won't happen in the near-future. To my understanding SteamTinkerLaunch grew in complexity and by the time the realization that there may be a better choice than Yad set in, it was too late to switch. Frostworx, the creator, previously expressed that had he known what STL would become, he would've written it in C++ with something like Qt. Changing to a different toolkit would, as far as I understand, entirely rewriting SteamTinkerLaunch, and so that probably won't happen anytime soon. SteamTinkerLaunch is behemoth written in pure Bash script, over 20,000 lines long 😅
I agree.
OOooh boy this is another subject I could write a book about, but I won't haha. All I'll say is I wholeheartedly agree with your assessment on Ubuntu. Back on topic, I strongly recommend trying an Arch distro - Honestly pure Arch is probably the way to go ( Other than Arch you might want to check out Nobara Linux from GloriousEggroll, it even comes with SteamTinkerLaunch preinstalled! It's based on Fedora but has a lot of newer packages and tweaks (mesa-git for AMD/Intel, automatic latest Nvidia proprietary driver installation for those on nvidia). It's very new but I highly recommend it if Arch puts you off, though it only offers GNOME and KDE desktops officially (both with Wayland support).
Ah!! This is excellent news. I'll update the wiki with this information right away, I think Ubuntu 20.04 is still supported by Canonical but the other Ubuntu flavours I don't think are (I think they only support the latest LTS?). I also think Pop!_OS updates faster, and as you mentioned Mint is updating. KDE neon should also be using the latest 22.04 LTS. Basically on the wiki, I will outline that users must be using Ubuntu 22.04 or later, or a distribution based on Ubuntu 22.04 or later, because Yad now requires Thank you for your research, it is much appreciated! ❤️ |
The Ubuntu wiki has been updated with a warning to users that they must use an up-to-date version of Ubuntu or a distribution based on an up-to-date version of Ubuntu, due to a dependency change with Yad: https://github.com/frostworx/steamtinkerlaunch/wiki/Ubuntu-&-Derivitives I gave you credit for providing the information and linked to this issue. Awesome find, please let me know if any of the information here should be changed in any way. If it looks good, I think we can close this issue 😃 |
Looks good to me. Going to try again after a distro update. I like the idea of what this project is attempting to do, I already use MO2 for things like Fallout New Vegas, so when I came across references to it on protondb while looking for compatibility issues with FO4, I decided to check it out. Closing topic. |
I have a lot of experience using MO2 to mod Fallout: New Vegas, and I recently just updated the ModOrganizer 2 wiki page with more information on getting MO2 set up with STL. Actually, I just finished updating the page when I came across your issue. Also see the Modding wiki page for some potential issues you might run into, although truth be told I haven't run into them in a few months with newer versions of Proton (7.0-4 and later). If, in your modding adventures, you come across a problem that you are able to find a fix to or that you know how to fix, please suggest it so that we can get it documented on the wiki to help other users 😄 Good luck, happy tinkering! |
So, trying to install on Mint and discovered that Mint uses the Ubuntu repos, and the version of glibc in the Ubuntu repos is only 2.31 while the Yad appimage included when using the steamtinkerlaunch yad ai command requires at least version 2.33.
Therefore, users of Ubuntu and Ubuntu-derived distros (like Mint) will need to also update glibc manually in addition to the rest of the stuff since Ubuntu's update schedule appears to be running on geological time scale.
Posting this Issue primarily to inform other Ubuntu-dependent users of this issue which may at first appear to be an issue with Yad (which is a trial in and of itself, thank you for making the appimage to simplify things), and to inform the devs when receiving issues with Yad.
Possibly may wish to include this on the Yad support page to inform new users of this additional step required on these distros. Unfortunately, this isn't an issue that can be as easily resolved with an appimage, and will require user to manually install a compatible version of glibc.
Also possibly check version of glibc during install as a dependency to catch this and inform user?
The text was updated successfully, but these errors were encountered: