Use xenodm like startx?

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

Use xenodm like startx?

John Ankarström
Hi,

I just got OpenBSD installed on my new laptop, and so far, it works great. But since I applied the latest X11 patch, I can no longer use startx to launch X11, unless I do it as root, which probably isn’t a good idea. Seems like I have to use xenodm.

The thing is, xenodm is so complicated in comparison to a simple .xinitrc + startx. There are so many files I need to set up that I hardly know where to begin.

I don’t want a login screen, I don’t want X11 to launch at startup. I just want to start X manually from a simple .xinitrc. Surely I can’t be alone.

Any ideas or tips?

Best regards
John

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

Ted Unangst-6
John Ankarström wrote:
> Hi,
>
> I just got OpenBSD installed on my new laptop, and so far, it works great. But since I applied the latest X11 patch, I can no longer use startx to launch X11, unless I do it as root, which probably isn’t a good idea. Seems like I have to use xenodm.
>
> The thing is, xenodm is so complicated in comparison to a simple .xinitrc + startx. There are so many files I need to set up that I hardly know where to begin.
>
> I don’t want a login screen, I don’t want X11 to launch at startup. I just want to start X manually from a simple .xinitrc. Surely I can’t be alone.

You can look for the "running Xorg without root" thread on tech from a few
weeks ago.

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

trondd-2
In reply to this post by John Ankarström
On Wed, January 30, 2019 8:02 pm, John Ankarström wrote:

> Hi,
>
> I just got OpenBSD installed on my new laptop, and so far, it works great.
> But since I applied the latest X11 patch, I can no longer use startx to
> launch X11, unless I do it as root, which probably isnâ**t a good idea.
> Seems like I have to use xenodm.
>
> The thing is, xenodm is so complicated in comparison to a simple .xinitrc
> + startx. There are so many files I need to set up that I hardly know
> where to begin.
>
> I donâ**t want a login screen, I donâ**t want X11 to launch at startup. I
> just want to start X manually from a simple .xinitrc. Surely I canâ**t be
> alone.
>
> Any ideas or tips?
>
> Best regards
> John
>

It's not really that complicated.  The bare minimum is to copy your
.xinitrc to .xsession and then just run xenodm on demand with doas.  All
the configs already exist in /etc/X11/xenodm.  Nothing requires you to run
it at startup.

Here's what I've done:
Copy your .xinitrc to .xsession

Copy (or modify in place) /etc/X11/xenodm/xenodm-config to $HOME

Edit xenodm-config and add
DisplayManager*autoLogin:  yourusername

Comment out the call to Xsetup so you don't get the xconsole window
!DisplayManager._0.setup:     /etc/X11/xenodm/Xsetup_0

Then you can alias it to run it on demand.  Alias to startx if you want.
alias xenodm='doas xenodm -config /home/myusername/xenodm-config'


Only thing I never figured out is how to make X and xenodm shutdown when I
exit my window manager.

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

John Ankarström
trondd <[hidden email]> wrote:

> It's not really that complicated.  The bare minimum is to copy your
> .xinitrc to .xsession and then just run xenodm on demand with doas.  All
> the configs already exist in /etc/X11/xenodm.  Nothing requires you to run
> it at startup.
>
> Here's what I've done:
> Copy your .xinitrc to .xsession
>
> Copy (or modify in place) /etc/X11/xenodm/xenodm-config to $HOME
>
> Edit xenodm-config and add
> DisplayManager*autoLogin:  yourusername
>
> Comment out the call to Xsetup so you don't get the xconsole window
> !DisplayManager._0.setup:     /etc/X11/xenodm/Xsetup_0
>
> Then you can alias it to run it on demand.  Alias to startx if you want.
> alias xenodm='doas xenodm -config /home/myusername/xenodm-config'

Hm.  Thank you.  This works, except the environment in which I run xenodm is lost.  For example, I have ENV=~/.kshrc in my ~/.profile, but this isn't inherited to X11 ... I guess I should add these things to my .xsession, but then I'll have it in two places instead of once.

> Only thing I never figured out is how to make X and xenodm shutdown when I
> exit my window manager.

This too makes me feel like xenodm is far too complex for what I want.

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

Freddy Fisker
Hi

I have never used the startx command. I use the xinit command together with
the ~/.xinitrc file.

Best regards
Freddy Fisker


On Thursday, 31 January 2019 11:57:12 CET, John Ankarström wrote:

> trondd <[hidden email]> wrote:
>> It's not really that complicated.  The bare minimum is to copy your
>> .xinitrc to .xsession and then just run xenodm on demand with doas.  All
>> the configs already exist in /etc/X11/xenodm.  Nothing requires you to run
>> it at startup.
>>
>> Here's what I've done: ...
>
> Hm.  Thank you.  This works, except the environment in which I
> run xenodm is lost.  For example, I have ENV=~/.kshrc in my
> ~/.profile, but this isn't inherited to X11 ... I guess I should
> add these things to my .xsession, but then I'll have it in two
> places instead of once.
>
>> Only thing I never figured out is how to make X and xenodm shutdown when I
>> exit my window manager.
>
> This too makes me feel like xenodm is far too complex for what I want.
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

