2020-07-24

xorg

1. xorg概述
2. 只安装必要
 2.1 基础包:xorg-server,xorg-xinit
 2.2 显卡驱动:xf86-video-intel
 2.3 输入设备:xf86-input-libinput
 2.4 小结
3. group
4. gentoo相关链接
5. Graphical user interface 图形用户界面概述

1. xorg概述

https://www.x.org/wiki/
https://zh.wikipedia.org/wiki/X.Org_Server
https://en.wikipedia.org/wiki/X.Org_Server
X.Org Server(全称X.Org Foundation Open Source Public Implementation of X11)是X Window System的官方参考实现,它是开放源代码的自由软件。这一项目由X.Org基金会运作,存放于freedesktop.org的主机上。初始版本和最终版本:
版本  日期         X11 Release
1    2005-12-21  X11R7.0 (1.0.1)
1.12 2012-03-04  X11R7.7 (1.12.2)
1.20 2018-05-10 

2. 只需安装必要包

https://wiki.archlinux.org/index.php/Xorg
xorg是一个古老的存在, 大部分现代DE都对其相关软件兼容, 有些还依赖xorg的部分功能.
要使用很多现代DE, 也需要安装一些必要的xorg包.

2.1 基础包:xorg-server,xorg-xinit

x服务器: xorg-server
x初始化: xorg-xinit

2.2 显卡驱动:xf86-video-intel

https://wiki.archlinux.org/index.php/Xorg#Driver_installation
$ lspci | grep 'VGA\|3D'
$ lspci | grep -E 'VGA|3D'
$ lspci | grep -e VGA -e 3D
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (primary) (rev 0c)
$ pacman -Ss xf86-video
找到适合自己显卡的驱动.

2.3 输入设备:xf86-input-libinput

https://wiki.archlinux.org/index.php/Xorg#Input_devices
X服务器默认使用libinput驱动(xf86-input-libinput), 但也可以使用xf86-input-evdev和相关驱动程序。
udev ,evdev 可以用作绝大部分设备的即插即用驱动。Udev 由 systemd 通过 xorg-server提供,所以不需要显式安装。
udev作为systemd依赖提供,会自动检测硬件,使用 evdev 或 libinput 处理设备的输入。
默认配置文件/usr/share/X11/xorg.conf.d/目录中的10-quirks.conf, 40-libinput.conf
  • 10-quirks.conf, Collection of (quirks怪癖, blacklist黑名单, whitelists白名单) for specific devices.
  • 40-libinput.conf, pointer 指针; keyboard 键盘; touchpad 触摸板; touchscreen 触摸屏; tablet 平板电脑.
启动X服务器后,日志文件将显示为各个设备热插拔的驱动程序:
$ cd /var/log/
$ grep -e "Using input driver " Xorg.0.log
[    13.672] (II) Using input driver 'libinput' for 'Power Button'
[    13.721] (II) Using input driver 'libinput' for 'Video Bus'
[    13.748] (II) Using input driver 'libinput' for 'Sleep Button'
[    13.771] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[    13.803] (II) Using input driver 'libinput' for 'SynPS/2 Synaptics TouchPad'
[    13.852] (II) Using input driver 'libinput' for 'HP WMI hotkeys'

https://wiki.archlinux.org/index.php/Touchpad_Synaptics
警告: xf86-input-synaptics不再主动更新。如果可能,请使用libinput。

2.4 小结

不建议安装xorg包,绝大部分用不到的;只需要单独安装xf86-video-intel, xorg-xinit, xorg-server即可。xf86-input-libinput算是server的依赖包.
$ sudo pacman -S xf86-video-intel, xorg-xinit xorg-server
$ startx 启动测试
注: 驱动请参照上文找到适合自己显卡的程序.

3. group

