Packaging
From openSUSE
Contents |
Packaging
Standards
File locations, Filesystem Hierarchy Standard
The directory structure of openSUSE must adhere to the Linux Filesystem Hierarchy Standard (FHS). You can find it under http://www.pathname.com/fhs/ .
Linux Standard Base, LSB
The goal of the LSB is to develop and promote a set of standards that will increase compatibility between Linux distributions. The LSB is important for ISVs to define a runtime environment that they can rely on for cross distribution building. Further details can be found at http://www.linuxbase.org/ .
Patches
Patches need to be marked in the .spec files with a well-known format to be able to run automatic tools on them, in order to generate reports, patch counts and other interesting information. They also need to be named consistently. Further details can be found under Patch standards
Policies
This is a collection of Policies which are recommended for packaging for openSUSE.
Common Packaging Guidelines
This is the guide how to build openSUSE packages:
Additional guidelines:
- Branding Package Conventions
- GNOME Packaging policy
- GConf scriptlets
- Packaging Java Apps - Overview
- How to package Mozilla applications
- Firewall Service Definitions added via Packages
Additional information about detailed can be found here:
- How to handle Package Dependencies
- How to save disk space by symlinking licenses
- Common openSUSE Packaging Macros explained
- Handling the build of xxbit packages via baselibs.conf
- openSUSE Build Tutorial
RPM Lint
It is useful to check openSUSE packages with the rpmlint package from openSUSE Factory to get hints where the packaging could be improved. Note that rpmlint hasn't been invented for openSUSE originally, there might be still cases left where it complains about something that doesn't comply to common openSUSE packaging. The openSUSE rpmlint maintainer is very responsive to bugreports, so please enter a bugreport if you think that the behavior could be improved in any way.
RPM Lint checks with badness in openSUSE Factory build
Packaging Guidelines
This is imported content of Fedora Packaging Guidelines. As was announced on opensuse-packaging mailing list, the current openSUSE documentation is not well-arranged. We decided to use a Fedora docs as a base for openSUSE, but this is work in progress. We have to merge existing openSUSE documentation with a Fedora Guidelines, so please do not use it yet! You are welcome to help adapting it to openSUSE - see Import Status for more information

