# L4T Ubuntu Noble 24.04 Install Guide

**Current version: 5.1.2** based on Ubuntu Noble Numbat 24.04 LTS\
Note: [**hekate**](https://github.com/CTCaer/hekate/releases/latest) **6.0.6 or newer MUST** be used for this release.\
Maintainer: [theofficialgman](https://github.com/theofficialgman) - <https://github.com/sponsors/theofficialgman>

If you need help you can ask in our [Discord Server](https://discord.gg/53mtKYt) under #noble-support\
You should also take a look at our [FAQ](https://wiki.switchroot.org/wiki/faq) and [Common Issues](https://wiki.switchroot.org/wiki/common-issues) which may already answer to some of your questions

### Prerequisites <a href="#prerequisites" id="prerequisites"></a>

* [hekate](https://github.com/CTCaer/hekate/releases/latest) **6.0.6 or newer**
* A 16GB SD Card **MINIMUM** (Recommended: 128GB and up U3 or U3/A2 class, see [SD Card Guide](https://wiki.switchroot.org/wiki/sd-card-guide) for more details)
* A computer (for backing up and extracting the installation files)

### Installation <a href="#installation" id="installation"></a>

1. Download the latest version of the L4T Ubuntu Noble Image directly or via torrent from [here](https://download.switchroot.org/ubuntu-noble/) of either the `kubuntu`([KDE Plasma Desktop](https://kubuntu.org/)) or `ubuntu-unity` ([Unity Desktop](https://ubuntuunity.org/)) [flavor](https://wiki.ubuntu.com/UbuntuFlavors). `ubuntu` ([GNOME](https://ubuntu.com/desktop)) release is delayed due to [upstream bugs](#missing-features).
2. Backup your SD Card:
   * Backup normal files from FAT32 (this also backs up emuMMC if file based)
   * If emuMMC raw partition exists, go to `hekate` -> `Tools` -> `Backup eMMC`.\
     Tap on `SD emuMMC RAW Partition` button and back it up (emuMMC BOOT0/1 and emuMMC Raw GPP)
   * If android exists, do a TWRP backup\
     \
     Suggestion: Use hekate UMS (`hekate` -> `Tools` -> `USB Tools`) with a USB-C cable connecting your switch and PC to mount your SD card and transfer files instead of swapping your card from Switch to PC.<br>
3. **WARNING: This following will wipe everything on your SD card.**\
   Partition your SD card in `hekate` -> `Tools` -> `Partition SD Card` leave at least 8GiB for FAT32 for installation files downloaded in step 1 **AND** recreate any partition that may have backed up.

<figure><img src="https://1282083284-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5A2PNyzG80QTDoltbtvZ%2Fuploads%2Fgit-blob-6a6ff5d271f3ec0f9467afbd0064833bc4572390%2Fnyx20890123_204922.png?alt=media" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1282083284-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5A2PNyzG80QTDoltbtvZ%2Fuploads%2Fgit-blob-b4bc8f491ed0ee46cfe957dd566f0ad17ba7901a%2Fnyx20890123_204928.png?alt=media" alt=""><figcaption></figcaption></figure>

4\. From your PC, extract the **7z** to the root of your SD FAT32 partition (Note that Win11's builtin 7z extract support is broken, use 7-zip and make sure not to create a new folder on extract). ALWAYS SAFELY EJECT storage when finished or you WILL corrupt the installation files. Suggestion: Use hekate UMS (`hekate` -> `Tools` -> `USB Tools`) with a USB-C cable connecting your switch and PC to mount your SD card instead of swapping your card from Switch to PC.\
\
5\. In Hekate, go to `Tools` -> `Partition SD Card` -> `Flash Linux`.\
\
6\. Go to `hekate` -> `Nyx Options` -> `Dump Joy-Con BT` to dump Joycon pairing data, with both Joycon connected to console, after they were paired in hos first.\
This must be run even if a **Switch Lite** is used, since it dumps the factory calibration data.

<figure><img src="https://1282083284-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5A2PNyzG80QTDoltbtvZ%2Fuploads%2Fgit-blob-512a66a3c5d373153fdbaa4d504061dc71d2a840%2Fnyx20890123_202109.png?alt=media" alt=""><figcaption></figcaption></figure>

<figure><img src="https://1282083284-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5A2PNyzG80QTDoltbtvZ%2Fuploads%2Fgit-blob-68c8fc381de9a529de446da8b4152eefc879288a%2Fnyx20890123_204917.png?alt=media" alt=""><figcaption></figcaption></figure>

7. Now you can boot L4T Ubuntu Noble (under `More Configs`).\
   Make sure any existing online updates are done via `Software Updater`,`Discover Software Center` (on kubuntu), or `apt` command.
8. After making sure everything is fine, you can now restore your backed up files
   * Copy your normal files to FAT32
   * For emuMMC use Hekate to restore your backup **`hekate` -> `Tools` -> `Restore eMMC`**
   * For Android, copy your TWRP backup to your FAT32 partition then follow the Android setup guide starting at step 4 **BUT instead of installing "Lineage zip, followed by your GApps zip" at step 5.(f on 10, g on 11) restore your backup in TWRP**

### Updating <a href="#updating" id="updating"></a>

Updates are shipped OTA like any standard Ubuntu Distro, so use the `Software Updater` or `Discover Software Center` (on kubuntu)application.\
Or open terminal and execute: `sudo apt update && sudo apt-get dist-upgrade`

### Next Steps <a href="#next-steps" id="next-steps"></a>

* [**Read about our Supported Features**](https://wiki.switchroot.org/wiki/linux/linux-features)
  * Flatpak support out of the box in the Software Center
  * [JoyCon Mouse/Keyboard mapping](https://wiki.switchroot.org/wiki/linux-features#joycon-mousekeyboard-mapping)
  * [Pairing Nintendo Switch Pro Controller](https://wiki.switchroot.org/wiki/linux-features#joycon-and-switch-pro-controller-native-support)
  * [CPU/GPU Overclocking](https://wiki.switchroot.org/wiki/linux-features#nvidia-power-profile-applet-nvpmodel)
  * [RAM Overclocking](https://wiki.switchroot.org/wiki/linux-features#ram-overclocking)
* [**L4T-Megascript**](https://github.com/cobalt2727/L4T-Megascript/wiki/Initial-Setup#installrun-the-megascript)
  * Available in your apps list\
    You can get or build various essential stuff, apps or emulators with a single click. All configured and optimized for Switch.
* [**Pi-Apps**](https://pi-apps.io/)
  * Install from the L4T-Megascript or follow the [official install instructions](https://pi-apps.io/install/).\
    A well-maintained collection of nearly 200 app installation-scripts with a focus on desktop applications that you can run with one click.

### Known Issues <a href="#missing-features" id="missing-features"></a>

* Failure to connect to Wifi WPA3/WPA2 transition mode networks. [KDE Plasma Network Manager chooses WPA3 for WPA3/WPA2 transition mode networks even when the Switch's wifi chipset doesn't support WPA3](https://bugs.kde.org/show_bug.cgi?id=498858). Workarounds are to connect via nmcli in terminal (`nmcli dev wifi connect Wifi-Name-Here`) or adjust the security settings to "WPA/WPA2 Personal" from "WPA3\*" in System Settings/Connections/"Wifi-Name-Here"/Wifi-Security/Security)

### Missing Features <a href="#missing-features" id="missing-features"></a>

* No Ubuntu (GNOME) image currently due to upstream bugs
  * <https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/2052913>
  * <https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/2063005>

These features are currently missing in comparison to L4T Ubuntu 18.04 and may be available in future releases.

* No CUDA compiler support (CUDA runtime 10.0 is preinstalled and functions)
* No GSTREAMER HW Decode or Encode (eg: GNOME Totem Videos)
  * NOTE: FFMPEG based players DO HAVE HW Decode/Encode and work great (eg: MPV, SMPLAYER, and VLC)

### Sources

Linux kernel buildscripts: <https://github.com/theofficialgman/l4t-kernel-build-scripts>

noble/jammy image buildscripts: <https://github.com/theofficialgman/l4t-image-buildscripts>

theofficialgman debian repository: <https://github.com/theofficialgman/l4t-debs>

theofficialgman debian repository sources: <https://github.com/theofficialgman/l4t-debs-source>

tegra hw decode/encode ffmpeg: <https://github.com/theofficialgman/FFmpeg/tree/6.1.1-nvv4l2>

chromium tegra buildscripts (DEPRECATED): <https://github.com/theofficialgman/chromium-tegra-scripts>

### Credits <a href="#credits" id="credits"></a>

theofficialgman (ubuntu jammy and noble distro maintainer, L4T-Megascript)\
CTCaer (kernel/bootloader, ubuntu bionic distro maintainer, NVENC/NVDEC),\
Gavin\_Darkglider (lakka distro maintainer),\
Azkali (fedora distro maintainer),\
Ave (switchroot website host),\
DanielOgorchock(Switch controller drivers/joycond),\
Bylaws,\
Langerhans,\
Natinusala,\
stary2001 (reboot2payload),\
NVIDIA (Tegra BSP),\
cobalt2727 (L4T-Megascript),\
Everyone else in switchroot
