Compiz (日本語) - ArchWiki

# Compiz (日本語)

関連記事

- Compiz 設定
- ウィンドウマネージャ
- デスクトップ環境
- Xfce
- MATE
- Unity

Wikipedia より:

  Compiz は X Window System 上で動作するコンポジット型ウィンドウマネージャである。OpenGL を利用した 3D 技術により様々な画面効果を可能にしている。最小化アニメーションやキューブ型のワークスペースなどの効果は、ローダブルプラグインとして実装されている。

## インストール

2013年5月から、Compiz は公式リポジトリからは利用できなくなっています。0.9 と 0.8 シリーズをインストールするためのパッケージは AUR から入手できます。この2つのシリーズは並行してインストールすることができません - シリーズ両方のパッケージをインストールしようとすると衝突が発生します。

### 0.9 シリーズのインストール

Tip: Compiz 0.9.8 以後、全ての Compiz コンポーネント (例: CCSM, プラグイン) は一つのプロジェクトとして開発・配布されています。つまり一つのパッケージで Compiz のコンポーネントを全て補うことができます。

以下の3つのパッケージのどれか1つをインストールしてください:

- compiz-core-devel[broken link: package not found] - このパッケージには 0.9 シリーズの最新マイルストーンリリースが入っています (ウィンドウマネージャ, CCSM, プラグイン, gtk-window-decorator)。
- compiz-core-bzr[broken link: package not found] - このパッケージには 0.9 シリーズの最新開発版が入っています (ウィンドウマネージャ, CCSM, プラグイン, gtk-window-decorator)。
- compiz-ubuntu - このパッケージには Unity デスクトップに最適化するためのパッチが含まれた最新開発版のスナップショットが入っています (ウィンドウマネージャ, CCSM, プラグイン, gtk-window-decorator)。

以下のパッケージのインストールは任意です:

- emerald0.9 - Compiz のスタンドアロンのウィンドウデコレータ。
- emerald-git[broken link: package not found] - Compiz のスタンドアロンのウィンドウデコレータ (git バージョン)。
- emerald-themes - Emerald デコレータ用の追加テーマ。

### 0.8 シリーズのインストール

以下の4つのパッケージ・パッケージグループのどれか1つをインストールしてください::

- compiz-core - このパッケージにはウィンドウマネージャが入っています。
- compiz-gtk-standalone - このパッケージにはウィンドウマネージャと gtk-window-decorator が入っています。
- compiz-xfce - このパッケージは Xfce デスクトップに最適化された設定の Compiz が入ったメタパッケージです。compiz-gtk-standalone に依存しています。
- compiz-core-mate と compiz-decorator-gtk - この2つのパッケージは compiz-mate ベースパッケージに含まれています - MATE デスクトップに最適化された設定の Compiz が入ったパッケージです。前者のパッケージはウィンドウマネージャを、後者のパッケージには gtk-window-decorator を提供します。

以下のパッケージには CCSM と Compiz プラグインが入っています。以下のパッケージをインストールすることが強く推奨されます:

- ccsm - CompizConfig Settings Manager, Compiz の設定パネル。
- compizconfig-python - Compizconfig の python バインディング (CCSM が必要とします)。
- libcompizconfig - Compiz 設定システムライブラリ (compizconfig-python が必要とします)。
- compiz-fusion-plugins-main - Compiz の Core プラグイン。
- compiz-fusion-plugins-extra - Compiz の Extra プラグイン。
- compiz-bcop - Compiz オプションコードジェネレータ (全ての compiz-fusion-plugins が必要とします)。

以下のパッケージのインストールは任意です:

- compiz-fusion-plugins-unsupported - Compiz の Unsupported プラグイン。
- fusion-icon - Compiz を起動してセッション中に異なるウィンドウマネージャやデコレータをロードできるトレイアプレット。
- simple-ccsm - CCSM の設定にシンプルなモードを提供します。
- emerald - Compiz のスタンドアロンのウィンドウデコレータ。
- emerald-themes - Emerald デコレータ用の追加テーマ。

### デフォルトのウィンドウデコレータの設定

