diff options
Diffstat (limited to 'doc/book-enea-linux-user-guide/doc/using_enea_linux.xml')
-rw-r--r-- | doc/book-enea-linux-user-guide/doc/using_enea_linux.xml | 268 |
1 files changed, 192 insertions, 76 deletions
diff --git a/doc/book-enea-linux-user-guide/doc/using_enea_linux.xml b/doc/book-enea-linux-user-guide/doc/using_enea_linux.xml index aba7c1d..db04d8f 100644 --- a/doc/book-enea-linux-user-guide/doc/using_enea_linux.xml +++ b/doc/book-enea-linux-user-guide/doc/using_enea_linux.xml | |||
@@ -5,9 +5,8 @@ | |||
5 | <section id="build_enealinux"> | 5 | <section id="build_enealinux"> |
6 | <title>Building Enea Linux</title> | 6 | <title>Building Enea Linux</title> |
7 | 7 | ||
8 | <para>Enea Linux is made available as sources, this allows for of building | 8 | <para>Enea Linux is made available as sources, allowing for the building of |
9 | various Enea Linux artifacts and is detailed in the following | 9 | various Enea Linux artifacts, detailed in the following sections.</para> |
10 | sections:</para> | ||
11 | 10 | ||
12 | <section id="build_images"> | 11 | <section id="build_images"> |
13 | <title>Building Real-Time images</title> | 12 | <title>Building Real-Time images</title> |
@@ -25,7 +24,7 @@ | |||
25 | </step> | 24 | </step> |
26 | 25 | ||
27 | <step> | 26 | <step> |
28 | <para>Clone Enea Linux sources using Repo tool. Please refer to | 27 | <para>Clone Enea Linux sources using the Repo tool. Please refer to |
29 | <xref linkend="getting_sources" /> for more details.</para> | 28 | <xref linkend="getting_sources" /> for more details.</para> |
30 | 29 | ||
31 | <programlisting>$ mkdir enea-linux | 30 | <programlisting>$ mkdir enea-linux |
@@ -42,7 +41,7 @@ $ repo sync</programlisting> | |||
42 | $ TEMPLATECONF=meta-el-rt/conf/template.<machine> \ | 41 | $ TEMPLATECONF=meta-el-rt/conf/template.<machine> \ |
43 | . ./oe-init-build-env <build_dir></programlisting> | 42 | . ./oe-init-build-env <build_dir></programlisting> |
44 | 43 | ||
45 | <para>Sourcing the build environment is needed everytime a new shell | 44 | <para>Sourcing the build environment is needed every time a new shell |
46 | is used. However, sourcing using the <literal>TEMPLATECONF</literal> | 45 | is used. However, sourcing using the <literal>TEMPLATECONF</literal> |
47 | is only needed the first time around. After the first time, it is | 46 | is only needed the first time around. After the first time, it is |
48 | enough to source the build directory created before.</para> | 47 | enough to source the build directory created before.</para> |
@@ -77,8 +76,8 @@ $ cd <build_dir>/tmp/deploy/images/<target>/ # Here are the build b | |||
77 | booting a physical target, according to how the build environment | 76 | booting a physical target, according to how the build environment |
78 | was set up before running bitbake.</para> | 77 | was set up before running bitbake.</para> |
79 | 78 | ||
80 | <para>Depending on the number of processors and cores, the amount or | 79 | <para>Depending on the number of processors and cores, the amount of |
81 | RAM, the speed of your Internet connection and other factors, the | 80 | RAM, the speed of your internet connection and other factors, the |
82 | build process can take several hours the first time you run it. | 81 | build process can take several hours the first time you run it. |
83 | Subsequent builds run much faster since parts of the build are | 82 | Subsequent builds run much faster since parts of the build are |
84 | cached.</para> | 83 | cached.</para> |
@@ -86,8 +85,8 @@ $ cd <build_dir>/tmp/deploy/images/<target>/ # Here are the build b | |||
86 | <note> | 85 | <note> |
87 | <para>Make sure that the user running the build has access to the | 86 | <para>Make sure that the user running the build has access to the |
88 | Git repositories on git.enea.com. The build process fetches | 87 | Git repositories on git.enea.com. The build process fetches |
89 | information from git.enea.com so the user running the build shall | 88 | information from git.enea.com so the user running the build needs to |
90 | have the ssh key properly configured. Please refer to <xref | 89 | have the ssh key properly configured. Please refer to <xref |
91 | linkend="getting_sources" /> for more details on how to get access | 90 | linkend="getting_sources" /> for more details on how to get access |
92 | to Enea Linux sources.</para> | 91 | to Enea Linux sources.</para> |
93 | </note> | 92 | </note> |
@@ -99,11 +98,11 @@ $ cd <build_dir>/tmp/deploy/images/<target>/ # Here are the build b | |||
99 | <title>Building the SDK</title> | 98 | <title>Building the SDK</title> |
100 | 99 | ||
101 | <para>If you want to rebuild a cross-compilation toolchain to be used by | 100 | <para>If you want to rebuild a cross-compilation toolchain to be used by |
102 | in application development, use the following steps:</para> | 101 | in application development, do the following:</para> |
103 | 102 | ||
104 | <procedure> | 103 | <procedure> |
105 | <step> | 104 | <step> |
106 | <para>Clone Enea Linux sources using Repo tool. Please refer to | 105 | <para>Clone Enea Linux sources using the Repo tool. Please refer to |
107 | <xref linkend="getting_sources" /> for more details on how to do | 106 | <xref linkend="getting_sources" /> for more details on how to do |
108 | this.</para> | 107 | this.</para> |
109 | 108 | ||
@@ -130,8 +129,8 @@ $ TEMPLATECONF=meta-el-rt/conf/template.<machine> \ | |||
130 | <para>The build directory may reside on an NFS mount, but the | 129 | <para>The build directory may reside on an NFS mount, but the |
131 | <literal>TMPDIR</literal> | 130 | <literal>TMPDIR</literal> |
132 | (<literal><build_dir>/tmp</literal>) may not. Either build | 131 | (<literal><build_dir>/tmp</literal>) may not. Either build |
133 | all on a local disk, or update TMPDIR in conf/local.conf to point | 132 | all on a local disk, or update <literal>TMPDIR</literal> in |
134 | to a local disk.</para> | 133 | <literal>conf/local.conf</literal> to point to a local disk.</para> |
135 | </note> | 134 | </note> |
136 | </step> | 135 | </step> |
137 | 136 | ||
@@ -148,13 +147,13 @@ $ cd <build_dir>/tmp/deploy/sdk/ # Here is the SDK installer script</prog | |||
148 | long, you need to move your build to obtain a shorter path.</para> | 147 | long, you need to move your build to obtain a shorter path.</para> |
149 | </note> | 148 | </note> |
150 | 149 | ||
151 | <para>Generated SDK installer script is by default saved in | 150 | <para>The generated SDK installer script is by default saved in |
152 | <literal><build_dir>/tmp/deploy/sdk</literal>, where | 151 | <literal><build_dir>/tmp/deploy/sdk</literal>, where |
153 | <literal><build_dir></literal> by default is the current | 152 | <literal><build_dir></literal> by default is the current |
154 | working directory.</para> | 153 | working directory.</para> |
155 | 154 | ||
156 | <para>Depending on the number of processors and cores, the amount or | 155 | <para>Depending on the number of processors and cores, the amount of |
157 | RAM, the speed of your Internet connection and other factors, the | 156 | RAM, the speed of your internet connection and other factors, the |
158 | build process can take several hours the first time you run it. | 157 | build process can take several hours the first time you run it. |
159 | Subsequent builds run much faster since parts of the build are | 158 | Subsequent builds run much faster since parts of the build are |
160 | cached.</para> | 159 | cached.</para> |
@@ -174,13 +173,13 @@ $ cd <build_dir>/tmp/deploy/sdk/ # Here is the SDK installer script</prog | |||
174 | the artifacts availalbe, you may proceed to booting Enea Linux on | 173 | the artifacts availalbe, you may proceed to booting Enea Linux on |
175 | target.</para> | 174 | target.</para> |
176 | 175 | ||
177 | <para>Enea Linux supports multiple booting methods so those will be | 176 | <para>Enea Linux supports multiple booting methods which will be |
178 | described in the following sections.</para> | 177 | described in the following sections.</para> |
179 | 178 | ||
180 | <section id="enea-linux-x86-pxe"> | 179 | <section id="enea-linux-x86-pxe"> |
181 | <title>Booting via PXE</title> | 180 | <title>Booting via PXE</title> |
182 | 181 | ||
183 | <para>Below you find an example of how to boot Enea Linux in a target | 182 | <para>Below is an example of how to boot Enea Linux on a target |
184 | supporting PXE. The PXE boot is handled by the target BIOS.</para> | 183 | supporting PXE. The PXE boot is handled by the target BIOS.</para> |
185 | 184 | ||
186 | <para>This requires the setup of DHCP, TFTP and NFS servers on the host. | 185 | <para>This requires the setup of DHCP, TFTP and NFS servers on the host. |
@@ -194,31 +193,31 @@ $ cd <build_dir>/tmp/deploy/sdk/ # Here is the SDK installer script</prog | |||
194 | 193 | ||
195 | <itemizedlist spacing="compact"> | 194 | <itemizedlist spacing="compact"> |
196 | <listitem> | 195 | <listitem> |
197 | <para>Host name</para> | 196 | <para>Host name.</para> |
198 | </listitem> | 197 | </listitem> |
199 | 198 | ||
200 | <listitem> | 199 | <listitem> |
201 | <para>MAC hardware ethernet address (also available in the TFTP | 200 | <para>MAC hardware ethernet address (also available in the TFTP |
202 | configuration)</para> | 201 | configuration).</para> |
203 | </listitem> | 202 | </listitem> |
204 | 203 | ||
205 | <listitem> | 204 | <listitem> |
206 | <para>IP address, (assuming a fixed IP address is used)</para> | 205 | <para>IP address (assuming a fixed IP address is used).</para> |
207 | </listitem> | 206 | </listitem> |
208 | 207 | ||
209 | <listitem> | 208 | <listitem> |
210 | <para>The TFTP server shall be defined as | 209 | <para>The TFTP server shall be defined as |
211 | <literal>next-server</literal></para> | 210 | <literal>next-server</literal>.</para> |
212 | </listitem> | 211 | </listitem> |
213 | 212 | ||
214 | <listitem> | 213 | <listitem> |
215 | <para>The relative path in the TFTP server to the PXE file | 214 | <para>The relative path in the TFTP server to the PXE file |
216 | <filename><literal>pxelinux.0</literal></filename></para> | 215 | <filename>pxelinux.0</filename>.</para> |
217 | </listitem> | 216 | </listitem> |
218 | 217 | ||
219 | <listitem> | 218 | <listitem> |
220 | <para>The NFS server IP address and the path to the rootfs on the | 219 | <para>The NFS server IP address and the path to the rootfs on the |
221 | NFS server, defined as <literal>option root-path</literal></para> | 220 | NFS server, defined as <literal>option root-path</literal>.</para> |
222 | </listitem> | 221 | </listitem> |
223 | </itemizedlist> | 222 | </itemizedlist> |
224 | 223 | ||
@@ -232,8 +231,8 @@ $ cd <build_dir>/tmp/deploy/sdk/ # Here is the SDK installer script</prog | |||
232 | option root-path "192.168.2.20:/export/intel-corei7-64_rootfs"; | 231 | option root-path "192.168.2.20:/export/intel-corei7-64_rootfs"; |
233 | }</programlisting> | 232 | }</programlisting> |
234 | 233 | ||
235 | <para>For the TFTP server, the TFTP path to the target's pxelinux.0 file | 234 | <para>For the TFTP server, the TFTP path to the target's <filename>pxelinux.0</filename> |
236 | is given in the DHCP Configuration. Examples of files included in the | 235 | file is given in the DHCP Configuration. Examples of files included in the |
237 | TFTP subdirectory indicated by the DHCP configuration are:</para> | 236 | TFTP subdirectory indicated by the DHCP configuration are:</para> |
238 | 237 | ||
239 | <programlisting>pxelinux.0 | 238 | <programlisting>pxelinux.0 |
@@ -311,6 +310,111 @@ label device01 | |||
311 | during BIOS power up tests. Look up the manufacturer's documentation for | 310 | during BIOS power up tests. Look up the manufacturer's documentation for |
312 | your board model to find the appropriate key.</para> | 311 | your board model to find the appropriate key.</para> |
313 | </section> | 312 | </section> |
313 | |||
314 | <section id="boot_from_ram"> | ||
315 | <title>Boot from RAM</title> | ||
316 | |||
317 | <para>This example requires that a TFTP server is set up at IP address | ||
318 | <literal><tftp_server_ip></literal>, and that the server stores | ||
319 | the Enea Linux image files, kernel image, device tree blob and root | ||
320 | filesystem, in <literal>/tftpboot/<download_directory>.</literal> | ||
321 | Please refer to <xref linkend="prebuiltprereq" /> for more details on | ||
322 | how to install and configure the TFTP server.</para> | ||
323 | |||
324 | <para>Once you have that in place, run the following commands on the | ||
325 | target:</para> | ||
326 | |||
327 | <programlisting>## set tftp server IP | ||
328 | U-Boot> setenv serverip <tftp_server_ip> | ||
329 | |||
330 | ## tftp the image files on the target machine | ||
331 | U-Boot> tftpboot 0x01000000 Image | ||
332 | U-Boot> tftpboot 0x02000000 Image-bcm2837-rpi-3-b.dtb | ||
333 | U-Boot> tftpboot 0x03000000 enea-image-standard-raspberrypi3-64.ext2.gz.u-boot | ||
334 | |||
335 | ## add any other bootargs values if necessary | ||
336 | U-Boot> setenv bootargs "8250.nr_uarts=1 root=/dev/ram rw ramdisk_size=500000 ip=dhcp \ | ||
337 | console=ttyS0,115200" | ||
338 | |||
339 | ## Start boot sequence | ||
340 | U-Boot> booti 0x01000000 0x03000000 0x02000000</programlisting> | ||
341 | </section> | ||
342 | |||
343 | <section id="boot_from_sd"> | ||
344 | <title>Boot from SD card</title> | ||
345 | |||
346 | <para>Copy the | ||
347 | <filename>enea-image-standard-raspberrypi3-64.rpi-sdimg</filename> image | ||
348 | to the SD card using the Linux dd tool or Win32DiskImager in Windows, | ||
349 | and insert it into the RPi. The Raspberry Pi will not start without a | ||
350 | properly formatted SD Card, containing the bootloader, kernel image and | ||
351 | rootfs.</para> | ||
352 | |||
353 | <para>Below you can find two methods of how to format an SD Card:</para> | ||
354 | |||
355 | <itemizedlist> | ||
356 | <listitem> | ||
357 | <para><emphasis role="bold">Format and copy images to the SD card | ||
358 | using the Linux dd command line</emphasis></para> | ||
359 | |||
360 | <para>The <command>dd</command> command copies a file, converting | ||
361 | the format of the data in the process, according to the operands | ||
362 | specified:</para> | ||
363 | |||
364 | <programlisting>sudo dd bs=4M if=enea-image-standard-sdk-raspberrypi3-64.rpi-sdimg of=/dev/sdg</programlisting> | ||
365 | |||
366 | <note> | ||
367 | <para>Use <command>dd</command> cautiously - improper usage or | ||
368 | entering the wrong values could inadvertently wipe, destroy, or | ||
369 | overwrite the data on your hard drive.</para> | ||
370 | </note> | ||
371 | </listitem> | ||
372 | |||
373 | <listitem> | ||
374 | <para><emphasis role="bold">Format the SD card using the | ||
375 | Win32DiskImager program</emphasis></para> | ||
376 | |||
377 | <orderedlist> | ||
378 | <listitem> | ||
379 | <para>Download and unzip <ulink | ||
380 | url="https://sourceforge.net/projects/win32diskimager/">Win32DiskImager</ulink>.</para> | ||
381 | </listitem> | ||
382 | |||
383 | <listitem> | ||
384 | <para>Run <filename>Win32DiskImager.exe</filename>.</para> | ||
385 | </listitem> | ||
386 | |||
387 | <listitem> | ||
388 | <para>Select the drive of your SD card.</para> | ||
389 | </listitem> | ||
390 | |||
391 | <listitem> | ||
392 | <para>Select the image | ||
393 | <filename>enea-image-standard-raspberrypi3-64.rpi-sdimg</filename>.</para> | ||
394 | </listitem> | ||
395 | |||
396 | <listitem> | ||
397 | <para>Click "Write" and wait for the write to complete.</para> | ||
398 | </listitem> | ||
399 | |||
400 | <listitem> | ||
401 | <para>Exit the imager and eject the SD Card.</para> | ||
402 | </listitem> | ||
403 | |||
404 | <listitem> | ||
405 | <para>Plug the card into your Raspberry Pi.</para> | ||
406 | </listitem> | ||
407 | </orderedlist> | ||
408 | |||
409 | <note> | ||
410 | <para>Be careful to select the correct drive. If you choose the | ||
411 | wrong one you may destroy your HDD data. If you are using an SD | ||
412 | Card slot and can't see the drive in the Win32DiskImager window, | ||
413 | try using an affordable external adapter in a USB slot.</para> | ||
414 | </note> | ||
415 | </listitem> | ||
416 | </itemizedlist> | ||
417 | </section> | ||
314 | </section> | 418 | </section> |
315 | 419 | ||
316 | <section id="custom_enealinux"> | 420 | <section id="custom_enealinux"> |
@@ -700,26 +804,26 @@ $ ./enea-*-toolchain-<version>.sh</programlisting> | |||
700 | Project Mega Manual</ulink>. If needed replace the Yocto version in the | 804 | Project Mega Manual</ulink>. If needed replace the Yocto version in the |
701 | link.</para> | 805 | link.</para> |
702 | 806 | ||
703 | <section id="apt_pktmgmt"> | 807 | <section id="rpm_pktmgmt"> |
704 | <title>APT Package Management (DEB Packages)</title> | 808 | <title>RPM Package Management (RPM Packages)</title> |
705 | 809 | ||
706 | <para>Enea Linux provides DEB packages on <ulink | 810 | <!-- <para>Enea Linux provides RPM packages on <ulink |
707 | url="http://linux.enea.com/EneaLinux8.0/">linux.enea.com</ulink> site, | 811 | url="http://linux.enea.com/EneaLinux8.0/">linux.enea.com</ulink> site, |
708 | in directory | 812 | in directory |
709 | <literal><literal><release>/<target>/deb</literal>/</literal>.</para> | 813 | <literal><literal><release>/<target>/rpm</literal>/</literal>.</para> |
814 | --> | ||
815 | <para>The application for performing runtime package management of RPM | ||
816 | packages on the target is called <filename>rpm</filename>.</para> | ||
710 | 817 | ||
711 | <para>The application for performing runtime package management of DEB | 818 | <para>Use the <literal>rpm</literal> command to install, upgrade, or |
712 | packages on the target is called <filename>apt-get</filename>.</para> | 819 | remove packages. Before using any rpm options that require network |
713 | |||
714 | <para>Use the <literal>apt-get</literal> command to install, upgrade, or | ||
715 | remove packages. Before using any apt-get options that require network | ||
716 | access, please check that the network is configured and working | 820 | access, please check that the network is configured and working |
717 | properly.</para> | 821 | properly.</para> |
718 | 822 | ||
719 | <para>The <literal>apt-get</literal> command is by default included in | 823 | <para>The <literal>rpm</literal> command is by default included in |
720 | Enea Linux images.</para> | 824 | Enea Linux images.</para> |
721 | 825 | ||
722 | <section id="apt_config"> | 826 | <!--<section id="apt_config"> |
723 | <title>Configuring</title> | 827 | <title>Configuring</title> |
724 | 828 | ||
725 | <para>APT relies on the concept of repositories in order to find | 829 | <para>APT relies on the concept of repositories in order to find |
@@ -735,73 +839,85 @@ $ ./enea-*-toolchain-<version>.sh</programlisting> | |||
735 | # echo "deb [trusted=yes] http://server-address/path/to/the/package/directory ./" | \ | 839 | # echo "deb [trusted=yes] http://server-address/path/to/the/package/directory ./" | \ |
736 | tee -a /etc/apt/sources.list.d/repos.list</programlisting> | 840 | tee -a /etc/apt/sources.list.d/repos.list</programlisting> |
737 | 841 | ||
738 | <para>Run <literal>apt-get update</literal> to fetch information from | 842 | <para>Run <literal>createrepo --><!--update path_to_repo</literal> to fetch information from |
739 | the new repository:</para> | 843 | the new repository:</para> |
740 | 844 | ||
741 | <programlisting># apt-get update</programlisting> | 845 | <programlisting># createrepo --><!--update repo</programlisting> |
846 | </section>--> | ||
847 | |||
848 | <section id="rpm_preparation"> | ||
849 | <title>Preparation</title> | ||
850 | |||
851 | <para>RPM packages need to first be downloaded on target. | ||
852 | <programlisting># wget https://rpmfind.net/linux/fedora/linux/development/rawhide/Everything/ | ||
853 | aarch64/os/Packages/v/vim-common-8.1.2120-1.fc32.aarch64.rpm</programlisting> | ||
854 | They can be copied either from public maintained repositories or from locally maintained collections of useful RPMs. | ||
855 | <programlisting># wget http://linux.enea.com/RPM/aarch64/vim-common-7.4.481-r0.0.aarch64.rpm</programlisting> | ||
856 | </para> | ||
857 | |||
858 | <para> | ||
859 | RPM is also identifying and checking for package dependencies. It warns if the package can not be installed correctly and lists what needs to be done. | ||
860 | </para> | ||
861 | |||
742 | </section> | 862 | </section> |
743 | 863 | ||
744 | <section id="apt_install"> | 864 | <section id="rpm_install"> |
745 | <title>Installing</title> | 865 | <title>Installing</title> |
746 | 866 | ||
747 | <para>DEB packages typically have file names like | 867 | <para>RPM packages typically have file names like |
748 | foo-1.0.1-r0.0_arm64.deb The file name includes the package name | 868 | foo-1.0.1-r0.0_arm64.rpm The file name includes the package name |
749 | (foo), version (1.0.1), revison (r0.0), and architecture (arm64). To | 869 | (foo), version (1.0.1), revison (r0.0), and architecture (arm64). To |
750 | install a package, log in as root and type the following command at a | 870 | install a package, log in as root and type the following command at a |
751 | shell prompt:</para> | 871 | shell prompt:</para> |
752 | 872 | ||
753 | <programlisting># apt-get install foo</programlisting> | 873 | <programlisting># rpm -i vim-common-8.1.1017-r0.0.aarch64.rpm |
874 | user.notice [RPM][351]: Transaction ID 5d836e00 started | ||
875 | user.notice [RPM][351]: install vim-common-8.1.1017-r0.0.aarch64: success | ||
876 | user.notice [RPM][351]: install vim-common-8.1.1017-r0.0.aarch64: success | ||
877 | user.notice [RPM][351]: Transaction ID 5d836e00 finished: 0</programlisting> | ||
754 | 878 | ||
755 | <para>The <literal>apt-get install</literal> command will install one | ||
756 | or more packages in the system.</para> | ||
757 | </section> | 879 | </section> |
758 | 880 | ||
759 | <section id="apt_upgrade"> | 881 | <section id="rpm_upgrade"> |
760 | <title>Upgrading</title> | 882 | <title>Upgrading</title> |
761 | 883 | ||
762 | <para>The <literal>apt-get upgrade</literal> command will upgrade one | 884 | <para>The <literal>rpm -U</literal> command will upgrade one |
763 | or more packages which are currently installed in the system. If no | 885 | or more packages which are currently installed in the system. |
764 | packages are given, all installed packages will be checked.</para> | 886 | </para> |
765 | 887 | ||
766 | <programlisting># apt-get upgrade foo</programlisting> | 888 | <programlisting># rpm -U vim-common-8.1.1518-r0.0.aarch64.rpm |
889 | user.notice [RPM][346]: Transaction ID 5d836d54 started | ||
890 | user.notice [RPM][346]: erase vim-common-8.1.1017-r0.0.aarch64: success | ||
891 | user.notice [RPM][346]: install vim-common-8.1.1518-r0.0.aarch64: success | ||
892 | user.notice [RPM][346]: erase vim-common-8.1.1017-r0.0.aarch64: success | ||
893 | user.notice [RPM][346]: install vim-common-8.1.1518-r0.0.aarch64: success | ||
894 | user.notice [RPM][346]: Transaction ID 5d836d54 finished: 0</programlisting> | ||
767 | </section> | 895 | </section> |
768 | 896 | ||
769 | <section id="apt_rm"> | 897 | <section id="rpm_rm"> |
770 | <title>Removing</title> | 898 | <title>Removing</title> |
771 | 899 | ||
772 | <para>The <literal>apt-get remove</literal> command will remove one or | 900 | <para>The <literal>rpm -e</literal> command will remove the |
773 | more packages which are currently installed in the system. | 901 | package which is currently installed in the system. |
774 | Example:</para> | 902 | Example:</para> |
775 | 903 | ||
776 | <programlisting># apt-get remove ptest-runner | 904 | <programlisting># rpm -e vim-common |
777 | Reading package lists... Done | 905 | user.notice [RPM][350]: Transaction ID 5d836dc9 started |
778 | Building dependency tree | 906 | user.notice [RPM][350]: erase vim-common-8.1.1518-r0.0.aarch64: success |
779 | Reading state information... Done | 907 | user.notice [RPM][350]: erase vim-common-8.1.1518-r0.0.aarch64: success |
780 | The following packages were automatically installed and are no longer required: | 908 | user.notice [RPM][350]: Transaction ID 5d836dc9 finished: 0 |
781 | libc6-dbg libc6-dev libc6-extra-nss libc6-thread-db libcidn1 | ||
782 | linux-libc-headers-dev | ||
783 | Use 'apt autoremove' to remove them. | ||
784 | The following packages will be REMOVED: | ||
785 | ptest-runner | ||
786 | 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. | ||
787 | After this operation, 0 B of additional disk space will be used. | ||
788 | Do you want to continue? [Y/n] y | ||
789 | (Reading database ... 5766 files and directories currently installed.) | ||
790 | Removing ptest-runner (2.0.2+git0+6d2872116c-r0.0) ... | ||
791 | </programlisting> | 909 | </programlisting> |
792 | </section> | 910 | </section> |
793 | 911 | ||
794 | <section id="pm_searching"> | 912 | <section id="rpm_searching"> |
795 | <title>Searching</title> | 913 | <title>Searching</title> |
796 | 914 | ||
797 | <para>The <literal>apt-cache search</literal> allows searching for the | 915 | <para>The <literal>rpm -q</literal> allows searching for the |
798 | given expressions in the name, summary and description of known | 916 | given expressions in the name, summary and description of known |
799 | packages. Example:</para> | 917 | packages. Example:</para> |
800 | 918 | ||
801 | <programlisting># apt-cache search ptest-runner | 919 | <programlisting># rpm -q vim-common |
802 | ptest-runner - A C program to run all installed ptests | 920 | vim-common-8.1.1017-r0.0.aarch64</programlisting> |
803 | ptest-runner-dbg - A C program to run all installed ptests - Debugging files | ||
804 | ptest-runner-dev - A C program to run all installed ptests - Development files</programlisting> | ||
805 | </section> | 921 | </section> |
806 | </section> | 922 | </section> |
807 | </section> | 923 | </section> |