Skip to content

instantOS/instantWM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f98394c · Jan 14, 2025
Jun 19, 2023
Mar 21, 2020
Aug 24, 2021
Aug 24, 2021
Oct 28, 2023
Aug 7, 2022
Dec 12, 2024
Dec 5, 2022
Apr 24, 2021
Jun 25, 2023
Jun 25, 2023
Jun 25, 2023
Dec 5, 2022
Jun 16, 2021
Dec 12, 2024
May 27, 2020
Jun 25, 2023
Jul 19, 2021
May 5, 2021
Dec 27, 2020
Jan 14, 2025
Jun 23, 2020
Dec 5, 2022
Nov 5, 2016
Jun 26, 2016

Repository files navigation

instantWM

Window manager for instantOS

instantWM the window manager of instantOS.

img

Installation

It is preinstalled on instantOS. You can manually install the git build at your own risk by cloning the repo and then running build.sh, however you'll likely be missing a lot of other tools if you're not on instantOS. It is not recommended to use instantWM with other distributions.

git clone --depth=1 https://github.com/instantOS/instantWM.git
cd instantWM
./build.sh

Download latest release

Documentation for instantWM can be found in the general documentation for instantOS and the instructional screencasts. It is not described in this README

Features

This is just a quick list of some features. For a full list and explanation, please refer to the documentation.

  • General
    • hybrid-wm: tiling and floating mode
    • Keyboard and Mouse based workflows
    • start menu
    • desktop bindings
    • full multi monitor support
    • tag system
    • overview mode
    • overlays
  • Graphical Features
    • Animations
    • Hover indicators
    • Status markup
    • color indicators for sticky windows, tag status etc.
  • Mouse support
    • Drag windows by grabbing the title
    • Drag windows onto other tags
    • Rio-like drawing feature

TODO

  • look at if hack to fix rendering locking up on unknown characters is still needed

Background information

instantWM is a dwm fork, but contains less than 40% original dwm code. Most of the changed and added code is completely original which means there are no patches replicating the behaviour for dwm. It also makes instantWM incompatible with dwm patches. Why go this route? Why not just use dwm patches? The features patches introduce are by nature completely isolated. They have no way of knowing what else is applied to the WM and therefore are limited in their usage of other parts of the WM. Not relying on patches enables huge amounts of freedom. Take for instance sticky windows. They are a simple concept, but need a few checks in some places that adjust behaviour based on wether a window is sticky or not. A patch can only apply this to code present in the barren vanilla version. Other examples of this include animations and overlays or scratchpads. Most features weren't available as patches anyway. instantWM has different goals than dwm. It prioritizes stability, speed and features over lines of code. It aims to have excellent mouse and touch screen support. It contains graphical features like animations and hover indicators that make it look more appealing. It is meant to be used as is. instantOS has every feature that a desktop enviroment has or offers a replacement and instantWM closely follows this "just works" approach and in many ways goes beyond the capabilities of a desktop environment. This makes it a possible choice for new or casual users that cannot be bothered to learn C, vim, git, bash and loads of other stuff just to do their email.

instantOS is still in early beta, contributions always welcome