Автор Тема: Xfce c Sysv  (Прочитано 569979 раз)

dango

  • Гость
Re: Xfce c Sysv
« Ответ #855 : 16.05.2019 18:34:49 »
Два вопроса:
1. В Сизифе есть цветовые пипетки без привязки к DE? gcolor2 не стало. gpick тоже.
2. Напомните, чем не устроил volumeicon для xfce?

Петрович

  • Гость

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Xfce c Sysv
« Ответ #857 : 16.05.2019 19:39:03 »
А вот теперь dango и Specyfighter придите к общему знаменателю :-)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #858 : 16.05.2019 19:46:21 »
Мои конфиги:

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #859 : 16.05.2019 19:47:57 »
Ну шо, Дан? :-)
А вот теперь dango и Specyfighter придите к общему знаменателю :-)

dango

  • Гость
Re: Xfce c Sysv
« Ответ #860 : 17.05.2019 07:59:05 »
А вот теперь dango и Specyfighter придите к общему знаменателю :-)
Ну шо, Дан? :-)
Таки да, Юрий! Х-)

Если речь идет о панелях, то вижу следующие точки согласования:
1. Количество панелей
2. Расположение панелей
3. Апплеты на панелях

Предлагаю на рассмотрение минимальный набор:
1. Одна главная панель.
2. Расположение горизонтальная вверху или боковая справа как вариант для ноутбуков.
3. Апплеты по порядку слева направо или сверху вниз:
3.1. Меню приложений
3.2. Кнопки окон
3.3. Разделитель
3.4. Область уведомления (регулятор громкости и управление сетевыми соединениями)
3.5. Раскладки клавиатуры
3.6. Часы
--
Для ноутбуков не лишними будут:
3.7. Модуль датчиков
3.8. Модуль менеджера питания

dango

  • Гость
« Последнее редактирование: 17.05.2019 08:04:00 от dango »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #862 : 19.05.2019 01:46:16 »
Если речь идет о панелях, то вижу следующие точки согласования:
1. Количество панелей

У меня их всегда две, по 32 пиксела каждая. Нижняя всегда прозрачная, - это не отвлекает зрение от основной панели.
Но для небольших экранов, можно сделать ход конём, - скрывать нижнюю панель по умолчанию. В моём варианте панелей это сэкономит 32 пиксела по Y. В стандартном варианте нижней панели, это сэкономит 48 пикселов (но мне не нравятся громадные панели).
Единственный вариант нестыковки скрывающейся панели, как видится, это одна из тем mplayer, в которой панель управления появляется снизу в середине при сдвиге курсора к нижнему краю середины экрана.

2. Расположение панелей

В Xfce у меня всегда одно и то же:
Основная вверху, дополнительная внизу.

3. Апплеты на панелях

Предлагаю на рассмотрение минимальный набор:
1. Одна главная панель.
2. Расположение горизонтальная вверху или боковая справа как вариант для ноутбуков.
3. Апплеты по порядку слева направо или сверху вниз:
3.1. Меню приложений
3.2. Кнопки окон
3.3. Разделитель
3.4. Область уведомления (регулятор громкости и управление сетевыми соединениями)
3.5. Раскладки клавиатуры
3.6. Часы
--
Для ноутбуков не лишними будут:
3.7. Модуль датчиков
3.8. Модуль менеджера питания

Модуль датчиков и всё что периодически  отрисовывается, сношу и не ставлю, привычка экономить каждый такт процессора ещё с nx6110. Кстати секунды в часах моего варианта надо убирать.

Без Clipman на панели задач, мне очень туго.

Блокировка экрана:
На домашних этот вопрос как правило не стоит. Но на АРМ -ах (Автоматизированное Рабочее Место), с этим может быть проблема. В Xfce эта блокировка в меню Системные действия. У меня это меню только для этой кнопки. И только с отображением внешнего вида Системные действия (чтобы не светить на весь мир логин пользователя, как это по-умолчанию принято в альтах).

Также в меню Системные действия отображается кнопка Перключение пользователя, - это даст Xfce функционал KDE. В расчёте на gdm2.20, который будет входить в p9-sysv-xfce. И Xfce станет полноценно многопользовательским и многосессионным.

Надпись Приложения с кнопки Меню Приложений убирается, - это сильно экономит место на Панели задач. Особенно на небольших разрешениях.

