summaryrefslogtreecommitdiff
path: root/gui-apps/ironbar/ironbar-9999.ebuild
blob: 37aa8b09623b408f0db98eed3d951ad73c4ea556 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Copyright 2024-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit cargo git-r3

DESCRIPTION="Customisable Wayland gtk bar written in Rust"
HOMEPAGE="https://crates.io/crates/ironbar"
EGIT_REPO_URI="https://github.com/JakeStanger/${PN}"

LICENSE="MIT"
# Dependent crate licenses
LICENSE+="
	Apache-2.0 BSD CC0-1.0 GPL-3+ ISC MIT MPL-2.0 Unicode-DFS-2016
"
SLOT="0"
IUSE="cairo +http +keyboard +music notifications +tray +volume"

DEPEND="
	x11-libs/gtk+:3=[wayland]
	gui-libs/gtk-layer-shell[introspection]
	cairo? ( dev-lua/lgi[lua_targets_luajit] )
	http? ( dev-libs/openssl:0= )
	keyboard? ( dev-libs/libinput )
	music? ( sys-apps/dbus )
	notifications? ( gui-apps/swaync )
	tray? ( dev-libs/libdbusmenu[gtk3] )
	volume? ( media-libs/libpulse )
"
RDEPEND="${DEPEND}"
BDEPEND="
	virtual/pkgconfig
"

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

src_unpack() {
	git-r3_src_unpack
	cargo_live_src_unpack
}

src_configure() {
	# high magic to allow system-libs
	export OPENSSL_NO_VENDOR=true
	export PKG_CONFIG_ALLOW_CROSS=1

	local myfeatures=(
		"battery"
		"bindmode+all"
		"bluetooth"
		"cli"
		$(usev cairo)
		"clipboard"
		"clock"
		"config+all"
		"custom"
		"focused"
		$(usev http)
		"ipc"
		$(usex "keyboard" "keyboard+all" "")
		"label"
		"launcher"
		"menu"
		$(usex "music" "music+all" "")
		"network_manager"
		$(usev notifications)
		"script"
		"sys_info"
		$(usev tray)
		$(usev volume)
		"workspaces+all"
	)
	cargo_src_configure --no-default-features
}

src_install() {
	cargo_src_install

	local DOCS=(
		CHANGELOG.md
		CONTRIBUTING.md
		README.md
		examples/
	)
	local HTML_DOCS=(
		docs/
	)
	docompress -x /usr/share/doc/${PF}/examples
	einstalldocs
}