You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
2.1 KiB
73 lines
2.1 KiB
# Copyright 1999-2019 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=5
|
|
inherit linux-info readme.gentoo systemd
|
|
|
|
DESCRIPTION="IBM ThinkPad Hard Drive Active Protection System (HDAPS) daemon"
|
|
HOMEPAGE="https://github.com/evgeni/${PN}/"
|
|
SRC_URI="https://github.com/evgeni/${PN}/releases/download/${PV}/${P}.tar.gz"
|
|
|
|
LICENSE="GPL-2"
|
|
SLOT="0"
|
|
KEYWORDS="amd64 x86"
|
|
IUSE="libconfig"
|
|
|
|
DEPEND="libconfig? ( dev-libs/libconfig )"
|
|
RDEPEND="${DEPEND}"
|
|
|
|
pkg_setup() {
|
|
# We require the hdaps module which can either come from either the
|
|
# kernel itself (CONFIG_SENSORS_HDAPS) or from the tp_smapi package.
|
|
if ! has_version app-laptop/tp_smapi[hdaps]; then
|
|
CONFIG_CHECK="~SENSORS_HDAPS"
|
|
ERROR_SENSORS_HDAPS="${P} requires app-laptop/tp_smapi[hdaps] or "
|
|
ERROR_SENSORS_HDAPS+="kernel support for CONFIG_SENSORS_HDAPS enabled"
|
|
linux-info_pkg_setup
|
|
fi
|
|
}
|
|
|
|
src_configure(){
|
|
econf \
|
|
$(use_enable libconfig) \
|
|
--with-systemdsystemunitdir=$(systemd_get_unitdir) \
|
|
--docdir="/usr/share/doc/${PF}"
|
|
}
|
|
|
|
src_install() {
|
|
default
|
|
newconfd "${FILESDIR}/hdapsd.conf-20141024" hdapsd
|
|
newinitd "${FILESDIR}/hdapsd.init-20141024" hdapsd
|
|
readme.gentoo_create_doc
|
|
}
|
|
|
|
pkg_postinst(){
|
|
[[ -z $(ls "${ROOT}"sys/block/*/queue/protect 2>/dev/null) ]] && \
|
|
[[ -z $(ls "${ROOT}"sys/block/*/device/unload_heads 2>/dev/null) ]] && \
|
|
ewarn "Your kernel does NOT support shock protection."
|
|
|
|
readme.gentoo_print_elog
|
|
}
|
|
|
|
DISABLE_AUTOFORMATTING=1
|
|
DOC_CONTENTS="
|
|
${PN} requires a kernel module to function properly. The recommended
|
|
approach is to install app-laptop/tp_smapi[hdaps], but the in-tree
|
|
module provided by CONFIG_SENSORS_HDAPS may work as well.
|
|
|
|
Common daemon parameters can be set in ${EROOT}etc/conf.d/${PN}. If the
|
|
package was installed with USE=libconfig, then the parameters can also
|
|
be set in ${EROOT}etc/${PN}.conf, although the former will take
|
|
precedence over the latter if both are used.
|
|
|
|
You can change the default sampling rate by modifing
|
|
|
|
/sys/devices/platform/hdaps/sampling_rate
|
|
|
|
and you may need to enable shock protection manually by running
|
|
|
|
# echo -1 > /sys/block/<disk>/device/unload_heads
|
|
|
|
as root.
|
|
"
|