Gnome3 отображается неправильно

Я уверен, что этот вопрос задан раньше, но я не могу найти его на этом веб-сайте, поэтому здесь.

Мой gnome3 не похож на него. Когда я впервые установил gnome-shell, он работал, но после перезагрузки интерфейс выглядит как классический интерфейс gnome.

Example screenshot [/g1]

Я ищу для ответа на вопрос, почему такое поведение существует и как его исправить.

Обратите внимание, что раньше у меня была эта проблема, и я смог (случайно) заставить его работать в Ubuntu 11.10, так что это вряд ли быть аппаратной ошибкой.

Я запускаю Ubuntu 12.04 32-бит на HP Pavilion dv6. Мой Настройки> Подробности> Графика читает «driver: unknown, environment: fallback»

Результат gnome-shell --replace Это показывает верхнюю панель gnome3, а также клавишу Super функциональность, но окна все кричащие, и трудно перемещаться между окнами. Это вывод в терминале.

gnome-shell --replace
Agent registration failed: Already Exists
Warning of window manager:Log level 16: Unable to register authentication agent: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: An authentication agent already exists for the given subject
Waarschuwing van vensterbeheer:Log level 16: Error registering polkit authentication agent: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: An authentication agent already exists for the given subject (polkit-error-quark 0)

(gnome-shell:4549): folks-WARNING **: Failed to find primary PersonaStore with type ID 'eds' and ID 'system'.
Individuals will not be linked properly and creating new links between Personas will not work.
The configured primary PersonaStore's backend may not be installed. If you are unsure, check with your distribution.
1
задан 2 May 2012 в 14:14

1 ответ

Получена такая же ошибка после последнего обновления apt-get. Но с gnome-shell -replace это действительно началось, даже если оно подтвердило ошибку.

Если вы используете запрещенный драйвер для вашей карты fglrx. Одним из решений может быть загрузка amd-driver-installer-12-4-x86.x86_64.run из AMD с помощью следующих команд:

wget http://www2.ati.com/drivers/linux/amd-driver-installer-12-4-x86.x86_64.run
sh amd-driver-installer-12-4-x86.x86_64.run --extract
cd fglrx-install.NDh3QS/common/lib/modules/fglrx/build_mod
vim fglrx.patch

и добавить:

fixed fgrlx compilation error on 32-bit x86 arch with kernel 3.3-rc4 due to commit:
https://github.com/torvalds/linux/commit/f94edacf998516ac9d849f7bc6949a703977a7f3
later modified (in 3.3-rc5) by commit:
https://github.com/torvalds/linux/commit/7e16838d94b566a17b65231073d179bc04d590c8#diff-1
and finally backported to kernel 3.2.8.

This new version adds support for the 3.4 kernels, where some ASM header
file was splitted into several smaller files, so we have to explicitally
include the new file <asm/fpu-internal.h>.

Since 3.4-rc2, cpu_possible_map has been definitely removed. Let's use
cpu_possible_mask instead. This is probably required also for 64 bit kernels.

Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
---
 firegl_public.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/firegl_public.c b/firegl_public.c
index a56fff1..b4bdfb7 100644
--- a/firegl_public.c
+++ b/firegl_public.c
@@ -187,6 +187,9 @@
 #include <linux/gfp.h>
 #include <linux/swap.h>
 #include "asm/i387.h"
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)
+#include <asm/fpu-internal.h>
+#endif

 #include "firegl_public.h"
 #include "kcl_osconfig.h"
@@ -4181,7 +4184,11 @@ static int kasInitExecutionLevels(unsigned long level_init)
 {
     unsigned int p;
     KCL_DEBUG5(FN_FIREGL_KAS, "%d\n", level_init);
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)
+    for_each_cpu_mask(p, cpu_possible_mask)
+#else
     for_each_cpu_mask(p, cpu_possible_map)
+#endif
     {
         KCL_DEBUG1(FN_FIREGL_KAS,"Setting initial execution level for CPU # %d\n", p);
         preempt_disable();
@@ -5799,10 +5806,16 @@ void ATI_API_CALL KCL_fpu_begin(void)
 #ifdef CONFIG_X86_64
     kernel_fpu_begin();
 #else
+#ifndef TS_USEDFPU
+    preempt_disable();
+    if (__thread_has_fpu(current))
+        __save_init_fpu(current);
+#else
     struct thread_info *cur_task = current_thread_info();
     preempt_disable();
     if (cur_task->status & TS_USEDFPU)
         __save_init_fpu(cur_task->task);
+#endif
     else
         clts();
 #endif
-- 
1.7.5.4

Затем выполните

patch -p1 < fglrx.patch
cd ../../../../
./ati-installer.sh 8.961 --buildpkg Ubuntu/precise
cd.. 
sudo dpkg -i *.deb
aticonfig --initial

Теперь модуль ядра находится в /usr/src/fglrx-8.961, и теперь проще просто переустановить (добавить будущие патчи) с помощью sudo dkms "remove/build/install" fglrx/8.961, прочитать man-страницы для dkms, если вы нужна дополнительная информация.

1
ответ дан 10 August 2018 в 07:30

Другие вопросы по тегам:

Похожие вопросы: