From Fedora Project Wiki

 
(18 intermediate revisions by 2 users not shown)
Line 9: Line 9:
* '''GPG key''': Denis Arnaud (Fedora Packager)
* '''GPG key''': Denis Arnaud (Fedora Packager)
* '''Fedora'''
* '''Fedora'''
** '''Fedora Account''' / '''FAS''': [https://admin.fedoraproject.org/accounts/user/view/denisarnaud denisarnaud]
** '''Fedora Account''': [https://accounts.fedoraproject.org/user/denisarnaud/ denisarnaud](deprecated: [https://admin.fedoraproject.org/accounts/user/view/denisarnaud denisarnaud@FAS])
** '''Fedora VOIP''': Extension #5105604 / SIP Address: sip:denisarnaud@fedoraproject.org
** '''Fedora VOIP''': Extension #5105604 / SIP Address: sip:denisarnaud@fedoraproject.org
** '''Fedora People Page''': http://denisarnaud.fedorapeople.org
** '''Fedora People Page''': http://denisarnaud.fedorapeople.org
Line 42: Line 42:
=== Boost ===
=== Boost ===
* Co-maintainers:
* Co-maintainers:
** Official mainstream package: [[User:Jwakely|Jon Wakely]] (old: <s>[[User:Pmachata|Petr Machata]]</s>)
** Official mainstream package: [[User:trodgers| Thomas Rodgers]] (old: <s>[[User:Jwakely|Jon Wakely]]</s>, <s>[[User:Pmachata|Petr Machata]]</s>)
** Specific packages on EPEL: [[User:hguemar|Haikel Guemar]], [[User:Robert|Robert Scheck]]
** Specific packages on EPEL: [[User:hguemar|Haikel Guemar]], [[User:Robert|Robert Scheck]]


* Pristine Boost packages on EPEL:
* Pristine Boost packages on EPEL:
** Boost 1.75 on EPEL 9
** Boost 1.66 on EPEL 8
** Boost 1.66 on EPEL 8
** Boost 1.53 on EPEL 7
** Boost 1.53 on EPEL 7
** Boost 1.41 on EPEL 6
** Boost 1.41 on EPEL 6


* Boost1.73 for EPEL 8:
* Boost1.78 for EPEL 8 (not completed):
** [https://src.fedoraproject.org/rpms/boost1.78/tree/epel8 Boost1.78 package source code repository for EPEL 8 branch]
** [https://bugzilla.redhat.com/show_bug.cgi?id=2165584 Boost1.78 Interest/bug request in Bugzilla]
 
* Boost1.73 for EPEL 8 (not completed):
** [https://bugzilla.redhat.com/show_bug.cgi?id=1828059 Boost1.73 Review request in Bugzilla]
** [https://bugzilla.redhat.com/show_bug.cgi?id=1828059 Boost1.73 Review request in Bugzilla]
** [https://copr.fedorainfracloud.org/coprs/denisarnaud/boost1.73/ Boost1.73 Copr's project]
** [https://copr.fedorainfracloud.org/coprs/denisarnaud/boost1.73/ Boost1.73 Copr's project]
Line 79: Line 84:


==== Boost Releases in Fedora ====
==== Boost Releases in Fedora ====
* [[Changes/F34Boost174|Boost 1.74 Feature for Fedora 34]] (to be completed in February 2020)([https://www.boost.org/development/index.html Boost 1.74 to be released in August 2020] / [https://github.com/boostorg/boost/releases Track the Boost releases on GitHub] / [https://dl.bintray.com/boostorg/master latest Boost snapshots])
* [[Changes/F39Boost181|Boost 1.81 Feature for Fedora 39]] (to be completed in February 2023)([https://www.boost.org/development/index.html Boost 1.81 to be released in December 2022] / [https://github.com/boostorg/boost/releases Track the Boost releases on GitHub] / [https://dl.bintray.com/boostorg/master latest Boost snapshots])


* [[Changes/F33Boost173|Boost 1.73 Feature for Fedora 33]] (to be completed in September 2020)([http://www.boost.org/users/history/version_1_73_0.html Boost 1.73 released on the 29 April 2020]
* [[Changes/F37Boost178|Boost 1.78 Feature for Fedora 37]] (completed in August 2022)([https://www.boost.org/users/history/version_1_78_0.html Boost 1.78 released on the 8 December 2021]
 
* [[Changes/F35Boost176|Boost 1.76 Feature for Fedora 35]] (completed in September 2021)([https://www.boost.org/users/history/version_1_76_0.html Boost 1.76 released on the 18 April 2021])
 
* [[Changes/F34Boost175|Boost 1.75 Feature for Fedora 34]] (completed in February 2021)([http://www.boost.org/users/history/version_1_75_0.html Boost 1.75 released on the 11 December 2020])
 
* [[Changes/F33Boost173|Boost 1.73 Feature for Fedora 33]] (completed in September 2020)([http://www.boost.org/users/history/version_1_73_0.html Boost 1.73 released on the 29 April 2020]


* [[Changes/F32Boost172|Boost 1.72 Feature for Fedora 32]] (cancelled as not completed in time, back in early 2020)([http://www.boost.org/users/history/version_1_72_0.html Boost 1.72 released on the 11 December 2019]
* [[Changes/F32Boost172|Boost 1.72 Feature for Fedora 32]] (cancelled as not completed in time, back in early 2020)([http://www.boost.org/users/history/version_1_72_0.html Boost 1.72 released on the 11 December 2019]
Line 87: Line 98:
** Failing build on COPR: https://copr.fedorainfracloud.org/coprs/denisarnaud/boost1.72/build/1105303/
** Failing build on COPR: https://copr.fedorainfracloud.org/coprs/denisarnaud/boost1.72/build/1105303/


* [[Changes/F31Boost170|Boost 1.70 Feature for Fedora 31]] (to be completed in September 2019) ([http://www.boost.org/users/history/version_1_70_0.html Boost 1.70 released on the 12 April 2019])
* [[Changes/F31Boost170|Boost 1.70 Feature for Fedora 31]] (completed in September 2019) ([http://www.boost.org/users/history/version_1_70_0.html Boost 1.70 released on the 12 April 2019])


* [[Changes/F30Boost169|Boost 1.69 Feature for Fedora 30]] (completed in January 2019) ([http://www.boost.org/users/history/version_1_69_0.html Boost 1.69 released on the 12 December 2018])
* [[Changes/F30Boost169|Boost 1.69 Feature for Fedora 30]] (completed in January 2019) ([http://www.boost.org/users/history/version_1_69_0.html Boost 1.69 released on the 12 December 2018])
Line 171: Line 182:


* First of all:
* First of all:
** A link to the wonderful [https://packager-dashboard.fedoraproject.org/denisarnaud Fedora packaging platform]
** A link to the wonderful [https://admin.fedoraproject.org/community Fedora Community platform] (not enough advertised!)
** A link to the wonderful [https://admin.fedoraproject.org/community Fedora Community platform] (not enough advertised!)
** A link to another wonderful [https://apps.fedoraproject.org/packages/ Fedora application for search and information about packages] (same comment as above)
** A link to another wonderful [https://apps.fedoraproject.org/packages/ Fedora application for search and information about packages] (same comment as above)
Line 210: Line 222:
** [https://lists.fedoraproject.org/archives/list/virt@lists.fedoraproject.org/ Fedora Virtualization mailing list (ML)]
** [https://lists.fedoraproject.org/archives/list/virt@lists.fedoraproject.org/ Fedora Virtualization mailing list (ML)]
** [https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org/ Fedora Users mailing list (ML)]
** [https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org/ Fedora Users mailing list (ML)]
* [[Zuul-based-ci]]


=== Modules ===
=== Modules ===
Line 216: Line 230:
=== EPEL ===
=== EPEL ===
* [[EPEL/FAQ]]
* [[EPEL/FAQ]]
* [[EPEL Next]]
* [http://mirror.centos.org/centos/8/Devel/ CentOS 8+ Devel repository]
* [http://mirror.centos.org/centos/8/Devel/ CentOS 8+ Devel repository]
* [[EPEL/Python3X]]
* [https://lists.centos.org/pipermail/centos-devel/2020-March/036644.html Dealing with unshipped -devel packages in CentOS Linux 8 and CentOS Stream, Brian Stinson, March 2020]
* [https://lists.centos.org/pipermail/centos-devel/2020-March/036644.html Dealing with unshipped -devel packages in CentOS Linux 8 and CentOS Stream, Brian Stinson, March 2020]


Line 224: Line 240:
* [https://webchat.freenode.net/?channels=#fedora-releng Fedora release engineering on Freenode IRC]
* [https://webchat.freenode.net/?channels=#fedora-releng Fedora release engineering on Freenode IRC]
* [https://src.fedoraproject.org/rpms/pyproject-rpm-macros/blob/master/f/README.md RPM Macros for Python packages]
* [https://src.fedoraproject.org/rpms/pyproject-rpm-macros/blob/master/f/README.md RPM Macros for Python packages]
* [[How to remove a package at end of life]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Package_Retirement_Process/ How to remove a package at end of life]


=== Ongoing tasks ===
=== Ongoing tasks ===
==== ZeroMQ CVE issue ====
* Bugzilla tickets:
** [https://bugzilla.redhat.com/show_bug.cgi?id=1875223 BZ#1875223 - CVE-2020-15166 zeromq: unauthenticated clients causing denial-of-service (umbrella ticket)]
** [https://bugzilla.redhat.com/show_bug.cgi?id=1876689 BZ#1876689 - CVE-2020-15166 zeromq: unauthenticated clients causing denial-of-service (fedora-all)]
** [https://bugzilla.redhat.com/show_bug.cgi?id=1876690 BZ#1876690 - CVE-2020-15166 zeromq: unauthenticated clients causing denial-of-service (epel-all)]
** [https://bugzilla.redhat.com/show_bug.cgi?id=1876691 BZ#1876691 - CVE-2020-15166 zeromq3: unauthenticated clients causing denial-of-service (epel-all)]
** [https://bugzilla.redhat.com/show_bug.cgi?id=1876738 BZ#1876738 - zeromq-4.3.3 is available] (for all Fedora and EPEL 8)
* [https://github.com/zeromq/libzmq/security/advisories/GHSA-25wp-cf8g-938m Upstream page - Denial-of-Service on CURVE/ZAP-protected servers by unauthenticated clients]
* Upstream fix (for EPEL 7):
** [https://github.com/zeromq/libzmq/pull/3913 problem: zeromq connects peer before handshake is complete (#3913)]
** [https://github.com/zeromq/libzmq/pull/3973 Problem: test_security_zap occasionally segfaults (#3973)]
==== CMake change - 2020-08 ====
* [[Changes/CMake to do out-of-source builds]]
* Mailing list threads:
** [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/P6FQAHOWSR5FTNJXEW6AWFAZQT7RROAS/ Fedora 33 System-Wide Change proposal: CMake to do out-of-source builds]
** [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/QIGY2CGCHQ4UQEOP4F27CLT7NX4MWVUR/#7XYGEAPM5KXWBMA6WU5B5LNZUWNUJVEY What to do about FTBFS because auf cmake change?]
** [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/WJUNUJ7BJQYXQTONR5AGOKD3ZNKLSDDC/#KSZKSY4UZYVUUCJZW52DMRFTBGFQAKU5 %{_vpath_builddir} needs to be in the Cmake packaging guidelines]
** [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/AX7P57CJFI6B7BQIZSJ45OB6QIVDC76B/#5F7753CBNTDH5QLSYJWHGPFPG5ENWBOX Fedora 33 Mass Rebuild]
* FTBFS
** [https://bugzilla.redhat.com/show_bug.cgi?id=1865515 BZ#1865515 - StdAir]
==== CMake 3.17 on EPEL 8 ====
* Mailing list threads:
** [https://lists.fedoraproject.org/archives/list/epel-devel@lists.fedoraproject.org/thread/ICZGG2SQKUTV2JUBAS4XTWX2FQIKZT27/ Updating CMake in EPEL-8: How to create a module?]


==== Upgrade of RE2 ====
==== Upgrade of RE2 ====
Line 322: Line 364:
==== Packaging ====
==== Packaging ====
===== General =====
===== General =====
* [[Join the package collection maintainers|Welcome page for the package maintainers]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Joining_the_Package_Maintainers/ Welcome page for the package maintainers]
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/ Packaging guidelines in Fedora Docs] (deprecated: [[Packaging:Guidelines|Packaging Guidelines on Fedora Wiki]]), and their [https://pagure.io/packaging-committee source code on Pagure.io]
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/ Packaging guidelines in Fedora Docs] (deprecated: [[Packaging:Guidelines|Packaging Guidelines on Fedora Wiki]]), and their [https://pagure.io/packaging-committee source code on Pagure.io]
* [[Packaging:ReviewGuidelines|Review guidelines]]
* [[Packaging:ReviewGuidelines|Review guidelines]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Package_Review_Process/ Package Review Process]
* [[Packaging tricks]]
* [[Packaging tricks]]
* [[Changes/Policy|Changes Policy]]
* [[Changes/Policy|Changes Policy]]
===== Require a repository for a new package =====
* Example of requesting to Pagure a repository for the new Boost1.73 package (parallel-installable with Boost). Note that version-specific Boost packages do not need to go through a review, as they are parallel-installable, as stated in https://docs.fedoraproject.org/en-US/packaging-guidelines/ReviewGuidelines/#_package_review_process
fedpkg request-repo boost1.73 1828059
https://pagure.io/releng/fedora-scm-requests/issue/28809


===== Specific guidelines =====
===== Specific guidelines =====
Line 333: Line 382:
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/ SourceURL] &rarr; [https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/#_git_hosting_services Git Hosting Services] (deprecated: [[Packaging/SourceURL|Source URL]] &rarr; [[Packaging/SourceURL#Github|GitHub source URL]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/ SourceURL] &rarr; [https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/#_git_hosting_services Git Hosting Services] (deprecated: [[Packaging/SourceURL|Source URL]] &rarr; [[Packaging/SourceURL#Github|GitHub source URL]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/Cmake/ CMake] (deprecated: [[Packaging:Cmake|CMake]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/Cmake/ CMake] (deprecated: [[Packaging:Cmake|CMake]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/ Python] / [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/ Python appendix] / [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Eggs/ Python Eggs] (deprecated: [[Packaging:Python|Python]] / [[Packaging:Python Appendix|Python Appendix]] / [[Packaging:Python Eggs|Python Eggs]])
* Python:
** [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/ Python guidelines]
** [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/ Python appendix]
** [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Eggs/ Python Eggs]
** [[Changes/PythonPackagingGuidelines202x]]
** Deprecated:
*** [[Packaging:Python|Python]]
*** [[Packaging:Python Appendix|Python Appendix]]
*** [[Packaging:Python Eggs|Python Eggs]]
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/R/ R] (old: [[Packaging:R|R]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/R/ R] (old: [[Packaging:R|R]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/MPI/ MPI] (deprecated: [[PackagingDrafts/MPI|MPI]])
* [https://docs.fedoraproject.org/en-US/packaging-guidelines/MPI/ MPI] (deprecated: [[PackagingDrafts/MPI|MPI]])
Line 352: Line 409:
===== Package updating =====
===== Package updating =====
* [[Updates Policy]]
* [[Updates Policy]]
* [[Package update HOWTO |Update how-to]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Package_Update_Guide/ Update how-to]
* [[Upstream release monitoring]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Upstream_Release_Monitoring/ Upstream release monitoring]
* [[Koschei]] &rarr; [http://koschei.cloud.fedoraproject.org Koschei at Fedora]
* [[Koschei]] &rarr; [http://koschei.cloud.fedoraproject.org Koschei at Fedora]


===== Package renaming =====
===== Package renaming =====
* [[Package Renaming Process]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Package_Renaming_Process/ Package Renaming Process]
* [[Packaging:Guidelines#Renaming/Replacing Existing Packages|''Renaming/Replacing Existing Packages'' section of the Packaging guideleines]]
* [[Packaging:Guidelines#Renaming/Replacing Existing Packages|''Renaming/Replacing Existing Packages'' section of the Packaging guideleines]]


===== Package retiring =====
===== Package retiring =====
* [[How to remove a package at end of life]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Package_Retirement_Process/ How to remove a package at end of life]


===== Build Side Build Targets/Tags =====
===== Build Side Build Targets/Tags =====
Line 370: Line 427:
===== Reviews =====
===== Reviews =====
* [[Packaging:ReviewGuidelines|Package Review Guidelines]]
* [[Packaging:ReviewGuidelines|Package Review Guidelines]]
* [[Package Review Process]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Package_Review_Process/ Package Review Process]
* [[PackageDB admin requests]]
* [[PackageDB admin requests]]
* [[SIGs/Package Review|Package Review SIG]]
* [[SIGs/Package Review|Package Review SIG]]
Line 380: Line 437:
===== Tools =====
===== Tools =====
* [https://github.com/fedorapackaging/docker-images Docker images for Fedora Packaging]
* [https://github.com/fedorapackaging/docker-images Docker images for Fedora Packaging]
* [[Using the Koji build system|Koji how-to]]
* [https://docs.fedoraproject.org/en-US/package-maintainers/Using_the_Koji_Build_System/ Koji how-to]
* [https://fedorahosted.org/bodhi/wiki/CLI Bodhi-client how-to]
* [https://fedorahosted.org/bodhi/wiki/CLI Bodhi-client how-to]
* [[Fedora Easy Karma|Fedora Easy Karma (f-e-k)]]
* [[Fedora Easy Karma|Fedora Easy Karma (f-e-k)]]

Latest revision as of 14:01, 8 February 2023

Denis Arnaud

I first installed RedHat (version 5, in 1998) with Oracle 8, when that latter was delivered on Linux for the first time... on a small Pentium-based computer with 600MB of disk and 64MB of RAM, hence proving to my hierarchy that Linux was ready for professional use. I started to be involved in the Fedora building process by translating documents and package descriptions, and have become a packager in 2009.

Contact

Activities within Fedora

Packaging with Docker Images

Boost

  • Pristine Boost packages on EPEL:
    • Boost 1.75 on EPEL 9
    • Boost 1.66 on EPEL 8
    • Boost 1.53 on EPEL 7
    • Boost 1.41 on EPEL 6

Boost Releases in Fedora

Helper tools for Boost building on Fedora Rawhide

Modularized Boost

Projects on Copr

Bringing and maintaining a few packages to Fedora

Scientific Spin

Translations (into French)

A few quick links on Fedora packages (to ease my maintenance tasks)

  • Full list of packages waiting for a reviewer here.

Modules

User:Denisarnaud/Modules

EPEL

Specific packaging procedures

Ongoing tasks

ZeroMQ CVE issue

CMake change - 2020-08

CMake 3.17 on EPEL 8

Upgrade of RE2

Some references, as provided by Marek Milkovic (alias metthal) and Lukas Vrabec (alias wrabcak):

A few statuses:

Rebuild of dependent packages
  • Fedora 30:
repoquery --whatrequires re2 --tree --recursive
perl-re-engine-RE2
qt5-qtwebengine

Completed tasks

Changes/Python3.9

Hello,
Please note that this comment was generated automatically. If you feel that this output has mistakes, please contact me via email (ignatenkobrain@fedoraproject.org).
Your package (rmol) Fails To Install in Fedora 33:
can't install python3-rmol:
 - nothing provides libboost_python38.so.1.69.0()(64bit) needed by python3-rmol-1.00.4-2.fc32.x86_64
 
If you don't react accordingly to the policy for FTBFS/FTI bugs (https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/), your package may be orphaned in 8+ weeks.
P.S. The data was generated solely from koji buildroot, so it might be newer than the latest compose or the content on mirrors.
P.P.S. If this bug has been reported in the middle of upgrading multiple dependent packages, please consider using side tags: https://docs.fedoraproject.org/en-US/rawhide-gating/multi-builds/

Changes/F31Boost170

The task has been given up, as neither Jon nor I have bandwidth for it.

May 2020 - Do not link with libpython3.8+

July 2019 - Python 3.8 for Fedora 31

Testing and mass rebuild of packages is happening in COPR. You can follow these instructions to test locally in mock if your package builds with Python 3.8: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/

Material for Reviews

Tracking of Package Requests

Documentation

Packaging

General
Require a repository for a new package
fedpkg request-repo boost1.73 1828059
https://pagure.io/releng/fedora-scm-requests/issue/28809
Specific guidelines
Package testing
Package updating
Package renaming
Package retiring
Build Side Build Targets/Tags
Reviews
Compositions / Collections
Tools
Package information pages (and database)

Hacking on Fedora/RedHat/CentOS

NoSQL

Virtualisation / Cloud Computing

General
Cloud SIG
Cloud solutions submitted to Fedora
Amazon (EC2)
Create Vagrant Images
imagefactory --debug base_image --parameter generate_icicle false tdl-ppc64le.xml --file-parameter install_script f22-rc3-base.ks

Tools

repoquery --requires --recursive --output=ascii-tree pkgname

Brainstorming Section about Packaging

Layered build scripts for package maintainers

Using Git Work-flow for Packaging

References on Status of Packages

Obligatory Einstein quote