forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
sys-apps/smartmontools: Bump to version 7.1
Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Lars Wendler <[email protected]>
- Loading branch information
Lars Wendler
committed
Dec 31, 2019
1 parent
135c3ad
commit e1e05db
Showing
2 changed files
with
151 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST smartmontools-7.0.tar.gz 944925 BLAKE2B 41b3894efa05471bf358fca4ba87a765e3a54df68c9a617804a9e0853752c57b68fdbaa9d55fa1462a8fa7de1d6cb5630c66929dfe521be38b180944cb80acc9 SHA512 96e18a201182579f699d541539ce393e7bc2191e027cfdf7f87455a63da3a14451574f8fe391232047ac941ace453a017193d0a4987a4edb8f7ed9d5007f0512 | ||
DIST smartmontools-7.1.tar.gz 971468 BLAKE2B de3e1b10997903cb9bf6107f1bd1be9587b66af08a94e368dc9ed3aa6d69ba93d6b41d1ba60076275603702d9d0b47b26e376d3c9f020eb18fde5af4b686485b SHA512 440b2a957da10d240a8ef0008bd3358b83adb9eaca0f8d3e049b25d56a139c61dcd0bb4b27898faef6f189a27e159bdca3331e52e445c0eebf35e5d930f9e295 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,150 @@ | ||
# Copyright 1999-2019 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI="6" | ||
|
||
inherit autotools flag-o-matic systemd | ||
if [[ ${PV} == "9999" ]] ; then | ||
ESVN_REPO_URI="https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools" | ||
ESVN_PROJECT="smartmontools" | ||
inherit subversion | ||
else | ||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" | ||
fi | ||
|
||
DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation" | ||
HOMEPAGE="https://www.smartmontools.org" | ||
|
||
LICENSE="GPL-2" | ||
SLOT="0" | ||
IUSE="caps +daemon selinux static systemd update_drivedb" | ||
|
||
DEPEND=" | ||
caps? ( | ||
static? ( sys-libs/libcap-ng[static-libs] ) | ||
!static? ( sys-libs/libcap-ng ) | ||
) | ||
kernel_FreeBSD? ( | ||
sys-freebsd/freebsd-lib[usb] | ||
) | ||
selinux? ( | ||
sys-libs/libselinux | ||
)" | ||
RDEPEND="${DEPEND} | ||
daemon? ( virtual/mailx ) | ||
selinux? ( sec-policy/selinux-smartmon ) | ||
systemd? ( sys-apps/systemd ) | ||
update_drivedb? ( | ||
app-crypt/gnupg | ||
|| ( | ||
net-misc/curl | ||
net-misc/wget | ||
www-client/lynx | ||
dev-vcs/subversion | ||
) | ||
) | ||
" | ||
|
||
REQUIRED_USE="( caps? ( daemon ) )" | ||
|
||
src_prepare() { | ||
default | ||
eautoreconf | ||
} | ||
|
||
src_configure() { | ||
use static && append-ldflags -static | ||
# The build installs /etc/init.d/smartd, but we clobber it | ||
# in our src_install, so no need to manually delete it. | ||
myeconfargs=( | ||
--with-drivedbdir="${EPREFIX}/var/db/${PN}" #575292 | ||
--with-initscriptdir="${EPREFIX}/etc/init.d" | ||
#--with-smartdscriptdir="${EPREFIX}/usr/share/${PN}" | ||
$(use_with caps libcap-ng) | ||
$(use_with selinux) | ||
$(use_with systemd libsystemd) | ||
$(use_with update_drivedb gnupg) | ||
$(use_with update_drivedb update-smart-drivedb) | ||
$(usex systemd "--with-systemdsystemunitdir=$(systemd_get_systemunitdir)" '') | ||
) | ||
econf "${myeconfargs[@]}" | ||
} | ||
|
||
src_install() { | ||
local db_path="/var/db/${PN}" | ||
|
||
if use daemon; then | ||
default | ||
|
||
newinitd "${FILESDIR}"/smartd-r1.rc smartd | ||
newconfd "${FILESDIR}"/smartd.confd smartd | ||
else | ||
dosbin smartctl | ||
doman smartctl.8 | ||
|
||
local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO ) | ||
einstalldocs | ||
fi | ||
|
||
if use update_drivedb ; then | ||
if ! use daemon; then | ||
dosbin "${S}"/update-smart-drivedb | ||
fi | ||
|
||
exeinto /etc/cron.monthly | ||
doexe "${FILESDIR}/${PN}-update-drivedb" | ||
fi | ||
|
||
if use daemon || use update_drivedb; then | ||
keepdir "${db_path}" | ||
|
||
# Install a copy of the initial drivedb.h to /usr/share/${PN} | ||
# so that we can access that file later in pkg_postinst | ||
# even when dealing with binary packages (bug #575292) | ||
insinto /usr/share/${PN} | ||
doins "${S}"/drivedb.h | ||
fi | ||
|
||
# Make sure we never install drivedb.h into the db location | ||
# of the acutal image so we don't record hashes because user | ||
# can modify that file | ||
rm -f "${ED%/}${db_path}/drivedb.h" || die | ||
|
||
# Bug #622072 | ||
find "${ED%/}"/usr/share/doc -type f -exec chmod a-x '{}' \; || die | ||
} | ||
|
||
pkg_postinst() { | ||
if use daemon || use update_drivedb; then | ||
local initial_db_file="${EPREFIX%/}/usr/share/${PN}/drivedb.h" | ||
local db_path="${EPREFIX%/}/var/db/${PN}" | ||
|
||
if [[ ! -f "${db_path}/drivedb.h" ]] ; then | ||
# No initial database found | ||
cp "${initial_db_file}" "${db_path}" || die | ||
einfo "Default drive database which was shipped with this release of ${PN}" | ||
einfo "has been installed to '${db_path}'." | ||
else | ||
ewarn "WARNING: There's already a drive database in '${db_path}'!" | ||
ewarn "Because we cannot determine if this database is untouched" | ||
ewarn "or was modified by the user you have to manually update the" | ||
ewarn "drive database:" | ||
ewarn "" | ||
ewarn "a) Replace '${db_path}/drivedb.h' by the database shipped with this" | ||
ewarn " release which can be found in '${initial_db_file}', i.e." | ||
ewarn "" | ||
ewarn " cp \"${initial_db_file}\" \"${db_path}\"" | ||
ewarn "" | ||
ewarn "b) Run the following command as root:" | ||
ewarn "" | ||
ewarn " /usr/sbin/update-smart-drivedb" | ||
|
||
if ! use update_drivedb ; then | ||
ewarn "" | ||
ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}" | ||
ewarn "with USE='update_drivedb'." | ||
fi | ||
fi | ||
fi | ||
} |