-
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
LXDE black screen on Xenial #2489
Comments
I've confirmed that the screen blanking and host hanging issue doesn't appear with a Trusty chroot deployed in the same way (also on external USB within the same crouton installation on the same SWANKY platform). I've switched back to Trusty running on the external key and migrated my home folder there for now. However, revealingly the Trusty LXDE target causes a screensaver to kick in after a period of sleep. Within the chroot I believe that xscreensaver is launched by the corresponding line in /etc/xdg/lxsession/LXDE/autostart so I've reinstalled xscreensaver and removed the autostart line instead in my xenial build (I guess there might be complications from the session autostart trying to run a binary which isn't there, and hopefully this should prevent any screensaver logic from kicking in after waking from a long sleep cycle). I've done the same thing in my Trusty build too for comparison. Will try a long sleep cycle again overnight in xenial to see if the system can remain stable with this lightly modified configuration. Happy to experiment with other changes or gather whatever logs people think would be relevant for diagnosing the Xenial issue. Ideally I'd migrate to Xenial when it is released to cover the next LTS cycle. |
I'm not sure what Xenial is, but I might have the same problem. (with Unity). I updated my chrome os, and ran into a strange problem where my chroot was taking forever to log in. I found it was just stuck on a black screen and then after about 45 seconds it would load. And then signing out was taking a similarly long time. So I updated the chroot, it gave me an error. So to sign in I get a script like this: chronos@localhost / $ sudo startunity E: Some index files failed to download. They have been ignored, or old ones used instead. _XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root X.Org X Server 1.15.1 This incident has been reported. I'm currently logged in, but something is not quite right. It is too slow to start and log out. |
Seen occasional issues... #3130 helps a bit, but then I always get "No session for pid zyx", and only after I press a random key (otherwise the screen in black). Lots of scary splats in dmesg too:
|
Ok, so lxde is a bit broken, probably something to do with policykit, and first starts as black string. Pressing any key, then clicking Ok on the "no session for pid xyz" then leads to a functional lxde. |
lxde is my goto desktop so I've been dealing with this for a while. I didn't know if this was an upstream bug or not so I took the lazy route and ignored it. |
lxsession has a built-in polkit agent, and that is unfortunately trying to find its logind session. Which doesn't work, because after trusty logind depends on systemd running :( |
I am trying once again to run crouton with LXDE (I gave up after SD mounts were failing through suspend/resume cycles). However, the same issue remains. There seemed to be an upstream issue resolved here... https://ubuntuforums.org/showthread.php?t=2178645 ...but the config file change looks like it forces the PAM session to be required, which would never work on crouton given no systemd I imagine. @smibarber were you able to map out any options for preventing this issue? |
Hi everyone, after some hacks and slash I think I found a solution/workaround for this long-standing issue. First of all, the problem has nothing to do with LXDE nor its polkit agent lxpolkit, but rather the way policykit daemon of new systems (Xenial, Artful, Bionic, Stretch, Sid/Buster) are bound to systemd. And the problem manifests itself in the way that you cannot use graphical applications that require admin privileges like Synaptic, or mount USB drives or SD cards. Here are two reasons of the problem in my understanding: R1 The R2 Systemd refuses to run unless it has PID 1, so it cannot be executed inside chroot. Interestingly, we can see a broken
returns a broken message, or an empty list. So my workaround contains two parts which fixe R1 and R2 respectively. The second part of fixing R2 is optional, but it will allow the desktop environment (LXDE, XFCE, etc.) to properly create their session. Note: I used Xenial, but at least I tested the first part and made it work (with some tweaks because of missing packages from the official repository) for Stretch, Buster/Sid, and Bionic. PART IWe will recompile and install 1. Enter chroot and prepare a folder for compilation:
this should download some files and a source folder named
2. Open
Then add # in front of each line except the one with --disable-systemd:
3. (optional step) Open 4. Prepare build environment and dependencies
5. Make new .deb packages
this should create new packages outside the source folder. We are interested in only 3 of them: 6. Install consolekit (if not yet installed) and the custom built packages
On Buster/Sid, Artful or Bionic, you will not have access to ConsoleKit, but you can download it and two of its dependences 7. Mark the custom packages to protect them from future updates
8. Exit and relog to chroot to test the system. In a chroot terminal,
should give the detail of your session. Then admin privilege applications should now work properly if you have a Still, the session record of the system does not work properly yet, eg.
is probably broken, or running
inside a terminal of the desktop environment would still return an empty string. PART IIWe will revert the chroot to 1. On Xenial, I don't have access to 2. Remove the conflicting packages:
This will probably prompt a warning message of a harmful action since we will remove "init" package. But we will replace it with sysvinit-core anyway, and we are not booting the whole machine to the chroot, so no harm. Just follow the instruction, typing "Yes, do as I say!". 3. Install sysvinit-core and protect it from future update
(use 4. Exit and relog to chroot test to the new system:
should give you a proper list now (mine has 3 items in it), and inside a terminal of a desktop environment
should give you a non-empty string (mine is "c3" for session3). Completing this part actually fixes an issue I have with xfce4-power-manger 1.4.4 on Stretch that does not load (it seems this user service communicates with logind on dbus to acquire permissions). Edit: fixed some typos as I re-read this to apply to my new chromebook. |
Please describe your issue:
Although Xenial seemed stable even through power cycles, (running off a USB 3.0 128GB Lexar S45 key), and I began migrating to it, I have recently found that after a few minutes of idleness (or working in ChromeOS, switching to the Crouton VT screen finds it just black and the whole system becomes unresponsive.
If known, describe the steps to reproduce the issue:
Initially when the build seemed stable I was running it with just the lxde target. Recently I...
It's hard to think of anything else going on which could create the problem, although I've put a few packages in the chroot - e.g. Arduino, Google Earth, Google Chrome, Chromium, Geany, Webstorm, Komodo Edit.
Since I experienced the problem I tried removing xscreensaver and light-locker - assuming it was somehow to do with bad sleeping behaviour. However, this did not cure the problem.
The text was updated successfully, but these errors were encountered: