106b7cb4e06d73d568f5f691fde21947096f9c93
The login shell spawn was failing/hanging because login inherits its CWD from init, which on the live image is on the 'initfs' scheme. apply_login_schemes() switches to a namespace with only DEFAULT_SCHEMES (no 'initfs'), leaving that inherited CWD fd unresolvable; relibc resolves paths through the CWD fd (AT_REDOX_CWD_FD), so the shell child's chdir + execve then fail with ENOENT (getty respawns login in a loop) or hang. chdir into the user's home (on the always-present 'file' scheme, fallback '/') while still in the full namespace, so the CWD fd stays valid after the restriction and the shell spawns.
Redox OS user and group utilities.
The userutils crate contains the utilities for dealing with users and groups in Redox OS.
They are heavily influenced by UNIX and are, when needed, tailored to specific Redox use cases.
These implementations strive to be as simple as possible drawing particular inspiration by BSD systems. They are indeed small, by choice.
Currently included:
getty: Used byinit(8)to open and initialize the TTY line, read a login name and invokelogin(1).id: Displays user identity.login: Allows users to login into the systempasswd: Allows users to modify their passwords.su: Allows users to substitute identity.sudo: Enables users to execute a command as another user.useradd: Add a userusermod: Modify user informationuserdel: Delete a usergroupadd: Add a user groupgroupmod: Modify group informationgroupdel: Remove a user group
Description
RedBear Operating System, based on RedoxOS. Licenced under MIT license.
https://redbearos.org
Languages
C
37.5%
C++
37.2%
JavaScript
6.7%
QML
3.4%
HTML
3.2%
Other
11.4%