Tip: テーマを選択・管理する方法については、次のページを見て下さい: Compiz Configuration#Window decoration themes。
Note: 現在、kde-window-decorator をデフォルトで提供するパッケージはありません。インストールするには、Compiz のインストールに使用したパッケージの PKGBUILD を編集して適切なオプションを有効にする必要があります。編集したら、リビルドを行なって Compiz パッケージを再インストールしてください。

ウィンドウデコレータは縁のあるウィンドウを提供するプログラムです。mutter, Kwin, Xfwm などのウィンドウマネージャがデコレータを一つしか用意してないのに対して、Compiz のユーザーは3つのデコレータから選択することができます: Emerald, gtk-window-decorator, kde-window-decorator。

まずは、Compiz で使いたいデコレータをインストールしてください - 上のインストールセクションを見て下さい。そして CCSM を起動します - ターミナルで `ccsm` コマンドを実行することで起動できます。設定パネルの、'Effects' セクションにある 'Window Decoration' プラグインのチェックが入っていることを確認してください。確認できたら 'Window Decoration' ボタンをクリックして 'Command' フィールドにあなたの選んだデコレータのコマンドを入力してください:

- `emerald`

- `gtk-window-decorator`

- `kde4-window-decorator`

変更をすぐ適用させるために、コマンドの最後に `--replace` スイッチを追加することができます。そうしない場合は、一度ログアウトしてからログインしなおせば選択したデコレータが設定されます。CCSM のデコレータコマンドの後ろに `--replace` を使うとログイン時に画面のちらつきが起こることがあるので注意してください。

## Compiz を起動する

### 主要なプラグインを有効にする

Compiz を起動する前に、ウィンドウマネージャとして基本的な挙動を提供するプラグインを有効にしてください。そうしないとウィンドウをドラッグしたり拡大・縮小したり、閉じることができなくなります。重要なプラグインは以下の通りです:

- Window Decoration - ウィンドウの縁を提供します (上のセクションを参照)
- Move Window
- Resize Window
- Place Windows - ウィンドウの配置オプションを設定
- Application Switcher - Alt+Tab スイッチャを提供します (他にも多数のアプリケーションスイッチャプラグインが存在します、例: 'Shift Switcher,' 'Static Application Switcher' など。それら全てが Alt+Tab キーバインドを使うわけではありません)。
- OpenGL - (CCSM 0.9 のみで表示)。
- Composite - (CCSM 0.9 のみで表示)。

異なるビューポートに切り替えられるようにするには、以下のうち一つを有効にしてください:

- Desktop Cube & Rotate Cube - 各面がビューポートになっている回転キューブを提供します
- Desktop Wall - ビューポートが互い隣に整列されます (動きは Cinnamon や GNOME Shell でのワークスペース切り替えのアニメーションと似ています)
- Expo - マウスを左上の隅に移動した時に全てのビューポートとウィンドウのビューを作成します (このプラグインは単独で使うことも上2つのプラグインのどちらかと一緒に使うことも可能です)

### Compiz の起動コマンド

次のコマンドで Compiz を起動できます:

    $ compiz --replace ccp &

Tip: 実行ダイアログに入力した時に `compiz --replace ccp &` コマンドが動作しない場合、アンパサンドなしでコマンドを実行してみてください: `compiz --replace ccp`。

よく使われる Compiz コマンドラインオプションの抄録:

- `--indirect-rendering`: indirect-rendering を使用 (AIGLX)
- `--loose-binding`: パフォーマンスの問題が解決するかもしれません (NVIDIA?)
- `--replace`: 現在のウィンドウマネージャを置き換えます
- `--keep-window-hints`: ウィンドウマネージャ gconf-settings をビューポートのために維持する
- `--sm-disable`: session-management を無効にする
- `ccp`: 'ccp' コマンドは CCSM から最後の設定をロードします、そうしないと Compiz は何も設定をロードしないためウィンドウのドラッグや最大化・最小化、移動などが何もできなくなります。

#### fusion-icon を使う

次のコマンドで fusion-icon を起動することができます:

    $ fusion-icon

fusion-icon が Compiz を起動することを確認するには、パネルのアイコンを右クリックして 'select window manager' を見て下さい。'Compiz' が選択されていない場合は選択してください。

