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 +}
