Вход:  Пароль:  
FreeSource: PhpCoder/drafts?/XDGBaseDirectorySpecification ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |

XDG Base Directory Specification

Спецификация на расположение базовых каталогов (XDG)


Автор: Waldo Bastian <bastian @ kde.org>
Переводчик: Slava Semushin <php-coder @ altlinux.ru>
Источник: http://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html
Версия: 0.6


Оглавление документа

Введение

Introduction

Различные спецификации определяют файлы и форматы файлов. Эта спецификация определяет каталоги, в которых должны находиться эти файлы, устанавливая один или более базовых каталогов относительно которых должны располагаться файлы.
Various specifications specify files and file formats. This specification defines where these files should be looked for by defining one or more base directories relative to which files should be located.

Основы

Basics

Спецификация XDG Base Directory основывается на следующих концепциях:
The XDG Base Directory Specification is based on the following concepts:
  • Существует единственный базовый каталог, относительно которого должны располагаться файлы с данными пользователя. Этот каталог определён в переменной окружения $XDG_DATA_HOME.
  • There is a single base directory relative to which user-specific data files should be written. This directory is defined by the environment variable $XDG_DATA_HOME.
  • Существует единственный базовый каталог, относительно которого должны располагаться конфигурационные файлы пользователя. Этот каталог определен в переменной окружения $XDG_CONFIG_HOME.
  • There is a single base directory relative to which user-specific configuration files should be written. This directory is defined by the environment variable $XDG_CONFIG_HOME.
  • Существуют установленные предпочтения, задающие порядок базовых каталогов, в которых должен производиться поиск файлов с данными. Этот установленный набор каталогов определен в переменной окружения $XDG_DATA_DIRS.
  • There is a set of preference ordered base directories relative to which data files should be searched. This set of directories is defined by the environment variable $XDG_DATA_DIRS.
  • Существуют установленные предпочтения, задающие порядок базовых каталогов, в которых должен производиться поиск конфигурационных файлов. Этот установленный набор каталогов определен в переменной окружения $XDG_CONFIG_DIRS.
  • There is a set of preference ordered base directories relative to which configuration files should be searched. This set of directories is defined by the environment variable $XDG_CONFIG_DIRS.
  • Существует единственный базовый каталог, относительно которого должны располагаться несущественные (кэшированные) данные. Этот каталог определен в переменной окружения $XDG_CACHE_HOME.
  • There is a single base directory relative to which user-specific non-essential (cached) data should be written. This directory is defined by the environment variable $XDG_CACHE_HOME.

Переменные окружения

Environment variables

$XDG_DATA_HOME определяет базовый каталог, в котором должны храниться файлы данных пользователя. Если $XDG_DATA_HOME не определена или содержит пустое значение, то по умолчанию должно использоваться значение равное $HOME/.local/share.
$XDG_DATA_HOME defines the base directory relative to which user specific data files should be stored. If $XDG_DATA_HOME is either not set or empty, a default equal to $HOME/.local/share should be used.
$XDG_CONFIG_HOME определяет базовый каталог, в котором должны храниться конфигурационные файлы пользователя. Если $XDG_CONFIG_HOME не определена или содержит пустое значение, то по умолчанию должно использоваться значение равное $HOME/.config.
$XDG_CONFIG_HOME defines the base directory relative to which user specific configuration files should be stored. If $XDG_CONFIG_HOME is either not set or empty, a default equal to $HOME/.config should be used.
$XDG_DATA_DIRS определяет порядок предпочтений для базовых каталогов, в которых будет произведен поиск файлов с данными, в дополнение к $XDG_DATA_HOME. Каталоги в переменной $XDG_DATA_DIRS должны быть разделены двоеточием.
$XDG_DATA_DIRS defines the preference-ordered set of base directories to search for data files in addition to the $XDG_DATA_HOME base directory. The directories in $XDG_DATA_DIRS should be separated with a colon ':'.
Если $XDG_DATA_DIRS не определена или содержит пустое значение, то по умолчанию должно использоваться значение равное /usr/local/share/:/usr/share/.
If $XDG_DATA_DIRS is either not set or empty, a value equal to /usr/local/share/:/usr/share/ should be used.
$XDG_CONFIG_DIRS определяет порядок предпочтений для базовых каталогов, в которых будет произведен поиск конфигурационных файлов, в дополнение к $XDG_CONFIG_HOME. Каталоги в переменной $XDG_CONFIG_DIRS должны быть разделены двоеточием.
$XDG_CONFIG_DIRS defines the preference-ordered set of base directories to search for configuration files in addition to the $XDG_CONFIG_HOME base directory. The directories in $XDG_CONFIG_DIRS should be separated with a colon ':'.
Если $XDG_CONFIG_DIRS не определена или содержит пустое значение, то по умолчанию должно использоваться значение равное /etc/xdg.
If $XDG_CONFIG_DIRS is either not set or empty, a value equal to /etc/xdg should be used.
Порядок базовых каталогов обозначает их важность; первый каталог в списке является наиболее важным. Когда одна и та же информация определена в нескольких местах, то преобладает информация, определенная относительно более важного базового каталога. Базовый каталог, определенный в $XDG_DATA_HOME, считается более важным, чем любой из каталогов, определенных в $XDG_DATA_DIRS. Базовый каталог, определенный в $XDG_CONFIG_HOME, считается более важным, чем любой из каталогов, определенных в $XDG_CONFIG_DIRS.
The order of base directories denotes their importance; the first directory listed is the most important. When the same information is defined in multiple places the information defined relative to the more important base directory takes precedent. The base directory defined by $XDG_DATA_HOME is considered more important than any of the base directories defined by $XDG_DATA_DIRS. The base directory defined by $XDG_CONFIG_HOME is considered more important than any of the base directories defined by $XDG_CONFIG_DIRS.
$XDG_CACHE_HOME определяет базовый каталог, в котором должны храниться несущественные (кэшированные) данные пользователя. Если $XDG_CACHE_HOME не определена или содержит пустое значение, то по умолчанию должно использоваться значение равное $HOME/.cache.
$XDG_CACHE_HOME defines the base directory relative to which user specific non-essential data files should be stored. If $XDG_CACHE_HOME is either not set or empty, a default equal to $HOME/.cache should be used.

