]>
Commit | Line | Data |
---|---|---|
3b13f1ea ER |
1 | # BUILDING: |
2 | # https://github.com/atom/atom/blob/master/docs/build-instructions/linux.md | |
3 | ||
4 | Summary: A hackable text editor for the 21st century | |
5 | Name: atom | |
6 | Version: 1.2.4 | |
cc3f92d2 | 7 | Release: 0.5 |
3b13f1ea ER |
8 | License: MIT |
9 | Group: Applications/Editors | |
7cf11910 ER |
10 | Source0: https://github.com/atom/atom/releases/download/v%{version}/%{name}.x86_64.rpm |
11 | # NoSource0-md5: 2c1b984e9e2ce95449987006386463ca | |
12 | # no point storing it in distfiles, this package is no ready | |
13 | NoSource: 0 | |
3b13f1ea | 14 | URL: https://atom.io/ |
7cf11910 | 15 | BuildRequires: rpm-utils |
8393a48d | 16 | Suggests: apm |
7cf11910 | 17 | ExclusiveArch: %{x8664} |
3b13f1ea ER |
18 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
19 | ||
7cf11910 ER |
20 | %define _appdir %{_libdir}/%{name} |
21 | ||
cc3f92d2 ER |
22 | # internal caps not to provide |
23 | %define int_caps libgcrypt.so.11 libnode.so libnotify.so.4 | |
24 | ||
25 | # list of files (regexps) which don't generate Provides | |
26 | %define _noautoprovfiles %{_libdir}/%{name} | |
27 | # list of script capabilities (regexps) not to be used in Provides | |
28 | %define _noautoprov %{int_caps} | |
29 | %define _noautoreq %{_noautoprov} | |
30 | ||
3b13f1ea ER |
31 | %description |
32 | Atom is a desktop application based on web technologies. Like other | |
33 | desktop apps, it has its own icon in the dock, native menus and | |
34 | dialogs, and full access to the file system. | |
35 | ||
36 | Open the dev tools, however, and Atom's web-based core shines through. | |
37 | Whether you're tweaking the look of Atom's interface with CSS or | |
38 | adding major features with HTML and JavaScript, it's never been easier | |
39 | to take control of your editor. | |
40 | ||
8393a48d ER |
41 | %package -n apm |
42 | Summary: Atom Package Manager | |
43 | Group: Development/Tools | |
44 | URL: https://github.com/atom/apm | |
45 | ||
46 | %description -n apm | |
47 | Discover and install Atom packages powered by atom.io | |
48 | ||
49 | You can configure apm via a ~/.atom/.apmrc file similarly to npm | |
50 | config. | |
51 | ||
3b13f1ea | 52 | %prep |
7cf11910 ER |
53 | %setup -qcT |
54 | SOURCE=%{SOURCE0} | |
55 | version=$(rpm -qp --nodigest --nosignature --qf '%{V}' $SOURCE) | |
56 | test version:${version} = version:%{version} | |
57 | rpm2cpio $SOURCE | cpio -i -d | |
58 | ||
59 | mv usr/share/icons . | |
60 | mv usr/share/applications/* . | |
61 | mv usr/share/atom . | |
62 | mv usr/bin . | |
3b13f1ea | 63 | |
7cf11910 ER |
64 | mv atom/LICENSE . |
65 | mv atom/chromedriver/LICENSE LICENSE.chromedrive | |
3b13f1ea | 66 | |
5b2f6192 ER |
67 | # unneeded |
68 | mv atom/resources/app/atom.sh . | |
69 | ||
70 | # remove empty locales | |
71 | find atom/locales -size 0 | xargs rm -v | |
72 | ||
3b13f1ea ER |
73 | %install |
74 | rm -rf $RPM_BUILD_ROOT | |
7cf11910 | 75 | install -d $RPM_BUILD_ROOT{%{_bindir},%{_appdir}} |
3b13f1ea | 76 | |
7cf11910 ER |
77 | cp -a atom/* $RPM_BUILD_ROOT%{_appdir} |
78 | ||
3ce4e92b ER |
79 | ln -s %{_appdir}/atom $RPM_BUILD_ROOT%{_bindir} |
80 | ln -s %{_appdir}/resources/app/apm/bin/apm $RPM_BUILD_ROOT%{_bindir}/apm | |
3b13f1ea ER |
81 | |
82 | %clean | |
83 | rm -rf $RPM_BUILD_ROOT | |
84 | ||
85 | %files | |
86 | %defattr(644,root,root,755) | |
7cf11910 | 87 | %doc LICENSE LICENSE.chromedrive |
3b13f1ea | 88 | %attr(755,root,root) %{_bindir}/atom |
7cf11910 ER |
89 | %dir %{_appdir} |
90 | %{_appdir}/version | |
91 | %{_appdir}/*.bin | |
92 | %{_appdir}/content_shell.pak | |
93 | %{_appdir}/icudtl.dat | |
94 | %attr(755,root,root) %{_appdir}/atom | |
95 | %attr(755,root,root) %{_appdir}/libgcrypt.so.11 | |
96 | %attr(755,root,root) %{_appdir}/libnode.so | |
97 | %attr(755,root,root) %{_appdir}/libnotify.so.4 | |
98 | %dir %{_appdir}/chromedriver | |
99 | %attr(755,root,root) %{_appdir}/chromedriver/chromedriver | |
100 | ||
101 | %{_appdir}/locales | |
5b2f6192 ER |
102 | |
103 | %dir %{_appdir}/resources | |
8393a48d | 104 | %{_appdir}/resources/LICENSE.md |
5b2f6192 ER |
105 | %dir %{_appdir}/resources/app |
106 | ||
107 | %{_appdir}/resources/app.asar | |
108 | %{_appdir}/resources/atom.asar | |
109 | ||
8393a48d ER |
110 | # needed? |
111 | %{_appdir}/resources/app.asar.unpacked | |
112 | ||
113 | %files -n apm | |
114 | %defattr(644,root,root,755) | |
115 | %attr(755,root,root) %{_bindir}/apm | |
116 | ||
5b2f6192 ER |
117 | # too many files to list, assume file permissions |
118 | %defattr(-,root,root,-) | |
119 | %{_appdir}/resources/app/apm |