-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
trusty X server display malfunctions when uid != 1000 #908
Comments
Your crouton version is a bit old, and that specific issue was fixed in #859. You should probably start by fetching the latest crouton installer and updating your chroot. Then, regarding running crouton as user 1100, when we create user 1000 we add it to several groups ( |
Yes, a newer version of crouton ( version 1-20140618114627~master:e43062bf ) does seem to fix the LXDE logout, mouse and keyboard layout issues. Running Interestingly, inside my old chroot (named
Due to my custom path, the wrong Perhaps Crouton's Another ancillary issue that I forgot to mention previously: Because I run
Perhaps this should be created as a separate issue? I am not aware of any negative side effects. |
Yeah. A lot of things in crouton rely on
We could. Now, on each update, we add the necessary groups to user 1000. So you're a bit of a special case here...
Yeah, crouton has not really been designed thinking about multi-user with different UID (or maybe it was originally and I broke it)...
No, that's basically the same issue: we don't support UID != 1000 (you can rename the issue if you want, though). I'll think about it, maybe by making sure all shared files are under GID 100 (
You will definitely run into problems if xbindkeys fails to start (if you close the first chroot the second xbindkeys will not start). |
I was just thinking of printing an error message and aborting if the group requirements were not satisfied. The alternative (as is done at present) is to launch an X session that will almost certainly be broken.
Perhaps a note should be added to In my case, I did not want my Ubuntu processes to be able to send signals to
IMO, stale lock files should be removable. Alternatively, if
But I may not be using |
I had intended to make crouton multi-user safe from the start, but more or less forgot about it as general integration and compatibility improved. We should definitely do a scrub and get things working well for multi-user scenarios again (and add a test for it). |
Another multi-user issue to be aware of is write access to |
We should probably limit ~/Downloads bindmounting to just uid 1000, and possibly uid 0. |
Actually, we should map group chronos-access to "crouton" inside the chroot, and start using that as the gid for our various lock files as well. |
I did run into this issue when I created an additional user account within the chroot environment (Ubuntu Trusty with xfce), and then started the chroot environment with "sudo startxfce4 -u ". My main goal is to have accounts with different home directories. I don't care whether the users share the same user id. Therefore I changed the user and group id for the additional user account to 1000/1000 in the /etc/passwd file of the chroot environment. The strange thing is that the problems persist, for example characters typed on the keyboard within the terminal application aren't echoed. Are there any easy workarounds for the use case to have multiple home directories selectable by the "-u" option when starting the chroot environment with startxfce4? |
Did you try this workaround? I have not used XFCE, just Openbox. |
Hmm, chronos-access is gid=1001, which will mean the second user will have uid=1001,gid=1002...is that okay? |
Maybe devbroker-access is a better idea. Scratch that. chronos-access makes more sense. |
Implemented in the multiuser branch. |
What is the proper way to test that branch? Do I need to add the secondary user to any specific group? Do I need to clone the repo, switch to that branch, then do a ``Make` to generate crouton and then run this one with -u to update the chroot? |
You can download a .tar.gz snapshot of the branch, extract it, then run installer/main.sh as if it were the crouton release binary. It's not completely up-to-date with master, so I recommend making a fresh chroot (and maybe even using a separate prefix with -p) when trying it out. |
I will try that, thanks! |
crouton now has the multiuser branch merged in. You do have to add the second user to the right groups, but it should work now. |
I have been using Crouton with
trusty
and Openbox (via thelxde
target) on an Asus Chromebox for a little over a month. Yesterday I rebooted, which caused Chrome OS to upgrade itself. Following upgrade, insidetrusty
the X server display started malfunctioning.Specifically: Initially, most of the screen is black, the exception being the LXPanel at the bottom. The screen only refreshes due to user activity, and even then, only partially refreshes. Consequently, the screen is usually displaying stale and/or corrupted windows.
Interestingly, the problem only manifests when running as a user other than
1000
.Steps to reproduce the problem:
Ancillary issues:
In LXDE, the Logout option does nothing. In
precise
it works, but not intrusty
. Logging out requires switching to Chrome OS, and pressing ^C in the terminal to kill X. (Aside: this does not really affect me, as I typically use a custom~/.xsession
file.)During the creation of the
vanilla
chroot, my keyboard layout in Chrome OS was reset from Dvorak to Qwerty. The only way to correct was to log out of Chrome OS.Simultaneous with the keyboard layout change, the responsive of my trackball dropped to almost nothing. As in: spin and spin and spin and spin to slowly, slowly move the mouse cursor across the screen. At this point, the Chrome OS settings page said that no mouse or touchpad was detected. Again, logging out of Chrome OS was required to fix the problem.
Chrome OS version info:
Version 35.0.1916.155
Platform 5712.88.0 (Official Build) stable-channel panther
Firmware Google_Panther.4920.24.22
crouton version info:
VERSION='1-20140421214646~master:b766b319'
An obvious workaround should be to only run Crouton as user 1000.
The text was updated successfully, but these errors were encountered: