Skip to content

Ragnar build + EWMH status bars compliance - #69

Merged
cococry merged 47 commits into
cococry:mainfrom
h8d13:main
Jul 26, 2026
Merged

Ragnar build + EWMH status bars compliance#69
cococry merged 47 commits into
cococry:mainfrom
h8d13:main

Conversation

@h8d13

@h8d13 h8d13 commented Jul 23, 2026

Copy link
Copy Markdown
Contributor
Screenshot_20260723_165041

src/config.c:317 in replaceplaceholder:

According to C23 needs to be:

ins = (char*)strstr(str, placeholder);

Meanwhile the loop bellow it I think might have leaks. replaceplaceholder mallocs, the result is assigned to modifiers and never freed. Adapted in same first commit.

Misc:

Fixed .gitignore pattern

Added a small note to readme about default apps that ragnar expects, without them you are kind of stuck, stepbro

Tests: in a fresh Archlinux box :)

h8d13 added 3 commits July 23, 2026 16:24
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
@h8d13 h8d13 changed the title Ragnar build + some small details Ragnar build + small details Jul 23, 2026
h8d13 added 4 commits July 23, 2026 17:29
* temp point to fork
* ign `pkg/` staging dir

Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
* build: honor external CFLAGS, make api lib incremental
* api target renamed to lib/libragnar.a, the file ar actually writes
* pkg: bump pkgrel, disable debug split, drop ragnarstart install
* pkg: add contributor line
* chore: add git clean helper
* chore: ignore makepkg source mirror and package tarballs

Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Comment thread PKGBUILD
pkgdesc="Minimal, flexible & user-friendly X tiling window manager"
arch=('x86_64')
url="https://github.com/cococry/Ragnar"
url="https://github.com/h8d13/ragnar"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you'd have to edit these back to your repo; was needed for testing only on a fresh box.

h8d13 added 3 commits July 23, 2026 18:02
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
@h8d13

h8d13 commented Jul 23, 2026

Copy link
Copy Markdown
Contributor Author

Sorry about touching other files lmao saw the pkgbuild wasn't finished and couldn't resist... + bonus it was not honoring arch's default flags (also fixed).

Aims at: #53 + instructions in readme for #51

h8d13 added 16 commits July 23, 2026 19:06
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Comment thread cfg/ragnar.cfg
# windows
win_border_width = 0;
# Specifies the color of the border around client
win_border_width = 2;

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was for debugging kb only modes :)

Comment thread cfg/ragnar.cfg
key = "KeyS";
do = "runcmd";
cmd = "dmenu &";
cmd = "dmenu_run &";

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Menu simply empty without this change

Comment thread src/ragnar.c
*
* @param s The window manager's state
* @param skip_floating Whether or not to skip floating clients
*/

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Believe these were never called

h8d13 added 8 commits July 24, 2026 13:28
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
note about fonts in readme

Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
do not advertise a non-functional feature

Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Comment thread src/ragnar.c
// Docks (status bars etc.) stay unmanaged: map them as-is and
// reserve the space their struts request
if (iswindowdock(s, map_ev->window)) {
xcb_map_window(s->con, map_ev->window);

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This adds support for default bars such as polybar

Image

Comment thread Makefile Outdated
CFLAGS = -O3 -ffast-math -Wall -Wextra -pedantic
CFLAGS += -isystem api/include
CFLAGS ?= -O3 -ffast-math
ALL_CFLAGS = $(CFLAGS) -Wall -Wextra -pedantic -isystem api/include

@h8d13 h8d13 Jul 24, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

respect the distro's CFLAGS. + incremental build on API

h8d13 added 6 commits July 24, 2026 16:18
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
belongs in `.xinit` or /etc/environment or `.bashrc`/`.bash_profile`
nuke xephyr optional dep. QEMU testing instead

Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
@h8d13

h8d13 commented Jul 24, 2026

Copy link
Copy Markdown
Contributor Author
image

Fully working now even handles events from polybar EWMH compliant

Sorry bout the large blast radius. Perhaps you can cherry pick what you want, or something. I tried to add some comments here so that could help.

A lot of LoC changes where trailing white spaces too.

@h8d13 h8d13 changed the title Ragnar build + small details Ragnar build + EWMH status bars compliance Jul 24, 2026
h8d13 added 7 commits July 24, 2026 18:33
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
  * `make api` separate
  * always install `.cfg` to `/etc/`
  * PKGBUILD `backup=` for config migrations
  * `install.sh` should work regardless if you are `UID` 0 or 1000+

Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
Signed-off-by: h8d13 <hadean-eon-dev@proton.me>
@cococry
cococry merged commit 3b8c0b0 into cococry:main Jul 26, 2026
@h8d13

h8d13 commented Jul 26, 2026

Copy link
Copy Markdown
Contributor Author

@cococry dont forget the url back to yours in PKGBUILD :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants