1 (19.09.2020 13:17:18 отредактировано gramozeka)

В новом Гноме(как минимум с версии 3.36) в GDM нет простых и наглядных инструментов смены декораций как это было в старых версиях. Но это решаемая проблема.
Сперва о самом механизме: внешний вид оформления GDM-3.34.XX это ни что иное как урезанный вариант gnome-shell. Это даёт понимание «как это работает». Все настройки этого экрана находятся в скомпилированном правиле(shema) /usr/share/gnome-shell/gnome-shell-theme.gresource. Просто так этот файл не изменить, но можно его пересоздать теми средствами, какими он и был создан изначально.
На арче-вики есть немного устаревший мануал как это сделать - https://wiki.archlinux.org/index.php/GD … ound_image . Что-то действительно работает, но некоторые вещи выходят далеко за рамки собственно бекграунда и затрагивают вообще изменение поведения gnome-shell в gdm. Не понимая тонкостей работы этого механизма можно наворотить оля-ля... Но есть более простой способ( bj ) этой процедуры.
Блуждая по всемирной паутине я нарыл не очень сложный скриптик, который быстро и просто меняет картинку, оригинал я уже не найду, но сам скрипт вот :

#! /bin/sh

set -e

if ! hash gresource 2>/dev/null; then
  echo "gresource binary not found. "
  echo " "
  echo "Please install glib2 or glib2-devel"
  echo " "
  echo "Fedora:"
  echo "# dnf install glib2-devel"
  exit 1
fi

if [ "$#" -eq "0" ]; then
  echo 'Usage:'
  echo '  set-gdm-wallpaper [FLAG] /path/to/image    Set login screen wallpaper'
  echo '    Flags:'
  echo '      --css 'css data'                       Replace css params inside #lockDialogGroup block. Ex: background-size: 1920px 1080px;'
  echo '      --resize 0..6 (default: 2)             Use built-in css template for image resize and alignment. Try this option for fix multi monitor issue. Use 0 for disable resize.'
  echo '        0 - background-repeat: repeat;'
  echo '        1 - background-repeat: no-repeat;'
  echo '        2 - background-repeat: no-repeat;background-size: cover;'
  echo '        3 - background-size: 1920px 1080px;'
  echo '        4 - background-size: 1920px 1080px;background-repeat: repeat;'
  echo '        5 - background-position: 0 0;background-size: 1920px 1080px;background-repeat: repeat;'
  echo '        6 - background-repeat: no-repeat;background-size: cover;background-position: center;'
  echo '  set-gdm-wallpaper --uninstall              Remove changes and set original wallpaper (original gresource file)'
  exit 1
fi

if [ "$1" = "--uninstall" ]; then
  # Restore file if current gresource file is modified by this script.
  # If wallpaper-gdm.png text inside gresource file, then this is modified file.
  if grep -q "wallpaper-gdm.png" /usr/share/gnome-shell/gnome-shell-theme.gresource; then
    cp -f /usr/share/gnome-shell/gnome-shell-theme.gresource.backup /usr/share/gnome-shell/gnome-shell-theme.gresource

    echo 'gnome-shell-theme.gresource recovered'
  fi

  exit
fi

image_parameters="background-repeat: no-repeat;background-size: cover;"
if [ "$1" = "--css" ]; then
  image_parameters="$2;"
  shift;shift;
fi

if [ "$1" = "--resize" ]; then
  case "$2" in
    0) image_parameters="background-repeat: repeat;";;
    1) image_parameters="background-repeat: no-repeat;";;
    2) image_parameters="background-repeat: no-repeat;background-size: cover;";;
    3) image_parameters="background-size: 1920px 1080px;";;
    4) image_parameters="background-size: 1920px 1080px;background-repeat: repeat;";;
    5) image_parameters="background-position: 0 0;background-size: 1920px 1080px;background-repeat: repeat;";;
    6) image_parameters="background-repeat: no-repeat;background-size: cover;background-position: center;";;
    *)
      echo "Error: unknown --resize value"
      exit 1;;
  esac
  shift;shift;
fi

  if [ "$#" -ne "1" ]; then
    echo "Error: Illegal argument $1"
    exit 1
  fi

image="$(realpath "$1")"

if [ ! -f "$image" ]; then
  echo "File not found: \"$image\" "
  exit 1
fi

echo "Updating wallpaper..."

# Restore gresource from backup if current gresource is modified
if grep -q "wallpaper-gdm.png" /usr/share/gnome-shell/gnome-shell-theme.gresource; then
  cp -f /usr/share/gnome-shell/gnome-shell-theme.gresource.backup /usr/share/gnome-shell/gnome-shell-theme.gresource
fi

workdir=$(mktemp -d)
cd "$workdir"

# Creating gnome-shell-theme.gresource.xml with theme file list and add header
echo '<?xml version="1.0" encoding="UTF-8"?>' >"$workdir/gnome-shell-theme.gresource.xml"
echo '<gresources><gresource>' >>"$workdir/gnome-shell-theme.gresource.xml"

for res_file in $(gresource list /usr/share/gnome-shell/gnome-shell-theme.gresource); do
  # create dir for theme file inside temp dir
  mkdir -p "$(dirname "$workdir$res_file")"

  if [ "$res_file" != "/org/gnome/shell/theme/wallpaper-gdm.png" ]; then
    # extract file ($res_file) from current theme and write it to temp dir ($workdir)
    gresource extract /usr/share/gnome-shell/gnome-shell-theme.gresource "$res_file" >"$workdir$res_file"

    # add extracted file name to gnome-shell-theme.gresource.xml
    echo "<file>${res_file#\/}</file>" >>"$workdir/gnome-shell-theme.gresource.xml"
  fi
done

# add our image ($image) to theme path and to xml file
echo "<file>org/gnome/shell/theme/wallpaper-gdm.png</file>" >>"$workdir/gnome-shell-theme.gresource.xml"
cp -f "$image" "$workdir/org/gnome/shell/theme/wallpaper-gdm.png"

# add footer to xml file
echo '</gresource></gresources>' >>"$workdir/gnome-shell-theme.gresource.xml"


# find #lockDialogGroup block inside gnome-shell.css and replace with new_theme_params with our image
# and add image_parameters
new_theme_params="background: #2e3436 url(resource:\/\/\/org\/gnome\/shell\/theme\/wallpaper-gdm.png);$image_parameters"
sed -i -z -E "s/#lockDialogGroup \{[^}]+/#lockDialogGroup \{$new_theme_params/g" "$workdir/org/gnome/shell/theme/gnome-shell.css"

# create gresource file with file list inside gnome-shell-theme.gresource.xml
glib-compile-resources "$workdir/gnome-shell-theme.gresource.xml"

# Do backup only for original gresource file, not modified by this script.
# If wallpaper-gdm.png text inside gresource file, then this is modified file.
if ! grep -q "wallpaper-gdm.png" /usr/share/gnome-shell/gnome-shell-theme.gresource; then
  cp -f /usr/share/gnome-shell/gnome-shell-theme.gresource /usr/share/gnome-shell/gnome-shell-theme.gresource.backup
  echo "Backup"
fi

cp -f "$workdir/gnome-shell-theme.gresource" /usr/share/gnome-shell/

# Strange but safe from bug
rm -rf "$workdir/org"
rm -f "$workdir/gnome-shell-theme.gresource.xml"
rm -f "$workdir/gnome-shell-theme.gresource"
rm -r "$workdir"

echo "Done!"

https://gitlab.com/Gramozeka/gdm-change … ree/master
под конкретный размер экрана можно поменять соответствующие цифры и использовать как есть, пустой запуск выдаст описание аргументов. (Может кому сгодится))

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

2

Дожили, чтоб картинку поменять, надо скрипты ваять =)

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

3

yarsab так Gnome изначально писался для гиков в своей третьей редакции.

Linux Mint 19.3 Mate Edition
Windows 7

4

gramozeka пишет:

GDM

А он нужен? В смысле, если система однопользовательская, то зачем DM?

5

DdShurick пишет:

А он нужен? В смысле, если система однопользовательская, то зачем DM?

ну кому и кобыла невеста!  ag
Современные тенденции аль-ля - "я сам себе и жена и муж и мну никто не нуж" не есть здоровое состояние человека, даже на заре становления линукс шёл под девизом многопользовательской системы.
Постоянно из консоли писать startx или сразу прыгать из загрузки в сессию - это иногда бывает даже удобно, но всегда так жить..? Дануна таким быть.
Мне всегда нравились кеды, и преимущественно я из них только и работаю, но тем не менее, иногда для разнообразия можно и гномом, и крысой, а то и оупенбоксом заморочиться, мне не жалко пары-тройки гигов на диске для этого хозяйства, есть-то не просит.
  По современным представлениям я так вообще еретик - у меня есть жена!(и дети), а линукс я не ставлю из репозитория, а готовлю сам!(из говна и палок, на коленке)...
http://www.linuxfromscratch.org/blfs/view/svn/ - наше всё.

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

6

gramozeka пишет:

так вообще еретик

Меня тоже таким считают

gramozeka пишет:

готовлюлю сам!

Я тоже, но без DM, ибо я единственный пользователь.

7

DdShurick пишет:

Я тоже, но без DM, ибо я единственный пользователь.

