Compare commits

..

136 commits

Author SHA1 Message Date
Peter Oliver
8caa8a9f69 Eliminate “File listed twice” warning. 2025-12-10 15:07:07 +00:00
Peter Oliver
91bcd98e44 Fix Tree-sitter 0.26 patch for Emacs 30. 2025-12-10 13:03:09 +00:00
Peter Oliver
3b048fcb37 Support Tree-sitter version 0.26 and later (rhbz#2420305). 2025-12-10 12:05:42 +00:00
Peter Oliver
b4c76f9a53 Move ownership of %{_libdir}/emacs to emacs-filesystem package. 2025-11-25 13:17:25 +00:00
Peter Oliver
514c0430fb New RPM macro %_emacs_archsitelispdir for Emacs dynamic modules. 2025-11-24 13:18:51 +00:00
Peter Oliver
585fcc155a Set source-directory via site-start.d dropin. 2025-11-24 13:15:12 +00:00
Peter Oliver
8baaa786df Drop alternatives for etags
Since ctags-5.9, there is no-longer any other provider in Fedora, so we can simplify.
2025-11-14 17:19:43 +00:00
Peter Oliver
038733a4d2 Own etags and man page (rhbz#2414055). 2025-11-14 17:07:45 +00:00
Peter Oliver
3b2d62a20f Enable lexical binding in site-start.el and default.el
Emacs 31 will warn when loading an Elisp file that does not specify whether to use lexical binding.  We don’t use dynamic binding in these files, so we may as well switch it on now.

While we’re here, keep `checkdoc` happy.
2025-10-14 14:12:58 +01:00
Peter Oliver
6156d97ca7 Recent vanilla ~/.emacs defaults to lexical binding. 2025-10-14 14:08:43 +01:00
Peter Oliver
2004733785 Rebuild against tree-sitter-0.25.10-1.fc44 2025-09-24 15:20:36 +01:00
Peter Oliver
75773e6606 Rebuild against tree-sitter-0.25.9-1.fc44 2025-09-09 14:39:40 +01:00
Peter Oliver
a8890f9765 Update to version 30.2, fixing rhbz#2388544 2025-08-15 11:12:37 +01:00
Fedora Release Engineering
b2f275ac7a Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 19:48:10 +00:00
Peter Oliver
262e998b29 Fix typo. 2025-07-22 13:05:37 +01:00
Peter Oliver
680f81bce4 Suggest emacs-nw for emacs within mock. 2025-07-21 11:38:31 +01:00
Peter Oliver
006f58a138 Dependency generator: look for absolute symlinks in $RPM_BUILD_ROOT 2025-07-19 00:13:10 +01:00
Peter Oliver
2f9fd6b99a Dependency generator: ensure error messages are sent to stderr only. 2025-07-19 00:05:58 +01:00
Peter Oliver
12317652f3 Merge branch 'pr46' into rawhide, fixing indentation. 2025-07-18 15:33:04 +01:00
Peter Lemenkov
442688e43d ignore symlinks in dependency computation
Symlinks inside the buildroot (e.g.,
/builddir/build/BUILD/.../BUILDROOT/...) may point to non-existent paths
during build, as their targets are only valid after installation (e.g.,
/usr/lib64/...). This causes dependency generators to fail when
attempting to resolve such symlinks.

Since symlinks either:

* Point outside the package (and are processed separately), or
* Point inside the package (and their targets are processed directly),

we now skip symlink resolution entirely during dependency analysis. This
avoids build-host path errors while preserving post-install correctness.

Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2025-07-18 14:17:18 +02:00
Peter Oliver
3936b0f4b5 Rebuild against tree-sitter-0.25.8-1.fc43 2025-07-18 12:52:35 +01:00
Peter Oliver
59744aef62 Package emacsclient should conflict with the last F40 emacs-common. 2025-06-16 11:59:55 +01:00
Peter Oliver
735ea3cc3c Fix pretest version detection. 2025-06-16 00:41:54 +01:00
Peter Oliver
14aefc94f9 Restore compatibility with recent Tree-sitter parsers. 2025-06-16 00:40:42 +01:00
Peter Oliver
bedcb62413 Rebuild against tree-sitter-0.25.6-1.fc43 2025-06-13 15:37:42 +01:00
Peter Oliver
a8733e9b93 Rebuild against tree-sitter-0.25.5-1.fc43 2025-05-28 13:01:17 +01:00
Peter Oliver
25a203f123 Rebuild against tree-sitter-0.25.4-3.fc43 2025-05-12 14:03:34 +01:00
Peter Oliver
2a41db911d Emacs 31 compatibility for Tree-sitter Recommends generation. 2025-04-24 11:24:28 +01:00
Peter Oliver
7b67394177 Rebuild against tree-sitter-0.25.3-1.fc43 2025-04-14 12:25:22 +01:00
Peter Oliver
c65031ee31 Fix compilation errors due to insufficient compiler safety
Fixes bug #2350949 (‘package-install-from-buffer fails with "Can't read whole string"’).
2025-04-08 14:23:58 +01:00
Peter Oliver
e7d0043cec Suggest an Emacs build based on Fedora edition. 2025-03-25 16:44:55 +00:00
Peter Oliver
507e1bae41 Now there is no emacs subpackage, all emacs(bin) providers can provide it. 2025-03-25 13:09:58 +00:00
Peter Oliver
8222fbcb4d Drop emacs-terminal subpackage again
It now has unversioned requires in all stable Fedora releases, so dropping it will no-longer block upgrades from those releases.
2025-03-25 13:09:58 +00:00
Peter Oliver
c2d5a811c7 Rename emacs subpackage to emacs-pgtk
Hopefully, this causes users to be less disappointed when they discover that X11 isn’t supported with the “default” build.
2025-03-25 13:09:58 +00:00
Peter Oliver
cb65b0edeb Move emacs-desktop wrapper into emacs package
It’s only required with the `emacs-pgtk` binary.
2025-03-19 01:19:59 +00:00
Peter Oliver
1e64061e6c Ensure desktop icon is found
`WM_NAME` is set from the zeroth argument to `exec`.  Lie about this so that it matches the value expected from the `emacs.desktop` file.

This requires Bash, so use bashisms.
2025-03-18 13:22:05 +00:00
Peter Oliver
cf0b4080a8 Offer emacs-desktop as the highest priority alternative for emacs
Fixes #2326662.
2025-03-17 00:03:29 +00:00
Peter Oliver
45a313a33c Lower alternatives priority of emacs-nw
It shouldn’t have the same priority as emacs-lucid.
2025-03-16 23:48:00 +00:00
Peter Oliver
b8ab76acc8 Tidy up Recommends of emacs-common. 2025-03-13 12:50:15 +00:00
Peter Oliver
8ad003b0a8 Restore emacs-terminal subpackage
We can drop this again for Fedora 44.  See the discussion at https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/PWONA43D2WRBVDMZV6WFP3I2ML4CXQYN/ for more background.
2025-03-13 12:47:28 +00:00
Peter Oliver
340027a976 Correct provided emacs-transient version. 2025-03-13 00:49:05 +00:00
Peter Oliver
69f6ed99cc Automatically generate Recommends for Tree-sitter parsers. 2025-03-07 13:13:44 +00:00
Peter Oliver
28029c5fc3 Drop recommendation of gcc-c++ for newer Tree-sitter versions
Tree-sitter 0.24 dropped support for parsers written in C++.
2025-03-07 13:13:44 +00:00
Peter Oliver
72a21b107c Stricter matching of native-compiled lisp files. 2025-02-27 12:16:17 +00:00
Peter Oliver
3acf65e7aa Avoid duplicating native lisp across subpackages. 2025-02-27 01:27:38 +00:00
Peter Oliver
729b38fa3f Abandon checks
There are currently too many intermittent failures to make them useful.
2025-02-25 17:25:54 +00:00
Peter Oliver
49d824fe18 Rebuild against tree-sitter-0.25.2-5.fc42 2025-02-25 16:05:41 +00:00
Peter Oliver
af2a940d23 Update to version 30.1.
Fixes #2347206, CVE-2024-53920, CVE-2025-1244.
2025-02-24 20:58:14 +00:00
Peter Oliver
c3e999a02e Disable GC mark trace buffer for about 5% better GC performance. 2025-02-24 20:56:15 +00:00
Peter Oliver
98b6dedc72 Update to version 30.0.93. 2025-02-24 20:44:42 +00:00
Peter Oliver
6867865075 Update to version 30.0.92. 2025-02-24 20:44:42 +00:00
Bhavin Gandhi
da4bd493ac Elisp info has new image and a text file
Signed-off-by: Bhavin Gandhi <bhavin7392@gmail.com>
2025-02-24 20:44:42 +00:00
Bhavin Gandhi
fe4cba1366 Fix for failing uniquify-tests
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=73205

Signed-off-by: Bhavin Gandhi <bhavin7392@gmail.com>
2025-02-24 20:44:42 +00:00
Peter Oliver
bfeb333323 Update to version 30.0.91. 2025-02-24 20:44:39 +00:00
Tom spot Callaway
782c788973 rebuild for tree-sitter 2025-02-20 12:06:37 -05:00
Peter Oliver
efc6d1cc8f Rebuild against tree-sitter-0.25.2-3.fc43 2025-02-19 14:41:28 +00:00
Peter Oliver
563755ba21 Rebuild against tree-sitter-0.25.1-5.fc42 2025-02-03 12:23:18 +00:00
Peter Oliver
a64c461ff7 Rebuild against tree-sitter-0.25.1-3.fc42 2025-02-03 12:20:53 +00:00
Peter Oliver
253c482c86 Debug configure failures. 2025-01-17 12:42:03 +00:00
Fedora Release Engineering
c8f0e7e446 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 16:49:01 +00:00
Jens Petersen
bc8ee9cedf rebuild rawhide against tree-sitter-0.24 2025-01-15 12:05:46 +08:00
Peter Oliver
2094f8176e Require XPM pixbuf loader for GTK builds (#2335309) 2025-01-03 14:01:21 +00:00
Peter Oliver
f201351dff Fix typo in emacs-gtk+x11 Requires. 2024-10-31 14:59:17 +00:00
Peter Oliver
3ba3bada53 Drop emacs-terminal subpackage
It was supposed to be temporary, as the then-only terminal emulator that supported the Malayalam language.  These days, Konsole can be used instead (https://smc.org.in/en/articles/malayalam-linux-console/).
2024-10-31 14:43:37 +00:00
Peter Oliver
7510935270 Isolate builds from each other
Fixes dumping failures on Emacs 30.
2024-10-31 12:01:54 +00:00
Peter Oliver
12239bab40 Prefer make install to our own approximations. 2024-10-31 12:01:54 +00:00
Peter Oliver
4dac80cb55 Skip unstable test mml-secure-find-usable-keys-2. 2024-10-31 12:01:54 +00:00
Peter Oliver
c39eb8eaa9 Skip unstable test mml-secure-select-preferred-keys-2. 2024-10-30 11:42:54 +00:00
Richard W.M. Jones
8dd6af7706 Rebuild for Jansson 2.14 (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) 2024-10-22 16:53:51 +01:00
Peter Oliver
87182d19c2 Skip unstable test mml-secure-key-checks. 2024-10-09 19:52:45 +01:00
Peter Oliver
05cd234a69 Don’t pull in GUI builds if emacs-nw is installed (#2273786). 2024-10-09 18:28:54 +01:00
Peter Oliver
78d229edc1 RPM git-core is sufficient for fetching Tree-sitter grammar source (#2316238) 2024-10-03 11:58:28 +01:00
Peter Oliver
155673080c Don’t mention removed games in menus or documentation. 2024-09-26 14:45:55 +01:00
Peter Oliver
cf88b767de Rebuild against tree-sitter-0.23.0-2.fc41. 2024-09-24 12:33:14 +01:00
Peter Oliver
88a3c70353 Fix typo. 2024-09-22 21:59:29 +01:00
Peter Oliver
66296574a2 Drop WebKit, since recent versions are incompatible with Emacs
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=66068
2024-09-22 19:56:29 +01:00
Peter Oliver
1d7139dcc2 Relax libtree-sitter requirement. 2024-08-28 12:36:06 +01:00
Jacek Migacz
07ecef2a9c Unset custom linker flags 2024-08-22 21:17:27 +02:00
Fedora Release Engineering
b97332f65e Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 21:53:04 +00:00
Peter Oliver
88b7252ef1 More test stabilisation. 2024-07-17 12:45:35 +01:00
Peter Oliver
d81023e55d Try harder to stabalise dired-test-bug27243-02 2024-07-17 00:10:18 +01:00
Peter Oliver
449be03f8f Skip another unstable test. 2024-07-16 16:23:30 +01:00
Peter Oliver
311ab8413b Builds on i686 are working again. 2024-07-16 16:15:25 +01:00
Peter Oliver
04dac35b63 Skip intermittently failing tests. 2024-07-15 16:23:38 +01:00
Peter Oliver
290ab368cc Fix another intermittent test failure. 2024-07-15 12:14:29 +01:00
Peter Oliver
16d2054b15 Fall back to the terminal from pure GTK when no display is available
Works around bug #2276822 (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63555).
2024-07-14 22:07:44 +01:00
Peter Oliver
21f0a822f7 Fix typos. 2024-07-12 14:49:45 +01:00
Peter Oliver
c68d79e36c Fix intermittently failing test wdired-test-unfinished-edit-01. 2024-07-12 11:05:50 +01:00
Peter Oliver
9c1333df9d Drop i686, which is currently failing to build. 2024-07-12 10:33:33 +01:00
Peter Oliver
ec525e1cea Restore former alternatives symlinks, if they are missing
Fixes #2297425.
2024-07-12 00:06:36 +01:00
Peter Oliver
df45480b91 Skip tests that are unstable when run on GNU EMBA
Some of these tests are unreliable for us, too.
2024-07-11 17:49:33 +01:00
Peter Oliver
2860413ce2 Emacs’ -*- line has to come first. 2024-07-11 12:44:40 +01:00
Peter Oliver
6ee9fc3c3b Patches no-longer require numbering. 2024-07-11 12:44:40 +01:00
Peter Oliver
c7d90c2305 Don’t explicitly specify a hardened build, since that’s now default. 2024-07-11 12:44:40 +01:00
Peter Oliver
df9b814018 Don’t pacakge duplicate desktop-related files. 2024-07-11 12:44:40 +01:00
Peter Oliver
dec4348128 Gitignore more temporary packaging-related files. 2024-07-11 12:44:40 +01:00
Peter Oliver
5e02a413da Own unowned directories. 2024-07-11 12:44:40 +01:00
Peter Oliver
7157b76d42 Fix another failing test. 2024-07-10 23:57:53 +01:00
Peter Oliver
bce17310e3 Conditionalise build of alternative binaries
With this, builds can be significantly speeded up by, e.g.,

```
fedpkg mockbuild --without=nw --without=lucid --without=gtkx11
```
2024-07-08 15:56:26 +01:00
Peter Oliver
d3db50bc99 Run tests. 2024-07-08 15:56:26 +01:00
Peter Oliver
54190f15c1 Add missing symlink to package. 2024-07-08 15:25:29 +01:00
Peter Oliver
21c4c1004d Reduce use of alternatives
Attempt to fix #2277689 without reintroducing #684447.  We shouldn’t need to use alternatives for the versioned binaries, since there should only ever be one version installed at a time.
2024-07-03 14:36:19 +01:00
Peter Oliver
9bbdcd5307 Add Missing Requires for emacs-desktop wrapper 2024-07-03 00:58:41 +01:00
Peter Oliver
5551df4c13 Conflicts of emacsclient should reflect emacs-common in F40. 2024-07-02 23:56:24 +01:00
Peter Oliver
dfc53dd6c8 Remember to commit key. 2024-06-23 23:39:12 +01:00
Peter Oliver
e3cc998c0e Emacs 29.4 tarball is signed by Stefan Kangas, not Eli Zaretskii. 2024-06-23 23:27:03 +01:00
Peter Oliver
f705000ea2 Update to version 29.4. 2024-06-23 22:51:36 +01:00
Peter Oliver
9b5c26fbad Tweak subpackage summaries and descriptions. 2024-04-27 11:50:49 +01:00
Peter Oliver
6f72315876 Split emacsclient into a package that can be installed independently 2024-04-27 11:50:49 +01:00
Peter Oliver
4842649133 Rebuild Emacs, fixing Tree-sitter crash #2277250. 2024-04-26 01:04:48 +01:00
Pavol Žáčik
0f3de093ef
Remove liblockfile dependency 2024-04-23 10:02:06 +02:00
Peter Oliver
66f03e51df Split emacs-filesystem into a separate source package. 2024-04-09 14:37:42 +01:00
Peter Oliver
1ebda76805 Don’t assume a prerelease Emacs version in emacs-desktop
Fixes #2273957.
2024-04-09 14:28:54 +01:00
Peter Oliver
bc7d4e0406 Use HTTPS for URL. 2024-04-08 16:48:40 +01:00
Peter Oliver
6fe2018073 Require any emacs-filesystem
Its contents hasn’t changed since it was first introduced, in Fedora 15.
2024-04-05 13:06:27 +01:00
Peter Oliver
de1de70ec0 Obsolete the newer emacs-nox now in F39, fixing system upgrades 2024-04-03 12:36:34 +01:00
Dan Čermák
21cb2308ce
New upstream release 29.3, fixes rhbz#2271287
Drop 0001-configure-Remove-obsolete-check-for-b-i486-linuxaout.patch, it does
not appear to be necessary anymore
2024-03-25 12:23:19 +01:00
Yaakov Selkowitz
6a7849921b Disable gpm on ELN
gpm is unwanted in RHEL 10:

https://github.com/minimization/content-resolver-input/pull/1084
2024-02-06 13:08:45 -05:00
Fedora Release Engineering
e99b18145c Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-24 10:17:06 +00:00
Peter Oliver
88b50bfe26 Remember to update sources. 2024-01-22 19:41:31 +00:00
Peter Oliver
bc0c012fb9 Update to version 29.2 2024-01-22 19:36:42 +00:00
Peter Oliver
e207621728 Merge #37 Add -W option to %_emacs_bytecompile 2024-01-22 19:35:49 +00:00
Fedora Release Engineering
e44bfe4f3d Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 18:00:41 +00:00
Tim Landscheidt
3461073c54 Add -W option to %_emacs_bytecompile
The new option -W to %_emacs_bytecompile causes the byte-compilation
to fail on warnings.  Also, the amendment of load-path is simplified
and the macro %bytecompargs that is no longer used is removed.
2024-01-17 13:46:33 +00:00
Lukáš Zaoral
6efc21e5fc
use correct BuildRequires for SQLite support
libsqlite3x is a library with C++ bindings for SQLite which emacs does not use
at all which transitively pulled in the necessary sqlite-devel.  Due to that
dependency, the libsqlite3x package was also brought into ELN which is unwanted.

Fixes: 9c5e49b7f0 ("Enable new features in Emacs 29: SQLite, Tree-sitter, WEBP, XInput 2.")
2024-01-05 16:28:27 +01:00
Peter Oliver
927faab5c0 Recommend libtree-sitter-java. 2023-11-19 19:25:12 +00:00
Yaakov Selkowitz
aba744d1bc Fix alternatives dependencies
Installation path macros must not be used in file dependencies:

https://docs.fedoraproject.org/en-US/packaging-guidelines/#_file_and_directory_dependencies
2023-11-07 15:57:46 -05:00
Peter Oliver
eb9a486090 Fix typo. 2023-10-21 16:45:27 +01:00
Peter Oliver
64a3d6cec1 Fix typo. 2023-10-21 12:40:23 +01:00
Peter Oliver
2778435025 Merge remote-tracking branch 'yselkowitz/rawhide' into rawhide
Split `%configure` options across multiple lines for easier merging in future.
2023-10-21 11:58:07 +01:00
Yaakov Selkowitz
0d766e84f3 Disable xwidgets on RHEL 10
xwidgets require webkitgtk, which is being dropped from RHEL 10.
2023-10-20 00:19:58 -04:00
Peter Oliver
e739d345f1 Rename emacs-nox subpackage to emacs-nw
The name “no X” doesn’t make sense any more, now that use of the default `emacs` binary is discouraged on the X Window System.  Let’s call it `emacs-nw` instead (which matches the `-nw` command-line option for `emacs`).
2023-09-25 19:23:31 +01:00
Peter Oliver
6a39a2112e Switch the default emacs binary to pure-GTK, suitable for Wayland
Rename the old default hybrid GTK/X11 binary to `emacs-gtk+x11`.
2023-09-25 19:23:31 +01:00
Peter Oliver
e27f9eabc4 Consolidate more files and requirements into the common subpackage
Depend on google-noto-sans-mono-vf-fonts rather than dejavu-sans-mono-fonts, since that's Fedora's default these days.
2023-09-24 21:17:32 +01:00
Peter Oliver
85031a2f73 Convert to %autorelease and %autochangelog
[skip changelog]
2023-09-24 21:03:37 +01:00
Peter Oliver
44811312be Consolidate more files and requirements into the common subpackage. 2023-04-11 12:48:31 +01:00
17 changed files with 2922 additions and 2178 deletions

13
.gitignore vendored
View file

@ -1,5 +1,6 @@
/bodhi.template.last
/emacs-*.src.rpm
/emacs-23.3a.tar.bz2
/php-mode.el
/emacs-24.0.92.tar.gz
/emacs-24.0.93.tar.gz
/emacs-24.0.94.tar.gz
@ -35,9 +36,15 @@
/emacs-28.2.tar.xz.sig
/emacs-29.1.tar.xz
/emacs-29.1.tar.xz.sig
/emacs-29.2.tar.xz
/emacs-29.2.tar.xz.sig
/emacs-29.3.tar.xz
/emacs-29.3.tar.xz.sig
/emacs-29.4.tar.xz
/emacs-29.4.tar.xz.sig
/emacs-30.0.91.tar.xz
/emacs-30.0.91.tar.xz.sig
/php-mode.el
/results_emacs/
/emacs-30.1.tar.xz
/emacs-30.1.tar.xz.sig
/emacs-30.2.tar.xz
/emacs-30.2.tar.xz.sig

View file

@ -0,0 +1,31 @@
From 164e45695f9784469ff2f66cafcd6bc927c246be Mon Sep 17 00:00:00 2001
From: Peter Oliver <git@mavit.org.uk>
Date: Tue, 18 Mar 2025 13:16:15 +0000
Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20specify=20StartupWMClass=20in?=
=?UTF-8?q?=20emacs.desktop?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
See the explanation at
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49505#67. In summary, the
value we were providing doesnt work on Wayland, and the default should
be fine.
* etc/emacs.desktop: Dont specify StartupWMClass
---
etc/emacs.desktop | 1 -
1 file changed, 1 deletion(-)
diff --git a/etc/emacs.desktop b/etc/emacs.desktop
index 0d7cac14da5..16ad3c7eb48 100644
--- a/etc/emacs.desktop
+++ b/etc/emacs.desktop
@@ -9,4 +9,3 @@ Type=Application
Terminal=false
Categories=Development;TextEditor;
StartupNotify=true
-StartupWMClass=Emacs
--
2.48.1

View file

@ -0,0 +1,86 @@
From 6f29ac0393bb0bb70c8122d9f1bda0ae5d8cee24 Mon Sep 17 00:00:00 2001
From: Peter Oliver <git@mavit.org.uk>
Date: Thu, 26 Sep 2024 13:20:06 +0100
Subject: [PATCH] Pong and Tetris are excluded.
---
doc/emacs/ack.texi | 2 +-
doc/emacs/misc.texi | 7 +------
lisp/menu-bar.el | 6 ------
test/src/doc-tests.el | 4 ++--
4 files changed, 4 insertions(+), 15 deletions(-)
diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi
index 5ec5cd53fa6..26f174831ca 100644
--- a/doc/emacs/ack.texi
+++ b/doc/emacs/ack.texi
@@ -228,7 +228,7 @@ Acknowledgments
@item
Glynn Clements provided @file{gamegrid.el} and a couple of games that
-use it, Snake and Tetris.
+use it, including Snake.
@item
Andrew Cohen wrote @file{spam-wash.el}, to decode and clean email before
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 41e37fd094e..38e281bf59c 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -3248,14 +3248,9 @@ Amusements
nato-region} converts the text in the region to NATO phonetic
alphabet; @kbd{M-x denato-region} converts it back.
-@findex pong
-@cindex Pong game
-@findex tetris
-@cindex Tetris
@findex snake
@cindex Snake
- @kbd{M-x pong}, @kbd{M-x snake} and @kbd{M-x tetris} are
-implementations of the well-known Pong, Snake and Tetris games.
+ @kbd{M-x snake} is an implementation of the well-known Snake game.
@findex solitaire
@cindex solitaire
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index bcfa83cf8e4..1b0a0bce6a5 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -1658,18 +1658,12 @@ menu-bar-games-menu
(bindings--define-key menu [zone]
'(menu-item "Zone Out" zone
:help "Play tricks with Emacs display when Emacs is idle"))
- (bindings--define-key menu [tetris]
- '(menu-item "Tetris" tetris
- :help "Falling blocks game"))
(bindings--define-key menu [solitaire]
'(menu-item "Solitaire" solitaire
:help "Get rid of all the stones"))
(bindings--define-key menu [snake]
'(menu-item "Snake" snake
:help "Move snake around avoiding collisions"))
- (bindings--define-key menu [pong]
- '(menu-item "Pong" pong
- :help "Bounce the ball to your opponent"))
(bindings--define-key menu [mult]
'(menu-item "Multiplication Puzzle" mpuz
:help "Exercise brain with multiplication"))
diff --git a/test/src/doc-tests.el b/test/src/doc-tests.el
index b41a7ac5fb6..24befb737bc 100644
--- a/test/src/doc-tests.el
+++ b/test/src/doc-tests.el
@@ -34,8 +34,8 @@ doc-tests-documentation/autoloaded-macro
(ert-deftest doc-tests-documentation/autoloaded-defun ()
(skip-unless noninteractive)
- (should (autoloadp (symbol-function 'tetris)))
- (should (stringp (documentation 'tetris)))) ; See Bug#52969.
+ (should (autoloadp (symbol-function 'doctor)))
+ (should (stringp (documentation 'doctor)))) ; See Bug#52969.
(ert-deftest doc-tests-quoting-style ()
(should (memq (text-quoting-style) '(grave straight curve))))
--
2.46.1

View file

@ -0,0 +1,106 @@
From 16f0be6354ea13331859c861fa7d423a0b54bec7 Mon Sep 17 00:00:00 2001
From: Eli Zaretskii <eliz@gnu.org>
Date: Fri, 17 Oct 2025 14:15:41 +0300
Subject: [PATCH] Support Tree-sitter version 0.26 and later
* src/treesit.c (init_treesit_functions)
[TREE_SITTER_LANGUAGE_VERSION >= 15]: Define prototype for, and
load 'ts_language_abi_version' instead of the deprecated (and
removed in tree-sitter 0.26) 'ts_language_version'.
(ts_language_abi_version) [TREE_SITTER_LANGUAGE_VERSION >= 15]:
Define on WINDOWSNT, instead of 'ts_language_version'.
(treesit_language_abi_version): New compatibility function.
(treesit_load_language, Ftreesit_language_abi_version): Use
'treesit_language_abi_version' instead of 'ts_language_version'.
(Bug#79627)
---
src/treesit.c | 34 +++++++++++++++++++++++++++++++++-
1 file changed, 33 insertions(+), 1 deletion(-)
diff --git a/src/treesit.c b/src/treesit.c
index e2986c186b8..4d6bf9a5dbd 100644
--- a/src/treesit.c
+++ b/src/treesit.c
@@ -34,7 +34,11 @@ Copyright (C) 2021-2025 Free Software Foundation, Inc.
# include "w32common.h"
/* In alphabetical order. */
+#if TREE_SITTER_LANGUAGE_VERSION >= 15
+#undef ts_language_abi_version
+#else
#undef ts_language_version
+#endif
#undef ts_node_child
#undef ts_node_child_by_field_name
#undef ts_node_child_count
@@ -89,7 +93,11 @@ Copyright (C) 2021-2025 Free Software Foundation, Inc.
#undef ts_tree_get_changed_ranges
#undef ts_tree_root_node
+#if TREE_SITTER_LANGUAGE_VERSION >= 15
+DEF_DLL_FN (uint32_t, ts_language_abi_version, (const TSLanguage *));
+#else
DEF_DLL_FN (uint32_t, ts_language_version, (const TSLanguage *));
+#endif
DEF_DLL_FN (TSNode, ts_node_child, (TSNode, uint32_t));
DEF_DLL_FN (TSNode, ts_node_child_by_field_name,
(TSNode, const char *, uint32_t));
@@ -166,7 +174,11 @@ init_treesit_functions (void)
if (!library)
return false;
+#if TREE_SITTER_LANGUAGE_VERSION >= 15
+ LOAD_DLL_FN (library, ts_language_abi_version);
+#else
LOAD_DLL_FN (library, ts_language_version);
+#endif
LOAD_DLL_FN (library, ts_node_child);
LOAD_DLL_FN (library, ts_node_child_by_field_name);
LOAD_DLL_FN (library, ts_node_child_count);
@@ -224,7 +236,11 @@ init_treesit_functions (void)
return true;
}
+#if TREE_SITTER_LANGUAGE_VERSION >= 15
+#define ts_language_abi_version fn_ts_language_abi_version
+#else
#define ts_language_version fn_ts_language_version
+#endif
#define ts_node_child fn_ts_node_child
#define ts_node_child_by_field_name fn_ts_node_child_by_field_name
#define ts_node_child_count fn_ts_node_child_count
@@ -632,6 +648,22 @@ treesit_load_language_push_for_each_suffix (Lisp_Object lib_base_name,
}
}
+/* This function is a compatibility shim. Tree-sitter 0.25 introduced
+ ts_language_abi_version as a replacement for ts_language_version, and
+ tree-sitter 0.26 removed ts_language_version. Here we use the fact
+ that 0.25 bumped TREE_SITTER_LANGUAGE_VERSION to 15, to use the new
+ function instead of the old one, when Emacs is compiled against
+ tree-sitter version 0.25 or newer. */
+static uint32_t
+treesit_language_abi_version (const TSLanguage *ts_lang)
+{
+#if TREE_SITTER_LANGUAGE_VERSION >= 15
+ return ts_language_abi_version (ts_lang);
+#else
+ return ts_language_version (ts_lang);
+#endif
+}
+
/* Load the dynamic library of LANGUAGE_SYMBOL and return the pointer
to the language definition.
@@ -817,7 +849,7 @@ DEFUN ("treesit-language-abi-version", Ftreesit_language_abi_version,
&signal_data);
if (ts_language == NULL)
return Qnil;
- uint32_t version = ts_language_version (ts_language);
+ uint32_t version = treesit_language_abi_version (ts_language);
return make_fixnum((ptrdiff_t) version);
}
}
--
2.52.0

View file

@ -0,0 +1,63 @@
From 7099578f18b1ea6a168b1883fa7a4ac7f49fc08f Mon Sep 17 00:00:00 2001
From: Peter Oliver <git@mavit.org.uk>
Date: Sun, 14 Jul 2024 20:47:14 +0100
Subject: [PATCH 2/2] Fall back to the terminal from pure GTK when no display
is available
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* src/dispnew.c (init_display_interactive): Only use PGTK windowing if
at least one of the environment variables WAYLAND_DISPLAY, DISPLAY,
BROADWAY_DISPLAY is set. (Bug#63555)
This patch is not suitable for merging, because it doesnt consider
what happens if you try to use PGTK on Windows or MacOS.
---
src/dispnew.c | 29 ++++++++++++++++++++++++++---
1 file changed, 26 insertions(+), 3 deletions(-)
diff --git a/src/dispnew.c b/src/dispnew.c
index 7cf2b49273c..481d33a7302 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -6557,10 +6557,33 @@ init_display_interactive (void)
#endif
#ifdef HAVE_PGTK
- if (!inhibit_window_system && !will_dump_p ())
+ if (!inhibit_window_system)
{
- Vinitial_window_system = Qpgtk;
- return;
+ if (!display_arg && !will_dump_p ())
+ {
+ int i;
+ const char *gdk_display_variables[] = {
+ "WAYLAND_DISPLAY",
+ "DISPLAY",
+ "BROADWAY_DISPLAY",
+ };
+ size_t n = ARRAYELTS (gdk_display_variables);
+
+ for (i = 0; i < n; i++)
+ {
+ char *display;
+ display = getenv (gdk_display_variables[i]);
+ if (display != 0 && *display != 0)
+ {
+ display_arg = 1;
+ break;
+ }
+ }
+ }
+ if (display_arg) {
+ Vinitial_window_system = Qpgtk;
+ return;
+ }
}
#endif
--
2.45.2

View file

@ -0,0 +1,31 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Comment: 12BB 9B40 0EE3 F772 8286 4D18 272B 5C54 E015 416A
Comment: Andrea Corallo <acorallo@gnu.org>
xsFNBGa/sd8BEAC7hQAGte6YvxDaiTutpSkVrb+zJBGcEW/AroE/dduBn8mfxa/Y
i71C2GV/y03aibdaO+cXPULAkkuJVDnFk57hn3w9zo98LzqDSEgNFcAUSSSQdyj7
Wn3J26doRpFQKnv3dbx1yZRZccbLgt/AH6hzhvNjFbYZ53LYE9rKzUYLTNHDhUI4
QTda2PvgWoySXcjBKhyIgg9zZLSc2w4ZwhO9WDVai58xNsl+YyU2HqVPpJZSCX0j
liIooHOEL2D601ByrWmePRGFR0tD6V9xj5jWuusErb78r57NOPsRCRKCKcg/v/kl
fA5+byvanw27PDa8zoheXgF41uDf96keOQPBve3TE1Oy4x+G55zuP9KNQ5aSCG49
x0Cc7BET23JmiWUnz1GUbM7vka5ell+smmq+kTDtK47L+4N954a6CR0esPLJMLF6
Ub2y8SY2XPn1Bv8lsN77f0L5yyhnK72H+mf4fS/qjJlN0F+DWx49Z8it9rbG8Atc
X6Vqzv5qaDPbCpAqdqs2qrv3nAdvYOlwxmVh6Hxq1EOFT2v49dmn3viVBNnuT7yW
tyvpTDyvfLKOnfH+OLLuqPUFZnxt8mU8ieNEnvIYojSOFyddJAh2uOI3sqjLHrDg
PRAYFv9jp7K7pk+S054mdF31qD+TTxjWQtNI8Sxh/Q71Vtz7JyqYWd/JCQARAQAB
zSFBbmRyZWEgQ29yYWxsbyA8YWNvcmFsbG9AZ251Lm9yZz7CwZQEEwEKAD4WIQQS
u5tADuP3coKGTRgnK1xU4BVBagUCZr+x3wIbAwUJA8JnAAULCQgHAgYVCgkICwIE
FgIDAQIeAQIXgAAKCRAnK1xU4BVBaj/0D/4ogwPjg6Cwyi8pmRYx9gOjQNIRtjOb
2aHFYQs9luFy20Wlt/7QtelDH+NLCAb5PKvhDI3Sw+SIoheAndhbzqW7GEW5J9G7
10PPkCUCjbicJOKsUkMv03wS6IrelUYzgjbmGYRo2vYcSb+BHXQR4MuxDSL/2vPD
LHYKwij9K+FozgJVfjq5n97l/wsGsc/orRiST23ykiXyCZweulGLhXnoCghHrnB1
B+xBaCv3P1GW/BZZgXGPQ+1XMOsFlP951vfjirlHnJMvMDkMkNhT6Qh282jTokWN
TVQqKUv5tpdNkId+QmUhzC+DcfoOsegB3wWa6VQ/w1cG9mkoPUTT8Y8fo4FXnWwV
U4472JuZdQYFDAKEnTsW1TRNgBb5xLNNCUmDUVDndgn1WtZIZx18QBtJ1CHhycaN
C68McWuvvENhEM8clUXIHundgeDce4gcQC23Un7NT0PbNTwvGPfBSaoVax5ZVHuZ
Tr2pTHqAqqi4YLnrE5R06OIWQzVOVs5NZplDPZGXZOxryXa3ssLxjL2VYbo4AAUZ
h3fyVOzNHlGLT3Egj4XHDuDFcswUimD5SmrqQQwg94CgXExDisqH9Uo8L7Zxf/AG
UpIsxpDv219GOdTffbzl01W6oaP4obiTwMFUaQ7ljdCfq19KYdo576touTU+/48q
7AjjL28Eznhz0Q==
=goOm
-----END PGP PUBLIC KEY BLOCK-----

1880
changelog Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,13 @@
;;; default.el - loaded after ".emacs" on startup
;;;
;;; Setting `inhibit-default-init' non-nil in "~/.emacs"
;;; prevents loading of this file. Also the "-q" option to emacs
;;; prevents both "~/.emacs" and this file from being loaded at startup.
;;; default.el --- loaded after ".emacs" on startup -*- lexical-binding: t -*-
;;; Commentary:
;;
;; Setting `inhibit-default-init' non-nil in "~/.emacs"
;; prevents loading of this file. Also the "-q" option to "emacs"
;; prevents both "~/.emacs" and this file from being loaded at startup.
;;; Code:
(setq-default smime-CA-directory "/etc/ssl/certs")
;;; default.el ends here

View file

@ -1,4 +1,4 @@
;; .emacs
;;; -*- lexical-binding: t -*-
(custom-set-variables
;; uncomment to always end a file with a newline

41
emacs-desktop.sh Executable file
View file

@ -0,0 +1,41 @@
#!/usr/bin/bash
# The pure GTK build of emacs is not supported on X11, so try to avoid
# using it there if there is another alternative.
preferred="$(readlink -f /usr/bin/emacs)"
if [[ $XDG_SESSION_TYPE == 'x11' ]]; then
case "$preferred" in
*-pgtk)
for variant in gtk+x11 lucid; do
if type "emacs-$variant" >/dev/null; then
exec -a emacs "emacs-$variant" "$@"
fi
done
;;
*/emacs-desktop)
# If this wrapper script is itself the preferred alternative,
# select something suitable from the options available.
for variant in gtk+x11 lucid pgtk nw; do
if type "emacs-$variant" >/dev/null; then
exec -a emacs "emacs-$variant" "$@"
fi
done
exit 2
;;
esac
else
case "$preferred" in
*/emacs-desktop)
for variant in pgtk gtk+x11 lucid nw; do
if type "emacs-$variant" >/dev/null; then
exec -a emacs "emacs-$variant" "$@"
fi
done
exit 2
;;
esac
fi
exec emacs "$@"

View file

@ -0,0 +1,26 @@
From eaaf4883aee50974eeb03e529a29585f8ddc1d9d Mon Sep 17 00:00:00 2001
From: Bhavin Gandhi <bhavin192@geeksocket.in>
Date: Wed, 31 May 2023 22:44:54 +0530
Subject: [PATCH] Add package names to PGTK on X error message
---
src/pgtkterm.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/pgtkterm.c b/src/pgtkterm.c
index c00e13550bd..ce51bff5947 100644
--- a/src/pgtkterm.c
+++ b/src/pgtkterm.c
@@ -6680,7 +6680,8 @@ pgtk_display_x_warning (GdkDisplay *display)
" System. That configuration is unsupported and\n"
" will lead to sporadic crashes during transfer of\n"
" large selection data. It will also lead to\n"
- " various problems with keyboard input.\n");
+ " various problems with keyboard input.\n"
+ "\nInstall emacs-gtk+x11 or emacs-lucid package.\n");
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
gtk_container_add (GTK_CONTAINER (content_area), label);
gtk_widget_show (label);
--
2.40.1

View file

@ -1,11 +1,12 @@
--- a/src/gnutls.c 2016-01-24 10:29:58.000000000 +0100
+++ b/src/gnutls.c 2016-02-02 09:32:28.477274274 +0100
@@ -1557,7 +1557,7 @@
@@ -1557,8 +1557,8 @@
gnutls_certificate_credentials_t x509_cred = NULL;
gnutls_anon_client_credentials_t anon_cred = NULL;
Lisp_Object global_init;
- char const *priority_string_ptr = "NORMAL"; /* default priority string. */
+ char const *priority_string_ptr = "@SYSTEM"; /* default priority string. */
char *c_hostname;
const char *c_pass;
/* Placeholders for the property list elements. */

2733
emacs.spec

File diff suppressed because it is too large Load diff

5
emacs_lisp.attr Normal file
View file

@ -0,0 +1,5 @@
# -*- rpm-spec -*-
%__emacs_lisp_recommends %{_rpmconfigdir}/emacs_lisp.rec
%__emacs_lisp_path %{_datadir}/emacs/.+\.el(\.gz)?$
%__emacs_lisp_protocol multifile

49
emacs_lisp.rec Executable file
View file

@ -0,0 +1,49 @@
#!/usr/bin/emacs -x
;; This file is not part of GNU Emacs.
;;; Commentary:
;; Inspect Emacs Lisp files for usage of Tree-sitter parsers, and
;; generate RPM Recommends for those.
;;; Code:
(setq backtrace-on-error-noninteractive nil
jka-compr-verbose nil)
(condition-case nil
(while (setq filename (read-from-minibuffer ""))
(when (string-match-p (rx ".el" (optional ".gz") line-end)
filename)
(condition-case err
(let* ((symlink-target (file-symlink-p filename))
(source-filename
(if (and (stringp symlink-target)
(string-match-p (rx line-start "/")
symlink-target))
(file-name-concat (getenv "RPM_BUILD_ROOT")
symlink-target)
filename)))
(with-temp-buffer
(insert-file-contents source-filename)
(setq parsers ())
(while
(search-forward-regexp
(rx "(" (or "treesit-ensure-installed"
"treesit-parser-create"
"treesit-ready-p")
" '")
nil t)
(add-to-list 'parsers (thing-at-point 'symbol t)))
(when parsers
(princ (concat ";" filename "\n"))
(dolist (parser parsers)
(princ (concat "tree-sitter(" parser ")" "\n"))))))
;; Missing files are probably caused by "broken" symlinks
;; (which may actually be fulfilled by some other package).
(file-missing (message "warning: %s" (error-message-string err))))))
(end-of-file nil))
;;; emacs_lisp.rec ends here

View file

@ -1,9 +1,16 @@
;;; loaded before user's ".emacs" file and default.el
;;; site-start.el --- loaded before user's ".emacs" file and default.el -*- lexical-binding: t -*-
;;; Commentary:
;;
;; Load *.el and *.elc in /usr/share/emacs/site-lisp/site-start.d on startup
;;; Code:
;; load *.el and *.elc in /usr/share/emacs/site-lisp/site-start.d on startup
(mapc
'load
(delete-dups
(mapcar 'file-name-sans-extension
(directory-files
"/usr/share/emacs/site-lisp/site-start.d" t "\\.elc?\\'"))))
;;; site-start.el ends here

View file

@ -1,2 +1,2 @@
SHA512 (emacs-29.4.tar.xz) = 66b38081cb01d2c46ff7beefb45986cc225b4c922c30712ad0d456c6cae5507176ed99418c8f26948c5375c8afde4e4b2507d23ed997dbb5392d12150a121d80
SHA512 (emacs-29.4.tar.xz.sig) = 6c20269c260fb7f6d8b9b4582be25179a5adaaa1b9d94e68d55890f7b0b211dfd396c7005694b0154471ab3769f12e5067b8f4ec21720755d9087d89a8c722f6
SHA512 (emacs-30.2.tar.xz) = 313432d11e95c74f8cd35c5b1da442e6223f5d40f9173c55883c0339ecbfb97a0bedf79177ef8902afd3e33c078a233777bed01f5caffa1e7524f17d58bfc9a2
SHA512 (emacs-30.2.tar.xz.sig) = ab5b5d0624b37ac662cf9914e8807fc37ee273c107f1a19ca75a527b6b9a85ce35f9436d03d8a988876cce7e7bebcc6c4a1251b0ceb08785b56bf42743f246e1