source: postlfs/filesystems/uefi-bootloaders/efivar.xml@ 360f25bb

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/soup3 xry111/xf86-video-removal
Last change on this file since 360f25bb was 4f464d8e, checked in by Xi Ruoyao <xry111@…>, 22 months ago

efivar: mark it useless on 32-bit kernel

  • Property mode set to 100644
File size: 7.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../../general.ent">
5 %general-entities;
6
7 <!ENTITY efivar-download-http "https://github.com/rhboot/efivar/releases/download/&efivar-version;/efivar-&efivar-version;.tar.bz2">
8 <!ENTITY efivar-download-ftp " ">
9 <!ENTITY efivar-md5sum "243fdbc48440212695cb9c6e6fd0f44f">
10 <!ENTITY efivar-size "316 KB">
11 <!ENTITY efivar-buildsize "18 MB">
12 <!ENTITY efivar-time "less than 0.1 SBU">
13]>
14
15<sect1 id="efivar" xreflabel="efivar-&efivar-version;">
16 <?dbhtml filename="efivar.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>efivar-&efivar-version;</title>
23
24 <indexterm zone="efivar">
25 <primary sortas="a-efivar">efivar</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to efivar</title>
30
31 <para>
32 The <application>efivar</application> package provides tools and
33 libraries to manipulate EFI variables.
34 </para>
35
36 &lfs112_checked;
37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>
42 Download (HTTP): <ulink url="&efivar-download-http;"/>
43 </para>
44 </listitem>
45 <listitem>
46 <para>
47 Download (FTP): <ulink url="&efivar-download-ftp;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download MD5 sum: &efivar-md5sum;
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download size: &efivar-size;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Estimated disk space required: &efivar-buildsize;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated build time: &efivar-time;
68 </para>
69 </listitem>
70 </itemizedlist>
71
72 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
73 <itemizedlist spacing="compact">
74 <listitem>
75 <para>
76 Optional patch (Required for 32-bit systems):
77 <ulink url="&patch-root;/efivar-&efivar-version;-i686-1.patch"/>
78 </para>
79 </listitem>
80 </itemizedlist>
81
82 <bridgehead renderas="sect3">efivar Dependencies</bridgehead>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required">
86 <xref linkend="mandoc"/>
87 </para>
88
89 <para condition="html" role="usernotes">User Notes:
90 <ulink url="&blfs-wiki;/efivar"/></para>
91
92 </sect2>
93
94 <sect2 role="installation">
95 <title>Installation of efivar</title>
96
97 <para>
98 First, fix an issue in Makefile causing the package to be rebuilt
99 during installation:
100 </para>
101
102<screen><userinput>sed '/prep :/a\\ttouch prep' -i src/Makefile</userinput></screen>
103
104 <para>
105 Now adapt this package for a change in glibc-2.36:
106 </para>
107
108<screen><userinput>sed '/sys\/mount\.h/d' -i src/util.h
109sed '/unistd\.h/a#include &lt;sys/mount.h&gt;' -i src/gpt.c src/linux.c</userinput></screen>
110
111 <note>
112 <para>
113 This package cannot function properly on a 32-bit system with a
114 64-bit UEFI implementation. Don't install this package (or
115 efibootmgr) on 32-bit system unless you are absolutely sure you have
116 a 32-bit UEFI implementation, which is very rare in practice.
117 </para>
118 </note>
119
120 <para>
121 If building this package on a 32-bit system, apply a patch:
122 </para>
123
124<screen><userinput>[ $(getconf LONG_BIT) = 64 ] || patch -Np1 -i ../efivar-&efivar-version;-i686-1.patch</userinput></screen>
125
126 <para>
127 Build <application>efivar</application> with the following commands:
128 </para>
129
130<screen><userinput>make</userinput></screen>
131
132 <para>
133 The test suite of this package is dangerous. Running it may trigger
134 firmware bugs and make your system unusable without using some special
135 hardware to reprogram the firmware.
136 </para>
137
138 <para>
139 Now, as the <systemitem class="username">root</systemitem> user:
140 </para>
141
142<screen role="root"><userinput>make install LIBDIR=/usr/lib</userinput></screen>
143
144 </sect2>
145
146 <sect2 role="commands">
147 <title>Command Explanations</title>
148
149 <para>
150 <parameter>LIBDIR=/usr/lib</parameter>:
151 This option overrides the default library directory of the package
152 (<filename class="directory">/usr/lib64</filename>, which is not used
153 by LFS.)
154 </para>
155
156 </sect2>
157
158 <sect2 role="content">
159 <title>Contents</title>
160
161 <segmentedlist>
162 <segtitle>Installed Programs</segtitle>
163 <segtitle>Installed Libraries</segtitle>
164 <segtitle>Installed Directories</segtitle>
165
166 <seglistitem>
167 <seg>
168 efisecdb and efivar
169 </seg>
170 <seg>
171 libefiboot.so, libefisec.so, and libefivar.so
172 </seg>
173 <seg>
174 /usr/include/efivar
175 </seg>
176 </seglistitem>
177 </segmentedlist>
178
179 <variablelist>
180 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
181 <?dbfo list-presentation="list"?>
182 <?dbhtml list-presentation="table"?>
183
184 <varlistentry id="efisecdb">
185 <term><command>efisecdb</command></term>
186 <listitem>
187 <para>
188 is an utility for managing UEFI signature lists
189 </para>
190 <indexterm zone="efivar efisecdb">
191 <primary sortas="b-efisecdb">efisecdb</primary>
192 </indexterm>
193 </listitem>
194 </varlistentry>
195
196 <varlistentry id="efivar-prog">
197 <term><command>efivar</command></term>
198 <listitem>
199 <para>
200 is a tool to manipulate UEFI variables
201 </para>
202 <indexterm zone="efivar efivar-prog">
203 <primary sortas="b-efivar">efivar</primary>
204 </indexterm>
205 </listitem>
206 </varlistentry>
207
208 <varlistentry id="libefiboot">
209 <term><filename class="libraryfile">libefiboot.so</filename></term>
210 <listitem>
211 <para>
212 is a library used by <command>efibootmgr</command>
213 </para>
214 <indexterm zone="efivar libefiboot">
215 <primary sortas="c-libefiboot">libefiboot.so</primary>
216 </indexterm>
217 </listitem>
218 </varlistentry>
219
220 <varlistentry id="libefisec">
221 <term><filename class="libraryfile">libefisec.so</filename></term>
222 <listitem>
223 <para>
224 is a library for managing UEFI signature lists
225 </para>
226 <indexterm zone="efivar libefisec">
227 <primary sortas="c-libefisec">libefisec.so</primary>
228 </indexterm>
229 </listitem>
230 </varlistentry>
231
232 <varlistentry id="libefivar">
233 <term><filename class="libraryfile">libefivar.so</filename></term>
234 <listitem>
235 <para>
236 is a library for the manipulation of EFI variables
237 </para>
238 <indexterm zone="efivar libefiboot">
239 <primary sortas="c-libefiboot">libefiboot.so</primary>
240 </indexterm>
241 </listitem>
242 </varlistentry>
243
244 </variablelist>
245
246 </sect2>
247
248</sect1>
Note: See TracBrowser for help on using the repository browser.