awesome – matoken's blog https://matoken.org/blog Is there no plan B? Sat, 23 Jan 2021 23:26:45 +0000 ja hourly 1 https://wordpress.org/?v=7.0 https://matoken.org/blog/wp-content/uploads/2025/03/cropped-1865f695c4eecc844385acef2f078255036adccd42c254580ea3844543ab56d9-32x32.jpeg awesome – matoken's blog https://matoken.org/blog 32 32 ミュートアンミュートスクリプトを修正 https://matoken.org/blog/2021/01/24/fix-mute-unmute-script/ https://matoken.org/blog/2021/01/24/fix-mute-unmute-script/#respond Sat, 23 Jan 2021 23:25:08 +0000 http://matoken.org/blog/?p=2944

以前Awesome wmでボリュームコントロールをするのにscriptを書いてこれまで使っていました.

しかし,最近アンミュートにしても音が出なくなりました.

amixerではonになっているけど音が出ない
$ amixer -c 0 get Master
Simple mixer control 'Master',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 36 [41%] [-38.25dB] [on]

pavucontrolで見るとミュートになっています.

pavucontrol mute

これをアンミュートすると音が出ます.
scriptで制御できるようコマンドで試します. pactl set-sink-mute コマンドで制御できました.

$ pactl set-sink-mute
You have to specify a sink name/index and a mute action (0, 1, or 'toggle')
$ pactl set-sink-mute 0 1 (1)
$ pactl set-sink-mute 0 0 (2)
  1. ミュート
  2. アンミュート

ということでscriptに追記しました.動作も問題なさそうです.これでビデオチャット時にアンミュートしたのに音が聞こえない??とならないといいな.

$ git -C ~/.config/awesome/ diff ~/.config/awesome/bin/awesome-audio.sh
diff --git a/bin/awesome-audio.sh b/bin/awesome-audio.sh
index 440f399..9c30d3d 100755
--- a/bin/awesome-audio.sh
+++ b/bin/awesome-audio.sh
@@ -22,6 +22,7 @@ case "$1" in
       amixer -q -c 0 set Master unmute
       amixer -q -c 0 set Speaker unmute
       amixer -q -c 0 set Headphone unmute
+      pactl set-sink-mute 0 0
       xset b
       echo -e "🔊\nunmute!"
       amixer -c 0 get Master | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-high.svg' numute
環境
$ dpkg-query -W pulseaudio pulseaudio-utils pavucontrol alsa-utils
alsa-utils      1.2.4-1
pavucontrol     4.0-2
pulseaudio      14.2-1
pulseaudio-utils        14.2-1
$ lsb_release -dr
Description:    Debian GNU/Linux bullseye/sid
Release:        unstable
$ uname -m
x86_64

]]>
https://matoken.org/blog/2021/01/24/fix-mute-unmute-script/feed/ 0
awesome wmでの壁紙変更設定を変更(crontabからDISPLAY番号取得) https://matoken.org/blog/2020/07/08/change-wallpaper-change-setting-in-awesome-wm-obtain-display-number-from-crontab/ https://matoken.org/blog/2020/07/08/change-wallpaper-change-setting-in-awesome-wm-obtain-display-number-from-crontab/#respond Tue, 07 Jul 2020 21:39:05 +0000 http://matoken.org/blog/?p=2825

awesome wm環境での壁紙自動変更にcrontab経由で feh コマンドを利用しています.

30分ごとに~/Pictures/wp/以下のファイルをダンダムに設定
*/30 * * * *    DISPLAY=:0 feh --bg-scale "$(find ~/Pictures/wp/ -type f | shuf -n 1)"

このときXのディスプレイ番号を固定で書いているのですがディスプレイ番号が変わることもあってその時エラーになってしまいます.
ウィンドウマネージャを変更したときもよくなさそう.

ということでcronからユーザのawesome wmのディスプレイ番号を探すようにしてみました.

まずは対象ユーザのawesome wmのプロセス番号を調べます.

$ pgrep -u $(id -u) awesome
2932

/proc/$PID/environ からDISPLAYを探します.

$ cat /proc/2932/environ 2> /dev/null | tr '\0' '\n' | grep ^DISPLAY=:
DISPLAY=:1

カレントユーザのawesome wmのディスプレイ番号が :1 なのが解りました :)

これを組み合わせてこのようにしてみました.これでディスプレイ番号が変わっても大丈夫で,awesome以外のウィンドウマネージャを使ったときには何もしないはず( xargs --no-run-if-empty )です.
同じユーザでawesomeを複数起動した場合は先に起動した方しか反映されないはずですが,あまりそういったことはしないと思うので大丈夫かなと.

*/30 * * * *    cat /proc/$(pgrep -u $(id -u) awesome)/environ 2> /dev/null | tr '\0' '\n' | grep ^DISPLAY=: | xargs --no-run-if-empty -I{} sh -c '{} feh --bg-scale "$(find ~/Pictures/wp/ -type f | shuf -n 1)"'

2020-07-17 ADD
fehに -z, --randomize と言うオプションがありました.これを使うとコマンドが2つ減って少しわかりやすく……あまり変わらないか.

*/30 * * * *    cat /proc/$(pgrep -u $(id -u) awesome)/environ 2> /dev/null | tr '\0' '\n' | grep ^DISPLAY=: | xargs --no-run-if-empty -I{} {} feh --bg-scale -z ~/Pictures/wp/
環境
$ dpkg-query -W awesome feh procps findutils grep
awesome 4.3-4
feh     3.4.1-1
findutils       4.7.0-1
grep    3.4-1
procps  2:3.3.16-5
$ lsb_release -dr
Description:    Debian GNU/Linux bullseye/sid
Release:        unstable
$ uname -m
x86_64
]]>
https://matoken.org/blog/2020/07/08/change-wallpaper-change-setting-in-awesome-wm-obtain-display-number-from-crontab/feed/ 0
awesome wmでパスを追加する https://matoken.org/blog/2019/08/30/add-path-with-awesome-wm/ https://matoken.org/blog/2019/08/30/add-path-with-awesome-wm/#respond Fri, 30 Aug 2019 10:21:44 +0000 http://matoken.org/blog/?p=2505

bashだと~/bin とかにパスが通っているのにawesomeからmod4 +r で起動しようとするとコマンドが見当たりません.