https://www.archlinux.org/groups/
xorg相关的包组有4个, 分别为: xorg (49); xorg-drivers (16); xorg-apps (36); xorg-fonts (2).
  • 总数: 103个, (但36个apps和2个fonts软件在xorg包组里都有)
  • 重复:  39个, (包含xorg-apps全部36个包, xorg-fonts全部2个包, 1个drivers:xf86-video-vesa)
  • 剩余:  64个, (xorg49 + driver16 - xf86-video-vesa)
以下不重复包列表总数65个, 其中xorg-xinit不属于任何组.
表1, 本机安装的15个包, [Q?]列Qe表示主动安装的只有3个, 其他都是作为依赖被安装的.
groupNameDescription描述 / $ pactree -rgroup2Q?
xorg-driversxf86-video-intelX.org Intel i810/i830/i915/945G/G965+ video driversX.org Intel i810/i830/i915/945G/G965+ 视频驱动程序
Qe
xf86-input-libinputGeneric input driver for the X.Org server based on libinput基于libinput的X.Org服务器的通用输入驱动程序
d

xorg-xinitX.Org initialisation program└─xfce4-session
Qe
xorgxorg-serverXorg X serverXorg X服务器 libxfont2, libfontenc
Qe
xorg-server-commonXorg server common filesXorg服务器通用文件
d
xorg-fonts-encodingsX.org font encoding filesX.org字体编码文件fontsd
xorg-setxkbmapSet the keyboard using the X Keyboard Extension使用X Keyboard Extension设置键盘xorg-appsd
xorg-xkbcompX Keyboard description compilerX键盘描述编译器d
xorg-xrandrRandR扩展的原始命令行界面└─intel-gpu-toolsd
xorg-iceauthICE授权文件实用程序└─xfce4-sessiond
xorg-xmodmap修改按键映射和按钮映射的实用程序└─xorg-xinit
  └─xfce4-session
d
xorg-xauthX.Org授权设置程序└─xorg-xinit
  └─xfce4-session
d
xorg-xrdbX服务器资源数据库实用程序├─xfce4-session
└─xorg-xinit
  └─xfce4-session
