Як видалити Змінити фон робочого столу правою кнопкою миші?


11

Я хочу обмежити користувачів у зміні шпалер і тем. Тож хтось може сказати мені, як вилучити опцію " Зміна фону робочого столу " правою кнопкою миші?

Примітка:

Я просто хочу видалити цю опцію правою кнопкою миші.


Це не здається можливим без перекомпіляції з джерела. Я клоную репо і побачу, де код.
nickguletskii

1
Ви хочете повністю видалити доступ gnome-appearance-propertiesабо просто цей метод доступу до нього? Якщо ви хочете не дати користувачам налаштовувати фон або тему, ви, мабуть, просто хочете повністю видалити доступ до команди (потрібен пароль керівника для продовження чи щось).
crazy2be

Відповіді:


20

Якщо ви можете жити без піктограм на робочому столі, ви можете повністю відключити меню правої кнопки миші через параметр Nautilus 'show_desktop на зразок цього:

gconftool-2 -t bool -s /apps/nautilus/preferences/show_desktop false

Редагувати: Позбавлення лише цього пункту меню вимагатиме виправлення джерела Nautilus. Визначення меню знаходиться src/file-manager/fm-desktop-icon-view.cвсередині desktop_view_entries[](або просто шукати Change Desktop _Background). Edit2: див. Нижче для HowTo.

Іншим варіантом буде використання різних файлових менеджерів для малювання піктограм робочого столу. Можливо, у менеджера файлів PCMan немає цього запису в меню правою кнопкою миші?

Мінімальний посібник з редагування та відновлення Nautilus

Як я вже зазначав, запис у меню є жорстким кодом для Nautilus, тому, наскільки я знаю, єдиний спосіб його видалити І зберегти всі інші функції - це редагувати джерело Nautilus та перекомпілювати його. Попереджуйте, що пройде деякий час, і вам знадобиться місце для всіх пакетів розробки та самої компіляції.

Процес був протестований на Nautilus Elementary 2.32.2.2, однак різниці для запасу Nautilus 2.32 не повинні бути.

  1. Отримайте основні пакети розробки:
    sudo apt-get install build-basic fakeroot dpkg-dev devscripts
  2. Отримайте залежності від Nautilus
    sudo apt-get build-dep nautilus
  3. Завантажте джерело Nautilus - зверніть увагу, що для цієї команди не потрібно sudo; Крім того, він розмістить декілька файлів у поточному каталозі, тому зазвичай корисно створити додатковий dir для цього.
    mkdir nautilus
    cd nautilus
    apt-get source nautilus
  4. Джерело буде завантажено і витягнуте в nautilus-VERSION*папку (VERSION, звичайно, номер версії, швидше за все, 2.32. щось). Зайдіть у цю папку.
  5. Відкрити файл src/file-manager/fm-desktop-icon-view.c
  6. Шукайте GtkActionEntry desktop_view_entries[]- у моєму випадку це лінія 721, проте для вашої версії це може відрізнятися. Це повинно виглядати так:

    static const GtkActionEntry desktop_view_entries[] = {
        /* name, stock id */
        { "New Launcher Desktop", NULL,
          /* label, accelerator */
          N_("Create L_auncher..."), NULL,
          /* tooltip */
          N_("Create a new launcher"),
          G_CALLBACK (action_new_launcher_callback) },
        /* name, stock id */
        { "Change Background", NULL,
          /* label, accelerator */
          N_("Change Desktop _Background"), NULL,
          /* tooltip */
          N_("Show a window that lets you set your desktop background's pattern or color"),
          G_CALLBACK (action_change_background_callback) },
        /* name, stock id */
        { "Empty Trash Conditional", NULL,
          /* label, accelerator */
          N_("Empty Trash"), NULL,
          /* tooltip */
          N_("Delete all items in the Trash"),
          G_CALLBACK (action_empty_trash_conditional_callback) },
    };
    

    Зауважте, що другий масив містить Change Background- видаліть його, щоб ви отримали щось подібне:

    static const GtkActionEntry desktop_view_entries[] = {
        /* name, stock id */
        { "New Launcher Desktop", NULL,
          /* label, accelerator */
          N_("Create L_auncher..."), NULL,
          /* tooltip */
          N_("Create a new launcher"),
          G_CALLBACK (action_new_launcher_callback) },
        /* Change Background was here */
        /* name, stock id */
        { "Empty Trash Conditional", NULL,
          /* label, accelerator */
          N_("Empty Trash"), NULL,
          /* tooltip */
          N_("Delete all items in the Trash"),
          G_CALLBACK (action_empty_trash_conditional_callback) },
    };
    

    Збережіть файл.

  7. Назад у терміналі CD до вихідного кореня (якщо ви цього ще не зробили)
    cd nautilus- *
    І біжи
    дч -л місцевий
    Це виконає за замовчуванням $EDITOR(можливо, Nano) з файлом журналу змін, підготовленим для введення змін. Напишіть щось описовий після цього *, а все інше залишиться недоторканим. Зауважте, що -l localваріант - зазначити локальну збірку, замість localнеї можна використовувати будь-що інше , проте важливо додати запис до журналу змін, інакше ваша локальна збірка буде замінена версією сховища.
  8. Складіть і складіть пакет
    розбудувати -i -us -uc -b
    Пояснення комутаторів див. У розділі "Приклади"
  9. Іди, схопи каву, це може зайняти деякий час.
  10. Як тільки збірка закінчиться (сподіваємось, успіх), ви знайдете купу пакунків .deb у батьківському каталозі. Встановіть їх усіх.
    cd ..
    sudo dpkg -i * .deb
  11. Вихід або перезапуск Nautilus для великої справедливості ...
    nautilus -q

