Running Wayland

原文:https://jan.newmarch.name/Wayland/RunningWayland/

Resources

Weston under X

A Wayland compositor is a mixture of a Wayland server, a window manager and a compositor. Weston is a reference implementation of a compositor and normally would be run as a full windowing system, talking directly to the hardware. How to do this is described
in the next section.

In order to experiment with Weston in an X environment, Weston can talk to the X server as though it was an X client. This is not the intended use of Wayland, but can be useful. This kind of use will not in general be supported by Wayland compositors. Anyway,
to use Weston this way, simply type

	
weston

from within an X terminal.

This will bring up a window under X looking like

WestonIt contains a small menu bar across the top, with a terminal icon
and the date. If you were around at the beginning of X, then it would look pretty familiar - and we all got really excited by it! This window is decorated by the X window manager, which would not happen in a standalone environment.

Wayland in a standalone environment

If you are running a Linux system in a command line environment, then you can start a Wayland compositor directly, talking to the hardware. For example, to run Weston type the following at the command prompt:

	
weston-launch

This will set the proper access permissions and run Weston.

It is not possible to do an X screen dump of this: the standard X tools such as gnome-screenshot will try to connect to the X server, and there isn't one running!

Virtual terminals

Linux has had virtual terminals almost from the beginning. These allow you to have multiple login sessions, each basically independent of the others. By default, Linux has seven of these, so you can have upto seven login sessions running. Note that this is not the
same as using multiple terminal windows under X: this is a separate mechanism.

You switch between virtual terminals by the key sequence CTL-ALT-F<n> where n is 1-7. If you are running X as in a normal user distro, then that is usually running in virtual terminal 7. So if you press the keys CTL-ALT-F4 you will get a login prompt for virtual
terminal 4. When you want to return to your GUI environment, just press CTL-ALT-F7.

Virtual terminals and X

This is easy: when you switch to another virtual terminal, the X server releases control of the hardware. That means you can do whatever you want, including starting up another X session!

Running a Wayland compositor in a virtual terminal

Switch to a virtual terminal. Login, and at the command prompt, start a compositor.

Many distros such as Ubuntu include the proof-of-concept compositor weston in their repositories. Download and install it by, say,

	
sudo apt-get install weston

under a Debian-derived system such as Ubuntu. Then in a virtual terminal, run

	
weston-launch

What runs under Wayland?

If it's an application relying only on X, then it won't run. This includes applications with a long history in X: xtermxclock and xedit,
for example. They just complain that they can't find an X server and give up.

Many GUI applications are now built using toolkits such as Gtk or KDE. Many of these toolkits are progressively including support for Wayland, and many of their applications run okay. This includes for example eog.
But other applications using Gtk don't, including Firefox, Chromium and Gimp. This is at June, 2014. The situation can change rapidly.

XWayland

The X server can be modified to talk to Wayland instead of to the hardware. This has been done as the XWayland project. At present, Weston has been modified to listen on the X ports 6000+. It starts an X server as a Weston client when an X client starts.

To run Weston with XWayland, in a non-X environment, run

	
weston-launch -- --modules=xwayland.so

[doesn't work for me. sets DISPLAY to :1 but xclock can't open it]

The page XWaylandhas details.