20190830 14:08:46 21926

AppImageやFlatpakなんかのアプリを格納したりしているのですがこれだと /home/user/bin/command とかフルパスで書かないと駄目です.

bashだとパスが通っています.

$ type -a MQTT-Explorer
MQTT-Explorer is /home/matoken/bin/MQTT-Explorer
$ ls -l /home/matoken/bin/MQTT-Explorer
lrwxrwxrwx 1 matoken matoken 71 Aug 25 21:22 /home/matoken/bin/MQTT-Explorer -> /home/matoken/opt/AppImage/MQTT-Explorer-0.3.6-no-delete-limit.AppImage

awesomeで,mod4 + r して sh -c "$PATH >> ~/tmp/awesomepath" とかして PATH を確認してみるとこれだけしかパスが通っていません.

$ cat ~/tmp/awesomepath
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

~/.xinitrc でパスを追加してみましたが反映されません.
多分lightdm経由で起動しているので関係なかった.

$ ps auxf|grep -B3 awesome
root     32202  0.0  0.0 309612  5532 ?        SLsl  8月29   0:00 /usr/sbin/lightdm
root     32208  1.2  0.5 430424 82396 tty7     Ssl+  8月29  10:48  \_ /usr/lib/xorg/Xorg :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
root     32283  0.0  0.0 163604  5856 ?        Sl    8月29   0:00  \_ lightdm --session-child 12 21
matoken  32293  0.1  0.6 350760 99060 ?        Ssl   8月29   1:18      \_ awesome

~/.Xsession に`PATH=$HOME/bin:$PATH` のような感じでパスを追加するとパスが通りました.でもパスの追加しか書いていないと色々と起動しないサービスがあります.
大本の`/etc/X11/Xsession` をcpしてきてそのファイルにパスの設定を追加したらOKでした.

$ cp /etc/X11/Xsession ~/.Xsession
$ echo 'PATH=$HOME/bin:$PATH' >> ~/.Xsession

これパスの管理一緒にしたいですね.

環境
$ dpkg-query -W awesome lightdm
awesome 4.3-4
lightdm 1.26.0-5
$ lsb_release -dr
Description:    Debian GNU/Linux bullseye/sid
Release:        unstable
$ uname -m
x86_64
]]>
https://matoken.org/blog/2019/08/30/add-path-with-awesome-wm/feed/ 0
awesome WM の設定内で ホームディレクトリを指定する https://matoken.org/blog/2018/08/28/awesome-specify-the-home-directory-within-the-wm-settings/ https://matoken.org/blog/2018/08/28/awesome-specify-the-home-directory-within-the-wm-settings/#respond Tue, 28 Aug 2018 14:30:36 +0000 http://matoken.org/blog/?p=2066

awesome WM での設定ファイルは Lua で書かないといけないのですが,Lua がよくわからずホームディレクトリのパスを指定するのに ~`や `${HOME} が利用できないので /home/USER な感じでフルパスで書いていたのですが,いつもと違うアカウント名の環境に clone していろいろと動かなくなりました.
またパスを書き換えるのもなーということでちゃんと確認してみると,os.getenv(HOME) が使えそうです.

os.getenv (varname)
Returns the value of the process environment variable varname, or nil if the variable is not defined.

