How I feel when symlinking a library to act as the "correct" version so my executables stop nagging. Spongebob angrily shouting "You are going to load my shared libraries, and you are going to like it!"

top 50 comments

sorted by: hot top controversial new old
[–] 75 points 1 month ago (27 children)

What about setting up a new environment correctly instead?

Says the man that just copied and pasted, then checked in 800mb of shitty angular dependencies just to get Jenkins to be able to build his inherited project.

It's ok, they don't pay me enough to support a family and don't give a shit about this project, and it's for internal use.

  • source
  • hideshow 27 child comments
  • [–] 78 points 1 month ago (24 children)

    That’s so stupid.

    downloads and runs entire Linux distro just to run a python script without managing dependencies

  • source
  • parent
  • hideshow 24 child comments
  • [–] 9 points 1 month ago (23 children)
  • [–] 32 points 1 month ago (22 children)
  • [–] 6 points 1 month ago (20 children)

    ok sure. but FYI, venv is basically the same thing if it's python based.

  • source
  • parent
  • hideshow 20 child comments
  • [–] 35 points 1 month ago (19 children)

    Yeah, venvs are the answer to β€œwhy is that folder 8gb?”

    Containers are the answer to β€œwhy is my hard drive completely full”

  • source
  • parent
  • hideshow 19 child comments
  • [–] 8 points 1 month ago (13 children)

    Containers are the answer to β€œwhy is my hard drive completely full”

    Hold up, are people just out there not using Alpine for a container base image?

  • source
  • parent
  • hideshow 13 child comments
  • [–] 5 points 1 month ago (8 children)

    What's the alpine advantage here?

  • source
  • parent
  • hideshow 8 child comments
  • load more comments (2 replies)
  • [–] 3 points 4 weeks ago

    Yeah, venvs are the answer to β€œwhy is that folder 8gb?”

    Containers are the answer to β€œwhy is my hard drive completely full”

    They are both the answer to "why is my project not working here where it's working there" and "why do I need 17 copies of libc in their own little soft jails?"

  • source
  • parent
  • load more comments (1 reply)
  • [–] 9 points 1 month ago (1 child)

    Jenkins

    This is where I spat my tea: not because jenkins is super old but because I still have residual PTSD from using it.

    My sympathies.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 4 points 1 month ago

    not because jenkins is super old

    I mean, I just updated the wallpaper on that machine to be Ask Jeeves for maximum millennial retro points for when I use it and can tell at a glance which stupid VM I am looking at.

  • source
  • parent
  • [–] 35 points 1 month ago (23 children)

    Meanwhile as a guix+nix user i can just build it against that old library version because nothing can conflict with each other anyway

  • source
  • hideshow 23 child comments
  • load more comments (17 replies)
    [–] 25 points 1 month ago (3 children)

    I remember when games would't work with wine, complaining about some dll, I would get it from some random shady site and drop into the wine system dir. Some of the times, it worked, to even my own surprise

  • source
  • hideshow 3 child comments
  • [–] 37 points 1 month ago (2 children)

    "DLL finder", holy shit I remember tools like that... God, now that I know how shared libraries work, that's kinda terrifying people just saw that error message and downloaded whatever the fuck they found whereever they found it...

    Must be how some malware spread.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 17 points 1 month ago
    [–] 15 points 1 month ago

    In my experience, this works about 25% of the time and is cause for extreme nervousness about what will happen if it tries to call a function that isn't actually present in the version it has been fooled into accepting.

    It's never actually formatted my entire system even when it's gotten me a little further, perhaps to a different sort of crash, but that fear is always there.

  • source
  • [–] 12 points 1 month ago (1 child)

    Apparently sometimes you have to remove symlinks to make programs load. I had a very weird bug that made a library fail to load even if the symlink was good. I wrote a bug report to bugs.debian.org and they told me to remove the symlink. That fixed it, wtf

  • source
  • hideshow 1 child comment
  • [–] 10 points 1 month ago

    Daily nixos behaviour

  • source
  • [–] 8 points 1 month ago (2 children)

    The most junk hack I ever did (that somehow worked) was replacing a Tensorflow 1.x library set with the Tensorflow 2.x library set and keeping the original 1.x symlink so that the software using it would think it's still the 1.x. .so file lol.

    I presume the API had some deprecated fallback for poorly migrated software, which is why it worked without complaints.

    Also bazel is by far the worst build system I have ever used.

  • source
  • hideshow 2 child comments
  • [–] 9 points 1 month ago* (last edited 1 month ago) (1 child)

    COM solved all this stuff over 30 years ago. When you're making breaking changes to an interface, you create a new one while still keeping the old one around (at least for a while). Both interfaces are shipped with the same DLL. Software written for the old interface continues to work, while newer software can take advantage of the extra features in the new interface.

    You can do something kinda similar in Linux with sonames, like libfoo.so.1, libfoo.so.2, etc. but there's still a bunch of use cases where you need to use LD_LIBRARY_PATH, and they're entirely separate libraries vs the COM approach where both interfaces are in a single library.

    Modern software keeps poorly reinventing the same concept. Software like Home Assistant has breaking changes between releases because they don't have a consistent interface.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
  • [–] 8 points 1 month ago*

    CKAN (mod manager for kerbal space program) created a multi month long battle for me because it started making copies of the original game for mod installs with symlinks to the original game files rather than just copying it outright, this made it impossible to boot certain mods because part of their first time set up was overriding files. Eventually I realized what the problem was and just manually copied the files in to the folder before loading up the mods for the first time.

    WHICH IS INFURIATING! The whole reason I made new game installs was so that shit could be overwritten without breaking the base instal! WHY THEY HELL WOULD IT DEFAULT TO SYMLINKS FOR THAT?

  • source
  • [–] 6 points 1 month ago

    Its like the Gnome extension not available for your version, so you just edit the file to have your version in its list. Usually works

  • source
  • [–] 5 points 1 month ago (3 children)

    Guys do not do this, it's gonna cause a mess further down the line.

    "The problem with creating these links is that they aren't managed in any meaningful way. If that library is removed, the link becomes broken. If the library is upgraded, it may encounter an error because of the link that it doesn't expect to be there."

    https://askubuntu.com/questions/461706/is-it-okay-or-not-to-symlink-libraries-to-overcome-cannot-open-shared-object

  • source
  • hideshow 3 child comments
  • load more comments (3 replies)
    [–] 5 points 1 month ago (1 child)

    Me injecting the makemkv libraries into handbrake/ vlc

  • source
  • hideshow 1 child comment
  • load more comments (1 reply)
    [–] 4 points 1 month ago

    Reminds me of when I abused LD_LIBRARY_PATH and installed a Linux from scratch distro on a headless test server that no one was using. I got it all the way to x11 forwarding a full i3 environment without super user privileges.

  • source
  • [–] 4 points 1 month ago (1 child)

    Why do we even need dynamic linking if we have deduplicating file systems?

  • source
  • hideshow 1 child comment
  • load more comments (1 reply)
    [–] 3 points 1 month ago

    What in ln - s good name are you suggesting. Any and all uses of ln - s /usr/lib/something.so.7 /usr/lib/something.so.6 is merely accidental!

  • source
  • [–] 3 points 1 month ago (19 children)

    As a lay-person, reading these memes and comments, and understanding nothing, is probably the biggest factor that's made me decide that, while I hate windows, I'll never feel comfortable using Linux. I mean, seriously, how much of the time are you frustratingly troubleshooting stuff? I just want something like Windows that won't shove ads and ai bullshit at me and won't brick my laptop after updates 😭

  • source
  • hideshow 19 child comments
  • [–] 11 points 1 month ago (9 children)

    Let's just say that Linux invites tinkering, and there are consequences. If you install a mainstream (fedora), reliable (fedora) distro, and just do normal stuff, it's unlikely you'll encounter more issues than Windows. Or even a tenth of the issues.

  • source
  • parent
  • hideshow 9 child comments
  • [–] 4 points 1 month ago (1 child)

    For me, the difference between Windows and Linux is that when I encounter a weird issue on Windows, I might decide to give up, while on Linux, I can always dig deeper if I have enough time

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 1 month ago

    I have a pair of old-ish but expensive Sony bluetooth over-the-ear headphones. On Windows, their microphone doesn't work. I've searched the web and apparently, that's just it, nothing I can do.

  • source
  • parent
  • load more comments (7 replies)
  • [–] [S] 6 points 1 month ago (1 child)

    If it makes you feel any better, everytime I had to do this was because I was going out of my way to fix a linux game I compiled myself or some service I hacked together. I'm 99% sure you can have a hassle-free linux desktop experience if you follow the standard way your distro suggests of doing things. Have you tried testing the waters with a linux live usb stick yet?

  • source
  • parent
  • hideshow 1 child comment
  • [–] 4 points 1 month ago

    To flip that on it's head, if you do have computer issues, would you rather get help from someone who laughs at these silly memes or a huge ai powered bureaucracy that prioritises upselling and closing tickets?

  • source
  • parent
  • load more comments (4 replies)
    load more comments
    view more: next β€Ί