Err(()).unwrap()

Partisanship is a cancer. Inaction is a choice.

Singular they. Or whatever you like, I won’t take offence.

  • 1 Post
  • 18 Comments
Joined 3 years ago
cake
Cake day: June 24th, 2023

help-circle



  • If you want to dual-boot Windows and Linux, I strongly recommend that you install them on separate devices, and physically disconnect your Linux device. It’s a pain in the ass, but Windows Update has a particular appetite for bootloaders and will eventually eat whatever you have on your EFI partition (including the Linux kernel and ramdisk) and replace it with its own.

    Otherwise, you can use Chris Titus’ winutil script to delay or completely disable updates, and also to debloat the system and disable anti-features like telemetry and the start menu search.

    Not sure if this applies to LTSC, but if you can, install a European edition of Windows (-N suffix) and set an EU location and timezone, it will allow you to more easily uninstall components because of EU regulations.



  • Pray tell, how do you think “they” should optimize game assets? People who have zero experience in game development love to talk about “optimization” like it’s a slider in the options or some challenge that can be solved by throwing resources at it. Modern compression algorithms like Oodle are about as performant and artifact-free as mathematically possible. Everything beyond that is a trade-off between quality, size, and performance.

    But are you thinking about it in abstract? Would you prefer a game to have occasional pop-in, stutter issues, and CPU spikes in exchange for a smaller size?

    (edit) Before you say it, I know there are relatively low-fidelity games that run like ass. Those are usually caused by poorly written game logic or shader codes, which can be refactored, but won’t have an effect on file sizes.


  • As others have said, Tailscale is the most pragmatic solution. It’s a mesh VPN based on Wireguard. It’s implemented in such a way that you don’t need a static IP and don’t need to open any ports on your firewall. The caveat is that you either need to register an account on tailscale.com (it’s free for small-scale use) or set up a self-hosted alternative like Headscale on a VPS. Then you have to install the Tailscale client on each of the hosts you want to access and log into your account.

    Tailscale nodes will be accessible using an internal, private address in the 100.64.0.0/10 address space. You can also set up a split DNS that allows you to access your hosts using a DNS name like hostname.your-tailnet-name.ts.net.





  • Steam doesn’t ship flatpak-packaged games themselves, but games launched from Steam’s flatpak version inherit the runtime environment. This is why you need, for example, to install separate flatpak releases for Mangohud, Gamescope, or various Vulkan things.

    Running Steam-flatpak can sometimes resolve compatibility issues, since it has greater control over which package versions to use compared to native, system-level packages. Arch and Debian-based systems can have wildly different package versions, but if a flatpak app pins a particular version of a dependency, it will always install and load that regardless of the OS packages.

    It’s also important to note that Steam Linux Runtime also uses technologies that were originally developed for Flatpak, particularly container/sandboxing wrappers like Bubblewrap.


  • Err(()).unwrap()@lemmy.worldtoGames@lemmy.worldI Hate Native Linux Games
    link
    fedilink
    English
    arrow-up
    44
    arrow-down
    7
    ·
    edit-2
    7 days ago

    People who downvote because “hurr durr linux best” but have never had to support a cross-platform application should read Raiguard’s experience of maintaining Factorio’s Linux-native build: https://factorio.com/blog/post/fff-408

    “Why don’t most games support macOS and Linux?” is a sentiment I often see echoed across the internet. Supporting a new platform is a lot more than just changing some flags and hitting compile. Windows, macOS, Linux, and the Nintendo Switch all use different compilers, different implementations of the C++ standard library, and have different implementation quirks, bugs, and features. You need to set up CI for the new platform, expand your build system to support the new compiler(s) and architecture(s), and have at least one person on the team that cares enough about the platform to actively maintain it. If you are a video game, you will likely need to add support for another graphics backend (Vulkan or OpenGL) as well, since DirectX is Windows-exclusive.

    I support every solo and small-team developer who prioritizes making the game over maintaining a completely different platform build.