дело вкуса. Но для эстетики требует - система должна быть безупречна сама в себе, просто чтобы была. Но это спор ни о чём - каждый сам себе ССЗБ в меру собственных представлений о красивом и заблуждений о нужном.
Тут вон мамкины кулцхакиры с Kali считают что самого бога за бороду ухватили, не вкуривая, что из любого лайва можно этот Kali сляпать за недорого\недолго... что теперь.

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

8

gramozeka пишет:

что из любого лайва можно этот Kali сляпать

Не из любого. Увы. В той же Fedora вам придётся саму ОСь перепиливать, чтобы ошибками как ссаными тряпками не закидало, а в Mageia, так вообще изобретать новое колесо, поскольку в системе ничего нет. ab

Linux Mint 19.3 Mate Edition
Windows 7

9

Wolfenberg пишет:

Не из любого. Увы.

это как подойти к процессу... ну и понимание опять же.
Я вот тут давеча к одним на чай заглянул, так меня поставили в тупик вопросом "а чем отличаются dns-сервер от dhcp", так я честно ответил - "а хрен его знает"... и ведь не поверили.(хотя я вообще не врубаю что это за чертовщина).
По сути, в IT, мы становимся в итоге заложниками пары десятка приложений!(ну если уж совсем объективно то "пакетов", как это видят в дистрибутивах) А кто-то и десятком не пользуется, хотя и звучит дюже-специалистом.
Так что кому шашечки, а кому и на телеге норм, лишь бы доехать без гемора.

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

10

gramozeka пишет:
Wolfenberg пишет:

Не из любого. Увы.

это как подойти к процессу... ну и понимание опять же.
Я вот тут давеча к одним на чай заглянул, так меня поставили в тупик вопросом "а чем отличаются dns-сервер от dhcp", так я честно ответил - "а хрен его знает"... и ведь не поверили.(хотя я вообще не врубаю что это за чертовщина).
По сути, в IT, мы становимся в итоге заложниками пары десятка приложений!(ну если уж совсем объективно то "пакетов", как это видят в дистрибутивах) А кто-то и десятком не пользуется, хотя и звучит дюже-специалистом.
Так что кому шашечки, а кому и на телеге норм, лишь бы доехать без гемора.

Ну, на самом деле вопрос простой. На уровне начального IT-образования. DNS-сервер работает с одним или несколькими пакетами (пулами) ip-адресов во внешней сети. Как правило, все они статические. Все DNS-сервера представлены в интернете как домены (хостинги). К примеру, домен Яндекса: Ya.ru Бывают ещё и промежуточные DNS-серверы, выдающие динамические адреса для того, чтобы вы могли спокойно лазить по сети в поисках форумов, "тучек" или фотографий Винни Пуха (шутка).
Так же DNS образовывают в локальной сети для связки нескольких устройств в одну сеть (например, принтер, компьютеры офиса, телекс, видеокамеры, телефоны). Тут уже, чаще всего, эту роль вешают на роутер.
DHCP-сервер используется в сетях с выходом во внешнюю сеть. То бишь, это тупо шлюз, заменяющий локальный IP на внешний динамический из присвоенного ему пула адресов с ближайшего хостинга. Отличие от DNS составляет то, что пакет IP здесь неполный и может быть периодически заменён при балансировке нагрузки внутри хостинга.
*** Добавлено: 30.09.2020 20:40:17 ***

gramozeka пишет:

это как подойти к процессу... ну и понимание опять же.

А хоть как. При пропиле Mageia я сталкивался с тем, что с моим телефоном не работал сетевой канал. Совсем. А воть в OpenSuse или Debian хоть оргию устраивай в прямом эфире.
Или тот же Tor вываливался в ошибку, потому что был миллион и одна кривых зависимостей, на которые в багрепорте писали "Это неважно".
Я уже молчу про фишинг или кейлоггинг (была в них нужда одно время).

Linux Mint 19.3 Mate Edition
Windows 7

11

Wolfenberg пишет:

потому что был миллион и одна кривых зависимостей, на которые в багрепорте писали "Это неважно".

вот поэтому стоит осиливать своё.

Про зависимости...
Это тема лишь в одном случае стоит великой китайской стеной, когда всё делает кто-то там.
Набив руку в собирании своего дистра, я вообще не воспринимаю её как проблему, надо - взял и собрал, так как тебе это надо, есно надо отдавать себе отсчёт в адекватности понимания собственных действий.
Это наверно лучше продолжить в теме про LFS? Там как раз просится, но если я продолжу писать в одну каску, то пост просто станет не подъёмным, каждое сообщение тупо добавляется к предыдущему.

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

12

gramozeka пишет:
Wolfenberg пишет:

потому что был миллион и одна кривых зависимостей, на которые в багрепорте писали "Это неважно".