ということで,こんな感じで別アカウントでも動作するようになりました :)
これで /home/* だろうが /export/home/* だろうがへっちゃらです!

rc.lua
diff --git a/rc.lua b/rc.lua
index 817937a..a564559 100644
--- a/rc.lua
+++ b/rc.lua
@@ -11,6 +11,8 @@ local naughty = require("naughty")
 local menubar = require("menubar")
 local hotkeys_popup = require("awful.hotkeys_popup").widget

+local home = os.getenv("HOME")
+
 -- Load Debian menu entries
 require("debian.menu")

@@ -276,14 +278,14 @@ globalkeys = awful.util.table.join(

     -- bind PrintScrn to capture a screen
-    awful.key({                   }, "Print", function () awful.util.spawn("/home/mk/.config/awesome/bin/ss-root.sh", false)   end),
-    awful.key({ "Mod1"            }, "Print", function () awful.util.spawn("/home/mk/.config/awesome/bin/ss-window.sh", false) end),
-    awful.key({ "Shift"           }, "Print", function () awful.util.spawn("/home/mk/.config/awesome/bin/ss-area.sh", false)   end),
+    awful.key({                   }, "Print", function () awful.util.spawn(home .. "/.config/awesome/bin/ss-root.sh", false)   end),
+    awful.key({ "Mod1"            }, "Print", function () awful.util.spawn(home .. "/.config/awesome/bin/ss-window.sh", false) end),
+    awful.key({ "Shift"           }, "Print", function () awful.util.spawn(home .. "/.config/awesome/bin/ss-area.sh", false)   end),

     -- Audio Controle
環境
$ dpkg-query -W awesome*
awesome 4.2-5
awesome-doc     4.2-5
awesome-extra   2018041201
$ lsb_release -d
Description:    Debian GNU/Linux unstable (sid)
$ uname -m
x86_64
]]>
https://matoken.org/blog/2018/08/28/awesome-specify-the-home-directory-within-the-wm-settings/feed/ 0
awesome WM で Light を利用して輝度調整する https://matoken.org/blog/2018/08/27/use-light-with-awesome-wm-to-adjust-the-brightness/ https://matoken.org/blog/2018/08/27/use-light-with-awesome-wm-to-adjust-the-brightness/#respond Sun, 26 Aug 2018 22:52:08 +0000 http://matoken.org/blog/?p=2059

以前は awesome WM での輝度調整は xbacklight を利用していたのですが,動作しなくなっていました.

$ xbacklight -get
No outputs have backlight property

最近まで ThinkPad が1台だけになって持ち運びをしなくなっていたのもあり,以下のような感じで /sys/class/backlight/intel_backlight/brightness に投げていました.

$ echo 800 | sudo tee /sys/class/backlight/intel_backlight/brightness
800

しかし,最近 T430s/X201i のジャンクを入手して補修して持ち運べる ThinkPad が出来ました :)
そうなると場所により明るさが変わったり,輝度を下げてバッテリー持ちを良くしたりしたいという感じでこまめに起動調整がしたくなりました.
他のwmのpower managerを使うと一応輝度調整できるけどあまり嬉しくないなということでちょっと探してみると, Light というものを見つけました.

Arch Linux, Fedora にはパッケージがあるようです.今回はsourceからUbuntuとDebianに導入しました.

導入
$ git clone https://github.com/haikarainen/light
$ cd light
$ ./autogen.sh
$ ./configure
$ make
$ sudo checkinstall

とりあえずそのまま既定値でbuildしました.

実行例
$ light -G  #輝度取得
56.34
$ light -A 10 #輝度 10 Up
$ light -U 10 #輝度 10 Down

問題なく動きました.他にもオプションはありますが,とりあえずこれだけ動けば問題ありません.
awesome WM の ~/.config/awesome/lua.rc に書いてみます.

rc.lua
diff --git a/rc.lua b/rc.lua
index f9a7467..9f461b9 100644
--- a/rc.lua
+++ b/rc.lua
@@ -289,8 +289,12 @@ globalkeys = awful.util.table.join(

     -- Brightness Controle
---    awful.key({         }, "XF86MonBrightnessDown", function () awful.util.spawn("xbacklight - 5") end),
 --    awful.key({         }, "XF86MonBrightnessUp",   function () awful.util.spawn("xbacklight + 5") end),
+--    awful.key({         }, "XF86MonBrightnessDown", function () awful.util.spawn("xbacklight - 5") end),
+    -- 以下の light を利用
+    -- "haikarainen/light: GNU/Linux application to control backlights" https://github.com/haikarainen/light
+    awful.key({         }, "XF86MonBrightnessUp",   function () awful.util.spawn("light -A 10") end),
+    awful.key({         }, "XF86MonBrightnessDown", function () awful.util.spawn("light -U 10") end),

     -- lock screen
     awful.key({ "Mod1"  }, "l", function () awful.util.spawn( "xscreensaver-command -activate",false) end),

awesome WM の restart をして,輝度調整ボタンを押すとちゃんと輝度がUp/Downするようになりました.
これで外出先でも困りません :)

環境1
$ $ dpkg-query -W awesome*
awesome 4.2-4
awesome-doc
awesome-extra   2017110501
$ lsb_release -d
Description:    Ubuntu 18.04.1 LTS
$ uname -m
x86_64
環境2
$ dpkg-query -W awesome*
awesome 4.2-5
awesome-doc     4.2-5
awesome-extra   2018041201
$ lsb_release -d
Description:    Debian GNU/Linux unstable (sid)
$ uname -m
x86_64
]]>
https://matoken.org/blog/2018/08/27/use-light-with-awesome-wm-to-adjust-the-brightness/feed/ 0
awesomeとかでApple Wireless Trackpadを設定する https://matoken.org/blog/2016/06/17/to-set-the-apple-wireless-trackpad-at-awesomes/ https://matoken.org/blog/2016/06/17/to-set-the-apple-wireless-trackpad-at-awesomes/#respond Fri, 17 Jun 2016 13:31:36 +0000 http://matoken.org/blog/?p=1390

Bluetooth接続のApple Wireless Trackpadですが,GnomeとかだとBluetoothでペアリングした後こんな感じでGUIで設定できるのですが,

27082898093 594ed9ea4e n
27082898303 067a324e77 n
27414891970 2128414b0d n

awesomeだと効かないようです.ペアリングした後カーソル移動,2本指スクロール,右クリックはなどは動作するのですが,一番利用する左クリックが動作しません.

こいつはDynaptics driver用のコマンドのsynclientを使って設定内容の確認とアドホックな動作確認をします.
コマンドが存在しない場合 xserver-xorg-input-synaptics pkgを導入してください.
-l optionで設定項目の確認が出来ます.

$ synclient -l
Parameter settings:
    LeftEdge                = -2393
    RightEdge               = 2651
    TopEdge                 = -2030
    BottomEdge              = 2139
    FingerLow               = 70
    FingerHigh              = 75
    MaxTapTime              = 180
    MaxTapMove              = 346
    MaxDoubleTapTime        = 100
    SingleTapTimeout        = 180
    ClickTime               = 100
    EmulateMidButtonTime    = 0
    EmulateTwoFingerMinZ    = 100
    EmulateTwoFingerMinW    = 50
    VertScrollDelta         = 157
    HorizScrollDelta        = 157
    VertEdgeScroll          = 0
    HorizEdgeScroll         = 0
    CornerCoasting          = 0
    VertTwoFingerScroll     = 1
    HorizTwoFingerScroll    = 1
    MinSpeed                = 1
    MaxSpeed                = 1.75
    AccelFactor             = 0.0253743
    TouchpadOff             = 0
    LockedDrags             = 0
    LockedDragTimeout       = 5000
    RTCornerButton          = 0
    RBCornerButton          = 0
    LTCornerButton          = 0
    LBCornerButton          = 0
    TapButton1              = 0
    TapButton2              = 2
    TapButton3              = 3
    ClickFinger1            = 1
    ClickFinger2            = 3
    ClickFinger3            = 2
    CircularScrolling       = 1
    CircScrollDelta         = 0.1
    CircScrollTrigger       = 0
    CircularPad             = 0
    PalmDetect              = 1
    PalmMinWidth            = 10
    PalmMinZ                = 200
    CoastingSpeed           = 50
    CoastingFriction        = 50
    PressureMotionMinZ      = 30
    PressureMotionMaxZ      = 160
    PressureMotionMinFactor = 1
    PressureMotionMaxFactor = 1
    GrabEventDevice         = 0
    TapAndDragGesture       = 1
    AreaLeftEdge            = 0
    AreaRightEdge           = 0
    AreaTopEdge             = 0
    AreaBottomEdge          = 0
    HorizHysteresis         = 4
    VertHysteresis          = 4
    ClickPad                = 0
    RightButtonAreaLeft     = 0
    RightButtonAreaRight    = 0
    RightButtonAreaTop      = 0
    RightButtonAreaBottom   = 0
    MiddleButtonAreaLeft    = 0
    MiddleButtonAreaRight   = 0
    MiddleButtonAreaTop     = 0
    MiddleButtonAreaBottom  = 0

とりあえずタップの設定をしてみます.これでタップが出来るようになったら設定項目は当たりです.

$ synclient TapButton1=1
$ synclient -l|grep TapButton1
    TapButton1              = 1

設定項目が判ったら設定ファイルに書いておきます.
今回は /etc/X11/xorg.conf.d/21-apple-touchpad.conf にしました.
とりあえずタップの設定だけ以下のように設定しました.
ファイルの用意ができたらXの再起動を行います.awesomeの場合 Mod4 + Shift + q とかで一旦Xを終了してログインし直します.

Section "InputClass"
    Identifier "touchpad"
    Driver "synaptics"
    MatchIsTouchpad "on"
        Option "TapButton1" "1" # 1本指タップを左クリックに
EndSection

他の設定項目も同様に設定していきます.
現在こんな感じにしています.

Section "InputClass"
    Identifier "touchpad"
    Driver "synaptics"
    MatchIsTouchpad "on"
        Option "TapButton1" "1" # 1本指タップを左クリックに
        Option "TapButton2" "3" # 2本指タップを右クリックに
        Option "TapButton3" "2" # 3本指タップを中クリックに
        Option "VertTwoFingerScroll" "on"       # 縦スクロールを有効
        Option "HorizTwoFingerScroll" "on"      # 横スクロールを有効
        Option "PalmDetect" "1" # 手のひら検出
EndSection

今回Debian stretch testing amd64ですが他の環境でも同様に行けると思います.

$ screenfetch
         _,met$$$$$gg.           mk@x220
      ,g$$$$$$$$$$$$$$$P.        OS: Debian testing stretch
    ,g$$P""       """Y$$.".      Kernel: x86_64 Linux 4.5.0-2-amd64
   ,$$P'              `$$$.      Uptime: 1d 12h 8m
  ',$$P       ,ggs.     `$$b:    Packages: 4379
  `d$$'     ,$P"'   .    $$$     Shell: bash 4.3.42
   $$P      d$'     ,    $$P     Resolution: 1366x768
   $$:      $$.   -    ,d$$'     WM: Awesome
   $$\;      Y$b._   _,d$P'      WM Theme: awesome
   Y$$.    `.`"Y$$$$P"'          CPU: Intel Core i5-2540M CPU @ 3.3GHz
   `$$b      "-.__               GPU: Mesa DRI Intel(R) Sandybridge Mobile
    `Y$$                         RAM: 4288MiB / 15934MiB
     `Y$$.
       `$$b.
         `Y$$b.
            `"Y$b._
                `""""

]]>
https://matoken.org/blog/2016/06/17/to-set-the-apple-wireless-trackpad-at-awesomes/feed/ 0
awesome wm の時計をカスタマイズ & メニューを最新に追従 https://matoken.org/blog/2015/09/12/the-follow-up-the-clock-of-awesome-wm-customized-menu-to-the-latest/ https://matoken.org/blog/2015/09/12/the-follow-up-the-clock-of-awesome-wm-customized-menu-to-the-latest/#respond Fri, 11 Sep 2015 21:51:41 +0000 http://matoken.org/blog/?p=957 20150912_00:09:11-13117

時計をカスタマイズ

デスクトップの右上に時計が表示されますが,秒が表示されません.ここに秒も表示したいです. `awful.widget.textclock() で実現しているようなのでここのパラメーターを変更することで実現できました.

Parameters:
 
format The time format. Default is " %a %b %d, %H:%M ".
timeout How often update the time. Default is 60.

以下のように書き換えました.

-- {{{ Wibox
-- Create a textclock widget
-mytextclock = awful.widget.textclock()
+mytextclock = awful.widget.textclock("%a %b %d, %H:%M:%S", 1)

規定値は %a %b %d, %H:%M", 60 で前半の " で囲ってある部分は date の FORMAT のようなので man date を参照して :%S を末尾に追加,後半の 60 は更新時間(秒)のようなのでこのままでは60秒に1回しか更新されないので1秒単位で更新されるように 1 を指定しました.

メニューを最新に追従するようにする

左上の awesome のメニューの Debian ツリーに導入されたアプリケーションメニューがありますが,awesome 初回実行時にコピーされたものが参照されます.そのためそれ以降に導入,削除したものは反映されません.大元の設定は随時反映されるのでそちらを参照するようにします.

  • 参照しているメニューファイル: ~/.config/awesome/debian/menu.lua
  • 元メニューファイル: /etc/xdg/awesome/debian/menu.lua

自分のホーム以下のメニューは削除してしまってシンボリックリンクを貼ることにします.

% rm -rf ~/.config/awesome/debian
% ln -s /etc/xdg/awesome/debian ~/.config/awesome/debian

メニューのカスタマイズは以下のような感じで rc.lua 内で行うようにしました.数が増えるようならファイルを分けるといいかもしれません.

+fav_menu = {
+   { "Nautilus", "nautilus" },
+   { "Atom", "atom" },
+   { "Chromium privacy", "/home/mk/script/chromium-privacy.bash" },
+   { "mikutter", "mikutter" },
+   { "LibreOffice", "libreoffice" },
+}
+
 mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
                                     { "Debian", debian.menu.Debian_menu.Debian },
+                                    { "fav", fav_menu },
                                     { "open terminal", terminal }
                                   }
                         })

全体の設定は以下の Gist を参照して下さい.

これまでの awesome 関連のエントリは以下を参照してください.

]]>
https://matoken.org/blog/2015/09/12/the-follow-up-the-clock-of-awesome-wm-customized-menu-to-the-latest/feed/ 0
awesome wm の時計をカスタマイズ & メニューを最新に追従 https://matoken.org/blog/2015/09/12/the-follow-up-the-clock-of-awesome-wm-customized-menu-to-the-latest-2/ https://matoken.org/blog/2015/09/12/the-follow-up-the-clock-of-awesome-wm-customized-menu-to-the-latest-2/#respond Fri, 11 Sep 2015 21:51:41 +0000 http://matoken.org/blog/?p=957 20150912_00:09:11-13117

時計をカスタマイズ

デスクトップの右上に時計が表示されますが,秒が表示されません.ここに秒も表示したいです. `awful.widget.textclock() で実現しているようなのでここのパラメーターを変更することで実現できました.

Parameters:
 
format The time format. Default is " %a %b %d, %H:%M ".
timeout How often update the time. Default is 60.

以下のように書き換えました.

-- {{{ Wibox
-- Create a textclock widget
-mytextclock = awful.widget.textclock()
+mytextclock = awful.widget.textclock("%a %b %d, %H:%M:%S", 1)

規定値は %a %b %d, %H:%M", 60 で前半の " で囲ってある部分は date の FORMAT のようなので man date を参照して :%S を末尾に追加,後半の 60 は更新時間(秒)のようなのでこのままでは60秒に1回しか更新されないので1秒単位で更新されるように 1 を指定しました.

メニューを最新に追従するようにする

左上の awesome のメニューの Debian ツリーに導入されたアプリケーションメニューがありますが,awesome 初回実行時にコピーされたものが参照されます.そのためそれ以降に導入,削除したものは反映されません.大元の設定は随時反映されるのでそちらを参照するようにします.

  • 参照しているメニューファイル: ~/.config/awesome/debian/menu.lua
  • 元メニューファイル: /etc/xdg/awesome/debian/menu.lua

自分のホーム以下のメニューは削除してしまってシンボリックリンクを貼ることにします.

% rm -rf ~/.config/awesome/debian
% ln -s /etc/xdg/awesome/debian ~/.config/awesome/debian

メニューのカスタマイズは以下のような感じで rc.lua 内で行うようにしました.数が増えるようならファイルを分けるといいかもしれません.

+fav_menu = {
+   { "Nautilus", "nautilus" },
+   { "Atom", "atom" },
+   { "Chromium privacy", "/home/mk/script/chromium-privacy.bash" },
+   { "mikutter", "mikutter" },
+   { "LibreOffice", "libreoffice" },
+}
+
 mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
                                     { "Debian", debian.menu.Debian_menu.Debian },
+                                    { "fav", fav_menu },
                                     { "open terminal", terminal }
                                   }
                         })

全体の設定は以下の Gist を参照して下さい.

これまでの awesome 関連のエントリは以下を参照してください.

]]>
https://matoken.org/blog/2015/09/12/the-follow-up-the-clock-of-awesome-wm-customized-menu-to-the-latest-2/feed/ 0
awesome wm のミュートスクリプト改善(ヘッドホン&beep 対応等) https://matoken.org/blog/2015/09/09/awesome-wm-mute-script/ https://matoken.org/blog/2015/09/09/awesome-wm-mute-script/#respond Wed, 09 Sep 2015 12:18:51 +0000 http://matoken.org/blog/?p=934
  • awesome wm を久々に使おうとしたら設定ファイルが使えなくなっていたので再設定 | matoken's meme
  • Awesome wm でボリュームコントロール | matoken's meme
  • の続きです.このシリーズは興味ある人ほとんど居ない気もしてますが…….

    ボリュームコントロール用の script を書いていい感じでボリュームコントロールが使えている気がしていたのですが,いくつか不具合が見つかったので改良しました.

    問題1.ヘッドホン利用時にアンミュートされない

    ミュート時に Master をミュートして,同様にアンミュート時に Master をアンミュートするのですが,ヘッドホン利用時にはヘッドホンがミュートされたままになってしまいます.

    amixer -c 0 get Headphone とかして確認すると,off のままです.

    % amixer -c 0 get Headphone 
    Simple mixer control 'Headphone',0
      Capabilities: pvolume pswitch
      Playback channels: Front Left - Front Right
      Limits: Playback 0 - 74
      Mono:
      Front Left: Playback 74 [100%] [0.00dB] [off]
      Front Right: Playback 74 [100%] [0.00dB] [off]

    Headphone に対して unmute すると音が出るようになりました.

    ということでアンミュート時に Master だけでなく Headphone / Speaker もアンミュートするようにしました.Headphone / Speaker は両方 on にしても排他利用になるようで両方 on にしても問題ないようです.

    • amixer -q -c 0 set Master unmute
    • amixer -q -c 0 set Master unmute
      amixer -q -c 0 set Speaker unmute
      amixer -q -c 0 set Headphone unmute

    これでヘッドホンやスピーカーを切り替えてもちゃんと切り替わるようになりました.

    問題2.BEEP がミュートされない

    Master や Beep を mute しても beep音が出てしまいます.amixer でボリュームを 0% にしても音が出てしまいます.

    % amixer -c 0 get Beep
    Simple mixer control 'Beep',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 7
      Mono: Playback 4 [57%] [-12.00dB] [off]

    ALSA ではなく基本の? xset で有効,無効にしたら効いたのでこれを設定しました.

    • beep ミュート
      xset -b
    • beep アンミュート
      xset b

    問題3.音量ボタンを押した時のメッセージでミュート・アンミュート状態がわからない

    ボリュームUp / Down ボタンを押した時のメッセージがミュート状態にかかわらず同じものを表示していたので音量が小さくて聞こえないのかミュート状態だから音が出ていないのかわかりませんでした.

    ミュート状態によりアイコンを変更するようにしました.ついでに Up/Down の矢印も表示するようにしました.

    • これまでは1パターン
      20150903_03:09:24-10606

    • ミュート状態でアイコンの変更&矢印を表示するようにした
      20150909_21:09:58-1293720150909_21:09:41-13553
      20150909_21:09:37-1439820150909_21:09:50-14607

    出来上がった script

    ということでそれぞれを反映してこんな感じになりました.

    #!/bin/bash 
     
    MUTE=`amixer -c 0 get Master|tail -1|cut -d '[' -f 4|sed s/\]//`
     
    if [ $MUTE = "on" ] ; then
      ICON="/usr/share/icons/ContrastHigh/scalable/status/audio-volume-medium.svg"
    else
      ICON="/usr/share/icons/ContrastHigh/scalable/status/audio-volume-muted.svg"
    fi
     
    case "$1" in
      "XF86AudioMute" ) 
        if [ $MUTE = "on" ] ; then
          amixer -q -c 0 set Master mute
          xset -b
          echo -e "🔊☓\nmute!"
          notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-muted.svg' mute ""
        else
          amixer -q -c 0 set Master unmute
          amixer -q -c 0 set Speaker unmute
          amixer -q -c 0 set Headphone unmute
          xset b
          echo -e "🔊\nunmute!"
          amixer -c 0 get Master | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-high.svg' numute
        fi
      ;;
      "XF86AudioRaiseVolume" ) 
        amixer -c 0 set Master 2dB+ | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i $ICON "Vol ⤴"
      ;;
      "XF86AudioLowerVolume" ) 
        amixer -c 0 set Master 2dB- | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i $ICON "Vol ⤵"
      ;;
    esac

    今のところ満足 :-)

    ]]>
    https://matoken.org/blog/2015/09/09/awesome-wm-mute-script/feed/ 0
    awesome wm のミュートスクリプト改善(ヘッドホン&beep 対応等) https://matoken.org/blog/2015/09/09/awesome-wm-mute-script-2/ https://matoken.org/blog/2015/09/09/awesome-wm-mute-script-2/#respond Wed, 09 Sep 2015 12:18:51 +0000 http://matoken.org/blog/?p=934
  • awesome wm を久々に使おうとしたら設定ファイルが使えなくなっていたので再設定 | matoken's meme
  • Awesome wm でボリュームコントロール | matoken's meme
  • の続きです.このシリーズは興味ある人ほとんど居ない気もしてますが…….

    ボリュームコントロール用の script を書いていい感じでボリュームコントロールが使えている気がしていたのですが,いくつか不具合が見つかったので改良しました.

    問題1.ヘッドホン利用時にアンミュートされない

    ミュート時に Master をミュートして,同様にアンミュート時に Master をアンミュートするのですが,ヘッドホン利用時にはヘッドホンがミュートされたままになってしまいます.

    amixer -c 0 get Headphone とかして確認すると,off のままです.

    % amixer -c 0 get Headphone 
    Simple mixer control 'Headphone',0
      Capabilities: pvolume pswitch
      Playback channels: Front Left - Front Right
      Limits: Playback 0 - 74
      Mono:
      Front Left: Playback 74 [100%] [0.00dB] [off]
      Front Right: Playback 74 [100%] [0.00dB] [off]

    Headphone に対して unmute すると音が出るようになりました.

    ということでアンミュート時に Master だけでなく Headphone / Speaker もアンミュートするようにしました.Headphone / Speaker は両方 on にしても排他利用になるようで両方 on にしても問題ないようです.

    • amixer -q -c 0 set Master unmute
    • amixer -q -c 0 set Master unmute
      amixer -q -c 0 set Speaker unmute
      amixer -q -c 0 set Headphone unmute

    これでヘッドホンやスピーカーを切り替えてもちゃんと切り替わるようになりました.

    問題2.BEEP がミュートされない

    Master や Beep を mute しても beep音が出てしまいます.amixer でボリュームを 0% にしても音が出てしまいます.

    % amixer -c 0 get Beep
    Simple mixer control 'Beep',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 7
      Mono: Playback 4 [57%] [-12.00dB] [off]

    ALSA ではなく基本の? xset で有効,無効にしたら効いたのでこれを設定しました.

    • beep ミュート
      xset -b
    • beep アンミュート
      xset b

    問題3.音量ボタンを押した時のメッセージでミュート・アンミュート状態がわからない

    ボリュームUp / Down ボタンを押した時のメッセージがミュート状態にかかわらず同じものを表示していたので音量が小さくて聞こえないのかミュート状態だから音が出ていないのかわかりませんでした.

    ミュート状態によりアイコンを変更するようにしました.ついでに Up/Down の矢印も表示するようにしました.

    • これまでは1パターン
      20150903_03:09:24-10606

    • ミュート状態でアイコンの変更&矢印を表示するようにした
      20150909_21:09:58-1293720150909_21:09:41-13553
      20150909_21:09:37-1439820150909_21:09:50-14607

    出来上がった script

    ということでそれぞれを反映してこんな感じになりました.

    #!/bin/bash 
     
    MUTE=`amixer -c 0 get Master|tail -1|cut -d '[' -f 4|sed s/\]//`
     
    if [ $MUTE = "on" ] ; then
      ICON="/usr/share/icons/ContrastHigh/scalable/status/audio-volume-medium.svg"
    else
      ICON="/usr/share/icons/ContrastHigh/scalable/status/audio-volume-muted.svg"
    fi
     
    case "$1" in
      "XF86AudioMute" ) 
        if [ $MUTE = "on" ] ; then
          amixer -q -c 0 set Master mute
          xset -b
          echo -e "🔊☓\nmute!"
          notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-muted.svg' mute ""
        else
          amixer -q -c 0 set Master unmute
          amixer -q -c 0 set Speaker unmute
          amixer -q -c 0 set Headphone unmute
          xset b
          echo -e "🔊\nunmute!"
          amixer -c 0 get Master | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-high.svg' numute
        fi
      ;;
      "XF86AudioRaiseVolume" ) 
        amixer -c 0 set Master 2dB+ | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i $ICON "Vol ⤴"
      ;;
      "XF86AudioLowerVolume" ) 
        amixer -c 0 set Master 2dB- | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i $ICON "Vol ⤵"
      ;;
    esac

    今のところ満足 :-)

    ]]>
    https://matoken.org/blog/2015/09/09/awesome-wm-mute-script-2/feed/ 0
    Awesome wm でボリュームコントロール https://matoken.org/blog/2015/09/03/awesome-wm-volume-controle/ https://matoken.org/blog/2015/09/03/awesome-wm-volume-controle/#comments Wed, 02 Sep 2015 20:50:21 +0000 http://matoken.org/blog/?p=929 IMGP0223_変更済み

    Gnome Shell や XFce4 などでは NotePC の音量コントロールボタンで音量のUp/Down 及びミュートが操作出来ましたが, Awesome ではそのままでは動作しないようです.ということで設定してみました.

    (以下の時の設定では unmute がうまく行っていなかった & 解りやすく修正.)

    キーコードを調べる

    まずはボタンのキーコードを調べました.xev コマンドを実行しながら該当ボタンを押して調べます.手元のマシンでは以下のようになりました.

    ThinkPad X201s のボリュームキー情報(xev で確認)

    • VolUp
      KeyRelease event, serial 33, synthetic NO, window 0x1800001,
        root 0x98, subw 0x0, time 74266491, (715,471), root:(717,492),
        state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
        XLookupString gives 0 bytes:
        XFilterEvent returns: False
    • VolDown
      KeyRelease event, serial 33, synthetic NO, window 0x1800001,
        root 0x98, subw 0x0, time 74268735, (715,471), root:(717,492),
        state 0x0, keycode 122 (keysym 0x1008ff11, XF86AudioLowerVolume), same_screen YES,
        XLookupString gives 0 bytes:
        XFilterEvent returns: False
    • ミュート
      KeyPress event, serial 30, synthetic NO, window 0x3e00001,
        root 0x98, subw 0x0, time 107269062, (0,480), root:(212,630),
        state 0x0, keycode 121 (keysym 0x1008ff12, XF86AudioMute), same_screen YES,
        XLookupString gives 0 bytes:
        XmbLookupString gives 0 bytes:
        XFilterEvent returns: False

    ということでこうなりました.

    • ミュートボタン -> XF86AudioMute
    • 音量Upボタン -> XF86AudioRaiseVolume
    • 音量Downボタン -> XF86AudioLowerVolume

    音量の操作コマンドを調べる

    alsa の操作をコマンドで実行できる amixer で操作するサウンドカードなどを確認します.amixer でサウンドカードを確認して,amixer -c 0 などとしてサウンドカードの内訳を確認したり出来ます.-c 0 は0番目のカードという意味になります.2枚目のカードは,-c 1 というオプションで指定できます.

    今回は sound card 0 の Master を操作します.以下のコマンドで情報の表示や操作ができます.

    • sound card 0 の Master の状態確認

      % amixer -c 0 get Master
      Simple mixer control 'Master',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 74
      Mono: Playback 58 [78%] [-16.00dB] [off]
    • sound card 0 の Master を無音に

      % amixer -c 0 set Master mute  
      Simple mixer control 'Master',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 74
      Mono: Playback 58 [78%] [-16.00dB] [off]
    • sound card 0 の Master の音を有効に

      % amixer -c 0 set Master unmute
      Simple mixer control 'Master',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 74
      Mono: Playback 58 [78%] [-16.00dB] [on]

    Master の unmute だけだとスピーカーがミュートになったままなのでスピーカーも unmute します.

    • sound card 0 の Speaker の音を有効に

      % amixer -c 0 set Speaker unmute
      Simple mixer control 'Speaker',0
      Capabilities: pvolume pswitch
      Playback channels: Front Left - Front Right
      Limits: Playback 0 - 74
      Mono:
      Front Left: Playback 74 [100%] [0.00dB] [on]
      Front Right: Playback 74 [100%] [0.00dB] [on]
    • sound card 0 の Master の音量を 2dB 上げる

      % amixer -c 0 set Master 2dB+
      Simple mixer control 'Master',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 74
      Mono: Playback 60 [81%] [-14.00dB] [off]
    • sound card 0 の Master の音量を 2dB 下げる

      % amixer -c 0 set Master 2dB-
      Simple mixer control 'Master',0
      Capabilities: pvolume pvolume-joined pswitch pswitch-joined
      Playback channels: Mono
      Limits: Playback 0 - 74
      Mono: Playback 58 [78%] [-16.00dB] [off]

    Script にする

    ~/script/awesome-audio.bash という名前のscript にしました.引数にキーコードを渡して実行すると,ミュートボタンを押すとミュート状態ならミュートを解除,そうでないならミュートに,音量ボタンで 2dB ずつUp/Down するようになっています.
    それだけだと状態がわかりにくかったので,notify-send コマンドでアイコンとメッセージを表示するようにしました.

    メッセージの表示は awesome 的には naughty.notify で行うのが正しいと思うのですが,使い方がよく解らずorz
    まあ notify-send なら awesome 以外の環境でも動くのでいいかなと.

    #!/bin/bash 
     
    case "$1" in
      "XF86AudioMute" )
        MUTE=`amixer -c 0 get Master|tail -1|cut -d '[' -f 4|sed s/\]//`
        if [ $MUTE = "on" ] ; then
          amixer -q -c 0 set Master mute
          echo -e "🔊☓\nmute!"
          notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-muted.svg' mute ""
        else
          amixer -q -c 0 set Master unmute
          amixer -q -c 0 set Speaker unmute
          echo -e "🔊\nunmute!"
          amixer -c 0 get Master | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-high.svg' numute
        fi
      ;;
      "XF86AudioRaiseVolume" )
        amixer -c 0 set Master 2dB+ | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-medium.svg' Vol
      ;;
      "XF86AudioLowerVolume" )
        amixer -c 0 set Master 2dB- | tail -1 | cut -d '[' -f 2 | sed s/\]// | xargs notify-send -u low -t 500 -i '/usr/share/icons/ContrastHigh/scalable/status/audio-volume-medium.svg' Vol
      ;;
    esac
     
    amixer -c 0 get Master | tail -1 | cut -d '[' -f 2 | sed s/\]//

    以下のように実行して動作確認しておきます.

    % ~/script/awesome-audio.bash XF86AudioMute
    🔊☓
    mute!
    70%
    % ~/script/awesome-audio.bash XF86AudioMute
    🔊
    unmute!
    70%
    % ~/script/awesome-audio.bash XF86AudioRaiseVolume
    73%
    % ~/script/awesome-audio.bash XF86AudioLowerVolume
    70%

    notify-send でデスクトップには以下のような通知が表示されます.

    20150903_03:09:19-832020150903_03:09:04-964020150903_03:09:05-1036220150903_03:09:24-10606

    awesome の設定を行う

    音量コントロールボタンで script を呼ぶように awesome の設定ファイル ~/.config/awesome/rc.lua に以下の設定を追記します.追記場所は `-- Standard program の後ろ辺りでok です.

        -- Audio Controle 
        awful.key({         }, "XF86AudioMute"function () awful.util.spawn("/home/mk/script/awesome-audio.bash XF86AudioMute",false)       end),
        awful.key({         }, "XF86AudioRaiseVolume"function () awful.util.spawn("/home/mk/script/awesome-audio.bash XF86AudioRaiseVolume",falseend),
        awful.key({         }, "XF86AudioLowerVolume"function () awful.util.spawn("/home/mk/script/awesome-audio.bash XF86AudioLowerVolume",falseend),

    ここまで設定できたら awesome を restart します.

    >
    メニュー -> awesome -> restart

    音量コントロールボタンで操作ができるようになったら出来上がりです :)

    ]]>
    https://matoken.org/blog/2015/09/03/awesome-wm-volume-controle/feed/ 2
    awesome wm を久々に使おうとしたら設定ファイルが使えなくなっていたので再設定 https://matoken.org/blog/2015/08/23/awesome-reconfigure/ https://matoken.org/blog/2015/08/23/awesome-reconfigure/#comments Sat, 22 Aug 2015 15:57:59 +0000 http://matoken.org/blog/?p=895 screenFetch-2015-08-22_12-22-58

    Debian stretch 環境の awesome を久々に起動すると awesome のバージョンが新しくなっていて設定ファイルの互換性が失われていました.jessie で使っていた頃入れたので恐らく以前のバージョンは 3.4.15 で,今は 3.5.6 です.

    とりあえず規定値の設定で起動してくるのですが使いにくいので最低限ですが設定をやりなおしました.

    設定ファイルとテーマファイルの差し替え

    既存の古い設定ファイルとテーマファイルを差し替えます.

    $ cp /etc/xdg/awesome/rc.lua ~/.config/awesome/
    $ cp /usr/share/awesome/themes/default/theme.lua ~/.config/awesome/
    

    これで規定値と同じになりました.テーマは /usr/share/awesome/themes 以下に3種類あるのでお好みで.私は今は明るい sky( /usr/share/awesome/themes/sky/theme.lua ) を利用しています.

    設定変更

    • 設定ファイル修正( ~/.config/awesome/rc.lua )

      • テーマファイル変更(3.4と同じ)

        -beautiful.init("/usr/share/awesome/themes/default/theme.lua")
        +beautiful.init("~/.config/awesome/theme.lua")
        
      • 端末アプリ変更(3.4と同じ)

        -terminal = "x-terminal-emulator"
        +terminal = "mate-terminal"
        
      • スクリーンショット設定(3.5)
        以前行っていた以下の設定ではうまく行かなかった.
        Linux/WindowManager/awesome – matoken’s wiki.
        以下のファイルを用意して,

        % cat ~/script/ss-root.sh
        #!/bin/sh
        import -window root ~/Pictures/`date +%Y%m%d_%H:%m:%S-$$.jpg`
        % cat ~/script/ss-window.sh
        #!/bin/sh
        xwininfo |grep '^xwininfo: Window id:' | awk '{print $4}' | xargs -I{} import -window {} ~/Pictures/`date +%Y%m%d_%H:%m:%S-$$.jpg`
        % cat ~/script/ss-area.sh
        #!/bin/sh
        import ~/Pictures/`date +%Y%m%d_%H:%m:%S-$$.jpg`
        

        -- Standard program の前か後ろ辺りに以下を追加.

        -- bind PrintScrn to capture a screen
        awful.key({                   }, "Print", function () awful.util.spawn("/home/mk/script/ss-root.sh",false)   end),
        awful.key({ "Mod1"            }, "Print", function () awful.util.spawn("/home/mk/script/ss-window.sh",false) end),
        awful.key({ "Shift"           }, "Print", function () awful.util.spawn("/home/mk/script/ss-area.sh",false)   end),
        

        この script はパスを通してあって,3.4 では script名だけで動いていたのですが 3.5 ではフルパスでないと動かないようでした.

      • 音量ボタン設定(3.5)
        以下のようなミュートとアンミュートを行うscript audiomute.sh を用意して,

        #!/bin/sh
        
        MUTE=`amixer -c 0 get Master|tail -1|cut -d '[' -f 4|sed s/\]//`
        if [ $MUTE = "on" ] ; then
          amixer -q -c 0 set Master mute
          echo "mute!"
        else
          amixer -q -c 0 set Master unmute
          echo "unmute!"
        fi
        
        amixer -c 0 get Master|tail -1|cut -d '[' -f 4|sed s/\]//
        

        <追記>
        これだとアンミュートがうまく行かなかったです.次のエントリを参照して下さい
        Awesome wm でボリュームコントロール | matoken's meme
        </追記>

        -- Standard program の前か後ろ辺りに以下を追加.

            -- Audio Controle
            awful.key({                   }, "XF86AudioMute", function () awful.util.spawn("/home/mk/script/audiomute.sh",false) end),
            awful.key({                   }, "XF86AudioRaiseVolume", function () awful.util.spawn("amixer -c 0 set Master 2dB+",false) end),
            awful.key({                   }, "XF86AudioLowerVolume", function () awful.util.spawn("amixer -c 0 set Master 2dB-",false) end),
        

        これもやはりフルパスで script を書かないと動かない.amixer は動いているのでパスがうまく渡っていないのかも.awesome 起動後にパスが設定されてうまく動いていないという感じだと思います.

      • 自動起動アプリ指定(3.4と同じ)
        -- {{{ Autostart application
        -- "Autostart - awesome"
        -- http://awesome.naquadah.org/wiki/Autostart
        awful.util.spawn_with_shell("~/script/run_once.bash nm-applet")
        awful.util.spawn_with_shell("~/script/run_once.bash synergy")
        awful.util.spawn_with_shell("~/script/run_once.bash clipit")
        awful.util.spawn_with_shell("~/script/run_once.bash owncloud")
        awful.util.spawn_with_shell("~/script/run_once.bash xchat")
        awful.util.spawn_with_shell("~/script/run_once.bash pidgin")
        :
        -- }}}
        

        この項目は設定内にないので末尾に追加しました.
        ~/script/run_once.bash は以下のようなもので,アプリケーションの2重起動を回避するために利用しています.

        #!/bin/bash
        pgrep $@ > /dev/null || ($@ &)
        

        Autostart – awesome

    • テーマファイル修正( ~/.config/awesome/theme.lua )

      • 壁紙変更(3.5)
        -theme.wallpaper             = "/usr/share/awesome/themes/sky/sky-background.png"
        +theme.wallpaper             = "~/Pictures/wp/futur_by_takaju-d60mg7y.png"
        

    awesome は軽くてサクサクで結構好きです.ただこのように設定は自分で書かないといけないのでとっつきにくいかもしれません.キーバインドも覚えないといけませんし.でも2,3日使っていると主要な物は覚えられます.
    ちなみに,3.4 でもあって 3.5 でも治っていない問題として,ブラウザ等でファイルを開くとかなりの確率でアプリが落ちてしまいます.ブラウザでファイルを添付するときにすごく困ります.最近のGoogle+ や Flickr などドラッグ&ドロップで添付できるような場所はいいのですが…….

  • マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
  • Linux/WindowManager/awesome – matoken's wiki.
  • ]]>
    https://matoken.org/blog/2015/08/23/awesome-reconfigure/feed/ 2