百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
L

leftwm

> 编程语言
开源

一个适用于冒险家的平铺窗口管理器

3.0K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

一个适用于冒险家的平铺窗口管理器

IMPORTANT NOTE: LeftWM has changed the config language from TOML to RON with the 0.4.0 release and removed support for TOML entirely in 0.6.0. Please use leftwm-config migrate to migrate your config and visit the wiki for more info.

Table of contents

  • Why go left
  • Dependencies
  • Installation (with package manager)
  • Manual Installation (no package manager)
    • Using a graphical login such as LightDM, GDM, LXDM, and others
    • Optional Development Installation
    • Optional Build Features
    • Using the Makefile
    • Starting with startx or a login such as slim
  • Theming
    • With LeftWM-Theme
    • Without LeftWM-Theme
  • Configuring
    • Default keys
    • Floating Windows
    • Workspaces
    • Tags / Desktops
    • Layouts
  • Troubleshooting
  • Support

Why go left

LeftWM is a tiling window manager written in Rust that aims to be stable and performant. LeftWM is designed to do one thing and to do that one thing well: be a window manager. LeftWM follows the following mantra:

LeftWM is not a compositor. LeftWM is not a lock screen. LeftWM is not a bar. But, there are lots of good bars out there. With themes, picking one is as simple as setting a symlink.

Because you probably want more than just a black screen, LeftWM is built around the concept of themes. With themes, you can choose between different bars, compositors, backgrounds, colors, docks, and whatever else makes you happy.

LeftWM was built from the very beginning to support multiple screens and ultrawide monitors. The default keybindings support ultrawide monitors and multiple screens.

One of the core concepts/features of LeftWM is theming

With LeftWM, there are two types of configuration files:

  • LeftWM Configuration files: LeftWM configurations are specific to you and don’t change for different themes. These are settings like keybindings, workspace locations, and names of desktops/tags. These settings can be found in $XDG_CONFIG_HOME/leftwm/config.ron.

  • Theme Configuration files: The appearance of your desktop is different. It’s fun to try new looks and feels. It’s fun to tweak and customize the appearance (AKA: ricing). It’s fun to share so others can experience your awesome desktop! LeftWM is built around this concept. By pulling all these settings out into themes, you can now easily tweak, switch, and share your experiences. This configuration is spread between theme.ron and related files contained within a theme's folder.

Note: some example config and themes can be found in the share dir, e.g. /usr/share/leftwm on Arch based disros.

Dependencies

While LeftWM has very few dependencies, this isn't always the case for themes. Themes typically require the following to be installed. However, this is up to the author of the theme and could be different.

List of LeftWM dependencies:

  • xorg (runtime, build): specifically libx11, xrandr, xorg-server, libxinerama
  • sh (runtime): any posix-compliant shell for starting up and down files
  • rust (build): >= 1.74.0
  • bash (optional): Most of the themes available use bash, though the scripts maybe converted to any posix-compliant shell

List of common dependencies for themes:

Dependency
(git)
Ubuntu 24.04
sudo apt install {}
Arch
sudo pacman -S {}
Fedora 42
sudo dnf install {}
PKGS
feh feh feh feh feh
compton compton picom compton compton
picom picom ** picom picom picom
polybar polybar ** polybar polybar polybar
xmobar xmobar xmobar xmobar xmobar
lemonbar lemonbar paru -S lemonbar* manual ** lemonbar
conky conky conky conky conky
dmenu dmenu dmenu dmenu dmenu

* You can use whichever AUR wrapper you like. See paru and yay. ** See the git page (link in first column) for how to install these manually

Installation (with package manager)

Gentoo (GURU)

sudo layman -a guru && sudo emerge --sync
sudo emerge --ask --verbose x11-wm/leftwm

Archlinux (AUR)

paru -S leftwm

paru is an AUR helper like yay, but written in Rust.

Fedora (copr)

sudo dnf copr enable th3-s4lm0n/leftwm -y && sudo dnf install leftwm

NetBSD (Official repositories)

pkgin install leftwm

or, if you prefer to build it from source

cd /usr/pkgsrc/wm/leftwm
make install

Void (XBPS)

sudo xbps-install -S leftwm

Cargo (crates.io)

cargo install leftwm

If you install LeftWM with crates.io, you will need to link to the xsession desktop file if you want to be able to login to LeftWM from a display manager (GDM, SSDM, LightDM, etc.):

sudo cp PATH_TO_LEFTWM/leftwm.desktop /usr/share/xsessions

Also see the build options for more feature options, especially if you don't use systemd or want to use your own hotkey daemon like sxhkd.

OpenBSD (OpenBSD)

At the moment LeftWM is not packaged with OpenBSD package manager, but it could be installed via Cargo.

cargo install leftwm --no-default-features --features lefthk,leftwm-watchdog

leftwm-config not yet ported to OpenBSD, as it requires a nightly Rust compiler to build. The default config is generated by LeftWM when it is first started.

To start LeftWM with xenodm add the following to your ~/.xsession. Make sure to remove or comment-out the exec to the previous WM you had there.

exec dbus-launch ~/.cargo/bin/leftwm >> ~/.cache/leftwm.log 2>&1

Manual Installation (no package manager)

Using a graphical login such as LightDM, GDM, LXDM, and others

  1. Dependencies: Rust, Cargo

  2. Clone the repository and cd into the directory

    git clone https://github.com/leftwm/leftwm.git
    cd leftwm
    
  3. Build leftwm

    cargo build --profile optimized
    

    For more options see the build options section.

  4. Copy leftwm executables to the /usr/bin folder

    sudo install -s -Dm755 ./target/optimized/leftwm ./target/optimized/leftwm-worker ./target/optimized/lefthk-worker ./target/optimized/leftwm-state ./target/optimized/leftwm-check ./target/optimized/leftwm-command -t /usr/bin
    
  5. Copy leftwm.desktop to xsessions folder

    sudo cp leftwm.desktop /usr/share/xsessions/
    

You should now see LeftWM in your list of available window managers. At this point, expect only a simple black screen on login. For a more customized look, install a theme.

Optional Development Installation

If your goal is to continuously build leftwm and keep up to date with the latest releases, you may prefer to symlink the leftwm executables instead of copying them. If you choose to install this way, make sure you do not move the build directory as it will break your installation.

Note that if you want to build leftwm with another build profile, you will have to change the --profile <profile-name> option and the target folder to target/<profile-name>. Currently available are dev, release and optimized.

  1. Dependencies: Rust, Cargo

  2. Clone the repository and cd into the directory

    git clone https://github.com/leftwm/leftwm.git
    cd leftwm
    
  3. Build leftwm

    # With systemd logging (view with 'journalctl -f -t leftwm-worker')
    cargo build --profile optimized
    

    For more options see build options below.

  4. Create the symlinks

    sudo ln -s "$(pwd)"/target/optimized/leftwm /usr/bin/leftwm
    sudo ln -s "$(pwd)"/target/optimized/leftwm-worker /usr/bin/leftwm-worker
    sudo ln -s "$(pwd)"/target/optimized/lefthk-worker /usr/bin/lefthk-worker
    sudo ln -s "$(pwd)"/target/optimized/leftwm-state /usr/bin/leftwm-state
    sudo ln -s "$(pwd)"/target/optimized/leftwm-check /usr/bin/leftwm-check
    sudo ln -s "$(pwd)"/target/optimized/leftwm-command /usr/bin/leftwm-command
    
  5. Copy leftwm.desktop to xsessions folder

    sudo cp leftwm.desktop /usr/share/xsessions/
    

You should now see LeftWM in your list of available window managers. At this point, expect only a simple black screen on login. For a more customized look, install a theme.

Rebuilding the development installation

  1. Now if you want to get the newest version of leftwm run this command from your build directory:

    git pull origin main
    
  2. Build leftwm

    # With systemd logging (view with 'journalctl -f -t leftwm-worker')
    cargo build --profile optimized
    
  3. And press the following keybind to reload leftwm

    Mod + Shift + R
    

Optional Build Features

Since LeftWM is targeting to be more and more mod

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rusthacktoberfestlinuxtiling-window-managerwindow-manager

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言