summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2015-02-21 08:46:47 +0000
committerUlrich Müller <ulm@gentoo.org>2015-02-21 08:46:47 +0000
commit7d753a45f15b8ff2cf0a6ceaeaa3efaaa824d135 (patch)
treeda5bd4ace8be99dbcc3621f558a95135503e9332 /app-emacs/emacs-common-gentoo
parentSync missing stable-unmask of multilib xcb-util-*. (diff)
downloadgentoo-2-7d753a45f15b8ff2cf0a6ceaeaa3efaaa824d135.tar.gz
gentoo-2-7d753a45f15b8ff2cf0a6ceaeaa3efaaa824d135.tar.bz2
gentoo-2-7d753a45f15b8ff2cf0a6ceaeaa3efaaa824d135.zip
Follow QA policy for game state directory, bug 537580.
(Portage version: 2.2.17/cvs/Linux x86_64, signed Manifest commit with key 9433907D693FB5B8!)
Diffstat (limited to 'app-emacs/emacs-common-gentoo')
-rw-r--r--app-emacs/emacs-common-gentoo/ChangeLog8
-rw-r--r--app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.4-r2.ebuild149
2 files changed, 156 insertions, 1 deletions
diff --git a/app-emacs/emacs-common-gentoo/ChangeLog b/app-emacs/emacs-common-gentoo/ChangeLog
index f5ba27eace10..0f7a1b7a3b62 100644
--- a/app-emacs/emacs-common-gentoo/ChangeLog
+++ b/app-emacs/emacs-common-gentoo/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-emacs/emacs-common-gentoo
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emacs/emacs-common-gentoo/ChangeLog,v 1.110 2015/01/28 13:06:34 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emacs/emacs-common-gentoo/ChangeLog,v 1.111 2015/02/21 08:46:47 ulm Exp $
+
+*emacs-common-gentoo-1.4-r2 (21 Feb 2015)
+
+ 21 Feb 2015; Ulrich Müller <ulm@gentoo.org>
+ +emacs-common-gentoo-1.4-r2.ebuild:
+ Follow QA policy for game state directory, bug 537580.
28 Jan 2015; Ulrich Müller <ulm@gentoo.org>
emacs-common-gentoo-1.4-r1.ebuild:
diff --git a/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.4-r2.ebuild b/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.4-r2.ebuild
new file mode 100644
index 000000000000..d352e9b66301
--- /dev/null
+++ b/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.4-r2.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emacs/emacs-common-gentoo/emacs-common-gentoo-1.4-r2.ebuild,v 1.1 2015/02/21 08:46:47 ulm Exp $
+
+EAPI=5
+
+inherit elisp-common eutils fdo-mime gnome2-utils readme.gentoo user
+
+DESCRIPTION="Common files needed by all GNU Emacs versions"
+HOMEPAGE="http://wiki.gentoo.org/wiki/Project:Emacs"
+SRC_URI="http://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="games X"
+
+PDEPEND="virtual/emacs"
+
+pkg_setup() {
+ use games && enewgroup gamestat 36
+}
+
+src_install() {
+ insinto "${SITELISP}"
+ doins subdirs.el
+ newins site-gentoo.el{,.orig}
+
+ keepdir /etc/emacs
+ insinto /etc/emacs
+ doins site-start.el
+
+ if use games; then
+ keepdir /var/games/emacs
+ fowners 0:gamestat /var/games/emacs
+ fperms g+w /var/games/emacs
+ fi
+
+ if use X; then
+ local i
+ domenu emacs.desktop emacsclient.desktop || die
+
+ pushd icons || die
+ newicon sink.png emacs-sink.png
+ newicon emacs_48.png emacs.png
+ newicon emacs22_48.png emacs22.png
+ for i in 16 24 32 48 128; do
+ newicon -s ${i} emacs_${i}.png emacs.png
+ done
+ for i in 16 24 32 48; do
+ newicon -s ${i} emacs22_${i}.png emacs22.png
+ done
+ doicon -s scalable emacs.svg
+ popd
+
+ gnome2_icon_savelist
+ fi
+
+ DOC_CONTENTS="All site initialisation for Gentoo-installed packages is
+ added to ${SITELISP}/site-gentoo.el. In order for this site
+ initialisation to be loaded for all users automatically, a default
+ site startup file /etc/emacs/site-start.el is installed. You are
+ responsible for maintenance of this file.
+ \n\nAlternatively, individual users can add the following command:
+ \n\n(require 'site-gentoo)
+ \n\nto their ~/.emacs initialisation files, or, for greater
+ flexibility, users may load single package-specific initialisation
+ files from the ${SITELISP}/site-gentoo.d/ directory."
+ readme.gentoo_create_doc
+}
+
+site-start-modified-p() {
+ case $(cksum <"${EROOT}${SITELISP}/site-start.el") in
+ # checksums of auto-generated site-start.el files
+ "2098727038 349") return 1 ;; # elisp-common.eclass
+ "3626264063 355") return 1 ;; # emacs-common-gentoo-1.0 (cvs rev 1.1)
+ "3738455534 394") return 1 ;; # emacs-common-gentoo-1.0 (cvs rev 1.6)
+ "4199862847 394") return 1 ;; # emacs-common-gentoo-1.1
+ "2547348044 394") return 1 ;; # emacs-common-gentoo-1.2
+ "2214952934 397") return 1 ;; # emacs-common-gentoo-1.2-r1
+ "3917799317 397") return 1 ;; # emacs-common-gentoo-1.2-r2
+ *) return 0 ;;
+ esac
+}
+
+pkg_preinst() {
+ # make sure that site-gentoo.el exists since site-start.el requires it
+ if [[ ! -d ${EROOT}${SITELISP} ]]; then
+ mv "${ED}${SITELISP}"/site-gentoo.el{.orig,} || die
+ else
+ elisp-site-regen
+ rm "${ED}${SITELISP}/site-gentoo.el.orig" || die
+ 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
+ elif [[ -e ${EROOT}/var/lib${f#/var} ]]; then
+ # backwards compatibility
+ cp "${EROOT}/var/lib${f#/var}" "${ED}${f}" || die
+ fi
+ touch "${ED}${f}" || die
+ chgrp gamestat "${ED}${f}" || die
+ chmod g+w "${ED}${f}" || die
+ done
+ fi
+
+ if [[ -e ${EROOT}${SITELISP}/site-start.el ]]; then
+ ewarn "The location of the site startup file for Emacs has changed to"
+ ewarn "/etc/emacs/site-start.el."
+ if site-start-modified-p; then
+ eerror "Locally modified ${SITELISP}/site-start.el file found."
+ eerror "If this file contains your own customisation, you should"
+ eerror "move it to /etc/emacs/. In any case, you must remove the"
+ eerror "file from the old location."
+ die "Cannot continue unless ${SITELISP}/site-start.el is removed."
+ else
+ ewarn "Removing the old ${SITELISP}/site-start.el file."
+ rm -f "${EROOT}${SITELISP}/site-start.el"
+ fi
+ fi
+}
+
+pkg_postinst() {
+ if use games; then
+ # update permissions of shared score dir #537580
+ chown 0:0 "${EROOT}"/var/games
+ chmod 755 "${EROOT}"/var/games
+ chown 0:gamestat "${EROOT}"/var/games/emacs
+ chmod 775 "${EROOT}"/var/games/emacs
+ fi
+
+ if use X; then
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+ fi
+
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ if use X; then
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+ fi
+}