LINUX.ORG.RU

(gentoo) compiz не собирается, или не работает gtk-window-decorator

 , ,


1

1

1. 0.8.8 собирается (все USE, кроме kde), gtk-window-decorator (выставлен как /usr/bin/gtk-window/decorator --replace в Window Decoration через ccsm) запускается (вручную тоже), однако отображается тема дефолтной (встроенной?) библиотеки compiz.

0.8.8 с USE=kde (и всеми остальные тоже) не собирается: http://pastebin.com/QGszAL7C
2. x11-wm/compiz-0.8.6-r3 (без kde) собирается, но x11-plugins/compiz-plugins-main версии r1. Не знаю, насколько это влияет, но декоратор работает (не работает) абсолютно так же.
3. 0.9.2 для desktop-effects компилится с ошибкой, так ещё говорит, что gnome-window-settings нет, от чего (как я понял) не будет ставить свои куски для гнома http://pastebin.com/bh7tUveb
4. 9999 даже не закачивается - git недоспутен.

Используется gtk3 и metacity-2.34.8 . У меня есть подозрения, что новые темы метасити (или вообще какие-то куски metacity) не совместимы с gtk-window-decorator . В какую папку можно кинуть старые темы, чтобы проверить?

У кого работает compiz, опишите, пожалуйста, свою систему. Может быть у меня слишком новое ПО.

P.S. Очень хотелось бы megabaks в тред, но есть подозрения, что он меня забанил.

Ответ на: комментарий от megabaks

