Closed ClassickTech closed 4 months ago
@ClassickTech Why is NixOS this complicated. I never used it but it seems like you guys do a lot of extra work to build packages. Regardless, I appreciate the effort put into this, if all this work without any issues, then I would suggest you 1- create a .md for it under zwm/docs 2- reference it in readme for NixOS users and 3- open a PR for it. Thanks again!
I'll leave this open anyway for NixOS users
Yea it's pretty complicated but the pros outweigh the cons and the payoff is a thing of beauty ;).
Thanks for this. Working great so far.
I also fixed the formatting in my original comment. It was a mess. lol
I think I found a bug. I finally got it to NOT run in a sandboxed Zephyr window by going to tty and running "startx ./.xinitrc ". The problem is, it treats all 3 of my monitors like one big window. Terminal opens up across all 3 monitors. So does firefox and so forth and so on. Arandr recognizes 3 monitors, but it doesn't help. Have you tried this using multiple monitors?
@ClassickTech As of now, multi-monitor support isn't implemented in ZWM. I have it on my list of tasks, i will start working on it soon.
Ahhhh bummer. Guess I will just try it on my laptop!
@ClassickTech are you using nvidia gpu by any chance?
@ClassickTech zwm now supports multiple monitors. If you wanna try it out use the impl-multi-monitor branch. The PR is not merged to main yet, im still testing it out and fixing bugs along the way.
@ClassickTech are you using nvidia gpu by any chance?
No I am not. Not a gamer and they just give way too many issues on Linux.
@ClassickTech zwm now supports multiple monitors. If you wanna try it out use the impl-multi-monitor branch. The PR is not merged to main yet, im still testing it out and fixing bugs along the way.
Nice!
Multi-monitor support has been merged to main now. It should work on both nvidia and amd gpus.
There are a few things not mentioned and changes needed to be made to build this on NixOS. So I am making this quick how to just in case any other Nix user has issues.
First create a default.nix file with the dependencies needed (i made mine in ~/.config/zwm/ directory):
Build that: cd to that directory and "nix-build".
Now make this zwm.nix in /etc/nixos/:
Then sudo nixos-rebuild switch.
Now go to ~/.config/zwm and create .xinitrc file:
Now create a run.sh in the same directory:
Run the run.sh to start or bind it to a key.
A few notes as to why this is such a hard build and hopefully this will help you out:
the original install directory in the makefile "PREFIX = /usr/local" is not possible because that is read only on nixos. So it is modified in default.nix.
you will get a log error so go ahead and create the directory: mkdir ~/.local/share/xorg/
the filepaths in the .xinitrc are just completely different due to NixOS having Read Only root directories.
!/bin/sh needs to be changed to #!/usr/bin/env bash
the names of the build dependencies in default.nix are slightly different than listed here on the read.me so pay attention.
I am a NixOS noob so this was a fun excersize to figure out and learn more how things work. I still have to figure out how to get it to show up as an option on LightGM login screen.