app-misc/flowmux - 0.5.0 (lamdness)

Search

Install

Install this version:

emerge -a =app-misc/flowmux-0.5.0

If this version is masked, you can unmask it using the autounmask tool or standard emerge options:

autounmask =app-misc/flowmux-0.5.0

Or alternatively:

emerge --autounmask-write -a =app-misc/flowmux-0.5.0

Package Information

Description:
Terminal-native AI agent multiplexer
Homepage:
https://github.com/grouzen/flowmux
License:
MIT Apache-2.0 BSD CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 WTFPL-2 ZLIB || ( Apache-2.0 BSD-2 ) || ( Apache-2.0 Boost-1.0 ) BSD FTL libpng MPL-2.0 OFL-1.1

Ebuild Details

Version EAPI Keywords Slot
0.5.0 8 ~amd64 0
View Raw Ebuild
# Copyright 2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

# Autogenerated by pycargoebuild 0.16.0

EAPI=8

RUST_MIN_VER=1.90.0
ZIG_SLOT="0.15"
ZIG_NEEDS_LLVM=1
ZIG_OPTIONAL=1

CRATES="
	adler2@2.0.1
	aho-corasick@1.1.4
	allocator-api2@0.2.21
	android_system_properties@0.1.5
	ansi-to-tui@8.0.1
	anstream@1.0.0
	anstyle-parse@1.0.0
	anstyle-query@1.1.5
	anstyle-wincon@3.0.11
	anstyle@1.0.14
	anyhow@1.0.103
	approx@0.5.1
	async-trait@0.1.89
	atomic-waker@1.1.2
	atomic@0.6.1
	autocfg@1.5.1
	aws-lc-rs@1.17.1
	aws-lc-sys@0.42.0
	axum-core@0.5.6
	axum@0.8.9
	base64@0.22.1
	bincode@1.3.3
	bit-set@0.5.3
	bit-vec@0.6.3
	bitflags@1.3.2
	bitflags@2.13.0
	block-buffer@0.10.4
	bumpalo@3.20.3
	by_address@1.2.1
	bytemuck@1.25.0
	bytes@1.11.1
	castaway@0.2.4
	cc@1.2.64
	cfg-if@1.0.4
	cfg_aliases@0.2.1
	chacha20@0.10.1
	chrono@0.4.45
	clap@4.6.2
	clap_builder@4.6.2
	clap_derive@4.6.1
	clap_lex@1.1.0
	claude-code-transcripts@0.1.11
	cmake@0.1.58
	colorchoice@1.0.5
	combine@4.6.7
	compact_str@0.9.1
	convert_case@0.10.0
	core-foundation-sys@0.8.7
	core-foundation@0.10.1
	core-foundation@0.9.4
	cpufeatures@0.2.17
	cpufeatures@0.3.0
	crc32fast@1.5.0
	critical-section@1.2.0
	crossterm@0.29.0
	crossterm_winapi@0.9.1
	crypto-common@0.1.7
	csscolorparser@0.6.2
	darling@0.23.0
	darling_core@0.23.0
	darling_macro@0.23.0
	defmt-macros@1.1.0
	defmt-parser@1.0.0
	defmt@1.1.0
	deltae@0.3.2
	deranged@0.5.8
	derive_more-impl@2.1.1
	derive_more@2.1.1
	diff@0.1.13
	digest@0.10.7
	dirs-sys@0.5.0
	dirs@6.0.0
	displaydoc@0.2.6
	document-features@0.2.12
	dunce@1.0.5
	either@1.16.0
	encoding_rs@0.8.35
	env_filter@2.0.0
	env_logger@0.11.11
	equivalent@1.0.2
	errno@0.3.14
	euclid@0.22.14
	fancy-regex@0.11.0
	fast-srgb8@1.0.0
	filedescriptor@0.8.3
	find-msvc-tools@0.1.9
	finl_unicode@1.4.0
	fixedbitset@0.4.2
	flate2@1.1.9
	fnv@1.0.7
	foldhash@0.1.5
	foldhash@0.2.0
	form_urlencoded@1.2.2
	fs2@0.4.3
	fs_extra@1.3.0
	futures-channel@0.3.32
	futures-core@0.3.32
	futures-executor@0.3.32
	futures-io@0.3.32
	futures-macro@0.3.32
	futures-sink@0.3.32
	futures-task@0.3.32
	futures-timer@3.0.4
	futures-util@0.3.32
	futures@0.3.32
	generic-array@0.14.7
	getopts@0.2.24
	getrandom@0.2.17
	getrandom@0.3.4
	getrandom@0.4.2
	git2@0.21.0
	glob@0.3.3
	h2@0.4.14
	hashbrown@0.15.5
	hashbrown@0.16.1
	hashbrown@0.17.1
	heck@0.5.0
	hex@0.4.3
	http-body-util@0.1.3
	http-body@1.0.1
	http@1.4.2
	httparse@1.10.1
	httpdate@1.0.3
	hyper-rustls@0.27.9
	hyper-util@0.1.20
	hyper@1.10.1
	iana-time-zone-haiku@0.1.2
	iana-time-zone@0.1.65
	icu_collections@2.2.0
	icu_locale_core@2.2.0
	icu_normalizer@2.2.0
	icu_normalizer_data@2.2.0
	icu_properties@2.2.0
	icu_properties_data@2.2.0
	icu_provider@2.2.0
	id-arena@2.3.0
	ident_case@1.0.1
	idna@1.1.0
	idna_adapter@1.2.2
	indexmap@2.14.0
	indoc@2.0.7
	instability@0.3.12
	int-enum@1.2.0
	ipnet@2.12.0
	is_terminal_polyfill@1.70.2
	itertools@0.14.0
	itertools@0.15.0
	itoa@1.0.18
	jiff-static@0.2.29
	jiff@0.2.29
	jni-macros@0.22.4
	jni-sys-macros@0.4.1
	jni-sys@0.4.1
	jni@0.22.4
	jobserver@0.1.34
	js-sys@0.3.100
	kasuari@0.4.12
	lab@0.11.0
	lazy_static@1.5.0
	leb128fmt@0.1.0
	libc@0.2.186
	libgit2-sys@0.18.5+1.9.4
	libm@0.2.16
	libredox@0.1.17
	libz-sys@1.1.29
	line-clipping@0.3.7
	linked-hash-map@0.5.6
	linux-raw-sys@0.12.1
	litemap@0.8.2
	litrs@1.0.0
	lock_api@0.4.14
	log@0.4.33
	lru-slab@0.1.2
	lru@0.18.1
	mac_address@1.1.8
	matchit@0.8.4
	memchr@2.8.2
	memmem@0.1.1
	memoffset@0.9.1
	mime@0.3.17
	minimal-lexical@0.2.1
	miniz_oxide@0.8.9
	mio@1.2.1
	nix@0.29.0
	nom@7.1.3
	nom@8.0.0
	num-conv@0.2.2
	num-derive@0.4.2
	num-traits@0.2.19
	num_threads@0.1.7
	once_cell@1.21.4
	once_cell_polyfill@1.70.2
	onig@6.5.3
	onig_sys@69.9.3
	openssl-probe@0.2.1
	option-ext@0.2.0
	ordered-float@4.6.0
	palette@0.7.6
	palette_derive@0.7.6
	parking_lot@0.12.5
	parking_lot_core@0.9.12
	percent-encoding@2.3.2
	pest@2.8.6
	pest_derive@2.8.6
	pest_generator@2.8.6
	pest_meta@2.8.6
	phf@0.11.3
	phf_codegen@0.11.3
	phf_generator@0.11.3
	phf_macros@0.11.3
	phf_shared@0.11.3
	pin-project-lite@0.2.17
	pkg-config@0.3.33
	plist@1.9.0
	portable-atomic-util@0.2.7
	portable-atomic@1.13.1
	potential_utf@0.1.5
	powerfmt@0.2.0
	pretty_assertions@1.4.1
	prettyplease@0.2.37
	proc-macro-crate@3.5.0
	proc-macro-error-attr2@2.0.0
	proc-macro-error2@2.0.1
	proc-macro2-diagnostics@0.10.1
	proc-macro2@1.0.106
	pulldown-cmark-escape@0.11.0
	pulldown-cmark@0.13.4
	quick-xml@0.39.4
	quinn-proto@0.11.16
	quinn-udp@0.5.15
	quinn@0.11.11
	quote@1.0.45
	r-efi@5.3.0
	r-efi@6.0.0
	rand@0.10.2
	rand@0.8.6
	rand_core@0.10.1
	rand_core@0.6.4
	rand_pcg@0.10.2
	ratatui-core@0.1.2
	ratatui-crossterm@0.1.2
	ratatui-macros@0.7.2
	ratatui-termina@0.1.0
	ratatui-termwiz@0.1.2
	ratatui-widgets@0.3.2
	ratatui@0.30.2
	redox_syscall@0.5.18
	redox_users@0.5.2
	regex-automata@0.4.16
	regex-syntax@0.8.11
	regex@1.13.1
	relative-path@1.9.3
	reqwest@0.13.4
	ring@0.17.14
	rstest@0.26.1
	rstest_macros@0.26.1
	rustc-hash@2.1.3
	rustc_version@0.4.1
	rustix@1.1.4
	rustls-native-certs@0.8.4
	rustls-pki-types@1.14.1
	rustls-platform-verifier-android@0.1.1
	rustls-platform-verifier@0.7.0
	rustls-webpki@0.103.13
	rustls@0.23.40
	rustversion@1.0.22
	ryu@1.0.23
	same-file@1.0.6
	schannel@0.1.29
	scopeguard@1.2.0
	security-framework-sys@2.17.0
	security-framework@3.7.0
	semver@1.0.28
	serde@1.0.228
	serde_core@1.0.228
	serde_derive@1.0.228
	serde_json@1.0.150
	serde_path_to_error@0.1.20
	serde_spanned@1.1.1
	serde_urlencoded@0.7.1
	sha2@0.10.9
	shlex@2.0.1
	signal-hook-mio@0.2.5
	signal-hook-registry@1.4.8
	signal-hook@0.3.18
	simd-adler32@0.3.9
	simd_cesu8@1.1.1
	simdutf8@0.1.5
	siphasher@1.0.3
	slab@0.4.12
	smallvec@1.15.2
	socket2@0.6.4
	stable_deref_trait@1.2.1
	static_assertions@1.1.0
	strsim@0.11.1
	strum@0.28.0
	strum_macros@0.28.0
	subtle@2.6.1
	syn@1.0.109
	syn@2.0.117
	sync_wrapper@1.0.2
	synstructure@0.13.2
	syntect@5.3.0
	system-configuration-sys@0.6.0
	system-configuration@0.7.0
	termina@0.3.3
	terminfo@0.9.0
	termios@0.3.3
	termwiz@0.23.3
	thiserror-impl@1.0.69
	thiserror-impl@2.0.18
	thiserror@1.0.69
	thiserror@2.0.18
	time-core@0.1.8
	time-macros@0.2.27
	time@0.3.47
	tinystr@0.8.3
	tinyvec@1.11.0
	tinyvec_macros@0.1.1
	tmux_interface@0.4.0
	tokio-macros@2.7.0
	tokio-rustls@0.26.4
	tokio-util@0.7.18
	tokio@1.53.0
	toml@1.1.2+spec-1.1.0
	toml_datetime@1.1.1+spec-1.1.0
	toml_edit@0.25.12+spec-1.1.0
	toml_parser@1.1.2+spec-1.1.0
	toml_writer@1.1.1+spec-1.1.0
	tower-http@0.6.11
	tower-layer@0.3.3
	tower-service@0.3.3
	tower@0.5.3
	tracing-attributes@0.1.31
	tracing-core@0.1.36
	tracing@0.1.44
	try-lock@0.2.5
	tui-markdown@0.3.8
	typenum@1.20.1
	ucd-trie@0.1.7
	unicase@2.9.0
	unicode-ident@1.0.24
	unicode-segmentation@1.13.3
	unicode-truncate@2.0.1
	unicode-width@0.2.2
	unicode-xid@0.2.6
	untrusted@0.9.0
	url@2.5.8
	utf8_iter@1.0.4
	utf8parse@0.2.2
	uuid@1.24.0
	vcpkg@0.2.15
	version_check@0.9.5
	vtparse@0.6.2
	walkdir@2.5.0
	want@0.3.1
	wasi@0.11.1+wasi-snapshot-preview1
	wasip2@1.0.3+wasi-0.2.9
	wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06
	wasm-bindgen-futures@0.4.73
	wasm-bindgen-macro-support@0.2.123
	wasm-bindgen-macro@0.2.123
	wasm-bindgen-shared@0.2.123
	wasm-bindgen@0.2.123
	wasm-encoder@0.244.0
	wasm-metadata@0.244.0
	wasm-streams@0.5.0
	wasmparser@0.244.0
	web-sys@0.3.100
	web-time@1.1.0
	webpki-root-certs@1.0.8
	wezterm-bidi@0.2.3
	wezterm-blob-leases@0.1.1
	wezterm-color-types@0.3.0
	wezterm-dynamic-derive@0.1.1
	wezterm-dynamic@0.2.1
	wezterm-input-types@0.1.0
	which@8.0.5
	winapi-i686-pc-windows-gnu@0.4.0
	winapi-util@0.1.11
	winapi-x86_64-pc-windows-gnu@0.4.0
	winapi@0.3.9
	windows-core@0.62.2
	windows-implement@0.60.2
	windows-interface@0.59.3
	windows-link@0.2.1
	windows-registry@0.6.1
	windows-result@0.4.1
	windows-strings@0.5.1
	windows-sys@0.52.0
	windows-sys@0.61.2
	windows-targets@0.52.6
	windows_aarch64_gnullvm@0.52.6
	windows_aarch64_msvc@0.52.6
	windows_i686_gnu@0.52.6
	windows_i686_gnullvm@0.52.6
	windows_i686_msvc@0.52.6
	windows_x86_64_gnu@0.52.6
	windows_x86_64_gnullvm@0.52.6
	windows_x86_64_msvc@0.52.6
	winnow@1.0.3
	wit-bindgen-core@0.51.0
	wit-bindgen-rust-macro@0.51.0
	wit-bindgen-rust@0.51.0
	wit-bindgen@0.51.0
	wit-bindgen@0.57.1
	wit-component@0.244.0
	wit-parser@0.244.0
	writeable@0.6.3
	yaml-rust@0.4.5
	yansi@1.0.1
	yoke-derive@0.8.2
	yoke@0.8.3
	zerofrom-derive@0.1.7
	zerofrom@0.1.8
	zeroize@1.8.2
	zerotrie@0.2.4
	zerovec-derive@0.11.3
	zerovec@0.11.6
	zmij@1.0.21
