¿Cómo restringir a los usuarios al cambiar sus fondos de pantalla?

11

No quiero que mis usuarios cambien el fondo de pantalla del sistema. ¿Cómo bloqueo el fondo de pantalla?

Actualizar

  • Los usuarios están cambiando el fondo de pantalla haciendo clic derecho en la imagen y eligiendo establecer como fondo de pantalla. ¿Cómo restringir este comportamiento?

  • ¿Es posible eliminar la pestaña de fondos de las preferencias de apariencia? Si es así, ¿cómo?

ingrese la descripción de la imagen aquí

karthick87
fuente
De acuerdo, ¿desea que puedan abrir imágenes pero NO poder establecerlas como fondo de pantalla? Además, ¿necesitan acceso a "Configuración" ( gnome-control-center)?
ish
@izx Sí, necesitan acceso a la configuración, pero no deberían poder establecerla como fondo de pantalla.
karthick87
ubuntu 10.10 y entorno de escritorio gnome-classic.
karthick87
@ karthick87: la pestaña de fondo está dibujada por /usr/share/gnome-control-center/ui/appearance.ui (busca "fondo" en ese archivo) ... He echado un vistazo rápido, pero no estoy seguro aún qué bits editar para ocultar la pestaña. Voy a echar un vistazo un poco más en profundidad cuando encuentre algo de tiempo. Gracias.
fossfreedom
@ karthick87 - ok - no eliminé la pestaña, pero actualicé mi respuesta para esta funcionalidad de pestaña para no hacer nada. Espero que esto ayude.
fossfreedom

Respuestas:

5

eog (ojo de gnomo)

11.04 y versiones anteriores de ubuntu

Cuando mencionó que puede hacer clic con el botón derecho en una imagen y establecerla como fondo de pantalla, esta respuesta asume que quiso decir: abra la imagen jpeg en eog, haga clic con el botón derecho y elija "establecer como fondo de escritorio".

ingrese la descripción de la imagen aquí

Con esta respuesta, puede eliminar esta opción:

ingrese la descripción de la imagen aquí

Con este supuesto en mente, puede eliminar la opción de menú Y la opción de hacer clic con el botón derecho editando la fuente directamente (si desea distribuir un paquete) o en un cliente modificar los datos de la ventana GTK.

solución 1 - editar datos de la ventana GTK

Primero haga una copia de seguridad de los datos de la ventana GTK:

sudo cp /usr/share/eog/eog-ui.xml ~/
gksudo gedit /usr/share/eog/eog-ui.xml

Ahora busque "fondo de pantalla": elimine cada línea que contenga esta palabra clave y guárdela.

Para revertir los cambios:

sudo cp ~/eog-ui.xml /usr/share/eog

solución 2 - distribuya el paquete deb

Esto se puede hacer con esta receta:

apt-get source eog
sudo apt-get build-dep eog
sudo apt-get install devscripts

Si le pide que configure su correo, seleccione sin configuración

cd eog-2*/data
gedit eog-ui.xml

Ahora busque "fondo de pantalla": elimine cada línea que contiene esta palabra clave.

Salvar.

cd ..
gedit debian/changelog

agregue +ppakarthicka la primera línea para que lea algo como:

eog (2.32.1-0ubuntu2+ppakarthick) natty; urgency=low

debuild -us -uc
cd ..
sudo dpkg -i eog_*.deb

Nota: solo hay un paquete de deb para instalar, ya sea de 32 bits o de 64 bits, dependiendo de la arquitectura de ubuntu que haya instalado. El producto de la otra deb es un paquete de depuración y un paquete de desarrollo, que puede ignorar.

Para revertir los cambios:

sudo apt-get purge eog
sudo apt-get install eog

Esto eliminará el paquete eog completo. Luego, el segundo comando se volverá a descargar desde los repositorios, el paquete eog actual.

Nota: puede querer eliminar el metapaquete ubuntu-desktop. El único efecto que esto tiene es si tiene la intención de actualizar a Natty. Si desea actualizar, simplemente instale ubuntu-desktopantes de la actualización.

