ungoogled-chromium icon indicating copy to clipboard operation
ungoogled-chromium copied to clipboard

Void Linux build

Open ThatNerdyPikachu opened this issue 6 years ago • 109 comments

No idea if this is possible or not, but would a Void build be possible?

ThatNerdyPikachu avatar Mar 29 '18 22:03 ThatNerdyPikachu

What is a Void build? I've never heard of it before.

Eloston avatar Mar 30 '18 07:03 Eloston

Void Linux is a distro with its own packaging system.

arutr avatar Mar 30 '18 15:03 arutr

I see. This should be possible, but I would wait until #367 has been finished before attempting it. Regardless, I'll accept a PR anytime.

Eloston avatar Mar 30 '18 15:03 Eloston

In the meantime, you should be able to use linux_portable to make a build right now (or use the Portable Linux binary on Void Linux).

Eloston avatar Mar 30 '18 15:03 Eloston

@Eloston If I'm correct, this is the right binary? https://ungoogled-software.github.io/ungoogled-chromium-binaries/releases/linux_static/64bit/55.0.2883.75-1

ThatNerdyPikachu avatar Mar 30 '18 15:03 ThatNerdyPikachu

@ThatNerdyPikachu I just updated it ;)

https://ungoogled-software.github.io/ungoogled-chromium-binaries/releases/linux_portable/64bit/65.0.3325.181-1

Eloston avatar Mar 30 '18 15:03 Eloston

@Eloston Alright, thanks! I'll test and report back to you when I get the chance!

ThatNerdyPikachu avatar Mar 30 '18 15:03 ThatNerdyPikachu

@Eloston Erm, sorry for the very very late response... Nope, that didn't work.

ThatNerdyPikachu avatar May 06 '18 03:05 ThatNerdyPikachu

Portable Linux version 66 is already out. What exactly isn't working?

Eloston avatar May 06 '18 05:05 Eloston

@travankor Thanks for confirming that it works with glibc. Do regular Chromium or Chrome work with musl?

Eloston avatar May 07 '18 07:05 Eloston

Some precompiled binary would not be accepted as an official void package. You guys have to figure, how to compile your own binary on the various platforms. I would recommend having a look at the chromium package's template and modify that to package this browser. That's what I did when I packaged Iridium for Void. However, first ask in IRC if they even want new browser packages, otherwise you're wasting your time.

Since I'm not using chromium-derivatives anymore since Firefox 57, I'm not too motivated to put too much time into this (I was asked if I could help a little bit here)

faulesocke avatar May 08 '18 07:05 faulesocke

@faulesocke I wasn't too clear earlier, but I'm diverging a bit from the original topic at hand.

The purpose of my question is to learn more about musl and where compatibility is breaking; if it's in ungoogled-chromium, then it's a bug with the Portable Linux build, since Void isn't the only system that uses musl (and users may not want to wait for a package to come around for their distro). Otherwise, if Chromium and Chrome are also broken, then we would have to include those patches to work with musl.

However, first ask in IRC if they even want new browser packages, otherwise you're wasting your time.

If it's straight-forward for users to install package files manually, packages for Void can be added to the contributor binaries page (if someone submits them). If Void wants to have it included officially, then this can be dropped.

In the meantime or as an alternative, a derivative of the Portable Linux config for musl could be added.

Since I'm not using chromium-derivatives anymore since Firefox 57, I'm not too motivated to put too much time into this (I was asked if I could help a little bit here)

No problem. For platforms I don't use, I generally leave it to someone else to do the actual work of implementing support.

Unrelated to the main topic, but I'm genuinely interested to see how Firefox Quantum progresses down the road. I could see myself jumping ship if Chromium becomes too much of a burden for me to keep up.

Eloston avatar May 08 '18 10:05 Eloston

@Eloston been looking after a source/rolling distro lately and ended up with void/gentoo choice and void seems really to be damn interesting... i will be probably installing that on one of my main machines soon i will see if i can help then, it does not seems to be in a hurry issue here so...

