dnschneid / crouton

Chromium OS Universal Chroot Environment
https://goo.gl/fd3zc?si=1
BSD 3-Clause "New" or "Revised" License
8.56k stars 1.24k forks source link

on ARM -t xfce,xfce-desktop gives network-manager error, doesn't complete install #1366

Closed tedm closed 9 years ago

tedm commented 9 years ago

will retry with just -t xfce

this is a new chroot

screenshot:

screenshot 2015-01-21 at 1 43 19 pm

tedm commented 9 years ago

after the above, I did a sudo enter-chroot, and was prompted if I wanted to complete the install, typed Y, but gave a no uid 1000 error, tried to sudo su and adduser/useradd a user, but password lock file error.

deleted chroot, reinstalling now with just -t xfce

tedm commented 9 years ago

OK, so just -t xfce works fine, prompts for user and password for UID 1000, and startxfce4 works fine.

I'm not sure why the xfce,xfce-desktop didn't complete, but being on ARM/precise, perhaps the xorg message meant something, not sure about that suggestion for network-manager either, but just in case it was expecting wi-fi, I turned that on (main connection is USB to ethernet wired adapter).

After installing xfce, I installed these missing packages, most of which are on the ubuntu live cds by default, and some only take a few kb, or mb: nano, traceroute, dnstools, vim, emacs, nmon, atop, man, terminator, whois, and ssh. I realize some of those wouldn't be on a stock 12.04 live cd distro like terminator and nmon, but certainly ssh (client), traceroute, vim (full, not tiny), man, whois. I'm glad to see that gcc and cpp are in there now, they used to not be, or were installed, then removed.

I did a -d -f boot but how do I use the boot debbootstrap file for precise/xfce to reduce the next time I want to create a chroot?

tedm commented 9 years ago

the boot file didn't write, I think I need to give it a path to a writable dir?

I: Extracting tzdata... I: Extracting udev... I: Extracting upstart... I: Extracting util-linux... I: Extracting xz-utils... I: Extracting zlib1g... Compressing bootstrap files... tar (child): boot: Cannot open: Read-only file system tar (child): Error is not recoverable: exiting now chronos@localhost

DennisLfromGA commented 9 years ago

@tedm,

I don't think you need to specify both xfce and xfce-desktop, just one or the other but that's beside the point.

I ran into a similar situation on my Cr-48 with a trusty / gnome-desktop install where it at first failed due to 'network-manager' not being installed but, after entering the chroot and installing it, I re-ran the setup script and it completed.

If you're in your home directory or ~/Downloads or you provide a path to a rw folder, the bootstrap file shouldn't have any problem with permissions. Once you have a bootstrap file downloaded, just use a similar install command but, instead of specifying the release with '-r', use '-f bootstrapfile' instead, this time without the '-d'.

-DennisL

tedm commented 9 years ago

@DennisLfromGA Thanks! I will write the deboostrap files properly later tonight or tomorrow, and then specify them as you noted, to create a new test chroot.

I wonder if it would be a good idea to save them the first time to say ~/Downloads/Crouton/tmp and prompt the user just before prompting for username if they want to save them as a file so if/when they next create a chroot, it will go faster? And upon crouton creating a new chroot, it looks for a specific place and file to use an existing deboostrap, prompting, if necessary?

dnschneid commented 9 years ago

No, we generally try to avoid trashing the filesystem with large unnecessary files in the common use cases.

DennisLfromGA commented 9 years ago

I have a number of them saved to an SD Card, that way I don't trash my system ;-)

tedm commented 9 years ago

I'm pretty sure that's what ~/Downloads is for ;) If all Crouton users stored these locally, we could probably increase the effective speed of the internet by 10x and not have these lags with Netflix, etc. :)

zhao-gang commented 9 years ago

@DennisLfromGA It may be a little off topic, but how did you manage to "after entering the chroot and installing it, I re-ran the setup script and it completed"?

I encountered the same 'network-manager not being installed' problem when trying to install trusty + gnome-desktop on my samsung chromebook2. I can't find a way to enter the chroot first and then install network-manager as you said. Could you please tell me how to do this?

DennisLfromGA commented 9 years ago

@zhao-gang,

