Code Monkey home page Code Monkey logo

rdm's People

Contributors

1wilkens avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

rdm's Issues

Find a new name

As multiple people have pointed out RDM is already used by Redis Desktop Manager among others.
For v0.1 a non-clashing name would help discoverability and avoid potential problems down the road.

I'll post ideas and suggestions here as I come up with them.

Improve session startup story

Currently only ~/.xinitrc is executed to start a user session. This approach is very simple but unnecessarily static and should be extended to include /etc/xsessions and whatever other reasonable standards exist.

As this is purely an enhancement it is not a blocker for v0.1

xauth file / .Xauthority

Currently an xauth file is generated and written to disk but not used when launching X, because the concept of .Xauthority is not quite clear. Adding the flag to the launch prevents gtk from opening the display. This is weird because the main ui (via gtk) will always be executed as root and as such should have access to X under all circumstances.

Also it is just not clear what .Xauthority actually does. In theory it should limit access to the X server but the auth file via startx actually contains multiple magic cookies while .Xauthority only contains 1.

More research is required to figure out what the "best practices" are.
Although this is an enhancement it is the de-facto standard in all other display managers so it is a blocker for v0.1

Correctly work with systemd/logind

Currently the session started by rdm is partly recognized by loginctl (no seat or tty attribute present) and all authentication attempts (for example shutdown/reboot) fail with Failed to power off system via logind: Interactive authentication required..
This indicates that the pam_systemd.so module is not properly executed for the session (although the runtime directory in /var/run/user/ is created..) which might be caused by a problem in the pam configuration file.

More research is needed to determine which practices we need to follow.

As proper systemd support is one of the core principles rdm is built on, this is a blocker for v0.1!

Session should not be started as root

Currently the user session is invoked as root which effectively makes any shell opened in it a root-shell. This is obviously wrong and dangerous especially with a malicious .xinitrx.

The reason for this is not completely clear. rdm's subthread for the session invokes pam_open_session which should change the user but apparently this is not enough to do so.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.