下のデスクチェア環境で Compiz を自動起動する方法のほとんどは fusion-icon を自動起動して、それから Compiz を起動するのにも使えます。使用している方法にあわせて、Compiz を起動するコマンドを置き換えて下さい (普通は `compiz --replace ccp &`) を `fusion-icon` に置き換える).

### デスクトップ環境で Compiz を自動起動する

#### KDE4

##### システム設定を使う

System Settings > Default Applications > Window Manager > Use a different window manager を開いて Compiz を選択してください。

カスタムオプションやスイッチを使って Compiz を起動する必要がある場合は "Compiz custom" を選択して、`compiz-kde-launcher` とうい名前のスクリプトを作成し Compiz を起動するのに使いたいコマンドをそこに追加してください。例:

    /usr/local/bin/compiz-kde-launcher

    #!/bin/bash
    LIBGL_ALWAYS_INDIRECT=1
    compiz --replace ccp &
    wait

スクリプトは実行可能にしてください:

    $ chmod +x /usr/local/bin/compiz-kde-launcher

##### Autostart リンク

Note:

- gtk-window-decorator をインストールするときはファイル衝突がおこるので `compiz.desktop` ファイルは作成しないでください。
- `compiz.desktop` が既に存在する場合、`Exec` 変数に `--replace` や `ccp` を追加する必要があるかもしれません。

KDE の Autostart ディレクトリにデスクトップエントリを追加してください。ディレクトリがない場合、作成してください:

    ~/.kde4/Autostart/compiz.desktop

    [Desktop Entry]
    Type=Application
    Encoding=UTF-8
    Name=Compiz
    Exec=/usr/bin/compiz ccp --replace
    NoDisplay=true
    # name of loadable control center module
    X-GNOME-WMSettingsModule=compiz
    # autostart phase
    X-GNOME-Autostart-Phase=WindowManager
    X-GNOME-Provides=windowmanager
    # name we put on the WM spec check window
    X-GNOME-WMName=Compiz
    # back compat only
    X-GnomeWMSettingsLibrary=compiz

##### KDEWM をエクスポート

root で短いスクリプトを作成します。このスクリプトを使って Compiz にスイッチを追加してロードできます。

Compiz を起動するコマンドと使用したいスイッチを記入したファイルを作成してください。例:

    /usr/bin/startcompiz

    compiz --replace ccp &

Note: You do not have to call the script startcompiz. Just ensure that the name of your script does not conflict with any executable files already in the `/usr/bin` directory.

スクリプトは実行可能にしてください:

    # chmod +x /usr/bin/startcompiz

そして `/usr/bin` に作成したスクリプトをロードするファイルを作らなくてはなりません。

1) ユーザー個別:

    ~/.kde4/env/startcompiz.sh

    KDEWM="compiz"

2) システム全体:

    /etc/kde/env/startcompiz.sh

    KDEWM="compiz"

Note:

- If the above method does not work, an alternate approach is to include the line:

    $ export KDEWM="startcompiz"

  in your user's `~/.bashrc` file.

- If you optionally use the `/usr/local/bin` directory it may not work. In that case you should export the script including the whole path:

    $ export KDEWM="/usr/local/bin/startcompiz"

#### GNOME

##### GNOME Shell & Cinnamon

GNOME Shell は mutter ウィンドウマネージャのプラグインとして実装されています。同じく、Cinnamon シェルは muffin ウィンドウマネージャのプラグインとして実装されています。つまり、GNOME Shell または Cinnamon のどちらかで Compiz やその他のウィンドウマネージャを使うことは不可能です。

##### Unity

Unity が正しく起動するように CCSM で 'Ubuntu Unity Plugin' が有効になっているか確認してください。このプラグインは Unity が正しくインストールされた時だけ CCSM に表示されます。

##### GNOME の Alternate Session (Cairo ドックと Compiz)

gnome-session-compiz パッケージを使うことでディスプレイマネージャにセッションを追加することができます。ディスプレイマネージャで 'gnome-session-compiz' オプションを選択してください。

Compiz と Cairo ドック (タスクバー/パネル) が正しく設定されていることを確認しましょう。

CCSM で、ウィンドウデコレータが選択されているのとウィンドウ管理に必要なプラグインが有効になっていることも確認してください。#主要なプラグインを有効にする を参照。