"

declare -A GIT_CRATES=(
	[libghostty-vt-sys]='https://github.com/uzaaft/libghostty-rs;20edad15d7984c727acc4f4facdadf045609f543;libghostty-rs-%commit%/crates/libghostty-vt-sys'
	[libghostty-vt]='https://github.com/uzaaft/libghostty-rs;20edad15d7984c727acc4f4facdadf045609f543;libghostty-rs-%commit%/crates/libghostty-vt'
)

inherit cargo zig-utils

GHOSTTY_COMMIT="bfe633a9487892ff3d27ed727db540267f22ef90"
UUCODE_0_1_URI="https://github.com/jacobsandlund/uucode/archive/\
5f05f8f83a75caea201f12cc8ea32a2d82ea9732.tar.gz"
UUCODE_0_2_URI="https://deps.files.ghostty.org/\
uucode-0.2.0-ZZjBPqZVVABQepOqZHR7vV_NcaN-wats0IB6o-Exj6m9.tar.gz"
WAYLAND_PROTOCOLS_URI="https://gitlab.freedesktop.org/wayland/wayland-protocols/-/archive/\
1.47/wayland-protocols-1.47.tar.bz2"
ZIG_WAYLAND_PROTOCOLS_URI="https://deps.files.ghostty.org/\
wayland-protocols-258d8f88f2c8c25a830c6316f87d23ce1a0f12d9.tar.gz"