off-topic : Now about the firefox i have to be honest i switched back lool still using uc tho but firefox v62, v63 just fly in term of speed etc... still need some customization tho for privacy (https://github.com/Eloston/ungoogled-chromium/issues/560#issuecomment-431713666) and also it have auto-update forced (can be disabled...)... but other than that they have done a damn pretty good work

By the way not all void linux are using musl its optional

intika avatar Oct 28 '18 20:10 intika

Chromium requires a large number of patches to build on Alpine Linux (which solely uses musl). Most of these are likely required to get an ungoogled-chromium build working on a musl system.

List of patches as well as build setup (inside APKBUILD): https://git.alpinelinux.org/aports/tree/community/chromium

I'd love to see some movement here as Alpine doesn't ship with any privacy conscious browser full stop. Firefox is built with all telemetry enabled and not to mention it's stuck on an outdated non-LTS release.

https://git.alpinelinux.org/aports/tree/testing/firefox

(Firefox also hard-depends on dbus on Alpine so I can't use it. Though this is an entirely different issue)

dylanaraps avatar Mar 13 '19 08:03 dylanaraps

@Smooey IceCat is available on Void, so your 2nd paragraph is unwarranted. You can install the Guix package manager on top of Void, and at least at one point ungoogled-chromium was available via Guix (I'm not sure what the current status is).

emacsomancer avatar Mar 27 '19 15:03 emacsomancer

@Smooey IceCat is available on Void, so your 2nd paragraph is unwarranted. You can install the Guix package manager on top of Void, and at least at one point ungoogled-chromium was available via Guix (I'm not sure what the current status is).

Im sorry for asking but, how do you install guix on top of void?

ghost avatar May 12 '19 17:05 ghost

@irritating This part of the manual describe how to do this: https://www.gnu.org/software/guix/manual/en/guix.html#Binary-Installation . It's very similar to installing guix on top of other distros (modulo the systemd bits).

emacsomancer avatar May 13 '19 02:05 emacsomancer

Sorry for digging up an old thread, but I just finished compiling ungoogled-chromium on my Alpine Linux (musl/busybox) system, meaning it should work on Void musl as well -- is a musl binary still something this project wants/needs? If so, I can package it.

Also, I don't think submitting a PR with my changes would be desirable currently, as there were a lot of small and semi-messy tweaks necessary to compile due to dependency on nonstandard GNU/glibc behavior. However, I can absolutely clean up and share my changes if anyone would like.

Thanks!

Cubified avatar Apr 12 '20 19:04 Cubified

@Cubified I wouldn't mind adding a new platform repo for Alphine or other musl-based systems. Musl change are platform-specific so they don't belong in this repo.

Eloston avatar Apr 12 '20 20:04 Eloston

Thanks for the quick response -- I'll look into cleaning up my changes. In the meantime, I just submitted a PR in the binaries repo with a packaged musl binary.

Cubified avatar Apr 12 '20 21:04 Cubified

What did you guys end up doing for ungoogled-chromium on Void? Just building it yourself? Void's chromium pkg doesn't have VAAPI enabled, so I might as well build ungoogled-chromium with it, I guess.

dm17 avatar Jun 13 '20 18:06 dm17

@dm17 There's the musl branch on ungoogled-chromium-portablelinux now, but no one has published binaries yet: https://github.com/ungoogled-software/ungoogled-chromium-portablelinux/tree/musl. Portable Linux doesn't have VA-API support built-in either; you'll need to get the patches to enable that.

Eloston avatar Jun 13 '20 21:06 Eloston

@dm17 There's the musl branch on ungoogled-chromium-portablelinux now, but no one has published binaries yet: https://github.com/ungoogled-software/ungoogled-chromium-portablelinux/tree/musl. Portable Linux doesn't have VA-API support built-in either; you'll need to get the patches to enable that.

OK, I'm not using musl with Void anyway. Sounds like:

  1. clone ungoogled-chromium
  2. add VAAPI patch
  3. figure out how to package on void (or just launch it from source dir).

dm17 avatar Jun 13 '20 21:06 dm17

  1. Follow instructions to clone ungoogled-chromium-portablelinux on https://github.com/ungoogled-software/ungoogled-chromium-portablelinux
  2. Copy patches to somewhere in patches/ directory, and list them in patches/series
  3. Continue following instructions to build and produce a package. The package's just a tar file, and it's portable.

Eloston avatar Jun 13 '20 22:06 Eloston

Looks like I'll have to compile for musl then. Oof.

If I do, I'll submit the binary.

midirhee12 avatar Aug 21 '20 05:08 midirhee12

Looks like I'll have to compile for musl then. Oof.

If I do, I'll submit the binary.

If you use the musl version - I use Void without musl.

dm17 avatar Aug 21 '20 08:08 dm17

I use Void without musl.

As do I.

ThatNerdyPikachu avatar Aug 21 '20 16:08 ThatNerdyPikachu

@cvoges12 If you do end up compiling for musl, heads up that the version I’ve prepared patches for is a bit out of date (Chromium 80 vs 84), my fault for not keeping it updated – it will compile and be fully functional though (+ hopefully I’ll have some time to work on updating the patches soon)

Cubified avatar Aug 21 '20 17:08 Cubified

@Cubified Do you want me to hold off until then?

midirhee12 avatar Aug 23 '20 01:08 midirhee12

@cvoges12 Ehh no, since I’m not sure how long it will take to update the patches and make sure they work properly

Cubified avatar Aug 23 '20 17:08 Cubified