(Ubuntu Gnome Shell 16.04+ üzerinde test edilmiştir)
İki yol. Tam olarak ne yaptığınızı bilmek istiyorsanız 1. Çözüm'ü takip edin . Tek bir komut dosyasının sizin için her şeyi yapmasını istiyorsanız, Çözüm # 2'yi uygulayın (Tüm yaptığı, Çözüm # 1'i otomatik hale getirir)
Çözüm 1
Arkaplan Bilgisi: Gnome Giriş Arkaplanı doğrudan değiştirebileceğiniz bir parametre değildir (garip!). İkili dosyada bulunan Gnome Shell CSS dosyasında bulunur. Bu nedenle, ikili dosyayı ayıklamanız, değiştirmeniz ve yeni ikili dosyayı eski dosyayla değiştirmeniz gerekir.
Adım 1: Gnome kabuğu ikili dosyasını ayıklama
extractgst.sh
Gnome kabuk temasını ~/shell-theme
dizine çıkarmak için aşağıdaki komut dosyasını çalıştırın
#!/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
Adım 2: Değiştirme
- Arka plan resminizi bu klasöre kopyalayın
~/shell-theme/theme
.
- İçeriğe
~/shell-theme/theme/gnome-shell-theme.gresource.xml
sahip dosya oluşturma
- Dosya adını arka plan resmi dosya adınızla değiştirin
Şimdi, gnome-shell.css
dosyayı dizinde açın ve #lockDialogGroup
tanımı aşağıdaki gibi değiştirin :
#lockDialogGroup {
background: #2e3436 url(filename);
background-size: [WIDTH]px [HEIGHT]px;
background-repeat: no-repeat;
}
Dosya adını çözünürlüğünüze göre arka plan resminin adı ve arka plan boyutu olarak ayarlayın.
Step3: Yeni Gnome kabuk teması ikili dosyası oluşturun ve mevcut olanları değiştirin
Tema dizininin içinde çalıştırın
glib-compile-resources gnome-shell-theme.gresource.xml
Bir ikili dosya alacaksınız. Şuraya kopyala:
/usr/share/gnome-shell
Şimdi kullanarak GDM'yi yeniden başlatın
service gdm restart
Çalışmazsa veya takılırsa, yeni giriş duvar kağıdınızı görmek için bilgisayarınızı yeniden başlatın :))
Çözüm 2
Tamam, söz verdiğim gibi, tüm bunları otomatikleştirmenin daha basit bir yolu var. Bu komut dosyasını login-background.sh olarak kaydetmeniz yeterlidir
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
Komut dosyasını kullanarak çalıştırın
IMAGE=~/Bat.jpg sh login-background.sh
Şimdi gdm'yi kullanarak service gdm restart
yeniden başlatın veya yeni giriş arka planınız için dizüstü bilgisayarı yeniden başlatın :))
Kaynaklar:
https://wiki.archlinux.org/index.php/GDM
https://bbs.archlinux.org/viewtopic.php?id=197036