From Fedora Project Wiki

Revision as of 20:15, 7 March 2023 by Jjames (talk | contribs) (Improve list readability)


FontAwesome6

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

Update the FontAwesome package in Fedora to version 6.x, with a compatibility package for packages still needing 4.x.

Owner

Affected maintainers

Current status

  • Targeted release: Fedora Linux 39
  • Last updated: 2023-03-07
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

The fontawesome-fonts package in Fedora is currently on version 4.7.0. Meanwhile, some packages now require version 5.x or 6.x of the fonts. Since most consumers still want version 4.7.0, the proposal is to introduce a fontawesome4-fonts compatibility package, and move the fontawesome-fonts package to the most recent release, currently version 6.3.0.

Feedback

Benefit to Fedora

Some user-facing applications will be able to display the latest versions of the FontAwesome icons, which have undergone a number of updates and cleanups to provide a more pleasing look. In addition, many new icons have been added in the 5.x and 6.x versions. For example, version 6.x contains a Fedora icon, while previous versions do not.

Scope

  • Proposal owners:

The fontawesome-fonts package will be updated to version 6.3.0. The python-pydata-sphinx-theme package will be updated to version 0.13.1, which requires FontAwesome 6.x. The python-QtAwesome package will be updated to version 1.2.2, which includes FontAwesome 6.x support, and changed to unbundle those fonts that can be unbundled. The python-sphinx_ansible_theme package will be updated to version 0.10.1, which permits some spec file simplifications, and updated to depend on fontawesome4-fonts. The python-XStatic-Font-Awesome package will be updated to version 6.2.1.1, which requires FontAwesome 6.x. The texlive package will be updated to remove an unnecessary dependency on fontawesome-fonts.

Two new packages will be added to the distribution:

    • fontawesome4-fonts, a nearly exact copy of the current fontawesome-fonts package
    • python-accessible-pygments, to support upgrading the python-pydata-sphinx-theme package

One package will be retired from the distribution:

    • fontawesome5-fonts, which will be obsoleted by fontawesome-fonts, since version 6.x is backwards compatible with 5.x

The following packages will be updated to depend on fontawesome4-fonts instead of fontawesome-fonts:

    • freeipa
    • ipsilon
    • python-acme
    • python-f5-sdk
    • python-streamlink
    • sympa

The following packages will be updated to unbundle the FontAwesome CSS files and depend on fontawesome4-fonts:

    • python-nbclassic

The following packages will be updated to unbundle the FontAwesome 4.x fonts and depend on fontawesome4-fonts:

    • dogtag-pki

The following packages will be updated to unbundle the FontAwesome 6.x fonts:

    • R-fontawesome

The following packages will be updated to build documentation with the new version of python-pydata-sphinx-theme:

    • python-networkx

Finally, the cantata package will be updated to version 2.5.0, which is the final upstream version. Since upstream has declared itself dead, a patch to use FontAwesome 6.x will be added to the cantata package, so that we can someday retire fontawesome4-fonts.

All of these changes are available for inspection at this COPR. Changes for an individual package can be seen in jjames's fork of that package.

Several packages do not need any changes, because they already depend on font(fontawesome), rather than on fontawesome-fonts, as suggested by the font guidelines.

    • coq
    • libgpuarray
    • libsemigroups
    • python-BTrees
    • python-primecountpy
    • python-sphinx_rtd_theme
  • Other developers:

Maintainers of the packages listed above will need to review the proposed changes and merge them if they are acceptable. Afterwards, I will build all packages in a side tag and merge to Rawhide once all builds are complete.

  • Release engineering: N/A (not needed for this Change)
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Objectives:

This proposal is aligned with current Fedora Objectives.

Upgrade/compatibility impact

Users should not notice this change, except for having fewer bundled copies of the FontAwesome icons on disk.


How To Test

Install packages from the the FontAwesome6 COPR. Launch each one and verify that it displays the expected icons.


User Experience

Users should not see any changes, except for a disk space savings if they have more than one affected package installed.

Dependencies

All dependencies are listed above and will be updated together. If maintainers do not respond to pull requests in a timely manner, then provenpackager privileges can be used to merge the pull requests and do the builds together. The definition of "timely manner" is up for debate.


Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change), Yes/No


Documentation

N/A (not a System Wide Change)

Release Notes

The fontawesome-fonts package has been upgraded to version 6.3.0, and a compatibility fontawesome4-fonts package has been introduced for applications that still require FontAwesome 4.7.0. For packages that can use the FontAwesome 6.x icons, the changes described in the FontAwesome changelog are now available. Packages that use the FontAwesome 4.x icons do not have any user-visible changes.