Getting started
komorebi
is a tiling window manager for Windows that is comprised of two
main binaries, komorebi.exe
, which contains the window manager itself,
and komorebic.exe
, which is the main way to send commands to the tiling
window manager.
It is important to note that neither komorebi.exe
nor komorebic.exe
handle
key bindings, because komorebi
is a tiling window manager and not a hotkey
daemon.
This getting started guide suggests the installation of
whkd
to allow you to bind komorebic.exe
commands to hotkeys to allow you to communicate with the tiling window manager
using keyboard shortcuts.
However, whkd
is a very simple hotkey daemon, and notably, does not include
workarounds for Microsoft's restrictions on hotkey combinations that can use
the Windows
key.
If using hotkey combinations with the Windows
key is important to you, I
suggest that once you are familiar with the main komorebic.exe
commands used
to manipulate the window manager, you use
AutoHotKey to handle your key bindings.
komorebi
also includes komorebi-bar.exe
, a simple and reliable status bar which
is deeply integrated with the tiling window manager, and can be customized with
various widgets and themes.
Installation
komorebi
is available pre-built to install via
Scoop and
WinGet, and you may also build
it from source if you would prefer.
Long path support
It is highly recommended that you enable support for long paths in Windows by
running the following command in an Administrator Terminal before installing
komorebi
.
Set-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1
Disabling unnecessary system animations
It is highly recommended that you enable the "Turn off all unnecessary animations (when possible)" option in "Control Panel > Ease of Access > Ease of Access Centre / Make the computer easier to see" for the best performance with komorebi.
Scoop
Make sure you have installed scoop
and verified that
installed binaries are available in your $PATH
before proceeding.
Issues with komorebi
and related commands not being recognized in the
terminal ultimately come down to the $PATH
environment variable not being
correctly configured by your package manager and should not be raised as
bugs or issues either on the komorebi
GitHub repository or Discord server.
Install komorebi and whkd
First add the extras bucket
scoop bucket add extras
Then install the komorebi
and whkd
packages using scoop install
scoop install komorebi whkd
Once komorebi is installed, proceed to get the example configurations.
WinGet
Make sure you have installed the latest version of
winget
and verified that installed binaries are available in your $PATH
before
proceeding.
Issues with komorebi
and related commands not being recognized in the
terminal ultimately come down to the $PATH
environment variable not being
correctly configured by your package manager and should not be raised as
bugs or issues either on the komorebi
GitHub repository or Discord server.
Install komorebi and whkd
Install the komorebi
and whkd
packages using winget install
winget install LGUG2Z.komorebi
winget install LGUG2Z.whkd
Once komorebi is installed, proceed to get the example configurations.
Building from source
Make sure you have installed rustup
, a stable rust
compiler toolchain, and the Visual Studio Visual Studio
prerequisites.
Clone the git repository, enter the directory, and build the following binaries:
cargo +stable install --path komorebi --locked
cargo +stable install --path komorebic --locked
cargo +stable install --path komorebic-no-console --locked
cargo +stable install --path komorebi-gui --locked
cargo +stable install --path komorebi-bar --locked
If the binaries have been built and added to your $PATH
correctly, you should
see some output when running komorebi --help
and komorebic --help
Offline
Download the latest komorebi and whkd MSI installers on an internet-connected computer, then copy them to an offline machine to install.
Once installed, proceed to get the example configurations (none of the commands for first-time set up and running komorebi require an internet connection).
Upgrades
Before upgrading, make sure to run komorebic stop --whkd --bar
. This is to ensure that all the current
komorebi-related exe files can be replaced without issue.
Then, depending on whether you installed via scoop
or winget
, you can run the appropriate command:
# for winget
winget upgrade LGUG2Z.komorebi
# for scoop
scoop update komorebi
Once the upgrade is completed you can confirm that you have the latest version by running komorebic --version
, and
then start it with komorebic start --whkd --bar
.
Uninstallation
Before uninstalling, first run komorebic stop --whkd --bar
to make sure that
the komorebi
, komorebi-bar
and whkd
processes have been stopped.
Then, depending on whether you installed with Scoop or WinGet, run scoop
uninstall komorebi whkd
or winget uninstall LGUG2Z.komorebi LGUG2Z.whkd
.
Finally, you can run the following commands in a PowerShell prompt to clean up
files created by the quickstart
command and any other runtime files:
rm $Env:USERPROFILE\komorebi.json
rm $Env:USERPROFILE\applications.json
rm $Env:USERPROFILE\.config\whkdrc
rm -r -Force $Env:LOCALAPPDATA\komorebi