Ulubis 项目安装与使用教程
ulubisA Wayland compositor written in Common Lisp项目地址:https://gitcode.com/gh_mirrors/ul/ulubis
1. 项目的目录结构及介绍
Ulubis 是一个用 Common Lisp 编写的 Wayland 合成器。项目的目录结构如下:
ulubis/
├── build-ulubis.lisp
├── LICENSE
├── README.md
├── package.lisp
├── ulubis-drm-gbm.asd
├── ulubis-drm-gbm.lisp
├── ulubis.asd
├── ulubis.lisp
└── ulubis-sdl.asd
目录结构介绍
build-ulubis.lisp
: 构建 Ulubis 的脚本文件。LICENSE
: 项目的许可证文件。README.md
: 项目的介绍和使用说明。package.lisp
: 项目的包定义文件。ulubis-drm-gbm.asd
: DRM/GBM 后端的系统定义文件。ulubis-drm-gbm.lisp
: DRM/GBM 后端的实现文件。ulubis.asd
: Ulubis 主系统的系统定义文件。ulubis.lisp
: Ulubis 主系统的实现文件。ulubis-sdl.asd
: SDL2 后端的系统定义文件。
2. 项目的启动文件介绍
Ulubis 的启动文件是 ulubis.lisp
和 ulubis-sdl.lisp
。这两个文件分别用于启动 Ulubis 的 DRM/GBM 后端和 SDL2 后端。
启动 Ulubis
要启动 Ulubis,首先需要确保用户是 input
和 video
组的成员。然后,在终端中运行以下命令:
ulubis
对于 SDL2 后端,可以使用以下命令启动:
ulubis-sdl
3. 项目的配置文件介绍
Ulubis 的配置文件是 ~/.ulubis.lisp
。如果该文件存在,Ulubis 会在启动时加载它。
配置文件示例
以下是一个简单的配置文件示例:
(in-package :ulubis)
(if (string-equal (symbol-name ulubis-backend:backend-name) "backend-drm-gbm")
(progn
(setf (screen-width *compositor*) 1920)
(setf (screen-height *compositor*) 1080))
(progn
(setf (screen-width *compositor*) 1400)
(setf (screen-height *compositor*) 900)))
(set-keymap *compositor* "evdev" "apple" "gb" "" "")
(defun startup ()
(swank-loader:init)
(swank:create-server :port 4005 :style :spawn :dont-close t)
(swank:set-package "ULUBIS")
(make-screen 'virtual-desktop-mode)
(loop :for i :from 0 :to 3 :do (push-view 'desktop-mode))
(setf (active-surface (screen *compositor*)) (first (surfaces (screen *compositor*)))))
配置文件说明
screen-width
和screen-height
: 设置屏幕的宽度和高度。set-keymap
: 设置键盘映射。startup
: 定义启动时执行的函数,包括初始化 Swank 服务器、创建虚拟桌面等操作。
通过修改配置文件,用户可以自定义 Ulubis 的行为和外观。
ulubisA Wayland compositor written in Common Lisp项目地址:https://gitcode.com/gh_mirrors/ul/ulubis