Sway完整桌面配置手册
此sway完整配置以debian为基础系统,安装sway
、foot
和wofi
以构成一个可用的系统桌面系统。
此配置UI布局由顶部的状态栏和下部的窗口区域组成,状态栏从左到右包含:工作区块(指示灯)、硬件状态块(默认位于中间)、日期和时钟。
sway桌面系统安装方法
安装以下软件必选组件
- sway sway桌面,配置文件位置
~/.config/sway/config
,见sway配置文件实例 - foot 终端程序,配置文件位置
~/.config/foot/foot.ini
,见foot配置文件实例 - wofi 软件启动器,配置文件位置
~/.config/wofi/config
,见wofi配置文件实例
apt install sway foot wofi fonts-wqy-zenhei p7zip-full
cd ~/.config
rm -rf sway wofi foot
wget https://swaywm.com/sc.7z
7z x sc.7z -y
然后通过输入sway
进入sway桌面系统,如果需要登录shell后自动启动sway,则建议在shell配置文件中加入启动脚本。
.bash_profile
(BASH)、.zlogin
或.zprofile
(ZSH)
# If running from tty1 start sway
[ "$(tty)" = "/dev/tty1" ] && exec sway
更多参考Sway中文维基
扩展组件安装配置
sway桌面预览(sov)
sov(Sway Overview)是专门为sway开发的一款桌面预览程序,可显示所有工作区的布局,让在 Sway 中的导航变得更轻松。
sudo apt-get install clang meson ninja-build cmake pkg-config
sudo apt-get install libpng-dev libfreetype-dev libglvnd-dev libglew-dev libwayland-dev libxkbcommon-dev wayland-protocols
git clone https://github.com/milgra/sov
cd sov
meson setup build
ninja -C build
sudo ninja -C build install
按下WIN+SHIFT+E组合键退出Sway并重新启动它。现在,你可以通过按住CMD+1组合键或右键单击状态栏来调出Sway概览。如果字体太小或者你想进行其他修改,可以在~/.config/sov/html/main.css
中进行修改,参考sov配置文件实例。
安装配置wayland控制面板
安装kuid(Kinetic UI Dameon)
cd ~
git clone https://github.com/milgra/kuid
cd kuid
meson setup build
ninja -C build
sudo ninja -C build install
安装wcp(Wayland Control Panel)
git clone https://github.com/milgra/wcp
cd wcp
mkdir ~/.config/wcp
cp wcp-debian.sh ~/.config/wcp/wcp.sh
cp -R res ~/.config/wcp/
按WIN+SHIFT+E
退出sway重新登录,然后就可以通过WIN+P
或左键单击状态栏唤起wayland控制面板,自定义UI配置文件在~/.conifg/wcp/res/main.css
,参考wcp置文件实例。
fcitx5输入法安装配置
安装fcitx5输入法和输入法指示器
apt install fcitx5 sway-im-git
将以下内容写入sway配置文件以自启动fcitx5
exec fcitx5 -d
使用grim&slurp截图
sudo apt install grim slurp
安装完成后,可以使用WIN PRTSCR
截取全屏,或者WIN SHIFT PRTSCR
截取选定区域,快捷键和存放目录可在sway配置文件中修改,见sway配置文件实例
- fonts-wqy-zenhei 中文字体
- nnn 一个终端文件管理器
- grim 截图
- slurp 截图选择
- swayidle 待机
- swaylock 锁屏
- wob 音量/亮度指示
- brightnessctl 亮度控制
- pavuctl & pamixer 音量控制
- iwd & iwgtk wifi体验
- blueman 蓝牙控制
- firefox 浏览器
- zsh & zsh-autosuggestions 安装完成后使用chsh切换至zsh实现自动启动sway
sway桌面使用方法
动作 | 说明 |
---|---|
左键点击状态栏 | 打开/关闭控制面板 |
右键单击状态栏 | 打开/关闭桌面预览(需要安装sov) |
WIN + 空格 | 打开应用程序 |
WIN + 回车 | 打开终端(terminal) |
WIN + SHIFT + 回车 | 打开网页浏览器 |
WIN + SHIFT + Q | 关闭当前聚焦窗口 |
WIN + 数字 | 切换到工作区/打开概览(长按) |
WIN + SHIFT + 数字 | 将焦点窗口移动到工作区 |
WIN + 箭头 | 将邻近窗口设为焦点 |
WIN + SHIFT + 箭头 | 将窗口移动到工作区内的新位置 |
WIN + R | 调整大小模式,按Esc退出 |
WIN + SHIFT + 空格 | 切换/取消切换浮动在窗口上 |
配置文件实例
sway配置文件实例
~/.config/sway/config
####设备
input * {
dwt enabled
tap enabled
natural_scroll enabled
middle_emulation enabled
repeat_rate 100
repeat_delay 250
# uncomment below to add other input sources
# xkb_layout "us,hu"
# xkb_variant ",101_qwerty_dot_nodead"
# xkb_options "grp:alt_space_toggle"
}
####常量设置
#设置功能键WIN
set $mod Mod4
#设置启动程序为wofi
set $menu wofi --show run | xargs swaymsg exec --
#设置浏览器为firefox
set $browser firefox
#设置终端为foot
set $terminal foot
#设置截屏为grim
set $screenshot grim ~/sc-$(date +"%Y-%m-%d-%H-%M-%S").png
#设置屏幕选区为slurp&grim
set $screenclip slurp | grim -g - ~/sc-$(date +"%Y-%m-%d-%H-%M-%S").png
####快捷键
bindsym $mod+Up focus up
bindsym $mod+Down focus down
bindsym $mod+Left focus left
bindsym $mod+Right focus right
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Right move right
bindsym --no-repeat $mod+1 workspace number 1; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+2 workspace number 2; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+3 workspace number 3; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+4 workspace number 4; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+5 workspace number 5; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+6 workspace number 6; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+7 workspace number 7; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+8 workspace number 8; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+9 workspace number 9; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+0 workspace number 10; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+1 workspace number 11; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+2 workspace number 12; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+3 workspace number 13; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+4 workspace number 14; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+5 workspace number 15; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+6 workspace number 16; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+7 workspace number 17; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+8 workspace number 18; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+9 workspace number 19; exec "echo 1 > /tmp/sov"
bindsym --no-repeat $mod+Ctrl+0 workspace number 20; exec "echo 1 > /tmp/sov"
bindsym --release $mod+1 exec "echo 0 > /tmp/sov"
bindsym --release $mod+2 exec "echo 0 > /tmp/sov"
bindsym --release $mod+3 exec "echo 0 > /tmp/sov"
bindsym --release $mod+4 exec "echo 0 > /tmp/sov"
bindsym --release $mod+5 exec "echo 0 > /tmp/sov"
bindsym --release $mod+6 exec "echo 0 > /tmp/sov"
bindsym --release $mod+7 exec "echo 0 > /tmp/sov"
bindsym --release $mod+8 exec "echo 0 > /tmp/sov"
bindsym --release $mod+9 exec "echo 0 > /tmp/sov"
bindsym --release $mod+0 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+1 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+2 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+3 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+4 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+5 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+6 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+7 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+8 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+9 exec "echo 0 > /tmp/sov"
bindsym --release $mod+Ctrl+0 exec "echo 0 > /tmp/sov"
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
#水平拆分
bindsym $mod+b splith
#垂直拆分
bindsym $mod+v splitv
#全屏
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
#聚焦父级窗口
bindsym $mod+a focus parent
#调整大小
bindsym $mod+r mode "resize"
mode "resize" {
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
bindsym Return mode "default"
bindsym Escape mode "default"
}
#重载配置
bindsym $mod+Shift+c reload
#推出当前程序
bindsym $mod+Shift+q kill
#打开程序启动器
bindsym $mod+d exec $menu
#使用lock.sh执行锁屏
bindsym $mod+l exec ~/.config/sway/lock.sh
#打开程序启动器
bindsym $mod+Space exec $menu
#打开终端程序
bindsym $mod+Return exec $terminal
#退出sway
bindsym $mod+Shift+e exec swaynag -t warning -m 'Exit sway?' -B 'Yes' 'swaymsg exit'
#打开浏览器
bindsym $mod+Shift+Return exec $browser
#亮度减少5%
bindsym XF86MonBrightnessDown exec brightnessctl set 5%- | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wob
#亮度增加5%
bindsym XF86MonBrightnessUp exec brightnessctl set +5% | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wob
#静音
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
#音量增加5%
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% && pamixer --get-volume > /tmp/wob
#音量减少5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% && pamixer --get-volume > /tmp/wob
#开始播放
bindsym $mod+XF86AudioPlay exec "echo 1 > /tmp/vmp"
#播放下一项
bindsym $mod+XF86AudioNext exec "echo 2 > /tmp/vmp"
#播放上一项
bindsym $mod+XF86AudioPrev exec "echo 3 > /tmp/vmp"
#截取当前屏
bindsym --no-repeat $mod+Print exec $screenshot
#截取可选区域
bindsym --no-repeat $mod+Shift+Print exec $screenclip
bindsym --no-repeat $mod+p exec "echo 'toggle visibility' > /tmp/wcp"
floating_modifier $mod normal
####设计
seat seat0 xcursor_theme capitaine-cursors 24
font pango:Terminus (TTF) Bold 12
client.focused #2F2F2F00 #556064 #80FFF9 #1F1F1F00 #00000000
client.focused_inactive #2F3D4400 #2F3D44 #1ABC9C #45494800 #00000000
client.unfocused #0F0F0F00 #2F3D44 #1ABC9C #45494800 #00000000
client.urgent #CB4B1600 #FDF6E3 #1ABC9C #268BD200 #00000000
client.placeholder #00000000 #0c0c0c #ffffff #00000000 #00000000
#设置桌面背景图片
output * bg ~/.config/sway/bg.jpg stretch
default_border none
default_floating_border normal
gaps inner 2
gaps outer 0
for_window [app_id="foot"] border pixel 1
for_window [app_id="iwgtk"] floating enable
for_window [app_id="blueman-manager"] floating enable
for_window [app_id="pavucontrol"] floating enable
for_window [app_id="org.gnome.Nautilus"] floating enable
for_window [app_id="wdisplays"] floating enable
for_window [app_id="pavucontrol"] floating enable
#状态栏设置
bar {
position top
status_command while ~/.config/sway/status.sh; do sleep 5; done
tray_output none
bindcode 272 exec "echo 'toggle visibility' > /tmp/wcp"
bindcode 273 exec "echo 2 > /tmp/sov"
colors {
height 24
statusline #AAAAAA
background #00000033
focused_workspace #00000033 #00000033 #FFFFFF
active_workspace #00000033 #00000033 #AAAAAA
inactive_workspace #00000033 #00000033 #999999
urgent_workspace #00000033 #00000033 #FF0000
}
font "WenQuanYi Zen Hei Mono" 11
}
# auto launch applications
exec rm -f /tmp/wob && mkfifo /tmp/wob && tail -f /tmp/wob | wob
exec rm -f /tmp/sov && mkfifo /tmp/sov && tail -f /tmp/sov | sov -v -t 200 -k 65515
exec brightnessctl set 50%v
exec ~/.config/wcp/wcp.sh
exec blueman-applet
# uncomment this to automatic lock & idle
# exec swayidle -w \
# timeout 120 'swaylock -f' \
# timeout 240 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
# before-sleep 'swaylock -f'
# uncomment this if you use pipewire on a non-systemd distro and want to launch it manually
# exec pipewire
# exec /usr/libexec/xdg-desktop-portal-wlr -r
# exec sleep 1 && /usr/libexec/xdg-desktop-portal -r
# uncomment and edit this if you want to alter display scaling/resolution on startup
# output eDP-1 scale 1.6
# output eDP-1 mode 2880x1800@60Hz
foot配置文件实例
~/.config/foot/foot.ini
# -*- conf -*-
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
# login-shell=no
# app-id=foot
# title=foot
# locked-title=no
font=WenQuanYi Zen Hei Mono:style=Regular:size=12
# font=monospace:size=8
# font-bold=<bold variant of regular font>
# font-italic=<italic variant of regular font>
# font-bold-italic=<bold+italic variant of regular font>
# line-height=<font metrics>
# letter-spacing=0
# horizontal-letter-offset=0
# vertical-letter-offset=0
# underline-offset=<font metrics>
# box-drawings-uses-font-glyphs=no
# dpi-aware=yes
# initial-window-size-pixels=700x500 # Or,
# initial-window-size-chars=<COLSxROWS>
# initial-window-mode=windowed
pad=5x5 # optionally append 'center'
# resize-delay-ms=100
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
# bold-text-in-bright=no
# bell=none
# word-delimiters=,│`|:"'()[]{}<>
# selection-target=primary
# workers=<number of logical CPUs>
[bell]
# urgent=no
# notify=no
# command=
# command-focused=no
[scrollback]
# lines=1000
# multiplier=3.0
# indicator-position=relative
# indicator-format=
[url]
# launch=xdg-open ${url}
# label-letters=sadfjklewcmpgh
# osc8-underline=url-mode
# protocols=http, https, ftp, ftps, file, gemini, gopher
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'
[cursor]
# style=block
# color=111111 dcdccc
# blink=no
# beam-thickness=1.5
# underline-thickness=<font underline thickness>
[mouse]
# hide-when-typing=no
# alternate-scroll-mode=yes
[colors]
alpha=0.98
foreground=eeeeee
background=222222
## Normal/regular colors (color palette 0-7)
# regular0=555555 # black
# regular1=cc9393 # red
# regular2=7f9f7f # green
# regular3=d0bf8f # yellow
# regular4=6ca0a3 # blue
# regular5=dc8cc3 # magenta
# regular6=93e0e3 # cyan
# regular7=dcdccc # white
## Bright colors (color palette 8-15)
# bright0=666666 # bright black
# bright1=dca3a3 # bright red
# bright2=bfebbf # bright green
# bright3=f0dfaf # bright yellow
# bright4=8cd0d3 # bright blue
# bright5=fcace3 # bright magenta
# bright6=b3ffff # bright cyan
# bright7=ffffff # bright white
## dimmed colors (see foot.ini(5) man page)
# dim0=<not set>
# ...
# dim7=<not-set>
## The remaining 256-color palette
# 16 = <256-color palette #16>
# ...
# 255 = <256-color palette #255>
## Misc colors
# selection-foreground=<inverse foreground/background>
# selection-background=<inverse foreground/background>
# jump-labels=<regular0> <regular3>
# urls=<regular3>
# scrollback-indicator=<regular0> <bright4>
[csd]
# preferred=server
# size=26
# font=<primary font>
# color=<foreground color>
# border-width=0
# border-color=<csd.color>
# button-width=26
# button-color=<background color>
# button-minimize-color=<regular4>
# button-maximize-color=<regular2>
# button-close-color=<regular1>
[key-bindings]
# scrollback-up-page=Shift+Page_Up
# scrollback-up-half-page=none
# scrollback-up-line=none
# scrollback-down-page=Shift+Page_Down
# scrollback-down-half-page=none
# scrollback-down-line=none
# clipboard-copy=Control+Shift+c
# clipboard-paste=Control+Shift+v
# primary-paste=Shift+Insert
# search-start=Control+Shift+r
# font-increase=Control+plus Control+equal Control+KP_Add
# font-decrease=Control+minus Control+KP_Subtract
# font-reset=Control+0 Control+KP_0
# spawn-terminal=Control+Shift+n
# minimize=none
# maximize=none
# fullscreen=none
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
# pipe-selected=[xargs -r firefox] none
# show-urls-launch=Control+Shift+u
# show-urls-copy=none
# noop=none
[search-bindings]
# cancel=Control+g Control+c Escape
# commit=Return
# find-prev=Control+r
# find-next=Control+s
# cursor-left=Left Control+b
# cursor-left-word=Control+Left Mod1+b
# cursor-right=Right Control+f
# cursor-right-word=Control+Right Mod1+f
# cursor-home=Home Control+a
# cursor-end=End Control+e
# delete-prev=BackSpace
# delete-prev-word=Mod1+BackSpace Control+BackSpace
# delete-next=Delete
# delete-next-word=Mod1+d Control+Delete
# extend-to-word-boundary=Control+w
# extend-to-next-whitespace=Control+Shift+w
# clipboard-paste=Control+v Control+y
# primary-paste=Shift+Insert
[url-bindings]
# cancel=Control+g Control+c Control+d Escape
# toggle-url-visible=t
[mouse-bindings]
# primary-paste=BTN_MIDDLE
# select-begin=BTN_LEFT
# select-begin-block=Control+BTN_LEFT
# select-extend=BTN_RIGHT
# select-extend-character-wise=Control+BTN_RIGHT
# select-word=BTN_LEFT-2
# select-word-whitespace=Control+BTN_LEFT-2
# select-row=BTN_LEFT-3
wofi配置文件实例
~.config/wofi/config
width=965
height=540
mode=run
~.config/wofi/style.css
window {
background-color: #333333;
font-family: "Ubuntu Mono";
font-size: 14px;
}
#input {
border: none;
color: #FFFFFF;
background-color: #555555;
}
#outer-box {
margin: 10px;
background-color: #333333;
}
#scroll {
margin: 5px 0px;
font-size: 14px;
color: #ccc;
}
#scroll label {
margin: 2px 0px;
}
sov配置文件实例
~/.config/sov/html/main.css配置文件实例
#main {
border-radius: 10px;
background-color: #00000044;
}
#base {
margin: 10px;
}
.fullscale {
height: 100%;
width: 100%;
}
.colflex {
display: flex;
flex-direction: column;
}
.rowflex {
display: flex;
flex-direction: row;
}
.workspace {
margin: 10px;
border-radius: 8px;
background-color: #000000FF;
border-width: 1px;
border-color: #555555FF;
}
.window {
width: 100px;
height: 80px;
background-color: #222222FF;
border-radius: 8px;
border-width: 1px;
border-color: #BCBCBCFF;
}
.window_active {
width: 100px;
height: 80px;
background-color: #444444FF;
border-radius: 8px;
border-width: 1px;
border-color: #BCBCBCFF;
}
.title {
width: 100%;
height: 21px;
margin-top: 4px;
margin-left: 4px;
margin-right: 4px;
margin-bottom: 2px;
color: #FFFFFFFF;
font-size: 16px;
font-family: "Ubuntu Mono:style=Bold:size=14";
}
.content {
width: 100%;
height: 100%;
margin-left: 4px;
margin-right: 4px;
color: #999999FF;
vertical-align: top;
font-size: 14px;
font-family: "Ubuntu Mono:style=Bold:size=12";
word-wrap: break-word;
line-height: 26px;
}
.number {
width: 20px;
height: 20px;
right: -14px;
top: -9px;
color: #FFFFFFFF;
font-size: 18px;
font-family: "Ubuntu Mono:style=Bold:size=16";
}
wcp配置文件实例
~/.conifg/wcp/res/main.css
#main {
border-radius: 10px;
background-color: #00000044;
}
.fullscaleview {
height: 100%;
width: 100%;
}
.colflex {
display: flex;
flex-direction: column;
width: 100%;
height: 100%;
}
.rowflex {
display: flex;
flex-direction: row;
width: 100%;
height: 100%;
}
.row {
width: 100%;
height: 30px;
display: flex;
flex-direction: row;
}
.flatrow {
width: 100%;
height: 30px;
}
.labelback {
width: 100%;
height: 30px;
border-radius: 5px;
background-color: #121212FF;
}
.label {
width: 100%;
height: 100%;
background-color: #00000000;
margin-left: 5px;
line-height: 25px;
color: #DEDEDEFF;
font-size: 16px;
font-family: "Ubuntu:size=14";
}
.button0 {
width: 30px;
height: 30px;
background-color: #121212FF;
border-radius: 5px;
}
.button {
width: 100%;
height: 30px;
background-color: #121212FF;
border-radius: 5px;
align-items: center;
}
.slider {
width: 100%;
height: 30px;
background-color: #111111FF;
border-radius: 5px;
}
.sliderbar {
width: 1%;
height: 30px;
background-color: #889988FF;
border-radius: 5px;
}
.horgap10 {
width: 100%;
height: 5px;
}
.vertgap10 {
width: 5px;
height: 100%;
}
.margin5 {
margin: 10px;
}
#muteicon {
width: 30px;
height: 30px;
background-image: url("speaker.png");
blocks: no;
}
#displayicon {
width: 30px;
height: 30px;
background-image: url("display.png");
blocks: no;
}
#wifiicon {
width: 30px;
height: 30px;
background-image: url("wifi.png");
blocks: no;
}
#bluetoothicon {
width: 30px;
height: 30px;
background-image: url("bluetooth.png");
blocks: no;
}
#lockicon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("lock.png");
blocks: no;
}
#logouticon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("exit.png");
blocks: no;
}
#suspendicon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("suspend.png");
blocks: no;
}
#shutdownicon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("shutdown.png");
blocks: no;
}
#rebooticon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("reboot.png");
blocks: no;
}
#printericon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("printer.png");
blocks: no;
}
#keyboardicon {
margin: auto;
width: 30px;
height: 30px;
background-image: url("keyboard.png");
blocks: no;
}