aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
AgeCommit message (Collapse)Author
2025-05-09refactor(main): eliminate a `mut` from config load code in main James Sully
I think this makes for marginally better readability, since you don't have to wonder whether config_errored is set anywhere else. It's also slightly terser.
2025-05-08fix: don't try to create a default config at path that existsJames Sully
Currently this bug has no actual consequences, we just continue silently on AlreadyExists in main() (this line: https://github.com/YaLTeR/niri/blob/e9c6f08906143c3fec1ad1301d538bef4cbc1978/src/main.rs#L151). This commit just eliminates the redundant attempt.
2025-03-22main: Log to stderr instead of stdoutJon Heinritz
Currently we can't use logging in paths like niri msg that have meaningful stdout. Logging to stderr makes that possible. Even if we don't want to log anything in niri msg code paths, it's easy to have something accidentally log.
2025-03-10Add Shell completions (#1226)Jon Heinritz
* feat(cli): add subcommand to generate shell completions * Update src/cli.rs Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-02-16Enable fancy miette errors for the main binaryIvan Molodetskikh
Seems there's not much dependency/binary size impact now, compared to when I first made the KDL config.
2025-02-12Parse the config on the file watcher threadIvan Molodetskikh
It takes a while, so let's not block the main thread.
2025-02-12watcher: Allow running a processing function on the threadIvan Molodetskikh
2025-02-05Initialize tracing_subscriber earlierpeelz
2025-01-27Don't create on-disk sockets in testsIvan Molodetskikh
2025-01-13Support `WAYLAND_SOCKET` in winit backendbbb651
I know of a single compositor that supports `WAYLAND_SOCKET` but not `WAYLAND_DISPLAY`: https://gitlab.freedesktop.org/mstoeckl/windowtolayer This should also make niri more robust against accidentally setting `WAYLAND_SOCKET` when starting as a session, before programs could fail if they preffered `WAYLAND_SOCKET` over `WAYLAND_DISPLAY`
2024-12-22Add a Headless backend for testsIvan Molodetskikh
Rendering and stuff is unimplemented.
2024-11-29xdg: startup activationChristian Meissl
pass an activation token to process spawned through actions
2024-11-25Refactor animation timing to use lazy clocksIvan Molodetskikh
2024-11-02Add Tracy allocation profiling feature flagIvan Molodetskikh
2024-09-13Add NIRI_DISABLE_SYSTEM_MANAGER_NOTIFY envIvan Molodetskikh
Useful for UWSM I guess.
2024-09-04ipc: Don't re-export socket typesIvan Molodetskikh
2024-09-02Read config from /etc/niri/config.kdl tooIvan Molodetskikh
2024-06-28Implement support for `$NIRI_CONFIG` environment variablesodiboo
2024-05-23Increase RLIMIT_NOFILE to maximumIvan Molodetskikh
Fixes Xwayland + RustRover crashing. See similar changes: * https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2235 * https://github.com/swaywm/sway/pull/6629
2024-05-09Start Tracy manual-lifetime after niri msgIvan Molodetskikh
2024-04-21Implement window-resize custom-shaderIvan Molodetskikh
2024-03-06Remove NOTIFY_FD after reading itIvan Molodetskikh
2024-03-06Adjust commentsIvan Molodetskikh
2024-03-06Add dinit support (#246)metent
* Add dinit support - Add --notify-fd cli flag for ready notifications - Set dinit activation environment when "dinit" feature flag is enabled * Make systemd and dinit environment activation additive * Use NOTIFY_FD env variable instead of --notify-fd cli flag for sending ready notifications * Format with rustfmt
2024-02-24Add environment {} config sectionIvan Molodetskikh
2024-02-22Fix new warningsIvan Molodetskikh
2024-02-21Move watcher to utilsIvan Molodetskikh
2024-02-21Move spawn to submoduleIvan Molodetskikh
2024-02-21Upgrade logs about removing env vars to warn!Ivan Molodetskikh
These are more visible now with the --session flag.
2024-02-21Add systemd feature flag for systemd-specific thingsIvan Molodetskikh
2024-02-21Set XDG_CURRENT_DESKTOP and XDG_SESSION_TYPE from niri itselfIvan Molodetskikh
2024-02-21Add --session CLI flag instead of detection based on systemd serviceIvan Molodetskikh
Allows running without systemd.
2024-02-20utils/spawn: Put processes into systemd scopesIvan Molodetskikh
This separates them from the niri scope for the purposes of e.g. the OOM killer only killing the app and not the compositor.
2024-02-12Export NIRI_SOCKET to systemd/dbus environmentIvan Molodetskikh
2024-02-10Move CLI types to submoduleIvan Molodetskikh
2024-02-07Clamp animation slowdown to sane valuesIvan Molodetskikh
2024-02-07Make all animations configurableIvan Molodetskikh
2024-02-05Add lib.rs, become a mixed lib-bin crateIvan Molodetskikh
Will be used for visual tests.
2024-02-01Add error messages to backend initializationIvan Molodetskikh
2024-01-30Implement wlr-foreign-toplevel-managementIvan Molodetskikh
The parent event isn't sent but whatever.
2024-01-28Show notification about creating a default configIvan Molodetskikh
2024-01-28Create default config file if missingIvan Molodetskikh
2024-01-28Mark Msg as pubIvan Molodetskikh
Seems to break the build on 1.72.0 otherwise.
2024-01-19Print git version in clap tooIvan Molodetskikh
2024-01-19Add exit confirmation dialogIvan Molodetskikh
2024-01-18Add an important hotkeys overlayIvan Molodetskikh
2024-01-18Add a config parse error notificationIvan Molodetskikh
We can't rely on a notification daemon being available, especially during initial niri setup. So, render our own.
2024-01-18Watch config path even if it didn't exist at startupIvan Molodetskikh
2024-01-17Add an IPC socket and a niri msg outputs subcommandIvan Molodetskikh
2024-01-09Add panic subcommand to check backtracesIvan Molodetskikh