From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 85709138359 for ; Tue, 4 Aug 2020 12:11:39 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id BC6F6E0C07; Tue, 4 Aug 2020 12:11:38 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7FC85E0C07 for ; Tue, 4 Aug 2020 12:11:38 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 075EC34EF43 for ; Tue, 4 Aug 2020 12:11:37 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 6EF97274 for ; Tue, 4 Aug 2020 12:11:35 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1596543080.8d01f01ca8e92057e1eae6b849d66fb23de4f36e.ulm@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-emacs/vterm/files/, app-emacs/vterm/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-emacs/vterm/Manifest app-emacs/vterm/files/50vterm-gentoo.el app-emacs/vterm/files/vterm-dont-compile.patch app-emacs/vterm/metadata.xml app-emacs/vterm/vterm-0.0.1_pre20200713.ebuild X-VCS-Directories: app-emacs/vterm/files/ app-emacs/vterm/ X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 8d01f01ca8e92057e1eae6b849d66fb23de4f36e X-VCS-Branch: master Date: Tue, 4 Aug 2020 12:11:35 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: b855eb54-6b3d-4c68-b094-4450693a3769 X-Archives-Hash: 89ccd3513c799bfd0742ebbcbf34852c commit: 8d01f01ca8e92057e1eae6b849d66fb23de4f36e Author: Ulrich Müller gentoo org> AuthorDate: Tue Aug 4 11:28:33 2020 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Tue Aug 4 12:11:20 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d01f01c app-emacs/vterm: Initial import. Ebuild contributed by me, based on earlier work by Hans de Graaff gentoo.org> and Arjan Adriaanse . Closes: https://bugs.gentoo.org/721256 Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: Ulrich Müller gentoo.org> app-emacs/vterm/Manifest | 1 + app-emacs/vterm/files/50vterm-gentoo.el | 5 +++ app-emacs/vterm/files/vterm-dont-compile.patch | 22 +++++++++++++ app-emacs/vterm/metadata.xml | 17 ++++++++++ app-emacs/vterm/vterm-0.0.1_pre20200713.ebuild | 45 ++++++++++++++++++++++++++ 5 files changed, 90 insertions(+) diff --git a/app-emacs/vterm/Manifest b/app-emacs/vterm/Manifest new file mode 100644 index 00000000000..f04e9cddcdd --- /dev/null +++ b/app-emacs/vterm/Manifest @@ -0,0 +1 @@ +DIST vterm-0.0.1_pre20200713.tar.gz 48160 BLAKE2B 96c45ddb139d19f3020d7a8eebc1ee31a7dc098f47c16cfffc7bf3327261a4366763744a8158d3c8a066ec94be4966a5ef78804db95c9025eee06fb8c9e4aa76 SHA512 17726ad0957daeab2a87b398bfa24dbe3c4c48dfba932138a71cd8c992bf20bd2925a7118a89247bbd674dbecd7fda8663c564a278168bb207034efb03e50cd0 diff --git a/app-emacs/vterm/files/50vterm-gentoo.el b/app-emacs/vterm/files/50vterm-gentoo.el new file mode 100644 index 00000000000..b3e234eba1c --- /dev/null +++ b/app-emacs/vterm/files/50vterm-gentoo.el @@ -0,0 +1,5 @@ +(add-to-list 'load-path "@SITELISP@") +(add-to-list 'load-path "@EMACSMODULES@") +(autoload 'vterm "vterm" "Create a new vterm." t) +(autoload 'vterm-other-window "vterm" + "Create a new vterm in another window." t) diff --git a/app-emacs/vterm/files/vterm-dont-compile.patch b/app-emacs/vterm/files/vterm-dont-compile.patch new file mode 100644 index 00000000000..6b08ae81236 --- /dev/null +++ b/app-emacs/vterm/files/vterm-dont-compile.patch @@ -0,0 +1,22 @@ +Simply error out if the module is not found. Don't confuse the user +with messages about compiling the module, which won't work outside of +the package's source tree. + +--- a/vterm.el ++++ b/vterm.el +@@ -121,14 +121,7 @@ + (message "Compilation of `emacs-libvterm' module succeeded") + (error "Compilation of `emacs-libvterm' module failed!"))))) + +-;; If the vterm-module is not compiled yet, compile it +-(unless (require 'vterm-module nil t) +- (if (or vterm-always-compile-module +- (y-or-n-p "Vterm needs `vterm-module' to work. Compile it now? ")) +- (progn +- (vterm-module-compile) +- (require 'vterm-module)) +- (error "Vterm will not work until `vterm-module' is compiled!"))) ++(require 'vterm-module) + + ;; Silence compiler warnings by informing it of what functions are defined + (declare-function display-line-numbers-update-width "display-line-numbers") diff --git a/app-emacs/vterm/metadata.xml b/app-emacs/vterm/metadata.xml new file mode 100644 index 00000000000..ac2faa79e28 --- /dev/null +++ b/app-emacs/vterm/metadata.xml @@ -0,0 +1,17 @@ + + + + + gnu-emacs@gentoo.org + Gentoo GNU Emacs project + + + Emacs-libvterm (vterm) is fully-fledged terminal emulator inside + GNU Emacs based on libvterm, a C library. As a result of using + compiled code (instead of elisp), emacs-libvterm is fully capable, + fast, and it can seamlessly handle large outputs. + + + akermu/emacs-libvterm + + diff --git a/app-emacs/vterm/vterm-0.0.1_pre20200713.ebuild b/app-emacs/vterm/vterm-0.0.1_pre20200713.ebuild new file mode 100644 index 00000000000..412a03668c1 --- /dev/null +++ b/app-emacs/vterm/vterm-0.0.1_pre20200713.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +NEED_EMACS=26 +COMMIT="f41849c2c9c1899f22d1c3d4f871ec47c82627ce" + +inherit cmake elisp + +MY_PN="emacs-libvterm" +DESCRIPTION="Fully-featured terminal emulator based on libvterm" +HOMEPAGE="https://github.com/akermu/emacs-libvterm" +SRC_URI="https://github.com/akermu/${MY_PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND="dev-libs/libvterm" +RDEPEND="${DEPEND} + app-editors/emacs[dynamic-loading]" + +S="${WORKDIR}/${MY_PN}-${COMMIT}" +PATCHES=( "${FILESDIR}"/${PN}-dont-compile.patch ) +SITEFILE="50${PN}-gentoo.el" +DOCS="README.md" + +src_prepare() { + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( "-DUSE_SYSTEM_LIBVTERM=ON" ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + elisp_src_compile +} + +src_install() { + elisp_src_install + elisp-modules-install ${PN} vterm-module.so +}