# emerge --info
FEATURES variable contains unknown value(s): preserved-rebuild
Portage 2.2.0_alpha124 (hardened/linux/amd64, gcc-4.5.4, glibc-2.15-r2, 3.5.3-hardened-r1 x86_64)
=================================================================
System uname: Linux-3.5.3-hardened-r1-x86_64-Intel-R-_Core-TM-2_CPU_6300_@_1.86GHz-with-gentoo-2.2
Timestamp of tree: Tue, 11 Sep 2012 03:15:01 +0000
app-shells/bash: 4.2_p37
dev-lang/python: 2.7.3-r2, 3.2.3-r1
dev-util/cmake: 2.8.9
dev-util/pkgconfig: 0.27.1
sys-apps/baselayout: 2.2
sys-apps/openrc: 0.10.5
sys-apps/sandbox: 2.6
sys-devel/autoconf: 2.13, 2.69
sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.6, 1.12.3
sys-devel/binutils: 2.22.90
sys-devel/gcc: 4.5.4, 4.6.3
sys-devel/gcc-config: 1.7.3
sys-devel/libtool: 2.4.2
sys-devel/make: 3.82-r3
sys-kernel/linux-headers: 3.5 (virtual/os-headers)
sys-libs/glibc: 2.15-r2
Repositories: mate-overlay stuff gentoo
ACCEPT_KEYWORDS=«amd64 ~amd64»
ACCEPT_LICENSE=«* -@EULA»
CBUILD=«x86_64-pc-linux-gnu»
CFLAGS="-march=x86-64 -O2 -pipe"
CHOST=«x86_64-pc-linux-gnu»
CONFIG_PROTECT=«/etc /usr/share/config /usr/share/gnupg/qualified.txt»
CONFIG_PROTECT_MASK=«${EPREFIX}/etc/gconf /etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/mateconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c»
CXXFLAGS="-march=x86-64 -O2 -pipe"
DISTDIR=«/usr/portage/distfiles»
FCFLAGS="-O2 -pipe"
FEATURES=«assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles metadata-transfer news parallel-fetch preserve-libs preserved-rebuild sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch webrsync-gpg xattr»
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG=«ru_RU.UTF-8»
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS=«ru en»
MAKEOPTS="-j5"
PKGDIR=«/usr/portage/packages»
PORTAGE_CONFIGROOT=«/»
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --timeout=30"
PORTAGE_TMPDIR=«/var/tmp»
PORTDIR=«/usr/portage»
PORTDIR_OVERLAY=«/var/lib/layman/mate /var/lib/layman/stuff /usr/portage»
SYNC=«rsync://rsync.us.gentoo.org/gentoo-portage»
USE=«# X a52 aac aalib acl acpi adplug alsa amd64 amr bash-completion berkdb bl bluetooth bluray bs2b btrfs bzip2 cairo caps cd cdb cdda cddb cdparanoia cdr cli cpudetection cracklib crypt css cue cups curl custom-optimization cxx dc1394 dga dhcp dia dirac djvu dmraid drawing dri dts dv dvb dvd dvdr en encode equalizer examples faac faad fam fat fbcon ffmpeg flac fluidsynth fontconfig foomaticdb ftp fuse gallium gconf gd gdbm ggi gif gimp glib glut gme gmp gnome gnutls gphoto2 gpm gsm gstreamer gtk gtkstyle gzip hardened hfs iconv id3tag ieee1394 imagemagick imlib irda jfs jit joystick jpeg jpeg2k justify kate kde ladspa lame latex libass libcaca libmpeg2 libproxy libsamplerate libv4l libv4l2 lm_sensors lzma lzo mad maildir mailwrapper mate matroska mbox md5sum mdadm midi mjpeg mms mmx mmxext mng modplug modules mp3 mpeg mpg123 mplayer mtp mudflap multilib musepack musicbrainz nautilus ncurses nls nptl nsplugin ntfs nut offensive ogg openal opengl openmp optimisememory optimization oss pam pax_kernel pcmcia pcre pdf pic plasma plotutils png pnm policykit postproc pppd pulseaudio pvr qt qt3 qt3support qt4 quicktime radio rar raw rdesktop readline realtime reiser4 reiserfs remoteosd rss rtmp rtsp ru sasl scanner schroedinger scrobbler sdl sdl-image semantic-desktop session shine shout sid skins slp smp sndfile sound source sox speex sqlite sse sse2 sse3 ssl ssse3 stest stream svg symlink szip taglib tcpd telext test-programs tga threads tiff tk tools tray truetype twolame udev unicode unrar urandom usb utf8 v4l v4l2 vaapi vcd vcdx videos vlm vnc vorbis vpx w32codecs wavpack wifi wma wma-fixed x264 xanim xattr xcb xcomposite xfs xml xosd xpm xscreensaver xv xvid zlib zoran zsh-completion zvbi» ALSA_CARDS=«hda-intel usb-audio» ALSA_PCM_PLUGINS=«adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol» APACHE2_MODULES=«actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation proxy rewrite setenvif speling status unique_id userdir usertrack vhost_alias auth_digest proxy_connect proxy_ftp proxy_http» CALLIGRA_FEATURES=«kexi words flow plan sheets stage tables krita karbon braindump» CAMERAS=«*» COLLECTD_PLUGINS=«df interface irq load memory rrdtool swap syslog» CURL_SSL=«openssl» DRACUT_MODULES=«bootchart crypt crypt-gpg crypt-loop lvm ssh-client syslog» ELIBC=«glibc» GPSD_PROTOCOLS=«ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx» INPUT_DEVICES=«keyboard mouse evdev» KERNEL=«linux» LCD_DEVICES=«bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text» LIBREOFFICE_EXTENSIONS=«presenter-console presenter-minimizer» LINGUAS=«ru en» PHP_TARGETS=«php5-3» PYTHON_TARGETS=«python3_2 python2_7» RUBY_TARGETS=«ruby18 ruby19» USERLAND=«GNU» VIDEO_CARDS=«vesa fbdev sisusb dummy radeon nouveau i915 i965 intel r100 r200 r300 r600 radeonsi vmware» XTABLES_ADDONS=«quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account»
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от lyrix87

У меня что компиз что квин разницы в производительности вообще никакой. Так что с таким же успехом можно сказать, что компиз говна кусок, от которого отказались почти все дистры кроме бубанты. А бубанта сами знаете, не нужна.

lyrix87
()
Ответ на: комментарий от megabaks

уже доказано обратное

Кем? Владельцами интело-атомов или фанбоями ати? Пруфы в студию.

Если бы квин у меня тормозил, я бы юзал компиз. А раз уж тормозов не ощущаю (возможно они-таки вылезут на интело-радеонах) то и компиз ставить смысла нет.

lyrix87
()
Ответ на: комментарий от lyrix87

Ну хорошо, допустим квин в 4.5-4.7 действительно тормозил. Однако уже давно вышел релиз 4.9.1, в котором действительно наоптимизировали всё что могли. Может выйдешь из криокамеры?

lyrix87
()
Ответ на: комментарий от megabaks

мне плевать -я нашёл годный вм, который просто не собирается

fixed.

lyrix87
()

Используется gtk3

ЕМНИП gtk-window-decorator компиза 0.8 совместим только с gtk2. Хотя не уверен - сам собирать его с gtk3 не пробовал

Pinkbyte ★★★★★
()
Ответ на: комментарий от ktulhu666

desktop-effects это не только оверлей, компиз в главном дереве - тоже наша работа ;-)

Pinkbyte ★★★★★
()
Ответ на: комментарий от lyrix87

