{"id":16200039,"url":"https://github.com/rinigus/pkg-chromium","last_synced_at":"2025-04-07T17:47:35.674Z","repository":{"id":186221364,"uuid":"622609197","full_name":"rinigus/pkg-chromium","owner":"rinigus","description":null,"archived":false,"fork":false,"pushed_at":"2023-04-02T17:08:54.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-13T19:50:04.758Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rinigus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-04-02T16:03:59.000Z","updated_at":"2023-04-02T17:08:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"5e04da4e-c05b-40be-b1cb-3912bcf43ed1","html_url":"https://github.com/rinigus/pkg-chromium","commit_stats":null,"previous_names":["rinigus/pkg-chromium"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rinigus%2Fpkg-chromium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rinigus%2Fpkg-chromium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rinigus%2Fpkg-chromium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rinigus%2Fpkg-chromium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rinigus","download_url":"https://codeload.github.com/rinigus/pkg-chromium/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247704007,"owners_count":20982287,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-10T09:29:06.191Z","updated_at":"2025-04-07T17:47:35.615Z","avatar_url":"https://github.com/rinigus.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Experiments with Chromium for Sailfish OS\n\nThis is a repository containing files and docs regarding Chromium\npackaging for Sailfish OS.\n\nDisclaimer: **IT CANNOT BE USED AS A BROWSER AT THE MOMENT**\n\nAs we have /opt/qt5, we have access to newer Wayland protocols. So, it\nis possible to get access to newer protocols via nested\ncompositor. Experiments are done with `pure-qml` (example from Qt\nrunning inside `qt-runner`) or\n[newcompositor](https://github.com/ArturGaspar/newcompositor).\n\n## Status\n\n- Chromium can start on SFOS without any containers (see below for ldd\n  output)\n\n- It can show its window to `WAYLAND_DISPLAY` exported by pure-qml or\n  newcompositor.\n\n- In pure-qml pinch to zoom and scrolling work. Pinch to zoom didn't\n  work in newcompositor.\n\n- In newcompositor it is possible to get chromium scaled by running\n  `QT_SCALE_FACTOR=2 newcompositor` . Doesn't scale in pure-qml yet.\n\n- Breaking: No keyboard support.\n\n- Not sure about HW acceleration as I cannot enter `chrome://gpu`\n  without keyboard.\n\n\n## Build instructions\n\n- it is possible to compile Chromium using regular Chromium build\n  instructions for cross-compiling it:\n  - https://chromium.googlesource.com/chromium/src/+/main/docs/linux/build_instructions.md\n  - https://gn.googlesource.com/gn/+/main/docs/quick_start.md\n  - https://chromium.googlesource.com/chromium/src/+/main/docs/linux/chromium_arm.md\n\n- setup sources as described in those HOWTOs.\n\n- build was done in Docker (see [Dockerfile](Dockerfile)) and then\n  through interactive use. Should be simple to do with other supported\n  Linux distros.\n\n- used settings are in [args.gn](args.gn).\n\n- To get cross-compilation sysroot, run\n  `build/linux/sysroot_scripts/install-sysroot.py --arch=arm64`. This\n  fetches debian_bullseye_arm64-sysroot with old GLIBC. Sysroot is\n  under chromium/src/build/linux.\n\n- Compilation:\n\n```\nautoninja -C out/arm64 chrome\nninja -C out/arm64 \"chrome/installer/linux:unstable_deb\"\n```\n\n- Create tgz from generated DEB by `alien -t chromium-browser-unstable*arm64.deb`.\n\n\n## stdout\n\n```\n/opt/chromium.org/chromium-unstable/chromium-browser --start-maximized\nMESA-LOADER: failed to open msm_drm: /usr/lib64/dri/msm_drm_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri)\nfailed to load driver: msm_drm\nMESA-LOADER: failed to open kms_swrast: /usr/lib64/dri/kms_swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri)\nfailed to load driver: kms_swrast\nMESA-LOADER: failed to open swrast: /usr/lib64/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri)\nfailed to load swrast driver\n[16486:16510:0402/184944.633320:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/portal/desktop: org.freedesktop.DBus.Error.InvalidArgs: No such interface “org.freedesktop.portal.FileC\nhooser”   \n[16486:16510:0402/184944.634042:ERROR:select_file_dialog_linux_portal.cc(274)] Failed to read portal version property\nMESA-LOADER: failed to open msm_drm: /usr/lib64/dri/msm_drm_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri)\nfailed to load driver: msm_drm\nMESA-LOADER: failed to open kms_swrast: /usr/lib64/dri/kms_swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri)\nfailed to load driver: kms_swrast\nMESA-LOADER: failed to open swrast: /usr/lib64/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri)\nfailed to load swrast driver\n[16486:16486:0402/184944.652570:ERROR:chrome_browser_cloud_management_controller.cc(162)] Cloud management controller initialization aborted as CBCM is not enabled.\nlibrary \"libGLESv2_adreno.so\" not found\nlibrary \"eglSubDriverAndroid.so\" not found\n[16522:16522:0402/184944.717364:ERROR:gl_angle_util_vulkan.cc(189)] Failed to retrieve vkGetInstanceProcAddr\n[16522:16522:0402/184944.717553:ERROR:vulkan_instance.cc(91)] Failed to get vkGetInstanceProcAddr pointer from ANGLE.\n[16486:16589:0402/184944.990526:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files\n[16486:16589:0402/184944.991343:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files\n[16486:16589:0402/184944.992460:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.UPower.EnumerateDevices: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files\n```\n\n## Linked libraries in this build\n\n```\nldd /opt/chromium.org/chromium-unstable/chrome\n        linux-vdso.so.1 (0x00000079e5d71000)\n        libdl.so.2 =\u003e /lib64/libdl.so.2 (0x00000079d7b97000)\n        libpthread.so.0 =\u003e /lib64/libpthread.so.0 (0x00000079d7b66000)\n        libnss3.so =\u003e /usr/lib64/libnss3.so (0x00000079d7a3c000)\n        libnssutil3.so =\u003e /usr/lib64/libnssutil3.so (0x00000079d79fb000)\n        libsmime3.so =\u003e /usr/lib64/libsmime3.so (0x00000079d79c3000)\n        libnspr4.so =\u003e /usr/lib64/libnspr4.so (0x00000079d7974000)\n        libcups.so.2 =\u003e /usr/lib64/libcups.so.2 (0x00000079d78c5000)\n        libgio-2.0.so.0 =\u003e /usr/lib64/libgio-2.0.so.0 (0x00000079d76bf000)\n        libgobject-2.0.so.0 =\u003e /usr/lib64/libgobject-2.0.so.0 (0x00000079d7648000)\n        libglib-2.0.so.0 =\u003e /usr/lib64/libglib-2.0.so.0 (0x00000079d7500000)\n        libdbus-1.so.3 =\u003e /usr/lib64/libdbus-1.so.3 (0x00000079d7490000)\n        libdrm.so.2 =\u003e /usr/lib64/libdrm.so.2 (0x00000079d746d000)\n        libxkbcommon.so.0 =\u003e /usr/lib64/libxkbcommon.so.0 (0x00000079d741a000)\n        libgbm.so.1 =\u003e /usr/lib64/libgbm.so.1 (0x00000079d73fc000)\n        libasound.so.2 =\u003e /usr/lib64/libasound.so.2 (0x00000079d72e6000)\n        libm.so.6 =\u003e /lib64/libm.so.6 (0x00000079d7235000)\n        libgcc_s.so.1 =\u003e /lib64/libgcc_s.so.1 (0x00000079d7210000)\n        libc.so.6 =\u003e /lib64/libc.so.6 (0x00000079d707f000)\n        /lib/ld-linux-aarch64.so.1 (0x00000079e5d41000)\n        libplc4.so =\u003e /usr/lib64/libplc4.so (0x00000079d706a000)\n        libplds4.so =\u003e /usr/lib64/libplds4.so (0x00000079d7056000)\n        libgnutls.so.26 =\u003e /usr/lib64/libgnutls.so.26 (0x00000079d6f7c000)\n        libz.so.1 =\u003e /usr/lib64/libz.so.1 (0x00000079d6f4b000)\n        libgmodule-2.0.so.0 =\u003e /usr/lib64/libgmodule-2.0.so.0 (0x00000079d6f37000)\n        libselinux.so.1 =\u003e /usr/lib64/libselinux.so.1 (0x00000079d6efe000)\n        libresolv.so.2 =\u003e /lib64/libresolv.so.2 (0x00000079d6ed6000)\n        libffi.so.8 =\u003e /usr/lib64/libffi.so.8 (0x00000079d6eaf000)\n        libpcre.so.1 =\u003e /usr/lib64/libpcre.so.1 (0x00000079d6e61000)\n        libsystemd.so.0 =\u003e /usr/lib64/libsystemd.so.0 (0x00000079d6dba000)\n        libwayland-server.so.0 =\u003e /usr/lib64/libwayland-server.so.0 (0x00000079d6d96000)\n        libexpat.so.1 =\u003e /usr/lib64/libexpat.so.1 (0x00000079d6d54000)\n        libgcrypt.so.20 =\u003e /usr/lib64/libgcrypt.so.20 (0x00000079d6c6c000)\n        libtasn1.so.6 =\u003e /usr/lib64/libtasn1.so.6 (0x00000079d6c49000)\n        libp11-kit.so.0 =\u003e /usr/lib64/libp11-kit.so.0 (0x00000079d6b03000)\n        librt.so.1 =\u003e /lib64/librt.so.1 (0x00000079d6ae9000)\n        liblzma.so.5 =\u003e /usr/lib64/liblzma.so.5 (0x00000079d6ab4000)\n        libcap.so.2 =\u003e /usr/lib64/libcap.so.2 (0x00000079d6a9f000)\n        libmount.so.1 =\u003e /usr/lib64/libmount.so.1 (0x00000079d6a2c000)\n        libgpg-error.so.0 =\u003e /usr/lib64/libgpg-error.so.0 (0x00000079d69f9000)\n        libblkid.so.1 =\u003e /usr/lib64/libblkid.so.1 (0x00000079d698f000)\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frinigus%2Fpkg-chromium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frinigus%2Fpkg-chromium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frinigus%2Fpkg-chromium/lists"}