Значёк переключения раскладки клавиатуры, справа с краю, в целях эргономичности, - это даст пользователю возможность при переключении раскладки мышкой, не прицеливаться. А просто загнать курсор в угол экрана до упора и щёлкнуть мышкой.

Кнопки на Рабочем столе:
На nx6110 они были отключены все. Как оказалось, на медленных винчестерах, это сильно экономит время полной готовности рабочего стола во время входа в сессию. Но как компромисс, для АРМ -в, оставил значки Корзина, Файловая система и Домашний каталог. 

Для полноценности, sysv-xfce также не хватает редактора меню menulibre.

Каталог xfconf во вложении.

На скриншоте нижняя прозрачная панель скрыта.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #863 : 19.05.2019 07:51:42 »
Как вариант оформления:
- Внешне всё осталось прежним (первый скриншот, нижняя панель скрытая)

Скриншот2:
- В Диспетчере окон выбран стиль Default-4.2
  Это дало уменьшить панель названия окна по Y
- Внешний вид - Xfce-4.6
  Текст под курсором не теряется, цветовая гамма сочетается с фоном.

Что получилось? Поймал себя на том, что получился Simply p6. Чисто рабочий инструмент без изысков.

dango

  • Гость
Re: Xfce c Sysv
« Ответ #864 : 19.05.2019 18:33:46 »
Ок, Юрий. Берём твой вариант как практичный и функциональный.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #865 : 20.05.2019 15:43:37 »
Пока нашёл и не потерял:

О распределении прав доступа на монтирование накопителей other-seat в sysv-xfce

Это polkit-правило должно по-умолчанию входить в alt-p9-sysv-xfce-{i586,x86_64}.iso
https://forum.altlinux.org/index.php?topic=42293.msg335626#msg335626
Правило polkit описанное по ссылке, учитывает, что авторизация работает.

С появлением elogind в p9, это реализуемо.
Правило разграничивает права доступа на монтирование накопителей подключаемых в другое место.
По-умолчанию, всем пользователям не состоящим в группе storage, монтировать накопители в p9-sysv-xfce, подключаемые в другое место, будет запрещено. Т.о. по-умолчанию будет обеспечена пригодность использования этого стартеркита на АРМ -ах.

Одна из основных концепций стартеркита sysv-xfce:
Повышенный уровень безопасности с пригодностью использования sysv-xfce на АРМ -ах (Автоматизированных Рабочих Местах).

В принципе сервис storage-group (подобно nm-group) можно и не писать. Но тогда первый зарегистрированный в системе пользователь, а это пользовательский аккаунт root, не сможет монтировать other-seat накопители. До тех пор, пока не попадёт в группу storage. Но можно и почти один-в-один скопировать сырец пакета nm-sysvinit с небольшими правками и создать пакет storage-sysvinit-group, ну или storage-sysvinit.

Как всегда:
- Высказываемся, предлагаем, аргументированно критикуем.


Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #866 : 20.05.2019 16:21:05 »
Пока нашёл и не потерял:

О распределении прав доступа на монтирование накопителей other-seat в sysv-xfce

Это polkit-правило должно по-умолчанию входить в alt-p9-sysv-xfce-{i586,x86_64}.iso
https://forum.altlinux.org/index.php?topic=42293.msg335626#msg335626
Правило polkit описанное по ссылке, учитывает, что авторизация работает.

С появлением elogind в p9, это реализуемо.
Правило разграничивает права доступа на монтирование накопителей подключаемых в другое место.
По-умолчанию, всем пользователям не состоящим в группе storage, монтировать накопители в p9-sysv-xfce, подключаемые в другое место, будет запрещено. Т.о. по-умолчанию будет обеспечена пригодность использования этого стартеркита на АРМ -ах.

Одна из основных концепций стартеркита sysv-xfce:
Повышенный уровень безопасности с пригодностью использования sysv-xfce на АРМ -ах (Автоматизированных Рабочих Местах).

В принципе сервис storage-group (подобно nm-group) можно и не писать. Но тогда первый зарегистрированный в системе пользователь, а это пользовательский аккаунт root, не сможет монтировать other-seat накопители. До тех пор, пока не попадёт в группу storage. Но можно и почти один-в-один скопировать сырец пакета nm-sysvinit с небольшими правками и создать пакет storage-sysvinit-group, ну или storage-sysvinit.

Как всегда:
- Высказываемся, предлагаем, аргументированно критикуем.


