2 # - build from source (the process and deps look like hell)
3 # https://github.com/atom/electron/blob/v0.36.0/docs/development/build-instructions-linux.md
5 # - space considerations: ~25GiB for build
8 Summary: Framework cross-platform desktop applications using JavaScript, HTML and CSS
14 URL: https://github.com/atom/electron
15 BuildRequires: git-core
16 BuildRequires: ncurses
18 ExclusiveArch: %{ix86} %{x8664}
19 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
21 %define _noautoprovfiles %{_libdir}/%{name}
22 %define _noautoreq libnode.so libnotify.so
25 The Electron framework lets you write cross-platform desktop
26 applications using JavaScript, HTML and CSS. It is based on Node.js
27 and Chromium and is used in the Atom editor.
31 git clone https://github.com/atom/electron.git -b v%{version} --depth 1 .
33 ./script/bootstrap.py -v
36 ln -s %{_libdir}/libncurses.so.5 lib/libtinfo.so.5
39 export LD_LIBRARY_PATH=`pwd`/lib
41 ./script/build.py -c R
44 rm -rf $RPM_BUILD_ROOT
46 # make install repeatable
49 install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name}}
50 cp -a . $RPM_BUILD_ROOT%{_libdir}/%{name}
51 ln -s %{_libdir}/%{name}/%{name} $RPM_BUILD_ROOT%{_bindir}/%{name}
53 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/LICENSE*
54 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/libgcrypt*
57 rm -rf $RPM_BUILD_ROOT
60 %defattr(644,root,root,755)
62 %attr(755,root,root) %{_bindir}/%{name}
63 %dir %{_libdir}/%{name}
64 %{_libdir}/%{name}/locales
65 %{_libdir}/%{name}/resources
66 %attr(755,root,root) %{_libdir}/%{name}/electron
67 %attr(755,root,root) %{_libdir}/%{name}/libnode.so
68 %attr(755,root,root) %{_libdir}/%{name}/libnotify.so.4
69 %{_libdir}/%{name}/content_shell.pak
70 %{_libdir}/%{name}/icudtl.dat
71 %{_libdir}/%{name}/natives_blob.bin
72 %{_libdir}/%{name}/snapshot_blob.bin
73 %{_libdir}/%{name}/version