commit:     7404b72274e79bdb3971c4be10dbbbcd8f717a07
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 22 19:02:47 2026 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Thu Jan 22 19:09:39 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7404b722

app-emacs/emacs-common: add 1.14

Bug: https://bugs.gentoo.org/885981
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 app-emacs/emacs-common/Manifest                 |   1 +
 app-emacs/emacs-common/emacs-common-1.14.ebuild | 142 ++++++++++++++++++++++++
 2 files changed, 143 insertions(+)

diff --git a/app-emacs/emacs-common/Manifest b/app-emacs/emacs-common/Manifest
index 1c76da411788..30f0020c36d2 100644
--- a/app-emacs/emacs-common/Manifest
+++ b/app-emacs/emacs-common/Manifest
@@ -1 +1,2 @@
 DIST emacs-common-1.13.tar.xz 66352 BLAKE2B 
4a2d30a3041b7dddac02697cc2b5975f902bb02e9b70c170cd1682821ee908aae3af8b47e518a858b5068763bd57934875d9cd9cc9108d992dae00f91ef19591
 SHA512 
717c2c3f3b0eed9e900cd6f4f35df760e51b9a3f89f57a1fe112a156a8b0d569964b4998a969e619c115dcef4d30ee0baab05fedfbfc2e259908602e2fcc4c01
+DIST emacs-common-1.14.tar.xz 66616 BLAKE2B 
463cda334d5bb0d6537e7bdab2f847be3b1bf22833ac253b49ebf0009eeb28d77b42d3354a926c08fab6c19fc66042091f71f23786d98ec012ed48d9649b1fa7
 SHA512 
477785595cb925c27a337d9712ea7142d060fb366799337e145a2f0c16c23e59158b582a64baf7c3a1b3addbc7044117ad17408da0d6783b1de28836219ed381

diff --git a/app-emacs/emacs-common/emacs-common-1.14.ebuild 
b/app-emacs/emacs-common/emacs-common-1.14.ebuild
new file mode 100644
index 000000000000..9741d5fe58a3
--- /dev/null
+++ b/app-emacs/emacs-common/emacs-common-1.14.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit elisp-common desktop eapi9-pipestatus gnome2-utils readme.gentoo-r1
+
+if [[ ${PV##*.} = 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/emacs-tools.git";
+       EGIT_BRANCH="${PN}"
+       EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}"
+       S="${EGIT_CHECKOUT_DIR}"
+else
+       SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz";
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc 
~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+fi
+
+DESCRIPTION="Common files needed by all GNU Emacs versions"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Emacs";
+
+LICENSE="GPL-2+ GPL-3+"
+SLOT="0"
+IUSE="games gsettings gui"
+
+DEPEND="games? ( acct-group/gamestat )"
+RDEPEND="${DEPEND}
+       !<app-emacs/emacs-daemon-0.25
+       !<x11-misc/emacs-desktop-mail-1.3"
+PDEPEND=">=app-editors/emacs-26.1:*"
+IDEPEND="gui? ( gsettings? ( dev-libs/glib ) )"
+
+SITEFILE="10${PN}-gentoo.el"
+
+src_prepare() {
+       default
+       if [[ -n ${EPREFIX} ]]; then
+               sed -i -E -e "s,/(bin|sbin|usr)/,${EPREFIX}&,g" \
+                       subdirs.el.in emacs.initd emacs.service \
+                       emacs.desktop emacsclient.desktop || die
+       fi
+}
+
+src_install() {
+       insinto "${SITELISP}"
+       sed "s,@libdir@,$(get_libdir),g" subdirs.el.in | newins - subdirs.el
+       pipestatus || die
+       newins site-gentoo.el{,.orig}
+
+       keepdir /etc/emacs
+       insinto /etc/emacs
+       doins site-start.el
+
+       exeinto /etc/user/init.d
+       newexe emacs.initd emacs
+       exeinto /usr/libexec/emacs
+       doexe emacs-wrapper.sh
+       elisp-site-file-install "${SITEFILE}"
+
+       # don't use systemd_douserunit because it would require inheriting
+       # three eclasses (systemd pulls toolchain-funcs and multilib)
+       insinto "/usr/lib/systemd/user"
+       doins emacs.service
+
+       if use games; then
+               keepdir /var/games/emacs
+               fowners 0:gamestat /var/games/emacs
+               fperms g+w /var/games/emacs
+       fi
+
+       if use gui; then
+               local i
+               domenu emacs.desktop emacsclient.desktop \
+                       emacs-mail.desktop emacsclient-mail.desktop
+
+               pushd icons >/dev/null || die
+               newicon sink.png emacs-sink.png
+               newicon emacs25_48.png emacs.png
+               for i in 16 24 32 48 128; do
+                       [[ ${i} -le 48 ]] && newicon -s ${i} emacs22_${i}.png 
emacs22.png
+                       newicon -s ${i} emacs23_${i}.png emacs23.png
+                       newicon -s ${i} emacs25_${i}.png emacs.png
+               done
+               doicon -s scalable emacs23.svg
+               newicon -s scalable emacs25.svg emacs.svg
+               popd >/dev/null || die
+
+               if use gsettings; then
+                       insinto /usr/share/glib-2.0/schemas
+                       doins org.gnu.emacs.defaults.gschema.xml
+               fi
+       fi
+
+       dodoc README.daemon ChangeLog
+
+       local DOC_CONTENTS DISABLE_AUTOFORMATTING=1
+       DOC_CONTENTS=$(sed "s,@SITELISP@,${EPREFIX}${SITELISP},g" \
+               README.gentoo.in) || die
+       readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+       # make sure that site-gentoo.el exists since site-start.el requires it
+       if [[ ! -f ${ED}${SITELISP}/site-gentoo.el ]]; then             #554518
+               mv "${ED}${SITELISP}"/site-gentoo.el{.orig,} || die
+       fi
+       if [[ -d ${EROOT}${SITELISP} ]]; then
+               elisp-site-regen
+               cp "${EROOT}${SITELISP}/site-gentoo.el" "${ED}${SITELISP}/" || 
die
+       fi
+
+       if use games; then
+               local f
+               for f in /var/games/emacs/{snake,tetris}-scores; do
+                       if [[ -e ${EROOT}${f} ]]; then
+                               cp "${EROOT}${f}" "${ED}${f}" || die
+                       fi
+                       touch "${ED}${f}" || die
+                       chgrp gamestat "${ED}${f}" || die
+                       chmod g+w "${ED}${f}" || die
+               done
+       fi
+}
+
+pkg_postinst() {
+       elisp-site-regen
+       if use gui; then
+               xdg_desktop_database_update
+               xdg_icon_cache_update
+               use gsettings && gnome2_schemas_update
+       fi
+       readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+       elisp-site-regen
+       if use gui; then
+               xdg_desktop_database_update
+               xdg_icon_cache_update
+               use gsettings && gnome2_schemas_update
+       fi
+}

Reply via email to