linux开发笔记(F1C200S)折腾weston桌面

server/2024/10/18 22:34:52/

参考文章:

1、嵌入式桌面(1)——weston桌面_qt weston-CSDN博客

2、https://blog.51cto.com/u_16213414/9171009

3、weston.ini: configuration file for Weston — the reference Wayland compositor | weston File Formats | Man Pages | ManKier

一、buildroot打开weston选项

配置Weston

在Buildroot中配置Weston非常简单。通过执行 make menuconfig 命令,我们可以进入配置菜单,并选择Weston和相关的依赖包。以下是一些常见的Weston配置选项:

  • BR2_PACKAGE_WESTON:启用Weston软件包
  • BR2_PACKAGE_WESTON_DRM:启用DRM后端支持
  • BR2_PACKAGE_WESTON_FBDEV:启用Framebuffer后端支持
  • BR2_PACKAGE_WESTON_X11:启用X11后端支持

通过选择适当的配置选项,可以根据需要启用或禁用Weston的不同功能。

这一步我只打开了第一个。

二、设置自启动以及环境变量

相关文件,自己添加

/etc/init.d/S31weston             //weston自启动程序
/etc/xdg/weston/weston.ini        //weston配置文件
/etc/profile.d/env.sh            //环境变量配置
1、自启动文件

/etc/init.d/S31weston 

#!/bin/sh
#
# Start linux launcher...
#case "$1" instart)printf "Starting weston"source /etc/profile.d/env.shweston -c /etc/xdg/weston/weston.ini --tty=2 --idle-time=0 --log=/var/log/weston.log &;;stop)killall westonprintf "stop finished";;*)echo "Usage: $0 {start|stop}"exit 1;;
esac
exit 0

2、/etc/xdg/weston/weston.ini

[terminal]
font=DejaVu Sans Mono
font-size=20[shell]
# top(default)|bottom|left|right|none, none to disable panel
# panel-position=none# Scale panel size
panel-scale=1.6# Set cursor size
cursor-theme=xcursor-transparent
cursor-size=12# none|minutes(default)|minutes-24h|seconds|seconds-24h
clock-format=seconds-24h
clock-with-date=false# Disable screen locking
locking=false[libinput]
# Uncomment below to enable touch screen calibrator(weston-touch-calibrator)
touchscreen_calibrator=true
calibration_helper=/bin/weston-calibration-helper.sh[keyboard]
# Comment this to enable vt switching
vt-switching=false# Configs for auto key repeat
# repeat-rate=40
# repeat-delay=400[core]
# Boards could have not any input device, and only use
# removable input device like usb(keyboard, mouse).
require-input=false

3、/etc/profile.d/env.sh 

#!/bin/sh export LC_ALL='zh_CN.utf8'
export QT_QPA_PLATFORM=wayland
#export WESTON_DRM_MIRROR=1
export WESTON_DRM_KEEP_RATIO=1
export QT_GSTREAMER_WINDOW_VIDEOSINK=waylandsink
mkdir -p /tmp/.xdg &&  chmod 0700 /tmp/.xdg
export XDG_RUNTIME_DIR=/tmp/.xdg
export PATH=$PATH:/usr/bin/cmd
export QT_QPA_GENERIC_PLUGINS=evdevkeyboard

4、运行触摸屏的校准程序

参考文章:在 NXP iMX8 上进行 Qt5移植和开发_ARM_iMX8_中国工控网

root@colibri-imx8x:~/touchinteraction# weston-touch-calibrator 

could not load cursor 'dnd-move'

could not load cursor 'dnd-copy'

could not load cursor 'dnd-none'

device "/sys/devices/platform/5a800000.i2c/i2c-16/16-002c/input/input1/event1" - head "DPI-1"

------------------------------

校准触摸屏

------------------------------

root@colibri-imx8x:~# weston-touch-calibrator /sys/devices/platform/5a800000.i2c/i2c-16/16-002c/input/input1/event1

------------------------------

依次点击屏幕上的校准坐标。

对于电容触摸屏用户,则无需校准,可以直接使用。当然前提是触摸屏的驱动能够正常工作。可以参考这篇文章:linux开发知识点笔记汇总(F1C200S)-CSDN博客

5、设置桌面背景

结果
在/etc/xdg/weston/weston.ini中新增:

[shell]
background-image=/usr/share/weston/background.png
background-type=scale-crop

原文链接:https://blog.csdn.net/u014436243/article/details/128288199

发现的问题:weston的配置文件不能在编译的时候提前写入,只能编译完后手动添加,否则会导致weston启动时无法读取配置文件。

到这一步weston桌面只是显示出来了,工具栏上可以显示时间时间及一个终端图标。每次启动之后都需要运行weston-touch-calibrator /sys/devices/platform/soc/1c27000.i2c/i2c-0/0-0048/inp
ut/input0/event0重启校准一下触摸屏,校准后可以点击工具栏的terminal图标启动终端


http://www.ppmy.cn/server/38483.html

相关文章

设置默认表空间和重命名

目录 设置默认表空间 创建的临时表空间 tspace4 修改为默认临时表空间 创建的永久性表空间 tspace3 修改为默认永久表空间 重命名表空间 将表空间 tspace3 修改为 tspace3_1 Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/13520…

7天精通Web APIs——-Bom操作(理论+实战)(第五天)

一、window对象 1.1 window对象和bom的关系 首先理解dom和bom之间的关系 显然bom的范围比较大 bom的全称为浏览器对象模型 window是bom的核心对象,window里面有很多属性和方法,用于实现浏览器与 JavaScript 代码之间的交互。作为 JavaScript 的全局对…

redisson 使用脚本实现将一个队列的元素弹出并推入另一个队列的原子操作

脚本逻辑: 从队列1弹出元素如果存在值则推入队列2否则返回null RScript script redissonClient.getScript(); final String scriptText """local value redis.call(lpop, KEYS[1]);if value thenredis.call(rpush, KEYS[2], value);return valu…

minio上传文件失败如何解决

1. 做了什么操作 通过接口上传excel文件,返回响应值 2. 错误如图 2. 如何解决 根据错误描述定位到了部署minio的地方minio通过docker部署,找到docker - compose发现配置文件中minio有两个端口,一个是用于api的,一个是用于管理界面…

ssm+vue的私人健身和教练预约管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频: ssmvue的私人健身和教练预约管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通…

游戏辅助 -- 实战找人物对象基址

本节课在线学习视频: https://pan.quark.cn/s/3e83f4568031 一、打开CE工具,加载游戏进程 二、搜索人物血量144,选择首次扫描 三、进入游戏,让人物血量发生变化,搜索减少的数值 四、发现绿色的数值,一般绿…

『ZJUBCA Collaboration』WTF Academy 赞助支持

非常荣幸宣布,浙江大学区块链协会收到WTF Academy的赞助与支持,未来将共同开展更多深度合作。 WTF Academy是开发者的Web3开源大学,旨在通过开源教育让100,000名开发者进入到Web3。截止目前,WTF开源教程在GitHub收获超15,000 ⭐&a…

MATLAB实现遗传算法优化第三类生产线平衡问题

第三类生产线平衡问题的数学模型 假设: 工作站数量(m)和生产线节拍(CT)是预设并固定的。每个任务(或作业元素)只能分配到一个工作站中。任务的执行顺序是预先确定的,且不可更改。每…