Unable to install linux packages

I have run the commands provided in the installation,

curl https://debian.parrot.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/debian.parrot.com.gpg*

echo "deb [signed-by=/usr/share/keyrings/debian.parrot.com.gpg] https://debian.parrot.com/ $(lsb_release -cs) main generic" | sudo tee /etc/apt/sources.list.d/debian.parrot.com.list > /dev/null*

sudo apt update*

But it returns with,

E: Failed to fetch https://debian.parrot.com/dists/noble/InRelease  403  Forbidden [IP: 2600:9000:2555:1a00:1a:1dfb:a480:93a1 443]
E: The repository 'https://debian.parrot.com noble InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: The repository 'https://deb.parrot.sh/parrot noble Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

meaning I cannot install the SDK.
help :slight_smile:

At the moment there are no packages for Ubuntu 24.04 (Noble). Your best bet is to install either Ubuntu 20 (Focal) or Ubuntu 22 (Jammy)

However if you really want/need Ubuntu 24 you can add the parrot repository for jammy by manually specifying that version instead of using the output of lsb_release.

I brute forced my way through this so it might be janky or just wrong, but it worked for me.

curl https://debian.parrot.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/debian.parrot.com.gpg*

echo "deb [signed-by=/usr/share/keyrings/debian.parrot.com.gpg] https://debian.parrot.com/ jammy main generic" | sudo tee /etc/apt/sources.list.d/debian.parrot.com.list > /dev/null*

sudo apt update

If you do this, you’ll also have to add repositories for older Ubuntu versions. I just added this to /etc/apt/sources.list.d/ubuntu.sources.

(You may not need both but I only got it to work with both present. This is copy/pasted from the entry already present for noble but with the version changed)

Types: deb
URIs: http://archive.ubuntu.com/ubuntu
Suites: focal
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Types: deb
URIs: http://archive.ubuntu.com/ubuntu
Suites: jammy
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Then once you make this change run sudo apt update.

If you are using the airsdk, you will need to also install python3.10. It assumes that’s your system python version and my fresh noble install has python3.12. If you don’t get any errors when you run airsdk then you can skip this

sudo apt install python3.10

Then update the symlink for airsdk to point to that instead of the default python

cd /opt/parrot-airsdk/parrot-airsdk-cli/bin
sudo rm ./python
sudo ln -s /usr/bin/python3.10 python

At this point, for the SDKs I think you’d be good to go but if you need Sphinx I had to do a bit of dependency version finagling.

sudo apt install libtbbmalloc2=2021.5.0-7ubuntu2
sudo apt install libtbb12=2021.5.0-7ubuntu2

Then you can hold those versions so they don’t get accidentally updated

sudo apt-mark hold libtbbmalloc2
sudo apt-mark hold libtbb12

Then go ahead and install Sphinx sudo apt install parrot-sphinx

Sphinx complains that I’m using noble instead of jammy but I haven’t had any problems with it yet