Я сохраняю все свои документы на отдельном диске из моей установки ubuntu, и у меня есть папка, полная хороших обоев на этом диске. Как я могу заставить ubuntu автоматически искать в этом каталоге, чтобы обои отображались в диалоге смены обоев, которые были достигнуты при щелчке правой кнопкой мыши на рабочем столе и выборе «Замена рабочего стола»?
Изменить: я попытался помещать символическую ссылку в Замените папку рабочего стола на другой диск, и это не сработало.
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это должно быть просто копирование и вставка выделенных записей *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл для создания обоев ... / обоев для обоев, указывающих на вашу новую папку & amp; файлы обоев
Ниже приведен сценарий, измененный с этой записи в форуме, который автоматически обновит файл ubuntu-wallpaper.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper-generator <path to new wallpaper folder>
Это приведет к созданию файла с именем ubuntu-wallpapers.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего xml-файла, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
Вот этот файл сценария, на который я ссылался:
#!/bin/bash
#
# This script will take all wallpapers in a given folder and
# make them available as "default" background in the "Change Background" gui
# frontend in Ubuntu.
#
################################################################################
#CONFIG_DIR="/usr/share/gnome-background-properties"
CONFIG_DIR="./"
XML_FILE="$CONFIG_DIR/ubuntu-wallpapers.xml"
if [ $# -ne 1 ]; then
echo "*** syntax ubuntu-wallpaper-generator <path to wallpaper folder> ***"
echo "*** for example ***"
echo "*** ubuntu-wallpaper-generator /usr/share/backgrounds ***"
exit 1
else
WALLPAPER_DIR=$1
echo "*** parameters passed: $1 ***"
fi
#### First check if we have write permissions to the share dirctory. ####
touch $CONFIG_DIR/testfile >/dev/null 2>/dev/null
if [ $? -ne 0 ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $CONFIG_DIR ****"
echo "**** Procedure Terminated. ****"
exit 1
else
rm $CONFIG_DIR/testfile 2>/dev/null
fi
#### Show the script description message. ###
cat <<EOF
################################################################################
This script makes all pictures in the $WALLPAPER_DIR
directory available to all users defined on this system as their
system-wide GNOME wallpapers.
################################################################################
EOF
#### Fail if the wallpaper directory does not exist. ####
if [ ! -d $WALLPAPER_DIR ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png images. ####
numfiles=`ls -1 $WALLPAPER_DIR/*.jpg WALLPAPER_DIR/*.jpeg WALLPAPER_DIR/*.png 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $XML_FILE
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $WALLPAPER_DIR/*.jpg $WALLPAPER_DIR/*.png $WALLPAPER_DIR/*.jpeg 2> /dev/null |
while read image_name; do
echo " Adding: `basename "$image_name"`."
fname=`basename "$image_name"`
fname="${fname%%\.*}"
echo " <wallpaper>" >> $XML_FILE
echo " <name>$fname</name>" >> $XML_FILE
echo " <filename>$image_name</filename>" >> $XML_FILE
echo " <options>stretched</options>" >> $XML_FILE
echo " <pcolor>#c58357</pcolor>" >> $XML_FILE
echo " <scolor>#c58357</scolor>" >> $XML_FILE
echo " <shade_type>solid</shade_type>" >> $XML_FILE
echo " </wallpaper>" >> $XML_FILE
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $XML_FILE
cat <<EOF
################################################################################
You're almost done. copy the generated file ubuntu-wallpapers.xml to the
folder /usr/shared/gnome-background-properties
REMEMBER to backup the current ubuntu-wallpaper.xml in that folder first!
################################################################################
EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это должно быть просто копирование и вставка выделенных записей *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл для создания обоев ... / обоев для обоев, указывающих на вашу новую папку & amp; файлы обоев
Ниже приведен сценарий, измененный с этой записи в форуме, который автоматически обновит файл ubuntu-wallpaper.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper-generator <path to new wallpaper folder>
Это приведет к созданию файла с именем ubuntu-wallpapers.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего xml-файла, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
Вот этот файл сценария, на который я ссылался:
#!/bin/bash
#
# This script will take all wallpapers in a given folder and
# make them available as "default" background in the "Change Background" gui
# frontend in Ubuntu.
#
################################################################################
#CONFIG_DIR="/usr/share/gnome-background-properties"
CONFIG_DIR="./"
XML_FILE="$CONFIG_DIR/ubuntu-wallpapers.xml"
if [ $# -ne 1 ]; then
echo "*** syntax ubuntu-wallpaper-generator <path to wallpaper folder> ***"
echo "*** for example ***"
echo "*** ubuntu-wallpaper-generator /usr/share/backgrounds ***"
exit 1
else
WALLPAPER_DIR=$1
echo "*** parameters passed: $1 ***"
fi
#### First check if we have write permissions to the share dirctory. ####
touch $CONFIG_DIR/testfile >/dev/null 2>/dev/null
if [ $? -ne 0 ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $CONFIG_DIR ****"
echo "**** Procedure Terminated. ****"
exit 1
else
rm $CONFIG_DIR/testfile 2>/dev/null
fi
#### Show the script description message. ###
cat <<EOF
################################################################################
This script makes all pictures in the $WALLPAPER_DIR
directory available to all users defined on this system as their
system-wide GNOME wallpapers.
################################################################################
EOF
#### Fail if the wallpaper directory does not exist. ####
if [ ! -d $WALLPAPER_DIR ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png images. ####
numfiles=`ls -1 $WALLPAPER_DIR/*.jpg WALLPAPER_DIR/*.jpeg WALLPAPER_DIR/*.png 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $XML_FILE
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $WALLPAPER_DIR/*.jpg $WALLPAPER_DIR/*.png $WALLPAPER_DIR/*.jpeg 2> /dev/null |
while read image_name; do
echo " Adding: `basename "$image_name"`."
fname=`basename "$image_name"`
fname="${fname%%\.*}"
echo " <wallpaper>" >> $XML_FILE
echo " <name>$fname</name>" >> $XML_FILE
echo " <filename>$image_name</filename>" >> $XML_FILE
echo " <options>stretched</options>" >> $XML_FILE
echo " <pcolor>#c58357</pcolor>" >> $XML_FILE
echo " <scolor>#c58357</scolor>" >> $XML_FILE
echo " <shade_type>solid</shade_type>" >> $XML_FILE
echo " </wallpaper>" >> $XML_FILE
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $XML_FILE
cat <<EOF
################################################################################
You're almost done. copy the generated file ubuntu-wallpapers.xml to the
folder /usr/shared/gnome-background-properties
REMEMBER to backup the current ubuntu-wallpaper.xml in that folder first!
################################################################################
EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это должно быть просто копирование и вставка выделенных записей *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл для создания обоев ... / обоев для обоев, указывающих на вашу новую папку & amp; файлы обоев
Ниже приведен сценарий, измененный с этой записи в форуме, который автоматически обновит файл ubuntu-wallpaper.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper-generator <path to new wallpaper folder>
Это приведет к созданию файла с именем ubuntu-wallpapers.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего xml-файла, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
Вот этот файл сценария, на который я ссылался:
#!/bin/bash
#
# This script will take all wallpapers in a given folder and
# make them available as "default" background in the "Change Background" gui
# frontend in Ubuntu.
#
################################################################################
#CONFIG_DIR="/usr/share/gnome-background-properties"
CONFIG_DIR="./"
XML_FILE="$CONFIG_DIR/ubuntu-wallpapers.xml"
if [ $# -ne 1 ]; then
echo "*** syntax ubuntu-wallpaper-generator <path to wallpaper folder> ***"
echo "*** for example ***"
echo "*** ubuntu-wallpaper-generator /usr/share/backgrounds ***"
exit 1
else
WALLPAPER_DIR=$1
echo "*** parameters passed: $1 ***"
fi
#### First check if we have write permissions to the share dirctory. ####
touch $CONFIG_DIR/testfile >/dev/null 2>/dev/null
if [ $? -ne 0 ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $CONFIG_DIR ****"
echo "**** Procedure Terminated. ****"
exit 1
else
rm $CONFIG_DIR/testfile 2>/dev/null
fi
#### Show the script description message. ###
cat <<EOF
################################################################################
This script makes all pictures in the $WALLPAPER_DIR
directory available to all users defined on this system as their
system-wide GNOME wallpapers.
################################################################################
EOF
#### Fail if the wallpaper directory does not exist. ####
if [ ! -d $WALLPAPER_DIR ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png images. ####
numfiles=`ls -1 $WALLPAPER_DIR/*.jpg WALLPAPER_DIR/*.jpeg WALLPAPER_DIR/*.png 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $XML_FILE
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $WALLPAPER_DIR/*.jpg $WALLPAPER_DIR/*.png $WALLPAPER_DIR/*.jpeg 2> /dev/null |
while read image_name; do
echo " Adding: `basename "$image_name"`."
fname=`basename "$image_name"`
fname="${fname%%\.*}"
echo " <wallpaper>" >> $XML_FILE
echo " <name>$fname</name>" >> $XML_FILE
echo " <filename>$image_name</filename>" >> $XML_FILE
echo " <options>stretched</options>" >> $XML_FILE
echo " <pcolor>#c58357</pcolor>" >> $XML_FILE
echo " <scolor>#c58357</scolor>" >> $XML_FILE
echo " <shade_type>solid</shade_type>" >> $XML_FILE
echo " </wallpaper>" >> $XML_FILE
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $XML_FILE
cat <<EOF
################################################################################
You're almost done. copy the generated file ubuntu-wallpapers.xml to the
folder /usr/shared/gnome-background-properties
REMEMBER to backup the current ubuntu-wallpaper.xml in that folder first!
################################################################################
EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это должно быть просто копирование и вставка выделенных записей *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл для создания обоев ... / обоев для обоев, указывающих на вашу новую папку & amp; файлы обоев
Ниже приведен сценарий, измененный с этой записи в форуме, который автоматически обновит файл ubuntu-wallpaper.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper-generator <path to new wallpaper folder>
Это приведет к созданию файла с именем ubuntu-wallpapers.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего xml-файла, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
Вот этот файл сценария, на который я ссылался:
#!/bin/bash
#
# This script will take all wallpapers in a given folder and
# make them available as "default" background in the "Change Background" gui
# frontend in Ubuntu.
#
################################################################################
#CONFIG_DIR="/usr/share/gnome-background-properties"
CONFIG_DIR="./"
XML_FILE="$CONFIG_DIR/ubuntu-wallpapers.xml"
if [ $# -ne 1 ]; then
echo "*** syntax ubuntu-wallpaper-generator <path to wallpaper folder> ***"
echo "*** for example ***"
echo "*** ubuntu-wallpaper-generator /usr/share/backgrounds ***"
exit 1
else
WALLPAPER_DIR=$1
echo "*** parameters passed: $1 ***"
fi
#### First check if we have write permissions to the share dirctory. ####
touch $CONFIG_DIR/testfile >/dev/null 2>/dev/null
if [ $? -ne 0 ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $CONFIG_DIR ****"
echo "**** Procedure Terminated. ****"
exit 1
else
rm $CONFIG_DIR/testfile 2>/dev/null
fi
#### Show the script description message. ###
cat <<EOF
################################################################################
This script makes all pictures in the $WALLPAPER_DIR
directory available to all users defined on this system as their
system-wide GNOME wallpapers.
################################################################################
EOF
#### Fail if the wallpaper directory does not exist. ####
if [ ! -d $WALLPAPER_DIR ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png images. ####
numfiles=`ls -1 $WALLPAPER_DIR/*.jpg WALLPAPER_DIR/*.jpeg WALLPAPER_DIR/*.png 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $XML_FILE
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $WALLPAPER_DIR/*.jpg $WALLPAPER_DIR/*.png $WALLPAPER_DIR/*.jpeg 2> /dev/null |
while read image_name; do
echo " Adding: `basename "$image_name"`."
fname=`basename "$image_name"`
fname="${fname%%\.*}"
echo " <wallpaper>" >> $XML_FILE
echo " <name>$fname</name>" >> $XML_FILE
echo " <filename>$image_name</filename>" >> $XML_FILE
echo " <options>stretched</options>" >> $XML_FILE
echo " <pcolor>#c58357</pcolor>" >> $XML_FILE
echo " <scolor>#c58357</scolor>" >> $XML_FILE
echo " <shade_type>solid</shade_type>" >> $XML_FILE
echo " </wallpaper>" >> $XML_FILE
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $XML_FILE
cat <<EOF
################################################################################
You're almost done. copy the generated file ubuntu-wallpapers.xml to the
folder /usr/shared/gnome-background-properties
REMEMBER to backup the current ubuntu-wallpaper.xml in that folder first!
################################################################################
EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это должно быть просто копирование и вставка выделенных записей *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл для создания обоев ... / обоев для обоев, указывающих на вашу новую папку & amp; файлы обоев
Ниже приведен сценарий, измененный с этой записи в форуме, который автоматически обновит файл ubuntu-wallpaper.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper-generator <path to new wallpaper folder>
Это приведет к созданию файла с именем ubuntu-wallpapers.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего xml-файла, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
Вот этот файл сценария, на который я ссылался:
#!/bin/bash
#
# This script will take all wallpapers in a given folder and
# make them available as "default" background in the "Change Background" gui
# frontend in Ubuntu.
#
################################################################################
#CONFIG_DIR="/usr/share/gnome-background-properties"
CONFIG_DIR="./"
XML_FILE="$CONFIG_DIR/ubuntu-wallpapers.xml"
if [ $# -ne 1 ]; then
echo "*** syntax ubuntu-wallpaper-generator <path to wallpaper folder> ***"
echo "*** for example ***"
echo "*** ubuntu-wallpaper-generator /usr/share/backgrounds ***"
exit 1
else
WALLPAPER_DIR=$1
echo "*** parameters passed: $1 ***"
fi
#### First check if we have write permissions to the share dirctory. ####
touch $CONFIG_DIR/testfile >/dev/null 2>/dev/null
if [ $? -ne 0 ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $CONFIG_DIR ****"
echo "**** Procedure Terminated. ****"
exit 1
else
rm $CONFIG_DIR/testfile 2>/dev/null
fi
#### Show the script description message. ###
cat <<EOF
################################################################################
This script makes all pictures in the $WALLPAPER_DIR
directory available to all users defined on this system as their
system-wide GNOME wallpapers.
################################################################################
EOF
#### Fail if the wallpaper directory does not exist. ####
if [ ! -d $WALLPAPER_DIR ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png images. ####
numfiles=`ls -1 $WALLPAPER_DIR/*.jpg WALLPAPER_DIR/*.jpeg WALLPAPER_DIR/*.png 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$WALLPAPER_DIR\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $XML_FILE
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $WALLPAPER_DIR/*.jpg $WALLPAPER_DIR/*.png $WALLPAPER_DIR/*.jpeg 2> /dev/null |
while read image_name; do
echo " Adding: `basename "$image_name"`."
fname=`basename "$image_name"`
fname="${fname%%\.*}"
echo " <wallpaper>" >> $XML_FILE
echo " <name>$fname</name>" >> $XML_FILE
echo " <filename>$image_name</filename>" >> $XML_FILE
echo " <options>stretched</options>" >> $XML_FILE
echo " <pcolor>#c58357</pcolor>" >> $XML_FILE
echo " <scolor>#c58357</scolor>" >> $XML_FILE
echo " <shade_type>solid</shade_type>" >> $XML_FILE
echo " </wallpaper>" >> $XML_FILE
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $XML_FILE
cat <<EOF
################################################################################
You're almost done. copy the generated file ubuntu-wallpapers.xml to the
folder /usr/shared/gnome-background-properties
REMEMBER to backup the current ubuntu-wallpaper.xml in that folder first!
################################################################################
EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это просто нужно копировать и вставлять выделенные записи *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл, чтобы иметь подписи обоев ... / wallpaper, указывающие на вашу новую папку & amp; файлы обоев
Ниже приведен скрипт, измененный с этого форума entry , который автоматически обновит файл ubuntu-wallpapers.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper -генератор & lt; путь к новой папке обоев & gt;
Это создаст файл с именем ubuntu-wallpaper.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего файла xml, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
[ ! d17]Вот этот файл сценария, на который я ссылался:
#! / bin / bash # # Этот скрипт будет принимать все обои в заданной папке и # сделать их доступными как " default "в поле« Изменить фон »gui # frontend в Ubuntu. # ################################################################################################### #################################CONFIG_DIR = "/ usr / share / gnome-background-properties" CONFIG_DIR = ". / "XML_FILE =" $ CONFIG_DIR / ubuntu-wallpapers.xml ", если [$ # -ne 1]; затем echo "*** синтаксис ubuntu-wallpaper-generator & lt; путь к папке обоев & gt; ***" echo "*** например ***" echo "*** ubuntu-wallpaper-generator / usr / share / backgrounds *** «exit 1 else WALLPAPER_DIR = $ 1 echo» *** переданные параметры: $ 1 *** «fi #### Сначала проверьте, есть ли у нас права на запись в share dirctory. #### touch $ CONFIG_DIR / testfile & gt; / dev / null 2 & gt; / dev / null, если [$? -ne 0]; затем echo "**** Нет разрешений для каталога общего доступа к рабочему столу ****" echo "**** $ CONFIG_DIR ****" echo "**** Процедура завершена. ****" exit 1 else rm $ CONFIG_DIR / testfile 2 & gt; / dev / null fi #### Показать сообщение описания сценария. ### cat & lt; & lt; EOF ############################################ ######################################### Этот скрипт делает все снимки в каталоге $ WALLPAPER_DIR доступным для всех пользователей, определенных в этой системе, как их общесистемные обои для GNOME. ################################################## ############################## EOF #### Ошибка, если каталог обоев не существует. #### если [ ! -d $ WALLPAPER_DIR]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не существует. **** "echo" **** Прецедент завершен. **** "exit 1 fi #### Подсчитайте количество jpg / jpeg / png. #### numfiles = `ls -1 $ WALLPAPER_DIR / *. jpg WALLPAPER_DIR / *. jpeg WALLPAPER_DIR / * .png 2 & gt; / dev / null | wc -l` #### Если файлов изображений нет, то выйдите. #### if [$ numfiles -eq 0]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не имеет изображений. **** "echo" **** Преступление завершено. **** "exit 1 fi #### Теперь мы создаем XML-файл, содержащий изображения для фона. #### #### Начните с создания заголовка в файле XML. #### cat & lt; EOF & gt; $ XML_FILE & lt;? Xml version = "1.0" encoding = "UTF-8"? & Gt; & lt;! DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd" & gt; & Lt; & обои GT; EOF #### Добавьте каждый файл в файл XML. #### #### Выполнение этого способа гарантирует, что файлы с пробелами в их именах правильно обрабатываются #### ####. (ls .... | while read fname; do) #### ls -1 $ WALLPAPER_DIR / *. jpg $ WALLPAPER_DIR / *. png $ WALLPAPER_DIR / *. jpeg 2 & gt; / dev / null | при чтении image_name; do echo "Добавление:` basename "$ image_name". ". fname = `basename" $ image_name "` fname = "$ {fname %% \. *}" echo "& lt; wallpaper & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя & gt; $ fname & lt; / name & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя_файла & gt; $ image_name & lt; / filename & gt;" & GT; & GT; $ XML_FILE echo "& lt; options & gt; stretched & lt; / options & gt;" & GT; & GT; $ XML_FILE echo "& lt; pcolor & gt; # c58357 & lt; / pcolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; scolor & gt; # c58357 & lt; / scolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; shade_type & gt; solid & lt; / shade_type & gt;" & GT; & GT; $ XML_FILE echo "& lt; / wallpaper & gt;" & GT; & GT; $ XML_FILE done #### Создайте нижний колонтитул для файла XML. #### echo "& wallpapers & gt;" & GT; & GT; $ XML_FILE cat & lt; & lt; EOF #################################################### ###################################### Вы почти закончили. скопируйте сгенерированный файл ubuntu-wallpapers.xml в папку / usr / shared / gnome-background-properties ЗАПОМНИТЬ, чтобы сначала создать резервную копию текущего ubuntu-wallpaper.xml в этой папке! ################################################## ############################### EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это просто нужно копировать и вставлять выделенные записи *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл, чтобы иметь подписи обоев ... / wallpaper, указывающие на вашу новую папку & amp; файлы обоев
Ниже приведен скрипт, измененный с этого форума entry , который автоматически обновит файл ubuntu-wallpapers.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper -генератор & lt; путь к новой папке обоев & gt;
Это создаст файл с именем ubuntu-wallpaper.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего файла xml, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
[ ! d17]Вот этот файл сценария, на который я ссылался:
#! / bin / bash # # Этот скрипт будет принимать все обои в заданной папке и # сделать их доступными как " default "в поле« Изменить фон »gui # frontend в Ubuntu. # ################################################################################################### #################################CONFIG_DIR = "/ usr / share / gnome-background-properties" CONFIG_DIR = ". / "XML_FILE =" $ CONFIG_DIR / ubuntu-wallpapers.xml ", если [$ # -ne 1]; затем echo "*** синтаксис ubuntu-wallpaper-generator & lt; путь к папке обоев & gt; ***" echo "*** например ***" echo "*** ubuntu-wallpaper-generator / usr / share / backgrounds *** «exit 1 else WALLPAPER_DIR = $ 1 echo» *** переданные параметры: $ 1 *** «fi #### Сначала проверьте, есть ли у нас права на запись в share dirctory. #### touch $ CONFIG_DIR / testfile & gt; / dev / null 2 & gt; / dev / null, если [$? -ne 0]; затем echo "**** Нет разрешений для каталога общего доступа к рабочему столу ****" echo "**** $ CONFIG_DIR ****" echo "**** Процедура завершена. ****" exit 1 else rm $ CONFIG_DIR / testfile 2 & gt; / dev / null fi #### Показать сообщение описания сценария. ### cat & lt; & lt; EOF ############################################ ######################################### Этот скрипт делает все снимки в каталоге $ WALLPAPER_DIR доступным для всех пользователей, определенных в этой системе, как их общесистемные обои для GNOME. ################################################## ############################## EOF #### Ошибка, если каталог обоев не существует. #### если [ ! -d $ WALLPAPER_DIR]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не существует. **** "echo" **** Прецедент завершен. **** "exit 1 fi #### Подсчитайте количество jpg / jpeg / png. #### numfiles = `ls -1 $ WALLPAPER_DIR / *. jpg WALLPAPER_DIR / *. jpeg WALLPAPER_DIR / * .png 2 & gt; / dev / null | wc -l` #### Если файлов изображений нет, то выйдите. #### if [$ numfiles -eq 0]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не имеет изображений. **** "echo" **** Преступление завершено. **** "exit 1 fi #### Теперь мы создаем XML-файл, содержащий изображения для фона. #### #### Начните с создания заголовка в файле XML. #### cat & lt; EOF & gt; $ XML_FILE & lt;? Xml version = "1.0" encoding = "UTF-8"? & Gt; & lt;! DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd" & gt; & Lt; & обои GT; EOF #### Добавьте каждый файл в файл XML. #### #### Выполнение этого способа гарантирует, что файлы с пробелами в их именах правильно обрабатываются #### ####. (ls .... | while read fname; do) #### ls -1 $ WALLPAPER_DIR / *. jpg $ WALLPAPER_DIR / *. png $ WALLPAPER_DIR / *. jpeg 2 & gt; / dev / null | при чтении image_name; do echo "Добавление:` basename "$ image_name". ". fname = `basename" $ image_name "` fname = "$ {fname %% \. *}" echo "& lt; wallpaper & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя & gt; $ fname & lt; / name & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя_файла & gt; $ image_name & lt; / filename & gt;" & GT; & GT; $ XML_FILE echo "& lt; options & gt; stretched & lt; / options & gt;" & GT; & GT; $ XML_FILE echo "& lt; pcolor & gt; # c58357 & lt; / pcolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; scolor & gt; # c58357 & lt; / scolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; shade_type & gt; solid & lt; / shade_type & gt;" & GT; & GT; $ XML_FILE echo "& lt; / wallpaper & gt;" & GT; & GT; $ XML_FILE done #### Создайте нижний колонтитул для файла XML. #### echo "& wallpapers & gt;" & GT; & GT; $ XML_FILE cat & lt; & lt; EOF #################################################### ###################################### Вы почти закончили. скопируйте сгенерированный файл ubuntu-wallpapers.xml в папку / usr / shared / gnome-background-properties ЗАПОМНИТЬ, чтобы сначала создать резервную копию текущего ubuntu-wallpaper.xml в этой папке! ################################################## ############################### EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это просто нужно копировать и вставлять выделенные записи *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл, чтобы иметь подписи обоев ... / wallpaper, указывающие на вашу новую папку & amp; файлы обоев
Ниже приведен скрипт, измененный с этого форума entry , который автоматически обновит файл ubuntu-wallpapers.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper -генератор & lt; путь к новой папке обоев & gt;
Это создаст файл с именем ubuntu-wallpaper.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего файла xml, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
[ ! d17]Вот этот файл сценария, на который я ссылался:
#! / bin / bash # # Этот скрипт будет принимать все обои в заданной папке и # сделать их доступными как " default "в поле« Изменить фон »gui # frontend в Ubuntu. # ################################################################################################### #################################CONFIG_DIR = "/ usr / share / gnome-background-properties" CONFIG_DIR = ". / "XML_FILE =" $ CONFIG_DIR / ubuntu-wallpapers.xml ", если [$ # -ne 1]; затем echo "*** синтаксис ubuntu-wallpaper-generator & lt; путь к папке обоев & gt; ***" echo "*** например ***" echo "*** ubuntu-wallpaper-generator / usr / share / backgrounds *** «exit 1 else WALLPAPER_DIR = $ 1 echo» *** переданные параметры: $ 1 *** «fi #### Сначала проверьте, есть ли у нас права на запись в share dirctory. #### touch $ CONFIG_DIR / testfile & gt; / dev / null 2 & gt; / dev / null, если [$? -ne 0]; затем echo "**** Нет разрешений для каталога общего доступа к рабочему столу ****" echo "**** $ CONFIG_DIR ****" echo "**** Процедура завершена. ****" exit 1 else rm $ CONFIG_DIR / testfile 2 & gt; / dev / null fi #### Показать сообщение описания сценария. ### cat & lt; & lt; EOF ############################################ ######################################### Этот скрипт делает все снимки в каталоге $ WALLPAPER_DIR доступным для всех пользователей, определенных в этой системе, как их общесистемные обои для GNOME. ################################################## ############################## EOF #### Ошибка, если каталог обоев не существует. #### если [ ! -d $ WALLPAPER_DIR]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не существует. **** "echo" **** Прецедент завершен. **** "exit 1 fi #### Подсчитайте количество jpg / jpeg / png. #### numfiles = `ls -1 $ WALLPAPER_DIR / *. jpg WALLPAPER_DIR / *. jpeg WALLPAPER_DIR / * .png 2 & gt; / dev / null | wc -l` #### Если файлов изображений нет, то выйдите. #### if [$ numfiles -eq 0]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не имеет изображений. **** "echo" **** Преступление завершено. **** "exit 1 fi #### Теперь мы создаем XML-файл, содержащий изображения для фона. #### #### Начните с создания заголовка в файле XML. #### cat & lt; EOF & gt; $ XML_FILE & lt;? Xml version = "1.0" encoding = "UTF-8"? & Gt; & lt;! DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd" & gt; & Lt; & обои GT; EOF #### Добавьте каждый файл в файл XML. #### #### Выполнение этого способа гарантирует, что файлы с пробелами в их именах правильно обрабатываются #### ####. (ls .... | while read fname; do) #### ls -1 $ WALLPAPER_DIR / *. jpg $ WALLPAPER_DIR / *. png $ WALLPAPER_DIR / *. jpeg 2 & gt; / dev / null | при чтении image_name; do echo "Добавление:` basename "$ image_name". ". fname = `basename" $ image_name "` fname = "$ {fname %% \. *}" echo "& lt; wallpaper & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя & gt; $ fname & lt; / name & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя_файла & gt; $ image_name & lt; / filename & gt;" & GT; & GT; $ XML_FILE echo "& lt; options & gt; stretched & lt; / options & gt;" & GT; & GT; $ XML_FILE echo "& lt; pcolor & gt; # c58357 & lt; / pcolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; scolor & gt; # c58357 & lt; / scolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; shade_type & gt; solid & lt; / shade_type & gt;" & GT; & GT; $ XML_FILE echo "& lt; / wallpaper & gt;" & GT; & GT; $ XML_FILE done #### Создайте нижний колонтитул для файла XML. #### echo "& wallpapers & gt;" & GT; & GT; $ XML_FILE cat & lt; & lt; EOF #################################################### ###################################### Вы почти закончили. скопируйте сгенерированный файл ubuntu-wallpapers.xml в папку / usr / shared / gnome-background-properties ЗАПОМНИТЬ, чтобы сначала создать резервную копию текущего ubuntu-wallpaper.xml в этой папке! ################################################## ############################### EOF
* EDIT - вторая попытка - и немедленно извиниться за всю работу терминала - надеюсь, это просто нужно копировать и вставлять выделенные записи *
папка, содержащая детали обоев гнома, называется / usr / share / gnome-background-properties / ubuntu-wallpapers.xml
Вы можете отредактировать этот файл, чтобы иметь подписи обоев ... / wallpaper, указывающие на вашу новую папку & amp; файлы обоев
Ниже приведен скрипт, измененный с этого форума entry , который автоматически обновит файл ubuntu-wallpapers.xml для папки, содержащей файлы .png и .jpg.
скопируйте и вставьте содержимое в новый текстовый файл под названием «ubuntu-wallpaper-generator»
Затем выполните файл с синтаксисом
sh ubuntu-wallpaper -генератор & lt; путь к новой папке обоев & gt;
Это создаст файл с именем ubuntu-wallpaper.xml в той же папке, где вы используете этот скрипт.
Безопасное резервное копирование текущего файла xml, т. е.
sudo cp /usr/share/gnome-background-properties/ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml.backup
копия во вновь сгенерированном файле
sudo cp ubuntu-wallpapers.xml /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
[ ! d17]Вот этот файл сценария, на который я ссылался:
#! / bin / bash # # Этот скрипт будет принимать все обои в заданной папке и # сделать их доступными как " default "в поле« Изменить фон »gui # frontend в Ubuntu. # ################################################################################################### #################################CONFIG_DIR = "/ usr / share / gnome-background-properties" CONFIG_DIR = ". / "XML_FILE =" $ CONFIG_DIR / ubuntu-wallpapers.xml ", если [$ # -ne 1]; затем echo "*** синтаксис ubuntu-wallpaper-generator & lt; путь к папке обоев & gt; ***" echo "*** например ***" echo "*** ubuntu-wallpaper-generator / usr / share / backgrounds *** «exit 1 else WALLPAPER_DIR = $ 1 echo» *** переданные параметры: $ 1 *** «fi #### Сначала проверьте, есть ли у нас права на запись в share dirctory. #### touch $ CONFIG_DIR / testfile & gt; / dev / null 2 & gt; / dev / null, если [$? -ne 0]; затем echo "**** Нет разрешений для каталога общего доступа к рабочему столу ****" echo "**** $ CONFIG_DIR ****" echo "**** Процедура завершена. ****" exit 1 else rm $ CONFIG_DIR / testfile 2 & gt; / dev / null fi #### Показать сообщение описания сценария. ### cat & lt; & lt; EOF ############################################ ######################################### Этот скрипт делает все снимки в каталоге $ WALLPAPER_DIR доступным для всех пользователей, определенных в этой системе, как их общесистемные обои для GNOME. ################################################## ############################## EOF #### Ошибка, если каталог обоев не существует. #### если [ ! -d $ WALLPAPER_DIR]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не существует. **** "echo" **** Прецедент завершен. **** "exit 1 fi #### Подсчитайте количество jpg / jpeg / png. #### numfiles = `ls -1 $ WALLPAPER_DIR / *. jpg WALLPAPER_DIR / *. jpeg WALLPAPER_DIR / * .png 2 & gt; / dev / null | wc -l` #### Если файлов изображений нет, то выйдите. #### if [$ numfiles -eq 0]; затем echo "**** Каталог обоев \ $ WALLPAPER_DIR \" не имеет изображений. **** "echo" **** Преступление завершено. **** "exit 1 fi #### Теперь мы создаем XML-файл, содержащий изображения для фона. #### #### Начните с создания заголовка в файле XML. #### cat & lt; EOF & gt; $ XML_FILE & lt;? Xml version = "1.0" encoding = "UTF-8"? & Gt; & lt;! DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd" & gt; & Lt; & обои GT; EOF #### Добавьте каждый файл в файл XML. #### #### Выполнение этого способа гарантирует, что файлы с пробелами в их именах правильно обрабатываются #### ####. (ls .... | while read fname; do) #### ls -1 $ WALLPAPER_DIR / *. jpg $ WALLPAPER_DIR / *. png $ WALLPAPER_DIR / *. jpeg 2 & gt; / dev / null | при чтении image_name; do echo "Добавление:` basename "$ image_name". ". fname = `basename" $ image_name "` fname = "$ {fname %% \. *}" echo "& lt; wallpaper & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя & gt; $ fname & lt; / name & gt;" & GT; & GT; $ XML_FILE echo "& lt; имя_файла & gt; $ image_name & lt; / filename & gt;" & GT; & GT; $ XML_FILE echo "& lt; options & gt; stretched & lt; / options & gt;" & GT; & GT; $ XML_FILE echo "& lt; pcolor & gt; # c58357 & lt; / pcolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; scolor & gt; # c58357 & lt; / scolor & gt;" & GT; & GT; $ XML_FILE echo "& lt; shade_type & gt; solid & lt; / shade_type & gt;" & GT; & GT; $ XML_FILE echo "& lt; / wallpaper & gt;" & GT; & GT; $ XML_FILE done #### Создайте нижний колонтитул для файла XML. #### echo "& wallpapers & gt;" & GT; & GT; $ XML_FILE cat & lt; & lt; EOF #################################################### ###################################### Вы почти закончили. скопируйте сгенерированный файл ubuntu-wallpapers.xml в папку / usr / shared / gnome-background-properties ЗАПОМНИТЬ, чтобы сначала создать резервную копию текущего ubuntu-wallpaper.xml в этой папке! ################################################## ############################### EOF
С помощью CreBS (Create Background Slideshow) вы можете создавать файлы XML для слайд-шоу для обоев - полный путь к изображениям хранится в XML, поэтому перемещение файлов не требуется.
https: // launchpad .net / crebs
обновлено:
#!/bin/bash
################################################################################
# This script will take all wallpapers in a given folder and
# make them available as options in the "change desktop background" OR "system->pref->apperances"
# dialog boxes.
# for ubuntu or debian
# wallpapers are in /usr/share/pixmaps/backgrounds/gnome OR /usr/share/backgrounds
# config file(s) for the dialog are in /usr/share/gnome-background-properties
# --that will make them system wide.
#
#ToDo:
# paths with spaces.
################################################################################
# put the output in the same directory as this script
OutDirectory="$( cd "$( dirname "$0" )" && pwd )"
OutFile="$OutDirectory/gnome-added.xml"
# options
options="zoom" #zoom is best but stretch,center,scale,tile,span
shade_type="solid" #horizontal-gradient, vertical-gradient
pcolor="#000000"
scolor="#000000"
if [ $# -ne 1 ]; then
echo "*** need path to directory containing files to include."
echo "*** for example: /usr/share/backgrounds"
exit 1
else
ScanDirectory=$1
fi
#------need to strip and trailing "/" or this writes incorrect file names.
# not if [ "$lastchr" -eq "/" ]
# lastchr=`expr substr $ScanDirectory ${#ScanDirectory} 1` #--OR:
lastchr=${ScanDirectory#${ScanDirectory%?}}
if [ "${lastchr}" = "/" ]; then
ScanDirectory=${ScanDirectory%?}
fi
#--operating in same directory as the script? set full path for the xml file
if [ ${#ScanDirectory} -le 1 ]; then
ScanDirectory=$OutDirectory
fi
# ---does directory exist
if [ ! -d $ScanDirectory ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
# ----can we write to it?
# touch $OutDirectory/testfile >/dev/null 2>/dev/null
# if [ $? -ne 0 ]; then
if [ ! -w $OutDirectory ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $OutDirectory ****"
echo "**** Procedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png/svg [tif(f)] images. ####
numfiles=`ls -1 $ScanDirectory/*.jpg ScanDirectory/*.jpeg ScanDirectory/*.png ScanDirectory/*.svg 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $OutFile
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $ScanDirectory/*.jpg $ScanDirectory/*.png $ScanDirectory/*.jpeg $ScanDirectory/*.svg 2> /dev/null |
while read image_name; do
fname=`basename "$image_name"`
echo " Adding: $fname."
echo " <wallpaper deleted=\"false\">" >> $OutFile
echo " <name>$fname</name>" >> $OutFile
echo " <filename>$image_name</filename>" >> $OutFile
echo " <options>$options</options>" >> $OutFile
echo " <pcolor>$pcolor</pcolor>" >> $OutFile
echo " <scolor>$scolor</scolor>" >> $OutFile
echo " <shade_type>$shade_type</shade_type>" >> $OutFile
echo " </wallpaper>" >> $OutFile
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $OutFile
У меня была та же проблема, и я написал скрипт python для редактирования пользовательского XML-файла, который можно поместить в /usr/share/gnome-background-properties/my-backgrounds.xml.
Пример использования:
Чтобы добавить space_galaxy.jpeg и fuzz_dog.png в xml-файл:
python my-backgrounds.py -a space_galaxy.jpeg fuzzy_dog.png -n "Cool Galaxy" "Cute Dog"
Обратите внимание, что по умолчанию xml файл находится в /usr/share/gnome-background-properties/my-backgrounds.xml (это то, где GNOME смотрит на xml). Чтобы указать альтернативный xml-файл, используйте параметр -x:
python my-backgrounds.py -a space_galaxy.jpeg -x ~/my-backgrounds.xml
Чтобы удалить записи из файла xml, используйте параметр -r:
python my-backgrounds.py -r "Cool Galaxy" fuzzy_dog.png
Это работает с GNOME 3.6 и Python 3.3
Вот как я это делаю.
Щелкните правой кнопкой мыши на рабочем столе> Изменить фон. Нажмите «Добавить» на вкладке «Фон». Зайдите в папку и выберите все обои, щелкнув по одному и нажав Ctrl + A.Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои.
Я нашел одного, которого назвали Уолли, и его очень рекомендуется, но я помню, что я не использовал его. В любом случае вы можете установить его, набрав в терминале
sudo apt-get install wally
.
Чтобы показать обои в селекторе, без необходимости вручную обновлять папке, вам придется добавить их в /usr/share/backgrounds.
Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои. Ill post, когда я нахожу его.
обновлено:
#!/bin/bash
################################################################################
# This script will take all wallpapers in a given folder and
# make them available as options in the "change desktop background" OR "system->pref->apperances"
# dialog boxes.
# for ubuntu or debian
# wallpapers are in /usr/share/pixmaps/backgrounds/gnome OR /usr/share/backgrounds
# config file(s) for the dialog are in /usr/share/gnome-background-properties
# --that will make them system wide.
#
#ToDo:
# paths with spaces.
################################################################################
# put the output in the same directory as this script
OutDirectory="$( cd "$( dirname "$0" )" && pwd )"
OutFile="$OutDirectory/gnome-added.xml"
# options
options="zoom" #zoom is best but stretch,center,scale,tile,span
shade_type="solid" #horizontal-gradient, vertical-gradient
pcolor="#000000"
scolor="#000000"
if [ $# -ne 1 ]; then
echo "*** need path to directory containing files to include."
echo "*** for example: /usr/share/backgrounds"
exit 1
else
ScanDirectory=$1
fi
#------need to strip and trailing "/" or this writes incorrect file names.
# not if [ "$lastchr" -eq "/" ]
# lastchr=`expr substr $ScanDirectory ${#ScanDirectory} 1` #--OR:
lastchr=${ScanDirectory#${ScanDirectory%?}}
if [ "${lastchr}" = "/" ]; then
ScanDirectory=${ScanDirectory%?}
fi
#--operating in same directory as the script? set full path for the xml file
if [ ${#ScanDirectory} -le 1 ]; then
ScanDirectory=$OutDirectory
fi
# ---does directory exist
if [ ! -d $ScanDirectory ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
# ----can we write to it?
# touch $OutDirectory/testfile >/dev/null 2>/dev/null
# if [ $? -ne 0 ]; then
if [ ! -w $OutDirectory ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $OutDirectory ****"
echo "**** Procedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png/svg [tif(f)] images. ####
numfiles=`ls -1 $ScanDirectory/*.jpg ScanDirectory/*.jpeg ScanDirectory/*.png ScanDirectory/*.svg 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $OutFile
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $ScanDirectory/*.jpg $ScanDirectory/*.png $ScanDirectory/*.jpeg $ScanDirectory/*.svg 2> /dev/null |
while read image_name; do
fname=`basename "$image_name"`
echo " Adding: $fname."
echo " <wallpaper deleted=\"false\">" >> $OutFile
echo " <name>$fname</name>" >> $OutFile
echo " <filename>$image_name</filename>" >> $OutFile
echo " <options>$options</options>" >> $OutFile
echo " <pcolor>$pcolor</pcolor>" >> $OutFile
echo " <scolor>$scolor</scolor>" >> $OutFile
echo " <shade_type>$shade_type</shade_type>" >> $OutFile
echo " </wallpaper>" >> $OutFile
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $OutFile
У меня была та же проблема, и я написал скрипт python для редактирования пользовательского XML-файла, который можно поместить в /usr/share/gnome-background-properties/my-backgrounds.xml.
Пример использования:
Чтобы добавить space_galaxy.jpeg и fuzz_dog.png в xml-файл:
python my-backgrounds.py -a space_galaxy.jpeg fuzzy_dog.png -n "Cool Galaxy" "Cute Dog"
Обратите внимание, что по умолчанию xml файл находится в /usr/share/gnome-background-properties/my-backgrounds.xml (это то, где GNOME смотрит на xml). Чтобы указать альтернативный xml-файл, используйте параметр -x:
python my-backgrounds.py -a space_galaxy.jpeg -x ~/my-backgrounds.xml
Чтобы удалить записи из файла xml, используйте параметр -r:
python my-backgrounds.py -r "Cool Galaxy" fuzzy_dog.png
Это работает с GNOME 3.6 и Python 3.3
Вот как я это делаю.
Щелкните правой кнопкой мыши на рабочем столе> Изменить фон. Нажмите «Добавить» на вкладке «Фон». Зайдите в папку и выберите все обои, щелкнув по одному и нажав Ctrl + A.Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои.
Я нашел одного, которого назвали Уолли, и его очень рекомендуется, но я помню, что я не использовал его. В любом случае вы можете установить его, набрав в терминале
sudo apt-get install wally
.
Чтобы показать обои в селекторе, без необходимости вручную обновлять папке, вам придется добавить их в /usr/share/backgrounds.
Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои. Ill post, когда я нахожу его.
С помощью CreBS (Create Background Slideshow) вы можете создавать файлы XML для слайд-шоу для обоев - полный путь к изображениям хранится в XML, поэтому перемещение файлов не требуется.
https: // launchpad .net / crebs
обновлено:
#!/bin/bash
################################################################################
# This script will take all wallpapers in a given folder and
# make them available as options in the "change desktop background" OR "system->pref->apperances"
# dialog boxes.
# for ubuntu or debian
# wallpapers are in /usr/share/pixmaps/backgrounds/gnome OR /usr/share/backgrounds
# config file(s) for the dialog are in /usr/share/gnome-background-properties
# --that will make them system wide.
#
#ToDo:
# paths with spaces.
################################################################################
# put the output in the same directory as this script
OutDirectory="$( cd "$( dirname "$0" )" && pwd )"
OutFile="$OutDirectory/gnome-added.xml"
# options
options="zoom" #zoom is best but stretch,center,scale,tile,span
shade_type="solid" #horizontal-gradient, vertical-gradient
pcolor="#000000"
scolor="#000000"
if [ $# -ne 1 ]; then
echo "*** need path to directory containing files to include."
echo "*** for example: /usr/share/backgrounds"
exit 1
else
ScanDirectory=$1
fi
#------need to strip and trailing "/" or this writes incorrect file names.
# not if [ "$lastchr" -eq "/" ]
# lastchr=`expr substr $ScanDirectory ${#ScanDirectory} 1` #--OR:
lastchr=${ScanDirectory#${ScanDirectory%?}}
if [ "${lastchr}" = "/" ]; then
ScanDirectory=${ScanDirectory%?}
fi
#--operating in same directory as the script? set full path for the xml file
if [ ${#ScanDirectory} -le 1 ]; then
ScanDirectory=$OutDirectory
fi
# ---does directory exist
if [ ! -d $ScanDirectory ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
# ----can we write to it?
# touch $OutDirectory/testfile >/dev/null 2>/dev/null
# if [ $? -ne 0 ]; then
if [ ! -w $OutDirectory ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $OutDirectory ****"
echo "**** Procedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png/svg [tif(f)] images. ####
numfiles=`ls -1 $ScanDirectory/*.jpg ScanDirectory/*.jpeg ScanDirectory/*.png ScanDirectory/*.svg 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $OutFile
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $ScanDirectory/*.jpg $ScanDirectory/*.png $ScanDirectory/*.jpeg $ScanDirectory/*.svg 2> /dev/null |
while read image_name; do
fname=`basename "$image_name"`
echo " Adding: $fname."
echo " <wallpaper deleted=\"false\">" >> $OutFile
echo " <name>$fname</name>" >> $OutFile
echo " <filename>$image_name</filename>" >> $OutFile
echo " <options>$options</options>" >> $OutFile
echo " <pcolor>$pcolor</pcolor>" >> $OutFile
echo " <scolor>$scolor</scolor>" >> $OutFile
echo " <shade_type>$shade_type</shade_type>" >> $OutFile
echo " </wallpaper>" >> $OutFile
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $OutFile
У меня была та же проблема, и я написал скрипт python для редактирования пользовательского XML-файла, который можно поместить в /usr/share/gnome-background-properties/my-backgrounds.xml.
Пример использования:
Чтобы добавить space_galaxy.jpeg и fuzz_dog.png в xml-файл:
python my-backgrounds.py -a space_galaxy.jpeg fuzzy_dog.png -n "Cool Galaxy" "Cute Dog"
Обратите внимание, что по умолчанию xml файл находится в /usr/share/gnome-background-properties/my-backgrounds.xml (это то, где GNOME смотрит на xml). Чтобы указать альтернативный xml-файл, используйте параметр -x:
python my-backgrounds.py -a space_galaxy.jpeg -x ~/my-backgrounds.xml
Чтобы удалить записи из файла xml, используйте параметр -r:
python my-backgrounds.py -r "Cool Galaxy" fuzzy_dog.png
Это работает с GNOME 3.6 и Python 3.3
Вот как я это делаю.
Щелкните правой кнопкой мыши на рабочем столе> Изменить фон. Нажмите «Добавить» на вкладке «Фон». Зайдите в папку и выберите все обои, щелкнув по одному и нажав Ctrl + A.Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои.
Я нашел одного, которого назвали Уолли, и его очень рекомендуется, но я помню, что я не использовал его. В любом случае вы можете установить его, набрав в терминале
sudo apt-get install wally
.
Чтобы показать обои в селекторе, без необходимости вручную обновлять папке, вам придется добавить их в /usr/share/backgrounds.
Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои. Ill post, когда я нахожу его.
С помощью CreBS (Create Background Slideshow) вы можете создавать файлы XML для слайд-шоу для обоев - полный путь к изображениям хранится в XML, поэтому перемещение файлов не требуется.
https: // launchpad .net / crebs
обновлено:
#!/bin/bash
################################################################################
# This script will take all wallpapers in a given folder and
# make them available as options in the "change desktop background" OR "system->pref->apperances"
# dialog boxes.
# for ubuntu or debian
# wallpapers are in /usr/share/pixmaps/backgrounds/gnome OR /usr/share/backgrounds
# config file(s) for the dialog are in /usr/share/gnome-background-properties
# --that will make them system wide.
#
#ToDo:
# paths with spaces.
################################################################################
# put the output in the same directory as this script
OutDirectory="$( cd "$( dirname "$0" )" && pwd )"
OutFile="$OutDirectory/gnome-added.xml"
# options
options="zoom" #zoom is best but stretch,center,scale,tile,span
shade_type="solid" #horizontal-gradient, vertical-gradient
pcolor="#000000"
scolor="#000000"
if [ $# -ne 1 ]; then
echo "*** need path to directory containing files to include."
echo "*** for example: /usr/share/backgrounds"
exit 1
else
ScanDirectory=$1
fi
#------need to strip and trailing "/" or this writes incorrect file names.
# not if [ "$lastchr" -eq "/" ]
# lastchr=`expr substr $ScanDirectory ${#ScanDirectory} 1` #--OR:
lastchr=${ScanDirectory#${ScanDirectory%?}}
if [ "${lastchr}" = "/" ]; then
ScanDirectory=${ScanDirectory%?}
fi
#--operating in same directory as the script? set full path for the xml file
if [ ${#ScanDirectory} -le 1 ]; then
ScanDirectory=$OutDirectory
fi
# ---does directory exist
if [ ! -d $ScanDirectory ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
# ----can we write to it?
# touch $OutDirectory/testfile >/dev/null 2>/dev/null
# if [ $? -ne 0 ]; then
if [ ! -w $OutDirectory ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $OutDirectory ****"
echo "**** Procedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png/svg [tif(f)] images. ####
numfiles=`ls -1 $ScanDirectory/*.jpg ScanDirectory/*.jpeg ScanDirectory/*.png ScanDirectory/*.svg 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $OutFile
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $ScanDirectory/*.jpg $ScanDirectory/*.png $ScanDirectory/*.jpeg $ScanDirectory/*.svg 2> /dev/null |
while read image_name; do
fname=`basename "$image_name"`
echo " Adding: $fname."
echo " <wallpaper deleted=\"false\">" >> $OutFile
echo " <name>$fname</name>" >> $OutFile
echo " <filename>$image_name</filename>" >> $OutFile
echo " <options>$options</options>" >> $OutFile
echo " <pcolor>$pcolor</pcolor>" >> $OutFile
echo " <scolor>$scolor</scolor>" >> $OutFile
echo " <shade_type>$shade_type</shade_type>" >> $OutFile
echo " </wallpaper>" >> $OutFile
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $OutFile
У меня была та же проблема, и я написал скрипт python для редактирования пользовательского XML-файла, который можно поместить в /usr/share/gnome-background-properties/my-backgrounds.xml.
Пример использования:
Чтобы добавить space_galaxy.jpeg и fuzz_dog.png в xml-файл:
python my-backgrounds.py -a space_galaxy.jpeg fuzzy_dog.png -n "Cool Galaxy" "Cute Dog"
Обратите внимание, что по умолчанию xml файл находится в /usr/share/gnome-background-properties/my-backgrounds.xml (это то, где GNOME смотрит на xml). Чтобы указать альтернативный xml-файл, используйте параметр -x:
python my-backgrounds.py -a space_galaxy.jpeg -x ~/my-backgrounds.xml
Чтобы удалить записи из файла xml, используйте параметр -r:
python my-backgrounds.py -r "Cool Galaxy" fuzzy_dog.png
Это работает с GNOME 3.6 и Python 3.3
Вот как я это делаю.
Щелкните правой кнопкой мыши на рабочем столе> Изменить фон. Нажмите «Добавить» на вкладке «Фон». Зайдите в папку и выберите все обои, щелкнув по одному и нажав Ctrl + A.Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои.
Я нашел одного, которого назвали Уолли, и его очень рекомендуется, но я помню, что я не использовал его. В любом случае вы можете установить его, набрав в терминале
sudo apt-get install wally
.
Чтобы показать обои в селекторе, без необходимости вручную обновлять папке, вам придется добавить их в /usr/share/backgrounds.
Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои. Ill post, когда я нахожу его.
С помощью CreBS (Create Background Slideshow) вы можете создавать файлы XML для слайд-шоу для обоев - полный путь к изображениям хранится в XML, поэтому перемещение файлов не требуется.
https: // launchpad .net / crebs
обновлено:
#!/bin/bash
################################################################################
# This script will take all wallpapers in a given folder and
# make them available as options in the "change desktop background" OR "system->pref->apperances"
# dialog boxes.
# for ubuntu or debian
# wallpapers are in /usr/share/pixmaps/backgrounds/gnome OR /usr/share/backgrounds
# config file(s) for the dialog are in /usr/share/gnome-background-properties
# --that will make them system wide.
#
#ToDo:
# paths with spaces.
################################################################################
# put the output in the same directory as this script
OutDirectory="$( cd "$( dirname "$0" )" && pwd )"
OutFile="$OutDirectory/gnome-added.xml"
# options
options="zoom" #zoom is best but stretch,center,scale,tile,span
shade_type="solid" #horizontal-gradient, vertical-gradient
pcolor="#000000"
scolor="#000000"
if [ $# -ne 1 ]; then
echo "*** need path to directory containing files to include."
echo "*** for example: /usr/share/backgrounds"
exit 1
else
ScanDirectory=$1
fi
#------need to strip and trailing "/" or this writes incorrect file names.
# not if [ "$lastchr" -eq "/" ]
# lastchr=`expr substr $ScanDirectory ${#ScanDirectory} 1` #--OR:
lastchr=${ScanDirectory#${ScanDirectory%?}}
if [ "${lastchr}" = "/" ]; then
ScanDirectory=${ScanDirectory%?}
fi
#--operating in same directory as the script? set full path for the xml file
if [ ${#ScanDirectory} -le 1 ]; then
ScanDirectory=$OutDirectory
fi
# ---does directory exist
if [ ! -d $ScanDirectory ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" does not exist. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
# ----can we write to it?
# touch $OutDirectory/testfile >/dev/null 2>/dev/null
# if [ $? -ne 0 ]; then
if [ ! -w $OutDirectory ]; then
echo "**** No permissions to the desktop share directory. ****"
echo "**** $OutDirectory ****"
echo "**** Procedure Terminated. ****"
exit 1
fi
#### Count the number of jpg/jpeg/png/svg [tif(f)] images. ####
numfiles=`ls -1 $ScanDirectory/*.jpg ScanDirectory/*.jpeg ScanDirectory/*.png ScanDirectory/*.svg 2>/dev/null | wc -l`
#### If there are no image files there then exit. ####
if [ $numfiles -eq 0 ]; then
echo "**** The wallpaper directory \"$ScanDirectory\" has no images. ****"
echo "**** Precedure Terminated. ****"
exit 1
fi
#### Now we create the XML file containing the images for backgrounds. ####
#### Start by creating the header in the XML file. ####
cat <<EOF > $OutFile
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
#### Add each file to the XML file. ####
#### Doing it this way makes sure files with spaces in their names are ####
#### handled properly. (ls .... | while read fname; do) ####
ls -1 $ScanDirectory/*.jpg $ScanDirectory/*.png $ScanDirectory/*.jpeg $ScanDirectory/*.svg 2> /dev/null |
while read image_name; do
fname=`basename "$image_name"`
echo " Adding: $fname."
echo " <wallpaper deleted=\"false\">" >> $OutFile
echo " <name>$fname</name>" >> $OutFile
echo " <filename>$image_name</filename>" >> $OutFile
echo " <options>$options</options>" >> $OutFile
echo " <pcolor>$pcolor</pcolor>" >> $OutFile
echo " <scolor>$scolor</scolor>" >> $OutFile
echo " <shade_type>$shade_type</shade_type>" >> $OutFile
echo " </wallpaper>" >> $OutFile
done
#### Create the footer for the XML file. ####
echo "</wallpapers>" >> $OutFile
У меня была та же проблема, и я написал скрипт python для редактирования пользовательского XML-файла, который можно поместить в /usr/share/gnome-background-properties/my-backgrounds.xml.
Пример использования:
Чтобы добавить space_galaxy.jpeg и fuzz_dog.png в xml-файл:
python my-backgrounds.py -a space_galaxy.jpeg fuzzy_dog.png -n "Cool Galaxy" "Cute Dog"
Обратите внимание, что по умолчанию xml файл находится в /usr/share/gnome-background-properties/my-backgrounds.xml (это то, где GNOME смотрит на xml). Чтобы указать альтернативный xml-файл, используйте параметр -x:
python my-backgrounds.py -a space_galaxy.jpeg -x ~/my-backgrounds.xml
Чтобы удалить записи из файла xml, используйте параметр -r:
python my-backgrounds.py -r "Cool Galaxy" fuzzy_dog.png
Это работает с GNOME 3.6 и Python 3.3
Вот как я это делаю.
Щелкните правой кнопкой мыши на рабочем столе> Изменить фон. Нажмите «Добавить» на вкладке «Фон». Зайдите в папку и выберите все обои, щелкнув по одному и нажав Ctrl + A.Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои.
Я нашел одного, которого назвали Уолли, и его очень рекомендуется, но я помню, что я не использовал его. В любом случае вы можете установить его, набрав в терминале
sudo apt-get install wally
.
Чтобы показать обои в селекторе, без необходимости вручную обновлять папке, вам придется добавить их в /usr/share/backgrounds.
Теперь они должны отображаться в списке выбора. Я также пытаюсь найти небольшое приложение, которое я использовал, чтобы автоматически менять обои. Ill post, когда я нахожу его.
С помощью CreBS (Create Background Slideshow) вы можете создавать файлы XML для слайд-шоу для обоев - полный путь к изображениям хранится в XML, поэтому перемещение файлов не требуется.
https: // launchpad .net / crebs
С помощью CreBS (Create Background Slideshow) вы можете создавать XML-файлы для слайд-шоу обоев - полный путь к изображениям хранится в XML, поэтому перемещение файлов не требуется.