aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-08-17docs: location-agnostic index page (#2256)Kent Daleng
* Update index.md a simple suggestion for a location-agnostic index page * Update docs/wiki/index.md Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-17readme: use links to docs instead of gh wikiKent Daleng
(i'm obsessed with making pull requests right in the browser)
2025-08-17ci: Add some blank linesIvan Molodetskikh
2025-08-17rpkg: Fix wiki pathIvan Molodetskikh
2025-08-17ci: Add missing permIvan Molodetskikh
2025-08-17github wiki replacement / mkdocs-docs (#2147)Kent Daleng
* Add wiki based on mkdocs * wording fixes * fix github bg color on narrow * Fix left sidebar section headers being bigger than pages * fix hover accent * fix list rendering on fractional layout * fix videos * fix automatic full links * remove redundant commented css * improve dark mode contrast * update pygments for better child node coloring * update logo * remove blank lines * add systemd language hint --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-17tty: Remove warning when rendering with inactive deviceIvan Molodetskikh
2025-08-17Add FreeBSD CI (#2072)Matej Cotman
* feat(ci): add FreeBSD job * Update .github/workflows/ci.yml * fix(workflow): remove 10m timeout for freebsd job, put it back later if there is an actual reason * feat(workflow): enable cache on freebsd job * feat(workflow): add custom CARGO_HOME for freebsd job * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * wip * clean-up * test cache --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-17Add ConfigLoaded event to IPC, option to disable built-in notification (#1829)Horu
* feat: config reload ipc event * cleanups * Rename and move the new config option * rename to ConfigLoaded and emit at connection --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-16niri-ipc: Add window positions and sizes (#1265)yrkv
* Add window sizes and positions to the IPC * basic fixes * report window_loc instead of window pos * clean ups * make scrolling indices 1-based * add printing to niri msg windows * don't include render offset in floating tile pos --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-16README: Link DiscordIvan Molodetskikh
2025-08-16flake: skip tests that require a valid EGL display (#2244)Cole Helbling
* flake: skip tests that require a valid EGL display Otherwise: niri> failures: niri> niri> ---- tests::animations::clientside_height_change_doesnt_animate stdout ---- niri> niri> thread 'tests::animations::clientside_height_change_doesnt_animate' panicked at src/tests/animations.rs:87:54: niri> called `Result::unwrap()` on an `Err` value: error creating EGL display niri> niri> Caused by: niri> Unable to obtain a valid EGL Display. niri> note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace niri> niri> ---- tests::animations::height_resize_animates_next_y stdout ---- niri> niri> thread 'tests::animations::height_resize_animates_next_y' panicked at src/tests/animations.rs:87:54: niri> called `Result::unwrap()` on an `Err` value: error creating EGL display niri> niri> Caused by: niri> Unable to obtain a valid EGL Display. niri> niri> niri> failures: niri> tests::animations::clientside_height_change_doesnt_animate niri> tests::animations::height_resize_animates_next_y niri> niri> test result: FAILED. 147 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.45s * flake: skip all animations tests, present and future Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> * fixup: typo --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-15watcher: Refactor tests to not use threadsIvan Molodetskikh
Fixes flakiness, removes unnecessary waiting.
2025-08-14watcher: Mark tests as ignoredIvan Molodetskikh
Until someone figures out how to fix the flakiness. See https://github.com/YaLTeR/niri/issues/2226
2025-08-14niri.spec.rpkg: Add mesa-libEGL to build requirementsIvan Molodetskikh
Needed for the client-server animation tests. Signed-off-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-14layout: Offset ongoing column X move anims for non-animated resizesIvan Molodetskikh
2025-08-14layout/tests: Add two width resize tests with the same issue as just fixedIvan Molodetskikh
2025-08-14layout/scrolling: Normalize column X move anim from 1 to 0Ivan Molodetskikh
Will be needed for offsetting to fix the resize cancel issue.
2025-08-14layout: Offset Y animations for non-animated resizesIvan Molodetskikh
2025-08-14layout/tests: Add column resize animation testsIvan Molodetskikh
2025-08-14layout/tests: Add CompleteAnimations opIvan Molodetskikh
2025-08-14layout/tests: Support forced test window sizeIvan Molodetskikh
2025-08-14layout/tests: Support animation snapshotIvan Molodetskikh
Only the size is needed in these tests; needed for testing animation progress.
2025-08-14layout/tests: Extract check_ops_on_layout()Ivan Molodetskikh
2025-08-14layout: Remove by-ref animation_snapshot() getterIvan Molodetskikh
It was used in only one place, and that place was due for an update to use the cached data.
2025-08-14Add basic client-server resize animation testsIvan Molodetskikh
2025-08-14headless: Add a rendererIvan Molodetskikh
To be used for animation tests that need animation snapshots. The renderer is optional to avoid creating it thousands of times in tests when it's not needed, plus it can deadlock in mesa apparently.
2025-08-13use ScanoutCandidate kind for surfacesChristian Meissl
this allows to get direct scan-out on surfaces again
2025-08-11Fix new lifetime warningsIvan Molodetskikh
2025-08-11Update dependenciesIvan Molodetskikh
2025-08-11Bump Smithay (xkbcommon wvkbd fix)Ivan Molodetskikh
2025-08-09Add the `LoadConfigFile` action (#2163)vanderlokken
* Add the `LoadConfigFile` action * fixes --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-07niri-config: add keep-max-bpc-unchanged option (#2195)BB
* niri-config: add disable-set-bpc option setting bpc to 8 bricks some OLED displays driven by amdgpu * change to keep-max-bpc-unchanged and add to wiki * fmt * Update wiki/Configuration:-Debug-Options.md --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-07Reload libinput settings when trackball, tablet and touch changeIvan Molodetskikh
Somehow missed this before.
2025-08-05fix hot reloading `/etc/niri/config.kdl` (#1907)sodiboo
* refactor config load logic, and properly watch the system config path * move config creation to niri-config, and make the errors a bit nicer notably, "error creating config" is now a cause for "error loading config", instead of it being one error and then "error loading config: no such file or directory". also, failure to load a config is now printed as an error level diagnostic (because it is indeed an error, not just a warning you can shrug off) * refactor watcher tests; add some new ones now they check for the file contents too! and i added some tests for ConfigPath::Regular, including a messy one with many symlink swaps * fixes --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-08-04pw_utils: Add Tracy span to queue_after_sync()Ivan Molodetskikh
2025-08-04pw_utils: Set sequence in buffer meta headerIvan Molodetskikh
Useful for debugging.
2025-08-04pw_utils: Remove commented-out unused buffer propsIvan Molodetskikh
2025-08-04pw_utils: Wait for frame completion before queueingIvan Molodetskikh
Without explicit sync, we have no way to signal the PipeWire consumer when the rendering is done. So, wait until it's done before giving it the frame. This should fix flickering screencasts on NVIDIA.
2025-08-04pw_utils: Fill dmabuf strides and offsets at add_buffer()Ivan Molodetskikh
As far as I understand, these don't change.
2025-08-04pw_utils: Store LoopHandleIvan Molodetskikh
2025-08-04pw_utils: Switch to using raw pw_buffersIvan Molodetskikh
We're gonna need to store these in the future, and the lifetime on the pw-rs Buffer prevents us from easily doing that. Besides, we'll need access to metadata which pw-rs doesn't expose yet.
2025-08-04pw_utils: Extract shared state to CastInnerIvan Molodetskikh
2025-08-04pw_utils: Unmark CastState as pubIvan Molodetskikh
2025-08-04pw_utils: Add clarifying comments on maxsize and sizeIvan Molodetskikh
2025-07-31Upgrade dependenciesIvan Molodetskikh
Leave gtk-rs for now as it bumped MSRV to 1.83.
2025-07-31Update Smithay (clipboard client exit nil fix, input region bottom-right fix)Ivan Molodetskikh
2025-07-31signals: Gate on target_os = "linux"Ivan Molodetskikh
Hopefully fixes build on FreeBSD.
2025-07-31signals: Reduce fn visibilityIvan Molodetskikh
2025-07-31xwayland: Make abstract socket optional and Linux-onlyIvan Molodetskikh
Hopefully fixes build on FreeBSD.