Audio from Linux apps in an OrbStack VM routes over TCP to PulseAudio on macOS, which outputs via CoreAudio.
Linux app → PulseAudio client → TCP:4713 → PulseAudio server (macOS) → CoreAudio → speakers
This guide documents how to enable SSH access from OrbStack Linux guest VMs to the macOS host. The standard "Remote Login" toggle in System Settings is necessary but not sufficient — macOS uses launchd socket activation for sshd which only binds to the loopback interface, making it unreachable from guest VMs on the OrbStack bridge network.
The solution is to run a second sshd instance via a custom LaunchDaemon that binds to all interfaces.
Sheriff (00:00): Well, good morning. Uh, thank you for being here today. We are here today to talk about an incredible story, a heroic story, uh, something that you may see on TV that they would make movies about. But this story involves a young lady named Tiffany Slayton who on her journey through the Sierra Nevadas here in Fresno County, it is truly an incredible story of perseverance, determination. And survival. Uh, this young lady from about April 14th, all the way through Easter was on her way up through the shaver and Huntington Lake areas. At one point, uh, she spoke with some people at Huntington Lake near the China Peak Landing and talked to some folks, and, uh, she was on her electric bike with all of her equipment, and there were some
| Sheriff (00:00): Well, good morning. Uh, thank you for being here today. We are | |
| here today to talk about an incredible story, a heroic story, uh, something | |
| that you may see on TV that they would make movies about. But this story | |
| involves a young lady named Tiffany Slaton who on her journey through the | |
| Sierra Nevadas here in Fresno County, it is truly an incredible story of | |
| perseverance, determination. And survival. Uh, this young lady from about April | |
| 14th, all the way through Easter was on her way up through the shaver and | |
| Huntington Lake areas. At one point, uh, she spoke with some people at | |
| Huntington Lake near the China Peak Landing and talked to some folks, and, uh, | |
| she was on her electric bike with all of her equipment, and there were some |
| {"version": 1, "uid": 11836529702412328832, "layout": [[["KC_GRAVE", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5"], ["KC_ESCAPE", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T"], ["KC_TAB", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G"], ["KC_LSHIFT", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B"], ["KC_LGUI", "KC_LALT", "KC_LCTRL", "MO(1)", "KC_SPACE", "KC_LBRACKET"], ["KC_GRAVE", "KC_0", "KC_9", "KC_8", "KC_7", "KC_6"], ["KC_BSPACE", "KC_P", "KC_O", "KC_I", "KC_U", "KC_Y"], ["KC_QUOTE", "KC_SCOLON", "KC_L", "KC_K", "KC_J", "KC_H"], ["KC_RSHIFT", "KC_SLASH", "KC_DOT", "KC_COMMA", "KC_M", "KC_N"], ["KC_RGUI", "KC_RALT", "KC_RCTRL", "MO(2)", "KC_ENTER", "KC_RBRACKET"]], [["KC_NO", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5"], ["KC_GRAVE", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5"], ["KC_TRNS", "LSFT(KC_1)", "LSFT(KC_2)", "LSFT(KC_3)", "LSFT(KC_4)", "LSFT(KC_5)"], ["KC_TRNS", "KC_EQUAL", "KC_MINUS", "LSFT(KC_EQUAL)", "LSFT(KC_LBRACKET)", "LSFT(KC_RBRACKET)"], ["KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS"], ["KC_F11", "KC_ |
[ Update 2020-05-31: I won't be maintaining this page or responding to comments anymore (except for perhaps a few exceptional occasions). ]
Most of the terminal emulators auto-detect when a URL appears onscreen and allow to conveniently open them (e.g. via Ctrl+click or Cmd+click, or the right click menu).
It was, however, not possible until now for arbitrary text to point to URLs, just as on webpages.
| DEBUG probe_rs::config::registry > Searching registry for chip with name MIMXRT1060 | |
| DEBUG probe_rs::config::registry > Exact match for chip name: MIMXRT1060 | |
| WARN probe_rs::config::target > Using custom sequence for MIMXRT10xx | |
| DEBUG jaylink > libusb 1.0.25.11696 | |
| DEBUG jaylink > libusb has capability API: true | |
| DEBUG jaylink > libusb has HID access: true | |
| DEBUG jaylink > libusb has hotplug support: true | |
| DEBUG jaylink > libusb can detach kernel driver: true | |
| DEBUG jaylink > open_usb: device descriptor: DeviceDescriptor { | |
| bLength: 0x12, |
| DEBUG probe_rs::config::registry > Searching registry for chip with name MIMXRT1060 | |
| DEBUG probe_rs::config::registry > Exact match for chip name: MIMXRT1060 | |
| WARN probe_rs::config::target > Using custom sequence for MIMXRT10xx | |
| DEBUG jaylink > libusb 1.0.25.11696 | |
| DEBUG jaylink > libusb has capability API: true | |
| DEBUG jaylink > libusb has HID access: true | |
| DEBUG jaylink > libusb has hotplug support: true | |
| DEBUG jaylink > libusb can detach kernel driver: true | |
| DEBUG jaylink > open_usb: device descriptor: DeviceDescriptor { | |
| bLength: 0x12, |
| $ RUST_LOG=debug,probe_rs::probe=info ../target/release/probe-rs-cli download --disable-progressbars --chip MIMXRT1060 --protocol jtag ~/src/hello-teensy/target/thumbv7em-none-eabihf/debug/hello-teensy | |
| DEBUG probe_rs::config::registry > Searching registry for chip with name MIMXRT1060 | |
| DEBUG probe_rs::config::registry > Exact match for chip name: MIMXRT1060 | |
| WARN probe_rs::config::target > Using custom sequence for MIMXRT10xx | |
| DEBUG jaylink > libusb 1.0.25.11696 | |
| DEBUG jaylink > libusb has capability API: true | |
| DEBUG jaylink > libusb has HID access: true | |
| DEBUG jaylink > libusb has hotplug support: true | |
| DEBUG jaylink > libusb can detach kernel driver: true | |
| DEBUG jaylink > open_usb: device descriptor: DeviceDescriptor { |
| wget https://raw.githubusercontent.com/osandov/osandov-linux/58e0c5f1bc7f0866ce7a18bcb67f3eabf4be7868/scripts/btrfs_map_physical.c | |
| gcc -O2 -o btrfs_map_physical btrfs_map_physical.c | |
| sudo mount /dev/mapper/data-root /mnt | |
| sudo btrfs sub create /mnt/@swap | |
| sudo umount /mnt | |
| sudo mkdir /swap | |
| sudo mount -o subvol=@swap /dev/mapper/data-root /swap | |
| sudo touch /swap/swapfile | |
| sudo chmod 600 /swap/swapfile |