Cairo ドックの推奨設定は以下の通りです:

- Add Application Menu icon to Cairo Dock and remember its key-bindings.
- Remap Application Menu key-bindings to `Alt+F1` and `Alt+F2`, for convenience.
- Add Clock, WiFi, NetSpeed icons to the dock as applicable.
- Add Log-out icon:
  - Set the command for logout to `gnome-session-quit --logout`
  - Set the command for shutdown to `gnome-session-quit --power-off`
- Add the Notification Area Old (systray) icon to Cairo Dock.

##### GNOME Flashback

GNOME Flashback (日本語)#他のウィンドウマネージャ を見て下さい。

#### MATE

##### GSettings を使う

以下の GSettings コマンドを使ってデフォルトのウィンドウマネージャを marco から Compiz に変更します:

    $ gsettings set org.mate.session.required-components windowmanager compiz

##### mate-session-properties を使う

Note: この方法を使う場合、まず Marco が起動し、それから Compiz によって置き換えられます。

mate-session-properties を使って Compiz を起動する方法もあります。次のコマンドをターミナルで入力してください:

    $ mate-session-properties

add ボタンをクリックして command セクションには `compiz --replace ccp &` コマンドを入力します。name と comment セクションはただエントリが何をするのか示すためのだけのものなので重要ではありません。ログアウトしてからログインしなおせば Compiz が起動するはずです。

#### Xfce

##### デフォルトの (Failsafe) セッションを変更する

Xfce のデフォルトセッション (Failsafe セッションと呼ばれます) を設定するには、`xfconf-query` を使って下さい:

     xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -t string -s compiz -s ccp

または以下のファイルのどちらかを編集してください:

- ユーザー: `~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml`
- システム共通: `/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml`:

Note: xfce4-session.xml ファイルが `~/.config/xfce4/xfconf/xfce-perchannel-xml` に存在しないときは `/etc/xdg/xfce4/xfconf/xfce-perchannel-xml` の中のファイルを編集してください。

Xfwm スタートアップコマンドを置き換えて:

     <property name="Client0_Command" type="array">
       <value type="string" value="xfwm4"/>
     </property>

以下のようにします:

     <property name="Client0_Command" type="array">
       <value type="string" value="compiz"/>
       <value type="string" value="ccp"/>
     </property>

デフォルトセッションが上書きされないように以下を追加すると良いでしょう:

     <property name="general" type="empty">
       ...
       ...
       <property name="SaveOnExit" type="bool" value="false"/>
     </property>

そして既存のセッションを削除してください:

    $ rm -r ~/.cache/sessions

後はログアウトしてください。ログアウトダイアログの 'Save session for future logins' オプションのチェックは外して下さい。そうしないと変更が適用されません。もう一度ログインすれば Compiz が起動するはずです。Compiz が起動することが確認できたら、'Save session for future logins' オプションのチェックは元に戻すことができます。

##### 復活した Xfce セッションから Compiz を起動する

Note: 保存されたセッションを削除したときはこの手順をもう一度繰り返す必要があります。

デフォルトで、Xfce はセッションをログアウト時に保存して、ログイン時に実行していたアプリケーションを復帰させます。そのため、セッションごとに Compiz が自動起動するために必要なのは、ログアウト時に Compiz を実行しておくことだけです。実行するには、`Alt+F2` を押して Xfce 実行ダイアログを起動してください。そして Compiz を起動するコマンドを実行します: `compiz --replace ccp &`。後はログアウトするだけです。ログアウト時に、Xfce ログアウトダイアログの "Save session for future logins" オプションのチェックが入っていることを確認してください。これで将来のセッションではいつも Compiz が自動起動します。

##### Xfce のアプリケーションの自動起動を使う

Note: この方法を使う場合、まず Xfwm が起動してそれから Compiz によって置き換えられます。

Xfce メインメニューから 'Settings' を選び 'Session and Startup' をクリックしてください。'Application Autostart' タブをクリックします。add ボタンをクリックして command セクションには `compiz --replace ccp &` コマンドを入力します。name と comment セクションはただエントリが何をするのか示すためのだけのものなので重要ではありません。ログアウトしてからログインしなおせば Compiz が起動するはずです。