Ссылки на эту спецификацию

Referencing this specification

Другие спецификации могут ссылаться на данный документ, определяя расположение для файла с данными, как $XDG_DATA_DIRS/subdir/filename. Это подразумевает следующее:
Other specifications may reference this specification by specifying the location of a data file as $XDG_DATA_DIRS/subdir/filename. This implies that:
  • Такой файл должен быть установлен в $datadir/subdir/filename, где $datadir по умолчанию /usr/share.
  • Such file should be installed to $datadir/subdir/filename with $datadir defaulting to /usr/share.
  • Специфичная для пользователя версия файла с данными может быть создана в $XDG_DATA_HOME/subdir/filename, принимая во внимание значение по умолчанию для $XDG_DATA_HOME, если $XDG_DATA_HOME не определена.
  • A user specific version of the data file may be created in $XDG_DATA_HOME/subdir/filename, taking into account the default value for $XDG_DATA_HOME if $XDG_DATA_HOME is not set.
  • Поиск файла с данными должен начинаться с ./subdir/filename относительно всех базовых каталогов, определенных в $XDG_DATA_HOME и $XDG_DATA_DIRS. Если переменная окружения не установлена или содержит пустое значение, то вместо нее должно использоваться значение по умолчанию для этой переменной.
  • Lookups of the data file should search for ./subdir/filename relative to all base directories specified by $XDG_DATA_HOME and $XDG_DATA_DIRS. If an environment variable is either not set or empty, its default value as defined by this specification should be used instead.
Спецификации могут ссылаться на данный документ, определяя расположение конфигурационного файла, как $XDG_CONFIG_DIRS/subdir/filename. Это подразумевает следующее:
Specifications may reference this specification by specifying the location of a configuration file as $XDG_CONFIG_DIRS/subdir/filename. This implies that:
  • По умолчанию конфигурационные файлы должны быть установлены в $sysconfdir/xdg/subdir/filename, где $sysconfdir по умолчанию /etc.
  • Default configuration files should be installed to $sysconfdir/xdg/subdir/filename with $sysconfdir defaulting to /etc.
  • Специфичная для пользователя версия конфигурационного файла может быть создана в $XDG_CONFIG_HOME/subdir/filename, принимая во внимание значение по умолчанию для $XDG_CONFIG_HOME, если $XDG_CONFIG_HOME не определена.
  • A user specific version of the configuration file may be created in $XDG_CONFIG_HOME/subdir/filename, taking into account the default value for $XDG_CONFIG_HOME if $XDG_CONFIG_HOME is not set.
  • Поиск конфигурационного файла должен начинаться с ./subdir/filename, относительно всех базовых каталогов, указанных в $XDG_CONFIG_HOME и $XDG_CONFIG_DIRS. Если переменная окружения не установлена или содержит пустое значение, то вместо нее должно использоваться значение по умолчанию для этой переменной.
  • Lookups of the configuration file should search for ./subdir/filename relative to all base directories indicated by $XDG_CONFIG_HOME and $XDG_CONFIG_DIRS. If an environment variable is either not set or empty, its default value as defined by this specification should be used instead.
Если, при попытке записи в файл, каталога в котором он должен располагаться не существует, то его следует создать с правами 0700. Если же этот каталог уже существует, то права на него изменять не следует. Приложение должно быть готово к случаю, когда файл не может быть записан, по причине не существующего каталога и когда этот каталог не может быть создан по каким-либо причинам. В этом случае оно может сообщить об ошибке пользователю.
If, when attempting to write a file, the destination directory is non-existant an attempt should be made to create it with permission 0700. If the destination directory exists already the permissions should not be changed. The application should be prepared to handle the case where the file could not be written, either because the directory was non-existant and could not be created, or for any other reason. In such case it may chose to present an error message to the user.
Если при попытке чтения файла он по какой-любой причине недоступен, например из-за отсутствия каталога или файла, или пользователю не разрешено открывать этот файл, тогда обработка файла в этом каталоге должна быть пропущена. Если из-за такого пропуска не был найден обязательно нужный файл, то приложение может сообщить пользователю об ошибке.
When attempting to read a file, if for any reason a file in a certain directory is unaccessible, e.g. because the directory is non-existant, the file is non-existant or the user is not authorized to open the file, then the processing of the file in that directory should be skipped. If due to this a required file, the application may chose to present an error message to the user.
Спецификации, которые ссылаются на $XDG_DATA_DIRS или $XDG_CONFIG_DIRS должны определять поведение для случая, когда файл существует сразу в нескольких базовых каталогах. Они могут, к примеру, определить, что следует использовать только файл из наиболее важного каталога, или, как другой пример, они могут определить правила для объединения информации из раличающихся файлов.
A specification that refers to $XDG_DATA_DIRS or $XDG_CONFIG_DIRS should define what the behaviour must be when a file is located under multiple base directories. It could, for example, define that only the file under the most important base directory should be used or, as another example, it could define rules for merging the information from the different files.

Страницы, ссылающиеся на данную: PhpCoder
Standarts


Вы не владеете cтраницей PhpCoder/drafts/XDGBaseDirectorySpecification и поэтому не можете получить список наблюдающих за ней


 
Файлы [Скрыть файлы/форму]
Комментариев нет. [Показать комментарии/форму]