miracle-wm/README.md

66 lines
2.0 KiB
Markdown
Raw Normal View History

2023-12-19 18:39:11 +03:00
**WARNING**: This project is very much a work in progress. I have provided a rough roadmap in the timeline section.
Use at your own risk.
# miracle-wm
**miracle-wm** is a wayland tiling window manager based on [Mir](https://github.com/MirServer/mir). The tiling features
will be very sway/i3-like for the first iteration, but will diverge in some important ways later on. See the [timeline](#timeline)
section below for the current status and direction.
2023-12-21 19:34:04 +03:00
The ultimate goal of this work is to build an entire desktop envrionment on top of this window manager, but that will remain a
concern for a different repository with a different timeline.
2023-12-21 19:34:04 +03:00
# Building locally
```sh
git clone https://github.com/mattkae/miracle-wm.git
cd miracle-wm
2023-12-07 17:52:38 +03:00
2023-02-18 20:06:27 +03:00
mkdir build
cd build
cmake ..
./bin/miracle-wm
```
# Building the snap
```sh
cd miracle-wm
snapcraft
sudo snap install --dangerous --classic miracle-wm_*.snap
2023-02-18 20:06:27 +03:00
```
2023-12-28 22:07:52 +03:00
# Running
## On Login
Once installed, you may select the "Miracle WM" option from your display manager before you login (e.g. GDM or LightDM).
In most environments, this presents itself as a little "settings" button after you select your name.
## Hosted on your desktop
To run the window manager as a window in your current desktop session, simply run:
```sh
WAYLAND_DISPLAY=wayland-98 miracle-wm
```
Note that this is only useful if you want to test-drive the window manager or do some development on it for yourself.
2023-12-19 18:39:11 +03:00
# Timeline
## Tiling Window Manager Basics (Due: January 1st)
2023-12-19 18:39:11 +03:00
Version: 0.1
Features:
2023-12-07 17:52:38 +03:00
- [x] Layout new window
- [x] Delete window
2023-12-19 18:39:11 +03:00
- [x] Resizing windows
- [x] Changing selected window with keyboard
- [x] Moving window with keyboard
2023-12-07 17:52:38 +03:00
- [ ] Gaps in windows
- [ ] Account for minimum sizes on windows (e.g. gedit)
2023-12-28 21:31:57 +03:00
- [x] Disabling many of the Floating Window Manager features
2023-12-19 18:39:11 +03:00
- [ ] Handle exclusion zones
- [ ] Handle output creation, updating, and deletion
2023-02-25 21:09:26 +03:00
## Tiling Advanced(Due: February 1st)
2023-12-19 18:39:11 +03:00
Version: 0.2
Features:
2023-12-07 17:52:38 +03:00
- [ ] Workspaces
- [ ] Moving windows between workspaces