Tip: この方法を使う場合、セッションの保存を無効化することを推奨します。無効化しないと Compiz がログイン時に二回起動することになり `Alt+F4` キーバインドが使えなくなるなどの問題が起こる可能性があるからです。セッションの保存を無効化するには、'Session and Startup' メニューエントリを開いて、'Session' タブをクリックし 'Clear saved sessions' ボタンをクリックしてください。そして、Xfce ログアウトダイアログで 'Save session for future logins' オプションのチェックを外して下さい。

#### LXDE & LXQt

LXDE や LXQt のセッションファイルを編集することでセッションで他のウィンドウマネージャ (Compiz など) を起動させることができます。

- LXDE については、次のセクションを見て下さい: LXDE (日本語)#ウィンドウマネージャの変更。
- LXQt については、次のセクションを見て下さい: LXQt (日本語)#デフォルトのウィンドウマネージャを変更する。

## Compiz をスタンドアロンのウィンドウマネージャとして使う

### ディスプレイマネージャでセッションを起動する

スタンドアロンの Compiz セッションはディスプレイマネージャから起動できます。ほとんどのディスプレイマネージャ (LightDM, LXDM, GDM など) では必要なことは Compiz セッションを定義する .desktop ファイルを `/usr/share/xsessions` に作成するだけです。この方法で良いのかどうかはあなたの使っているディスプレイマネージャの記事を見て下さい。

まず、ディレクトリが存在しない場合は `/usr/share/xsessions` を作成してください。それから .desktop ファイルを作成してください。基本的なサンプルは以下のようになります:

    /usr/share/xsessions/compiz.desktop

    [Desktop Entry]
    Version=1.0
    Name=Compiz
    Comment=Start a standalone Compiz session
    Exec=compiz ccp
    Type=Application

作成したらセッションリストから 'Compiz' を選んでログインしてください。

Note: Some display managers are stricter than others regarding the syntax of .desktop files. If a Compiz option does not appear in your display manager's session menu you will need to edit your .desktop file to make it compatible. The example above should work in most cases.

#### ディスプレイマネージャの使用時にプログラムを自動起動する

ディスプレイマネージャから Compiz が起動した時に、Compiz セッションで使うプログラムを起動する方法の一つとして、xprofile の使用があります。xprofile ファイルは xinitrc と構文が似ています - セッションと一緒に起動したいプログラムのコマンドを含めることが可能です。ほとんどのディスプレイマネージャはデフォルトで xprofile ファイルからコマンドをパースします。

または、Compiz の 'Session Management' プラグインを使うこともできます。このプラグインは終了時に実行しているプログラムを保存して次にセッションが起動した時にそれらを復活させます。CCSM で 'Session Management' プラグインを有効にするだけです。

### startx でセッションを起動する

`startx` コマンドで Compiz を起動するには、次の行を `~/.xinitrc` ファイルに追加してください:

    ~/.xinitrc

    exec compiz ccp

以下のように fusion icon を使うこともできます:

    ~/.xinitrc

    exec fusion-icon

コマンドを `~/.xinitrc` ファイルに追加することで他のプログラム（パネルなど）も自動起動することができます。以下は Compiz, tint2 パネル, Cairo ドックを起動する `~/.xinitrc` ファイルの例です。

    ~/.xinitrc

    tint2 &
    cairo-dock &
    exec compiz ccp

詳しくは xinitrc の記事を見て下さい。

### ルートメニューを追加

Openbox など他のスタンドアロンウィンドウマネージャにあるようなルートメニューを追加するために compiz-boxmenu パッケージをインストールすることができます。このプログラムは compiz-deskmenu のフォークです。変更点として、このフォークにはウィンドウ一覧や最近のドキュメント一覧などの機能が追加されています。

compiz-boxmenu パッケージのインストール後、以下のようにホームディレクトリに設定ファイルをコピーして下さい:

    # cp -R /etc/xdg/compiz /home/username/.config
    # chown -R username:group /home/username/.config/compiz

`username` はあなたのユーザー名に `group` はユーザーのプライマリーグループに置き換えて下さい。

