glfs/general/genutils/ibus.xml
Pierre Labastie b7a85cd931 Format general/genutils
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22852 af4574ff-66df-0310-9fd7-8a98e5e911e0
2020-03-18 10:00:14 +00:00

318 lines
9.5 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY ibus-download-http "https://github.com/ibus/ibus/releases/download/&ibus-version;/ibus-&ibus-version;.tar.gz">
<!ENTITY ibus-download-ftp " ">
<!ENTITY ibus-md5sum "717975f7de5b7a6eb89a5966db3e6c2e">
<!ENTITY ibus-size "3.4 MB">
<!ENTITY ibus-buildsize "77 MB (with tests)">
<!ENTITY ibus-time "0.5 SBU (Using parallelism=4; with tests)">
<!ENTITY ucd-download-http "https://www.unicode.org/Public/zipped/10.0.0/UCD.zip">
]>
<sect1 id="ibus" xreflabel="ibus-&ibus-version;">
<?dbhtml filename="ibus.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>ibus-&ibus-version;</title>
<indexterm zone="ibus">
<primary sortas="a-ibus">ibus</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to ibus</title>
<para>
<application>ibus</application> is an Intelligent Input Bus. It is a new
input framework for the Linux OS. It provides a fully featured and user
friendly input method user interface.
</para>
&lfs91_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&ibus-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&ibus-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &ibus-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &ibus-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &ibus-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &ibus-time;
</para>
</listitem>
</itemizedlist>
<!--
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/ibus-&ibus-version;-upstream_fixes-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">Optional Download</bridgehead>
<bridgehead renderas="sect4">Unicode Character Database</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download: <ulink url="&ucd-download-http;">
&ucd-download-http;</ulink>
(Unicode Character Database)
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">ibus Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="dconf"/>,
<xref linkend="iso-codes"/>, and
<xref linkend="vala"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="gobject-introspection"/>,
<xref linkend="gtk2"/>, and
<xref linkend="libnotify"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="dbus-python"/> and
<xref linkend="pygobject3"/> (both to build the Python support library),
<xref linkend="gtk-doc"/>,
<xref linkend="pyxdg"/> (for the <command>ibus-setup</command>), and
<xref linkend="libxkbcommon"/>,
<xref linkend="wayland"/> (both to build the Wayland support programs), and
<ulink url="https://www.joypixels.com/">EmojiOne</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/ibus"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of ibus</title>
<para>
If the optional Unicode Character Database was downloaded, install it
now as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>mkdir -p /usr/share/unicode/ucd &amp;&amp;
unzip -u ../UCD.zip -d /usr/share/unicode/ucd</userinput></screen>
<note>
<para>
Be sure to also remove the --disable-unicode-dict in
the configure step below.
</para>
</note>
<para>
Fix an issue with deprecated schema entries:</para>
<screen><userinput>sed -i 's@/desktop/ibus@/org/freedesktop/ibus@g' \
data/dconf/org.freedesktop.ibus.gschema.xml</userinput></screen>
<para>
Install <application>ibus</application> by running the following
commands:
</para>
<screen><userinput>./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-unicode-dict \
--disable-emoji-dict &amp;&amp;
rm -f tools/main.c &amp;&amp;
make</userinput></screen>
<para>
To test the results, issue: <command>make -k check</command>.
One test may fail for unknown reasons.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install &amp;&amp;
gzip -dfv /usr/share/man/man{{1,5}/ibus*.gz,5/00-upstream-settings.5.gz}</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<!-- <para>
<command>sed -ri ... data/ibus.schemas ...</command>: This sed fixes
deprecated entries in the gsettings schema templates installed by this
package.
</para>
-->
<para>
<parameter>--disable-emoji-dict</parameter>: This switch disables the
use of emoticon dictionaries. Omit if you installed the optional
package.
</para>
<para>
<parameter>--disable-unicode-dict</parameter>: This switch disables the use
of unicode dictionaries. Omit if you installed the optional
Unicode Character Database.
</para>
<para>
<command>rm -f tools/main.c</command>: This command removes a generated
file that was not removed when packaging.
</para>
<para>
<option>--disable-gtk2</option>: This switch disables building
the <application>GTK+ 2</application> immodule. Use it if
you have not installed <application>GTK+ 2</application>.
</para>
<para>
<option>--enable-python-library</option>: This switch enables
building the <application>Python</application> support
library. Use it if you have installed the optional dependencies.
</para>
<para>
<option>--enable-wayland</option>: This switch enables building
the <application>Wayland</application> support programs.
Use it if you have installed the optional dependencies.
</para>
<para>
<option>--with-python=python3</option>: This switch makes
the <command>configure</command> script look for
<application>Python 3</application>. Use it if you want
to build the <application>Python 3</application> support
library alongside the <application>Python 2</application>
one.
</para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/gtk-doc-rebuild.xml"/>
<para>
<command>gzip -dfv ...</command>: Decompress installed man pages
in accordance with other man pages.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
ibus,
ibus-daemon, and
ibus-setup
</seg>
<seg>
libibus-1.0.so and
im-ibus.so (<application>GTK+ Immodule</application>)
</seg>
<seg>
/etc/dconf/db/ibus.d,
/usr/include/ibus-1.0,
/usr/share/gtk-doc/html/ibus, and
/usr/share/ibus
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="ibus-daemon">
<term><command>ibus-daemon</command></term>
<listitem>
<para>
is the Intelligent Input Bus Daemon.
</para>
<indexterm zone="ibus ibus-daemon">
<primary sortas="b-ibus-daemon">ibus-daemon</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="ibus-setup">
<term><command>ibus-setup</command></term>
<listitem>
<para>
is the <application>GTK+</application> program used to configure
the <command>ibus-daemon</command>.
</para>
<indexterm zone="ibus ibus-setup">
<primary sortas="b-ibus-setup">ibus-setup</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libibus-1.0">
<term><filename class="libraryfile">libibus-1.0.so</filename></term>
<listitem>
<para>
contains the <application>ibus</application> API functions.
</para>
<indexterm zone="ibus libibus-1.0">
<primary sortas="c-libibus-1.0">libibus-1.0.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>