summaryrefslogtreecommitdiff
path: root/app-emacs/rudel
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /app-emacs/rudel
reinit the tree, so we can have metadata
Diffstat (limited to 'app-emacs/rudel')
-rw-r--r--app-emacs/rudel/Manifest7
-rw-r--r--app-emacs/rudel/files/60rudel-gentoo.el13
-rw-r--r--app-emacs/rudel/files/rudel-0.3_pre20110721-emacs25.patch341
-rw-r--r--app-emacs/rudel/metadata.xml19
-rw-r--r--app-emacs/rudel/rudel-0.3_pre20110721-r1.ebuild49
5 files changed, 429 insertions, 0 deletions
diff --git a/app-emacs/rudel/Manifest b/app-emacs/rudel/Manifest
new file mode 100644
index 000000000000..d4bb7321dd33
--- /dev/null
+++ b/app-emacs/rudel/Manifest
@@ -0,0 +1,7 @@
+AUX 60rudel-gentoo.el 542 SHA256 3a5509fe5f36f6add179831c6c49c8ab70e1e526a653ce6d470587715e2a6f1f SHA512 8b553141f8ade7c93e5d30298fe921b420a84d005450092473589a91e7e8ce5a0ad76ce7beaf8be1cb8233bb3f1693a4a6d055d034b903d46e5883f1d35386d0 WHIRLPOOL ba44f8a7e0c87ef43cc75966841e63574de7a05bce1fd12a1d234239928705cd1c6decd5db0ff1be36f5d29c867831d4347953b8f53e9b8bf5082443a7507598
+AUX rudel-0.3_pre20110721-emacs25.patch 9309 SHA256 92e6741ad0d32a218da8fe41292cd93c434b367d2f33ebfdb115aaa234fff09d SHA512 6f5d8b6cadf527ea7c8410519d07b2f831e13da10812a5180142ca381d47ee14072ed59251a048d250c5a582998e9fb8205f050f034d7aa21a336b98255b9bc0 WHIRLPOOL 3ed46af2a1065b67cf624763750958b527335855a66bfc946068602abfdc535e3f8d90fb9195e2825a10d77ece45fe325b2e2efa0fb5544771062d6b93a67caa
+DIST rudel-0.3_pre20110721.tar.xz 416060 SHA256 7c0a3ba5ff7d8c5bfdb7a53c1d2d138977e2795025388a1b5fdaf0f031e6b2af SHA512 abf6c8eb4fcaf4acafb9bed7cafff5d3c8e19e3fecd2aa779065bfb11ce5cb198ef14cc9deed360ac895166ea159a821e24dc92dbeda4f5481d1bb3bc2f8c023 WHIRLPOOL 5160716cd66ab4c4df18e8f02a31807ae9e6f239d532ddc1837a3d34c548ae5abd349ba86abc3b9613f44d5a7450d82837b18f5fbca7eaa52b617a1345c4d626
+EBUILD rudel-0.3_pre20110721-r1.ebuild 1198 SHA256 8b49427aca2aa23fa0386bebc3e78c7cdb7fc23b97a8447eb7b44392d5301332 SHA512 6f9ab298be4e340c8f2aa334345f58f3361b39ae8b790495cffb3c59675c4d9bf0f8b0bbe6982229d32833bdddbe50321b9f73a94ba45a8491e19e81675c3389 WHIRLPOOL 5470ff1955b9daf9f3f385b7fa923c7fbfa8241d616b03becac27a9ca59c8b33694b3a7889218c9f426eaaad121ab198c9f817e302ac408bee0bab6e6728564d
+MISC ChangeLog 2793 SHA256 0f216250f242e298a525d60b9a3c1b67dbc293654b587f6aa9d5eb97f4cfd9d0 SHA512 1d96b65a23d2bc57d54165941af8d33da373e78e21be846450e786712fc3655affc056700623ebb971546db79d24b1b1e53e253c35ed217ceb076ceb594a9580 WHIRLPOOL da3290c9b840c4681321bb5fef834e4d6ba3e3fc65df8282a95fd2258643b0af0e8aa1b440fb1735e1e989bed16fe6f49fc4d991eeca161bd86746fb00dc329e
+MISC ChangeLog-2015 1066 SHA256 290c726c6c4fce503a2959164b442f810314c59fb4e801e138958400b71de551 SHA512 cca681164dc55c2fe17c7aa2e8f1075add5ed03246ba00130aa75640d10950a5c0ab3745c998d04f74c871004be0a1cf40f09ff19bd1c6cea130e070ea495d41 WHIRLPOOL 657debe49d7a4f4971c4764b2d20a2cb0a044a503ff75e0490b06b119238e862649d875d0ffcbe457eeb541cfbcb408e29ce8f6089750405eabd86be11ebbb14
+MISC metadata.xml 758 SHA256 ebf5e063dca5bb97a7851a87d9e1641013c3e663b7a384ec8594e5ace59ab01e SHA512 0e13853ba328d3416efc78d4a2943e6577f6a95574af149fc4d8e82312d53d1b56a771cd60a3d3d277c1342fe338647672d83ef6fb225c97818185c19c759178 WHIRLPOOL 471b27af1a004c77d01c47df39bad9033dfa0449643616e6e72757320b80cd230a61fb6b116e6be85014007a9511b787aa4e69221b918456488c32a283eb5834
diff --git a/app-emacs/rudel/files/60rudel-gentoo.el b/app-emacs/rudel/files/60rudel-gentoo.el
new file mode 100644
index 000000000000..2383074cfe17
--- /dev/null
+++ b/app-emacs/rudel/files/60rudel-gentoo.el
@@ -0,0 +1,13 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'rudel-join-session "rudel-loaddefs"
+ "Start a collaborative Rudel session" t)
+(autoload 'rudel-host-session "rudel-loaddefs"
+ "Host a collaborative Rudel session" t)
+(autoload 'rudel-speedbar "rudel-loaddefs"
+ "Show connected users and documents for the Rudel session in speedbar" t)
+(autoload 'global-rudel-minor-mode "rudel-loaddefs"
+ "Bindings for rudel session-level commands" t)
+
+;;(global-set-key (kbd "C-c c j") 'rudel-join-session)
+
+(setq rudel-icons-directory "@SITEETC@/icons/")
diff --git a/app-emacs/rudel/files/rudel-0.3_pre20110721-emacs25.patch b/app-emacs/rudel/files/rudel-0.3_pre20110721-emacs25.patch
new file mode 100644
index 000000000000..98aa38f370d7
--- /dev/null
+++ b/app-emacs/rudel/files/rudel-0.3_pre20110721-emacs25.patch
@@ -0,0 +1,341 @@
+Fix byte-compilation with Emacs 25.
+https://bugs.gentoo.org/590340
+
+This comprises parts of the following commits from ELPA:
+
+commit 9ec4b84e27f3faae8ad3eb5d3e96c523ce1fece2
+Author: Stefan Monnier <monnier@iro.umontreal.ca>
+Date: Sun Jul 10 18:16:39 2016 -0400
+
+ * rudel-backend.el: Try and fix compilation problem
+
+commit 5e4f147f6b23c392505cb0cbb5f13384d6d96304
+Author: Stefan Monnier <monnier@iro.umontreal.ca>
+Date: Mon May 12 02:23:00 2014 -0400
+
+ Fix up headers and compilation
+
+--- rudel-orig/rudel-backend.el
++++ rudel/rudel-backend.el
+@@ -46,8 +46,7 @@
+ ;;; Code:
+ ;;
+
+-(eval-when-compile
+- (require 'cl))
++(require 'cl)
+
+ (require 'warnings)
+
+@@ -97,24 +96,34 @@
+ "Factory class that holds an object for each known backend
+ category. Objects manage backend implementation for one backend
+ category each.")
+-(oset-default rudel-backend-factory factories
++(oset-default 'rudel-backend-factory factories
+ (make-hash-table :test #'eq))
+
+-(defmethod initialize-instance ((this rudel-backend-factory) &rest slots)
++(defmethod initialize-instance ((this rudel-backend-factory) &rest _slots)
+ "Initialize slots of THIS with SLOTS."
+ (when (next-method-p)
+ (call-next-method))
+- (oset this :backends (make-hash-table :test #'eq)))
++ (oset this backends (make-hash-table :test #'eq)))
++
++;;;###autoload
++(progn
++(defmacro rudel--with-memoization (place &rest code)
++ (declare (indent 1) (debug t))
++ (gv-letplace (getter setter) place
++ `(or ,getter
++ ,(macroexp-let2 nil val (macroexp-progn code)
++ `(progn
++ ,(funcall setter val)
++ ,val))))))
+
+ ;;;###autoload
+ (defmethod rudel-get-factory :static ((this rudel-backend-factory)
+ category)
+ "Return the factory responsible for CATEGORY.
+ If there is no responsible factory, create one and return it."
+- (with-slots (factories) this
+- (or (gethash category factories)
+- (puthash category (rudel-backend-factory category) factories)))
+- )
++ (rudel--with-memoization
++ (gethash category (eieio-oref-default this 'factories))
++ (make-instance 'rudel-backend-factory))) ;; category
+
+ ;;;###autoload
+ (defmethod rudel-add-backend ((this rudel-backend-factory)
+@@ -188,7 +197,8 @@
+ (unless (object-p class)
+ (condition-case error
+ (puthash name (make-instance
+- class (symbol-name name)) backends)
++ class (symbol-name name))
++ backends)
+ (error
+ ;; Store this error on the name symbol of the backend for
+ ;; later display.
+@@ -224,7 +234,7 @@
+ ;;;###autoload
+ (defun rudel-backend-get-factory (category)
+ "A shortcut for getting the factory object for CATEGORY."
+- (rudel-get-factory rudel-backend-factory category))
++ (rudel-get-factory 'rudel-backend-factory category))
+
+ (defun rudel-backend-suitable-backends (category predicate)
+ "Return backends from category CATEGORY that satisfy PREDICATE.
+@@ -290,15 +300,15 @@
+
+ ;; Insert all backends provided by this factory.
+ (dolist (backend (rudel-all-backends factory))
+- (if (or (object-p (cdr backend))
+- (null (get (car backend)
+- 'rudel-backend-last-load-error)))
+- (insert (rudel-backend--format-backend-normal backend))
+- (insert (rudel-backend--format-backend-error backend))))
++ (insert (if (or (object-p (cdr backend))
++ (null (get (car backend)
++ 'rudel-backend-last-load-error)))
++ (rudel-backend--format-backend-normal backend)
++ (rudel-backend--format-backend-error backend))))
+
+ ;; One empty line between backend categories.
+ (insert "\n"))
+- (oref rudel-backend-factory factories))
++ (oref-default 'rudel-backend-factory factories))
+ (current-buffer))
+
+ (defun rudel-backend--format-backend-normal (backend)
+@@ -316,7 +326,7 @@
+ (propertize
+ (if (object-p (cdr backend))
+ (mapconcat #'prin1-to-string
+- (oref (cdr backend) :version)
++ (oref (cdr backend) version)
+ ".")
+ "?")
+ 'face 'font-lock-constant-face)
+@@ -324,7 +334,7 @@
+ (propertize
+ (if (object-p (cdr backend))
+ (mapconcat #'prin1-to-string
+- (oref (cdr backend) :capabilities)
++ (oref (cdr backend) capabilities)
+ " ")
+ "?")
+ 'face 'font-lock-constant-face))
+--- rudel-orig/rudel-color.el
++++ rudel/rudel-color.el
+@@ -46,6 +46,7 @@
+ ;;; Code:
+ ;;
+
++(eval-when-compile (require 'cl))
+
+ ;;; RGV <-> HSV conversion
+ ;;
+--- rudel-orig/rudel.el
++++ rudel/rudel.el
+@@ -41,8 +41,7 @@
+ ;;; Code:
+ ;;
+
+-(eval-when-compile
+- (require 'cl))
++(require 'cl)
+
+ (require 'eieio)
+ (require 'eieio-base)
+--- rudel-orig/rudel-icons.el
++++ rudel/rudel-icons.el
+@@ -41,8 +41,9 @@
+ ;;; Image constants
+ ;;
+
++(eval-and-compile
+ (defconst rudel-icons-image-formats '(svg png)
+- "Image formats to try (in that order) when loading Rudel icons.")
++ "Image formats to try (in that order) when loading Rudel icons."))
+
+ (defvar rudel-icons-directory
+ (file-name-as-directory
+--- rudel-orig/rudel-interactive.el
++++ rudel/rudel-interactive.el
+@@ -38,6 +38,7 @@
+
+ ;;; Code:
+ ;;
++(require 'cl)
+
+ (require 'rudel-compat) ;; for `read-color' replacement
+ (require 'rudel-backend) ;; for `rudel-backend-cons-p'
+@@ -80,25 +81,29 @@
+ (setq prompt "Session: "))
+ ;; For presentation and identification of sessions, use the :name
+ ;; property.
+- (flet ((to-string (session)
+- (if (rudel-backend-cons-p session)
+- (symbol-name (car session))
+- (plist-get session :name))))
++ (let ((to-string
++ (lambda (session)
++ (if (rudel-backend-cons-p session)
++ (symbol-name (car session))
++ (plist-get session :name)))))
+ ;; Read a session by name, then return that name or the
+ ;; corresponding session info.
+ (let ((session-name (completing-read prompt
+- (mapcar #'to-string sessions)
++ (mapcar to-string sessions)
+ nil t)))
+ (cond
+ ((eq return 'object)
+ (find session-name sessions
+- :key #'to-string :test #'string=))
++ :key to-string :test #'string=))
+ (t session-name))))
+ )
+
+ (defvar rudel-read-user-name-history nil
+ "History of inputs read by `rudel-read-user-name'.")
+
++(defvar rudel-default-username)
++(defvar rudel-current-session)
++
+ (defun rudel-read-user-name ()
+ "Read a username.
+ The default is taken from `rudel-default-username'."
+--- rudel-orig/rudel-mode.el
++++ rudel/rudel-mode.el
+@@ -48,6 +48,7 @@
+ ;;; Code:
+ ;;
+
++(require 'cl)
+ (require 'easy-mmode)
+ (require 'easymenu)
+
+@@ -132,6 +133,8 @@
+ (rudel-buffer-document))))
+ (force-mode-line-update))
+
++(defvar rudel-header-subscriptions-minor-mode)
++
+ (defun rudel-header-subscriptions--options-changed ()
+ "Update headers in buffers that have header subscriptions mode enabled."
+ (dolist (buffer (buffer-list))
+@@ -228,8 +231,7 @@
+ #'rudel-header-subscriptions--remove-user))
+
+ ;; Reset header line to default format.
+- (setq header-line-format default-header-line-format)
+- (force-mode-line-update)) ;; TODO remove all handlers
++ (kill-local-variable 'header-line-format)) ;; TODO remove all handlers
+
+ ;; No buffer document
+ (t
+@@ -237,8 +239,7 @@
+ (setq rudel-header-subscriptions-minor-mode nil)
+
+ ;; Reset header line to default format.
+- (setq header-line-format default-header-line-format)
+- (force-mode-line-update)))
++ (kill-local-variable 'header-line-format)))
+ )
+
+
+@@ -411,6 +412,8 @@
+ (force-mode-line-update)
+ )
+
++(defvar rudel-mode-line-publish-state-minor-mode)
++
+ (defun rudel-mode-line-publish-state--document-attach (document buffer)
+ "Handle attaching of DOCUMENT to BUFFER.
+ When `rudel-mode-line-publish-state-minor-mode' is enabled in
+--- rudel-orig/rudel-overlay.el
++++ rudel/rudel-overlay.el
+@@ -36,8 +36,7 @@
+
+ (require 'custom)
+
+-(eval-when-compile
+- (require 'cl))
++(require 'cl)
+
+ (require 'eieio)
+
+--- rudel-orig/rudel-session-initiation.el
++++ rudel/rudel-session-initiation.el
+@@ -54,8 +54,7 @@
+ ;;; Code:
+ ;;
+
+-(eval-when-compile
+- (require 'cl))
++(require 'cl)
+
+ (require 'eieio)
+
+--- rudel-orig/rudel-speedbar.el
++++ rudel/rudel-speedbar.el
+@@ -77,6 +77,8 @@
+ '([ "Subscribe" #'ignore t])
+ "Menu part in easymenu format used in speedbar while browsing objects.")
+
++(defvar rudel-current-session)
++
+ (defun rudel-speedbar-toplevel-buttons (dir)
+ "Return a list of objects to display in speedbar.
+ Argument DIR is the directory from which to derive the list of objects."
+--- rudel-orig/rudel-state-machine.el
++++ rudel/rudel-state-machine.el
+@@ -41,8 +41,7 @@
+ ;;; Code:
+ ;;
+
+-(eval-when-compile
+- (require 'cl))
++(require 'cl)
+
+ (require 'eieio)
+
+--- rudel-orig/rudel-transport-util.el
++++ rudel/rudel-transport-util.el
+@@ -48,7 +48,10 @@
+
+ ;;; Code:
+ ;;
+
++(eval-when-compile (require 'cl))
++(require 'eieio)
++(eval-when-compile (require 'rudel-util))
+ (require 'rudel-errors) ;; for `rudel-error'
+ (require 'rudel-transport)
+
+--- rudel-orig/rudel-util.el
++++ rudel/rudel-util.el
+@@ -43,8 +43,7 @@
+ ;;; Code:
+ ;;
+
+-(eval-when-compile
+- (require 'cl))
++(require 'cl)
+
+ (require 'eieio)
+
+--- rudel-orig/rudel-xml.el
++++ rudel/rudel-xml.el
+@@ -45,6 +45,7 @@
+ ;;; Code:
+ ;;
+
++(eval-when-compile (require 'cl))
+ (require 'xml)
+
+
diff --git a/app-emacs/rudel/metadata.xml b/app-emacs/rudel/metadata.xml
new file mode 100644
index 000000000000..8ce7af55dc22
--- /dev/null
+++ b/app-emacs/rudel/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnu-emacs@gentoo.org</email>
+ <name>Gentoo GNU Emacs project</name>
+</maintainer>
+<longdescription>
+ Rudel is collaborative editing environment for GNU Emacs. Its purpose
+ is tod share buffers with other users in order to edit the contents
+ of those buffers collaboratively. Rudel supports multiple backends to
+ enable communication with other collaborative editors using different
+ protocols, though currently Obby (for use with the Gobby editor) is
+ the only fully-functional one.
+</longdescription>
+<upstream>
+ <remote-id type="sourceforge">rudel</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/app-emacs/rudel/rudel-0.3_pre20110721-r1.ebuild b/app-emacs/rudel/rudel-0.3_pre20110721-r1.ebuild
new file mode 100644
index 000000000000..da2b0d29a4c7
--- /dev/null
+++ b/app-emacs/rudel/rudel-0.3_pre20110721-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+NEED_EMACS=24
+
+inherit readme.gentoo-r1 elisp
+
+DESCRIPTION="Collaborative editing environment for GNU Emacs"
+HOMEPAGE="http://rudel.sourceforge.net/
+ http://www.emacswiki.org/emacs/Rudel"
+# snapshot of bzr://rudel.bzr.sourceforge.net/bzrroot/rudel/trunk
+SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+S="${WORKDIR}/${PN}"
+ELISP_PATCHES="${P}-emacs25.patch"
+SITEFILE="60${PN}-gentoo.el"
+
+src_compile() {
+ ${EMACS} ${EMACSFLAGS} -l rudel-compile.el || die
+}
+
+src_install() {
+ local dir
+
+ for dir in . adopted infinote jupiter obby socket telepathy tls \
+ xmpp zeroconf
+ do
+ insinto "${SITELISP}/${PN}/${dir}"
+ doins ${dir}/*.{el,elc}
+ done
+
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+
+ insinto "${SITEETC}/${PN}"
+ doins -r icons
+
+ dodoc README INSTALL ChangeLog TODO doc/card.pdf
+
+ DOC_CONTENTS="Connections to Gobby servers require the gnutls-cli program
+ (net-libs/gnutls).
+ \\n\\nThe Avahi daemon (net-dns/avahi) is required for automatic
+ session discovery and advertising."
+ readme.gentoo_create_doc
+}