To resize an Ubuntu VM running with QEMU+KVM+Libvirt, with a raw disk using LVM, you can follow these simple steps:
Articles
WebRTC with Pion
For a project I’ve been using Pion WebRTC which is a Golang implementation of the WebRTC API. It is easy to set up and provides great performance. Some tips when using Pion WebRTC, or WebRTC in general: Streaming with Pion WebRTC Once you’ve done all the peer/ICE handling, you can send video/audio. Below is the… Continue reading WebRTC with Pion
macOS Virtualization.Framework
The macOS Virtualization.Framework allows you to run up to 2 macOS VMs (Virtual Machines) on Apple hardware. The limit of 2 VMs per machine is due to Apple’s EULA, explicitly setting a maximum of 2 copies of macOS per Apple machine. The framework, which runs on Apple Silicon, comes with paravirtualized graphics which means using… Continue reading macOS Virtualization.Framework
Using ditto on macOS
Recently I was investigating why this command returned a not authorised response: Turns out because I zipped the .app file like this: This causes spctl to no longer find the correct notarized details. Using ditto is a better solution: Oh and by the way, do not use jar xf to unzip the file, instead use… Continue reading Using ditto on macOS
TCP MSS clamping with iptables for IPSec tunnel
When routing traffic through a (IPSec) tunnel, an endpoint might need to do mss clamping if you are experiencing MTU issues. For example, you are using a site-to-site VPN network, with a specific gateway as endpoint. When browsing websites through the tunnel, some websites might not load properly. An example, using iptables to fix this… Continue reading TCP MSS clamping with iptables for IPSec tunnel
Multiple default gateways on Linux
Suppose you have a Linux machine doing IP forwarding (net.ipv4.ip_forward=1). Depending on the incoming traffic, you might want to forward the packets to different gateways. With just one gateway, you can simply add (or replace) the default gateway:ip route add default via x.x.x.x If you want to set a default gateway for a specific (incoming)… Continue reading Multiple default gateways on Linux
Electron with custom Chromium build
I was looking into a way to customise the Chromium code in an Electron app. As it turns out, it’s not as difficult as it might sound, though it requires some patience (mainly because building Chromium takes a lot of time, RAM and CPU). To get started, make sure you have installed depot_tools from Google.It’s… Continue reading Electron with custom Chromium build
VMWare Fusion – modify DHCP
If you are running VMWare Fusion, chances are you might have created your own custom network adapter. In case you’re running an (authoritative) DHCP server in this subnet, you might see interference with VMWare Fusion’s own DHCP server. You can easily disable the Fusion DHCP server by following these steps (no Fusion restart required): set… Continue reading VMWare Fusion – modify DHCP
Automated Browser Testing with Puppeteer
If you are interested in browser automation, you probably have heard of Puppeteer. Puppeteer is a NodeJS library, which connects with Chromium browsers through the DevTools protocol. Puppeteer will send the same messages back and forth just like the Chrome DevTools do. By doing that, it allows Puppeteer to control and interact with the Chrome… Continue reading Automated Browser Testing with Puppeteer
Removing ‘System Volume Information’ from a NTFS Volume
There’s a quick and easy way to remove the ‘System Volume Information’ folder from a NTFS disk. Run these commands in an elevated shell: