Open main menu

DAVE Developer's Wiki β

Changes

no edit summary
{{InfoBoxTop}}
{{AppliesToAXEL Lite AN}}
{{AppliesToAXEL ULite AN}}
{{AppliesTo RIALTO SBC AN}}
{{InfoBoxBottom}}
!Development Kit version
|-
| 1.0.10
| Oct 2021
|[[DESK-MX6UL-L/General/Release_Notes#DESK-MX6UL-L_1.0.1|DESK-MX6UL-L 1.0.1]]
|-
|1.0.1
|Apr 2022
|Upated info for [[DESK-MX6UL-L|DESK-MX6UL-L-3.0.0]] and [[DESK-MX6-L|DESK-MX6-L-3.0.0]]
|-
|}
==Introduction==
Since some [https://www.yoctoproject.org/docs/2.3/dev-manual/dev-manual.html#using-runtime-package-management Pyro (2.3) Yocto releasesrelease], DNF is the default package manager for installing packages in the DUT (target machine).
The [https://en.wikipedia.org/wiki/DNF_(software) Dandified Packaging Tool (DNF)] performs runtime package management of RPM packages. In order to use DNF for runtime package management, you must perform an initial setup on the target machine for cases where the PACKAGE_FEED_* variables were not set as part of the image that is running on the target.
More information in the [https://docs.fedoraproject.org/en-US/fedora/f34/system-administrators-guide/package-management/DNF/#sec-Configuring_DNF_and_DNF_Repositories Configuring DNF and DNF_Repositories] Fedora's page.
Here below an example on how to create the <code>.repo</code> with the proper [https://docs.fedoraproject.org/en-US/fedora/f34/system-administrators-guide/package-management/DNF/#sec-Setting_repository_Options setting options]using DAVE's Yocto server and [[AXEL ULite SOM|AXEL ULite]] package repositories:
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~#
{
echo [cortexa7hfcortexa7hf_neon] echo name=desk-mx6ul-1.0.1cortexa7hf
echo enabled=1
echo gpgcheck=0
echo baseurl=http://yocto.dave.eu/desk-mx6ul-l-3.0.0/cortexa7hf_neon/} | tee > /etc/yum.repos.d/dave.reporoot@desk-mx6ul-axelulite:~# { echo [cortexa7t2hf_neon] echo name=desk-mx6ul-cortexa7t2hf_neon echo enabled=1 echo gpgcheck=0 echo baseurl=http://yocto.dave.eu/desk-mx6ul-l-3.0.10/cortexa7hf_neoncortexa7t2hf_neon/
} | tee >> /etc/yum.repos.d/dave.repo
root@desk-mx6ul-axelulite:~#
{
echo [noarch]
echo name=desk-mx6ul-noarch
echo enabled=1
echo gpgcheck=0
echo baseurl=http://yocto.dave.eu/desk-mx6ul-l-3.0.0/noarch/
} | tee >> /etc/yum.repos.d/dave.repo
root@desk-mx6ul-axelulite:~#
</pre>
 
This allows to configure threee DNF repositories available on [http://yocto.dave.eu/ DAVE's Yocto package server]:
 
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~# cat /etc/yum.repos.d/dave.repo
[cortexa7hf_neon]
name=desk-mx6ul-cortexa7hf
enabled=1
gpgcheck=0
baseurl=http://yocto.dave.eu/desk-mx6ul-l-3.0.0/cortexa7hf_neon/
[cortexa7t2hf_neon]
name=desk-mx6ul-cortexa7t2hf_neon
enabled=1
gpgcheck=0
baseurl=http://yocto.dave.eu/desk-mx6ul-l-3.0.0/cortexa7t2hf_neon/
[noarch]
name=desk-mx6ul-noarch
enabled=1
gpgcheck=0
baseurl=http://yocto.dave.eu/desk-mx6ul-l-3.0.0/noarch/
root@desk-mx6ul-axelulite:~#
</pre>
 
==== Other DAVE repositories ====
Here below the repositories directories for the DESK-MX6-L:
 
<pre>
http://yocto.dave.eu/desk-mx6-l-3.0.0/cortexa9hf_neon/
http://yocto.dave.eu/desk-mx6-l-3.0.0/cortexa9t2hf_neon/
http://yocto.dave.eu/desk-mx6-l-3.0.0/noarch/
</pre>
== Installing packages on target ==
We assume that network interface has been already configured for Internet access. In any case, a simple network configuration can be done directly on serial console with according to the following commands[[DESK-MX6UL-L/Deployment/How_to_configure_the_network_interfaces#Static_IP_address | How to configure the network interfaces]] wiki page:
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~# ifconfig cat /etc/systemd/network/eth0 .network[Match]Name=eth0 # Prevent the interface loading if the kernel boots from nfsKernelCommandLine=!nfsroot [Network]Address=192.168.0.9490root@desk-mx6ul-axelulite:~# route add default gw Gateway=192.168.0.254DNS=192.168.0.1root@desk-mx6ul-axelulite:~# echo "nameserver 8.8.8.8" > /etc/resolv.conf
</pre>
Then, for installing a package, it is enough to invoke <code>dnf</code> with the ''install'' parameter, for example:
'''<pre class="board-terminal">root@desk-mx6ul-axelulite:~# dnf install lighttpdLast metadata expiration check: 0:06:50 ago on Wed Apr 13 09:02:51 2022.Dependencies resolved.======================================================================================================================================================================= Package Architecture Version Repository Size=======================================================================================================================================================================Installing: lighttpd cortexa7t2hf_neon 1.4.59-r0 cortexa7t2hf_neon 146 kInstalling dependencies: lighttpd-module-dirlisting cortexa7t2hf_neon 1.4.59-r0 cortexa7t2hf_neon 15 k lighttpd-module-indexfile cortexa7t2hf_neon 1.4.59-r0 cortexa7t2hf_neon 8.8 k lighttpd-module-staticfile cortexa7t2hf_neon 1.4.59-r0 cortexa7t2hf_neon 8.5 kInstalling weak dependencies: lighttpd-module-access cortexa7t2hf_neon 1.4.59-r0 cortexa7t2hf_neon 8.5 k lighttpd-module-accesslog cortexa7t2hf_neon 1.4.59-r0 cortexa7t2hf_neon 15 k Transaction Summary=======================================================================================================================================================================Install 6 Packages Total download size: 201 kInstalled size: 313 kIs this ok [y/N]: yDownloading Packages:(1/6): lighttpd-module-access-1.4.59-r0.cortexa7t2hf_neon.rpm 1.7 kB/s | 8.5 kB 00:05(2/6): lighttpd-module-accesslog-1.4.59-r0.cortexa7t2hf_neon.rpm 2.9 kB/s | 15 kB 00:05(3/6): lighttpd-module-indexfile-1.4.59-r0.cortexa7t2hf_neon.rpm 160 kB/s | 8.8 kB 00:00(4/6): lighttpd-module-dirlisting-1.4.59-r0.cortexa7t2hf_neon.rpm 168 kB/s | 15 kB 00:00(5/6): lighttpd-1.4.59-r0.cortexa7t2hf_neon.rpm 28 kB/s | 146 kB 00:05(6/6): lighttpd-module-staticfile-1.4.59-r0.cortexa7t2hf_neon.rpm 110 kB/s | 8.5 kB 00:00-----------------------------------------------------------------------------------------------------------------------------------------------------------------------Total 38 kB/s | 201 kB 00:05Running transaction checkTransaction check succeeded.Running transaction testTransaction test succeeded.Running transaction Preparing : 1/1 Installing : lighttpd-module-staticfile-1.4.59-r0.cortexa7t2hf_neon 1/6 Running scriptlet: lighttpd-module-staticfile-1.4.59-r0.cortexa7t2hf_neon 1/6......... Verifying : lighttpd-1.4.59-r0.cortexa7t2hf_neon 1/6 Verifying : lighttpd-module-access-1.4.59-r0.cortexa7t2hf_neon 2/6 Verifying : lighttpd-module-accesslog-1.4.59-r0.cortexa7t2hf_neon 3/6 Verifying : lighttpd-module-dirlisting-1.4.59-r0.cortexa7t2hf_neon 4/6 Verifying : lighttpd-module-indexfile-1.4.59-r0.cortexa7t2hf_neon 5/6 Verifying : lighttpd-module-staticfile-1.4.59-r0.cortexa7t2hf_neon 6/6 Installed: lighttpd-1.4.59-r0.cortexa7t2hf_neon lighttpd-module-access-1.4.59-r0.cortexa7t2hf_neon lighttpd-module-accesslog-1.4.59-r0.cortexa7t2hf_neon lighttpd-module-dirlisting-1.4.59-r0.cortexa7t2hf_neon lighttpd-module-indexfile-1.4.59-r0.cortexa7t2hf_neon lighttpd-module-staticfile-1.4.59-r0.cortexa7t2hf_neon Complete!root@desk-mx6ul-axelulite:~#</pre> == Other useful DNF commands == === List of configured software repositories === 
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~# dnf install fbrepolistrepo id repo namecortexa7hf_neon desk-testmx6ul-cortexa7hfcortexa7t2hf_neon desk-mx6ul-cortexa7t2hf_neonnoarch desk-mx6ul-noarch
</pre>
=== Search for packages ===
 
To search for an available package into the current configured channels use <code>dnf repoquery</code>
 
Please note that this will show all packages, it's usually more useful to give it a pattern, e.g.:
 
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~# dnf repoquery *fb*
desk-mx6ul-cortexa7hf 18 kB/s | 3.8 kB 00:00
desk-mx6ul-cortexa7t2hf_neon 693 kB/s | 2.9 MB 00:04
desk-mx6ul-noarch 442 kB/s | 123 kB 00:00
fb-test-0:1.1.0-r0.cortexa7t2hf_neon
fb-test-dbg-0:1.1.0-r0.cortexa7t2hf_neon
fb-test-dev-0:1.1.0-r0.cortexa7t2hf_neon
fbida-0:2.14-r0.cortexa7t2hf_neon
fbida-dbg-0:2.14-r0.cortexa7t2hf_neon
fbida-dev-0:2.14-r0.cortexa7t2hf_neon
fbida-doc-0:2.14-r0.cortexa7t2hf_neon
fbida-src-0:2.14-r0.cortexa7t2hf_neon
fbset-0:2.1-r4.cortexa7t2hf_neon
fbset-dbg-0:2.1-r4.cortexa7t2hf_neon
fbset-dev-0:2.1-r4.cortexa7t2hf_neon
fbset-doc-0:2.1-r4.cortexa7t2hf_neon
libharfbuzz-bin-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz-dbg-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz-dev-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz-icu-dev-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz-icu0-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz-src-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz-subset0-0:2.7.4-r0.cortexa7t2hf_neon
libharfbuzz0-0:2.7.4-r0.cortexa7t2hf_neon
root@desk-mx6ul-axelulite:~#
</pre>
 
=== List of installed packages ===
 
User can see the list of installed packages with <code>dnf repoquery --installed</code>
 
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~# dnf repoquery --installed
acl-0:2.2.53-r0.cortexa7t2hf_neon
acl-dev-0:2.2.53-r0.cortexa7t2hf_neon
alsa-conf-0:1.2.4-r0.cortexa7t2hf_neon
alsa-state-0:0.2.0-r5.desk_mx6ul_lynx
alsa-states-0:0.2.0-r5.desk_mx6ul_lynx
alsa-tools-0:1.2.2-r0.cortexa7t2hf_neon
...
...
which-0:2.21-r3.cortexa7t2hf_neon
which-dev-0:2.21-r3.cortexa7t2hf_neon
wireless-regdb-static-0:2020.11.20-r0.noarch
wireless-tools-1:30.pre9-r0.cortexa7t2hf_neon
wl18xx-firmware-0:R8.5+git0+02df01f8b9-r0.noarch
wpa-supplicant-0:2.9-r0.cortexa7t2hf_neon
wpa-supplicant-cli-0:2.9-r0.cortexa7t2hf_neon
wpa-supplicant-passphrase-0:2.9-r0.cortexa7t2hf_neon
xinetd-0:2.3.15.4-r0.cortexa7t2hf_neon
xorgproto-dev-0:2020.1-r0.cortexa7t2hf_neon
xz-0:5.2.5-r0.cortexa7t2hf_neon
xz-dev-0:5.2.5-r0.cortexa7t2hf_neon
root@desk-mx6ul-axelulite:~#
</pre>
 
=== DNF activity history ===
 
User can see the activity on packages with <code>dnf history</code>
 
<pre class="board-terminal">
root@desk-mx6ul-axelulite:~# dnf history
ID | Command line | Date and time | Action(s) | Altered
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
4 | install lighttpd | 2022-04-13 09:09 | Install | 6 EE
3 | -v --rpmverbosity=info -y -c /home/jenkins/workspace/workspace/DESK-MX6UL-L-3.x.x_Yocto/yocto/build-fb/tmp/work/ | 2022-02-16 16:19 | Removed | 1 E<
2 | -v --rpmverbosity=info -y -c /home/jenkins/workspace/workspace/DESK-MX6UL-L-3.x.x_Yocto/yocto/build-fb/tmp/work/ | 2022-02-16 16:19 | Install | 16 >
1 | -v --rpmverbosity=info -y -c /home/jenkins/workspace/workspace/DESK-MX6UL-L-3.x.x_Yocto/yocto/build-fb/tmp/work/ | 2022-02-16 16:14 | Install | 1593 EE
root@desk-mx6ul-axelulite:~#
</pre>
== References ==
* https://en.wikipedia.org/wiki/DNF_(software)
* https://dnf.readthedocs.io/en/latest/index.html
* https://linux.die.net/man/5/yum.conf
* http://yocto.dave.eu/
8,226
edits