[经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

讨论openbox,awesome,FVWM等WM
回复
头像
大宝
帖子: 2869
注册时间: 2008-06-30 22:32
送出感谢: 0
接收感谢: 10 次
联系:

[经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#1

帖子 大宝 » 2011-01-08 11:38

许多朋友在进行系统美化时常会用到 Gnome 主菜单,但压在主菜单图标左下角的那个三角小箭头总是让人看得不爽——感觉就好似维纳斯的脸了长了一颗带毛的媒婆痣
:em20
20110108_001.png
为了便于观看,我把截图给放大了。
看到左下角那个三角箭头没?
20110108_001.png (8.83 KiB) 查看 3039 次
现在就让我们来灭掉这个箭头!

动手前,先来看看完成之后的效果吧~
20110108_002.png
没了三角箭头,是不是清爽多了?
20110108_002.png (8.69 KiB) 查看 3039 次
实施步骤:
1、准备编译环境

代码: 全选

sudo apt-get build-dep gnome-panel
你可能还会需要到支持包

代码: 全选

sudo apt-get install libgnomeui-dev
2、下载 gnome-panel 的源码

代码: 全选

apt-get source gnome-panel
3、下载完成后,在你的家目录中可以看到下载的压缩包(以“.tar.gz”),就地解压,进入解压出的文件夹,用以下命令打开并编辑配置文件

代码: 全选

gedit /gnome-panel/panel-menu-button.c 
在其中查找 "has-arrow" 字段(带引号),将原来的值 TRUE 改为 FALSE,保存退出

4、开始“编译三步曲”
注意:其中的“★”是你的 CPU核数 +1;若是单核,就不必使用“-j★”参数了

代码: 全选

 ./configure 
make -j★
sudo make install
5、看一下效果吧~

代码: 全选

sudo killall gnome-panel 
头像
zkwlx
帖子: 989
注册时间: 2009-10-09 12:54
系统: debian
来自: 北京某胡同
送出感谢: 3 次
接收感谢: 2 次

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#2

帖子 zkwlx » 2011-01-08 11:42

支持一个,不过感觉用处不大啊,觉得那个小三角也挺好看的 :em04
头像
daf3707
论坛版主
帖子: 12672
注册时间: 2007-06-13 15:57
来自: 在他乡
送出感谢: 49 次
接收感谢: 85 次

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#3

帖子 daf3707 » 2011-02-28 19:55

daf@ubuntu:~/gnome-panel-2.30.2$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether NLS is requested... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for intltool >= 0.40.0... 0.41.1 found
checking for intltool-update... /usr/bin/intltool-update
checking for intltool-merge... /usr/bin/intltool-merge
checking for intltool-extract... /usr/bin/intltool-extract
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.10.1
checking for XML::Parser... ok
checking for library containing strerror... none required
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a sed that does not truncate output... /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether gcc and cc understand -c and -o together... yes
checking for python... /usr/bin/python
checking for python version... 2.6
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.6/dist-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.6/dist-packages
checking for glib-genmarshal... /usr/bin/glib-genmarshal
checking for gconftool-2... /usr/bin/gconftool-2
checking whether gcc understands -Wno-sign-compare... yes
checking what warning flags to pass to the C compiler... -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-sign-compare
checking what language compliance flags to pass to the C compiler...
checking crt_externs.h usability... no
checking crt_externs.h presence... no
checking for crt_externs.h... no
checking for _NSGetEnviron... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for EGG_SMCLIENT... yes
checking for PANEL... yes
checking for LIBPANEL_APPLET... yes
checking for FISH... yes
checking for NOTIFICATION_AREA... yes
checking for WNCKLET... yes
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking for nl_langinfo... yes
checking for evolution-data-server... yes
checking for CLOCK... yes
checking for CLOCK_MECHANISM... yes
checking for POLKIT... yes
checking for NETWORK_MANAGER... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for d_type member in directory struct... yes
checking for X... libraries , headers
checking for X... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... (cached) /usr/bin/msgfmt
checking for dcgettext... yes
checking if msgfmt accepts -c... yes
checking for gmsgfmt... (cached) /usr/bin/msgfmt
checking for xgettext... (cached) /usr/bin/xgettext
checking for gtkdoc-check... /usr/bin/gtkdoc-check
checking for gtkdoc-rebase... /usr/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /usr/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no
checking gnome-doc-utils >= 0.3.2... yes
Using config source xml:merged:/etc/gconf/gconf.xml.defaults for schema installation
Using $(sysconfdir)/gconf/schemas as install directory for schema files
checking for mawk... /usr/bin/mawk
checking for perl5... no
checking for perl... /usr/bin/perl
configure: creating ./config.status
config.status: creating Makefile
config.status: creating idl/Makefile
config.status: creating icons/Makefile
config.status: creating icons/16x16/Makefile
config.status: creating icons/22x22/Makefile
config.status: creating icons/24x24/Makefile
config.status: creating icons/32x32/Makefile
config.status: creating icons/48x48/Makefile
config.status: creating icons/scalable/Makefile
config.status: creating gnome-panel/Makefile
config.status: creating gnome-panel/libegg/Makefile
config.status: creating gnome-panel/libpanel-util/Makefile
config.status: creating gnome-panel/gnome-panel.desktop.in
config.status: creating libpanel-applet/libpanelapplet-2.0.pc
config.status: creating libpanel-applet/libpanelapplet-2.0-uninstalled.pc
config.status: creating libpanel-applet/Makefile
config.status: creating po/Makefile.in
config.status: creating applets/Makefile
config.status: creating applets/clock/Makefile
config.status: creating applets/clock/pixmaps/Makefile
config.status: creating applets/fish/Makefile
config.status: creating applets/notification_area/Makefile
config.status: creating applets/wncklet/Makefile
config.status: creating doc/Makefile
config.status: creating doc/reference/Makefile
config.status: creating doc/reference/panel-applet/Makefile
config.status: creating help/Makefile
config.status: creating help/clock/Makefile
config.status: creating help/fish/Makefile
config.status: creating man/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing po/stamp-it commands

gnome-panel 2.30.2
==================

prefix: /usr/local
exec_prefix: ${prefix}
libdir: ${exec_prefix}/lib
bindir: ${exec_prefix}/bin
sbindir: ${exec_prefix}/sbin
sysconfdir: ${prefix}/etc
localstatedir: ${prefix}/var
datadir: ${datarootdir}
source code location: .
compiler: gcc
cflags: -g -O2
Maintainer mode: no
Warn about deprecations: no

Applets to build in-process: (none)
Evolution-Data-Server support: yes
PolicyKit support: yes
NetworkManager support: yes
XRandr support: yes
Build gtk-doc documentation: no
daf@ubuntu:~/gnome-panel-2.30.2$ make
make all-recursive
make[1]: 正在进入目录 `/home/daf/gnome-panel-2.30.2'
Making all in po
make[2]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/po'
make[2]: 没有什么可以做的为 `all'。
make[2]:正在离开目录 `/home/daf/gnome-panel-2.30.2/po'
Making all in idl
make[2]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/idl'
make[2]: 没有什么可以做的为 `all'。
make[2]:正在离开目录 `/home/daf/gnome-panel-2.30.2/idl'
Making all in icons
make[2]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons'
Making all in 16x16
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons/16x16'
make[3]: 没有什么可以做的为 `all'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons/16x16'
Making all in 22x22
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons/22x22'
make[3]: 没有什么可以做的为 `all'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons/22x22'
Making all in 24x24
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons/24x24'
make[3]: 没有什么可以做的为 `all'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons/24x24'
Making all in 32x32
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons/32x32'
make[3]: 没有什么可以做的为 `all'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons/32x32'
Making all in 48x48
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons/48x48'
make[3]: 没有什么可以做的为 `all'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons/48x48'
Making all in scalable
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons/scalable'
make[3]: 没有什么可以做的为 `all'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons/scalable'
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/icons'
make[3]: 没有什么可以做的为 `all-am'。
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons'
make[2]:正在离开目录 `/home/daf/gnome-panel-2.30.2/icons'
Making all in gnome-panel
make[2]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/gnome-panel'
make all-recursive
make[3]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/gnome-panel'
Making all in libegg
make[4]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/gnome-panel/libegg'
make[4]: 没有什么可以做的为 `all'。
make[4]:正在离开目录 `/home/daf/gnome-panel-2.30.2/gnome-panel/libegg'
Making all in libpanel-util
make[4]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/gnome-panel/libpanel-util'
make[4]: 没有什么可以做的为 `all'。
make[4]:正在离开目录 `/home/daf/gnome-panel-2.30.2/gnome-panel/libpanel-util'
make[4]: 正在进入目录 `/home/daf/gnome-panel-2.30.2/gnome-panel'
GEN gnome-panel-add
LC_ALL=C /usr/bin/intltool-merge -d -u -c ../po/.intltool-merge-cache ../po gnome-panel.desktop.in gnome-panel.desktop
CCLD gnome-panel
Found cached translation database
Merging translations into gnome-panel.desktop.
applet.o: In function `panel_applet_register':
/home/daf/gnome-panel-2.30.2/gnome-panel/applet.c:1407: undefined reference to `panel_applet_signaler_add_applet'
applet.o: In function `panel_applet_destroy':
/home/daf/gnome-panel-2.30.2/gnome-panel/applet.c:738: undefined reference to `panel_applet_signaler_remove_applet'
panel-menu-bar.o: In function `panel_menu_bar_setup_tooltip':
/home/daf/gnome-panel-2.30.2/gnome-panel/panel-menu-bar.c:148: undefined reference to `panel_applet_signaler_get_default'
panel-menu-items.o: In function `panel_menu_items_append_lock_logout':
/home/daf/gnome-panel-2.30.2/gnome-panel/panel-menu-items.c:1601: undefined reference to `panel_applet_signaler_get_default'
collect2: ld returned 1 exit status
make[4]: *** [gnome-panel] 错误 1
make[4]:正在离开目录 `/home/daf/gnome-panel-2.30.2/gnome-panel'
make[3]: *** [all-recursive] 错误 1
make[3]:正在离开目录 `/home/daf/gnome-panel-2.30.2/gnome-panel'
make[2]: *** [all] 错误 2
make[2]:正在离开目录 `/home/daf/gnome-panel-2.30.2/gnome-panel'
make[1]: *** [all-recursive] 错误 1
make[1]:正在离开目录 `/home/daf/gnome-panel-2.30.2'
make: *** [all] 错误 2
这是为什么啊
上次由 daf3707 在 2011-02-28 20:07,总共编辑 1 次。
头像
leeaman
帖子: 30702
注册时间: 2007-02-02 18:14
系统: debian sid
送出感谢: 1 次
接收感谢: 23 次

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#4

帖子 leeaman » 2011-02-28 20:04

我还是宁愿gimp改那个全透明方便一点~~~虽然治标不治本的
醉了星星,醉月亮●●●●●The Long Way To Go(*^_^*)
头像
daf3707
论坛版主
帖子: 12672
注册时间: 2007-06-13 15:57
来自: 在他乡
送出感谢: 49 次
接收感谢: 85 次

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#5

帖子 daf3707 » 2011-02-28 20:08

leeaman 写了:我还是宁愿gimp改那个全透明方便一点~~~虽然治标不治本的
曼曼有没有现成的啊,我不会gimp或者PS啊,给个吧 :em01
头像
leeaman
帖子: 30702
注册时间: 2007-02-02 18:14
系统: debian sid
送出感谢: 1 次
接收感谢: 23 次

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#6

帖子 leeaman » 2011-02-28 20:14

这个哪有现成的...都说治标不治本了,就是自己找你用的主题的目录下面那个对应的三角箭头文件用gimp全选然后改成全透明就可以了
醉了星星,醉月亮●●●●●The Long Way To Go(*^_^*)
头像
daf3707
论坛版主
帖子: 12672
注册时间: 2007-06-13 15:57
来自: 在他乡
送出感谢: 49 次
接收感谢: 85 次

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#7

帖子 daf3707 » 2011-02-28 20:24

呃,那我找找看 :em06
BIVG_youtoo
帖子: 121
注册时间: 2012-07-18 11:17
送出感谢: 0
接收感谢: 0

Re: [经验分享]编译 gnome-panel,干掉 Gnome 主菜单图标上的三角小箭头

#8

帖子 BIVG_youtoo » 2013-03-06 14:52

:em09
回复

回到 “窗口管理器”