DESCRIPTION="Terminal-native AI agent multiplexer"
HOMEPAGE="https://github.com/grouzen/flowmux"
SRC_URI="
	https://github.com/grouzen/flowmux/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
	https://github.com/ghostty-org/ghostty/archive/${GHOSTTY_COMMIT}.tar.gz -> ${P}-ghostty.tar.gz
	https://deps.files.ghostty.org/DearBindings_v0.17_ImGui_v1.92.5-docking.tar.gz -> ${P}-bindings.tar.gz
	https://deps.files.ghostty.org/breakpad-b99f444ba5f6b98cac261cbb391d8766b34a5918.tar.gz -> ${P}-breakpad.tar.gz
	https://deps.files.ghostty.org/fontconfig-2.14.2.tar.gz -> ${P}-fontconfig.tar.gz
	https://deps.files.ghostty.org/freetype-1220b81f6ecfb3fd222f76cf9106fecfa6554ab07ec7fdc4124b9bb063ae2adf969d.tar.gz -> ${P}-freetype.tar.gz
	https://deps.files.ghostty.org/gettext-0.24.tar.gz -> ${P}-gettext.tar.gz
	https://deps.files.ghostty.org/glslang-12201278a1a05c0ce0b6eb6026c65cd3e9247aa041b1c260324bf29cee559dd23ba1.tar.gz -> ${P}-glslang.tar.gz
	https://deps.files.ghostty.org/gobject-2025-11-08-23-1.tar.zst -> ${P}-gobject.tar.zst
	https://deps.files.ghostty.org/gtk4-layer-shell-1.1.0.tar.gz -> ${P}-gtk4-layer-shell.tar.gz
	https://deps.files.ghostty.org/harfbuzz-11.0.0.tar.xz -> ${P}-harfbuzz.tar.xz
	https://deps.files.ghostty.org/highway-66486a10623fa0d72fe91260f96c892e41aceb06.tar.gz -> ${P}-highway.tar.gz
	https://github.com/ocornut/imgui/archive/refs/tags/v1.92.5-docking.tar.gz -> ${P}-imgui.tar.gz
	https://deps.files.ghostty.org/ghostty-themes-release-20260525-155808-7335c0a.tgz -> ${P}-iterm2-themes.tgz
	https://deps.files.ghostty.org/JetBrainsMono-2.304.tar.gz -> ${P}-jetbrains-mono.tar.gz
	https://deps.files.ghostty.org/libpng-1220aa013f0c83da3fb64ea6d327f9173fa008d10e28bc9349eac3463457723b1c66.tar.gz -> ${P}-libpng.tar.gz
	https://deps.files.ghostty.org/libxev-34fa50878aec6e5fa8f532867001ab3c36fae23e.tar.gz -> ${P}-libxev.tar.gz
	https://deps.files.ghostty.org/libxml2-2.11.5.tar.gz -> ${P}-libxml2.tar.gz
	https://deps.files.ghostty.org/NerdFontsSymbolsOnly-3.4.0.tar.gz -> ${P}-nerd-fonts-symbols-only.tar.gz
	https://deps.files.ghostty.org/oniguruma-1220c15e72eadd0d9085a8af134904d9a0f5dfcbed5f606ad60edc60ebeccd9706bb.tar.gz -> ${P}-oniguruma.tar.gz
	https://deps.files.ghostty.org/pixels-12207ff340169c7d40c570b4b6a97db614fe47e0d83b5801a932dcd44917424c8806.tar.gz -> ${P}-pixels.tar.gz
	https://deps.files.ghostty.org/plasma_wayland_protocols-12207e0851c12acdeee0991e893e0132fc87bb763969a585dc16ecca33e88334c566.tar.gz -> ${P}-plasma-wayland-protocols.tar.gz
	https://deps.files.ghostty.org/sentry-1220446be831adcca918167647c06c7b825849fa3fba5f22da394667974537a9c77e.tar.gz -> ${P}-sentry.tar.gz
	https://deps.files.ghostty.org/spirv_cross-1220fb3b5586e8be67bc3feb34cbe749cf42a60d628d2953632c2f8141302748c8da.tar.gz -> ${P}-spirv-cross.tar.gz
	${UUCODE_0_1_URI} -> ${P}-uucode-0.1.0.tar.gz
	${UUCODE_0_2_URI} -> ${P}-uucode-0.2.0.tar.gz
	https://deps.files.ghostty.org/vaxis-7dbb9fd3122e4ffad262dd7c151d80d863b68558.tar.gz -> ${P}-vaxis.tar.gz
	https://deps.files.ghostty.org/wayland-9cb3d7aa9dc995ffafdbdef7ab86a949d0fb0e7d.tar.gz -> ${P}-wayland.tar.gz
	${ZIG_WAYLAND_PROTOCOLS_URI} -> ${P}-wayland-protocols.tar.gz
	${WAYLAND_PROTOCOLS_URI} -> ${P}-wayland-protocols-1.47.tar.bz2
	https://deps.files.ghostty.org/wuffs-122037b39d577ec2db3fd7b2130e7b69ef6cc1807d68607a7c232c958315d381b5cd.tar.gz -> ${P}-wuffs.tar.gz
	https://deps.files.ghostty.org/z2d-0.10.0-j5P_Hu-6FgBsZNgwphIqh17jDnj8_yPtD8yzjO6PpHRQ.tar.gz -> ${P}-z2d.tar.gz
	https://deps.files.ghostty.org/zf-3c52637b7e937c5ae61fd679717da3e276765b23.tar.gz -> ${P}-zf.tar.gz
	https://deps.files.ghostty.org/zig_js-04db83c617da1956ac5adc1cb9ba1e434c1cb6fd.tar.gz -> ${P}-zig-js.tar.gz
	https://deps.files.ghostty.org/zig_objc-f356ed02833f0f1b8e84d50bed9e807bf7cdc0ae.tar.gz -> ${P}-zig-objc.tar.gz
	https://deps.files.ghostty.org/zig_wayland-1b5c038ec10da20ed3a15b0b2a6db1c21383e8ea.tar.gz -> ${P}-zig-wayland.tar.gz
	https://github.com/ivanstepanovftw/zigimg/archive/d7b7ab0ba0899643831ef042bd73289510b39906.tar.gz -> ${P}-zigimg.tar.gz
	https://deps.files.ghostty.org/zlib-1220fed0c74e1019b3ee29edae2051788b080cd96e90d56836eea857b0b966742efb.tar.gz -> ${P}-zlib.tar.gz
	${CARGO_CRATE_URIS}
"

LICENSE="MIT"
# Dependent crate licenses
LICENSE+="
	Apache-2.0 BSD CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0
	Unicode-DFS-2016 WTFPL-2 ZLIB
	|| ( Apache-2.0 BSD-2 )
	|| ( Apache-2.0 Boost-1.0 )
"
# Vendored Ghostty build dependencies
LICENSE+=" BSD FTL libpng MPL-2.0 OFL-1.1"
SLOT="0"
KEYWORDS="~amd64"
RESTRICT="test" # Upstream mouse click tests currently fail.

RDEPEND="
	app-misc/tmux
	dev-vcs/git
"

BDEPEND="
	|| (
		=dev-lang/zig-0.15.2*[llvm(+)]
		=dev-lang/zig-bin-0.15.2*
	)
"

ZIG_DISTFILES=(
	"${P}-bindings.tar.gz"
	"${P}-breakpad.tar.gz"
	"${P}-fontconfig.tar.gz"
	"${P}-freetype.tar.gz"
	"${P}-gettext.tar.gz"
	"${P}-glslang.tar.gz"
	"${P}-gobject.tar.zst"
	"${P}-gtk4-layer-shell.tar.gz"
	"${P}-harfbuzz.tar.xz"
	"${P}-highway.tar.gz"
	"${P}-imgui.tar.gz"
	"${P}-iterm2-themes.tgz"
	"${P}-jetbrains-mono.tar.gz"
	"${P}-libpng.tar.gz"
	"${P}-libxev.tar.gz"
	"${P}-libxml2.tar.gz"
	"${P}-nerd-fonts-symbols-only.tar.gz"
	"${P}-oniguruma.tar.gz"
	"${P}-pixels.tar.gz"
	"${P}-plasma-wayland-protocols.tar.gz"
	"${P}-sentry.tar.gz"
	"${P}-spirv-cross.tar.gz"
	"${P}-uucode-0.1.0.tar.gz"
	"${P}-uucode-0.2.0.tar.gz"
	"${P}-vaxis.tar.gz"
	"${P}-wayland.tar.gz"
	"${P}-wayland-protocols.tar.gz"
	"${P}-wayland-protocols-1.47.tar.bz2"
	"${P}-wuffs.tar.gz"
	"${P}-z2d.tar.gz"
	"${P}-zf.tar.gz"
	"${P}-zig-js.tar.gz"
	"${P}-zig-objc.tar.gz"
	"${P}-zig-wayland.tar.gz"
	"${P}-zigimg.tar.gz"
	"${P}-zlib.tar.gz"
)

