mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-02-04 07:17:15 +08:00
e1e58be454
neither firefox nor epiphany can download them, and they are not well maintained, because rarely tested. This is WIP because the "(HTTP)" part of "Download (HTTP)" will need to be removed too. But let's see what users think first...
502 lines
17 KiB
XML
502 lines
17 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 gtk4-download-http "&gnome-download-http;/gtk/>k4-minor;/gtk->k4-version;.tar.xz">
|
|
<!ENTITY gtk4-download-ftp " ">
|
|
<!ENTITY gtk4-md5sum "f10755278b019aecdb0987998635f90e">
|
|
<!ENTITY gtk4-size "17 MB">
|
|
<!ENTITY gtk4-buildsize "502 MB (with docs; add 23 MB for tests)">
|
|
<!ENTITY gtk4-time "1.3 SBU (using parallelism=4; with docs; add 0.6 SBU for tests)">
|
|
]>
|
|
|
|
<sect1 id="gtk4" xreflabel="GTK->k4-version;">
|
|
<?dbhtml filename="gtk4.html"?>
|
|
|
|
<title>GTK->k4-version;</title>
|
|
|
|
<indexterm zone="gtk4">
|
|
<primary sortas="a-gtk4">GTK-4</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to GTK 4</title>
|
|
|
|
<para>
|
|
The <application>GTK 4</application> package contains libraries used for
|
|
creating graphical user interfaces for applications.
|
|
</para>
|
|
|
|
&lfs120_checked;
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Download (HTTP): <ulink url=">k4-download-http;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download (FTP): <ulink url=">k4-download-ftp;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download MD5 sum: >k4-md5sum;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download size: >k4-size;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated disk space required: >k4-buildsize;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated build time: >k4-time;
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<bridgehead renderas="sect3">GTK 4 Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
<para role="required">
|
|
<xref linkend="fribidi"/>,
|
|
<xref linkend="gdk-pixbuf"/>,
|
|
<xref linkend="graphene"/>,
|
|
<xref linkend="iso-codes"/>,
|
|
<xref linkend="libepoxy"/>,
|
|
<xref linkend="libxkbcommon"/>,
|
|
<xref linkend="pango"/>,
|
|
<xref linkend="pygobject3"/>, and
|
|
<xref linkend="wayland-protocols"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
|
<para role="recommended">
|
|
<xref linkend="adwaita-icon-theme"/> (default for some gtk4 settings keys),
|
|
<xref linkend="gst10-plugins-bad"/>,
|
|
<xref role='runtime' linkend="gst10-plugins-good"/> (runtime,
|
|
built with <xref role='nodep' linkend='libvpx'/>),
|
|
<xref linkend="hicolor-icon-theme"/> (needed for tests and for defaults), and
|
|
<xref linkend="librsvg"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Recommended (Required if building GNOME)</bridgehead>
|
|
<para role="recommended">
|
|
<xref linkend="gobject-introspection"/>
|
|
</para>
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
<para role="optional">
|
|
<xref linkend="colord"/>,
|
|
<xref linkend="cups"/>,
|
|
<xref linkend="docutils"/>,
|
|
<xref linkend="ffmpeg"/> (built with
|
|
<xref role='nodep' linkend='libvpx'/>),
|
|
<xref linkend="gi-docgen"/>,
|
|
<xref role="runtime" linkend="highlight"/>
|
|
(runtime, only used by <command>gtk4-demo</command> for syntax
|
|
highlighting of demo source code),
|
|
<xref linkend="libcloudproviders"/>,
|
|
<xref linkend="sassc"/>,
|
|
<xref linkend="tracker3"/>,
|
|
<ulink url="https://github.com/OpenPrinting/cpdb-libs">cpdb</ulink>,
|
|
<ulink url="&sysprof-url;">sysprof</ulink>, and
|
|
<ulink url="https://vulkan.lunarg.com/sdk/home">vulkan</ulink>
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of GTK 4</title>
|
|
|
|
<para>
|
|
Install <application>GTK 4</application> by running the following
|
|
commands:
|
|
</para>
|
|
|
|
<screen><userinput>mkdir build &&
|
|
cd build &&
|
|
|
|
meson setup --prefix=/usr \
|
|
--buildtype=release \
|
|
-Dbroadway-backend=true \
|
|
-Dintrospection=enabled \
|
|
.. &&
|
|
ninja</userinput></screen>
|
|
|
|
<para>
|
|
If you have <xref linkend='gi-docgen'/> installed and wish to build
|
|
the API documentation for this package, issue:
|
|
</para>
|
|
|
|
<screen remap='doc'><userinput>sed "s@'doc'@& / 'gtk->k4-version;'@" -i ../docs/reference/meson.build &&
|
|
meson configure -Dgtk_doc=true &&
|
|
ninja</userinput></screen>
|
|
|
|
<para>
|
|
To run the tests, issue: <command>dbus-run-session meson test --setup
|
|
x11</command>. If you are in a Wayland session, replace x11 with wayland.
|
|
Nine tests are known to fail if
|
|
<ulink url="https://gitlab.gnome.org/GNOME/cantarell-fonts">Cantrell fonts</ulink>
|
|
are not installed. Many tests will fail if
|
|
<filename>~/.config/gtk-4.0/settings.ini</filename> exists and the gtk-modules
|
|
line is not commented out.
|
|
On systems with NVIDIA graphics cards, the tests may take significantly
|
|
longer than the above test time.
|
|
</para>
|
|
<!-- [pierre]: 4.6.0, wayland: 727 ok; 2 Expected Fail; 1 Fail; 1 Skipped
|
|
[bdubbs]: 4.6.3, x11, 724 OK, 2 Expected Fail, 12 Fail. 1 Skipped
|
|
[pierre]: 4.6.6, wayland, 738 OK, 2 Expected Fail, 1 Fail. 1 Skipped
|
|
[pierre]: 4.6.7, wayland, 737 OK, 2 Expected Fail, 1 Fail. 1 Skipped. 1 Timeout
|
|
[bdubbs]: 4.6.7, x11, 758 OK, 2 Expected Fail, 9 Fail. 1 Skipped. 1 Timeout
|
|
[pierre]: 4.8.1, wayland, 765 OK, 2 Expected Fail, 2 Fail. 1 Skipped
|
|
[bdubbs]: 4.8.2, x11, 753 OK, 2 Expected Fail, 14 Fail. 1 Skipped
|
|
[pierre]: 4.8.3, wayland, 760 OK, 2 Expected Fail, 5 Fail. 3 Skipped
|
|
[bdubbs]: 4.10.0, x11, 701 OK, 0 Expected Fail, 15 Fail. 1 Skipped, 2 Timeout
|
|
above over ssh
|
|
[bdubbs]: 4.10.0, x11, 712 OK, 0 Expected Fail, 6 Fail. 1 Skipped, 0 Timeout
|
|
above on native x11
|
|
[bdubbs]: 4.12.0, x11, 1453 OK, 0 Expected Fail, 9 Fail. 5 Skipped, 0 Timeout
|
|
above on native x11
|
|
[bdubbs]: 4.12.1, x11, 1455 OK, 0 Expected Fail, 7 Fail. 5 Skipped, 0 Timeout
|
|
above on native x11
|
|
-->
|
|
|
|
<para>
|
|
Now, as the <systemitem class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>ninja install</userinput></screen>
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/meson-buildtype-release.xml"/>
|
|
|
|
<para>
|
|
<parameter>-Dbroadway-backend=true</parameter>: This switch enables the
|
|
HTML5 GDK backend.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>-Dintrospection=enabled</parameter>: This switch enables
|
|
using <xref linkend='gobject-introspection'/> to generate GIR bindings
|
|
of this packages. These bindings are required by GNOME.
|
|
</para>
|
|
|
|
<para>
|
|
<option>-Dcloudproviders=enabled</option>: Use this switch if you have
|
|
<xref linkend="libcloudproviders" role="nodep"/> installed and wish to
|
|
enable support for cloud providers in a file chooser window.
|
|
</para>
|
|
|
|
<para>
|
|
<option>-Dtracker=enabled</option>: Use this switch if you have
|
|
<xref linkend="tracker3"/> installed and wish to use search functionality
|
|
when running a file chooser.
|
|
</para>
|
|
|
|
<para>
|
|
<option>-Dcolord=enabled</option>: Use this switch if you have
|
|
<xref linkend="colord"/> installed and wish to use colord with the CUPS
|
|
printing backend.
|
|
</para>
|
|
|
|
<para>
|
|
<option>-Dman-pages=true</option>: Use this switch if you have
|
|
<xref linkend='docutils'/> installed and wish to generate the man
|
|
pages.
|
|
</para>
|
|
|
|
<para>
|
|
<option>-Dsysprof=enabled</option>: Use this switch if you have
|
|
<ulink url="&sysprof-url;">sysprof</ulink> installed and wish to enable
|
|
tracing support for GTK4-based applications.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="configuration">
|
|
<title>Configuring GTK 4</title>
|
|
|
|
<sect3 id="gtk4-config">
|
|
<title>Config Files</title>
|
|
<para>
|
|
<filename>~/.config/gtk-4.0/settings.ini</filename> and
|
|
<filename>/usr/share/gtk-4.0/settings.ini</filename>
|
|
</para>
|
|
|
|
<indexterm zone="gtk4 gtk4-config">
|
|
<primary sortas="e-AA.home-gtk4-settings.ini">~/.config/gtk-4.0/settings.ini</primary>
|
|
</indexterm>
|
|
|
|
<indexterm zone="gtk4 gtk4-config">
|
|
<primary
|
|
sortas="e-usr-share-path-settings.ini">/usr/share/gtk-4.0/settings.ini</primary>
|
|
</indexterm>
|
|
</sect3>
|
|
|
|
<sect3><title>Configuration Information</title>
|
|
|
|
<para>
|
|
<application>GTK 4</application> themes change the way a
|
|
<application>GTK 4</application> application looks. An icon theme can
|
|
be used to change the icons that appear on the application's toolbar.
|
|
If you have installed a <application>GTK 4</application> theme (e.g.
|
|
the Adwaita theme built in <application>GTK 4</application>),
|
|
an icon theme (such as <xref linkend="oxygen-icons5"/>) and/or a font
|
|
(<xref linkend="dejavu-fonts"/>), you can set your preferences in
|
|
<filename>~/.config/gtk-4.0/settings.ini</filename>, or the default
|
|
system-wide configuration file (as the
|
|
<systemitem class="username">root</systemitem> user), in
|
|
<filename>/usr/share/gtk-4.0/settings.ini</filename>. For the local
|
|
user, an example is:
|
|
</para>
|
|
|
|
<screen><userinput>mkdir -pv ~/.config/gtk-4.0
|
|
cat > ~/.config/gtk-4.0/settings.ini << "EOF"
|
|
<literal>[Settings]
|
|
gtk-theme-name = <replaceable>Adwaita</replaceable>
|
|
gtk-icon-theme-name = <replaceable>oxygen</replaceable>
|
|
gtk-font-name = <replaceable>DejaVu Sans 12</replaceable>
|
|
gtk-cursor-theme-size = <replaceable>18</replaceable>
|
|
gtk-xft-antialias = <replaceable>1</replaceable>
|
|
gtk-xft-hinting = <replaceable>1</replaceable>
|
|
gtk-xft-hintstyle = <replaceable>hintslight</replaceable>
|
|
gtk-xft-rgba = <replaceable>rgb</replaceable>
|
|
gtk-cursor-theme-name = <replaceable>Adwaita</replaceable></literal>
|
|
EOF</userinput></screen>
|
|
|
|
<para>
|
|
There are many settings keys, some with default values. You can find
|
|
them at <ulink
|
|
url="https://developer.gnome.org/gtk4/stable/GtkSettings.html">Settings:
|
|
GTK 4 Reference Manual</ulink>.
|
|
</para>
|
|
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 role="content">
|
|
<title>Contents</title>
|
|
|
|
<segmentedlist>
|
|
<segtitle>Installed Programs</segtitle>
|
|
<segtitle>Installed Libraries</segtitle>
|
|
<segtitle>Installed Directories</segtitle>
|
|
|
|
<seglistitem>
|
|
<seg>
|
|
gtk4-broadwayd,
|
|
gtk4-builder-tool,
|
|
gtk4-demo,
|
|
gtk4-demo-application,
|
|
gtk4-encode-symbolic-svg,
|
|
gtk4-icon-browser,
|
|
gtk4-launch,
|
|
gtk4-node-editor,
|
|
gtk4-print-editor,
|
|
gtk4-query-settings,
|
|
gtk4-update-icon-cache, and
|
|
gtk4-widget-factory
|
|
</seg>
|
|
<seg>
|
|
libgtk-4.so
|
|
</seg>
|
|
<seg>
|
|
/usr/include/gtk-4.0,
|
|
/usr/lib/gtk-4.0, and
|
|
/usr/share/gtk-4.0
|
|
</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="gtk4-broadwayd">
|
|
<term><command>gtk4-broadwayd</command></term>
|
|
<listitem>
|
|
<para>
|
|
provides support for displaying GTK 4 applications in a web
|
|
browser using HTML5 and web sockets
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-broadwayd">
|
|
<primary sortas="b-gtk4-broadwayd">gtk4-broadwayd</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-builder-tool">
|
|
<term><command>gtk4-builder-tool</command></term>
|
|
<listitem>
|
|
<para>
|
|
performs various operations on GtkBuilder .ui files
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-builder-tool">
|
|
<primary sortas="b-gtk4-builder-tool">gtk4-builder-tool</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-demo">
|
|
<term><command>gtk4-demo</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a simple program that demonstrates some of the tasks that can be
|
|
done with GTK 4
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-demo">
|
|
<primary sortas="b-gtk4-demo">gtk4-demo</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-demo-application">
|
|
<term><command>gtk4-demo-application</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a simple GTK 4 application which is useful for testing
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-demo-application">
|
|
<primary sortas="b-gtk4-demo-application">gtk4-demo-application</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-encode-symbolic-svg">
|
|
<term><command>gtk4-encode-symbolic-svg</command></term>
|
|
<listitem>
|
|
<para>
|
|
converts symbolic SVG icons into special PNG files. GTK 4 can load
|
|
and recolor these PNGs, just like original SVGs, but loading them
|
|
is much faster
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-encode-symbolic-svg">
|
|
<primary sortas="b-gtk4-encode-symbolic-svg">gtk4-encode-symbolic-svg</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-icon-browser">
|
|
<term><command>gtk4-icon-browser</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a utility to explore the icons in the current icon theme. It
|
|
shows icons in various sizes, their symbolic variants when
|
|
available, as well as a description of the icon and its context
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-icon-browser">
|
|
<primary sortas="b-gtk4-icon-browser">gtk4-icon-browser</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-launch">
|
|
<term><command>gtk4-launch</command></term>
|
|
<listitem>
|
|
<para>
|
|
launches an application using the given name. The name should match
|
|
the application .desktop file name (as seen in
|
|
<filename class="directory">/usr/share/applications</filename>),
|
|
with or without the '.desktop' extension
|
|
</para>
|
|
<indexterm zone="gtk4 gtk-launch">
|
|
<primary sortas="b-gtk4-launch">gtk4-launch</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-node-editor">
|
|
<term><command>gtk4-node-editor</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a utility to show and edit render node files. Such render
|
|
node files can be obtained e.g. from the GTK inspector
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-node-editor">
|
|
<primary sortas="b-gtk4-node-editor">gtk4-node-editor</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-print-editor">
|
|
<term><command>gtk4-print-editor</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a simple program to demonstrate printing using GTK 4
|
|
applications
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-print-editor">
|
|
<primary sortas="b-gtk4-print-editor">gtk4-print-editor</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-query-settings">
|
|
<term><command>gtk4-query-settings</command></term>
|
|
<listitem>
|
|
<para>
|
|
provides a complete listing of all settings related to GTK 4
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-query-settings">
|
|
<primary sortas="b-gtk4-query-settings">gtk4-query-settings</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-update-icon-cache">
|
|
<term><command>gtk4-update-icon-cache</command></term>
|
|
<listitem>
|
|
<para>
|
|
is an icon theme caching utility that creates mmap()able cache
|
|
files for icon themes
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-update-icon-cache">
|
|
<primary sortas="b-gtk4-update-icon-cache">gtk4-update-icon-cache</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="gtk4-widget-factory">
|
|
<term><command>gtk4-widget-factory</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a program to view GTK 4 themes and widgets
|
|
</para>
|
|
<indexterm zone="gtk4 gtk4-widget-factory">
|
|
<primary sortas="b-gtk4-widget-factory">gtk4-widget-factory</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libgtk-4">
|
|
<term><filename class="libraryfile">libgtk-4.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
contains functions that provide an API to implement graphical user
|
|
interfaces
|
|
</para>
|
|
<indexterm zone="gtk4 libgtk-4">
|
|
<primary sortas="c-libgtk-4">libgtk-4.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</sect2>
|
|
</sect1>
|