New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add FreeBSD support to electron #3797

Open
teran-mckinney opened this Issue Dec 12, 2015 · 109 comments

Comments

Projects
None yet
@teran-mckinney
Contributor

teran-mckinney commented Dec 12, 2015

Bountysource

Related: #2452

@zcbenz

This comment has been minimized.

Contributor

zcbenz commented Dec 14, 2015

As mentioned in #2452, currently we don't have any plan to add support for FreeBSD, but if anyone is interested in sending a pull request, we will be very happy to accept it.

@zcbenz zcbenz closed this Dec 14, 2015

@teran-mckinney

This comment has been minimized.

Contributor

teran-mckinney commented Dec 14, 2015

Hi @zcbenz,

Could you please keep this open? I opened the request and added a bounty to encourage someone to send in a PR adding in FreeBSD support.

Thank you,
Teran

@zcbenz

This comment has been minimized.

Contributor

zcbenz commented Dec 15, 2015

Okay.

@yonas

This comment has been minimized.

yonas commented Jun 4, 2016

I'm getting close to compiling electron on FreeBSD 10.3.

I have two errors standing in my way:

https://gist.github.com/yonas/06d08aa591e4a452b16c1e9a9ac5e0f3

but I'm not sure how to fix them. Any C/C++ gurus here? :)

@zacts

This comment has been minimized.

zacts commented Aug 24, 2016

I see that $200 USD has been added to the bounty? Is this going to happen? I think it will rock if it does.

@yonas

This comment has been minimized.

yonas commented Aug 25, 2016

Sorry, I'll try to spend more time on this. If anyone knows C/C++ very well, there are Linux specific parts that need to be re-implemented for FreeBSD.

Yes, Electron is becoming more popular and being used in more apps than just the Atom editor. I'd love to have the Black Screen terminal running on my FreeBSD machine.

@prash-wghats

This comment has been minimized.

prash-wghats commented Oct 12, 2016

Was able to build electron and VSCode in freebsd11RC1. the build instruction is posted in
https://gist.github.com/prash-wghats/89be1ee069d2acf23c289e9c606616e1

@yonas

This comment has been minimized.

yonas commented Oct 12, 2016

@prash-wghats Great work!!! I'm curious, why did you compile with VSCode? Is there anything that GCC or CLANG is missing?

@ilundhild

This comment has been minimized.

ilundhild commented Oct 12, 2016

This is awesome. Can't wait to try it out, and would love to see those changes moved forward.

@enlight

This comment has been minimized.

Contributor

enlight commented Oct 12, 2016

@yonas @prash-wghats didn't build using VSCode, he built Electron & VSCode.

@ConorIA ConorIA referenced this issue Oct 13, 2016

Closed

FreeBSD support? #81

@prash-wghats

This comment has been minimized.

prash-wghats commented Oct 13, 2016

@yonas Thanks. Built electron using clang, then used it to run VSCode.

@grahamperrin

This comment has been minimized.

grahamperrin commented Jan 16, 2017

Upped the bounty.

(Incidentally: the reference, above, from an apparently Windows-related issue was the result of steering away from a multi-platform issue for the same product.)

@patrickalima98

This comment has been minimized.

patrickalima98 commented Jun 7, 2017

Hello electron team, my compliments!!!! First I would like to congratulate you on the project and also leave here my desire as well as many others to see the electron running in the FresBSD, your application is very impressive and it would be great if you could add support to FreeBSD I very much enjoyed the platform and it would enable the BSDS systems to leverage enabling the creation of incredible apps.

@yuya-oc yuya-oc referenced this issue Jun 10, 2017

Closed

FreeBSD Desktop Support #546

1 of 1 task complete
@nomadlogic

This comment has been minimized.

nomadlogic commented Jun 24, 2017

Any chances of the patches referenced by prash-wghats commented on Oct 12, 2016 will be incorporated upstream? Are their blockers preventing this from happening, or anything the FreeBSD community can do to usher this along?

@prash-wghats

This comment has been minimized.

prash-wghats commented Jul 7, 2017

https://github.com/prash-wghats/VSCode-For-FreeBSD/releases.
This binaries were built with freebsd 11.

@pizzamig

This comment has been minimized.

pizzamig commented Mar 2, 2018

@yzgyyang Hey! Great work!
I can help migrating the "build_electron.sh" script in a FreeBSD port compatible way

@yzgyyang

This comment has been minimized.

Contributor

yzgyyang commented Mar 2, 2018

@pizzamig A lot of work was done by @prash-wghats on a buildable build_electron.sh, and I am already on writing ports and testing (check this out: https://github.com/yzgyyang/freebsd-ports-electron). More eyes and hands are always welcome 😄

@pizzamig

This comment has been minimized.

pizzamig commented Mar 2, 2018

great, I'll do some pull request in the weekend, there're some stuff to be fixed, but it's really promising

@ckerr

This comment has been minimized.

Member

ckerr commented Mar 5, 2018

Should've commented on this sooner, but better late than never:

@Alhadis simplifying the build process would benefit BSD in exactly the same way that it would benefit all platforms, so maybe that should be split off to a separate issue if you have specific improvement suggestions to make. Thanks!

@sfourman

This comment has been minimized.

sfourman commented Apr 16, 2018

Has anyone successfully made a FreeBSD port of this work yet?

@wezm

This comment has been minimized.

wezm commented May 11, 2018

FYI I've added $50 to the bounty on this issue, which brings it to $750.

@pizzamig

This comment has been minimized.

pizzamig commented May 15, 2018

Here you can find the FreeBSD port that will build and install electron on FreeBSD:
https://github.com/yzgyyang/freebsd-ports-electron

Currently, the port is poudriere compatible, but not yet committed; in other words, you can build it, but there's no package yet.
Please, feel free to use it and test it! We need your feedback

@duncan-bayne

This comment has been minimized.

duncan-bayne commented Jun 14, 2018

@pizzamig Great, thanks! Will test soon. Hoping to get Cypress running on FreeBSD, so this is great timing :)

@fabianfreyer

This comment has been minimized.

fabianfreyer commented Jun 20, 2018

@pizzamig might it be worth implementing a USES=electron flag to simplify creating electron-based ports?

@RainbowHackerHorse

This comment has been minimized.

RainbowHackerHorse commented Jun 20, 2018

@fabianfreyer I think this is a fantastic idea, considering the large number of ports we'll see coming into the tree once this is committed.

@yzgyyang is there a holdup on committing, or are you just testing first? If you submitted and are waiting on a committer, I can ping my mentor and see if she can poke at it, or if someone else I know with a commit bit can :)

@thenexxuz

This comment has been minimized.

thenexxuz commented Sep 26, 2018

Is there any update on adding BSD support for electron apps?

@thenexxuz

This comment has been minimized.

thenexxuz commented Sep 26, 2018

BTW, the bounty is now $800.00 after I added 50

@udp

This comment has been minimized.

udp commented Sep 29, 2018

Why is this closed? I'm happily using both Chromium and node.js on FreeBSD, so there's no technical reason Electron shouldn't be able to work here.

@udp

This comment has been minimized.

udp commented Sep 29, 2018

Oops, sorry, saw the "closed" flag for the Haiku OS post above and thought it was for this issue. -_-

@udp

This comment has been minimized.

udp commented Sep 29, 2018

@pizzamig what happened with this? It's fine if you don't want to work on it anymore but if you could let us know how far you got and what issues you faced it would be helpful!

@prash-wghats

This comment has been minimized.

prash-wghats commented Sep 29, 2018

@ararslan

This comment has been minimized.

ararslan commented Sep 29, 2018

Electron is working in FreeBSD.

The binaries are great, and I've used your VSCode binaries a bit on 11.2. It would be great to get Electron and friends into the Ports Collection though. I think that's what would effectively "complete" this issue.

@asaf-romano

This comment has been minimized.

asaf-romano commented Sep 30, 2018

Added 50$ to bounty.

@grahamperrin

This comment has been minimized.

grahamperrin commented Sep 30, 2018

… vscode and the actual electron binary are working on TrueOS/FreeBSD 12 (haven't tried Atom yet). …

Atom 1.23.0

Atom-v1.23.0_5_6.tar.xz from https://github.com/prash-wghats/Electron-VSCode-Atom-For-FreeBSD/releases/tag/atom_v1.23.0

$ date ; uname -v ; pwd
Sun 30 Sep 2018 11:31:46 BST
FreeBSD 12.0-ALPHA7 r338956 GENERIC-NODEBUG 
/home/grahamperrin
$ Applications/Atom/atom Desktop/test.txt 
Fontconfig warning: "/usr/local/etc/fonts/local.conf", line 1093: saw number, expected matrix
Attempting to call a function in a renderer window that has been closed or released.
Function provided here: worker.js:61:22
Remote event names: destroyed, crashed
$ 

The three lines after the (negligible) fontconfig warning occur when quitting the application.

@pizzamig

This comment has been minimized.

pizzamig commented Oct 2, 2018

https://github.com/yzgyyang/freebsd-ports-electron is a port, compatible and usable with poudriere, to build a FreeBSD package and is largely based on the great work of @prash-wghats . Without his insight, nothing would be possible.
Unfortunately, the port, as it is, cannot land to the Port Collection, it has too many tricks and things not allowed (especially the libcc and the node packages).
Currently, I'm working on an acceptable port for libcc. If you have ever build chromium from sources, you'll now why it's "time consuming".

@nornagon

This comment has been minimized.

Contributor

nornagon commented Oct 3, 2018

libcc is deprecated and not used in the current build of electron, so probably not a great idea to work on a port for it :)

@thenexxuz

This comment has been minimized.

thenexxuz commented Oct 3, 2018

Having it work in ports is good and all and I agree that it is a good start but there are apps that are closed source (GitKraken for example) I would not expect to have to directly support BSD but if it is an official platform for electron then they could cross compile a BSD build. But that cannot happen until there is an official build. That's just my opinion.

@dariusc93

This comment has been minimized.

dariusc93 commented Oct 3, 2018

I think the main hurdle currently to bring the port upstream is the chromium library. Could be wrong though, but other than that, if the patches for electron itself is brought upstream, then it should be good to go from there but there is also more to it since there is likely libraries out there that isnt built to run on BSD or isnt configured for the platform. It would still need to be work for devs to make sure any native modules can run on BSD as well. If there isnt any dependencies that make use of native modules, then it should be fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment