PetaLinux supports package management system for Zynq-7000, Zynq UltraScale+ MPSoC, and 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-v2021.2/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 shown
below.
[oe-remote-repo-sswreleases-rel-v2022-generic-rpm-noarch] name=OE Remote Repo: sswreleases rel-v<PETALINUX_VER> generic rpm noarch baseurl=http://petalinux.xilinx.com/sswreleases/rel-v<PETALINUX_VER>/generic/rpm/noarch gpgcheck=0 [oe-remote-repo-sswreleases-rel-v<PETALINUX_VER>-generic-rpm-aarch64] name=OE Remote Repo: sswreleases rel-v<PETALINUX_VER> generic rpm aarch64 baseurl=http://petalinux.xilinx.com/sswreleases/rel-v<PETALINUX_VER>/generic/rpm/aarch64 gpgcheck=0 [oe-remote-repo-sswreleases-rel-v<PETALINUX_VER>-generic-rpm-zynqmp] name=OE Remote Repo: sswreleases rel-v<PETALINUX_VER> generic rpm zynqmp baseurl=http://petalinux.xilinx.com/sswreleases/rel-v<PETALINUX_VER>/generic/rpm/zynqmp gpgcheck=0 [oe-remote-repo-sswreleases-rel-v<PETALINUX_VER>-generic-rpm-zynqmpeg] name=OE Remote Repo: sswreleases rel-v<PETALINUX_VER> generic rpm zynqmpeg baseurl=http://petalinux.xilinx.com/sswreleases/rel-v<PETALINUX_VER>/generic/rpm/zynqmpeg gpgcheck=0 [oe-remote-repo-sswreleases-rel-v<PETALINUX_VER>-generic-rpm-zynqmp_generic] name=OE Remote Repo: sswreleases rel-v<PETALINUX_VER> generic rpm zynqmp_generic baseurl=http://petalinux.xilinx.com/sswreleases/rel-v2022/generic/rpm/zynqmp_generic gpgcheck=0
- 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.