在 openEuler Linux 上安装 Sway

举报
Chocola 发表于 2026/10/22 12:31:17 2026/10/22
【摘要】 Sway 是一款基于 Wayland 的平铺式窗口管理器,兼容 i3 的配置语法,适合喜欢键盘驱动、高效工作流的用户。openEuler 的软件生态和 Fedora、RHEL 并不完全一致,不能直接照搬其他发行版的安装命令。 因此推荐按“先源内安装,缺失则源码编译”的顺序来部署。 1. 安装前确认Sway 是 Wayland 合成器,必须在图形环境下运行,openEuler 服务器版默认没有...

Sway 是一款基于 Wayland 的平铺式窗口管理器,兼容 i3 的配置语法,适合喜欢键盘驱动、高效工作流的用户。
openEuler 的软件生态和 Fedora、RHEL 并不完全一致,不能直接照搬其他发行版的安装命令。 因此推荐按“先源内安装,缺失则源码编译”的顺序来部署。


1. 安装前确认

Sway 是 Wayland 合成器,必须在图形环境下运行,openEuler 服务器版默认没有桌面,不能直接启动。

确认系统版本:

cat /etc/openEuler-release
uname -m

确认显卡:

lspci | grep -iE "vga|3d|display"

确认当前会话类型:

echo $XDG_SESSION_TYPE
echo $WAYLAND_DISPLAY

2. 方法一:通过 dnf 安装(优先尝试)

先刷新缓存:

sudo dnf makecache

尝试直接安装 Sway:

sudo dnf install -y sway

如果安装成功,可以查看版本:

sway --version

同时建议安装常用配套组件:

sudo dnf install -y \
  swaybg \
  swaylock \
  swayidle \
  foot \
  wofi \
  waybar \
  wl-clipboard \
  xorg-x11-server-Xwayland

各组件作用:

组件 作用
sway Wayland 平铺窗口管理器
swaybg 设置壁纸
swaylock 锁屏
swayidle 空闲管理
foot Wayland 终端模拟器
wofi 应用启动器
waybar 状态栏
wl-clipboard Wayland 剪贴板工具
xorg-x11-server-Xwayland 运行 X11 应用

如果 dnf 提示找不到 sway 或相关包,说明当前 openEuler 版本或仓库暂未提供,可以改用源码编译。


3. 方法二:源码编译安装

先安装编译依赖:

sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y \
  meson \
  ninja-build \
  pkg-config \
  wayland-devel \
  wayland-protocols-devel \
  libxkbcommon-devel \
  libinput-devel \
  libdrm-devel \
  pixman-devel \
  pango-devel \
  cairo-devel \
  json-c-devel \
  pcre2-devel \
  libxcb-devel \
  libX11-devel \
  seatd-devel \
  wlroots-devel

如果 wlroots-devel 找不到,可能需要先确认 openEuler 当前仓库是否提供,或改用更新版本的仓库。

克隆 Sway 源码:

git clone https://github.com/swaywm/sway.git
cd sway
git submodule update --init --recursive

编译安装:

meson setup build
ninja -C build
sudo ninja -C build install

安装后验证:

sway --version

如果编译失败,建议先去掉并行编译参数,根据报错信息补装对应 -devel 包。


4. 首次启动配置

首次使用前,建议复制默认配置:

mkdir -p ~/.config/sway
cp /etc/sway/config ~/.config/sway/config

如果系统默认配置不在 /etc/sway/config,可以在源码目录中查找:

find /usr/share/sway -name config 2>/dev/null

然后在用户配置文件中设置终端和启动器:

set $mod Mod4
set $term foot
set $menu wofi --show drun

常用默认快捷键:

  • Super + Return:打开终端
  • Super + d:打开应用启动器
  • Super + Shift + e:退出 Sway
  • Super + 数字:切换工作区

5. 通过显示管理器或 TTY 启动

如果系统安装了 GDM、SDDM 等显示管理器,通常可以在登录界面选择 Sway 会话。

也可以从 TTY 直接启动:

sway

如果显卡驱动尚未完全适配,可能需要临时使用:

sway --unsupported-gpu

但这只适合测试,不建议作为长期方案。


6. NVIDIA 显卡注意事项

Sway 对 NVIDIA 专有驱动的支持有限。
如果使用 NVIDIA 显卡,需要确认是否启用了 DRM modeset:

cat /sys/module/nvidia_drm/parameters/modeset

如果输出不是 Y,需要在 GRUB 内核参数中添加:

nvidia_drm.modeset=1

然后更新 GRUB 配置并重启。
即便如此,仍可能出现闪屏、无法启动或应用兼容问题,NVIDIA 环境下使用 Sway 需要做好调试准备。


7. 常见问题

问题 处理方式
dnf install sway 失败 当前源可能未提供,改用源码编译
启动后黑屏 检查显卡驱动和 --unsupported-gpu
没有终端或启动器 安装 foot、wofi 并修改配置
X11 应用无法运行 安装 xorg-x11-server-Xwayland
状态栏不显示 安装 waybar 并在配置中启用
锁屏失败 安装 swaylock 并确认权限正常

小结

在 openEuler 上安装 Sway,优先尝试:

sudo dnf makecache
sudo dnf install -y sway swaybg swaylock swayidle foot wofi waybar wl-clipboard xorg-x11-server-Xwayland

如果源中没有,再使用源码编译:

git clone https://github.com/swaywm/sway.git
cd sway
git submodule update --init --recursive
meson setup build
ninja -C build
sudo ninja -C build install

Sway 适合喜欢键盘操作、平铺布局和 Wayland 原生环境的用户。相比 Hyprland,它更轻量、配置更接近 i3;但如果你需要更现代的动画效果和更活跃的视觉定制,Hyprland 会更有吸引力。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。