Дивись ма, ні "Зміна фону"!

меню робочого столу nautilus

Щоб бути на 100% впевненим, напевно, хороша ідея заблокувати nautilusпакет у Synaptic .

Редагувати: Після того, як ви переконаєтесь, що все працює нормально, ви можете позбутися пакунків збірки-dep, використовуючи цю вишукану команду . Вам просто потрібно встановити aptitude...

Список літератури


Буде добре, якщо ви скажете як повністю усунути цю опцію правою кнопкою миші.
karthick87

Гаразд, я зрозумію, як редагувати джерело Nautilus та перекомпілювати його. Просто небагато часу.
jnv

Ось, я сподіваюся, це стане в нагоді.
jnv

1
nice one @jnv :)
Rinzwind

Дякую Ріндзвінд. Я бачу, що Маркдаун викрутив вихідний код з fm-desktop-icon-view.c, не копіюйте його ще.
jnv

6

Я не знаю, як це зробити, але я припускаю, що фон робочого столу встановлюється за допомогою клавіші GConf. Якщо так, ви можете запустити gconf-редактор як root, знайти відповідний ключ та встановити його як обов'язковий. Потім користувачам забороняється змінювати його значення.


4

Відмова: Я не використовував Sabayon (редактор профілю користувача в Ubuntu) або Pesullus (Редактор блокування в Ubuntu). Просто допомагаючи, вказуючи на вас у правильному напрямку. :-)

http://live.gnome.org/Sabayon/

Sabayon - це інструмент системного адміністрування для визначення та розгортання профілів робочого столу для середовища GNOME. Він дозволяє керувати такими елементами, як макет панелі, пункти меню, налаштування gconf за замовчуванням, а також надавати заздалегідь задані параметри за замовчуванням для деяких програм, які не є GNOME, такими як Firefox. Він також використовує функцію блокування Pessulus. Це робиться, надаючи "робочий стіл у вікні", що дозволяє вам налаштувати робочий стіл так, як вам здається, а потім записувати свої зміни, які застосовуватимуться до користувачів програмою, що застосовує сабайон, під час входу.

Хто повинен використовувати Sabayon? Sabayon орієнтований на всіх, кому потрібно забезпечити стандартизований робочий стіл GNOME для своїх кінцевих користувачів. Вчителі, які адмініструють лабораторії, бібліотеки та компанії, повинні мати робочий стіл "заблокований", і вони можуть добре використовувати Sabayon

Саме в програмному центрі Ubuntu , зробіть пошук " редактора профілів користувача ". Він буде розміщений в Системі> Адміністрація> Редактор профілів користувача

Запустіть програму, натисніть кнопку " Додати" , введіть " Студент" , натисніть кнопку " Додати" , натисніть " Редагувати" , "Клацніть довідка" , "натисніть вміст" . Прочитайте довідку .

Ось ще один сайт, який пояснює це трохи більше, з акцентом на кіоск.

http://users.telenet.be/mydotcom/howto/linuxkiosk/ubuntu01.htm

Інші програми, які дозволяють вам заблокувати речі, - це " Блокування редактора ", знайдене в програмному центрі Ubuntu (він насправді називається Песулус , не знаю, чому Ubuntu називає це "Блокування редактора".)

Інша - Ubuntu Tweak , знайдена на веб-сайті http://ubuntu-tweak.com/

Я думаю, що Sabayon (редактор профілю користувача в Ubuntu) стане вашою найкращою ставкою.

PS Ось ще одне обговорення вашого питання .... http://brainstorm.ubuntu.com/item/1626/


3

Для Ubuntu 11.04 та новіших версій просто встановіть ключ gconf як обов'язковий. Ось один із способів .

sudo gconftool-2 --direct --config-source \
xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set \
/desktop/gnome/background/picture_filename \ 
"/usr/share/backgrounds/cosmos/blue-marble-west.jpg"

Для Ubuntu 11.10 та новіших версій (або за допомогою Gnome 3) встановіть ключ dconf як обов'язковий. Дивіться кінець цієї статті .


2

Змінюючи дозволи на

sudo chmod 660 /usr/bin/gnome-appearance-properties #or any other permission

ви можете обмежити доступ до модифікацій властивостей теми або фону. Однак це меню не видалить.


2

Ви випробували Gofris , ця програма дорівнює глибокому морозу на вітрі * ws. ви, мабуть, помітили, що будь-які зміни, які ви вносите в їх систему: створюйте або видаляйте файли, налаштування тощо, все перезавантажується під час перезавантаження комп'ютера.

зробіть наступні дії для встановлення Gofris в ubuntu:

  • sudo add-apt-repository ppa: tldm217 / gofris
  • sudo apt-get update
  • sudo apt-get install gofris-en

введіть gofris-en у терміналі для запуску.

введіть тут опис зображення

перевірте це посилання: http://www.webupd8.org/2010/09/ofris-gets-appindicator-gofris-deep.html


2

Я змушую це працювати з gconftool-2. Просто запустіть:

gconftool-2 --type bool --set /apps/nautilus/lockdown/disable_context_menus 1

Якщо вам це потрібно для всіх користувачів, просто створіть сценарій /etc/profile.d.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.