1 |
commit: 53277ef48dbfe60be03041e8bfaf7f3ced5acd52 |
2 |
Author: Maciej Barć <xgqt <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Apr 26 23:12:47 2022 +0000 |
4 |
Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Apr 26 23:13:08 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=53277ef4 |
7 |
|
8 |
app-emacs/package-lint: new package; add version 0.16 |
9 |
|
10 |
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org> |
11 |
|
12 |
app-emacs/package-lint/Manifest | 1 + |
13 |
.../package-lint/files/50package-lint-gentoo.el | 1 + |
14 |
.../package-lint-symbol-info-data-directory.patch | 26 +++++++++++++++++ |
15 |
app-emacs/package-lint/metadata.xml | 26 +++++++++++++++++ |
16 |
app-emacs/package-lint/package-lint-0.16.ebuild | 34 ++++++++++++++++++++++ |
17 |
5 files changed, 88 insertions(+) |
18 |
|
19 |
diff --git a/app-emacs/package-lint/Manifest b/app-emacs/package-lint/Manifest |
20 |
new file mode 100644 |
21 |
index 000000000000..a55a783a16b8 |
22 |
--- /dev/null |
23 |
+++ b/app-emacs/package-lint/Manifest |
24 |
@@ -0,0 +1 @@ |
25 |
+DIST package-lint-0.16.tar.gz 224744 BLAKE2B a1d26ae28727e305416498b66da188cbadababc9f415c199eff380dbce4888ee3137b6f13a26147d427142a9d244c784e192d21df3173d0a0c2dde4acb1e8630 SHA512 f5d79b69d37671233614a622cd5fd6c28c230adb0d5b7934ccd6bedc12228adb7bdef6739fdd32be383cefceb65b9538a00f763b49be6499e4b6e3f8b1a34616 |
26 |
|
27 |
diff --git a/app-emacs/package-lint/files/50package-lint-gentoo.el b/app-emacs/package-lint/files/50package-lint-gentoo.el |
28 |
new file mode 100644 |
29 |
index 000000000000..431f7e90ae73 |
30 |
--- /dev/null |
31 |
+++ b/app-emacs/package-lint/files/50package-lint-gentoo.el |
32 |
@@ -0,0 +1 @@ |
33 |
+(add-to-list 'load-path "@SITELISP@") |
34 |
|
35 |
diff --git a/app-emacs/package-lint/files/package-lint-symbol-info-data-directory.patch b/app-emacs/package-lint/files/package-lint-symbol-info-data-directory.patch |
36 |
new file mode 100644 |
37 |
index 000000000000..1b8644976721 |
38 |
--- /dev/null |
39 |
+++ b/app-emacs/package-lint/files/package-lint-symbol-info-data-directory.patch |
40 |
@@ -0,0 +1,26 @@ |
41 |
+index 2ecaef5..8178375 100644 |
42 |
+--- a/package-lint.el |
43 |
++++ b/package-lint.el |
44 |
+@@ -106,13 +106,15 @@ a backport library shipping the feature and VERSION is an |
45 |
+ optional minimum version containing the feature.") |
46 |
+ |
47 |
+ (defconst package-lint-symbol-info |
48 |
+- (let* ((stdlib-changes (with-temp-buffer |
49 |
+- (insert-file-contents |
50 |
+- (expand-file-name "data/stdlib-changes" |
51 |
+- (if load-file-name |
52 |
+- (file-name-directory load-file-name) |
53 |
+- default-directory))) |
54 |
+- (read (current-buffer)))) |
55 |
++ (let* ((stdlib-changes |
56 |
++ (with-temp-buffer |
57 |
++ (insert-file-contents |
58 |
++ (let ((siteetc-stdlib-changes |
59 |
++ (expand-file-name "data/stdlib-changes" "@SITEETC@"))) |
60 |
++ (if (file-exists-p siteetc-stdlib-changes) |
61 |
++ siteetc-stdlib-changes |
62 |
++ (expand-file-name "data/stdlib-changes" default-directory)))) |
63 |
++ (read (current-buffer)))) |
64 |
+ (info (make-hash-table))) |
65 |
+ (pcase-dolist (`(,version . ,data) stdlib-changes) |
66 |
+ (pcase-dolist (`(,syms . ,action) |
67 |
|
68 |
diff --git a/app-emacs/package-lint/metadata.xml b/app-emacs/package-lint/metadata.xml |
69 |
new file mode 100644 |
70 |
index 000000000000..ddaf53faef36 |
71 |
--- /dev/null |
72 |
+++ b/app-emacs/package-lint/metadata.xml |
73 |
@@ -0,0 +1,26 @@ |
74 |
+<?xml version="1.0" encoding="UTF-8"?> |
75 |
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> |
76 |
+ |
77 |
+<pkgmetadata> |
78 |
+ <maintainer type="project"> |
79 |
+ <email>gnu-emacs@g.o</email> |
80 |
+ <name>Gentoo GNU Emacs project</name> |
81 |
+ </maintainer> |
82 |
+ <upstream> |
83 |
+ <bugs-to>https://github.com/purcell/package-lint/issues/</bugs-to> |
84 |
+ <remote-id type="github">purcell/package-lint</remote-id> |
85 |
+ </upstream> |
86 |
+ <longdescription> |
87 |
+ This library provides a linter for the metadata in Emacs Lisp files which |
88 |
+ are intended to be packages. You can integrate it into your build process. |
89 |
+ package-lint detects various issues that may make your package |
90 |
+ uninstallable or unusable for some users, and it warns about significant |
91 |
+ deviations from the Elisp coding conventions, such as non-compliant symbol |
92 |
+ naming, and use of reserved keybindings. Among other community uses, |
93 |
+ package-lint is a prerequisite for submission of packages to MELPA. |
94 |
+ package-lint can be used standalone, but see also the flycheck-package and |
95 |
+ package-lint-flymake packages, which both use package-lint to conveniently |
96 |
+ display packaging errors directly in the buffer while writing elisp |
97 |
+ packages. |
98 |
+ </longdescription> |
99 |
+</pkgmetadata> |
100 |
|
101 |
diff --git a/app-emacs/package-lint/package-lint-0.16.ebuild b/app-emacs/package-lint/package-lint-0.16.ebuild |
102 |
new file mode 100644 |
103 |
index 000000000000..16a41eaf585d |
104 |
--- /dev/null |
105 |
+++ b/app-emacs/package-lint/package-lint-0.16.ebuild |
106 |
@@ -0,0 +1,34 @@ |
107 |
+# Copyright 1999-2022 Gentoo Authors |
108 |
+# Distributed under the terms of the GNU General Public License v2 |
109 |
+ |
110 |
+EAPI=8 |
111 |
+ |
112 |
+NEED_EMACS=26.1 |
113 |
+ |
114 |
+inherit elisp |
115 |
+ |
116 |
+DESCRIPTION="Linting library for Emacs Lisp package metadata" |
117 |
+HOMEPAGE="https://github.com/purcell/package-lint/" |
118 |
+SRC_URI="https://github.com/purcell/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" |
119 |
+ |
120 |
+LICENSE="GPL-3+" |
121 |
+KEYWORDS="~amd64 ~x86" |
122 |
+SLOT="0" |
123 |
+ |
124 |
+DOCS=( README.md ) |
125 |
+PATCHES=( "${FILESDIR}"/${PN}-symbol-info-data-directory.patch ) |
126 |
+SITEFILE="50${PN}-gentoo.el" |
127 |
+ |
128 |
+src_prepare() { |
129 |
+ elisp_src_prepare |
130 |
+ |
131 |
+ sed "s|@SITEETC@|${EPREFIX}${SITEETC}/${PN}|" -i ${PN}.el || die |
132 |
+} |
133 |
+ |
134 |
+src_install() { |
135 |
+ elisp-install ${PN} ${PN}{,-flymake}.el{,c} |
136 |
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}" |
137 |
+ |
138 |
+ insinto ${SITEETC}/${PN} |
139 |
+ doins -r data |
140 |
+} |