вот поэтому стоит осиливать своё.

Про зависимости...
Это тема лишь в одном случае стоит великой китайской стеной, когда всё делает кто-то там.
Набив руку в собирании своего дистра, я вообще не воспринимаю её как проблему, надо - взял и собрал, так как тебе это надо, есно надо отдавать себе отсчёт в адекватности понимания собственных действий.
Это наверно лучше продолжить в теме про LFS? Там как раз просится, но если я продолжу писать в одну каску, то пост просто станет не подъёмным, каждое сообщение тупо добавляется к предыдущему.

LFS позиционируется как аналог Gentoo, но без автоматизации. Т.е. вам создали только bash и gcc.
В Mageia же немного по-другому. В каждом пакете RPM есть файлик запуска .spec. Так вот, эти файлы написаны "как в бурелом" - то на QT, то на awesome, то на Ruby, то вообще тупо одни символы стоят. Причём, на одни и те же программы может приходится до 500 пакетов различных ЯП. Вот и вся кривизна...

Linux Mint 19.3 Mate Edition
Windows 7

13

Wolfenberg пишет:

LFS позиционируется как аналог Gentoo, но без автоматизации. Т.е. вам создали только bash и gcc.
В Mageia же немного по-другому. В каждом пакете RPM есть файлик запуска .spec. Так вот, эти файлы написаны "как в бурелом" - то на QT, то на awesome, то на Ruby, то вообще тупо одни символы стоят. Причём, на одни и те же программы может приходится до 500 пакетов различных ЯП. Вот и вся кривизна...

не-не, LFS не позиционируется никак кроме того что заявлено в шапке проекта. Но в реальности, LFS, если подходить с точки зрения формальной логики, лишь пролог к собственно LFS, вторая часть называется BLFS, а там ещё и ещё, что в своей сути и реальном воплощении является ни чем иным, как стендовой площадкой вообще всего линукса, это фабричный испытательный образец-эталон, на котором тестируется весь мейнстрим. Там схема простая как палка - консолидированная группа разработчиков(делегатов) всех базовых дистрибутивов собирают и отрабатывают взаимодействие компонентов, обновлений и прочего, на "сферическом коне в вакууме" - неком "идеальном" RC-кандидате. А потом уже каждый тащит это всё к себе. Я достаточно долго наблюдаю за этой системой - все обновления сперва появляются там, потом, порой после бурных дебатов, вырабатывается некий консенсус, и это всё расходится по дистрибутивам, по дороге допиливаясь под конкретику.
  RPM - это лишь пакетная модель, есть и плюсы и минусы, но есть и фишка - она идеально работает только при условии, что есть куча народу с квалификацией, и есть мейнфрейм, на котором идет непрерывная сборка и тестирование, например как в красношапке или дебе.(вот почитать для развития https://www.debian.org/devel/buildd/ ) На коленке же, эту тему не потянуть хоть убейся. Потому как сама специфика rpm подразумевает долгое скрупулёзное и неспешное препарирование готовых программных продуктов в среде работающей системы. То что магея это всё не потянет было понятно сразу, не тот уровень денег и квалификации, что наглядная история и показала. Это просто факт.

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22

14 (02.10.2020 19:51:52 отредактировано Wolfenberg)

gramozeka пишет:

RPM - это лишь пакетная модель, есть и плюсы и минусы, но есть и фишка - она идеально работает только при условии, что есть куча народу с квалификацией, и есть мейнфрейм, на котором идет непрерывная сборка и тестирование, например как в красношапке или дебе.

Полностью согласен. Аналогично работает любая система пакетов. Хотя, как по мне, для практического ковыряния (можно и палочкой) Deb куда удобнее (ну логи там более развёрнутые).

gramozeka пишет:

То что магея это всё не потянет было понятно сразу, не тот уровень денег и квалификации,

Mageia реально бы потянула всё и дальше больше (были предложения хорошего финансирования от Debian, центрального совета Open Source), если бы команда разработчиков не пересралась между собой по поводу "нужности" ПО.

Linux Mint 19.3 Mate Edition
Windows 7

15

Wolfenberg пишет:

если бы команда разработчиков не пересралась между собой по поводу "нужности" ПО.

Вот в том и соль! Стадо баранов под предводительством матёрого волчары играючи уделает стаю волков если во главе её баран.
Амбиции они в бане с женой полезны и приятны, а в деле, их надо засовывать подальше и поглубже. Многие неплохие проекты заканчивались бесславно именно на делёжке не убитого медведя. Так что - умерла, так умерла...

" si contuderis stultum in pila quasi tisanas feriente desuper pilo non auferetur ab eo stultitia eius " © Proverbs 27:22