d
xorg-xsetUser preference utility for XX的用户首选项实用程序d
xorg-xpropProperty displayer for XX的属性显示器d
表2: group: xorg-drivers剩余包
group: xorg-driversDescription描述
xf86-input-evdevX.org evdev input driverX.org evdev输入驱动程序
xf86-input-synapticsSynaptics driver for notebook touchpads(不再更新,请用libinput)笔记本触摸板的Synaptics驱动
xf86-input-vmmouseX.org VMWare Mouse input driverX.org VMWare鼠标输入驱动程序
xf86-input-voidX.org void input driverX.org无效输入驱动程序
xf86-video-amdgpuX.org amdgpu video driverX.org amdgpu视频驱动程序
xf86-video-atiX.org ati video driverX.org ati视频驱动程序
xf86-video-dummyX.org dummy video driverX.org虚拟视频驱动程序
xf86-video-fbdevX.org framebuffer video driverX.org帧缓冲视频驱动程序
xf86-video-nouveauOpen Source 3D acceleration driver for nVidia cards适用于nVidia卡的开源3D加速驱动程序
xf86-video-openchromeX.Org Openchrome driversX.Org Openchrome驱动程序
xf86-video-qxlXorg X11 qxl video driverXorg X11 qxl视频驱动程序
xf86-video-vmwareX.org vmware video driverX.org vmware视频驱动程序
xf86-video-voodooX.org 3dfx Voodoo1/Voodoo2 2D video driverX.org 3dfx Voodoo1/Voodoo2 2D视频驱动程序
表3: group: xorg剩余包
group1: xorgDescription描述group2
xorg-font-utilX.Org font utilitiesX.Org字体实用程序-fonts
xf86-video-vesaX.org vesa video driverX.org vesa视频驱动程序-drivers
xorg-bdftopcfConvert X font from Bitmap Distribution Format to Portable Compiled Format将X字体从位图分发格式转换为可移植编译格式xorg-apps
xorg-luitFilter that can be run between an arbitrary application and a UTF-8 terminal emulator可以在任意应用程序和UTF-8终端仿真器之间运行的筛选器
xorg-mkfontscaleCreate an index of scalable font files for X为X创建可缩放字体文件的索引
xorg-sessregRegister X sessions in system utmp/utmpx databases在系统utmp / utmpx数据库中注册X会话
xorg-smproxyAllows X applications that do not support X11R6 session management to participate in an X11R6 session允许不支持X11R6会话管理的X应用程序参与X11R6会话
xorg-x11perfSimple X server performance benchmarker简单的X服务器性能基准测试程序
xorg-xbacklightRandR-based backlight control application基于RandR的背光控制应用
xorg-xcmsdbDevice Color Characterization utility for X Color Management SystemX颜色管理系统的设备颜色表征实用程序
xorg-xcursorgenCreate an X cursor file from PNG images从PNG图像创建X光标文件
xorg-xdpyinfoDisplay information utility for XX的显示信息实用程序
xorg-xdriinfoQuery configuration information of DRI drivers查询DRI驱动程序的配置信息
xorg-xevPrint contents of X events打印X事件的内容
xorg-xgammaAlter a monitor's gamma correction更改显示器的伽玛校正
xorg-xhostServer access control program for XX的服务器访问控制程序
xorg-xinputSmall commandline tool to configure devices小型命令行工具, 用于配置设备
xorg-xkbevdXKB event daemonXKB事件守护程序
xorg-xkbutilsXKB utility demosXKB实用程序演示
xorg-xkillKill a client by its X resource通过其X资源杀死客户端
xorg-xlsatomsList interned atoms defined on server列出在服务器上定义的原子
xorg-xlsclientsList client applications running on a display列出在显示器上运行的客户端应用程序
xorg-xprPrint an X window dump from xwd从xwd打印X窗口转储
xorg-xrefreshRefresh all or part of an X screen刷新全部或部分X屏幕
xorg-xsetrootClassic X utility to set your root window background to a given pattern or colorClassic X实用程序, 用于将根窗口背景设置为给定的图案或颜色
xorg-xvinfoPrints out the capabilities of any video adaptors associated with the display that are accessible through the X-Video extension打印出可通过X-Video扩展名访问的与显示器相关的任何视频适配器的功能
xorg-xwdX Window System image dumping utilityX Window系统映像转储实用程序
xorg-xwininfoCommand-line utility to print information about windows on an X server命令行实用程序, 用于在X服务器上打印有关Windows的信息
xorg-xwudX Window System image undumping utilityX Window系统映像转储实用程序
xorg-docsX.org documentationsX.org文档
xorg-fonts-100dpiX.org 100dpi fontsX.org 100dpi字体
xorg-fonts-75dpiX.org 75dpi fontsX.org 75dpi字体
xorg-server-develDevelopment files for the X.Org X serverX.Org X服务器的开发文件
xorg-server-xephyrA nested X server that runs as an X application作为X应用程序运行的嵌套X服务器
xorg-server-xnestA nested X server that runs as an X application作为X应用程序运行的嵌套X服务器
xorg-server-xvfbVirtual framebuffer X server虚拟帧缓冲X服务器
xorg-server-xwaylandrun X clients under wayland在Wayland下运行X客户

4. gentoo相关链接

https://wiki.gentoo.org/wiki/Xorg
https://wiki.gentoo.org/wiki/Xorg/Guide
https://wiki.gentoo.org/wiki/Xorg/Guide/zh-cn
使用 startx, 试试startx来运行 X server。 startx即执行一个'X会话'脚本;这个脚本x11-apps/xinit生成. 也就是说,它启动了X服务器并在它上面的一些图形应用程序。它使用下面的方式来判断该运行哪些应用程序:
 如果一个叫做.xinitrc的文件存在于主目录(home)中,它会执行里面列出的命令。
 否则,它会从/etc/env.d/90xsession读取 XSESSION 这个变量的值,并且将执行一个与之相对应的会话。XSESSION的值可以在/etc/X11/Sessions/文件中进行配置。例如,设置系统默认会话,以root身份运行: root #echo XSESSION="Xfce4" > /etc/env.d/90xsession
