You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm facing some build issues when trying to build this project on Debian Buster. Most issues are easy to fix or work around, but I still want to discuss them before filing a PR.
Missing package in README.md
The package libgdm-dev is now required to build Chromium, I think we should add it to the sudo apt-get install instructions in the README.md?
Build error: use of undeclared identifier __NR_shmget
Second problem has already been reported here: shawnanastasio/chromium_power#4. That issue has been closed, but the issue still isn't fixed.
diff --git a/sandbox/linux/system_headers/ppc64_linux_syscalls.h b/sandbox/linux/system_headers/ppc64_linux_syscalls.h
new file mode 100644
index 000000000000..ccacffe22ea3
--- /dev/null+++ b/sandbox/linux/system_headers/ppc64_linux_syscalls.h@@ -0,0 +1,12 @@+// Copyright 2014 The Chromium Authors. All rights reserved.+// Use of this source code is governed by a BSD-style license that can be+// found in the LICENSE file.++#ifndef SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_+#define SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_++#include <asm/unistd.h>++//TODO: is it necessary to redefine syscall numbers for PPC64?+// Needed for Ubuntu/Debian:+#if !defined(__NR_shmget)+#define __NR_shmget 395+#endif+#if !defined(__NR_shmdt)+#define __NR_shmdt 398+#endif+#if !defined(__NR_shmctl)+#define __NR_shmctl 396+#endif+#if !defined(__NR_shmat)+#define __NR_shmat 397+#endif++#endif // SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_
This allows me to build Chromium on Debian, but I don't know if this will break on other distros/systems? And I also don't know if it's safe to just copy those syscalls over from Fedora..
Sandbox not working on Debian
While Chromium can be built now, it still won't run with a sandbox:
[5801:5801:0613/172738.997072:FATAL:zygote_host_impl_linux.cc(116)] No usable sandbox! Update your kernel or see https://chromium.9oo91esource.qjz9zk/chromium/src/+/master/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.
Trace/breakpoint trap
This is caused because Debian has disabled user namespaces by default for non-root users. This can be fixed by running:
# echo kernel.unprivileged_userns_clone=1 > /etc/sysctl.d/00-local-userns.conf
# service procps restart
After this fix, Chromium starts and runs fine with sandboxing enabled (I checked with chrome://sandbox/).
I found this fix over here: iridium-browser/tracker#208 (comment) Since Iridium is x86-only, I also checked Chromium on Debian Buster amd64. That version still uses the old setuid sandbox (Chromium 80). kernel.unprivileged_userns_clone is also set to 0 on Buster amd64. So hopefully, this problem will disappear once Debian updates to Chromium 83 on Buster amd64.
Is this the way to go for now? Should we add this instruction to the README.md?
Video calls are not working
Big issue for me, especially now with COVID-19: video calls don't work (I checked several different services). It recognizes my webcam and I can see myself in the 'video lobby', however joining a call doesn't work (looks like some kind of timeout). Other video-related websites like Youtube work fine. Video calls do work in the pre-built Fedora version (I checked by running Fedora 32 in a VM with the Gitlab build of ungoogled Chromium).
I don't see any logging related to this, can someone help me out debugging this issue? How can I provide more information to debug this issue?
Summary
In summary, almost everything works on Debian Buster with some fixes/workarounds:
Need to install an extra package
Need to include extra syscalls
Need to enable user namespaces
Video calls still broken, don't know why yet
The text was updated successfully, but these errors were encountered:
I'm facing some build issues when trying to build this project on Debian Buster. Most issues are easy to fix or work around, but I still want to discuss them before filing a PR.
Missing package in README.md
The package
libgdm-dev
is now required to build Chromium, I think we should add it to thesudo apt-get install
instructions in the README.md?Build error: use of undeclared identifier
__NR_shmget
Second problem has already been reported here: shawnanastasio/chromium_power#4. That issue has been closed, but the issue still isn't fixed.
Four syscalls are still missing from Debian's
<asm/unistd.h>
. I checked Fedora's<asm/unistd.h>
and copied the missing syscalls over to the 0001-sandbox-linux-Implement-partial-support-for-ppc64-sy.patch patch file:This allows me to build Chromium on Debian, but I don't know if this will break on other distros/systems? And I also don't know if it's safe to just copy those syscalls over from Fedora..
Sandbox not working on Debian
While Chromium can be built now, it still won't run with a sandbox:
This is caused because Debian has disabled user namespaces by default for non-root users. This can be fixed by running:
After this fix, Chromium starts and runs fine with sandboxing enabled (I checked with chrome://sandbox/).
I found this fix over here: iridium-browser/tracker#208 (comment) Since Iridium is x86-only, I also checked Chromium on Debian Buster amd64. That version still uses the old setuid sandbox (Chromium 80).
kernel.unprivileged_userns_clone
is also set to 0 on Buster amd64. So hopefully, this problem will disappear once Debian updates to Chromium 83 on Buster amd64.Is this the way to go for now? Should we add this instruction to the README.md?
Video calls are not working
Big issue for me, especially now with COVID-19: video calls don't work (I checked several different services). It recognizes my webcam and I can see myself in the 'video lobby', however joining a call doesn't work (looks like some kind of timeout). Other video-related websites like Youtube work fine. Video calls do work in the pre-built Fedora version (I checked by running Fedora 32 in a VM with the Gitlab build of ungoogled Chromium).
I don't see any logging related to this, can someone help me out debugging this issue? How can I provide more information to debug this issue?
Summary
In summary, almost everything works on Debian Buster with some fixes/workarounds:
The text was updated successfully, but these errors were encountered: