diff mbox series

package/alacritty: new package

Message ID 20260830-alacritty-v1-1-a4965888e281@gmail.com
State New
Headers show
Series package/alacritty: new package | expand

Commit Message

Raphaël Gallais-Pou Aug. 30, 2026, 6:53 p.m. UTC
Alacritty is a modern terminal emulator that comes with sensible
defaults, but allows for extensive configuration.  By integrating with
other applications, rather than reimplementing their functionality, it
manages to provide a flexible set of features with high performance.

Although this project works both on Wayland and X11, it is for now only
enabled with Wayland support.

Project mainpage: https://github.com/alacritty/alacritty

Signed-off-by: Raphaël Gallais-Pou <rgallaispou@gmail.com>
---
 DEVELOPERS                       |  3 +++
 package/Config.in                |  1 +
 package/alacritty/Config.in      | 20 ++++++++++++++++++++
 package/alacritty/alacritty.hash |  4 ++++
 package/alacritty/alacritty.mk   | 33 +++++++++++++++++++++++++++++++++
 5 files changed, 61 insertions(+)


---
base-commit: e1ec936cf732e50bddb588985a8d6738b43da3ac
change-id: 20260830-alacritty-6a3c8a3edee7

Best regards,
--  
Raphaël Gallais-Pou <rgallaispou@gmail.com>

Comments

Julien Olivain Sept. 2, 2026, 8:26 p.m. UTC | #1
Hi Raphaël,

Thanks for the patch. I have few comments, see below.

On 30/08/2026 20:53, Raphaël Gallais-Pou wrote:
> Alacritty is a modern terminal emulator that comes with sensible
> defaults, but allows for extensive configuration.  By integrating with
> other applications, rather than reimplementing their functionality, it
> manages to provide a flexible set of features with high performance.
> 
> Although this project works both on Wayland and X11, it is for now only
> enabled with Wayland support.
> 
> Project mainpage: https://github.com/alacritty/alacritty
> 
> Signed-off-by: Raphaël Gallais-Pou <rgallaispou@gmail.com>
> ---
[...]
> diff --git a/package/alacritty/Config.in b/package/alacritty/Config.in
> new file mode 100644
> index 000000000000..f8f7716163fb
> --- /dev/null
> +++ b/package/alacritty/Config.in
> @@ -0,0 +1,20 @@
> +config BR2_PACKAGE_ALACRITTY
> +	bool "alacritty"
> +	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_HAS_UDEV
> +	depends on !BR2_STATIC_LIBS # wayland
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # wayland
> +	select BR2_PACKAGE_HOST_RUSTC
> +	select BR2_PACKAGE_WAYLAND
> +	select BR2_PACKAGE_WAYLAND_PROTOCOLS
> +	select BR2_PACKAGE_LIBXKBCOMMON
> +	select BR2_PACKAGE_FREETYPE
> +	select BR2_PACKAGE_FONTCONFIG

Could you sort package selection alphabetically, please?

> +	help
> +	  Alacritty is a modern terminal emulator that comes with
> +	  sensible defaults, but allows for extensive configuration.
> +	  By integrating with other applications, rather than
> +	  reimplementing their functionality, it manages to provide a
> +	  flexible set of features with high performance.
> +
> +	  https://github.com/alacritty/alacritty.git
> diff --git a/package/alacritty/alacritty.hash 
> b/package/alacritty/alacritty.hash
> new file mode 100644
> index 000000000000..746980695baa
> --- /dev/null
> +++ b/package/alacritty/alacritty.hash
> @@ -0,0 +1,4 @@
> +# Locally computed
> +sha256  
> c1017a192d606c968e471b8363c29c259847bb84c9700044a521856edd7aba07  
> alacritty-0.17-cargo6.tar.gz
> +sha256  
> 651999319c27e92fe8eaf76451f18237107230b27cd6d580a0ab99f1c622d167  
> LICENSE-APACHE
> +sha256  
> 5675ca8acdd280622f93c6ff64c3a2714d9322da4337c2028d4dbb0475686ff2  
> LICENSE-MIT

Running the command "make alacritty-legal-info"
reports license hash failures.

Could you fix those license hash please?

> diff --git a/package/alacritty/alacritty.mk 
> b/package/alacritty/alacritty.mk
> new file mode 100644
> index 000000000000..65675a4524a2
> --- /dev/null
> +++ b/package/alacritty/alacritty.mk
> @@ -0,0 +1,33 @@
> +################################################################################
> +#
> +# alacritty
> +#
> +################################################################################
> +
> +ALACRITTY_VERSION = 0.17

Testing this package with "test-pkg -a -p alacritty" reports few build 
failures. See:
https://gitlab.com/jolivain/buildroot/-/pipelines/2814538626

Could you have a look please?

> +ALACRITTY_SITE = $(call 
> github,alacritty,alacritty,v$(ALACRITTY_VERSION))
> +ALACRITTY_LICENSE = Apache-2.0, MIT
> +ALACRITTY_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT
> +ALACRITTY_DEPENDENCIES = wayland wayland-protocols libxkbcommon 
> freetype fontconfig

Could you sort those dependencies alphabetically, please?

> +
> +ALACRITTY_SUBDIR = alacritty
> +ALACRITTY_CARGO_BUILD_OPTS = --no-default-features --features=wayland
> +ALACRITTY_CARGO_INSTALL_OPTS = --no-default-features 
> --features=wayland
> +
> +define ALACRITTY_INSTALL_ADDITIONAL_FILES
> +	# Create destination folders if the do not exist
> +	$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/applications
> +	$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/pixmaps
> +
> +	# Install .desktop file
> +	$(INSTALL) -D -m 0644 $(@D)/extra/linux/Alacritty.desktop \
> +		$(TARGET_DIR)/usr/share/applications/Alacritty.desktop
> +
> +	# Install SVG icon
> +	$(INSTALL) -D -m 0644 $(@D)/extra/logo/alacritty-term.svg \
> +		$(TARGET_DIR)/usr/share/pixmaps/Alacritty.svg
> +endef
> +
> +ALACRITTY_POST_INSTALL_TARGET_HOOKS += 
> ALACRITTY_INSTALL_ADDITIONAL_FILES
> +
> +$(eval $(cargo-package))
> 
> ---
> base-commit: e1ec936cf732e50bddb588985a8d6738b43da3ac
> change-id: 20260830-alacritty-6a3c8a3edee7
> 
> Best regards,
> --
> Raphaël Gallais-Pou <rgallaispou@gmail.com>

Could you send an updated patch addressing those issues, please?

Best regards,

Julien.
diff mbox series

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index 53104cc60b54..f67a0dde0250 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2831,6 +2831,9 @@  F:	package/python-pyqt5-sip/
 N:	Ramon Fried <rfried.dev@gmail.com>
 F:	package/bitwise/
 
+N:	Raphaël Gallais-Pou <rgallaispou@gmail.com>
+F:	package/alacritty/
+
 N:	Raphaël Mélotte <raphael.melotte@mind.be>
 F:	package/gumbo-parser/
 F:	package/jbig2dec/
diff --git a/package/Config.in b/package/Config.in
index 6058800682b4..cda8c973f29e 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -304,6 +304,7 @@  endmenu
 menu "Graphic libraries and applications (graphic/text)"
 
 comment "Graphic applications"
+	source "package/alacritty/Config.in"
 	source "package/cage/Config.in"
 	source "package/cog/Config.in"
 	source "package/drm-info/Config.in"
diff --git a/package/alacritty/Config.in b/package/alacritty/Config.in
new file mode 100644
index 000000000000..f8f7716163fb
--- /dev/null
+++ b/package/alacritty/Config.in
@@ -0,0 +1,20 @@ 
+config BR2_PACKAGE_ALACRITTY
+	bool "alacritty"
+	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_HAS_UDEV
+	depends on !BR2_STATIC_LIBS # wayland
+	depends on BR2_TOOLCHAIN_HAS_THREADS # wayland
+	select BR2_PACKAGE_HOST_RUSTC
+	select BR2_PACKAGE_WAYLAND
+	select BR2_PACKAGE_WAYLAND_PROTOCOLS
+	select BR2_PACKAGE_LIBXKBCOMMON
+	select BR2_PACKAGE_FREETYPE
+	select BR2_PACKAGE_FONTCONFIG
+	help
+	  Alacritty is a modern terminal emulator that comes with
+	  sensible defaults, but allows for extensive configuration.
+	  By integrating with other applications, rather than
+	  reimplementing their functionality, it manages to provide a
+	  flexible set of features with high performance.
+
+	  https://github.com/alacritty/alacritty.git
diff --git a/package/alacritty/alacritty.hash b/package/alacritty/alacritty.hash
new file mode 100644
index 000000000000..746980695baa
--- /dev/null
+++ b/package/alacritty/alacritty.hash
@@ -0,0 +1,4 @@ 
+# Locally computed
+sha256  c1017a192d606c968e471b8363c29c259847bb84c9700044a521856edd7aba07  alacritty-0.17-cargo6.tar.gz
+sha256  651999319c27e92fe8eaf76451f18237107230b27cd6d580a0ab99f1c622d167  LICENSE-APACHE
+sha256  5675ca8acdd280622f93c6ff64c3a2714d9322da4337c2028d4dbb0475686ff2  LICENSE-MIT
diff --git a/package/alacritty/alacritty.mk b/package/alacritty/alacritty.mk
new file mode 100644
index 000000000000..65675a4524a2
--- /dev/null
+++ b/package/alacritty/alacritty.mk
@@ -0,0 +1,33 @@ 
+################################################################################
+#
+# alacritty
+#
+################################################################################
+
+ALACRITTY_VERSION = 0.17
+ALACRITTY_SITE = $(call github,alacritty,alacritty,v$(ALACRITTY_VERSION))
+ALACRITTY_LICENSE = Apache-2.0, MIT
+ALACRITTY_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT
+ALACRITTY_DEPENDENCIES = wayland wayland-protocols libxkbcommon freetype fontconfig
+
+ALACRITTY_SUBDIR = alacritty
+ALACRITTY_CARGO_BUILD_OPTS = --no-default-features --features=wayland
+ALACRITTY_CARGO_INSTALL_OPTS = --no-default-features --features=wayland
+
+define ALACRITTY_INSTALL_ADDITIONAL_FILES
+	# Create destination folders if the do not exist
+	$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/applications
+	$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/pixmaps
+
+	# Install .desktop file
+	$(INSTALL) -D -m 0644 $(@D)/extra/linux/Alacritty.desktop \
+		$(TARGET_DIR)/usr/share/applications/Alacritty.desktop
+
+	# Install SVG icon
+	$(INSTALL) -D -m 0644 $(@D)/extra/logo/alacritty-term.svg \
+		$(TARGET_DIR)/usr/share/pixmaps/Alacritty.svg
+endef
+
+ALACRITTY_POST_INSTALL_TARGET_HOOKS += ALACRITTY_INSTALL_ADDITIONAL_FILES
+
+$(eval $(cargo-package))