Skip to content

Project Setup

TylerV edited this page Sep 24, 2025 · 19 revisions

STILL UNDER CONSTRUCTION (if any issues persist, edit the issue + fix under troubleshooting

Ubuntu Setup:

What is Ubuntu and why do we use it?

Ubuntu is a Linux distribution, a ready-to-use operating system that is built on top of the Linux kernel. For the project, we will be using Ubuntu 22.04.3 (Codenamed Jammy Jellyfish) as our main OS, for many reasons:

  1. ROS2 is a library practically built to be compatible with Ubuntu.
  2. Ubuntu is the most common choice when it comes to messing around with the flight stack.
  3. Linux distros (distributions) are open source, meaning they can be used by anyone and are open to modifications, with excellent support.

How to set it up

Mac

For Macs, we will be using a virtual machine. A virtual machine takes storage on the disk and dedicates it to installing Ubuntu. The emulator we will be using is called UTM, which can be downloaded from this link.

Once downloaded, we want to ideally virtualize the OS (virtualize because we will use the same architecture image), so download the live server ubuntu jammy arm64 here.

once the .iso file is downloaded, open UTM, and click on "Add virtual machine" -> "virtualization" -> "Linux".

Screenshot 2025-09-16 at 2 51 32 PM

In the boot iso image section, search and insert the .iso file you just downloaded. Then, select an amount of memory and storage you want to allocate to the virtual machine. I have 8GB memory andd 32GiB storage. Then, click continue until you arrive at the summary section, where you can name your VM.

Once that is done, click save. The virtual machine should appear on your left. click on the start button, and wait. You will see what is called the GRUB boot menu. Select the "Try or install Ubuntu".

Screenshot 2025-09-17 at 11 34 15 PM Screenshot 2025-09-23 at 11 23 09 PM

You will be prompted through a bunch of settings. Do not update the installer, because we want to stay on 22.04, not 25.04. These are my settings:

  • Ubuntu Server (NOT minimized), no third party drivers
  • for mirror configurations, wait a bit until it fetches the ports, then continue
  • use entire disk and set up this disk as an LVM group (this resizes partitions dynamically without reboot)
  • no need to install openSSH (doable later)

After waiting, click on the option "reboot now". Screenshot 2025-09-23 at 11 42 20 PM

Then, go back to UTM menu window, and go down to the CD/DVD option. Click on "clear". If we dont do this, rebooting the vm will just run the startup bootloader. Then, go back to the VM window and click on the restart vm button in the top left.

Screenshot 2025-09-23 at 11 44 15 PM

You are now launching a live server image of Ubuntu 22.04!

Screenshot 2025-09-23 at 11 45 09 PM

However, working with CLI (Command Line Interface). So instead, we will download the GNOME desktop image. Write these commands in order.

sudo apt install

sudo apt upgrade

sudo apt install ubuntu-gnome-desktop

sudo reboot

Wait for a bit. You are now ready to work with your own Linux distro.

Screenshot 2025-09-24 at 12 09 52 AM

Windows

Download VirtualBox: Visit the VirtualBox site, and click on "Download". You should then be redirected to this page, where you can click "Windows Hosts" to begin the download of the VirtualBox Installer.

image image

Install VirtualBox: Once the download is complete, launch the installer and follow the instructions provided by the wizard.

image

Download Ubuntu ISO: Download the Ubuntu 22.04 from the Ubuntu Site.

image

Create a New Virtual Machine (VM): Once everything is done installing, open up VirtualBox and click on the "New" button to begin configuring your VM.

image

We should then be sent to this menu, and select the following:

  • OS: Linux
  • OS Distribution: Ubuntu
  • OS Version: Ubuntu 22.04 Jammy Jellyfish
image

Configure VM:

Name and ISO: Add an ISO File in the "ISO Image" input, and give your VM a name.

image

Credentials: Change the default credentials, as if you don't Ubuntu will create a default account without sudo permissions.

image

Hardware Allocation: Allocate as much memory as possible, as well as some CPU cores for your VM.

image

Storage: Allocate approximately 35GB of storage for your VM to use, then click "Finish".

image

Network Settings: Go to Settings > Network, and change the adapter to “Bridged Adapter” to allow the VM to communicate with your local network.

image

Start the VM: Now that everything is set up, you can select and start your VM. If everything's working as intended, then it should look like this!

image

Test Connectivity: Click on the dotted-grid button in the bottom-left to open the "App Drawer". Search for the terminal and run ping google.com to test your connectivity. If you get a response, then it works!

image

troubleshooting

Clone this wiki locally