From dc5e08c9f3f533c3ac5231682920e07114c299fc Mon Sep 17 00:00:00 2001 From: Michi Mutsuzaki Date: Mon, 16 Dec 2024 16:28:05 +0000 Subject: [PATCH] docs: Add dev setup instructions for Apple silicon Macs Signed-off-by: Michi Mutsuzaki --- .../contribution-guide/development-setup.md | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/docs/content/en/docs/contribution-guide/development-setup.md b/docs/content/en/docs/contribution-guide/development-setup.md index aef25a45833..88829bc65d5 100644 --- a/docs/content/en/docs/contribution-guide/development-setup.md +++ b/docs/content/en/docs/contribution-guide/development-setup.md @@ -130,6 +130,28 @@ If you are getting an error, you can try to run `sudo launchctl load /Library/LaunchDaemons/org.virtualbox.startup.plist` (from [a Stackoverflow answer](https://stackoverflow.com/questions/18149546/macos-vagrant-up-failed-dev-vboxnetctl-no-such-file-or-directory)). +## Local Development with Apple Silicon Mac + +Use [Lima](https://lima-vm.io/) to create a Linux VM if you are using a Mac with +Apple silicon. For example: + +```shell +brew install lima +limactl create --tty=false --name=tetragon \ + --set='.vmType = "vz" | .nestedVirtualization = true | .mounts[] |= (select(.location == "~") | .writable = true)' +limactl start tetragon +limactl shell tetragon +sudo add-apt-repository -y ppa:longsleep/golang-backports +sudo apt update +sudo apt install -y golang-1.23 libelf-dev libcap-dev make +export CONTAINER_ENGINE=nerdctl +export PATH=$PATH:/usr/lib/go-1.23/bin +make tetragon-bpf tetragon tetra +``` + +Note that this installs Golang 1.23. You may want to install a newer version +if it's available in https://launchpad.net/~longsleep/+archive/ubuntu/golang-backports. + ## What's next - See how to [make your first changes](/docs/contribution-guide/making-changes).