• 26 Posts
  • 158 Comments
Joined 2 years ago
cake
Cake day: July 2nd, 2023

help-circle









  • I haven’t used an immutable distro, but if it’s a problem, I’m sure that there’s a way to defeat the immutability. If it just mounts the root filesystem read-only, then

    # mount -o remount,rw /
    

    Will probably do it.

    It will work until the next reboot (and I believe it won’t work on Fedora 42 as it now uses composefs), on Fedora Atomic Desktops you have to use layers to add additional packages using rpm-ostree

    (Edit: formatting)







  • Android has always been developed in a closed-source manner by Google engineers, the recent changes only reduces the visibility of ongoing changes and the ability for developers outside of OEMs to contribute to Android (such contributions were already rare).

    This is explained further in this article:

    While some OS components, such as Android’s Bluetooth stack, are developed publicly in the AOSP branch, most components, including the core Android OS framework, are developed privately within Google’s internal branch. Google confirmed to Android Authority that it will soon shift all Android OS development to its internal branch, a change intended to streamline its development process.




  • Most likely they use a translation layer (think Wine, Proton or DXVK) rather than emulation, since the Switch 2 hardware is not completely different from Switch 1 and it’s not as costly as emulation, so I would say neither.

    Edit to clarify emulation vs translation layer:

    Emulation re-creates the entire hardware, while translation layer translates programming instructions intended for one platform to another, just like you would translate “one plus two” from English into “um mais dois” in Portuguese for exemple.

    Since both Switch don’t have completely different hardware (unlike PS3 and PS4 for example) it’s probably easier and much more efficient to simply translate instructions that were specific to Switch 1 into Switch 2 instructions.

    Edit 2: also Yuzu and Ryujinx are designed to emulate Switch on the x86 architecture, and since Switch 2 (and Switch 1) run on ARM, I’m pretty sure these emulators wouldn’t run on Switch 2 without massive re-engineering efforts. Also, as someone else said, these projects are reverse-engineered, it makes much more sense that Nintendo engineers create an emulator from scratch using their own internal documentation of Switch 1 architecture (again, it’s unlikely they went for emulation as I stated above) so the result is much more reliable than both Yuzu and Ryujinx.




  • Terraform is part of a movement called “Infrastructure as Code” (IaC) which allows engineers to define their cloud infrastructure using code.

    This is extremely useful as it allows you to:

    • version infrastructure changes

    • automate resource and configuration creation and management

    • have reproducible environments (think production and staging envs, or deploying a new production env to another datacenter)

    Terraform (and OpenTofu) is different to most IaC project as it is agnostic of cloud providers: you can use it to deploy infrastructure to multiple providers, where their competitors are limited to their own platform (I think of AWS’s Cloud Development Kit)