Skip to content

nfrid/nwm

Repository files navigation

nwm - undefined window manager

./nwm.png

nwm is an extremely fast, small and simple dynamic window manager for X11.

The fork of dwm

This beauty’s based on dwm - dynamic window manager by suckless devs.

I did a lot of patches and tweaks, a lot of refactoring and now it doesn’t look similar enough to have the same name.

Changes in my fork

It’s been a while…

There are things I remember implementing/tweaking/patching:

  • pertag stuff
  • gaps
  • tabs (tab bar for clients in monocle mode like tabbed)
  • temporary show all tags mode
  • colorscheme for inactive monitor’s bar
  • sticky
  • urgent + fix for multimon
  • other bugfixes & tweaks idk??

you’ll figure out other from source code if you’re smart enough.

Your code style sucks!!

no u

Use suckless-like code style

no cuz it sucks

Use tabs or at least 4/8/16/32/64/128 spaces

no.

I like 2 spaces indentation. I think everyone should prefer 2 spaces indentation. Tabs are bad. No argue.

Readability is not about indentation - it’s about good code with empty lines, comments and consistent style.

I think your fork is bad because…

You can just fork it and make it “better”

Also you can try and PR your changes, but I don’t usually agree with other people.

If forking it doesn’t suit you - cry about it.

Requirements

Xlib header files, libxft-bgra (or disable its support in config.mk).

Installation

Edit config.mk to match your local setup.

Edit config.h to configure some of the aspects of your build.

Enter the following command to build and install nwm:

sudo make install

Running nwm

Add the following line to your .xinitrc to start nwm using startx:

exec nwm

In order to connect nwm to a specific display, make sure that the DISPLAY environment variable is set correctly, e.g.:

DISPLAY=foo.bar:1 exec nwm

(This will start nwm on display :1 of the host foo.bar.)

In order to display something in the bar, you should set your root window name, e.g.:

xsetroot -name "something"

You should use some script to make it dynamic. You can use rootblocks.

My “startnwm script”

autostart is a script for starting programs need to start excluding those that are already running.

#!/bin/sh

while true; do
  autostart &
  nwm 2> ~/.nwm.log
done

About

undefined window manager based on dwm

Topics

Resources

License

Stars

Watchers

Forks