• 1 Post
  • 74 Comments
Joined 3 years ago
cake
Cake day: June 21st, 2023

help-circle
  • Linux’s own problems is that we have a culture of “tear everything down and make way for progress”, which I personally approve of. However, things keep getting left behind in the rebuilding process and that’s a very real cultural problem. We should have been rebuilding those accessibility tools with everything else and the reason we haven’t is that quite frankly the linux community itself hates disabled people.

    I see no other reason that disabled people would be relying on old and unmaintained code in the first place. That’s not a problem with the build and rebuild attitude, that’s a problem of who we accept into the community. Why is the only wheelchair accessible building 20 years old and full of rotting floorboards?

    Linux is built by the community and always does what it thinks is best for the community. The fact that “what’s best” does not include maintaining the accessibility features is fucking deplorable and that’s a legitimate thing to complain about. But a system shouldn’t need to support legacy junk just to provide accesibility features that should have been core parts of the system from the beginning. In that, no linux developer has the right to look a microslop developer in the eye.



  • .so files are distro dependent. (This is theoretially a good thing. Means debian can distribute a stable version and Arch can distribute a so fresh the hen doesn’t know its missing yet version). If you’re a command line guru you can run a pacman or deb query to find out what package you have to install to add that library at a system level. But oftentimes you can’t just use a different .so because the .so was built to depend on another .so and you basically have to solve a dependency chain by hand. Its a big mess that apt or pacman or even gentoo’s famously obtuse emerge solves for you invisibly.

    as to where to find the ancient version that binary was built for? well My goto is archive.archlinux.org but its an asshole of a process and not for the faint of heart. sometimes you just need to build the library from scratch which is BULLSHIT and I’m not unaware of that fact.

    can you just go to a website and download the .so? yes actually. But it might just decide not to work. This is a problem that individual distros are meant to be solving and do so when distributing open source software. As for with steam games, I think valve solves this problem with the soldier runtime environment which I mentioned above.


  • From a technical standpoint, yes. From a legal standpoint:

    If you dynamically link against an LGPLed library already present on the user’s computer, you need not convey the library’s source

    Welcome to “what did you think was going to happen if you told for profit corporations that if they want to distribute a library in a bundle they also have to provide the source code but if they just provide it linked against an ancient version that nobody will be using in 5 years and don’t even tell you which one they’re 100% in compliance”?

    Could they? yes. Will they? probably not, that takes too much work.

    This is why steam’s own linux soldier runtime environment (Which is availible from the same dropdown as proton) had to become a thing.


  • You know what, that explains how they can exist on linux at all. Because from what I understand, if glibc was GPL and not LGPL, closed source software would basically be impossible to run on the platform. Which… maybe isn’t the best outcome when you think about it. As much as I hate the Zoom VDI bridge, I don’t want “using windows” to be the alternative.

    and yeah, from the source you provided, I can see why they don’t statically link. “If you dynamically link against an LGPLed library already present on the user’s computer, you need not convey the library’s source”. So basically if they bundle glibc then they need to provide the glibc source to users on request but if they just distribute a binary linked against the system one then that’s their obligations met.

    Welcome to “complying with the LGPL for the terminally lazy”, I’ll be your host “Every early linux port of a steam game!”


  • As far as I know link systemcalls are set up to look in the working directory first

    Not so much but that’s easily fixed with an export LD_LIBRARY_PATH=.

    Why would statically compiling it violate the GPL?

    Because you’ve created something that contains compiled GPL code that can’t be untangled or swapped out. The licence for the Gnu C Compiler is basically designed so you can’t use it to build closed source software. Its a deal with a communist devil. If you want to build a binary that contains GPL code (which is what glibc is) then you have to make everything in that binary licensed under a GPL compatible license. That’s what the whole “Linux is a cancer that attaches itself in an intellectual property sense to everything it touches” quote from Steve Balmer was in aid of. And he was correct and this was literally the system operating as intended.

    Dynamic linking is some looney tunes ass “see, technically not violating the GPL” shit that corporations use to get around this.


  • No. Its not about driving away the capitalists. Its about forcing them to bend to the community. Its not “Linux has to lack a stable ABI to keep the capitalists away” its “Linux is not here to baby rich corporations and exempt them from rules that literally nobody including little timmy who’s 14 and just submitted his first PHP patch has a problem with”. This is developers who are used to living in houses trying to set up shop in an apartment complex and then finding out different rules apply and being colossal babies about it.

    The point of the GNU foundation was to destroy the concept of closed source software. Which is a completely justified response to Xerox incorporated telling you your printer is no longer supported and you just have to buy a new one. Capitalists are welcome. Anti right to repair people can fuck right off and if we had the right to repair their software we wouldn’t have this problem in the first place because someone else would have already fixed it.


  • Delilah (She/Her)@lemmy.blahaj.zonetolinuxmemes@lemmy.worldNo comment
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    2
    ·
    3 days ago

    The core principal of GNU from which every other principal is derived is “I shouldn’t need an ancient unmaintained printer driver that only works on windows 95 to use my god damned printer. I should have the source code so I can adapt it to work with my smart toaster”

    If an app is open source then I’ve almost never encountered a situation where I can’t build a working version. Its happened to me once that I remember. A synthesia clone called linthesia. Would not compile for love nor money and the provided binary was built for ubuntu 12 or something.

    Linux was probably ready for the 64-bit appocalypse even before Apple for this exact reason. Anything open source will just run, on anything, because some hobbiest has wanted to use it on their favourite platform at some point. And if not, you’d be surprised how not hard it is to checkout the sourcecode from github and make your own port. Difficult, but far from impossible.

    Steam games do not distribute source code, which means they break, and when they break the community can’t fix them. They can’t statically link glibc because that would put them in violation of the GPL (as far as I’m aware anyway). They are fundamentally second class citizens on linux because they refuse to embrace its culture. FOSS apps basically never die while there’s someone to maintain them.

    Its like when American companies come to Europe and realise the workers have rights and then get a reputation as scuzzballs for trying to rules lawyer those rights.