【ARM-LInux开发】如何运行wayland的更多相关文章

  1. 在Ubuntu上建立Arm Linux 开发环境

    我使用的是友善2410的板子,以前都是用Fedora,现在家里的电脑被我转为Linux专用的了,装的是Ubuntu.但是嵌入式还是要玩的,在装载过程中也遇到一些小麻烦.在此记录一下,一来自己比较健忘, ...

  2. 成功移植SQLite3到ARM Linux开发板

    SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...

  3. 用 qemu-user 在arm linux机器上运行amd64/x86程序

    1. qemu-user 是什么 本来, 对于 QEmu, 我只知道它是一个模拟器, 可以像 VirtualBox/VMWare 那样跑一个操作系统, 只不过 QEmu 可以在 AMD64 上面跑针对 ...

  4. minigui移植到arm linux开发板上无法执行

    要保证目录下有该文件 /etc/MiniGUI.cfg 复制过程使用cp –af 强制复制

  5. 【Qt开发】【Linux开发】Qt程序在嵌入式设备(arm) 上运行,鼠标擦除界面的解决方案

    笔者最近想在arm开发板上,开发一个应用程序,经过网上查询发现qt作为跨平台开发软件很不错,于是便选择了qt开发,笔者的qt版本是4.8.6的.由于arm的主频太低,在arm上进行开发编译,效率会大大 ...

  6. 构建 ARM Linux 4.7.3 嵌入式开发环境 —— BusyBox 构建 RootFS

    上一篇我们已经成功将 ARM Linux 4.7.3 的内核利用 U-BOOT 引导了起来.但是细心的你会发现,引导到后面,系统无法启动,出现内核恐慌 (Kernel Panic). 原因是找不到文件 ...

  7. 构建 ARM Linux 4.7.3 嵌入式开发环境 —— U-BOOT 引导 Kernel

    经过若干天的反复测试,搜索.终于成功利用 Qemu 在 u-boot 下引导 ARM Linux 4.7.3 内核.如下详细解释整个构建过程. 准备环境 运行环境:Ubuntu 16.04 需要的虚拟 ...

  8. golang 2行代码在基于arm linux的树莓派、orangepi上运行http web服务

    go语言(golang)简化了跨平台交叉编译步骤,支持在windows系统下交叉编译基于arm+linux平台的应用,运行时无需其它依赖库.以下以一个简单的http server为例,先上源码: ** ...

  9. Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核

    Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...

  10. # 【ARM-Linux开发】在Win7的电脑上直接运行安装Ubuntu14.04发生的问题 标签(空格分隔): 【Linux开发】 --- > 一段时间以来,一直是在Windows上安装虚拟机

    [ARM-Linux开发]在Win7的电脑上直接运行安装Ubuntu14.04发生的问题 标签(空格分隔): [Linux开发] 一段时间以来,一直是在Windows上安装虚拟机,然后安装Ubuntu ...

随机推荐

  1. node 初级概念总结

    (1)nodejs跳过了服务器软件 直接充当web服务器,nodejs也没有Web容器 (2)nodejs --- 自身哲学---[花最小的硬件成本,追求更好的并发请求,更高的处理性能] (3)nod ...

  2. Vivado RAM使用

    RAM使用的几点说明: 1,RAM的读写位宽可以不同,举例:写的位宽为8(1Byte),读的位宽为1(1bit),那么读的地址就变成了写地址的8倍,即位宽增加3bit.

  3. 016_编写脚本快速克隆 KVM 虚拟机

    #!/bin/bash#本脚本针对 RHEL7.2 或 Centos7.2#本脚本需要提前准备一个 qcow2 格式的虚拟机模板,名称为/var/lib/libvirt/images/.rh7_tem ...

  4. 鬼子进村 fhq-treap

    鬼子进村 fhq-treap 题面 观察题目发现可用平衡树做:每次鬼子拆家即从平衡树中加入被拆的节点:每次村民修房子都向平衡树中删除该节点:每次查询时,只需要求出其后驱与前驱,易知nxt-pre-1为 ...

  5. numpy基础一

    常用,常忘 1.随机矩阵 np.random.rand(4,3) array([[ 0.06679473, 0.71073515, 0.5694172 ], [ 0.95018143, 0.60161 ...

  6. windows下注册表脚本编写

    Reg文件就是我今天所说的注册表脚本文件,双击可将其中的数据写入注册表.利用注册表脚本文件可以对注册表进行关于键值的任何操作,而且还不受注册表被禁用的限制.     我们平常对注册表的修改大体上可以分 ...

  7. devstack cinder-volume服务状态为down

    cinder-manage service list 查看到有一个 xxx状态 Binary Host Zone Status State Updated At RPC Version Object ...

  8. 浅谈 es6 箭头函数, reduce函数介绍

    今天来谈一下箭头函数, es6的新特性 首先我们来看下箭头函数长什么样子, let result = (param1, param2) => param1+param2; 上述代码 按照以前书写 ...

  9. elasticsearch文档冲突

    https://www.elastic.co/guide/cn/elasticsearch/guide/current/optimistic-concurrency-control.html当我们之前 ...

  10. csp-s模拟99

    考前10天了... 昨天晚上真的不清醒,什么也码不对,心态爆炸. T1调了一个多小时没出来,T2因为少了一出q.pop()没A掉,T3随便写了几个sort竟然A了.十分懵逼. 最后20分钟想调T1,结 ...