1. 概要
「FreeBSD 13.0 RELEASE」でやってみます(2022年4月21日)。
2. インストール
何しろ必要なものが、たくさんあります。
まとめてインストールしちゃいます。
「root」ユーザ権限で。
pkg install -y jgmenu papirus-icon-theme font-awesome polybar
後で、「jgmenu」の表示を日本語にするために(既に設定してれば不要)
sh
cat << 'EOF' >> /etc/profile
export LANG=ja_JP.UTF-8
EOF
cat << 'EOF' >> /etc/csh.cshrc
setenv LANG ja_JP.UTF-8
EOF
exit
「jgmenu」のコンフィグレーションファイルを作成しておきます(最近はこれを割愛、2023年1月11日)。
ログインユーザで。
jgmenu_run init
3. polybar 設定
以下、ログインユーザで。
ログイン時に「polybar」を起動するようにします。
sh
cat << 'EOF' >> ~/.config/leftwm/themes/current/up
polybar -c ~/.config/leftwm/themes/current/polybar.config &
EOF
cat << 'EOF' >> ~/.config/leftwm/themes/current/down
pkill polybar
EOF
exit
「polybar」のコンフィグレーションファイルを自分用にコピーして、編集します。
「polybar」のコンフィグレーションファイルのファイル形式は「.ini」なので、コメントアウトする際は、「#」でなく、「;」なのでご注意ください
cp /usr/local/etc/polybar/config.ini ~/.config/leftwm/themes/current/polybar.config
vi ~/.config/leftwm/themes/current/polybar.config
[bar/example]
width = 100%
height = 24pt
radius = 6
; dpi = 96
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3pt
border-size = 4pt
border-color = #00000000
padding-left = 0
padding-right = 1
module-margin = 1
separator = |
separator-foreground = ${colors.disabled}
font-0 = monospace;2
modules-left = xworkspaces xwindow
modules-right = filesystem pulseaudio xkeyboard memory cpu wlan eth date
cursor-click = pointer
cursor-scroll = ns-resize
enable-ipc = true
上記を下記のように記述します。
[bar/example]
width = 100%
height = 24pt
radius = 0
; dpi = 96
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3pt
border-size = 0pt
border-color = #00000000
padding-left = 0
padding-right = 1
module-margin = 1
separator = |
separator-foreground = ${colors.disabled}
font-0 = monospace;2
font-1 = "Font Awesome 5 Free Solid:style=Solid:size=9;2"
modules-left = jgmenu xworkspaces xwindow
modules-right = xkeyboard date
#cursor-click = pointer
#cursor-scroll = ns-resize
enable-ipc = true
[module/jgmenu]
type = custom/script
interval = 120
exec = echo " ? "
click-left = "jgmenu_run >/dev/null 2>&1 &"
format-foreground = ${colors.foreground}
format-background = ${colors.background}
31、40行は、バーの端が丸みをおびて、画面から少し離れているので、画面いっぱいに表示しています。
52行は、「Font Awesome」の文字を表示できるようにしています。
これ、バージョンもはいっているのでご注意、2023年1月11日には
font-1 = "Font Awesome 6 Free Solid:style=Solid:size=9;2"
でした。
バージョンは、「fc-list」コマンドで確認できます。
2023年1月11日に実行した際は
$ fc-list | grep some
/usr/local/share/fonts/font-awesome/Font Awesome 6 Free-Solid-900.otf: Font Awesome 6 Free,Font Awesome 6 Free Solid:style=Solid
/usr/local/share/fonts/font-awesome/Font Awesome 6 Free-Regular-400.otf: Font Awesome 6 Free,Font Awesome 6 Free Regular:style=Regular
/usr/local/share/fonts/font-awesome/Font Awesome 6 Brands-Regular-400.otf: Font Awesome 6 Brands,Font Awesome 6 Brands Regular:style=Regular
てな感じ。
54、55行は、「jgmenu」を追加して、不要なものやこの環境で表示できないものを削除しています。
57、58行は、カーソルが「jgmenu」の位置にくるとわたしの好まない形に変化するので、変化しないようにしています。
62~68行は、「jgmenu」の定義です。
65行の「"」内は、「Font Awesome」の文字を入力します。
「vim」で編集するならば、i で挿入モードにして、Ctrl+V u で 16進入力形式にして「f1d8」を入力します。
よくロケットのアイコン「」を使用していますが、紙飛行機「」の方がわたは好きなのでそちらにしました。
4. jgmenu 設定
ログインユーザで。
「jgmenu_run init」を行っている場合は。
vi ~/.config/jgmenu/jgmenurc
「jgmenu」のコンフィグレーションファイルは、デフォルトでは、すべてコメントアウトされていますので、変更後の状態のみ記述します。
表示位置をずらします。
menu_margin_x = 10
menu_margin_y = 40
表示位置を下から上へ。
menu_valign = top
項目の幅を狭くします。
item_height = 22
フォントを設定。
font = MigMix 1M bold 9
アイコンテーマを設定。
icon_theme = Papirus
選択状態の行の背景をメリハリつけます。
color_sel_bg = #ffffff 40
項目名が冗長なので、説明は省略。
csv_name_format = %n
終了メニューの追加。
sh
cat << 'EOF' >> ~/.config/jgmenu/append.csv
^sep()
ログアウト,killall leftwm,system-log-out
再起動,sudo /sbin/reboot,system-reboot
シャットダウン,sudo /sbin/poweroff,system-shutdown
EOF
exit
「jgmenu_run init」を行っていない場合は、上記を一気にまとめて。
mkdir -pv ~/.config/jgmenu
sh
cat << 'EOF' >> ~/.config/jgmenu/jgmenurc
menu_margin_x = 10
menu_margin_y = 40
menu_valign = top
item_height = 22
font = MigMix 1M bold 9
icon_theme = Papirus
color_sel_bg = #ffffff 40
csv_name_format = %n
EOF
cat << 'EOF' >> ~/.config/jgmenu/append.csv
^sep()
ログアウト,killall leftwm,system-log-out
再起動,sudo /sbin/reboot,system-reboot
シャットダウン,sudo /sbin/poweroff,system-shutdown
EOF
exit