这将创建文件:90xsession,然后设置默认X会话Xfce。 记得在90xsession修过后,执行命令env-update。user $startx

https://wiki.gentoo.org/wiki/Wayland
Wayland旨在替代X显示服务器。
应用领域: GTK 3.x和Qt支持Wayland。不幸的是,大多数应用程序仍然需要X服务器。有几种方案可以使它们工作:
通过重写具有X.org依赖关系的组件来移植应用程序,以便它们也可以用于Wayland。cf. Wayland-港口。其他示例是mpv,它是基于MPlayer / mplayer2的视频播放器,或者是极简的网络客户端xombrero,midori和Epiphany也完全支持Wayland。预计将GNOME和KDE移植到它。
Xclient可以在Wayland上运行。之后,所需的应用程序可以照常在Xclient上运行。请参阅在wayland上运行的X服务器。
Xwayland是在X服务器上运行Wayland的第三个选项。

5. Graphical user interface 图形用户界面概述

https://wiki.archlinux.org/index.php/General_recommendations#Graphical_user_interface
https://wiki.archlinux.org/index.php/Category:Graphical_user_interfaces
  • Display server 显示服务器:
    • Xorg 是X窗口系统(通常为X11或X)的公共开源实现。运行带有图形用户界面(GUI)的应用程序时需要使用它,并且大多数用户都希望安装它。
    • Wayland 是一种更新的替代显示服务器协议,并且提供了Weston参考实现。
  • Display drivers 显示驱动器: 默认的vesa显示驱动程序适用于大多数视频卡,但是通过为AMD,Intel或NVIDIA产品安装适当的驱动程序,可以显着提高性能并利用其他功能。
  • Desktop environments 桌面环境: 尽管Xorg提供了用于构建图形环境的基本框架,但是为了获得完整的用户体验,可能还需要其他组件。GNOME,KDE,LXDE和Xfce等桌面环境将各种X客户端捆绑在一起,例如窗口管理器,面板,文件管理器,终端仿真器,文本编辑器,图标和其他实用程序。经验较少的用户可能希望为更熟悉的环境安装桌面环境。请参阅类别:桌面环境以获取更多资源。
  • Window managers 窗口管理器: 完整的桌面环境可提供完整且一致的图形用户界面,但往往会消耗大量系统资源。寻求最大化性能或以其他方式简化其环境的用户可以选择单独安装一个窗口管理器,并手动选择所需的其他功能。大多数桌面环境也允许使用替代的窗口管理器。动态,堆叠和平铺窗口管理器在处理窗口位置方面有所不同。
  • Display manager 显示管理器: 大多数桌面环境都包括一个显示管理器,用于自动启动图形环境和管理用户登录。没有桌面环境的用户可以单独安装一个。另外,您也可以运行startx启动桌面,以代替显示管理器。https://wiki.archlinux.org/index.php/Display_manager
    • DM: LightDM lxdm gdm   sddm
    • DE: 跨桌面.. lxde GNOME plasma,lxqt
  • User directories 用户目录: 诸如Downloads或Music之类的知名用户目录是由xdg-user-dirs-update.service用户服务创建的,该服务由xdg-user-dirs提供,并在安装时默认启用。如果您的桌面环境或窗口管理器未引入该软件包,则可以按照XDG用户目录#创建默认目录来安装它并手动运行xdg-user-dirs-update。

没有评论:

发表评论

Diode

导航 (返回顶部) 1. Diode 1.1 Diode 概述 1.2 肖克利二极管方程 1.3 缩写 Abbreviations 2. 主要功能 2.1 单向电流 (Unidirectional current flow) 2.2 阈值电压 (Threshold...