Skip to content
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

Gentoo Support #3175

Open
wants to merge 49 commits into
base: master
Choose a base branch
from
Open

Gentoo Support #3175

wants to merge 49 commits into from

Conversation

JoseJX
Copy link

@JoseJX JoseJX commented Mar 23, 2017

This is a bit a rough so far, but I'm interested in adding Gentoo support to Crouton. I don't want to suggest that this should be integrated as is, but I'd like some feedback and was wondering if others would be interested in this.

This currently builds most of the targets, but I haven't yet worked on the KDE, Gnome or Kodi/XBMC targets. I'm currently using a Pixel 2 for development.

Thanks!

@JoseJX JoseJX force-pushed the master branch 2 times, most recently from b22b034 to 4de7cdd Compare March 23, 2017 18:15
@DennisLfromGA
Copy link
Collaborator

Looking forward to this, thanx.

I tried to install it but got stuck near the end I think.

This is the command string I used to install it:

sudo sh ./installer/main.sh -p /var/crouton/ -r gentoo -t xiwi,xorg,cli-extra,keyboard,lxde-desktop,chrome-beta

Here's where the output ended:

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by x11-drivers/xf86-video-intel-2.99.917_p20170216::gentoo
# required by xf86-video-intel (argument)
>=x11-libs/libdrm-2.4.75 video_cards_intel

Use --autounmask-write to write changes to config files (honoring
CONFIG_PROTECT). Carefully examine the list of proposed changes,
paying special attention to mask or keyword changes that may expose
experimental or unstable packages.
Failed to complete chroot setup.
Unmounting /var/crouton/chroots/gentoo...

I haven't tried to fix it yet to see what you think.

-DennisL

@JoseJX
Copy link
Author

JoseJX commented Mar 24, 2017

Thanks for testing! I was adding targets one by one and didn't notice the conflict between xiwi and xorg. I'm working on a fix for that now.

@JoseJX
Copy link
Author

JoseJX commented Mar 24, 2017

I've added a bit more intelligence to the expand variables, which should fix this issue. I've also made a few tweaks to the xfce-desktop and lxde-desktop targets to more closely match what you're expecting from debian/ubuntu, although these are completely untested so far since I haven't had time to compile them yet.

Thanks for taking a look!

@DennisLfromGA
Copy link
Collaborator

@JoseJX,

I've added a bit more intelligence to the expand variables, which should fix this issue.

I may have been a bit premature but I just updated the repo and tried an update (via '-u') but am still getting the video card issue -

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by x11-drivers/xf86-video-intel-2.99.917_p20170216::gentoo
# required by xf86-video-intel (argument)
>=x11-libs/libdrm-2.4.75 video_cards_intel

I'll try to be more patient and wait until you have a chance to work on things... ;-)

-DennisL

@JoseJX
Copy link
Author

JoseJX commented Mar 24, 2017

No worries! I kicked off a new build with the exact same targets as you're using above, hopefully that will help me figure out what's going on for you! One difference is that I'm building the crouton executable and installing with that, but I'm not sure how that would change the result.

What Chrome device are you using?

You might want to try removing the VIDEO_CARDS and INPUT_DEVICES lines from /etc/portage/make.conf, it might help get over this bump!

Can you attach (from the chroot) /etc/portage/make.conf if it fails again?

@DennisLfromGA
Copy link
Collaborator

@JoseJX,

One difference is that I'm building the crouton executable and installing with that, but I'm not sure how that would change the result.

Actually, I do the same thing, I 'make' the crouton executable and install or update using it.
I don't think it should make any difference using 'main.sh' though.

What Chrome device are you using?

I've got the Dell Chromebook 13 (7310) 'lulu' model (i5 / 8GB RAM / 256GB SSD) with ARC++ enabled and using -

Version 57.0.2987.115 beta (64-bit)
Platform 9202.54.0 (Official Build) beta-channel lulu
ARC Version 3828404
Firmware Google_Lulu.6301.136.57

You might want to try removing the VIDEO_CARDS and INPUT_DEVICES lines from /etc/portage/make.conf, it might help get over this bump!

I'll do that now and get back to you.

Can you attach (from the chroot) /etc/portage/make.conf if it fails again?

Will do.

Thanx,
-DennisL

@JoseJX JoseJX force-pushed the master branch 2 times, most recently from fa5f2a2 to 444e296 Compare April 7, 2017 12:18
@nbe1233
Copy link

nbe1233 commented Apr 13, 2017

If you have time perhaps you could implement musl and uclibc gentoo versions
https://wiki.gentoo.org/wiki/Project:Hardened_uClibc
https://wiki.gentoo.org/wiki/Project:Hardened_musl

@JoseJX
Copy link
Author

JoseJX commented Apr 14, 2017

Yeah, hardened targets, x32 support and funtoo might be other interesting targets too, but for now I'm going to keep working on getting what I have in a merge-able state. Thanks for looking at it though!

I haven't had much time this week to dig into this, and really won't be able to for the following week either. If anyone has any ideas on the terminal switching issue, I'd really appreciate the input. If not, I'll get back on this in a week or so. Thanks!

@zenmetsu
Copy link

Not sure what the current status of this branch is, but I did find a few issues.
The first was that the ARCH case statement in the installer was bombing with bad substitution on my Samsung Chromebook2. uname -m reports arm7l on this machine. I just hard-coded it to get the installer rolling.

The second issue is more of a Gentoo thing. During the emerge world to update the base, there was a perl conflict which broke the process. The solution was to change the emerge line in targets/core to emerge -NDauv --with-bdeps y --backtrack 100 @world

@dnschneid
Copy link
Owner

@JoseJX, sorry for the silence here. Could you please update the list of what isn't working?

@JoseJX
Copy link
Author

JoseJX commented Jul 25, 2017

Sorry, I got busy with other work and haven't had too much time to work on this. I've still got the following issues open:

  1. ARM changes to get it working for zenmetsu. I'd probably want to test on more ARM machines before calling any changes I make "fixed"
  2. Console switching on Intel still seems to be broken. I can successfully switch back to Crouton, but not back to Gentoo from Crouton.
  3. I haven't tested Gnome at all since I last posted here, I need to figure out what's going on with that not starting properly.
  4. Documentation!

I'm hoping to have more free time in August. If you have any suggestions about the console switching issue, that's really the only big bug left.

@idvoretskyi
Copy link

@JoseJX does CLI-only version of Gentoo chroot work now?

@JoseJX
Copy link
Author

JoseJX commented Aug 10, 2017

On Intel (Chromebook Pixel 2 LS) and my ancient Chromebook (Samsung Series 3), yes, it does. I've been using it near daily on the LS since I started this bug. The graphical side starts fine, but won't switch consoles back to the Gentoo X11 instance on Intel. I still haven't figured out why.

I need to look into bringing in the changes from @zenmetsu to fix some issues on ARM as well, but this is more limited by my ability to test.

@idvoretskyi
Copy link

idvoretskyi commented Aug 10, 2017 via email

@Jokerswild2412
Copy link

Has gentoo ever received full support for crouton? What are the steps for installation? Is it necessary to follow the gentoo handbook for installation?

Thanks in advance!

@Jokerswild2412
Copy link

as a followup, I've attempted to download crouton-master from https://github.com/JoseJX/crouton/archive/master.tar.gz and attempted to install as normal in crouton, but got the following errors as listed in the screenshot:

image

Did I do something wrong? If not, what should I do to fix this error?

@JoseJX
Copy link
Author

JoseJX commented Apr 16, 2018

Sorry, I've been really busy with paying work and haven't had much free hacking time! I suspect that things have changed a bit and it will take some work to get this working again. I will have a look this weekend since someone is interested in it, but things never worked 100% with X.

@DennisLfromGA
Copy link
Collaborator

@JoseJX,

The 'wget' error should be an easy fix, it has been deprecated in CrOS, they're now using 'curl' instead.
See: Get rid of wget dependency, and workaround awk sandbox #3514

-DennisLfromGA

@Jokerswild2412
Copy link

@JoseJX

I'm excited! I've been wanting to get back to that gentoo life for awhile, I look forward to it.

@Jokerswild2412
Copy link

@JoseJX were you able to take a look at things this weekend? I'm still very interested in this.

@Jokerswild2412
Copy link

@JoseJX I'm still monitoring this, how are things going?

@JL2210
Copy link

JL2210 commented Jul 20, 2018

I have a development Chromebook that I could use for this. Do you need any help? I have a PR on @JoseJX 's crouton.

@Jokerswild2412
Copy link

@JoseJX @dnschneid Any update on this? Does Gentoo work again on crouton or?

@JoseJX
Copy link
Author

JoseJX commented Nov 19, 2018

Sorry, my Chromebook Pixel 2 died a while ago and I haven't bought a new one yet. @JL2210, if you want to take this and run with it, be my guest!

@JL2210
Copy link

JL2210 commented Nov 26, 2018

@JoseJX Sure thing. From what you've done, it shouldn't take much.

@carbonatedcaffeine
Copy link

I will start testing for you too... Get some things out of the way... I might need some time though. I will test kde in my spear time.

@JL2210
Copy link

JL2210 commented Jan 13, 2019

Not exactly Crouton.. but this script bootstraps Gentoo Prefix on a Chromebook (may need some work, but so far so good): https://gist.github.com/JL2210/f51a3d5a7a57900983b706949eba9f74

@mpmilano
Copy link

I've forked this initiative and mostly updated it to work with 2020 gentoo, but we're back to the original issues @JoseJX was running into ---the VT switch back from ChromeOS to the running Gentoo X server really doesn't want to work. I don't have any idea how this mechanism actually works; does anyone lurking on the thread have any insights?

Fork here: https://github.com/mpmilano/crouton

This has been tested literally once, and presumably will break for some people. If we can figure out the X11 issues then I'd be happy to clean up the fork.

@KSPAtlas
Copy link

KSPAtlas commented Feb 1, 2021

why am i here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet