Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/peterfajdiga/EndlessWM
A proof of concept of a scrolling window manager.
https://github.com/peterfajdiga/EndlessWM
Last synced: 2 months ago
JSON representation
A proof of concept of a scrolling window manager.
- Host: GitHub
- URL: https://github.com/peterfajdiga/EndlessWM
- Owner: peterfajdiga
- License: gpl-3.0
- Created: 2017-08-24T22:09:14.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-01-14T09:26:03.000Z (12 months ago)
- Last Synced: 2024-08-02T16:35:10.915Z (5 months ago)
- Language: C
- Homepage:
- Size: 95.7 KB
- Stars: 54
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- my-awesome-github-stars - peterfajdiga/EndlessWM - A proof of concept of a scrolling window manager. (C)
- awesome-ricing - endlesswm - A proof of concept of a scrolling window manager. (C) (Packages / window-managers)
README
# EndlessWM
A proof of concept of a scrolling window manager.![demonstration](https://user-images.githubusercontent.com/22796326/114304454-811efa00-9ad3-11eb-914d-8c09dab338c3.gif)
### A what?
A window manager where the width of the workspace is not limited by the width of the screen, and where the user can then scroll through the width of the workspace.### Why?
I like tiling window managers, because they save me time arranging windows, but I agree with the criticism that automatically changing the width of windows can be annoying.
A horizontally scrolling window manager solves that by only maximizing the height of windows, and leaving their width entirely to the user's control.
Because the workspace is infinitely wide, when a new window is opened, it can simply be placed to the right of the existing windows without making them smaller.### The program
EndlessWM is a Wayland compositor that uses the (now deprecated) [wlc](https://github.com/Cloudef/wlc) library.
It is a working proof of concept, but it is not intended to be actually used for your daily window managing needs.## Building
#### Debug
```
cmake -DCMAKE_BUILD_TYPE=Debug -B ./cmake-build-debug
cmake --build ./cmake-build-debug
```#### Release
```
cmake -DCMAKE_BUILD_TYPE=Release -B ./cmake-build-release
cmake --build ./cmake-build-release
```## Other scrolling WMs
- [Niri](https://github.com/YaLTeR/niri)
- [Karousel](https://github.com/peterfajdiga/karousel)
- [PaperWM](https://github.com/paperwm/PaperWM)
- [Cardboard](https://gitlab.com/cardboardwm/cardboard)