Как настроить экран входа в Gnome в Debian


11

Впервые за последнюю неделю я использовал Debian, и мне удалось настроить некоторые параметры рабочего стола с помощью gnome-tweak-tools, но я застрял, пытаясь настроить экран входа в систему.

В ходе исследования, которое я провел, я нашел много информации о том, как делать это в Ubuntu, Linux Mint или Arch Linux, но мало информации о «пути Debian».

Я думаю, Gnome использует конфигурацию пользователя Debian-gdm для экрана входа в систему, но я не знаю, как на самом деле изменить его, я пытался изменить его с помощью gnome-tweak-tools, как любой другой пользователь, и я попытался также отредактировать конфигурацию файла "/etc/gdm3/greeter.dconf-defaults", добавив путь к файлу, который я хочу, в качестве фона в строке "picture-uri". "picture-options_'none '", похоже, тоже ничего не делает.

Какой самый простой способ настроить его?

Я использую gnome-shell версии 3.14.4 и debian версии 8.6


Я что-то упускаю из виду? Если вы просто хотите изменить фоновое изображение, должна быть настройка . (Хотя я не могу проверить это, так как использую более новую версию GNOME)
lw1.at

Ответы:


5

(Проверено на Ubuntu Gnome Shell 16.04+)

Два пути. Если вы хотите знать, что именно вы делаете, следуйте решению № 1 . Если вы хотите, чтобы один сценарий сделал все за вас, следуйте Решению № 2 (Все, что он делает, автоматизирует Решение № 1)

Решение 1

Справочная информация: Gnome Login Background - это не параметр, который вы можете изменить напрямую (странно!). Он присутствует в CSS-файле Gnome Shell, который присутствует в двоичном файле. Следовательно, вы должны извлечь двоичный файл, изменить его и заменить новый двоичный файл старым файлом.

Шаг 1: Извлечение двоичного файла оболочки Gnome

Запустите следующий скрипт extractgst.shдля извлечения темы оболочки Gnome в ~/shell-themeкаталог

#!/bin/sh

workdir=${HOME}/shell-theme
if [ ! -d ${workdir}/theme ]; then
  mkdir -p ${workdir}/theme
fi
gst=/usr/share/gnome-shell/gnome-shell-theme.gresource

for r in `gresource list $gst`; do
        gresource extract $gst $r >$workdir/${r#\/org\/gnome\/shell/}
done

Шаг 2: его изменение

  • Скопируйте фоновое изображение в эту папку ~/shell-theme/theme.
  • Создать файл ~/shell-theme/theme/gnome-shell-theme.gresource.xmlс контентом
  • Замените имя файла на имя вашего фонового изображения
  • Теперь откройте gnome-shell.cssфайл в каталоге и измените #lockDialogGroupопределение следующим образом:

    #lockDialogGroup { background: #2e3436 url(filename); background-size: [WIDTH]px [HEIGHT]px; background-repeat: no-repeat; }

Установите имя файла в качестве имени фонового изображения и фона в соответствии с вашим разрешением.

Шаг 3: Создайте новый бинарный файл оболочки Gnome и замените существующий

Внутри директории темы запустите

glib-compile-resources gnome-shell-theme.gresource.xml

Вы получите бинарный файл. Скопируйте это в

/usr/share/gnome-shell

Теперь перезапустите GDM, используя

service gdm restart

Если это не работает или застряло, перезагрузите компьютер, чтобы увидеть новые обои для входа в систему :))

Решение 2

Хорошо, как и было обещано, есть простой способ автоматизировать все это. Просто сохраните этот скрипт как login-background.sh

WORKDIR=~/tmp/gdm-login-background
GST=/usr/share/gnome-shell/gnome-shell-theme.gresource
GSTRES=$(basename $GST)

mkdir -p $WORKDIR
cd $WORKDIR
mkdir theme

for r in `gresource list $GST`; do
  gresource extract $GST $r >$WORKDIR$(echo $r | sed -e 's/^\/org\/gnome\/shell\//\//g')
done

cd theme
cp "$IMAGE" ./

echo "
#lockDialogGroup {
  background: #2e3436 url(resource:///org/gnome/shell/theme/$(basename $IMAGE));
  background-size: cover;
  background-repeat: no-repeat;
}" >>gnome-shell.css

echo '<?xml version="1.0" encoding="UTF-8"?>
<gresources>
  <gresource prefix="/org/gnome/shell/theme">' >"${GSTRES}.xml"
