本文介绍在Arch Linux系统中安装和配置i3pystatus的方法,它被定义为越来越多的python脚本,用于状态输出,与i3窗口管理器的i3status/i3bar兼容,我为i3尝试了很多状态栏,包括i3blocks、polybar和i3pystatus,这完全是因为它采用模块化方法。在本文中,我将带你完成i3pystatus安装,安装重要模块,以及最终在Arch Linux桌面计算机上运行的配置示例。
前提条件 1、安装并正常工作的i3窗口管理器(Linux平铺窗口管理器:i3,sway,Qtile,dwm,awesome,附安装方法)。 2、安装了python。 3、安装了pip python模块安装程序。 4、如果无法按预期工作,则需要时间排除故障。
安装i3pystatus 安装i3pystatus最简单快捷的方法是使用pip python安装程序,如果还没有安装python pip包,请安装,参考使用pip在Manjaro系统中安装pipenv的方法。 如果你有pip,只需执行: $ sudo pip install i3pystatus
使用AUR在Arch上安装i3pystatus Arch Linux用户在安装软件上有一定的优势,软件包随时可用,如果没尝过Arch Linux,请参考使用luks进行全硬盘加密的方法。 从Arch aur安装稳定版本: $ yaourt -S i3pystatus --noconfirm 或者如果使用pacaur: $ pacaur --needed --noconfirm --noedit -S i3pystatus 要在Arch上获得最新的git版本: $ pacaur --needed --noconfirm --noedit -S i3pystatus-git 现在安装一些重要的模块: $ sudo pip install pyalsaaudio \ netifaces \ basiciw \ colour \ psutil \ requests 如果需要,你可以添加其他的。
配置i3pystatus 我将把我的i3pystatus配置文件放在~/.config/i3/i3pystatus.conf上。 该文件的内容如下,仅供学习参考,请自行处理: ####################################### # -*- coding: utf-8 -*- # import subprocess import os import os.path from i3pystatus import Status from i3pystatus.updates import pacman, cower status = Status() # Displays clock like this: # Apr 15 Mon 07:59:46 PM KW31 # ^-- calendar week status.register("updates", format = "Updates: {count}", format_no_updates = "", on_leftclick="termite --geometry=1200x600 --title=updates -e 'pacaur --needed --noconfirm --noedit -Syu'", backends = [pacman.Pacman(), cower.Cower()]) status.register("clock", format=" %H:%M:%S", color='#C678DD', interval=1, on_leftclick="/usr/bin/gsimplecal",) status.register("clock", format=" %a %d-%m-%Y ", color='#61AEEE', interval=1,) status.register("pulseaudio", color_unmuted='#98C379', color_muted='#E06C75', format_muted=' [muted]', format=" {volume}%") #status.register("network", # interface="eno1", # color_up="#8AE234", # color_down="#EF2929", # format_up=": {v4cidr}", # format_down="",) status.register("network", interface="wlo1", color_up="#8AE234", color_down="#EF2929", format_up=" {essid} {kbs} kbs", format_down="",) status.register("backlight", interval=5, format=" {percentage:.0f}%", backlight="intel_backlight",) status.register("battery", battery_ident="BAT0", interval=5, format="{status} {percentage:.0f}%", alert=True, alert_percentage=15, color="#FFFFFF", critical_color="#FF1919", charging_color="#E5E500", full_color="#D19A66", status={ "DIS": " ", "CHR": " ", "FULL": " ", },) status.register("temp", color='#78EAF2', ) status.register("cpu_usage", on_leftclick="termite --title=htop -e 'htop'", format=" {usage}%",) status.register("mem", color="#999999", warn_color="#E5E500", alert_color="#FF1919", format=" {avail_mem}/{total_mem} GB", divisor=1073741824,) status.register("disk", color='#56B6C2', path="/home", on_leftclick="pcmanfm", format=" {avail} GB",) status.register("text", text="|", color="#222222") status.register("disk", hints = {"separator": False, "separator_block_width": 3}, color='#ABB2BF', path="/", format=": {avail} GB",) #status.register('ping', # format_disabled='', # color='#61AEEE') status.register("keyboard_locks", format='{caps} {num}', caps_on='Caps Lock', caps_off='', num_on='Num On', num_off='', color='#e60053', ) status.register("mpd", host='localhost', port='6600', format="{status}", on_leftclick="switch_playpause", on_rightclick=["mpd_command", "stop"], on_middleclick=["mpd_command", "shuffle"], on_upscroll=["mpd_command", "next_song"], on_downscroll=["mpd_command", "previous_song"], status={ "pause": " ", "play": " ", "stop": " ", },) status.run() ####################################### 使用上面的配置文件,你即将完成设置,剩下的部分告诉i3使用i3pystatus作为默认状态栏, 修改i3配置文件中的bar block,比如以下: bar { status_command python ~/.config/i3/i3pystatus.conf position top workspace_buttons yes font pango:Hack, FontAwesome 10 colors { background #253941 statusline #e7dfd9 separator #081419 focused_workspace #2aa198 #073642 #eee895 active_workspace #073642 #859900 #839496 inactive_workspace #002b36 #002b36 #586e75 urgent_workspace #cb4b16 #dc322f #fdf6e3 } } 在那之后,只需重新启动你的i3,重启i3的组合键是: $mod+Shift+r 至此,配置完成。
相关主题 |