Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Support Us

Top Posters

How to install/configure swm + wmutils

Hello everyone! This is my first post, and I'll be showing off dcat's new WM, as well as the group project, wmutils.

wmutils' core is a set of tools for X windows manipulation. Each tool only has one purpose. We follow the UNIX philosophy: Do one thing and do it well.
Pretty self explanatory. wmutils is a bunch of C programs that control windows in an X session. They can be used with any window manager you choose, or no WM at all.
I prefer to use swm because
1) It's very very small
2) it's very very simple
3) It comes with mouse focus, which is the only thing I'm not sure how to set up myself
4) double borders :D

It does not come with keybindings, so I used sxhkd. You can use any keybinding controller you want.
If you're on Arch, sxhkd is in the AUR.
On any other distro, you can grab it from here: https://github.com/baskerville/sxhkd

Installing swm is as easy as
$ git clone https://github.com/dcat/swm.git
$ cd swm
$ make
$ sudo make install

I would reccomend having a look at the config.h and configuring it before installing.
To install wmutils:
$ git clone https://github.com/wmutils/core.git
$ cd core
$ make all
$ sudo make install

Now we get to the fun part: configuring.
My .xinitrc looks like this, but you can configure it however you want.
#!/bin/sh

sxhkd -c ~/etc/sxhkdrc >/dev/null 2>&1 &

xrdb -load  ~/.Xresources

exec swm

This won't work off the bat because you don't have sxhkd configured. Also, if you don't have a .Xresources file in your home directory, remove the xrdb line.

sxhkd is quite simple to configure, so I'll just throw my config in here. The tools I use probably won't make sense since you haven't used them yet, but take a look at the github for wmutils and read up on what each tool does. Then, if you want, get used to them by testing them out in an X session. I'll just go over a few important tools.

lsw
lists the addresses of all open windows

pfw
lists the address of the currently focused window

wtp
teleports windows (moves them to X and Y)

Addresses are basically just names for the windows. Here's a little syntax for wtp:
$ lsw
0x00a00009
0x01000079
0x01600009
$ wtp 100 100 200 500 0x00a00009
The wtp line would teleport the window "0x00a00009" to the coordinates 100(x) 100(y) with a width of 200 and a height of 500.

Now that you know a few things about these tools, here's my sxhkd config:
https://github.com/cobcorn/lol/blob/master/sxhkdrc

This file goes in ~/etc
If that dir doesn't exist, make it. It doesn't neccesarily have to go there, but that's where my .xinitrc checks for it.
Have fun, and if you need more help, don't be afraid to ask here!
tnagxd.png

Comments

Sign In or Register to comment.