dev-lua/penlight - 9999 (mva)

Search

Install

Install this version:

emerge -a =dev-lua/penlight-9999

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

autounmask =dev-lua/penlight-9999

Or alternatively:

emerge --autounmask-write -a =dev-lua/penlight-9999

Package Information

Description:
Libraries for input handling, functional programming and OS path management
Homepage:
https://github.com/lunarmodules/Penlight
License:
MIT

Ebuild Details

Version EAPI Keywords Slot
9999 8 0
View Raw Ebuild
# Copyright 2026 mva
# Distributed under the terms of the Public Domain or CC0 License

EAPI=8

LUA_COMPAT=( lua{5-{1..4},jit} )

inherit lua git-r3

DESCRIPTION="Libraries for input handling, functional programming and OS path management"
HOMEPAGE="https://github.com/lunarmodules/Penlight"
EGIT_REPO_URI="https://github.com/lunarmodules/Penlight"

LICENSE="MIT"
SLOT="0"
IUSE="doc examples test"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RESTRICT="!test? ( test )"

RDEPEND="
	${LUA_DEPS}
	dev-lua/luafilesystem[${LUA_USEDEP}]
"
BDEPEND="
	doc? ( dev-lua/ldoc )
"
DEPEND="${RDEPEND}"

src_compile() {
	if use doc; then
		ldoc . -d docs || eerror "Failed (non-fatal) to build HTML documentation"
		mv docs html
	fi
}

each_lua_test() {
	${ELUA} run.lua tests
}

src_test() {
	lua_foreach_impl each_lua_test
}

each_lua_install() {
	insinto "$(lua_get_lmod_dir)"
	doins -r lua/pl
}

src_install() {
	lua_foreach_impl each_lua_install
	if use examples; then
		DOCS+=(examples)
		docompress -x "/usr/share/doc/${PF}/examples"
	fi
	if use doc; then
		DOCS+=(html)
	fi
	einstalldocs
}

USE Flags

Manage flags for this package: euse -i <flag> -p dev-lua/penlight | euse -E <flag> -p dev-lua/penlight | euse -D <flag> -p dev-lua/penlight

Global/Standard Flags

doc

Inherited Eclasses

lua

Dependencies

DEPEND

	
	dev-lua/luafilesystem[]

RDEPEND

	
	dev-lua/luafilesystem[]

BDEPEND

	doc? ( dev-lua/ldoc )