-
Notifications
You must be signed in to change notification settings - Fork 348
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow compilation without X11 #1290
Conversation
Compilation worked, and on the library side it looks good: Both enabled:
Only wayland:
Simple test also worked. |
#include "x11/x.h" | ||
#endif | ||
|
||
// Note: Wayland doesn't support hotkeys |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe a bit strict, but shouldn't the comment be that global hotkeys
aren't possible?
Hotkeys for active windows in general exist, but those don't work well with how dunst operates
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you are totally right. I am not a great expert of wayland myself, so I was not sure what to write. Initially I thought that dunst didn't implement them, but then I saw that by design wayland didn't allow them (for dunst)
It shouldn't really matter since I didn't really change the driver code and my only concern was if I messed some ifdefs 🙄 Anyway I'm glad that it works 👍🏻 |
I'll go ahead and merge this 👍🏻 |
This missed the test suite, which is required to build on Meson - since the test program shares the same dependencies as Dunst. If it is needed, i can hide the test program behind a flag, which adds an extra step to running the test program. |
This is an error on my part, I missed that part of the tests since it uses a "dummy output". I will push a fix shortly. So just account for having wayland, x11 or both. Also note that I put an |
Nice, but it is very ugly:
Additionally, configuring the project should handle this. It is like preparing your food, but then realizing you forgot a key ingredient after cooking it, vs checking if you have the ingredient before cooking. |
mmh. Maybe you are right. I am a little stuck with the makefile mentality 🤣 I will leave the |
That is a problem. Hearing this, i now feel dunst is trying to solve a problem when solutions exist, such as autoconf, cmake, meson, and so many others. If you want configuration without the need of build flags with a makefile, then use autoconf, or a required config.mk At this point, i would just remove the Makefile, considering this got merged. Don't get me wrong, i like Makefiles, but please: use the right tool for the job. Make is good for simple projects, but in the context of Dunst, where there is many source files, build features, version control, tests, documentation, making use of Makefile is not fit for this purpose. |
the fact is, make has been used from the start, so removing it point blank is not possible. It can be removed, but we must give users a bit of time to switch. Also we need to document this changes. But I understand your point |
With these changes you can compile dunst with only wayland support.
Important note: At the moment I don't have a working wayland setup so I can't test if everything is ok. I guess so since the changes are minimal, but if someone with wayland could test this it would be great.
Update: Narrat reviewed the changes. Somewhere in the near future this will be merged hopefully
Closes #1008