1
edit
Changes
LEAP SOP
,no edit summary
; extra: Extra packages such as docker, cockpit, golang, etc.
== Determine problem ==
; Unknown system type
: <u>Reason</u>: The software only allows it to be built with kernel 2.6/3.x
: <u>Solution</u>: Add 4.x support to the system checking script(just a IF statement of checking version number)
; Build test/check failed: <u>Reason</u>: Can be random reasons or the software is just unable to run perfectly on AArch64: <u>Solution</u>: Try to look for solutions, otherwise comment out the <tt>%check</tt> section in spec file ; BuildError <span>:</span> No matching arches were found: <u>Reason</u>: Package only supports the specific architectures on the <tt>ExclusiveArch</tt> list in the spec file: <u>Solution</u>: Checkout similar version of the package on [http://arm.koji.fedoraproject.org Fedora ARM Koji ] and [http://buildlogs.centos.org/centos/7 CentOS AArch64 repo ] and determine whether the package is possible to support AArch64 or not
; Fail to patch
* Fedora ARM Koji: http://arm.koji.fedoraproject.org
* CentOS git repo (for reverting CentOS changes): http://git.centos.org
* GOOGLE!'''<span style="color:#4885ed">G</span><span style="color:#db3236">O</span><span style="color:#f4c20d">O</span><span style="color:#4885ed">G</span><span style="color:#3cba54">L</span><span style="color:#db3236">E</span>'''
== Source modification ==
There a few standards to follow during modificationto make life easier:
* Add comments about any line changes
* Add the word ''LEAP'' at the beginning of any comments, for example:
ExclusiveArch: x86_64 aarch64
</source>
* When commenting out a existing line of code, add one more '''<tt>%''' </tt> before any rpm macro otherwise rpmbuild will treat it as a error/warning. For instance:
<source lang=bash>
# Before commenting out
</source>
* Add '''<tt>.leap''' </tt> after the release version, add '''<tt>.leap.1'''</tt>, '''<tt>.leap.2''' </tt> ... and so on for further modifications
* Make sure to specify all the changes under the <tt>%changelog</tt> section:
</source>
=== Rebranding Re-branding === The packages that contain the word ''extension <tt>.centos'' </tt> in their release version are branded packages. In order to properly rebranding re-branding those packages for LEAP, here is the checklist:* Replace the word ''"CentOS'' " or ''"CentOS Linux'' " with ''"LEAP'' ", and "centos" with "leap" in spec package descriptions and patches (make sure they are branding-related)* Replace CentOS branding patches with LEAP branding patchesone
** If certain patch file contains author name, regenerate the patch with your own name instead of modifying the patch directly
* Replace CentOS links with links for LEAP links accordingly
* Sometimes Red Hat trademarks and links have to be replaced as well
* Remove CentOS/RHEL certificate certificates, binaries, or any enterprise support files and binaries ==== Particular branded packages ====
==== Particular cases ====
; libreport / abrt
: '''Libreport''' and '''abrt''' are the library and application for automatic bug detection and reporting to RHEL bug tracker servers. Since CentOS added several significant patches to both packages for supporting their own bug tracker, removing those patches can be very complicated process. The best way to solve this problem is retrieving the original RHEL versions from http://git.centos.org, add our own de-branding patches, and bump the version-release number + ''.leap'' to match the requirements of dependency.
; ntp / chrony / PackageKit / system-config-date
== Duplicated source name ==
When a package requires a missing shared library file like <tt>xxxxx-3.so</tt>, it only need to be rebuilt again (if the library exists) in order to pick up the latest <tt>.so</tt> file from the latest version of required library.
= Package signing =
= Synchronizing Repositories =
= Release =
More coming ...