Pestaña de fondo Gnome-Control-Center

Los datos de la ventana GTK para esta pestaña están en el archivo, /usr/share/gnome-control-center/ui/appearance.uipero no he encontrado un lugar conveniente en este archivo en el que pueda ocultar la pestaña de fondo.

ingrese la descripción de la imagen aquí

Con un cambio en el código fuente, puede hacer que la pestaña de fondo y sus botones no muestren el fondo de pantalla y no hagan nada cuando se hace clic en los botones.

Esta solución es muy similar a la solución 2 anterior.

apt-get source gnome-control-center
sudo apt-get build-dep gnome-control-center
sudo apt-get install devscripts

Si le pide que configure su correo, seleccione sin configuración

cd gnome*/capplets/appearance
gedit appearance-desktop.c

Ahora busque la siguiente función y agregue return;como se muestra:

void
desktop_init (AppearanceData *data,
          const gchar **uris)
{
  GtkWidget *add_button, *w;
  GtkCellRenderer *cr;
  char *url;

  data->wp_update_gconf = TRUE;

  data->wp_uris = NULL;

  return;

Salvar.

cd ../..
gedit debian/changelog

agregue +ppakarthicka la primera línea para que lea algo como:

gnome-control-center (1:2.30.1-0ubuntu2+ppakarthick) lucid-proposed; urgency=low

debuild -us -uc
cd ..
sudo dpkg -i capplets*.deb
sudo dpkg -i libgnome-window-settings1*.deb
sudo dpkg -i gnome-control-center_*.deb

Para revertir los cambios:

sudo apt-get purge gnome-control-center libgnome-window-settings1 capplets-data
sudo apt-get install ubuntu_desktop

Esto eliminará el paquete completo gnome-control-center y algunos otros paquetes. Luego, el segundo comando se volverá a descargar de los repositorios, todos los paquetes previamente eliminados.

fossfreedom
fuente
El error debuild -us -ucaquí es el error pastebin.ubuntu.com/1040147
karthick87
cada una de esas dependencias incumplidas "" debería haber sido instalado cuando lo hizo sudo apt-get build-dep gnome-control-center- lo que ocurre si instala estos de forma individual, por ejemplo sudo apt-get install libxss-dev, y sudo apt-get install libgnome-menu-devetc, etc?
fossfreedom
7

Hay dos maneras que yo sepa:

1. Como root plazo gconf-editor: gksudo gconf-editor. En el panel izquierdo encontrar / desktop / gnome / background. En el panel derecho, busque picture_filename, haga clic derecho sobre él y seleccione Set as Mandatory.

2. Otra forma es simplemente evitar que los usuarios normales ejecuten el cambiador de fondo de pantalla ejecutando (como root):chmod 744 /usr/bin/gnome-appearance-properties

Mark Russell
fuente
gconf-editor es lo que quiero. ¿Es posible configurar esa opción Set as Mandatorydesde la terminal? Para que pueda hacer un script y ejecutarlo en todos los hosts.
karthick87
Una posibilidad es que el usuario abra el fondo de pantalla y haga clic derecho y establecer como fondo de pantalla aplica el fondo de pantalla. ¿Alguna forma de restringir esto?
karthick87
7

La versión de la línea de comando de la respuesta de Mark sería:

sudo gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /desktop/gnome/background/picture_filename "/usr/share/backgrounds/Tri_Narwhal_by_momez.jpg"
8128
fuente
He hecho esto, pero ¿cómo revertirlo?
karthick87 05 de
0

Encontré una manera de configurar fácilmente el fondo de pantalla (fondo de escritorio) en cada inicio de sesión. Cree un nuevo programa de inicio de sesión en "Aplicaciones de inicio" con el siguiente comando.

gsettings set org.gnome.desktop.background picture-uri "file:///usr/share/backgrounds/edubuntu_default.png"

Por supuesto, puede especificar cualquier imagen simplemente reemplazando "edubuntu_default.png" con su imagen.

Harlem Ardilla
fuente