Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Feb 2026 03:23:03 +0000
From:      Joseph Mingrone <jrm@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Cc:        tslight <tslight@pm.com>
Subject:   git: f13b9e1698c5 - main - misc/emacs-libvterm: New port for Emacs libvterm integration
Message-ID:  <6982bb97.3e0a2.1745845@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by jrm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f13b9e1698c5be792228df8fff743709c7895f96

commit f13b9e1698c5be792228df8fff743709c7895f96
Author:     tslight <tslight@pm.com>
AuthorDate: 2026-02-03 16:17:23 +0000
Commit:     Joseph Mingrone <jrm@FreeBSD.org>
CommitDate: 2026-02-04 03:22:53 +0000

    misc/emacs-libvterm: New port for Emacs libvterm integration
    
    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.
    
    Reviewed by:    jrm
    Pull Request:   https://github.com/freebsd/freebsd-ports/pull/480
---
 misc/Makefile                   |  1 +
 misc/emacs-libvterm/Makefile    | 34 ++++++++++++++++++++++++++++++++++
 misc/emacs-libvterm/distinfo    |  3 +++
 misc/emacs-libvterm/pkg-descr   |  4 ++++
 misc/emacs-libvterm/pkg-message | 12 ++++++++++++
 misc/emacs-libvterm/pkg-plist   |  5 +++++
 6 files changed, 59 insertions(+)

diff --git a/misc/Makefile b/misc/Makefile
index fc9b5bdf56a5..96606b067f04 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -109,6 +109,7 @@
     SUBDIR += edflib
     SUBDIR += elki
     SUBDIR += elscreen
+    SUBDIR += emacs-libvterm
     SUBDIR += estic
     SUBDIR += exercism
     SUBDIR += explosions
diff --git a/misc/emacs-libvterm/Makefile b/misc/emacs-libvterm/Makefile
new file mode 100644
index 000000000000..ca5af33fedf9
--- /dev/null
+++ b/misc/emacs-libvterm/Makefile
@@ -0,0 +1,34 @@
+PORTNAME=	emacs-libvterm
+DISTVERSION=	g20251119
+CATEGORIES=	misc elisp
+PKGNAMESUFFIX=	${EMACS_PKGNAMESUFFIX}
+
+MAINTAINER=	tslight@pm.me
+COMMENT=	Emacs libvterm integration
+
+LICENSE=	GPLv3+
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+LIB_DEPENDS=	libvterm.so:devel/libvterm
+
+USES=		cmake:noninja emacs
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	akermu
+GH_TAGNAME=	a01a2894a1c1e81a39527835a9169e35b7ec5dec
+
+do-install:
+	@${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/etc
+	@${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/vterm
+	${INSTALL_DATA} ${WRKSRC}/vterm.el \
+		${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/vterm
+	${INSTALL_LIB} ${WRKSRC}/vterm-module.so \
+		${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/vterm
+	${INSTALL_DATA} ${WRKSRC}/etc/emacs-vterm-bash.sh \
+		${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/etc/
+	${INSTALL_DATA} ${WRKSRC}/etc/emacs-vterm-zsh.sh \
+		${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/etc/
+	${INSTALL_DATA} ${WRKSRC}/etc/emacs-vterm.fish \
+		${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/etc/
+
+.include <bsd.port.mk>
diff --git a/misc/emacs-libvterm/distinfo b/misc/emacs-libvterm/distinfo
new file mode 100644
index 000000000000..3a4a9260cb2c
--- /dev/null
+++ b/misc/emacs-libvterm/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1770154465
+SHA256 (akermu-emacs-libvterm-g20251119-a01a2894a1c1e81a39527835a9169e35b7ec5dec_GH0.tar.gz) = b545df1e9f09cbd61ebcce2b3fef95c34a87dfa0c1553abe489fd34a27dbb08e
+SIZE (akermu-emacs-libvterm-g20251119-a01a2894a1c1e81a39527835a9169e35b7ec5dec_GH0.tar.gz) = 63503
diff --git a/misc/emacs-libvterm/pkg-descr b/misc/emacs-libvterm/pkg-descr
new file mode 100644
index 000000000000..186d474a5fc5
--- /dev/null
+++ b/misc/emacs-libvterm/pkg-descr
@@ -0,0 +1,4 @@
+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.
diff --git a/misc/emacs-libvterm/pkg-message b/misc/emacs-libvterm/pkg-message
new file mode 100644
index 000000000000..347c507b1041
--- /dev/null
+++ b/misc/emacs-libvterm/pkg-message
@@ -0,0 +1,12 @@
+[
+{
+message: <<EOT
+Final emacs-libvterm setup instructions:
+
+Add (require 'vterm) to your Emacs configuration.
+
+M-x 'vterm' to open a new terminal.
+EOT
+  type: install
+}
+]
diff --git a/misc/emacs-libvterm/pkg-plist b/misc/emacs-libvterm/pkg-plist
new file mode 100644
index 000000000000..93f271e3f797
--- /dev/null
+++ b/misc/emacs-libvterm/pkg-plist
@@ -0,0 +1,5 @@
+%%EMACS_SITE_LISPDIR%%/etc/emacs-vterm-bash.sh
+%%EMACS_SITE_LISPDIR%%/etc/emacs-vterm-zsh.sh
+%%EMACS_SITE_LISPDIR%%/etc/emacs-vterm.fish
+%%EMACS_SITE_LISPDIR%%/vterm/vterm-module.so
+%%EMACS_SITE_LISPDIR%%/vterm/vterm.el


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6982bb97.3e0a2.1745845>