Lenovo Chromebook C13 yoga

Hi there! First time posting. I recall getting a rundown of how these projects are working now from Elly previously.
Previously, various projects existed to get Fedora in some shape or form running on this Chromebook of mine, but some of them are defunct now.

May I have some assistance in building a Fedora image for this device?

1 Like

Hi, welcome! :wave:

According to our documentation, C13 Yoga == MORPHIUS, so no need to build custom images if your device is using NVME as storage.

Situation is a bit more complicated with eMMC as Picasso is (AFAIK) the only x86 platform using MMIO (Memory Mapped I/O), where you’d need to either put /boot/efi and /boot on mSD/USB, or indeed - build a depthcharge image.

Ultramarine folks are working on it, so it should get easier fairly soon!

Please post the output from lsblk in ChromeOS, it’ll help with identifying the storage type used by your device :blush:

1 Like

Hi there! Thanks for replying!
This guy uses NVMe instead of emmc so that should be fine. Perhaps one day I’ll upgrade it to a 512gb 2242 instead of the 128gb in there now.
Here’s the results of lsblk from the Linux container- I’m going to enable Developer mode now to get better access to that built-in terminal:

s31bz@penguin:~$ lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda   254:0    0   66M  1 disk /opt/google/cros-containers
vdb   254:16   0 35.4G  0 disk /dev/net/tun
pmem0 259:0    0  710M  0 disk 

You are supposed to run lsblk in crosh, after running shell. Not in crostini.

It appears lsblk doesn’t work in crosh?

crosh> lsblk
ERROR - ERROR: unknown command: lsblk

Ah, I re-read the docs and here it is:

crosh> shell
Sudo commands will not succeed by default.
If you want to use sudo commands, use the VT-2 shell
(Ctrl-Alt-{F2/Right arrow/Refresh}) or build the image with the
login_enable_crosh_sudo USE flag:

$ USE=login_enable_crosh_sudo emerge-$BOARD chromeos-login
or
$ USE=login_enable_crosh_sudo cros build-packages --board=$BOARD
    
chronos@morphius-rev6 / $ lsblk
NAME MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0
       7:0    0   804K  1 loop /run/chromeos-config/v1
                               /run/chromeos-config/private
loop1
       7:1    0  32.6G  0 loop 
`-encstateful
     254:1    0  32.6G  0 dm   /home/chronos
                               /var
                               /mnt/stateful_partition/encrypted
loop2
       7:2    0  87.2M  1 loop /usr/share/chromeos-assets/speech_synthesis/patts
loop3
       7:3    0   9.2M  1 loop /usr/share/chromeos-assets/quickoffice/_platform_specific
loop4
       7:4    0   6.5M  1 loop /usr/share/cros-camera/libfs
loop5
       7:5    0     8M  1 loop 
`-03A186DD59DF71AE094F41AFD8A6AB0C47E1D4B46BD25D1AF31E9BF4128C0433
     254:2    0   5.5M  1 dm   /run/imageloader/sr-bt-dlc/package
loop6
       7:6    0     4M  1 loop 
`-C1B1A7AA44259EDEF5EA3AE2028E596AC9809D41E9F8EF501ECDEC520FBE20DB
     254:3    0   320K  1 dm   /run/imageloader/fio-dlc/package
loop7
       7:7    0  19.9M  1 loop 
`-6474D7E43789AA0C8A35AEFEE9A129EF12D692AC80DA1BF9E206576BF58D5561
     254:4    0  13.3M  1 dm   /run/imageloader/tts-en-us-b/package
loop8
       7:8    0  16.9M  1 loop 
`-D1A8BCD21B2466B388255AD770EB8A6052FAEFA08D92FF34B391FB7D40637487
     254:5    0   6.4M  1 dm   /run/imageloader/nc-ap-dlc/package
loop9
       7:9    0    40M  1 loop 
`-929523A8F3E4BA89B1BEB1A6C70D9D312F9ABF00624AC149DAB57D1656C40B05
     254:6    0   8.6M  1 dm   /run/imageloader/assistant-dlc/package
zram0
     253:0    0  15.5G  0 disk [SWAP]
nvme0n1
     259:0    0 119.2G  0 disk 
|-nvme0n1p1
|    259:1    0 111.1G  0 part /run/daemon-store-cache/usb_bouncer/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/shill/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/pvm/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/u2f/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/appsync-consent/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/debugd/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/biod/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/dlp/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/appsync-optin/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/smbfs/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/crosvm/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/federated/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/session_manager/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/smbproviderd/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/pvm-dispatcher/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/chaps/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/cdm-oemcrypto/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/kerberosd/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/crash/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store-cache/uma-consent/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/usb_bouncer/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/shill/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/pvm/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/u2f/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/appsync-consent/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/debugd/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/biod/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/dlp/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/appsync-optin/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/smbfs/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/crosvm/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/federated/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/session_manager/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/smbproviderd/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/pvm-dispatcher/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/chaps/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/cdm-oemcrypto/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/kerberosd/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/crash/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /run/daemon-store/uma-consent/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /home/user/acdf57a2f84894da3371494b8c1602eeb6aca6a2/MyFiles/Downloads
|                              /home/chronos/u-acdf57a2f84894da3371494b8c1602eeb6aca6a2/MyFiles/Downloads
|                              /home/chronos/user/MyFiles/Downloads
|                              /home/.shadow/acdf57a2f84894da3371494b8c1602eeb6aca6a2/mount/user/MyFiles/Downloads
|                              /home/root/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /home/user/acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /home/chronos/u-acdf57a2f84894da3371494b8c1602eeb6aca6a2
|                              /home/chronos/user
|                              /home/.shadow/acdf57a2f84894da3371494b8c1602eeb6aca6a2/mount/root
|                              /home/.shadow/acdf57a2f84894da3371494b8c1602eeb6aca6a2/mount/user
|                              /var/cache/dlc-images
|                              /usr/local
|                              /home
|                              /mnt/stateful_partition
|-nvme0n1p2
|    259:2    0    32M  0 part 
|-nvme0n1p3
|    259:3    0     4G  0 part 
|-nvme0n1p4
|    259:4    0    32M  0 part 
|-nvme0n1p5
|    259:5    0     4G  0 part 
|-nvme0n1p6
|    259:6    0   512B  0 part 
|-nvme0n1p7
|    259:7    0   512B  0 part 
|-nvme0n1p8
|    259:8    0    16M  0 part /usr/share/oem
|-nvme0n1p9
|    259:9    0   512B  0 part 
|-nvme0n1p10
|    259:10   0   512B  0 part 
|-nvme0n1p11
|    259:11   0   512B  0 part 
`-nvme0n1p12
     259:12   0    64M  0 part 

Yep, that’s nvme so full rom will work correctly.

1 Like

@jaiden any ideas on a UM or Fedora install using full rom on this? I can test things if need be.

Booting live usbs of Fedora 39 XFCE or Gnome seems to result in none of the function buttons being recognized, nor the search button. I’ll do so more digging.

You may want to just map these with Keyd. Keyd is in Terra, here’s a copy of the config for vivaldi Chromebooks

[ids]
# AT keyboard is device 0001:0001
0001:0001

[main]
back = back
refresh = refresh
zoom = f11
scale = scale
print = print
brightnessdown = brightnessdown
brightnessup = brightnessup
mute = mute
volumedown = volumedown
volumeup = volumeup
# the lock button is mapped to sleep by default
sleep = coffee

# When search key is held make the top row act like function keys
[meta]
back = f1
refresh = f2
zoom = f3
scale = f4
print = f5
brightnessdown = f6
brightnessup = f7
mute = f8
volumedown = f9
volumeup = f10
# no need for F11 as the fullscreen button is mapped to f11
sleep = f12


######## ChromeOS shortcuts ########
[alt]
# alt + backspace = delete
backspace = delete
# alt + meta = capslock
meta = capslock
# alt + brightness = keyboardbacklightbrightness
brightnessdown = kbdillumdown
brightnessup = kbdillumup

######## Extra shortcuts ########
[control+alt]
# Ctrl + alt + backspace = ctrl + alt + delete
backspace = C-A-delete
1 Like

I have a script to generate the keyd config automatically based on the device GitHub - WeirdTreeThing/cros-keyboard-map: Utility to generate keyd configurations for use on Chromebooks.

1 Like

Current state of booting Fedora 39 Gnome on the C13 Yoga via RW_Legacy firmware:

That is, to say, that a GUI seems impossible currently on this machine with RW_Legacy, but I don’t have the skills to make my own SuzyQable to install full from on it. Seeing if a friend can make one.

Booting the Ubuntu 23.10.1 live image in safe graphics mode, utilizing RW_Legacy firmware, it runs through the installer fine but then boots to a black screen after.
Wonder if full UEFI is required for this…

Went ahead and took the machine apart, repasting it in the process. Tried the battery method and it didn’t work. No unpopulated jumper that I could see anywhere on the motherboard. I believe this may be one of the devices that requires CCD debugging in order to unlock UEFI for rull rom.

Weird, your device should work with the battery method. Does the battery cable disconnect from the battery or motherboard side? If both, disconnect from both sides.

Taking another look inside, yeah there’s two battery connectors. I’ll try that again.

Nope, I’m just a tad slow. There was only one connector after all.

Not sure why the battery isn’t disabling WP in that case.

Nvm got it figured out. The cable was a little loose to begin with.
Went ahead and reinstalled ChromeOS, then enabled Developer Mode, fully unplugged the battery and installed UEFI firmware.
Hello from Fedora- trying out Cinnamon.
Looks like I can update my firmware from here too.