7 ms·
The problem with this is updates: there is no trusted publisher of binaries, and even if you pick one person to trust, oftentimes builds are 6 - 8 weeks out of
by gigel82 5y ago
The problem with this is updates: there is no trusted publisher of binaries, and even if you pick one person to trust, oftentimes builds are 6 - 8 weeks out of date with Chromium which means you're susceptible to all the published zero-days.
Tried building it myself and it takes 4 hours on my 32-core 5950x, and you still depend on someone actually porting a version bump because their patches need to be regenerated for every new chromium build.
I like the idea of it in principle; if someone donates some CI time and we get official CI builds, plus getting more active with picking up new builds it'll be a real contender. I'll stick with Firefox for now.
- gruez 5y ago>Tried building it myself and it takes 4 hours on my 32-core 5950x, That seems excessively long? For me it only takes around 2.5 hours on a 8c/16t processor. This is with optimizations enabled, with plenty of free ram and building on SSD.
- gigel82 5y agoIt took 2 hours on a pristine 48-core Azure VM from start to finish; wrote some details here when I was playing with it: https://github.com/ungoogled-software/ungoogled-chromium-windows/issues/102 https://github.com/ungoogled-software/ungoogled-chromium-win... It's likely it'll be faster if I build on bare-metal on my box; spun up a VM because the build does all kinds of stuff (downloads binaries, spits up temporaries all over the place, etc.).
- gruez 5y ago>pristine 48-core Azure VM 1. it's actually 24 physical cores, since azure counts hyperthreads as "vCPUs". still, that still seems slow compared to my own build times. 2. azure VMs have horrendous IO on the persistent data drives. You can probably get a small to medium speed improvement by moving your build to the D: drive.
- heavyset_go 5y ago> 2. azure VMs have horrendous IO on the persistent data drives. This. If you want to benchmark builds on Azure, building on a tmpfs or ramfs will help mitigate disk IO latency, although tmpfs might swap.
- systemvoltage 5y ago4 hours on a 32-core modern CPU? If this isn’t the strongest indictment of browsers getting out of control with regards to features and complexity, I don’t know what is. Browsers are a window into the internet. Browsers should be simple enough to be implemented by a single person in a week. I want the web to be re-constructed from scratch starting with the TCP/IP stack all the way to gifs with modern hindsight.
- iamstupidsimple 5y agoGIFs alone would take more than a week for a single person. I think you are severely underestimating the necessary complexity.
- LogonType10 5y agoTCP/IP is not part of "the web".
- irq 5y agoIt’s as much a part of the web as tires are parts of a car
- 1vuio0pswjnm7 5y ago"Browsers should be simple enough to be implemented by a single person in a week." They are. It all depends on who defines what a "browser" is and what it can do. The browser I use as a "daily driver" is a 1.3M static binary. It is 5.7M of C code, including graphics stuff I do not utilise. It compiles in under a minute on a low-end computer. This browser allows me to "browse" hypertext. It displays HTML tables beautifully in textmode. I can download files. I can save HTML as formatted text. It supports FTP. The program has various settings for cache size, character set and so forth. I can script the browser using tmux. This browser is all I really need.^1 I read HTML then decide if I want to download or save something. Simple. What else is there, really. When I want to run programs I do not do that using this browser. I have separate compilers and interpeters for that. When I want to listen to audio or watch video, I do not try to listen or watch using this browser. I have separate programs for that. And so on. I do not try to live inside a single pogram. In every case of a non HTML-reading/saving or www/ftp browsing task, the separate programs do a better job than the browser could. If this sounds something like the "UNIX principle" maybe that is not a coincidence. Sure, we can take each of those individual programs and integrate them into a single program, and still call it a "browser" but why would anyone want to do that.^2 What is that concept in programming called "separation of concerns". Someone once called it "an ordering of one's thoughts". When people use browsers written by web advertising-supported organisations, then the "organisation of thoughts" is going to revolve around advertising (requisite tracking and personal data/metadata collection) and how to integrate it into the browser. When I use the text-only browser I choose, the ordering of thoughts is quite different. I see no advertising. Ever. I still consume the same amount of "content", maybe even more because this 1.3M browser is quite fast. 1. Major corporations operating on the web today, e.g., banks, can obviously force people to use certain browsers for business and important personal matters. For recreational web use, however, people can choose any browser. 2. The answer is not "For everyone's convenience and free enjoyment." That is why we have people trying to "un-google".
- lvass 5y agoIt's packaged by Nix, should be more convenient.
- gigel82 5y agoIn my case I was running Windows, but even the Linux binaries are based on Chromium 91 (from back in May).
- lvass 5y ago96 in Nixpkgs right now.
- heavyset_go 5y agoFlathub has it for Linux based on version 96.x.
- trucekill 5y ago> 32-core 5950x damn, that's twice as many cores as a regular 5950x
- gigel82 5y agoGot the special sku... :) Threads, vCores, etc. ... used to working in VMs not bare metal; but you got the point.
- cmrdporcupine 5y agoBecause I previously worked on the Chromium codebase at Google I have a 'specialist' dev workstation, an HP Z840 dual 18 core Xeon with 256GB of RAM. And that's a model from many years ago now, the newer specialist workstations are even heftier. To work on chrome @ Google you absolutely need one. That said, if you're using cached builds via goma and have a nice fat pipe it can go quite fast without making your machine sweat much. It's an absolutely massive code base. I wish I could explain why, but it is. No single part sticks out as bloat to me. I could never get CLion (among other tools) to index it properly.
- gigel82 5y agoMaybe someone can create a Goma-equivalent for ungoogled chromium, but it's the project's explicit goal to not depend on Google stuff (they actually apply hundreds of patches to the code to remove built-in google service references) so a Google-supplied Goma cache won't be of much use to this project's builds.
- cmrdporcupine 5y agoThese days I work on a team at Google that provides distributed build infrastructure for non-Google3 projects, including goma. But unfortunately it's not available to the outside world, despite being built with that in mind.
- heavyset_go 5y agoHow long does it take to build Chromium with a machine like that?
- cmrdporcupine 5y agoI was building Chromecast most often, not Chromium itself. So can't really recall. For Chromecast, from clean, it was around 10 minutes.
- Apofis 5y ago