LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2461|回复: 22

compiz独立做wm的桌面。

[复制链接]
发表于 2009-5-7 12:59:31 | 显示全部楼层 |阅读模式
.xinitrc
          feh --bg-center /mnt/media/Picture/壁纸/4248026_1244.jpg
          compiz --loose-binding --sm-disable --ignore-desktop-hints ccp &
          exec tint2
任务栏用使用AUR中的tint2-svn,程序菜单使用AUR中的compiz-deskmenu。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2009-5-7 13:38:38 | 显示全部楼层
是不是比xbox强? 我简化的用法,都用了几个月了,先是用compiz,后来感觉有些拖累机器,换用metacity了,不用开compositor
回复 支持 反对

使用道具 举报

发表于 2009-5-7 16:07:00 | 显示全部楼层
不行,X起不来的
贴出你完整的  .xinitrc
回复 支持 反对

使用道具 举报

发表于 2009-5-7 17:52:18 | 显示全部楼层
桌面上哪个菜单是怎么弄的,conmpiz带的那个好像不能*出菜单吧
回复 支持 反对

使用道具 举报

发表于 2009-5-7 18:10:02 | 显示全部楼层
我现在觉得很可能是lxde
回复 支持 反对

使用道具 举报

发表于 2009-5-7 18:19:11 | 显示全部楼层
好像三星最新的一款手机就是用compiz的一小部分来做桌面的。
回复 支持 反对

使用道具 举报

发表于 2009-5-7 18:19:38 | 显示全部楼层

我的xinitrc

[j@myhost ~]$ cat /etc/xdg/jdesktop/xinitrc
#!/bin/sh

# fix broken $UID on some system...
#if test "x$UID" = "x"; then
#        if test -x /usr/xpg4/bin/id; then
#                UID=`/usr/xpg4/bin/id -u`;
#        else
#                UID=`id -u`;
#        fi
#fi

# $XDG_CONFIG_HOME defines the base directory relative to which user specific
# configuration files should be stored. If $XDG_CONFIG_HOME is either not set
# or empty, a default equal to $HOME/.config should be used.
#if test "x$XDG_CONFIG_HOME" = "x" ; then
#  XDG_CONFIG_HOME=$HOME/.config
#fi
#[ -d "$XDG_CONFIG_HOME" ] || mkdir "$XDG_CONFIG_HOME"

# $XDG_CACHE_HOME defines the base directory relative to which user specific
# non-essential data files should be stored. If $XDG_CACHE_HOME is either not
# set or empty, a default equal to $HOME/.cache should be used.
#if test "x$XDG_CACHE_HOME" = "x" ; then
#  XDG_CACHE_HOME=$HOME/.cache
#fi
#[ -d "$XDG_CACHE_HOME" ] || mkdir "$XDG_CACHE_HOME"

# For now, start with an empty list
#XRESOURCES=""

# Has to go prior to merging Xft.xrdb, as its the "Defaults" file
#test -r "/etc/xdg/jdesktop/Xft.xrdb" && XRESOURCES="$XRESOURCES /etc/xdg/jdesktop/Xft.xrdb"
#test -r $HOME/.Xdefaults && XRESOURCES="$XRESOURCES $HOME/.Xdefaults"

#BASEDIR=$XDG_CONFIG_HOME/jdesktop
#if test -r "$BASEDIR/Xft.xrdb"; then
#  XRESOURCES="$XRESOURCES $BASEDIR/Xft.xrdb"
#elif test -r "$XFCE4HOME/Xft.xrdb"; then
#  mkdir -p "$BASEDIR"
#  cp "$XFCE4HOME/Xft.xrdb" "$BASEDIR"/
#  XRESOURCES="$XRESOURCES $BASEDIR/Xft.xrdb"
#fi

# merge in X cursor settings
#test -r "$BASEDIR/Xcursor.xrdb" && XRESOURCES="$XRESOURCES $BASEDIR/Xcursor.xrdb"

# ~/.Xresources contains overrides to the above
#test -r "$HOME/.Xresources" && XRESOURCES="$XRESOURCES $HOME/.Xresources"

# load all X resources (adds /dev/null to avoid an empty list that would hang the process)
#cat /dev/null $XRESOURCES | xrdb -nocpp -merge -

# load local modmap
#test -r $HOME/.Xmodmap && xmodmap $HOME/.Xmodmap

# Use dbus-launch if installed.
if test x"$DBUS_SESSION_BUS_ADDRESS" = x""; then
        dbuslaunch=`which dbus-launch`
        if test x"$dbuslaunch" != x"" -a x"$dbuslaunch" != x"no"; then
                eval `$dbuslaunch --sh-syntax --exit-with-session`
        fi
fi


##################
# IMPORTANT NOTE #
##################

# Everything below here ONLY gets executed if you are NOT using jdesktop-session
# (jDesktop's session manager).  If you are using the session manager, everything
# below is handled by it, and the code below is not executed at all.  If you're
# not sure if you're using the session manager, type 'ps -e|grep jdesktop-session'
# in a terminal while jdesktop is running.

##################


# this is only necessary when running w/o xfce4-session
#xsetroot -solid dark -cursor_name watch

# or use old-fashioned startup script otherwise
#xfwm4 --daemon
#fusion-icon -u
#BGL_ALWAYS_INDIRECT=1 INTEL_BATCH=1 compiz --replace --indirect-rendering --sm-disable ccp &
metacity --sm-disable --no-composite &
sleep 1
#avant-window-navigator
#gnome-settings-daemon
#gnome-power-manager
#sleep 1
#gnome-panel
#lxpanel
#xterm
#xsetroot -bitmap /home/j/Books/SCTOs.xbm #-bg black -fg red  -solid black -cursor_name watch
#Wallpaper shifts between day and night and appears over differences on weekend
TIME=`env LANG="en_US.UTF-8" date`
day_night ()
{
  shift=0
  if [ $1 -lt 6 ]
  then
    shift=-1
  fi
  if [ $1 -ge 19 ]
  then
    shift=1
  fi
  echo $shift
}
day_week ()
{
  shift=0
  if [ $1 == "Fri" ]
  then
    shift=1
  fi
  if [ $1 == "Sat" ]
  then
    shift=2
  fi
  if [ $1 == "Sun" ]
  then
    shift=3
  fi
  echo $shift
}
WALL_DAY="/Share/Walls/TobagoCays.jpg"
WALL_NIGHT="/Share/Walls/marstwins.jpg"
WALL_WEEK_DAY="/Share/Walls/beach.jpg"
WALL_WEEK_NIGHT="/Share/Walls/Sealife.jpg"
WALL=
SHIFT_DAY=$(day_night `echo $TIME|cut -d" " -f4|cut -d":" -f1`)
SHIFT_WEEK=$(day_week `echo $TIME|cut -d" " -f1`)
if [ $SHIFT_WEEK -eq 0 ]
then
  if [ $SHIFT_DAY -eq 0 ]
  then
    WALL=$WALL_DAY
  else
    WALL=$WALL_NIGHT
  fi
fi
if [ $SHIFT_WEEK -eq 1 ]
then
  if [ $SHIFT_DAY -eq 0 ]
  then
    WALL=$WALL_DAY
  fi
  if [ $SHIFT_DAY -eq -1 ]
  then
    WALL=$WALL_NIGHT
  fi
  if [ $SHIFT_DAY -eq 1 ]
  then
    WALL=$WALL_WEEK_NIGHT
  fi
fi
if [ $SHIFT_WEEK -eq 2 ]
then
  if [ $SHIFT_DAY -eq 0 ]
  then
    WALL=$WALL_WEEK_DAY
  fi
  if [ $SHIFT_DAY -eq 1 ]
  then
    WALL=$WALL_WEEK_NIGHT
  fi
fi
if [ $SHIFT_WEEK -eq 3 ]
then
  if [ $SHIFT_DAY -eq 0 ]
  then
    WALL=$WALL_WEEK_DAY
  fi
  if [ $SHIFT_DAY -eq -1 ]
  then
    WALL=$WALL_WEEK_NIGHT
  fi
  if [ $SHIFT_DAY -eq 1 ]
  then
    WALL=$WALL_NIGHT
  fi
fi
Esetroot -fit $WALL &
#Esetroot -fit /Share/Walls/marstwins.jpg &
sleep 2
syndaemon -t -d
batterymon &
#stalonetray &
tilda & # use F1 toggle
#env LANG="zh_CN.UTF-8" conky -y 700 -d
#adesklets --do-it-once
#ibus-daemon -r -x -d
#sleep 1
env LANG="zh_CN.UTF-8" bmpanel #arch
#env LANG="zh_CN.UTF-8" icewm
回复 支持 反对

使用道具 举报

发表于 2009-5-7 18:20:48 | 显示全部楼层

logout X

[j@myhost ~]$ cat /usr/local/bin/kill_X
#!/bin/sh
if [ `pidof -s syndaemon` ]; then
        #echo syndaemon
        killall -9 syndaemon
fi
if [ `pidof -s $3` ]; then
        killall -9 $3
fi
if [ `pidof -s $2` ]; then
        killall -9 $2
fi
sleep 1

======================
比较正规的方式是写一个sessionmanager封装一下主要的X client,比如bmpanel, 但这样多了一个后台程序还麻烦,所以干脆不弄了

while [ `pidof -s $1` ]
do
        killall -9 $1
        sleep 5
done
exit
回复 支持 反对

使用道具 举报

发表于 2009-5-7 18:33:36 | 显示全部楼层
compiz-deskmenu使用F2绑定

常用程序也通过metacity键值绑定
回复 支持 反对

使用道具 举报

发表于 2009-5-7 18:39:28 | 显示全部楼层
deskmenu可以脱离compiz单独使用
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表