Bruno Flueckiger
In reply to this post by John Ankarström
On 31.01.19 11:57, John Ankarström wrote:

> trondd <[hidden email]> wrote:
> > It's not really that complicated.  The bare minimum is to copy your
> > .xinitrc to .xsession and then just run xenodm on demand with doas.  All
> > the configs already exist in /etc/X11/xenodm.  Nothing requires you to run
> > it at startup.
> >
> > Here's what I've done:
> > Copy your .xinitrc to .xsession
> >
> > Copy (or modify in place) /etc/X11/xenodm/xenodm-config to $HOME
> >
> > Edit xenodm-config and add
> > DisplayManager*autoLogin:  yourusername
> >
> > Comment out the call to Xsetup so you don't get the xconsole window
> > !DisplayManager._0.setup:     /etc/X11/xenodm/Xsetup_0
> >
> > Then you can alias it to run it on demand.  Alias to startx if you want.
> > alias xenodm='doas xenodm -config /home/myusername/xenodm-config'
>
> Hm.  Thank you.  This works, except the environment in which I run xenodm is
> lost.  For example, I have ENV=~/.kshrc in my ~/.profile, but this isn't
> inherited to X11 ... I guess I should add these things to my .xsession, but
> then I'll have it in two places instead of once.

You could source either file in your ~/.xsession by adding a line like
this to it:

. ~/.kshrc

Depending on the settings you have in ~/.profile and/or ~/.kshrc this
might cause unwanted side effects. You have been warned.

>
> > Only thing I never figured out is how to make X and xenodm shutdown when I
> > exit my window manager.
>
> This too makes me feel like xenodm is far too complex for what I want.
>

Add the following line to /etc/X11/xenodm/xenodm-config:

DisplayManager.*.terminateServer: true

Cheers,
Bruno

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

trondd-2
On Thu, January 31, 2019 7:35 am, Bruno Flueckiger wrote:
>
> Add the following line to /etc/X11/xenodm/xenodm-config:
>
> DisplayManager.*.terminateServer: true
>
> Cheers,
> Bruno
>

That doesn't work how you think it does.  It does shut down the X server
after quitting a window manager but then xenodm will restart X and log you
right back in.  That option is there is prevent resource leaks between X
sessions.

Tim.

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

trondd-2
In reply to this post by John Ankarström
On Thu, January 31, 2019 5:57 am, John Ankarström wrote:
>
>> Only thing I never figured out is how to make X and xenodm shutdown when
>> I
>> exit my window manager.
>
> This too makes me feel like xenodm is far too complex for what I want.
>

It's not an issue of complexity.  It's a different tool that does a
different thing.  Bending it to work like something it's not will
inherently have caveats.

The thing is, what we had before was a trivial privilege escalation.
Sometimes you just have to adapt a little and you can benefit greatly from
improvements.

Tim.

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

lists-2
In reply to this post by Freddy Fisker
Thu, 31 Jan 2019 12:23:08 +0100 Freddy Fisker <[hidden email]>
> Hi
>
> I have never used the startx command. I use the xinit command together with
> the ~/.xinitrc file.

Hi Freddy,

Are you referring to a recent OpenBSD, or some other customised variant?
If that's a bypass of the recent security fixes don't bother responding.
I'm only interested how it solves or improves on-demand X session model.

Kind regards,
Anton Lazarov

> Best regards
> Freddy Fisker
>
>
> On Thursday, 31 January 2019 11:57:12 CET, John Ankarström wrote:
> > trondd <[hidden email]> wrote:  
> >> It's not really that complicated.  The bare minimum is to copy your
> >> .xinitrc to .xsession and then just run xenodm on demand with doas.  All
> >> the configs already exist in /etc/X11/xenodm.  Nothing requires you to run
> >> it at startup.
> >>
> >> Here's what I've done: ...  
> >
> > Hm.  Thank you.  This works, except the environment in which I
> > run xenodm is lost.  For example, I have ENV=~/.kshrc in my
> > ~/.profile, but this isn't inherited to X11 ... I guess I should
> > add these things to my .xsession, but then I'll have it in two
> > places instead of once.
> >  
> >> Only thing I never figured out is how to make X and xenodm shutdown when I
> >> exit my window manager.  
> >
> > This too makes me feel like xenodm is far too complex for what I want.
> >
> >
> >  
>

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

Freddy Fisker
Hi

I am using the Xfce desktop, and the only thing I am doing is making the

file with:

$ echo xfce4-session > ~/.xinitrc


And then starting the Xfce desktop with the command:

$ xinit


Best regards
Freddy Fisker


