GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Conversation

Notices

  1. Embed this notice
    aaron (fireborn@dragonscave.space)'s status on Sunday, 11-May-2025 20:46:44 JST aaron aaron
    in reply to

    QEMU is amazing.
    QEMU is powerful.
    QEMU is the most nightmarish, under-documented, user-hostile hellstack you’ll ever love to hate.
    It’s like vi and sed had a baby that speaks binary, communicates only in flags, and will boot your OS if you can decipher its riddles fast enough to stop it from self-destructing.
    It is everything great and terrible about Linux condensed into one program. It’s an emulator. A hypervisor. A debugger. A self-inflicted injury. And a perfectly accurate simulation of how much it sucks to try and understand computers.

    In conversation about a month ago from gnusocial.jp permalink
    • Haelwenn /элвэн/ :triskell: likes this.
    • Embed this notice
      aaron (fireborn@dragonscave.space)'s status on Sunday, 11-May-2025 20:46:45 JST aaron aaron

      QEMU is one of those pieces of software where, on the surface, it looks amazing. It emulates everything. It supports every architecture. You can boot a whole-ass operating system inside a YAML file on a toaster if you want.
      But the moment you try to actually use it, it becomes immediately clear that QEMU was not written so much as it emerged, fully formed, from the darkest, deepest corner of an obsolete instruction set manual written in blood and Hungarian notation.
      You want to do something simple like “boot an ISO”? Ha. Buckle the fuck up. You're about to write a command line 300 characters long, full of flags that mean nothing, do everything, or secretly contradict each other depending on the phase of the moon.
      -enable-kvm -cpu host -smp 4 -m 4096 -nic user -device e1000 -drive file=wtf.img,format=raw,if=virtio,index=0 -boot d -cdrom arch.iso -vga std
      That’s just the beginner tier. You want UEFI? You better find the exact OVMF blob hidden deep in some /usr/share/qemu/edk2/OVMF.fd directory that varies per distro and isn’t documented anywhere. Want secure boot? Fuck you. You’re on your own.
      Need sound? No you don’t. QEMU’s audio stack is a cryptic abomination wrapped around ancient ALSA, PulseAudio, and maybe JACK if you invoke it while holding a sacrificial chicken. Half the time you get silence, the other half you get full-volume digital screaming because your sample rate was wrong by 1Hz and QEMU doesn't clamp that shit.
      Want networking? Okay, now you’re really in trouble. Because QEMU supports ten different networking models and none of them are sane. There’s -nic user, which works but can’t access your LAN. There’s -netdev bridge, which requires root, two shell scripts, and a master's degree in Linux networking internals. And then there's -net tap, which may or may not work depending on what libvirt decided to vomit into /etc/qemu/bridge.conf three years ago.
      You want USB passthrough? Cool. Here's how you do it:
      1.
      Run lsusb
      2.
      Pray
      3.
      Try -device usb-host,hostbus=3,hostport=2
      4.
      Watch the guest kernel panic
      5.
      Cry
      And the documentation? HA. It’s not documentation—it’s a vague whisper of meaning. The man pages are 1,200 lines long and still manage to explain nothing. “Use -device” they say. What devices? What does virtio-scsi-pci mean? What is a ich9-usb-ehci1? No one knows. They’re not listed. They’re not described. The only way to find them is to run qemu-system-x86_64 -device help and scroll through pages of raw output, most of which are undocumented internal components that will cause instant death if you use them wrong.
      QEMU is not a virtual machine manager. QEMU is a puzzle box built by cursed engineers, and your prize for solving it is maybe, maybe, getting a VM to boot without errors in the logs. Not cleanly. Not efficiently. Just... booted. That’s your win condition.

      In conversation about a month ago permalink
      Polychrome :blabcat: repeated this.

Feeds

  • Activity Streams
  • RSS 2.0
  • Atom
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.