When you run 'sudo enter-chroot [-n chrootname]', it will tell you a setup script still exists and asks if you want to finish the setup (Y/n/d)? At this point, select 'n' for no and you'll be dropped into a chroot shell where you can then run 'sudo apt-get install network-manager'. Once that succeeds, you can exit the chroot and then either re-enter it and this time when it prompts to run the setup script hit 'Enter' or 'y' to let it finish - or - you can re-run your crouton command to install gnome-desktop.

The above procedure is from memory which may be flawed ;). If that doesn't work, please let me know and I'll try to help you out.

-DennisL

zhao-gang commented 9 years ago

@DennisLfromGA I completed the installation process with your suggestion.

Unfortunately, sudo startgnome just showed me a black screen, the related error log is: /usr/bin/xinit: XFree86_VT property unexpectedly has 0 items instead of 1, maybe I should report this in another issue.

DennisLfromGA commented 9 years ago

@zhao-gang - If you just re-entered the chroot via 'sudo enter-chroot ...' and finished the setup, then I would exit the chroot and do a crouton update (sudo sh ~/Download/crouton -u [-n chrootname]) to see if that fixes it. That works in most cases - for me at least.

tedm commented 9 years ago

@DennisLfromGA Would your above tips work on the ARM and the latest stable update to try targets xfce,xfce-desktop (or just xfce-desktop)? I don't mind the process above about manually installing network-manager, but I don't think it's a great idea to have network-manager in the chroot by default because of the possible conflicts, but I think that is noted elsewhere. My goal is to see if xfce-desktop brings in a lot of the packages that target xfce leaves off.

DennisLfromGA commented 9 years ago

@ted,

I don't have an ARM Chromebook but the above procedure should work I believe. I get around the errors/failure by first installing the vanilla target (e.g.) gnome, then entering the chroot via 'sudo enter-chroot' and running 'apt-get install network-manager', then exiting the chroot and installing the desktop target (e.g.) gnome-desktop. It's a little convoluted but it works in the interim.

The crouton gurus are aware of this issue https://github.com/dnschneid/crouton/issues/1408 and are feverishly ;) working on a fix via a 'fake' package.

tedm commented 9 years ago

@DennisLfromGA Thanks Dennis, yes, #1408 addresses this and I'll post over there, where I have some ARM xfce info, and keep the things specific to xfce-desktop here. So are we in agreement that ideally, when the network-manager and related script conflict issues (.xscreensaver?) are resolved, that a user should be able to specify multiple targets on a new chroot, and have the script complete, even if it's the base, and the *-desktop, like :

sh ~/Downloads/crouton -t xfce,xfce-desktop

and be good to go with a new precise chroot with xfce and whatever extras xfce-desktop add?

The hack you do above by telling the crouton script to not continue, entering chroot, apt-get install network-manager, exit, enter-chroot, answer Yes to continue, is the ultimate definition of "hack" ;)

DennisLfromGA commented 9 years ago

@tedm,

Yes, I believe they are striving for a fix that would obviate the 'hack'. ;)

Keep in mind that when you specify the full desktop targets (e.g.) xfce-desktop, there's no need to specify the xfce target too since the full desktop targets pull in the vanilla targets.

zhao-gang commented 9 years ago

@DennisLfromGA @tedm Just for your information. On my ARM chromebook(which is a samsung chromebook2), ubuntu trusty + xfce works, and there's no need to manually install network-manager or other packages. But trusty + gnome still doesn't work, even after I updated the chroot.

DennisLfromGA commented 9 years ago

@zhao-gang -

When you say 'trusty + xfce' works & 'trusty + gnome' doesn't work, are you talking about the non-desktop targets or 'xfce-desktop' and 'gnome-desktop'?

If they are the no frills non-desktop targets, then that is indeed a problem and may necesitate a new issue. If they are the meta-package desktop targets, then they may not completely install until the fix (https://github.com/dnschneid/crouton/issues/1408) is in place.

zhao-gang commented 9 years ago

@DennisLfromGA Yeah, I think I am a little misleading. When I refer to xfce, I mean xfce, but when I refer to gnome, I mean gnome-desktop. So I think the problem just happens in -desktop target. Thanks for your efforts on this problem.

DennisLfromGA commented 9 years ago

@zhao-gang - No problem, I think this'll get figured out pretty soon.

dnschneid commented 9 years ago

Merging into #1408