ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Sergey Vlasov <vsu@mivlgu.murom.ru>
To: devel@linux.iplabs.ru
Subject: Re: [devel] Re: [mdk-re] /etc/emacs/site-start.d
Date: Sat, 5 May 2001 14:43:59 +0400
Message-ID: <20010505144359.40eee02d.vsu@mivlgu.murom.ru> (raw)
In-Reply-To: <Pine.LNX.4.33L.0105051329470.2241-100000@zephyrous.ru>

On Sat, 5 May 2001 14:07:38 +0400 (MSD)
Ivan Zakharyaschev <vanyaz@mccme.ru> wrote:

> On Sat, 5 May 2001, Sergey Vlasov wrote:
> 
> > On Sat, 5 May 2001 00:39:29 +0400 (MSD)
> > Ivan Zakharyaschev <vanyaz@mccme.ru> wrote:
> >
> > > Я отчасти поддерживаю идею об использовании /etc/emacs/site-start.d
> > --
> > > по
> > > аналогии с, например, /etc/profile.d; сравнение с старт-стоп
> > скриптами
> > > не
> > > очень подхолит, так как они настраивают сервер, а profile задает
> > > конфигурацию для отдельного пользователя.
> > >
> > > Удобство такой директории понятно: не нужно лезть в один файл, чтобы
> > > что-то добавить, достаточно просто положить в директорию.
> > >
> > > Но есть, по-моему, и большие неудобства. Они связаны как раз с
> > разницей
> > > между initscripts и profile: раз это конфигурация для пользователя,
> > то
> > > неплохо бы каждому отдельному пользователю иметь контроль над тем,
> > что у
> > > него будет грузиться, а что нет. А тут получается, как администратор
> > > скажет, так всем и жить.
> 
> > > Можно попробовать решить эту проблему, создав структуру директорий,
> > > похожую на ту, что есть в initscripts: есть
> /etc/emacs/site-start.d/,
> > > где
> > > лежат скрипты, но не выполняются, и у каждого есть
> > > ~/.emacs/site-start.d/,
> > > куда кладутся ссылки на реальные скрипты из /etc/emacs/site-start.d/
> > > (можно будет их включать/выключать у разных пользователей, как и
> > сервисы
> > > в разных runlevels). Не слишком ли это громоздко?
> >
> > Не получится, ~/.emacs уже занят. :-)
> >
> > Ладно, имя придумать можно, но опять же после установки пакета в этот
> > каталог автоматически ничего не попадет, и опять у начинающих
> > пользователей возникнут вопросы - "а вот я тут поставил XXX, а его не
> > видно". А вариант с помещением команд загрузки в /etc/skel*/.emacs,
> > чтобы
> > они попадали в ~/.emacs каждому новому пользователю, не лучше? Кому не
> > нравится автозагрузка - может удалить их и загружать частями только
> то,
> > что ему нужно.
> 
> skel-то этим и неудобен: он одноразового использования и изменения
> отразяться только на вновь создаваемых пользователях.
> 
> Чтобы у всех сразу заработало то, что ставится новое, можно сделать так,
> чтобы изначально у только что созданного пользователя этот
> ~/.emacs-user-start.d был просто ссылкой на /etc/emacs/site-start.d/
> (или
> какое-нибудь другое место, в котором лежат все возможные скрипты
> автозагрузки для Emacs -- название site-start.d тут не очень подходит).
> И
> тогда такой пользователь будет получать все новое, совершая минимум
> усилий
> головой и пальцами: у него будет грузиться все.
> 
> Если же он задумается об этом и захочет сам определить набор того, что
> будет авто-загружаться у него, то он сможет убрать ссылку
> /.emacs-user-start.d, и завести на ее месте свою директорию, внутри
> которой будут свои скрипты и ссылки на отдельные скрипты из общей
> /etc/emacs/site-start.d/. Перед таким пользователем проблемы в том, что
> что-то у него не запускается, хотя это и установлено, стоять не должно:
> он
> сам на себя взял ответственность за слежение за этим. Для облегчения его
> работы можно сделать специальный скрипт наподобие chkconfig.
> 
> Может, это и слишком громоздко, но большинство пользователей будет
> избавлено от соприкосновения с этим ссылкой на общую
> /etc/emacs/site-start.d/. Ее-то и надо положить в /etc/skel*.
> 
> Кажется, что никаких преимуществ такой конструкции по сравнению с
> использованием просто ~/.emacs нет. Но они все-таки есть: все
> существующие
> пользователи при раскладе по умолчанию будут получать автозагружаемыми
> новые, установленные после появления этих пользователей компоненты
> Emacs.

Я предлагал добавить в /etc/skel*/.emacs следующее:

(mapcar 'load-file (directory-files "/etc/emacs/site-start.d" t "\\.el$"))

При этом будет тот же эффект: пользователи будут получать компоненты,
установленные после появления этих пользователей - в соответствии с
содержимым /etc/emacs/site-start.d. Правда, судя по названию каталога,
прописывать такую команду предполагалось все-таки в общесистемный
/usr/share/emacs/site-lisp/site-start.el, но в этом случае у пользователя
нет простого способа отменить загрузку этих файлов.

> Думаю, такую схему можно применить и ко многим другим элементам из skel:
> изначально всякие конфигурационные файлы/директории просто указывают на
> файлы из некоторого общего /etc/user-defaults/LOCALE/. И все обновления,
> которые там делаются, легко доносятся до всех пользователей; от них это
> не
> требует никаких усилий. Это до той поры, пока пользователь не захочет
> что-то поменять в каком-то кофигурационном файле. В таком случае он
> заменяет ссылку у себя в ~ на копию этого файла и вносит в нее
> изменения.
> Отныне он сам следит за ним, а не полагается на умолчания.

Некоторые программы и без этого так себя ведут. IceWM, например.
Действительно, удобно.

> А еще правильнее было бы, если все приложения поддерживали разную
> конфигурацию по умолчанию для разных locale. Например, если бы можно
> было
> в /etc/cups/lpoptions записать много вариантов значений одних и тех же
> параметров для разных locale.
_______________________________________________
Devel mailing list
Devel@linux.iplabs.ru
http://www.logic.ru/mailman/listinfo/devel


  reply	other threads:[~2001-05-05 10:43 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-05-04  6:51 ` Dmitry V. Levin
2001-05-04  6:46   ` Oleg Tihonov
2001-05-04  7:09     ` Dmitry V. Levin
2001-05-04  7:08       ` Oleg Tihonov
2001-05-04  7:30         ` Dmitry V. Levin
2001-05-04  7:41           ` Oleg Tihonov
2001-05-04  8:33             ` Dmitry V. Levin
2001-05-04  8:47               ` Oleg Tihonov
2001-05-04  9:16                 ` Sergey Vlasov
2001-05-04  9:28                   ` Oleg Tihonov
2001-05-04 10:36                     ` Sergey Vlasov
2001-05-04 20:39             ` Ivan Zakharyaschev
2001-05-05  9:08               ` Sergey Vlasov
2001-05-05  9:24                 ` Dmitry V. Levin
2001-05-05  9:37                   ` Sergey Vlasov
2001-05-07  7:31                   ` Oleg Tihonov
2001-05-05 10:07                 ` Ivan Zakharyaschev
2001-05-05 10:43                   ` Sergey Vlasov [this message]
2001-05-05 13:16                     ` Sergey Vlasov
2001-05-05 16:57                       ` Alexander Bokovoy
2001-05-07  7:43                         ` Oleg Tihonov
2001-05-07  7:51                           ` Oleg Tihonov
2001-05-07  7:21               ` Oleg Tihonov
2001-05-04  8:49       ` Sergey Bolshakoff

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=20010505144359.40eee02d.vsu@mivlgu.murom.ru \
    --to=vsu@mivlgu.murom.ru \
    --cc=devel@linux.iplabs.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