Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Conkyのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Conky
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:システムモニタ]] [[de:Conky]] [[en:Conky]] [[es:Conky]] [[fa:Conky]] [[fr:Conky]] [[it:Conky]] [[ru:Conky]] [[tr:Conky]] [[zh-hans:Conky]] Conky は X Windows System 向けのシステム監視ソフトウェアです。GNU/Linux と FreeBSD で利用することができます。GPL ライセンスでリリースされているフリーソフトウェアになります。CPU, メモリー, スワップ, ディスク容量, 温度, top, アップロード, ダウンロード, システムメッセージなど、様々なシステムの情報を Conky はモニターすることが可能です。色々と設定することができますが、設定は少々わかりにくいかもしれません。Conky は torsmo のフォークです。 == インストールと設定 == {{Pkg|conky}} パッケージを[[インストール]]してください。機能が追加された他のパッケージについては [[#AUR パッケージ]]を見てください。 ローカルの設定ファイルを作成してください: $ mkdir -p ~/.config/conky $ conky -C > ~/.config/conky/conky.conf {{ic|~/.config/conky/conky.conf}} を編集することで好きに conky をカスタマイズできます。[https://github.com/brndnmtthws/conky/wiki/User-Configs こちらのページ] には設定ファイルのサンプルが載っています。 設定ファイルを編集すると、保存した瞬間に変更が適用されます。X セッションをログアウト・ログインする必要はありません。設定を何かテストしたいときは、設定ファイルを保存してみて ''conky'' のウィンドウがどうなったか確認するのが良いでしょう。 ''conky'' の素晴らしい機能として {{ic|/var/log/}} ファイルからログメッセージを読み込んでデスクトップに表示させることができます。ほとんどのログファイルは {{ic|root}} しか読めないようになっていますが、''conky'' を {{ic|root}} で動作させることは推奨されません。代わりに使用しているユーザーを {{ic|log}} グループに追加してください: # usermod -aG log ''username'' === AUR パッケージ === 基本の '''conky''' パッケージに加えて、追加のコンパイルオプションを有効にした [[AUR]] のパッケージがいくつか存在します: * {{App|conky-cli|X11 依存を取り除いた Conky||{{AUR|conky-cli}}}} * {{App|conky-lua|Lua サポートが付いた Conky||{{AUR|conky-lua}}}} * {{App|conky-lua-nv|Lua と Nvidia サポートが付いた Conky||{{AUR|conky-lua-nv}}}} * {{App|conky-nvidia|Nvidia サポートが付いた Conky||{{AUR|conky-nvidia}}}} == ヒントとテクニック == === 設定ファイルの構文の変更 === Conky 1.10 から、設定ファイルは以下のように Lua の構文で書き直されました: conky.config = { -- Comments start with a double dash bool_value = true, string_value = 'foo', int_value = 42, } conky.text = [[ $variable ${evaluated variable} ]] 下で紹介しているサンプルは以下のような古い構文を使用している場合があります: bool_value yes string_value 'foo' int_value 42 古い構文を新しい Lua 構文に変換する Lua スクリプトが [https://github.com/brndnmtthws/conky/blob/master/extras/convert.lua こちら] にあります。 何かがおかしかったり、スクリプトを信用できない場合、デフォルトの設定ファイルから設定をやり直してください: $ conky -C > conky.conf.default === KDE4 や Xfce4 で完全透過を有効にする === バージョン 1.8.0 から、Conky は完全透過をサポートしています。有効にするには以下の行を {{ic|conky.conf}} に追加して下さい: own_window_transparent = true, 上のオプションは {{ic|OWN_WINDOW_ARGB_VISUAL yes}} オプションと一緒に使うのは望ましくありません。下で説明している {{Pkg|feh}} の方法を置き換えます。 {{Note|1=[[Xfce]] はコンポジットの有効化を必要とします。[https://forum.xfce.org/viewtopic.php?pid=25939] を見て下さい。}} === Xfce4 で自動起動 === {{ic|conky.conf}} ファイルに以下を追加: background = true, この変数は Conky をバックグラウンドにフォークします。ウィンドウをデスクトップ上に常に表示させ、全てのワークスペースに張り付かせてタスクバーには表示したくない場合、以下の引数を追加してください: own_window = true, own_window_type = 'override', override オプションは ''conky'' のウィンドウがウィンドウマネージャの制御下から外れるようにします。 {{ic|~/.config/autostart/conky.desktop}} を追加: [Desktop Entry] Encoding=UTF-8 Version=0.9.4 Type=Application Name=conky Comment= Exec=conky -d StartupNotify=false Terminal=false Hidden=false === ちらつきを防止する === Conky はちらつきを防止するために X サーバーの Double Buffer Extension (DBE) サポートを必要とします。これがないとウィンドウを高速に更新することができません。{{ic|/etc/X11/xorg.conf}} で {{ic|"Module"}} セクションに {{ic|Load "dbe"}} 行を追加することで有効にできます。(1.8.x パッチ以上では) {{ic|xorg.conf}} ファイルは個別の設定ファイルが入っている {{ic|/etc/X11/xorg.conf.d}} で置き換えられています。''DBE'' は自動でロードされます。 ダブルバッファリングを有効にするには {{ic|conky.conf}} に以下を追加してください: double_buffer = true, === カスタムカラー === クラシックなプリセットカラーの他に (white, black, yellow...)、カラーネームコードを使ってカスタムカラーを設定することができます。色のコードを確認するには、色選択アプリを使って下さい。[[公式リポジトリ]]に入っている {{Pkg|gcolor2}} パッケージが色の名前を教えてくれます。カラーコードは6桁の16進数からなります (0-9, A-F)。カスタムカラーを使うには設定ファイルに以下の行を追加してください: color0 = 'white', --convention for standard named colors color1 = '00CC00', --convention for hex colors: no pound sign そして、{{ic|TEXT}} セクションを編集するときに、事前に定義したカスタムカラー番号を使って下さい。 === デュアルスクリーン === デュアルスクリーン設定を使う場合は、conky のウィンドウを配置するための2つのオプションをいじる必要があります。例えば 1680X1050 ピクセルの解像度を使っていて、左モニターの中央上にウィンドウを置きたい場合、以下を使います: alignment = 'top_left', gap_X = 840, {{ic|alignment}} オプションはそのままの意味で、{{ic|gap_X}} オプションは画面の左端からの距離をピクセルで表します。 {{ic|xinerama_head}} オプションも設定する必要があるかもしれません。 === デスクトップの表示で最小化させない === Compiz を使っている場合: 'デスクトップを表示' ボタンやキーバインドで、他のウィンドウと一緒に Conky も最小化されてしまう場合、Compiz の設定マネージャを起動して、"General Options" を開いて "Hide Skip Taskbar Windows" オプションのチェックを外して下さい。 Compiz を使っていない場合は、{{ic|conky.conf}} を編集して以下の行を追加または修正してください: own_window_type = 'override', もしくは: own_window_type = 'desktop', 詳しい違いについては conky の man ページを参照。ただし後者のオプションでは [[Openbox]] などでリサイズのキーバインドを使ってウィンドウを conky の縁に調整することができます。前者は出来ません。 === GNOME との統合 === GNOME で Conky を表示したときに問題が生じる場合、以下の行を {{ic|conky.conf}} に追加: own_window yes own_window_type conky own_window_transparent yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager 透過に問題が起こる場合、以下の行を追加してみてください: own_window_argb_visual yes own_window_argb_value 255 === Razor-qt との統合 === Conky のデフォルト設定では、後ろをクリックするとデスクトップからウィンドウが消えることがあります。以下の行を追加してください: {{hc|conky.conf|own_window yes own_window_class Conky own_window_type normal own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager own_window_transparent yes }} === パッケージの更新情報を表示 === * [[Pacman]] には {{ic|checkupdates}} という公式リポジトリのパッケージアップデートを表示する自前のスクリプトが入っています。{{ic|<nowiki>${execpi 3600 checkupdates | wc -l}</nowiki>}} でパッケージの合計が表示されます。 * [https://bbs.archlinux.org/viewtopic.php?id=68104 Paconky] - ユーザー定義形式でパッケージのアップデート情報を表示します。{{ic|<nowiki>${execpi}</nowiki>}} コマンドを使うことでこのプログラムの出力は conky に含めることができます。 * [https://bbs.archlinux.org/viewtopic.php?id=53761 Scrolling Notifications] - スクロールするアップデート通知を表示。Paconky と作者が同じ。 * [https://bbs.archlinux.org/viewtopic.php?id=57291 Perl Script] - Paconky の作者によるシンプルで簡単なスクリプト。アップデートが必要なパッケージの数だけを表示。 * [https://bbs.archlinux.org/viewtopic.php?id=37284 Python Script] - [[Python]] で書かれたアップデート通知プログラム。 * [https://bbs.archlinux.org/viewtopic.php?pid=483742#p483742 Bash Script] - ShowSize を有効にしたユーザーのための [[Bash]] スクリプト。 === 天気予報を表示 === [https://bbs.archlinux.org/viewtopic.php?id=37381 このスレッド] を参照。 === カウントダウンタイマーを表示 === [https://github.com/orschiro/scriptlets/tree/master/ConkyTimer ConkyTimer] は作業の残り時間を表示するシンプルなカウントダウンタイマーです。 {{ic|conkytimer "<task description>" <min>}} でタイマーを開始できます。 === RSS フィードを表示 === 外部のスクリプトを実行したり Conky に出力したりすることなく、RSS フィードをネイティブに表示する機能が Conky には備わっています。例えば、Planet Arch の最新の記事のタイトル10件を表示して一分ごとにフィードを更新したい場合、以下を {{ic|conky.conf}} の {{ic|TEXT}} セクションに挿入します: ${rss https://planet.archlinux.org/rss20.xml 1 item_titles 10 } Arch フォーラムの rss フィードを表示したい場合、次の行を追加します: ${rss https://bbs.archlinux.org/extern.php?action=feed&type=rss 1 item_titles 4} 1 は更新間隔で (15分がデフォルト)、4 は表示するアイテムの数です。 === rTorrent の統計を表示 === [https://bbs.archlinux.org/viewtopic.php?id=67304 このスレッド]を参照。 === WordPress ブログの統計を表示 === python で書かれた [http://evilshit.wordpress.com/2013/04/20/conkypress-a-wordpress-stats-visualization-tool-for-your-desktop/ ConkyPress] という名前の拡張を使うことで表示できます。 === 新規メールの数を表示 === ==== Gmail ==== ===== 方法 1 ===== どこかに {{ic|gmail.py}} という名前のファイルを作って (ここでは {{ic|~/.scripts/}} を使用) 以下の [[Python]] コードを入力してください: {{hc|gmail.py|<nowiki> #!/usr/bin/env python from urllib.request import FancyURLopener email = 'your email' # @gmail.com can be left out password = 'your password' url = 'https://%s:%s@mail.google.com/mail/feed/atom' % (email, password) opener = FancyURLopener() page = opener.open(url) contents = page.read().decode('utf-8') ifrom = contents.index('<fullcount>') + 11 ito = contents.index('</fullcount>') fullcount = contents[ifrom:ito] print(fullcount + ' new') </nowiki>}} ===== 方法 2 ===== 以下のスクリプトは Python の機能を活用しています: {{hc|gmail.py|<nowiki> #! /usr/bin/env python import urllib.request from xml.etree import ElementTree as etree # Enter your username and password below within quotes below, in place of ****. # Set up authentication for gmail auth_handler = urllib.request.HTTPBasicAuthHandler() auth_handler.add_password(realm='mail.google.com', uri='https://mail.google.com/', user= '****', passwd= '****') opener = urllib.request.build_opener(auth_handler) # ...and install it globally so it can be used with urlopen. urllib.request.install_opener(opener) gmail = 'https://mail.google.com/gmail/feed/atom' NS = '{http://purl.org/atom/ns#}' with urllib.request.urlopen(gmail) as source: tree = etree.parse(source) fullcount = tree.find(NS + 'fullcount').text print(fullcount + ' new') </nowiki>}} 次の行を {{ic|conky.conf}} に追加すれば、5分 (300秒) ごとに新しいメールがないか Gmail アカウントをチェックして表示するようになります: ${execpi 300 python ~/.scripts/gmail.py} ===== 方法 3 ===== 同じやり方で {{ic|curl}}, {{ic|grep}}, {{ic|sed}} を使う方法: <nowiki>$ curl -s -u email:password https://mail.google.com/mail/feed/atom | grep fullcount | sed 's/<[^0-9]*>//g'</nowiki> ''email'' と ''password'' はあなたのデータに置き換えて下さい。 ===== 方法 4 ===== また、{{Pkg|stunnel}} パッケージの [http://www.stunnel.org/ stunnel] を使うこともできます。 以下の設定は [https://github.com/brndnmtthws/conky/wiki/FAQ Conky の FAQ] から引用しています。 以下のように {{ic|/etc/stunnel/stunnel.conf}} を編集して、{{ic|stunnel.service}} を[[起動]]: # Service-level configuration for TLS server [imap] client = yes accept = 143 connect = imap.gmail.com:143 protocol = imap sslVersion = TLSv1 # Service-level configuration for SSL server [imaps] client = yes accept = 993 connect = imap.gmail.com:993 後は {{ic|conky.conf}} だけです: imap localhost username * -i 120 -p 993 TEXT Inbox: ${imap_unseen}/${imap_messages} Here I used {{ic|*}} as the password for conky to ask for it at start, but you do '''not''' have to do it. ==== IMAP + SSL と Perl を使う ==== Conky には IMAP アカウントのサポートが組み込まれていますが SSL はサポートしていません。[http://www.unix.com/shell-programming-scripting/115322-perl-conky-gmail-imap-unread-message-count.html このフォーラムへの投稿] にあるスクリプトを使うことで利用することができます。{{AUR|perl-mail-imapclient}} と {{Pkg|perl-io-socket-ssl}} パッケージの Perl/CPAN Modules Mail::IMAPClient と IO::Socket::SSL が必要です。 Conky に読み込ませる場所に {{ic|imap.pl}} という名前のファイルを作成してください。このファイルには、以下の内容を記述します (必要なところは書き換えて下さい): #!/usr/bin/perl # gimap.pl by gxmsgx # description: get the count of unread messages on imap use strict; use Mail::IMAPClient; use IO::Socket::SSL; my $username = 'example.username'; my $password = 'password123'; my $socket = IO::Socket::SSL->new( PeerAddr => 'imap.server', PeerPort => 993 ) or die "socket(): $@"; my $client = Mail::IMAPClient->new( Socket => $socket, User => $username, Password => $password, ) or die "new(): $@"; if ($client->IsAuthenticated()) { my $msgct; $client->select("INBOX"); $msgct = $client->unseen_count||'0'; print "$msgct\n"; } $client->logout(); {{ic|conky.conf}} に次を追加: ${execpi 300 ~/.conky/imap.pl} ファイルの位置は適宜変更してください。 Gmail を使う場合、アプリパスワードを [https://www.google.com/accounts/IssuedAuthSubTokens?hide_authsub=1 生成] する必要があります。 もしくは、上に書かれているように stunnel を使うこともできます: [[#Gmail]]。 ==== IMAP と PHP を使う ==== PHP を使う方法もあります。[[PHP]] をインストールして {{ic|/etc/php/php.ini}} の {{ic|1=extension=imap.so}} をアンコメントしてください。 それから {{ic|imap.php}} という名前のファイルを作成して実行可能属性を付与してください: $ chmod +x imap.php ファイルの中身は以下のようにします (適宜変更を加えてください): #!/usr/bin/php <?php // See http://php.net/manual/function.imap-open.php for more information about // the mailbox string in the first parameter of imap_open. // This example is ready to use with Office 365 Exchange Mails, // just replace your username (=email address) and the password. $mbox = imap_open("{outlook.office365.com:993/imap/ssl/novalidate-cert}", "username", "password"); // Total number of emails $nrTotal = imap_num_msg($mbox); // Number of unseen emails. There are other ways using imap_status to count // unseen messages, but they don't work with Office 365 Exchange. This one does. $unseen = imap_search($mbox, 'UNSEEN'); $nrUnseen = $unseen ? count($unseen) : 0; // Display the result, format as you like. echo $nrUnseen.'/'.$nrTotal; // Not needed, because the connection is closed after the script end. // For the sake of clean public available scripts, we are nice to // the imap server and close the connection manually. imap_close($mbox); {{ic|conky.conf}} に以下を追加: ${execpi 300 ~/.conky/imap.php} 上記のスクリプトは A/B と表示します。A は未読メールの数で B はメールボックスに存在するメールの合計数です。imap_Status などの PHP 関数を使うことで他の情報も表示できます (http://php.net/manual/function.imap-status.php)。IMAP に関する PHP ドキュメントを見てください: http://php.net/manual/ref.imap.php 。 === 有効なネットワークインターフェイスを表示 === ネットワークインターフェイスが有効化どうかテストするために、conky の {{ic|if_existing}} 変数を使ってインターフェイスの {{ic|operstate}} を確認できます。以下はインターフェイスが {{ic|wlo1}} の場合の例です: {{bc |draw_graph_borders yes ${if_existing /sys/class/net/wlo1/operstate up} ${color #0077ff}Net Down:$color ${downspeed wlo1} ${color #0077ff}Net Up:$color ${upspeed wlo1} ${color #0077ff}${downspeedgraph wlo1 32,155 104E8B 0077ff} $alignr${color #0077ff}${upspeedgraph wlo1 32,155 104E8B 0077ff} ${endif} }} 次の画像のように表示されます: https://i.imgur.com/pQQbsP6.png === UTF-8 マルチバイト文字のスクロールの修正 === 現在のバージョンの conky (1.9.0) には文字列ではなくバイト数によってスクロールするテキストが増えるというバグが存在し [https://github.com/brndnmtthws/conky/issues/129]、結果としてマルチバイト文字を含むテキストでスクロールが消えたり現れたりするということが起こります。このバグを修正するパッチをあてたパッケージが AUR に存在します: {{AUR|conky-utfscroll}}。 === nvidia サポートのサンプルリングスクリプト === [https://gist.github.com/anonymous/85d052c0c23e58bc3666] を参照。 === 記号フォントに関する注意 === 装飾がある {{ic|conky.conf}} では大抵 PizzaDude Bullets と Pie Charts for Maps フォントを使っています。これらのフォントはそれぞれ {{AUR|ttf-pizzadude-bullets}} と {{AUR|ttf-piechartsformaps}}{{Broken package link|{{aur-mirror|ttf-piechartsformaps}}}} として AUR からインストールすることができ、もしくは[[フォント]]の記事に書かれている方法を使って手動でインストールすることもできます。 === 本来よりフォントが小さく表示される === conky のフォントがやけに小さく表示されたり、ちゃんと並ばない場合、[[infinality]] の freetype2 パッチのデフォルト設定が原因かもしれません。この設定は 96 DPI ではなく 72 DPI でフォントを表示するプログラムに問題を生じさせます。たとえシステムを 96 DPI に設定していても関係ありません。この問題を修正するには {{ic|/etc/fonts/infinality/infinality.conf}} を開いて DPI のセクションを探して 72 から 96 に変更してください。 === 完全透過を有効にする万能の方法 === 透過は conky における KAIJU ですが、''xcompmgr'' と ''transset-df'' を使ってどんな環境やウィンドウマネージャでも完全透過を適用する方法が存在します。{{Pkg|xcompmgr}} と {{Pkg|transset-df}} を[[インストール]]してください。 {{Note|他のコンポジットマネージャを使っている場合、この方法は干渉することがあります。}} xcompmgr のドキュメントを確認してどのコンポジットオプションを有効にすべきか決めて下さい。以下は標準的なコマンドになります。 $ xcompmgr -c -t-5 -l-5 -r4.2 -o.55 & {{ic|conky &}} で conky が実行中か確認してください。transset-df を使って Conky ウィンドウの透過を有効にします。'.5' は 0 - 1 の好きな値に設定してください。 $ transset-df .5 -n Conky これで conky のウィンドウが完全透過します。{{ic|No Window matching Conky exists!}} のようなエラーが表示される場合、conky が動作しているか確認してから、xprop を使って conky のウィンドウをクリックして、{{ic|transset-df}} に指定するべき名前を確認してください。 {{hc|$ xprop | grep WM_NAME|2=WM_NAME(STRING) = "Conky (ArchitectLinux)"}} 上記の場合、''conky'' で合っていますが、別の文字列が出力された場合は、それに合わせて指定するようにしてください。{{ic|conky.conf}} で {{ic|own_window_type}} オプションを {{ic|panel}} に設定していた場合、''xprop'' を実行しても何も出力されないことがあります。その場合は {{ic|dock}}, {{ic|normal}}, {{ic|override}}, {{ic|desktop}} などを使うようにしてみてください。 {{ic|~/.xinitrc}} に以下を記述することで [[Xorg|X]] の起動後に ''conky'' に透過を適用することができます: xcompmgr -c -t-5 -l-5 -r4.2 -o.55 & conky -d; sleep 1 && transset-df .5 -n Conky == 参照 == * [https://github.com/brndnmtthws/conky 公式ウェブサイト] * [http://conky.sourceforge.net/config_settings.html 設定に使用する Conky 変数] * [http://conky.sourceforge.net/variables.html Conky オブジェクト] * [https://bbs.archlinux.org/viewtopic.php?id=39906 Arch フォーラムの Conky 設定スレッド] * [http://freecode.com/projects/conky/ Conky] on [[wikipedia:Freecode|Freecode]] * [irc://chat.freenode.org/conky #conky] IRC chat channel on [[wikipedia:Freenode|freenode]] * [http://novel.evilcoder.org/wiki/index.php?title=ConkyFAQ&oldid=12463 FAQ]
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:App
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Man
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Related
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
Conky
に戻る。
検索
検索
Conkyのソースを表示
話題を追加