Кем?

kwin(в 4.9 его еще не щупал) на одних и тех же наборах эффектов сливает компизу(0.8, 0.9 опять же толком пощупать не удалось ибо глючное гогно) на nvidia-блобе в производительности иногда до 2 раз.

Pinkbyte ★★★★★
()
Ответ на: комментарий от ktulhu666

да я понимаю, но учитывая другие пакеты мне физически не хватает времени всем заниматься. Вот сейчас выкроил время - кручу чрут с KDE 4.9 и компизом. Если всё срастется - фиксы попадут в главное дерево уже сегодня...

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

На данный момент нужно проправить недоступный git у compiz-9999, и, хотя бы, скопировать 0.8.8 из stuff, замаскировав ** (как 9999) 0.9.2, который, фактически, нельзя использовать.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от Pinkbyte

Просто какой смысл в оверлее (причём оффициальном, как я понимаю), когда там вообще ничего нормально не работает.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от Pinkbyte

Пинка дай, пожалуйста. А то они лежат и никто не трогает. Там в каждом нужно по строчке в ебилде исправить.

https://bugs.gentoo.org/show_bug.cgi?id=434670
https://bugs.gentoo.org/show_bug.cgi?id=434674
https://bugs.gentoo.org/show_bug.cgi?id=434668

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от ktulhu666

Увы, не имею отношения к этим пакетам. Не использую их, а трогать пакеты без разрешения мэйнтэйнеров - плохая идея. Попробуй поймать мэйнтэйнеров на #gentoo-dev-help или на тематических каналах в IRC.

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Ты не понял, что я хотел сказать: ты говорил, что ты можешь напрямую распределять пакеты нужным мейнтейнерам. Видимо, в данном случае не можешь. :(

А как узнать, кто должен с этим пакетом разбираться?

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от megabaks

Знаю, ты пишешь всякие костыли к portage. Нет ли у тебя чего-нибудь для исполнения команд до и после установки определенного ебилда?

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от megabaks

bin1 ; emerge x11-foo/bar ; bin2

Примерно так. Но подразумевается именно пакет, а не вся команда, а не группа команд.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от megabaks

/usr/local/sbin/bin1 до установки x11-dev/ebuild1, /usr/local/sbin/bin1 после установки.

При этом нельзя менять ebuild, т.к. подразумевается, что мы будет использовать ебилды из portage, а там они будут периодически обновляться.

emerge x11-dev/ebuild1
Будут установлены:
x11-lib/lib1
x11-lib/lib2
x11-lib/lib3
x11-lib/lib4
x11-dev/ebuild1

Собирается x11-lib/lib1
Устанавливается x11-lib/lib1
Собирается x11-lib/lib2
Устанавливается x11-lib/lib2
Собирается x11-lib/lib3
Устанавливается x11-lib/lib3
Собирается x11-lib/lib4
Устанавливается x11-lib/lib4
[тут нужно исполнить /usr/local/sbin/bin1]
Собирается x11-dev/ebuild1
Устанавливается x11-dev/ebuild1
[тут нужно исполнить /usr/local/sbin/bin2]

Так понятнее?

И да - можно ли выполнить /usr/local/sbin/bin1.5 после распаковки или это не реал?

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от qnikst

а это уже к питонщикам
я не из их числа
прозреваю патчи

megabaks ★★★★
()
Последнее исправление: megabaks (всего исправлений: 1)
Ответ на: комментарий от ktulhu666

подозреваю желание сделать костыль, может расскажешь, зачем исполнять бинарники, так и решение адекватное появится?

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

Да пожалуйста :) :
paxctl -zm /usr/bin/compiz после установки x11-wm/compiz
paxctl -zm /usr/bin/emerald после установки (догадайся :) ) x11-wm/emerald
paxctl -zm /usr/bin/glxgears после установки x11-apps/mesa-progs
Думаю, ещё будут.

Бывает также необходимость после распаковки неродиво сделанного ебилда, что-нибудь поделать (наложить патч, скопировать куда файл), после чего пустить весь процесс дальше. Обычно, это делается через перенос ебилда в собственный локальный оверлей с назначением ему большего приоритета, но это не очень хорошо, особенно для 9999 и меняющихся.

Далее, как я писал тут пинкбайту (три моих бага в одном сообщений), иногда мейнтейнеры не учитывают все зависимости пакета, в результате нужно сначала ручки установить нужные пакеты (или с нужными флагами собрать), а потом уже ставить нужный пакет. По-хорошему это можно решить через возможность переназначения переменной зависимости через хак. Однако, даже возможность выполнять echo «lib/bar useflag» > /etc/portage/package.use && emerge lib/bar" перед установкой самого приложения (выше было описано про запуск после выполнения установки) - это уже решение проблемы, пусть и костыльное.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от megabaks

