• 0 Posts
  • 162 Comments
Joined 1 year ago
cake
Cake day: July 30th, 2023

help-circle


  • Sadly the so-called “smart TV” is becoming the norm. Companies add unnecessary crap to TVs that’s often as slow as your car’s factory infotainment system, and when they feel like not upgrading the software anymore for security issues in a few years, it’s a permanent security hazard until you disconnect it from the network.

    I have a Vizio TV from several years ago with Yahoo branded smart functions (that should date it) that I need to factory reset because I can’t find the WiFi password erase.






  • I mean… DX 9, 10, and 11 were all released prior to Nadella being CEO/chairman.

    But in software, it’s very commonplace for library versions not to be backwards compatible without recompiling the software. This isn’t the same thing as being able to open a word doc last saved on a floppy disk in 1997 on Word 365 2024 version, this is about loading executable code. Even core libraries in Linux (like OpenSSL and ncurses) respect this same schema, and more strongly than MS.

    Using OpenSSL as an example, RHEL 7 provides an interface to OpenSSL 1.0. But 1.1 is not available in the core OS, you’d have to install it separately. 1.1 was introduced to the core in RHEL 8, with a compatibility library on a separate package to support 1.0 packages that hadn’t been recompiled against 1.1 yet. In RHEL 9, the same was true of OpenSSL 3 - a compatibility library for 1.1, and 1.0 support fully dropped from core. So no matter which version you use, you still have to install the right library package. That library package will then also have to work on your version of libc - which is often reasonably wide, but it has it limits just the same.

    Edit because I forgot a sentence in the last paragraph - like DirectX, VC++, and OpenGL, you have to match the version of ncurses, OpenSSL, etc exactly to the major (and often the minor) version or else the executable won’t load up and will generate a linking error. Even if you did mangle the binary code to link it, you’d still end up with data corruption or crashes because the library versions are too different to operate.



  • DirectX, OpenGL, Visual C++ Redist and many other support libraries in software programs typically require the same major version of the support libraries that they were shipped with.

    For DirectX, that major version is 9, 10, 11, 12. Any major library change has to be recompiled into the game by the original developer. (Or a very VERY dedicated modder with solid low level knowledge)

    Same goes for OpenGL, except I think they draw the line at the second number as well - 2.0, 3.0, 4.0, 4.1, 4.2, 4.3, 4.4.

    For VC++, these versions come in years - typically you’ll see 2008, 2010, 2013, and the last version 2015-2022 is special. Programs written in the 2013 version or lower only require the latest version of that year to run. For the 2015-2022 library, they didn’t change the major version spec so any program requiring 2015+ can (usually) just use the latest version installed.

    The one library that does weird things to this rule is DXVK and Intel’s older DX9-on-12. These are translation shim libraries that allow the application to speak DX9 etc and translate it on the fly to the commands of a much more modern library - Vulkan in the case of DXVK or DX12 in Intel’s case.

    Edited to remove a reference to 9-on-12 that I think I had backwards.











  • This is true of a even some public universities in the US. I can’t remember if it was a rule where I was, but definitely most freshman did just live in dorms.

    Lot of folks brought their own desktops to set up, and we were allowed Ethernet switches to hook up multiple devices - had to be wired. Wireless had two options, WPA# 802.1X or unencrypted captive portal guest. If your device didn’t support that, it had to be wired by policy.

    And they weren’t wrong, I did a radio scan and they had the full sized enterprise access points about as good as they could (with a few low signal exceptions, and the air waves were still overloaded with too many people. The building uplink was perfectly fine, it was just overcrowded wireless.