В предыдущем сообщении нужно описать нечто вроде блок-схемы алгоритма пакета storage-group. Без самой блок-схемы.

Только я не знаю, как в спеке организовать условие:
- Устанавливать пакет storage-group, только если пакет udisks2 установлен.
С учётом и первой инсталляции системы конечно: устанавливать только после пакета udisks2. Но при этом пакет storage-group не должен быть в зависимостях у пакета udisks2.

Есть намётка:
- Пакет storage-group предназначен для p9, для всех систем с работающей авторизацией на udisks2. И сервис-файл должен включать LSB-хидер c Required start и Required stop с указанием в них $local_fs messagebus, как это сделано в пакете NetworkManager-daemon. Или всё-таки не очень-то и надо это указание?, - сервис должен однократно выполнить свою задачу и выключить сам себя.

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Xfce c Sysv
« Ответ #867 : 20.05.2019 20:01:40 »
- Устанавливать пакет storage-group, только если пакет udisks2 установлен.

Requires: udisks2

Я не хочу больше городить заборы :-) Выполнился и сам себя выключил. Не-не, давайте без этих костылей. Я потом забуду и буду в осадок выпадать, почему так происходит :-)

Как я понял задачу. Нам надо в /etc/firsttime.d/ добавить скрипт, который при первом запуске пользователя добавит в группу storage. НО есть НО. В OEM такое не сработает. Пользователь будет создан после первого запуска системы. Остаётся научить инсталлятор добавлять пользователя-администратора в группу storage. Ну, или чтобы OEM пост-установщик запускался до firsttime.d.

Оффлайн klark973

  • Завсегдатай
  • *
  • Сообщений: 662
  • Неспящий саппорт
Re: Xfce c Sysv
« Ответ #868 : 20.05.2019 23:21:47 »
Только я не знаю, как в спеке организовать условие:
- Устанавливать пакет storage-group, только если пакет udisks2 установлен.
С учётом и первой инсталляции системы конечно: устанавливать только после пакета udisks2. Но при этом пакет storage-group не должен быть в зависимостях у пакета udisks2.
Делается отдельный пакет installer-feature-* со скриптом по подобию других фич в m-p, который в процессе установки проверит через rpm -q, установлен ли нужный пакет. Но таких костылей мы стараемся избегать.
To moan or to solve -- that is the question!

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #869 : 21.05.2019 00:02:02 »
- Устанавливать пакет storage-group, только если пакет udisks2 установлен.

Requires: udisks2

Я не хочу больше городить заборы :-) Выполнился и сам себя выключил. Не-не, давайте без этих костылей. Я потом забуду и буду в осадок выпадать, почему так происходит :-)

Как я понял задачу. Нам надо в /etc/firsttime.d/ добавить скрипт, который при первом запуске пользователя добавит в группу storage. НО есть НО. В OEM такое не сработает. Пользователь будет создан после первого запуска системы. Остаётся научить инсталлятор добавлять пользователя-администратора в группу storage. Ну, или чтобы OEM пост-установщик запускался до firsttime.d.

Антон, а если нечто вроде такого:
# sed -n '101,106p' /path/RPM/BUILD/e2fsprogs-1.44.3-alt1/e2fsprogs.spec
%pre -n uuidd
getent group uuidd >/dev/null || groupadd -r uuidd
getent passwd uuidd >/dev/null || \
useradd -r -g uuidd -d /var/lib/libuuid -s /sbin/nologin \
    -c "UUID generator helper daemon" uuidd
exit 0

%pre полностью отработает в уже устновленной системе на udisks2.
В устанавливающейся системе создаст группу, но не добавит в неё пользователя; если пользователь в группе, то второй раз не добавит:
%pre -n storage-group
getent group storage >/dev/null || groupadd -r storage
firstuser=$(getent passwd 500 | cut -f1 -d ':'); \
  if [ -n "$firstuser" ]; \
    then gpasswd -a $firstuser storage >/dev/null; \
  fi
exit 0
 

Плюс в /etc/firsttime.d добавить скрипт со строкой firstuser=bla-bla, которая добавит пользователя в группу на первом старте (сама группа storage будет уже создана установкой пакета).
Дескрипшн должен предупредать: Только для систем на udisks2.
Обязательно Requires: udisks2

При удалении пакета,
https://www.altlinux.org/SpecTips/triggers#Определение_типа_операции_с_пакетом
удалить группу.