PetaLinux supports package management system forZynq UltraScale+ MPSoC, and AMD Versalâ„¢ devices. Use the following steps to configure and use the package management system:
Figure 1. Package Management
- Enable DNF through
petalinux-config -c rootfs
. Enable the following configs to use DNF.- No need to set the base package feed url in .
- No need to set the package feed architecture in
From 2021.1, specifying package-feed-uris and package-feed-archs is optional. PetaLinux or Yocto set the uris and set the archs based on the project.
The possible archs are available in https://petalinux.xilinx.com/sswreleases/rel-v2025/generic/rpm/
.
- Build the
project.
#petalinux-build
- Boot Linux in SD or in JTAG boot mode.
- Check for .repo file on target in
/etc/yum.repos.d/ as
follows:
xilinx-zcu102-20251:/home/petalinux# cat /etc/yum.repos.d/oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest.repo [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-all] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest all baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/all gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-any] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest any baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/any gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-noarch] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest noarch baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/noarch gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-aarch64] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest aarch64 baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/aarch64 gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-armv8a] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest armv8a baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/armv8a gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-armv8a_crc] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest armv8a_crc baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/armv8a_crc gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-cortexa72_cortexa53] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest cortexa72_cortexa53 baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/cortexa72_cortexa53 gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-zynqmp_generic] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest zynqmp_generic baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/zynqmp_generic gpgcheck=0 [oe-remote-repo-sswreleases-rel-v2025.1-generic-rpm-rpm_latest-xlnx_zynqmp_zcu102_rev1_0] name=OE Remote Repo: sswreleases rel-v2025.1 generic rpm rpm_latest xlnx_zynqmp_zcu102_rev1_0 baseurl=http://petalinux-uat.xilinx.com/sswreleases/rel-v2025.1/generic/rpm/rpm_latest/xlnx_zynqmp_zcu102_rev1_0 gpgcheck=0 xilinx-zcu102-20251:/home/petalinux#
- List all available
packages.
#dnf repoquery
- Install a specific
package.
#dnf install <pkg name>
Example:
#dnf install packagegroup-petalinux-matchbox
Once the matchbox package is installed, reboot the target and you should get the desktop environment.