sowm
patches
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sowm
-
XFCE live usb(i686) is using almost 200mb of memory on boot?
To add to the comment above, if memory is all you care about, I managed to get it down to 75MB once with custom kernel and sowm.
- any patch that entirely removes the bar?
-
How does dwm spawn() work exactly?
You can check https://github.com/dylanaraps/sowm It will be handy to you to understand how Dwm works
-
How hard would it be to make my own window manager?
Or sowm.
-
Think this beast can run Linux?
I managed to get 75mb with X session on Void. (sowm + minimal kernel)
-
Suckless desktop starter pack, how to start?
Then perhaps you should have a look at sowm. It is a fork (if you can still call it that) of dwm that has no tiling support and no bar.
-
what linux distro is recommended for my slow pc?
If you are r/linux4noobs then you probably won't be able to get it running but... I managed to get voidlinux with sowm and a custom kernel to 70MB memory usage.
- Asking for a really lightweight distro for me to learn linux with.
-
How X Window Managers Work, and How to Write One
This is a great article and I remember reading it numerous times while I was implementing my own window manager.
For someone interested in working on a really fun and rewarding hobby project a WM is a great one to look into since there are so many resources starting from really small implementations:
- https://github.com/mackstann/tinywm
- https://github.com/venam/2bwm
- https://github.com/dylanaraps/sowm
- https://github.com/JLErvin/berry
Which are great at introducing the concepts and allowing you to grok the required libraries.
There are also a bunch of more full featured window managers which will introduce you to more advanced topics:
- https://github.com/baskerville/bspwm
- https://github.com/herbstluftwm/herbstluftwm
- https://www.nongnu.org/ratpoison/
- https://github.com/conformal/spectrwm
Gradually as you get more familiar with the ecosystem a few questions will come up:
Should I use X11 or XCB? - I personally used XCB and didn't find it too difficult to interface with, and there are a large number of implementations which use it (2bwm, bspwm, ratpoison, etc) so you shouldn't have an issue with learning more about it. But the documentation is pretty limited. If you are just wanting to write a toy WM than X11 is perfectly fine.
X or Wayland? - If you're wanting to write your first WM as a hobby project than I would recommend X over wayland just due to the much larger amount of reference material and documentation. You will have a much easier time getting your feet wet. Ignore the comments about X dying as it doesn't really matter for a hobby project, since the whole point is to have fun.
Feel free to check out my window manager which is an example of what just reading this blog post and getting inspired can result in: https://github.com/cfrank/natwm
- Is Debian 11 XFCE a good choice for an old laptop?
patches
-
patch to center tiled windows on the stack
It would be possible to have gaps by default without wasting space, they would just be smaller. Current gaps patches waste even more space than 'resizehints = 0'. This patch appears to be a big challenge, but it would be very interesting to see it done. Something like the centered_size_hints patch but with better space/cpu usage would already be great.
-
Anysize leaving gaps in st
I made this patch after that post for reference: https://github.com/bakkeby/patches/wiki/anysize-simple
-
How can you set the st geometry offset relative to the screen size as a dwm shortcut
I'd recommend that you have a look at the floatrules patch and alternatively if you need percentages then I have another patch called floatpos.
- Make the focusstack feature avoid a certain program.
-
tag.restore and tag.noempty
As for 1. you may want to consider toggletag which is a one-line patch which makes it so that when you do MOD+1 to move to tag 1 and if you do MOD+1 again then it moves you back to the previous tag (5 in the example case).
-
Patch to improve the zoom function
I believe the zoomswap, stacker and restrictfocus patches could help solving this problem. The functions needed to be changed probably are zoom and maybe pop. I tried to figure it out, but couldn't since I don't know C right now. But hopefully the information on this post can help, so one can fix it if he can and wants to.
- patch to separate focus between master and stack areas
-
How do you set the width of dmenu to the screen width after application of the xyw patch?
You may also want to consider applying the barpadding patch for dwm into dmenu, this is easier to do than it sounds. I created an example patch a while back: https://github.com/bakkeby/patches/wiki/barpadding
-
alpha patch makes my dwm doesn't starting
It's difficult to make alpha and systray patches sing together. Use bakkeby patch that does them both: https://github.com/bakkeby/patches/blob/master/dwm/dwm-alpha-systray-6.3_full.diff
-
How do I change multi-monitor tag behaviour
I had an example patch for that: dwm-desktop-6.3.diff
What are some alternatives?
2bwm - A fast floating WM written over the XCB library and derived from mcwm.
dwm-flexipatch - A dwm build with preprocessor directives to decide which patches to include during build time
tinywm - The tiniest window manager.
chadwm - Making dwm as beautiful as possible!
cwm - portable version of OpenBSD's cwm(1) window manager
dwm-single-tagset-6.2 - single-tagset patch for dwm 6.2
i3blocks - The hacker-friendly status_command for Sway and i3
dwm-directionalfocus - Adding directional focus to dwm
spectrwm - A small dynamic tiling window manager for X11.
rofi - A huge collection of Rofi based custom Applets, Launchers & Powermenus.
wlroots - A modular Wayland compositor library
xlivebg - Live wallpapers for the X window system