次に、CCSM を開いて、'Commands' プラグインまで移動し 'Command line 0' に `compiz-boxmenu` コマンドを入力してください。'Key Bindings' タブでは、'Run command 0' を `Control+Space` に設定してください ('Grab key combination' オプションを使うことでこの手順を簡略化することが可能です)。

そして 'Viewport Switcher' プラグインのところまで行き 'Desktop-based Viewport Switching' タブをクリックして下さい。'Plugin for initiate action' を `core` に、'Action name for initiate' を `run_command0_key` に変更します。

これで `Control+Space` を押せばメニューが表示されるはずです。グラフィカルなメニューエディタを起動するには、'Edit' オプションをクリックするかターミナルで `compiz-boxmenu-editor` を実行してください。手動でメニューを編集したい場合は、お好きなエディタで次のファイルを開いて下さい: `~/.config/compiz/boxmenu/menu.xml`。変更を適用するには、メニューの 'Reload' オプションをクリックする必要があります。

Warning: Whilst `Control+Space` is the default keybinding for `compiz-boxmenu` you can assign the menu to other keybindings or mousebindings as well. Take extreme care if doing so as Compiz bindings will take precedence over keybindings of all other programs. For instance, if you assign `compiz-boxmenu` to `Button3` then you may lose right click functionality in all programs. If the keybinding/mousebinding you are attempting to create has any conflicts, `cssm` will notify you.

### ユーザーにシャットダウン・再起動を許可

特権がないユーザーも `systemctl poweroff` や `systemctl reboot` などのコマンドは実行できるようにするべきです。CCSM の　'Commands' プラグインを使ってこれらのコマンドのキーボードショートカットを割り当てることができます。また、compiz-boxmenu でコマンドのランチャーを作成することも可能です - 上記参照。シャットダウンに関する詳細は次の記事を見て下さい: Allow users to shutdown (日本語)。

### ユーティリティ

#### パネル & ドック

Arch では多数のパネルとドックが使えますが、Compiz のビューポートと互換性があるのは少数です。以下がその一覧です:

- xfce4-panel
- mate-panel
- perlpanel
- gnome-panel
- cairo-dock

Note: Compiz で他のパネルやドックを動かすこともできますがそのデスクトップページャには一つの仮想デスクトップしか表示されず、ウィンドウが属しているビューポートに関係なく全てのビューポートで全てのウィンドウボタンが表示されます。

#### 実行ダイアログ

- mate-panel は実行ダイアログを提供します。有効にするには、次のセクションを参照: #MATE Panel。
- gnome-panel は実行ダイアログを提供します。有効にするには、次のセクションを参照: #GNOME Panel。
- lxpanel は実行ダイアログを提供します。有効にするには、次のセクションを参照: #LXDE Panel。

Note: それぞれの実行ダイアログを使うには上記のパネルを動作させる必要があります。

もしくは以下のどれかをインストールすることも可能です:

- xfce4-appfinder - 次のコマンドを使って実行ダイアログを起動します: `xfce4-appfinder --collapsed`
- bbrun - 次のコマンドを使って実行ダイアログを起動します: `bbrun -w`
- gmrun - 次のコマンドを使って実行ダイアログを起動します: `gmrun`
- fbrun - 次のコマンドを使って実行ダイアログを起動します: `fbrun`

どの場合でも、CCSM の 'Commands' プラグインでコマンドを `Alt+F2` (もしくはお好きなキーの組み合わせ) にマップしてください。

## Tips and tricks

### ネイティブのウィンドウマネージャを復活させる

次のコマンドでデスクトップ環境のデフォルトのウィンドウマネージャに戻ることが可能です:

    wm_name --replace

`wm_name` は `kwin`, `metacity`, `xfwm4` などに置き換えて下さい。

### Alt+F2 実行ダイアログを有効にする

#### GNOME Panel

CCSM で 'Gnome Compatibility' プラグインを有効にしてください。

#### MATE Panel

Compiz で MATE Panel の実行ダイアログを有効にする方法は2つあります。どちらか選べます:

- CCSM で 'Gnome Compatibility' プラグインを有効にする。
- CCSM の 'Commands' プラグインを使って下のコマンドを `Alt+F2` キーコンビネーションにマップする。

    mate-panel --run-dialog

#### LXDE Panel

CCSM の 'Commands' プラグインを使って下のコマンドを `Alt+F2` キーコンビネーションにマップしてください。

    lxpanelctl run

#### Xfce Appfinder

Compiz を Xfce セッションで使う場合、実行ダイアログ (xfce4-appfinder) は何も設定しなくても動作します。スタンドアロンで Xfce Appfinder を使う場合、次のセクションを参照: #実行ダイアログ。

#### 他の実行ダイアログ

次のセクションを参照: #実行ダイアログ。

## トラブルシューティング

### Missing GLX_EXT_texture_from_pixmaps

#### ATI カード (1つ目の解決方法)

ATI カードで Compiz を実行しようとすると以下のエラーが表示されることがあります:

    Missing GLX_EXT_texture_from_pixmap

これは Compiz のバイナリが ATI の OpenGL ライブラリでなくて Mesa の OpenGL ライブラリを使ってコンパイルされているのが原因です。

まず、ATI のドライバーが上書きしないようにライブラリをディレクトリにコピーしてください:

    $ install -Dm644 /usr/lib/libGL.so.1.2 /usr/lib/mesa/libGL.so.1.2

それから fglrx ドライバーを再インストールしてください。そして以下のようにして Compiz を起動してみましょう:

    LD_PRELOAD=/usr/lib/mesa/libGL.so.1.2 compiz --replace ccp &

#### ATI カード (2つ目の解決方法)

ATI カードの 'GLX_EXT_texture_from_pixmap' の問題としてカードが直接レンダリングできないということも考えられます。その場合、以下のように libgl にオプションを指定する必要があります:

    LIBGL_ALWAYS_INDIRECT=1 compiz --replace ccp &

(この解決方法は次のカードでテスト済みです: ATI Technologies Inc Radeon R250 [Mobility FireGL 9000] (rev 02))

#### Intel チップ

まず、i810 ではなく intel ドライバーが使われていることを確認してください。次に、以下のコマンドを実行して Compiz を起動してください (毎回このコマンドを使う必要があります):

    LIBGL_ALWAYS_INDIRECT=true compiz --replace --sm-disable ccp &

### NVIDIA バイナリドライバで Compiz が起動したウィンドウに縁がない

まず、ウィンドウデコレータの設定が正しいことを確認してください - 次を参照: #デフォルトのウィンドウデコレータの設定。それでもウィンドウの縁が表示されない場合は Option "AddARGBGLXVisuals" "True" と Option "DisableGLXRootClipping" "True" を `/etc/X11/xorg.conf.d/20-nvidia.conf` の "Screen" セクションに追加してみてください。このオプションでもウィンドウの縁がロードされない場合、`/etc/X11/xorg.conf.d/` で他の Option を使っているときは、それらをコメントアウトして上記の ARGBGLXVisuals と GLXRootClipping オプションだけを使用するようにしてください。

### NVIDIA バイナリドライバでサスペンドから復帰したときに画面が表示されない

復帰時に黒画面と動くカーソルが現れる場合、垂直同期を無効にしてみてください。無効にするには、CCSM を開いて、'OpenGL' プラグインのところまで行って 'Sync to VBlank' オプションのチェックを外して下さい。

### 高性能なグラフィックカードでパフォーマンスが悪い

NVIDIA と Intel チップ: 設定が全て正しいはずなのにエフェクトでパフォーマンスが出ない場合、CCSM > General Options > Display Settings > Detect Refresh Rate を無効にして手動で値を選択してみてください。

NVIDIA チップのみ: 'Detect Refresh Rate' でリフレッシュレートが不適切になるのはデフォルトで有効にされている 'DynamicTwinView' という名前のオプションがおそらく原因です。正確にはこのオプションはカードやディスプレイがサポートしている最大リフレッシュレートを報告する役割を負っています。`/etc/X11/xorg.conf.d/20-nvidia.conf` の "Device" もしくは "Screen" セクションに次の行を追加して、コンピュータを再起動することで 'DynamicTwinView' を無効にできます:

    Option "DynamicTwinView" "False"

### NVIDIA カードで画面がちらつく

この挙動を修正するには以下のファイルを作成してください:

    /etc/modprobe.d/nvidia.conf

    options nvidia NVreg_RegistryDwords="PerfLevelSrc=0x2222"

### Compiz エフェクトが動作しない (GConf バックエンド)

gtk-window-decorator をインストールしている場合、GConf スキーマが正しくインストールされているか確認してください:

    $ gconftool-2 -R /apps/compiz/plugins | grep plugins

全てのプラグインが表示されているか確認してください。表示されない場合、Compiz スキーマを手動でインストールしてみてください (このコマンドは root で実行しないでください):

    $ gconftool-2 --install-schema-file=/usr/share/gconf/schemas/compiz-decorator-gtk.schemas

### fusion-icon が起動しない

コマンドラインから以下のような出力がされる場合:

    $ fusion-icon

    * Detected Session: gnome
    * Searching for installed applications...
    Traceback (most recent call last):
      File "/usr/bin/fusion-icon", line 57, in <module>
        from FusionIcon.interface import choose_interface
      File "/usr/lib/python2.5/site-packages/FusionIcon/interface.py", line 23, in <module>
        import start
      File "/usr/lib/python2.5/site-packages/FusionIcon/start.py", line 36, in <module>
        config.check()
      File "/usr/lib/python2.5/site-packages/FusionIcon/util.py", line 362, in check
        os.makedirs(self.config_folder)
      File "/usr/lib/python2.5/os.py", line 172, in makedirs
        mkdir(name, mode)
    OSError: [Errno 13] Permission denied: '/home/andy/.config/compiz'

問題は `~/.config/compiz/` のパーミッションです。修正するには、次のコマンドを使って下さい:

    # chown -R username /home/username/.config/compiz/

### Alt+F4 キーバインドが動作しない (Xfce)

次のセクションを参照: #Xfce のアプリケーションの自動起動を使う。

### Emerald が起動しない (セグフォルトでクラッシュする)

Compiz セッションで Emerald が起動せず、ターミナルから起動しようとすると以下の出力を残すことがあります (もしくはそれに類似したもの):

    Segmentation fault (core dumped)

この場合、解決方法は Emerald のテーマ設定をリセットすることです:

    $ rm -rf ~/.emerald/theme

これで Emerald は起動するようになるはずです。

### Compiz の実行時にシステムベルが鳴らない

Compiz が実行していると (GNOME や MATE Terminal において行頭でバックスペースを押した時に再生される滴の音など) システムベルが鳴らないことに気づくかもしれません。次の上流のバグレポートを参照してください。

Pulseaudio を使っている場合、対処できる方法があります:

以下の行を `/etc/pulse/default.pa` ファイルに追加して Pulseaudio を再起動してください。

    load-sample-lazy bell /usr/share/sounds/freedesktop/stereo/bell.oga
    load-module module-x11-bell sample=bell

### Gnome Compatibility プラグインを有効にした時に Compiz がクラッシュする (GSettings バックエンド)

GSettings バックエンドを使っている場合、'Gnome Compatibility' バックエンドを有効にしようとすると Compiz がクラッシュすることがあります。GSettings バックエンドを使用しながらこのプラグインを有効にするには CCSM を開いて 'Preferences' を見る必要があります。'Integration' の下にある 'Enable integration into the desktop environment' というラベルのボックスのチェックを外して下さい。このオプションのチェックを外した後、'Gnome Compatibility' プラグインが有効にできるようになっているはずです。

## 既知の問題

### ウィンドウがビューポートを変更した時に Xfce パネルのウィンドウボタンが更新されない

ウィンドウタイトルを右クリックして 'Move to Workspace Right' などのオプションを選択すると、ウィンドウは動くのに、ビューポートを切り替えるまでウィンドウボタンはウィンドウが移動する前のビューポートに表示され続けることがあります。次の上流のバグレポートを参照してください。

### D-Bus プラグインを有効にしたときに Compiz がクラッシュする

Cube プラグインなど特定のプラグインと一緒に D-Bus プラグインを有効にすると Compiz がクラッシュします。次の上流のバグレポートを参照してください。

## 参照

- Compiz in Launchpad
- Compiz Home, including wiki and forum (website and wiki are unmaintained)
- Troubleshooting - Compiz Wiki, (wiki is unmaintained)

Categories:

- Eye candy (日本語)
- Stacking WMs (日本語)