NEOFLUX-SESSION(1) User Commands NEOFLUX-SESSION(1)

neoflux-session - session wrapper that starts neoflux from a display manager

neoflux-session [neoflux-options]

neoflux-session is a small shell wrapper meant to be the entry point for a graphical (display-manager) login. It prepares the per-user X session environment, then hands off to neoflux(1). It plays the role startfluxbox(1) plays for Fluxbox.

In order, it:

  • Sources ~/.xprofile if present, so the user's exported session environment (PATH, locale, $EDITOR, ssh/gpg agents, autostarted variables, ...) is in place. It is sourced rather than executed, so exported variables persist into the session.
  • Loads X resources with xrdb(1): ~/.Xresources if readable, otherwise ~/.Xdefaults, merged into the X server's RESOURCE_MANAGER property so neoflux's Xresources overlay (and every other X client that honors Xresources) sees them.
  • Replaces itself with exec neoflux, passing along any arguments it received. No --replace is used: launched from a display manager, there is no prior window manager to take over from.

neoflux itself does not source ~/.xprofile or run xrdb(1) — by design it reads the effects of the session environment (for example the RESOURCE_MANAGER property) but does not own session plumbing. Many display managers run an Xsession wrapper that already does this work, but it is not universal; doing it here makes neoflux start consistently regardless of the display manager. Both steps are idempotent, so repeating work the display manager already did is harmless.

Point an xsessions desktop entry's Exec= line at this script (this is what the shipped neoflux.desktop does), so the login greeter offers “NeoFlux” as a session and starts it through the wrapper. When packaged, the script is installed on PATH (e.g. /usr/bin/neoflux-session).

To start neoflux from a plain ~/.xinitrc under startx(1) instead, the wrapper is unnecessary — put the same .xprofile / xrdb steps in your .xinitrc (or just exec neoflux if your environment is already set up).

~/.xprofile
Sourced for session environment, if present.
~/.Xresources
~/.Xdefaults
Merged into RESOURCE_MANAGER via xrdb -merge (the first that exists).
/usr/share/xsessions/neoflux.desktop
The display-manager session entry that runs this wrapper.

neoflux(1), xrdb(1), startfluxbox(1), Xsession(5)

neoflux is developed by Chris (OsugiSakae).

June 30, 2026 neoflux 0.5.3