From: Alexey Tourbin <at@turbinal.org>
To: devel@altlinux.ru
Subject: [devel] Re: I: Ruby packages 1.7.3-alt7 (IMPORTANT) -- perl FHS
Date: Tue, 17 Dec 2002 17:17:04 +0300
Message-ID: <20021217141704.GA7688@ungrund> (raw)
In-Reply-To: <20021120155935.GG1370@sam-solutions.net>
[-- Attachment #1: Type: text/plain, Size: 3351 bytes --]
On Wed, Nov 20, 2002 at 05:59:35PM +0200, Alexander Bokovoy wrote:
> 2. Структурные изменения путей поиска модулей теперь позволяют этой сборке
> Ruby считаться полностью соответствующей File Hierarchy Standard. Дело
> в том, что в обычном Ruby предполагается следующая структура каталогов
> для модулей:
>
> /usr/lib/ruby/{версия}/ -- зависящие от версии модули на Ruby
> /usr/lib/ruby/{версия}/{архитектура} -- бинарные модули для этой версии
> /usr/lib/ruby/site_ruby/{,версия} -- локальные модули (общие для
> всех версий и зависящие от конкретной версии)
> /usr/lib/ruby/site_ruby/{версия}/{архитектура} -- бинарные локальные
> модули для этой версии
>
> Такая схема нарушает FHS в двух вещах:
>
> 1. Все, независящее от архитектуры, должно быть расположено в
> /usr/share
Хочу отметить следующее: по части перла, например, "всё, независящее от
архитектуры" может трактоваться по-разному. Архитектурно-зависимые
перловые библиотеки состоят из нескольких частей:
1) plaintext *.pm файл, который вызывает DynaLoader;
1a) в этом файле находится документация в формате pod;
2) *.so библиотека, которую загружает DynaLoader.
При таком раскладе первый файл является полностью архитектурно
независимым, его можно с успехом шарить по сети и т.п. Однако принято,
чтобы оба они лежали в каталоге типа i386-linux.
> 2. Специфические для конкретной машины компоненты должны находится в
> /usr/local.
>
> Кроме того, эта схема не позволяет четко разделить локальные добавления
> от поставляемых тем или иным производителем дистрибутива решений. В
> результате получается мешанина файлов, осложняющая обновление пакетов.
>
> Новая сборка Ruby (1.7.3-alt7) исправляет эти недостатки следующим
> образом:
>
> 1. Все архитектурно-независимые компоненты Ruby размещаются теперь в
> /usr/share/ruby, все архитектурно-зависимые -- в /usr/lib/ruby
>
> 2. Все локальные добавления будут производится в
> /usr/local/{lib,share}/ruby
>
> 3. Все поставляемые в рамках дистрибутива модули будут размещаться в
> специфичных для производителя дистрибутива поддеревьях
> /usr/{lib,share}/ruby/vendor_ruby/, по аналогии с новым Perl 5.8
Противоречит ли FHS использование поддеревьев типа vendor_ruby?
4.7.1
Applications may use a single subdirectory under /usr/lib. If an
application uses a subdirectory, all architecture-dependent data
exclusively used by the application must be placed within that
subdirectory.
> 4. Порядок поиска в обозначенных директориях таков:
> /usr/local/lib/ruby/{версия}/{архитектура}
> /usr/local/share/ruby/{,версия}
> /usr/lib/ruby/vendor_ruby/{архитектура}
> /usr/share/ruby/vendor_ruby/{,версия}
> /usr/lib/ruby/{версия}/{архитектура}
> /usr/share/ruby/{,версия}
>
> Теперь любые собираемые локально модули Ruby автоматически попадают в
> /usr/local, если они используют при сборке подсистему mkmf (100%
> модулей с RAA). Автоматически появляется новая feature: независящая от
> изменений пакетов в дистрибутиве локальная установка модулей с помощью
> rpkg: модули не затрагивают системное дерево каталогов Ruby.
--
WBR, Alexey Tourbin "He is a sane man who can have tragedy
BIOZAK Ltd., Russia in his heart and comedy in his head."
--G.K.Chesterton
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2002-12-17 14:17 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-11-20 15:59 [devel] I: Ruby packages 1.7.3-alt7 (IMPORTANT) Alexander Bokovoy
2002-12-17 14:17 ` Alexey Tourbin [this message]
2002-12-17 14:41 ` [devel] Re: I: Ruby packages 1.7.3-alt7 (IMPORTANT) -- perl FHS Alexander Bokovoy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20021217141704.GA7688@ungrund \
--to=at@turbinal.org \
--cc=devel@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git