› Get Google Chrome
› Vimium · 在 Chrome 里使用 vim 快捷键
typetraits
V2EX  ›  Chrome

准备做个定制版 Chromium

  •  6
     
  •   typetraits · Aug 23, 2020 · 10778 views
    This topic created in 2264 days ago, the information mentioned may be changed or developed.

    之前用过 ungoogled-chromium 和 Brave ,各有优劣,但是也不能 100%满足需求,所以准备自己定制一些功能。

    现在从上述两个开源项目移植了一些 patch,从 Chromium 中移除 /禁用了下列功能:

    1. Safe Browsing
    2. Crash Reporter/Crashpad
    3. RLZ
    4. Rappor
    5. Network Time Tracker
    6. New Tab Page 中的推广信息
    7. IPv6 Probe
    8. 大量统计信息,Chromium 中几乎一切操作都会被统计(在chrome://histograms中可以查看)

    然后又从 Edge 抄了灰色 Web 控件颜色和直角、带阴影的 Tab 栏,接下来计划实现如下功能:

    1. 移植 Firefox Container
    2. 原生实现ClearURLs扩展的移除 URL 中统计参数的功能,毕竟多开一个扩展就多占一份内存
    3. 集成 Zotero Connector
    4. 移植 Brave 中的 Fingerprint Protection 功能。现在实现了返回随机数据(Panopticlick中部分 fingerprint 数据返回 randomized ),但是功能无法开关,对一些滑动验证功能有影响
    5. 再试试把 Chromium 中的tcmalloc内存分配器换成微软的mimalloc
    Supplement 1  ·  Aug 28, 2020
    放了个 GitHub repo https://github.com/bytanuky/dumb-browser
    暂时只在 macOS 上编译通过,Windows/Linux 上还未测试
    以后会更新一键编译脚本
    Supplement 2  ·  Aug 28, 2020
    恢复了旧版 Chrome 中标签页上的点击静音按钮:chrome://flags/#enable-tab-audio-muting
    Supplement 3  ·  Aug 30, 2020

    增加了自动移除URL中的追踪参数功能(规则来自ClearURLs)

    Supplement 4  ·  Sep 6, 2020
    更新了 macOS 和 Windows 上的编译脚本
    46 replies  •  2024-11-20 17:01:55 +08:00
    Redbeanw
    Redbeanw
    Aug 23, 2020
    1
    加油,支持一下
    Leon6868
    Leon6868
    Aug 23, 2020 via Android❤️1
    2
    支持
    提个建议:能否让 chromium 的体积更小一点

    有没有 timeline 之类的,我想看看项目进度
    sfqtsh
    sfqtsh
    Aug 23, 2020 via Android
    3
    目前在用 vivaldi
    Huelse
    Huelse
    Aug 23, 2020
    4
    支持,长远来看这是一项大工程,在性能与功能之间要不断做出调整和平衡。
    ifxo
    ifxo
    Aug 23, 2020
    5
    正在用 Naver Whale,功能比较全面
    pp22
    pp22
    Aug 23, 2020 via Android
    6
    我最想要去除只能在谷歌商店才能安装扩展的限制,可惜没能力
    ciaoly
    ciaoly
    Aug 23, 2020 via Android
    7
    马克。楼主不打算和别人协作嘛?
    Perry
    Perry
    Aug 23, 2020 via iPhone
    8
    @pp22 不是一直可以从本地倒入扩展的吗?
    SteveZou
    SteveZou
    Aug 23, 2020
    9
    @pp22 只能在谷歌商店才能安装扩展?
    youthcould
    youthcould
    Aug 23, 2020
    10
    zotero connector,我一直用小书签版,一样好用,还不用安装插件,推荐
    youthcould
    youthcould
    Aug 23, 2020❤️1
    11
    如果是 win 版,建议可以考虑原生改进字体渲染,或者比如替换字体等
    miaomiao888
    miaomiao888
    Aug 23, 2020
    12
    @pp22 cent 浏览器有实现
    typetraits
    typetraits
    OP
    Aug 23, 2020
    13
    @pp22 #6 如果你愿意自己编译 Chromium 的话,修改 chrome/browser/extensions/crx_installer.cc 就可以了
    410-422 行
    kerro1990
    kerro1990
    Aug 23, 2020
    14
    精简下体积,20M 左右就好了
    wdhwg001
    wdhwg001
    Aug 23, 2020 via iPhone
    15
    @kerro1990
    @Leon6868
    体积小的嵌入库有 miniblink,可以自行补上浏览器的部分。
    typetraits
    typetraits
    OP
    Aug 23, 2020
    16
    @Leon6868 #2 好提议
    现在 Chromium 中的组件太多了,移除掉一些可以减小体积
    timeline 暂时还没有,现在只在业余时间搞
    typetraits
    typetraits
    OP
    Aug 23, 2020
    17
    @ciaoly #7 考虑过,但是现在只是业余时间搞一下
    以后可以慢慢找人协作
    typetraits
    typetraits
    OP
    Aug 23, 2020
    18
    @kerro1990 #14
    编译之后 Blink 本身就 20M 了
    libchrome_dll 80M
    libcontent 42M
    20M 你只能得到一个 Blink 内核,连 UI 都没有
    kerro1990
    kerro1990
    Aug 23, 2020
    19
    @wdhwg001 miniblink 太老了
    Leon6868
    Leon6868
    Aug 23, 2020
    20
    @typetraits 你可以搞个 github 仓库,我们 watch 一下
    Whalko
    Whalko
    Aug 23, 2020
    21
    码一下,作恶越来越过分了。= =
    Cielsky
    Cielsky
    Aug 23, 2020 via Android
    22
    可以用 ublock orgin 和油猴就好了。
    发现第三方直接支持 ABP 规则的浏览器,基本上拦截效果都有点差劲
    pp22
    pp22
    Aug 23, 2020 via Android
    23
    @Perry 开发者模式每次重新打开浏览器都有提醒,烦人
    pp22
    pp22
    Aug 23, 2020 via Android
    24
    @SteveZou 不是吗,假如我打包好一个 crx 文件,发给你,你能正常安装吗,别说解压,开发者模式是给调试扩展的,不是正常安装使用的
    pp22
    pp22
    Aug 23, 2020 via Android
    25
    @typetraits 谢谢指点,可能我编译不了,祝你定制顺利吧
    SteveZou
    SteveZou
    Aug 23, 2020 via Android
    26
    @pp22 啊...我没遇到这种问题...我的开发者模式一直是打开的状态,目前我也在用好几个第三方插件,没感觉有啥不方便的啊...
    wtks1
    wtks1
    Aug 23, 2020 via Android
    27
    要是帐号同步什么的能自建就好了....
    guanhui07
    guanhui07
    Aug 23, 2020
    28
    支持一下
    expectation
    expectation
    Aug 23, 2020
    29
    @Cielsky 自己利用 css 选择器编写规则不香么
    typetraits
    typetraits
    OP
    Aug 23, 2020
    30
    typetraits
    typetraits
    OP
    Aug 23, 2020
    31
    @Leon6868 #20 明天有空的时候建个 repo
    beanrobbie
    beanrobbie
    Aug 24, 2020
    32
    win 一直在用 cent iron slimjet vivaldi edge
    Myprincess
    Myprincess
    Aug 24, 2020
    33
    老大,我可不可以建议一个:
    在使用 CHROME 时,可以自动设置自动打开网站前端与后端,并且支持后端 DB 信息推送。不需要登陆。如果我想看,就直接点击那个通知。
    fugu37
    fugu37
    Aug 30, 2020
    34
    > 8. 大量的统计信息

    没有必要删除,重要的是删除上报 Google 服务器的操作
    fugu37
    fugu37
    Aug 30, 2020❤️1
    35
    使用代理插件时,Chromium 总会提示"Your Internet Connection is being controlled",希望可以去掉。
    typetraits
    typetraits
    OP
    Aug 30, 2020
    36
    @fugu37 #35 加上了,后续考虑在设置中加入开关来控制 UI 中的各项改动
    LNmise
    LNmise
    Sep 1, 2020
    37
    期待 windows 版本和一键编译脚本发布
    Quadverse
    Quadverse
    Sep 2, 2020
    38
    在未来有计划或者可否增加对浏览器字体渲染处理的功能?

    如果工程太大,是否考虑增加对 GDIPP 的兼容?

    我选择 GDIPP 的理由是在 iris 商业软件中集成了 GDIPP,且相对同行软件 mactype 更快且在大量文字中不卡等优点,现在面临的问题是最新版本的火狐和 Chrome 都不兼容 GDIPP.
    typetraits
    typetraits
    OP
    Sep 2, 2020
    39
    @Quadverse #38 抱歉,我不了解 GDIPP,但是搜了一下,这个软件应该是很久没有更新了吧?
    新版的 Chrome 已经使用 DirectWrite 进行字体渲染了,GDIPP 似乎并不支持 DirectWrite ?
    Quadverse
    Quadverse
    Sep 3, 2020
    40
    @typetraits #39 你也许是对的!我并不了解商业集成 GDIPP 版与 CrendKing 的 GDIPP 版的区别,基于以上原因,探索答案似乎已经不再重要了,如要进行下去那么 sandbox 是最大的阻碍。

    如果其他人还是感兴趣,那么可以参阅
    https://bbs.themex.net/archive/index.php/t-16860846-p-4.html
    typetraits
    typetraits
    OP
    Sep 6, 2020
    41
    @LNmise #37 刚刚 push 了新版,可以自己编译了
    但是需要配置好代理,Chromium 源码同步过程很慢
    rekulas
    rekulas
    Nov 1, 2020
    42
    不要让 webdriver 被网站检测到。。。这个是很多人的刚需
    Shazoo
    Shazoo
    Dec 1, 2020
    43
    @typetraits
    楼主,我这里有个需求,需要定制下 Chromium,配合 headless 模式做些业务。请问有时间吗?
    项目本身肯定付费,可以签订正式外包合同。

    如果有兴趣,回复我下。我会留给你联系方式。

    谢谢。
    gainsurier
    gainsurier
    Mar 25, 2021
    44
    lz, 请教一下,你用啥配置进行构建的,大概需要多长时间?
    typetraits
    typetraits
    OP
    Mar 26, 2021 via iPhone❤️1
    45
    @gainsurier 笔记本 i9-9880h
    以前有 jumbo build 的时候编译需要一个半小时,现在这选项被 Google 取消了,完整编译需要四个小时,所以我也用了 ccache,除了第一次需要完整编译,后面都很快了
    ollama
    ollama
    Nov 20, 2024
    46
    看了下 github ,已经停更多年了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2905 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 106ms · UTC 12:39 · PVG 20:39 · LAX 04:39 · JFK 07:39
    ♥ Do have faith in what you're doing.