Debian安装dwm配置


安装系统勾选基本工具和ssh工具

安装所需工具 asudo apt-get install alsa-utils l libx11-dev libxft-dev libxinerama-dev dmenu feh compton

下载dwm st源码 我这里只用了两个补丁 一个是状态栏透明一个是零时终端的 alpha scratchpad

解压打补丁 patch < xx.diff

make以后编辑config.h

static const int topbar = 0; //这里0表示状态栏在底部 1在顶部 static const char *fonts[] = { "monospace:size=11" };//这里修改字体和大小 static const char *wpspdf_cmd[] = { "wpspdf", NULL };//wpspdf static const char *firefox_cmd[] = { "firefox", NULL };//打开浏览器 static const char *vlc_cmd []= {"vlc",NULL};//打开vlc static const char *volup[] = { "amixer", "-qM", "set", "Master", "2%+", "umute", NULL };//音量+ static const char *voldown[] = { "amixer", "-qM", "set", "Master", "2%-", "umute", NULL }; static const char *qt_cmd []={"/home/one/Install/Qtcreate/Tools/QtCreator/bin/qtcreator",NULL};//定义打卡qt快捷键 //下面绑定快捷键 { MODKEY|ShiftMask, XK_p, spawn, {.v = wpspdf_cmd} }, { MODKEY|ShiftMask, XK_f, spawn, {.v = firefox_cmd} }, { MODKEY|ShiftMask, XK_v, spawn, {.v = vlc_cmd} }, { MODKEY, XK_Right, spawn, {.v = volup} }, { MODKEY, XK_Left, spawn, {.v = voldown} }, { MODKEY|ShiftMask, XK_t, spawn, {.v = qt_cmd} },

编译安装 sudo make install

在~目录新建.xinitrc文件插入一下内容

#!/bin/sh compton &#透明效果 feh --bg-scale ~/.bin.jpg #壁纸 dwm_net()#网络 { case $BLOCK_BUTTON in 3) notify-send " 网络流量模块" "\- 查看实时网络流量 - ?: 下行流量 - ?: 上行流量" ;; 6) "$TERMINAL" -e "$EDITOR" "$0" ;; esac update() { sum=0 for arg; do read -r i < "$arg" sum=$(( sum + i )) done cache=${XDG_CACHE_HOME:-$HOME/.cache}/${1##*/} [ -f "$cache" ] && read -r old < "$cache" || old=0 printf %d\\n "$sum" > "$cache" printf %d\\n $(( sum - old )) } RX=$(update /sys/class/net/[ew]*/statistics/rx_bytes) TX=$(update /sys/class/net/[ew]*/statistics/tx_bytes) # 换算单位 if [[ $RX -lt 1024 ]];then # 如果接收速率小于1024,则单位为B/s RX="${RX}B/s" elif [[ $RX -gt 1048576 ]];then # 否则如果接收速率大于 1048576,则改变单位为MB/s RX=$(echo $RX | awk '{print $1/1048576 "MB/s"}') else # 否则如果接收速率大于1024但小于1048576,则单位为KB/s RX=$(echo $RX | awk '{print $1/1024 "KB/s"}') fi # 换算单位 if [[ $TX -lt 1024 ]];then # 如果发送速率小于1024,则单位为B/s TX="${TX}B/s" elif [[ $TX -gt 1048576 ]];then # 否则如果发送速率大于 1048576,则改变单位为MB/s TX=$(echo $TX | awk '{print $1/1048576 "MB/s"}') else # 否则如果发送速率大于1024但小于1048576,则单位为KB/s TX=$(echo $TX | awk '{print $1/1024 "KB/s"}') fi printf "↑$TX ↓$RX" } dwm_date() { date '+%Y/%m/%d date:%H:%M:%S' } dwm_alsa () { VOL=$(amixer get Master | tail -n1 | sed -r "s/.*\[(.*)%\].*/\1/") printf "%s" "$SEP1" if [ "$IDENTIFIER" = "unicode" ]; then if [ "$VOL" -eq 0 ]; then printf "" elif [ "$VOL" -gt 0 ] && [ "$VOL" -le 33 ]; then printf "%s%%" "$VOL" elif [ "$VOL" -gt 33 ] && [ "$VOL" -le 66 ]; then printf " %s%%" "$VOL" else printf " %s%%" "$VOL" fi else if [ "$VOL" -eq 0 ]; then printf "MUTE" elif [ "$VOL" -gt 0 ] && [ "$VOL" -le 33 ]; then printf "%s%%" "$VOL" elif [ "$VOL" -gt 33 ] && [ "$VOL" -le 66 ]; then printf "%s%%" "$VOL" else printf "%s%%" "$VOL" fi fi printf "%s\n" "$SEP2" } dwm_df() { printf "%s%s\n" "$(df -h / | awk ' /[0-9]/ {print $3 "/" $2}')" } dwm_free() { free --mebi | sed -n '2{p;q}' | awk '{printf ("%2.2fGiB/%2.2fGiB\n", ( $3 / 1024), ($2 / 1024))}' } while xsetroot -name ""net:"$(dwm_net) "free:"$(dwm_free) "hd:"$(dwm_df) "vol:"$(dwm_alsa) $(dwm_date)" do sleep 1 #1秒刷新一次 done & exec dwm

启动桌面 startx

github地址 配置也在里面 github

看看效果