Всё нормально работает, только нужны файлы из gtk2 окружения для нормального запуска gtk-декоратора (иначе будут огроменные пробелы между закрыть, свернуть, развернуть):
~/.gconf/apps/metacity
/etc/gconf/schemas/metacity.schemas

Я забрал их с другого компа своего.

Далее - оказывается всё это время использовался gtk-декоратор (а не встроенная хрень, как я думал), но из-за отсутсвия настроек metacity в gconf тема всегда была одна, вне зависимости от настроек темы пользователя и от темы /usr/share/themes/Default. Однако, для явного указания темы можно использовать --metacity-theme .

Не знаю, как 0.9.X (кстати, нет ли оверлеев, в которых он, таки, собирается?), но 0.8.X gtk-window-decorator можно использовать только gconf, с dconf не работает (угадай, что использует новый metacity, если он из gtk3 :) ). Если с первого раза не дошло: gtk-window-decorator использует настройки metacity.


Что делает флаг kde? Он на kde4-window-decorator влияет или слой совместимости с kde? Кроме kde4-window-decorator, gtk-window-decorator и emerald есть ещё как-нибудь декораторы? Просто три декоратора - это недостаточно.


И да - у тебя emerald серьёзно при ресайзе не страдает долгим и странным сжатием/расжатием текста заголовка? Попробуй его дефолтную (которая ещё красная при активном окне) тему. И да - в эмеральде на заголовок можно лепить и свои кнопки, запускающие произвольное ПО, или я что-то не так понял, и там так же - меню, закрыть, свернуть, максимайз?

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от ktulhu666

о_О сколько вопросов...
про гтк2 я тебе давно сказал
про gconf/dconf тоже всё понятно
юз kde - это кедо-декоратор, да - он для использования декора/тем квина
kde-compat доступен без этого юза и кед не просит
из декораторов да, только 3: гтк/кедо/емеральд

megabaks ★★★★
()
Ответ на: комментарий от megabaks

да - он для использования декора/тем квина

http://kolyan.net/uploads/posts/2011-02/1297754773_573935_spasibo-kep.jpg

из декораторов да, только 3: гтк/кедо/емеральд

Фигово. Вот у того же kwin или metacity их... Целых 1 :) . И тот гвоздями прибитый.

И про ресайз с емеральдом ответь, пожалуйста.

ktulhu666 ☆☆☆
() автор топика
Ответ на: комментарий от ktulhu666

Да пожалуйста :) :

paxctl -zm /usr/bin/compiz после установки x11-wm/compiz
paxctl -zm /usr/bin/emerald после установки (догадайся :) ) x11-wm/emerald
paxctl -zm /usr/bin/glxgears после установки x11-apps/mesa-progs
Думаю, ещё будут

а пообщаться с gentoo-hardened совсем не хочется? тем более, что патч (если он действительно нужен) тривиален - добавить inherit pax-utils и в install phase pax-mark -m ${D}/usr/bin/<>

Далее, как я писал тут пинкбайту (три моих бага в одном сообщений), иногда мейнтейнеры не учитывают все зависимости пакета, в результате нужно сначала ручки установить нужные пакеты (или с нужными флагами собрать), а потом уже ставить нужный пакет.

минимум 3-тий не воспроизводится, если хочешь, для ускорения могу проверить ещё 1 и пнуть kde team если всё так. И приложил бы патчи к ебилдам, благо они тривиальны.

По-хорошему это можно решить через возможность переназначения переменной зависимости через хак. Однако, даже возможность выполнять echo «lib/bar useflag» > /etc/portage/package.use && emerge lib/bar" перед установкой самого приложения (выше было описано про запуск после выполнения установки) - это уже решение проблемы, пусть и костыльное.

у этой проблемы только два решения: 1). тестирование и приложение патча к багзилле и ожидание 2). использование локального оверлея. Почему это хорошо, т.к. в любой случайный момент баг могут исправить.

qnikst ★★★★★
()
Ответ на: комментарий от ktulhu666

ты говорил, что ты можешь напрямую распределять пакеты нужным мейнтейнерам

я имел ввиду, что я могу менять поле Assigned в описании бага. При этом на соответствующий email отправляется уведомление, то есть мэйнтэйнеры получают звоночек. Дальше - их забота...

Pinkbyte ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.