Zorin 17.3 Pro on Surface Go 2

Did You take a Look in the ''Additional Drivers'' Tab if there is maybe a Driver offered?

yes, nothing

I also just found out that the camera is not found by various apps. No camera is found.
Is there more than can be donne? I see things like - Package Repositories · linux-surface/linux-surface Wiki · GitHub
that indicate running updated commands but #1) am not that technical, and #2) am not sure if this is specific to Zorin or would impact camera & keyboard.
Any thoughts?

I see where it says the camera requires - Requires libcamera and kernel >=6.14.
I do not know what this means and what i need to do to make the camera work. WHere ad what is libcamera?

I now have a working bluetooth keyboard. The problem appears to have been the actual keyboard.
My remaining problem is the camera not being recognized.

It seems to be a bit difficult. Here is what I found about camera on surface:

What I found was this procedure to get the camera in surface go to work:

"git clone libcamera/libcamera.git - libcamera official repository"
"cd libcamera"
"meson setup build"
"ninja -C build install"

but git, meson and ninja need also to be installed to do this

I followed the steps and all seemed good UNTIL -
/libcamera$ meson build -Dpipelines=uvcvideo,vimc,ipu3 -Dipas=vimc,ipu3 -Dprefix=/usr -Dgstreamer=enabled -Dv4l2=true -Dbuildtype=release
The Meson build system
Version: 0.61.2
Source dir: /home/denise/libcamera
Build dir: /home/denise/libcamera/build
Build type: native build

meson.build:3:0: ERROR: Meson version is 0.61.2 but project requires >= 0.63

Perhaps this commands work not on Zorin 17.3 and you have to wait until Zorin 18 that will probably use ubuntu 24 as base. The python (meson) version is not the right one and a change can completely disturb the system. I first thought it is possible to install a newer meson version, but I was wrong.

I appreciate your feedback. I suppose Zorin 18 will be a while and maybe I will get lucky and 18 will have all this built in with no special terminal entries needed. One can hope!

That means, there are two things needed:

  1. The Package libcamera
  2. Kernel 6.14 or higher

That means that Version 0.61.2 is available but it is a higher Version needed: 0.63

Kernel 6.14 was mentioned in a post about fedora or another distro with rolling release, but this does not mean, that it will work when you install kernel 6.14 on Zorin because the needed programs (higher python version, meson version...) are not implemented in Zorin. You could try Ubuntu instead of Zorin or wait until Zorin 18 will be released.

I am in the process of creating a Ubuntu USB and will try it and see if I have better luck. I really like the Zorin interface but will give Ubuntu a chance. I also found the surface at times was 'locking up' with Zorin and I would need to do a hard forced reboot. Maybe if I used Zorin Lite vs Pro that would have been better. For now Ubuntu will be my next effort. Thanks.

1 Like

I have a bootable Ubuntu USB. I am having trouble getting the Surface Go 2 with Zorin on it to boot from the USB. I have set the boot order for USB #1. The USB shows in the files structure as Ubuntu ...
When I hold down the start and down volume it just keeps booting to Zorin. Is there a way from within Zorin to force a USB booting? From windows I was able to do this using a Recovery Option.
Yes, Secure Boot is Disabled.
Any ideas?

I am not sure what the problem is. The stick should be plugged in before boot. You could try another USB port and enable CSM in your BIOS.

i will try and create a different USB vs re-using my Zorin one that I reformatted.

In terminal you can set the next boot to USB this way:

"sudo efibootmgr"

Then you can see the various boot entries. Look what four-digit-number USB#1 has, e.g. Boot0003.
Then set

"sudo efibootmgr --bootnext XXXX"
(replace XXXX with the four-digit-number; at next boot this number will be set at first position of boot options)

e.g. here:
"sudo efibootmgr --bootnext 0003"

"systemctl reboot"

But I am not sure if you can see a USB entry here.

2 Likes

The terminal settings did it for me. Ubuntu is now loading!

1 Like

I thought I would pass on my resuts so far. Ubuntu is loaded and working on the Surface Go 2. I hate to say it but it feels much smoother on the Surface Go 2 than Zorin Pro. Maybe I should have started with Zorin Lite? I am not proficient with Ubuntu so it will take me some time to set up and customize to what I want.
The big problem, the camera, is still there so I will be back to square one trying to load the extra kernal and code. I need to take more time for this as I have been at it for a couple days straight and there is more to life!

First install surface kernel.
Libcamera you can install with

"sudo apt install libcamera0.2 gstreamer1.0-libcamera libcamera-ipa pipewire-libcamera libcamera-tools"

Ubuntu also uses gnome as Zorin pro, but a newer kernel and a newer gnome version. When your computer copes well with gnome you don't need Zorin lite absolutely. Zorin lite needs less ressources because of XFCE desktop.

For a computer with touchscreen gnome offers more gestures.

I have the kernel successfully installed (I believe). I was going to run the steps you listed but you also say 'but git, meson and ninja need also to be installed to do this'.
Sorry for such remedial questions but does this mean that before I run those steps I need to run something like these first?

'sudo apt install git'
'sudo apt install meson'
'sudo apt install ninja'

I have confusion since I also see things on github that say:
Install libcamera from repositories

Some flavours of Linux have repositories containing versions of libcamera, which you can install without building libcamera from source.

Ubuntu

Use apt to install libcamera packages:
'sudo apt install libcamera0.2 gstreamer1.0-libcamera libcamera-ipa pipewire-libcamera libcamera-tools'

Should i just follow your steps or also this other command?