archlinux安装gnome的一些坑随记
问题1:网络设置无法查看,提示缺少NetworkManager
解决:安装networkmanager库,因为gnome调用的是networkmanager这个软件来管理网络的。然后要启动它:sudo systemctl enable NetworkManager && sudo systemctl start NetworkManager。
问题2:gnome-software无法使用。
解决:安装gnome-software-packagekit-plugin这个包。但是不推荐使用gnome-software,因为gnome-software在卸载包的时候,不提示哪些包会因为依赖关系也跟着被卸载,导致出现一些意外的结果。比如我又一次因为看不惯桌面上的avahi xxx图标,用gnome-software去卸载avahi dns server,没想到avahi是一个很基础的包,卸载它的结果是整个gnome大部分软件都被卸载了,害得我最后不得不重装gnome。其实要是看不惯某个图标,只需要删除对应的xxx.desktop文件就可以了,这些文件一般位于/usr/share/application中,也有可能位于home目录中。如果要查找图标对应的desktop文件在哪,只需要 grep '图标名词' -r /usr/share/applications 就可以找到他。
前面说了,不推荐用gnome-software,用pamac,好用多了。
问题3:无法使用fcitx
解决:这是因为gnome3之后不支持了。而且默认为Wayland而不是xorg,所以切换到xorg可以,或者加入在/etc/environment和.xprofile中都加入如下代码:
GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=“@im=fcitx”
.xprofile只能管x,但是/etc/environment确实能管所有桌面环境的。
然后对于gtk3(gtk2)程序,要安装fcitx-gtk2或者fcitx-gtk3包,如果是qt的程序,这样安装fcitx-qt4(fcitx-qt5)包。
为了在gnome-terminal中也能使用,需要加入:
gsettings set \ org.gnome.settings-daemon.plugins.xsettings overrides \ "{'Gtk/IMModule':<'fcitx'>}"
问题4: 模拟终端比如gnome-terminal上的字体偏移得很奇怪,比如下面这样,明显行间距不对,那个提示符的三角都偏了。
解决:这是因为缺少了一种字体导致的,安装上字体 yaourt -Rsn ttf-dejavu 就可以了。效果如下
oh-my-zsh的agnoster主题的提示符已经正常了。
问题5:vmware workstation pro中安装archlinux之后,窗口不能自适应调整分辨率,也就是说,不能自动调整窗口大小。
(1)安装open-vm-tools包,启动vmtoolsd服务
(2)安装xf86-video-vmware。这个包一定要安装,不知道怎么回事,官方的指导就是不提这个,所以很多人安装好了open-vm-tools,服务也启动了,并且可以实现宿主机和虚拟机之间的拖拽和复制粘贴,可就是不能自适应窗口,要逼疯掉。其实原因在于,虚拟机是虚拟的显卡,所以没有显卡的支持,自适应分辨率就无从谈起,只要安装这个xf86-video-vmware,一切问题就迎刃而解了。
(3)顺便把 xf86-input-vmmouse,libdnet,uriparser,libsigc++,libmspack这几个报也安转了吧,我也没生就是干啥的,但是看安装manjaro的到vmware的时候,它自己安装了这些包,不得不说,manjaro真的是做了好多工作啊,连你的系统安装在虚拟机里面它都能检测到,并帮你安装你要的包,连open-vm-tools都帮你安装好了。
问题6:failed to commit transaction (invalid or corrupted package (PGP signature)) 错误,无法安装、更新包。
首先,看下你网络是否连接成功了,没网的情况下,也会出现类似错误,如果网络连接是正常的,那很可能是由于pgp key过时了,只需要重新导入一下就可以了:
sudo pacman -S archlinux-keyring
如果添加了archlinuxcn库的话,也要一同更新下
sudo pacman -S archlinuxcn-keyring
然后刷新一下软件库信息:
sudo pacman -Sy
问题7:gnome太丑了
太丑了不仅是个问题,而且是个很大的问题,要解决,就要自己动手美化一下。
(1)首先是gnome-tweaks,这个应用必须装,用它来配置各种扩展,所以说它是美化的前提。
(2)dash-to-dock或者dash-to-panel,也装一下。dash就是gnome中那个按下super键(也就是那个有window图标的键)之后会出现在右边的那个板子(按下win键之后gnome进入所谓的overview视图)。默认的dash很丑,也很鸡肋,只能出现在overview视图下。dash-to-dock安装之后,就可以把它固定住,还可以把它移到各种地方,实现想苹果系统的dock一下在屏幕下方。
(3)图标美化。gnome默认的图标也好丑,所以我们也可以安装一些图标美化主题,推荐这几个:numix-circle-icon-theme、la-capitaine、MacOSX。不知道咋用,就Google一下好了。
(4)也可以安装专门的dork应用,推荐docky、cairo-dock这两个应用。
问题8:gnome按super键(也就是那个有window图标的键)是显示overview模式,但是我们一般都想要让它直接显示所有的应用(all application视图),默认要按super+a才显示所有应用,并且按完要退到桌面的话,又得单独按win,总之很反人类的设计,所以我们要调整一下,直接把该死的overview模式取消了(完全可以用alt+tab来切换窗口嘛),让他要么显示正常工作桌面,要么显示所有应用。
(1)安装浏览器插件:gnome shell integration,这个插件可以让你从这个网站https://extensions.gnome.org直接安装gnome的扩展,很方便吧。
(2)安装yaourt -S chrome-gnome-shell包,别看名字里有chrome字样,但是适合所有浏览器。这个包可以解决有些情况下gnome shell integration失灵的问题。
(3)在上面提到的扩展网站上搜Start Overlay in Application View这个插件,直接点安装。
(4)在tweaks的extension中启用这个插件,世界美好了。
问题9:gnome给设置乱了,需要重置,
只需要一行命令:
gsettings list-schemas | xargs -n 1 gsettings reset-recursively
详情参考 How do I reset all GSettings key to their default values?
需要注意的是,这个命令不会删除任何东西,但是会重置所有的个性化设置,比如快捷键啥的,所以你需要自己再设置一遍。
问题10:中文字体不好看:
安装字体, yaourt -S wqy-zenhei wqy-microhei。这两个常用的中文字体包安装后,会好很多。
问题11:从图标菜单里移除gnome的图标。
有一些软件实际上是我们不需要的比如cheese,avahi 啥的,但是不能把它卸载了因为它是很重要的依赖包,但是我们不希望它出现在面板上,也就是说,不希望看到它,碍眼。
有些人说直接移除对应的.desktop文件,这样确实可以,但是软件一更新,它就又会出现,所以最好的办法就是设置隐藏它。
很简单,在/usr/share/application中找到他们对应的.desktop文件(grep '图标名字' -r /usr/share/application),然后cp到~/.local/share/application/下,在.desktop上加入一行 NoDisplay=true ,图标就不见了。如果还在,就再加上 Hidden=true 。《Remove icons in gnome application menu》。
问题12:显卡驱动的问题。
之前说了,虚拟机自适应窗口问题可能是显卡问题,要换成虚拟机显卡。那么在硬件机上,也要有相应的显卡,比如下面这些,根据你的硬件选,如果不确定,就都装上吧(装上之后lsmod一下,看看加载了那些,并看看对不对的上硬件):
1 extra/xf86-video-amdgpu 18.1.0-1 (xorg-drivers) 2 X.org amdgpu video driver 3 extra/xf86-video-ati 1:18.1.0-1 (xorg-drivers) 4 X.org ati video driver 5 extra/xf86-video-intel 1:2.99.917+855+g746ab3bb-1 (xorg-drivers) 6 X.org Intel i810/i830/i915/945G/G965+ video drivers 7 extra/xf86-video-nouveau 1.0.15-3 (xorg-drivers) 8 Open Source 2D acceleration driver for nVidia cards 9 multilib/lib32-mesa 18.3.1-1 10 An open-source implementation of the OpenGL specification (32-bit) 11 extra/manjaro-firmware 20160419-1 12 Extra firmwares for Manjaro Linux 13 extra/mesa 18.3.1-1 14 An open-source implementation of the OpenGL specification 15 extra/xf86-video-nouveau 1.0.15-3 (xorg-drivers) 16 Open Source 2D acceleration driver for nVidia cards 17 [xlinliu@manjaro ~]$ yaourt -Qs mesa 18 extra/glu 9.0.0-5 19 Mesa OpenGL Utility library 20 multilib/lib32-glu 9.0.0-4 21 Mesa OpenGL utility library (32 bits) 22 multilib/lib32-libva-mesa-driver 18.3.1-1 23 VA-API implementation for gallium (32-bit) 24 multilib/lib32-mesa 18.3.1-1 25 An open-source implementation of the OpenGL specification (32-bit) 26 multilib/lib32-mesa-demos 8.4.0-1 27 Mesa demos and tools (32-bit) 28 multilib/lib32-mesa-vdpau 18.3.1-1 29 Mesa VDPAU drivers (32-bit) 30 multilib/lib32-vulkan-intel 18.3.1-1 31 Intel's Vulkan mesa driver (32-bit) 32 multilib/lib32-vulkan-radeon 18.3.1-1 33 Radeon's Vulkan mesa driver (32-bit) 34 extra/libva-mesa-driver 18.3.1-1 35 VA-API implementation for gallium 36 extra/mesa 18.3.1-1 37 An open-source implementation of the OpenGL specification 38 extra/mesa-demos 8.4.0-1 39 Mesa demos and tools incl. glxinfo + glxgears 40 extra/mesa-vdpau 18.3.1-1 41 Mesa VDPAU drivers 42 extra/vulkan-intel 18.3.1-1 43 Intel's Vulkan mesa driver 44 extra/vulkan-radeon 18.3.1-1 45 Radeon's Vulkan mesa driver
具体参考下archwiki :https://wiki.archlinux.org/index.php/Xorg#Driver_installation