pkg_setup() {
	rust_pkg_setup
	zig-utils_setup
}

src_prepare() {
	default

	local archive source
	for archive in "${ZIG_DISTFILES[@]}"; do
		source="${DISTDIR}/${archive}"
		if [[ "${archive}" == "${P}-wayland-protocols-1.47.tar.bz2" ]]; then
			source="${T}/${archive%.bz2}"
			bunzip2 --stdout "${DISTDIR}/${archive}" > "${source}" || die
		fi

		ZIG_GLOBAL_CACHE_DIR="${T}/zig-packages" \
			"${ZIG_EXE}" fetch --global-cache-dir "${T}/zig-packages" \
			"file://${source}" || die
	done
}

src_compile() {
	local -x GHOSTTY_SOURCE_DIR="${WORKDIR}/ghostty-${GHOSTTY_COMMIT}"
	local -x GHOSTTY_ZIG_SYSTEM_DIR="${T}/zig-packages/p"
	local -x LIBGHOSTTY_VT_SYS_OPTIMIZE="ReleaseFast"
	local -x ZIG_GLOBAL_CACHE_DIR="${T}/zig-build-cache"
	local -x ZIG_LOCAL_CACHE_DIR="${T}/zig-local-cache"
	local -x ZIG="${ZIG_EXE}"

	cargo_src_compile
}

src_test() {
	local -x GHOSTTY_SOURCE_DIR="${WORKDIR}/ghostty-${GHOSTTY_COMMIT}"
	local -x GHOSTTY_ZIG_SYSTEM_DIR="${T}/zig-packages/p"
	local -x LIBGHOSTTY_VT_SYS_OPTIMIZE="ReleaseFast"
	local -x ZIG_GLOBAL_CACHE_DIR="${T}/zig-build-cache"
	local -x ZIG_LOCAL_CACHE_DIR="${T}/zig-local-cache"
	local -x ZIG="${ZIG_EXE}"

	cargo_src_test
}

src_install() {
	dobin "$(cargo_target_dir)/${PN}"
}

QA_FLAGS_IGNORED="usr/bin/${PN}"

Inherited Eclasses

Dependencies

RDEPEND

	app-misc/tmux
	dev-vcs/git

BDEPEND

	|| (
		=dev-lang/zig-0.15.2*[llvm(+)]
		=dev-lang/zig-bin-0.15.2*
	)

Manifest for 0.5.0

Type File Size Source URLs
DIST flowmux-0.5.0-bindings.tar.gz 1111356 bytes https://deps.files.ghostty.org/DearBindings_v0.17_ImGui_v1.92.5-docking.tar.gz
DIST flowmux-0.5.0-breakpad.tar.gz 5475126 bytes https://deps.files.ghostty.org/breakpad-b99f444ba5f6b98cac261cbb391d8766b34a5918.tar.gz
DIST flowmux-0.5.0-fontconfig.tar.gz 2122247 bytes https://deps.files.ghostty.org/fontconfig-2.14.2.tar.gz
DIST flowmux-0.5.0-freetype.tar.gz 2480637 bytes https://deps.files.ghostty.org/freetype-1220b81f6ecfb3fd222f76cf9106fecfa6554ab07ec7fdc4124b9bb063ae2adf969d.tar.gz
DIST flowmux-0.5.0-gettext.tar.gz 27367136 bytes https://deps.files.ghostty.org/gettext-0.24.tar.gz
DIST flowmux-0.5.0-ghostty.tar.gz 37792762 bytes https://github.com/ghostty-org/ghostty/archive/bfe633a9487892ff3d27ed727db540267f22ef90.tar.gz
DIST flowmux-0.5.0-glslang.tar.gz 3842427 bytes https://deps.files.ghostty.org/glslang-12201278a1a05c0ce0b6eb6026c65cd3e9247aa041b1c260324bf29cee559dd23ba1.tar.gz
DIST flowmux-0.5.0-gobject.tar.zst 1809537 bytes https://deps.files.ghostty.org/gobject-2025-11-08-23-1.tar.zst
DIST flowmux-0.5.0-gtk4-layer-shell.tar.gz 69197 bytes https://deps.files.ghostty.org/gtk4-layer-shell-1.1.0.tar.gz
DIST flowmux-0.5.0-harfbuzz.tar.xz 18152228 bytes https://deps.files.ghostty.org/harfbuzz-11.0.0.tar.xz
DIST flowmux-0.5.0-highway.tar.gz 3563730 bytes https://deps.files.ghostty.org/highway-66486a10623fa0d72fe91260f96c892e41aceb06.tar.gz
DIST flowmux-0.5.0-imgui.tar.gz 2179348 bytes https://github.com/ocornut/imgui/archive/refs/tags/v1.92.5-docking.tar.gz
DIST flowmux-0.5.0-iterm2-themes.tgz 65954 bytes https://deps.files.ghostty.org/ghostty-themes-release-20260525-155808-7335c0a.tgz
DIST flowmux-0.5.0-jetbrains-mono.tar.gz 5613569 bytes https://deps.files.ghostty.org/JetBrainsMono-2.304.tar.gz
DIST flowmux-0.5.0-libpng.tar.gz 1554715 bytes https://deps.files.ghostty.org/libpng-1220aa013f0c83da3fb64ea6d327f9173fa008d10e28bc9349eac3463457723b1c66.tar.gz
DIST flowmux-0.5.0-libxev.tar.gz 283404 bytes https://deps.files.ghostty.org/libxev-34fa50878aec6e5fa8f532867001ab3c36fae23e.tar.gz
DIST flowmux-0.5.0-libxml2.tar.gz 3780877 bytes https://deps.files.ghostty.org/libxml2-2.11.5.tar.gz
DIST flowmux-0.5.0-nerd-fonts-symbols-only.tar.gz 2932840 bytes https://deps.files.ghostty.org/NerdFontsSymbolsOnly-3.4.0.tar.gz
DIST flowmux-0.5.0-oniguruma.tar.gz 645616 bytes https://deps.files.ghostty.org/oniguruma-1220c15e72eadd0d9085a8af134904d9a0f5dfcbed5f606ad60edc60ebeccd9706bb.tar.gz
DIST flowmux-0.5.0-pixels.tar.gz 3644 bytes https://deps.files.ghostty.org/pixels-12207ff340169c7d40c570b4b6a97db614fe47e0d83b5801a932dcd44917424c8806.tar.gz
DIST flowmux-0.5.0-plasma-wayland-protocols.tar.gz 63808 bytes https://deps.files.ghostty.org/plasma_wayland_protocols-12207e0851c12acdeee0991e893e0132fc87bb763969a585dc16ecca33e88334c566.tar.gz
DIST flowmux-0.5.0-sentry.tar.gz 470991 bytes https://deps.files.ghostty.org/sentry-1220446be831adcca918167647c06c7b825849fa3fba5f22da394667974537a9c77e.tar.gz
DIST flowmux-0.5.0-spirv-cross.tar.gz 1797806 bytes https://deps.files.ghostty.org/spirv_cross-1220fb3b5586e8be67bc3feb34cbe749cf42a60d628d2953632c2f8141302748c8da.tar.gz
DIST flowmux-0.5.0-vaxis.tar.gz 1209803 bytes https://deps.files.ghostty.org/vaxis-7dbb9fd3122e4ffad262dd7c151d80d863b68558.tar.gz
DIST flowmux-0.5.0-wayland.tar.gz 371496 bytes https://deps.files.ghostty.org/wayland-9cb3d7aa9dc995ffafdbdef7ab86a949d0fb0e7d.tar.gz
DIST flowmux-0.5.0-wuffs.tar.gz 15555101 bytes https://deps.files.ghostty.org/wuffs-122037b39d577ec2db3fd7b2130e7b69ef6cc1807d68607a7c232c958315d381b5cd.tar.gz
DIST flowmux-0.5.0-z2d.tar.gz 1806720 bytes https://deps.files.ghostty.org/z2d-0.10.0-j5P_Hu-6FgBsZNgwphIqh17jDnj8_yPtD8yzjO6PpHRQ.tar.gz
DIST flowmux-0.5.0-zf.tar.gz 32206 bytes https://deps.files.ghostty.org/zf-3c52637b7e937c5ae61fd679717da3e276765b23.tar.gz
DIST flowmux-0.5.0-zig-js.tar.gz 154072 bytes https://deps.files.ghostty.org/zig_js-04db83c617da1956ac5adc1cb9ba1e434c1cb6fd.tar.gz
DIST flowmux-0.5.0-zig-objc.tar.gz 21256 bytes https://deps.files.ghostty.org/zig_objc-f356ed02833f0f1b8e84d50bed9e807bf7cdc0ae.tar.gz
DIST flowmux-0.5.0-zig-wayland.tar.gz 111213 bytes https://deps.files.ghostty.org/zig_wayland-1b5c038ec10da20ed3a15b0b2a6db1c21383e8ea.tar.gz
DIST flowmux-0.5.0-zigimg.tar.gz 175047 bytes https://github.com/ivanstepanovftw/zigimg/archive/d7b7ab0ba0899643831ef042bd73289510b39906.tar.gz
DIST flowmux-0.5.0-zlib.tar.gz 1572744 bytes https://deps.files.ghostty.org/zlib-1220fed0c74e1019b3ee29edae2051788b080cd96e90d56836eea857b0b966742efb.tar.gz
DIST flowmux-0.5.0.tar.gz 14333419 bytes https://github.com/grouzen/flowmux/archive/refs/tags/v0.5.0.tar.gz