From Fedora Project Wiki
(Clarify that this applies to modifications of any kind)
(Add a separate section for /opt)
Line 4: Line 4:


* Clarify that we mean modifications of any type (adding files, modifying files, removing files, etc)
* Clarify that we mean modifications of any type (adding files, modifying files, removing files, etc)
* Add a different section for /opt that explains its use in Fedora.
* Add /home directories
* Add /home directories
* Add a different section for /opt that explains its use in Fedora.


=== No Files or Directories under /srv, /opt, or /usr/local ===
=== No Files or Directories under /srv, /opt, or /usr/local ===
Line 23: Line 22:
The FHS is explicitly handing control of the directory structure under <code>/srv</code> to the system administrator rather than the distribution. Therefore, no Fedora packages can have any files or directories under <code>/srv</code>, come preconfigured to use specific files or directories under <code>/srv</code>, to remove files there, or to modify the files there in any way.
The FHS is explicitly handing control of the directory structure under <code>/srv</code> to the system administrator rather than the distribution. Therefore, no Fedora packages can have any files or directories under <code>/srv</code>, come preconfigured to use specific files or directories under <code>/srv</code>, to remove files there, or to modify the files there in any way.


In addition, no Fedora package can have any files or directories under <code>/opt</code> or <code>/usr/local</code>, as these directories are not permitted to be used by Distributions in the FHS.
In addition, no Fedora package can have any files or directories under <code>/usr/local</code>, as these directories are not permitted to be used by Distributions in the FHS.


It is important to note that a Fedora package, once installed and configured by a user, can use <code>/srv</code> as a location for data. The package simply must not do this out of the box
It is important to note that a Fedora package, once installed and configured by a user, can use <code>/srv</code> as a location for data. The package simply must not do this out of the box


=== Limited usage of /opt ===
=== Limited usage of /opt, /etc/opt, and /var/opt ===
 
<code>/opt</code> and its related directories (<code>/etc/opt</code> and <code>/var/opt</code>) is reserved for the use of vendors in the FHS.  We have reserved the <code>fedora</code> name with [http://www.lanana.org/lsbreg/providers/providers.txt LANANA] for our use. If a package installs files into <code>/opt</code> it may only use directories in the <code>/opt/fedora</code>  hierarchy.  Fedora attempts to organize this directory by allocating a subdirectory of our <code>/opt/fedora</code> directory for specific subsystems.  If you think you need to use <code>/opt/fedora</code> please file an FPC ticket to decide whether it's a valid use of <code>/opt</code> and what subdirectory should be allocated for your use.


Currently, we have allocated <code>/opt/fedora/scls</code>, <code>/etc/opt/fedora/scls</code>, and <code>/var/opt/fedora/scls</code> for use by [[User:Toshio/SCL_Guidelines_(draft)| Software Collections]].


[[Category:Packaging guidelines draft]]
[[Category:Packaging guidelines draft]]

Revision as of 12:18, 8 August 2014

Warning.png
This page is a draft only
It is still under construction and content may change. Do not rely on the information on this page. This is an update to the existing guidelines on /srv, /opt, and /usr/local

Changes:

  • Clarify that we mean modifications of any type (adding files, modifying files, removing files, etc)
  • Add a different section for /opt that explains its use in Fedora.
  • Add /home directories

No Files or Directories under /srv, /opt, or /usr/local

The FHS says :

"...no program should rely on a specific subdirectory structure of /srv existing
or data necessarily being stored in /srv. However /srv should always exist on FHS
compliant systems and should be used as the default location for such data.

Distributions must take care not to remove locally placed files in these
directories without administrator permission."

The FHS is explicitly handing control of the directory structure under /srv to the system administrator rather than the distribution. Therefore, no Fedora packages can have any files or directories under /srv, come preconfigured to use specific files or directories under /srv, to remove files there, or to modify the files there in any way.

In addition, no Fedora package can have any files or directories under /usr/local, as these directories are not permitted to be used by Distributions in the FHS.

It is important to note that a Fedora package, once installed and configured by a user, can use /srv as a location for data. The package simply must not do this out of the box

Limited usage of /opt, /etc/opt, and /var/opt

/opt and its related directories (/etc/opt and /var/opt) is reserved for the use of vendors in the FHS. We have reserved the fedora name with LANANA for our use. If a package installs files into /opt it may only use directories in the /opt/fedora hierarchy. Fedora attempts to organize this directory by allocating a subdirectory of our /opt/fedora directory for specific subsystems. If you think you need to use /opt/fedora please file an FPC ticket to decide whether it's a valid use of /opt and what subdirectory should be allocated for your use.

Currently, we have allocated /opt/fedora/scls, /etc/opt/fedora/scls, and /var/opt/fedora/scls for use by Software Collections.