for r in `ls *.*`; do
  echo "    <file>$r</file>" >>"${GSTRES}.xml"
done
echo '  </gresource>
</gresources>' >>"${GSTRES}.xml"

glib-compile-resources "${GSTRES}.xml"

sudo mv "/usr/share/gnome-shell/$GSTRES" "/usr/share/gnome-shell/${GSTRES}.backup"
sudo mv "$GSTRES" /usr/share/gnome-shell/

rm -r $WORKDIR

if [ "$CREATED_TMP" = "1" ]; then
  rm -r ~/tmp
fi

Запустите скрипт, используя

IMAGE=~/Bat.jpg sh login-background.sh

Теперь перезапустите GDM с помощью service gdm restartили перезагрузите ноутбук для вашего нового фона входа :))

Ссылки: https://wiki.archlinux.org/index.php/GDM

https://bbs.archlinux.org/viewtopic.php?id=197036


Я не получаю gnome-shell-theme.gresource.xmlфайл, пока все остальные есть ... Почему? У меня есть гном 3.22.
71GA

4

После нескольких дополнительных исследований и некоторого тестирования позже я, наконец, изменил свой фон для входа в систему, и я выполнил следующие шаги:

1) Я поместил нужный файл в качестве фона в каталог / usr / share / pictures (сам создал этот каталог)

2) Я вошел в терминал и, как пользователь root, отредактировал файл /etc/gdm3/greeter.dconf-defaults, чтобы он выглядел следующим образом:

[org/gnome/desktop/background]
picture-uri='file:///usr/share/Pictures/background.png'
picture-options='zoom'

[org/gnome/login-screen]
logo='/usr/share/icons/gnome/48x48/places/debian-swirl.png'
fallback-logo='/usr/share/icons/gnome/48x48/places/debian-swirl.png'
disable-user-list=true
disable-restart-buttons=true

(background.png - моя настоящая фоновая картинка)

3) Чтобы восстановить конфигурацию, я запустил «dpkg-reconfigure gdm3» и «dpkg -configure gdebi-core»


1
Это разрушило мою X-сессию при запуске, исправило ее, отменив изменения в консоли, хотя :)
Maarten

Предупреждение! Это решение приведет к сбоям в вашей системе, если оно будет официально описано в вики Debian: wiki.debian.org/GDM Оценка: похоже, что Debian трудно поддерживать свою вики в актуальном состоянии. Если Debian хочет стать лучшей ОС GNU / Linux (которая, на мой взгляд, уже есть), ему нужно только изменить дизайн своей вики, чтобы сделать ее более удобной для пользователя (HTML5 / CSS 3.0 / database). С новыми пользователями никогда не должно случиться, что официально описанное решение сломает их систему. Это очень важно, так как это
отвлечет

1

Вероятно, самым простым решением на данный момент является использование следующего приложения: https://github.com/juhaku/loginized . ПРИМЕЧАНИЕ: я автор этого приложения.

Это GNOME GDM Login Theme Manager, который позволяет вам изменять тему входа и фоновое изображение. В приложении могут появиться и другие функции.


0

Некоторые тесты на другой системе (SL7.4) показали проблемы.

«extractgst.sh» не генерирует «gnome-shell-theme.gresource.xml», который должен быть отредактирован на шаге 2 решения 1. Если вы добавите файл «.xml» решения 2, у вас будет Файл "xml" необходим для проверки.

Сценарий решения 2 использует «$ CREATED_TMP», который никогда не был определен. Пожалуйста, удалите полное заявление "если".

Будьте осторожны с использованием sudo со скриптами. Перейдите в root с помощью «/ bin / su -» и запустите то, что, по-видимому, необходимо для сценария вручную.

Теперь пришли особые проблемы с SL7 (клон Centos / RHEL7). SL7 использует SELinux вместе с аудиторской частью для обеспечения безопасности системы. Если системные файлы, как здесь, изменяются скриптом, SELinux не знает о них и запрещает использование этих файлов, у него нет информации о том, что приводит к черному фону при входе в систему. Это можно исправить с помощью команды "restorecon" рекурсивно для этого каталога. После выхода из системы вы получите желаемый фон экрана входа.

Добавлено: восстановление должно быть сделано для "/ usr / share / gnome-shell", потому что это каталог ресурсов. Может быть, имеет смысл выполнить restorecon для каталогов gnome для пользователя, если проблемы все еще существуют. Но у меня пока все работает хорошо.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.