On Thursday, 31 January 2019 16:55:20 CET, [hidden email] wrote:

> Thu, 31 Jan 2019 12:23:08 +0100 Freddy Fisker <[hidden email]>
>> Hi
>>
>> I have never used the startx command. I use the xinit command
>> together with
>> the ~/.xinitrc file.
>
> Hi Freddy,
>
> Are you referring to a recent OpenBSD, or some other customised variant?
> If that's a bypass of the recent security fixes don't bother responding.
> I'm only interested how it solves or improves on-demand X session model.
>
> Kind regards,
> Anton Lazarov
>
>> Best regards
>> Freddy Fisker
>>
>>
>> On Thursday, 31 January 2019 11:57:12 CET, John Ankarström wrote: ...
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

Greg Jones-8
In reply to this post by trondd-2
My .xsession looks like this:

userresources=$HOME/.Xresources

if [ -f "$userresources" ]; then
         /usr/X11R6/bin/xrdb -merge "$userresources"
fi

export ENV='$HOME/.kshrc'

# See /usr/local/share/doc/pkg-readmes/dbus

# if dbus is installed, start its daemon
if [ -x /usr/local/bin/dbus-launch -a -z "${DBUS_SESSION_BUS_ADDRESS}"
]; then
         eval `dbus-launch --sh-syntax --exit-with-x11`
fi

# I like my cursor bigger, needs adwaita-icon-theme port

export XCURSOR_PATH="/usr/local/share/icons"
export XCURSOR_THEME=Adwaita
export XCURSOR_SIZE=32

numlockx on &

exec icewm-session


On 1/31/19 10:36 AM, trondd wrote:

> On Thu, January 31, 2019 5:57 am, John Ankarström wrote:
>>> Only thing I never figured out is how to make X and xenodm shutdown when
>>> I
>>> exit my window manager.
>> This too makes me feel like xenodm is far too complex for what I want.
>>
> It's not an issue of complexity.  It's a different tool that does a
> different thing.  Bending it to work like something it's not will
> inherently have caveats.
>
> The thing is, what we had before was a trivial privilege escalation.
> Sometimes you just have to adapt a little and you can benefit greatly from
> improvements.
>
> Tim.
>

Reply | Threaded
Open this post in threaded view
|

Re: Use xenodm like startx?

lists-2
In reply to this post by Freddy Fisker
Thu, 31 Jan 2019 17:33:01 +0100 Freddy Fisker <[hidden email]>
> Hi
>
> I am using the Xfce desktop, and the only thing I am doing is making the
>
> file with:
>
> $ echo xfce4-session > ~/.xinitrc
>

Hi Freddy,

Alright, I was running startx pretty happily with an .xinitrc to set up
programs started, terminal positions & everything, then along comes the
notorious fix and now, it's renamed to .xsession, and xenodm starts it.

But now I have to log twice to the console and then again log in to the
X display manager, which I totally don't like having to do, a nuisance.

The console is used ironically to setup & add ssh agent keys, before X.
So that the agent could persist and be used regardless of the X server.

With the help of the tips from this thread, now it's back to manual log
at the console and running the x alias to start the session.  All good.

https://man.openbsd.org/xenodm#RESOURCES

  DisplayManager.*.autoLogin
  DisplayManager.*.terminateServer

The only issue is, these sets of complexities called xenodm, needlessly
just because people want to log in a Windows graphical display manager.

I just have no use for this login manager stuff, and never had any use,
of desktop environments complex dysfunctional distro style all mixed up
graphical 'experience'.  Plain cwm, simplest X setup and it just works.

It would be nicer if we could run X with a session file WITHOUT xenodm.
Not sure your suggested xinit is not a fall through of the setuid bug..

  2018-10-26 setuid bit removed from /usr/X11R6/bin/Xorg
  The Xorg binary is no longer installed setuid.
  So startx(1) can no longer be used by non-root users.
  The xenodm(1) display manager has to be used.

Kind regards,
Anton Lazarov

>
> And then starting the Xfce desktop with the command:
>
> $ xinit
>
>
> Best regards
> Freddy Fisker
>
>
> On Thursday, 31 January 2019 16:55:20 CET, [hidden email] wrote:
> > Thu, 31 Jan 2019 12:23:08 +0100 Freddy Fisker <[hidden email]>  
> >> Hi
> >>
> >> I have never used the startx command. I use the xinit command
> >> together with
> >> the ~/.xinitrc file.  
> >
> > Hi Freddy,
> >
> > Are you referring to a recent OpenBSD, or some other customised variant?
> > If that's a bypass of the recent security fixes don't bother responding.
> > I'm only interested how it solves or improves on-demand X session model.
> >
> > Kind regards,
> > Anton Lazarov
> >  
> >> Best regards
> >> Freddy Fisker
> >>
> >>
> >> On Thursday, 31 January 2019 11:57:12 CET, John Ankarström wrote: ...  
> >
> >
> >  
>