public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Thomas Deutschmann" <whissi@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/smartmontools/
Date: Tue, 31 Oct 2017 21:55:18 +0000 (UTC)	[thread overview]
Message-ID: <1509486898.2e30c20f28ed66d57cc2af664acd7a0fcc0cc853.whissi@gentoo> (raw)

commit:     2e30c20f28ed66d57cc2af664acd7a0fcc0cc853
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 31 21:54:58 2017 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Oct 31 21:54:58 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e30c20f

sys-apps/smartmontools: Update live ebuild

Incorporate changes from commit ad8950f967e37dcff1fb1ab9fcd2e0b4001b0a69.

Package-Manager: Portage-2.3.13, Repoman-2.3.4

 sys-apps/smartmontools/smartmontools-9999.ebuild | 115 ++++++++++++++++-------
 1 file changed, 80 insertions(+), 35 deletions(-)

diff --git a/sys-apps/smartmontools/smartmontools-9999.ebuild b/sys-apps/smartmontools/smartmontools-9999.ebuild
index dfe72e1dfdd..499584db4c3 100644
--- a/sys-apps/smartmontools/smartmontools-9999.ebuild
+++ b/sys-apps/smartmontools/smartmontools-9999.ebuild
@@ -1,13 +1,13 @@
 # Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
+EAPI="6"
 
-inherit flag-o-matic systemd
+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 autotools
+	inherit subversion
 else
 	SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
 	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~x64-macos"
@@ -18,29 +18,41 @@ HOMEPAGE="https://www.smartmontools.org"
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="caps minimal selinux static update_drivedb"
+IUSE="caps +daemon selinux static 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}
-	!minimal? ( virtual/mailx )
+	daemon? ( virtual/mailx )
 	selinux? ( sec-policy/selinux-smartmon )
+	update_drivedb? (
+		|| (
+			net-misc/curl
+			net-misc/wget
+			www-client/lynx
+			dev-vcs/subversion
+		)
+	)
 "
 
+REQUIRED_USE="( caps? ( daemon ) )"
+
 src_prepare() {
-	if [[ ${PV} == "9999" ]] ; then
-		eautoreconf
-	fi
+	default
+
+	eautoreconf
 }
 
 src_configure() {
-	use minimal && einfo "Skipping the monitoring daemon for minimal build."
 	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.
@@ -50,7 +62,7 @@ src_configure() {
 		--with-initscriptdir="${EPREFIX}/etc/init.d"
 		$(use_with caps libcap-ng)
 		$(use_with selinux)
-		$(systemd_with_unitdir)
+		--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
 		$(use_with update_drivedb update-smart-drivedb)
 	)
 	econf "${myeconfargs[@]}"
@@ -59,45 +71,78 @@ src_configure() {
 src_install() {
 	local db_path="/var/db/${PN}"
 
-	if use minimal ; then
-		dosbin smartctl
-		doman smartctl.8
-	else
+	if use daemon; then
 		default
+
 		newinitd "${FILESDIR}"/smartd-r1.rc smartd
 		newconfd "${FILESDIR}"/smartd.confd smartd
+		systemd_newunit "${FILESDIR}"/smartd.systemd smartd.service
+	else
+		dosbin smartctl
+		doman smartctl.8
 
-		keepdir "${db_path}"
-		if use update_drivedb ; then
-			# Move drivedb.h file out of PM's sight (bug #575292)
-			mv "${ED}${db_path}/drivedb.h" "${T}" || die
+		local DOCS=( AUTHORS ChangeL* COPYING INSTALL NEWS README TODO )
+		einstalldocs
+	fi
 
-			exeinto /etc/cron.monthly
-			doexe "${FILESDIR}/${PN}-update-drivedb"
+	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 minimal ; then
-		local db_path="/var/db/${PN}"
+	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
-			ewarn "WARNING! The existing copy of the drive database has been replaced with the version that"
-			ewarn "was shipped with this release of ${PN}. You may want to update the"
-			ewarn "database by: "
+		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 "re-merging ${PN} with USE='update_drivedb', then"
+				ewarn ""
+				ewarn "However, 'update-smart-drivedb' requires that you re-emerge ${PN}"
+				ewarn "with USE='update_drivedb'."
 			fi
-			ewarn "running the following command as root:"
-			ewarn ""
-			ewarn "/usr/sbin/update-smart-drivedb"
-		fi
-
-		if use update_drivedb ; then
-			# Move drivedb.h to /var/db/${PN} (bug #575292)
-			mv "${T}"/drivedb.h "${db_path}" || die
 		fi
 	fi
 }


             reply	other threads:[~2017-10-31 21:55 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-31 21:55 Thomas Deutschmann [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-04-17  5:37 [gentoo-commits] repo/gentoo:master commit in: sys-apps/smartmontools/ Arthur Zamarin
2024-03-24 12:12 Sam James
2024-03-24 12:12 Sam James
2024-03-24 11:34 Sam James
2024-03-24 11:34 Sam James
2024-03-24 11:29 Sam James
2024-03-24 11:29 Sam James
2024-03-24 11:29 Sam James
2024-02-19 19:54 Dennis Lamm
2024-01-26  2:09 Ionen Wolkens
2024-01-26  2:09 Ionen Wolkens
2024-01-11  9:38 Sam James
2023-11-25  6:36 Sam James
2023-10-28 19:38 Sam James
2023-10-21 22:48 Sam James
2023-10-21 20:37 Sam James
2023-08-02 13:14 Sam James
2022-05-05  9:51 WANG Xuerui
2022-05-05  9:51 WANG Xuerui
2022-05-04 14:42 Sam James
2022-05-04  5:31 Sam James
2022-05-04  4:26 Sam James
2022-05-04  0:16 Sam James
2022-05-03 19:17 Arthur Zamarin
2022-05-03 19:12 Arthur Zamarin
2022-05-03 18:09 Arthur Zamarin
2022-05-03  6:21 Agostino Sarubbo
2022-05-02 19:03 Sam James
2022-03-02  1:27 Patrick McLean
2022-03-02  1:27 Patrick McLean
2021-11-04 16:27 Sam James
2021-07-22  3:42 Georgy Yakovlev
2021-07-22  3:42 Georgy Yakovlev
2021-05-23 12:14 David Seifert
2021-05-11 15:45 Sergei Trofimovich
2021-05-10 10:54 Sam James
2021-05-10 10:54 Sam James
2021-05-10  6:26 Sam James
2021-05-10  6:26 Sam James
2021-05-10  6:26 Sam James
2021-05-10  6:26 Sam James
2021-01-25 13:59 Ben Kohler
2021-01-02 20:24 Lars Wendler
2021-01-02 20:24 Lars Wendler
2021-01-02 20:24 Lars Wendler
2020-10-06 15:41 Sam James
2020-09-18 10:44 Lars Wendler
2020-09-13 10:50 Sergei Trofimovich
2020-09-07  8:47 Sergei Trofimovich
2020-08-29 23:57 Sam James
2020-08-23 11:37 David Seifert
2020-08-18 11:16 Agostino Sarubbo
2020-08-15  7:31 Sergei Trofimovich
2020-08-15  6:05 Sam James
2020-05-06 17:25 Michał Górny
2020-02-08 16:53 David Seifert
2019-12-31 15:47 Lars Wendler
2019-05-02 21:32 Mikle Kolyada
2019-04-27 16:03 Sergei Trofimovich
2019-04-14 16:18 Mikle Kolyada
2019-04-08 22:07 Sergei Trofimovich
2019-04-08 15:36 Mikle Kolyada
2019-04-08  2:18 Thomas Deutschmann
2019-04-07 21:01 Sergei Trofimovich
2019-04-01 16:04 Lars Wendler
2018-12-31 10:39 Lars Wendler
2018-12-31 10:39 Lars Wendler
2018-12-31 10:39 Lars Wendler
2018-03-03 13:12 Tobias Klausmann
2018-01-10  6:19 Markus Meier
2018-01-07 23:40 Mikle Kolyada
2018-01-06 14:25 Sergei Trofimovich
2018-01-03  9:04 Sergei Trofimovich
2018-01-02 19:54 Sergei Trofimovich
2017-11-06 10:44 Lars Wendler
2017-11-06 10:44 Lars Wendler
2017-11-06 10:44 Lars Wendler
2017-02-14 21:31 Robin H. Johnson
2017-01-27 22:12 Robin H. Johnson
2016-10-30 20:05 Sven Wegener
2016-07-03  0:56 Zac Medico
2016-05-07 19:02 Lars Wendler
2016-04-19  6:02 Lars Wendler
2016-04-18 17:25 Lars Wendler
2016-04-18 13:56 Lars Wendler
2015-09-07  5:34 Jeroen Roovers
2015-08-21 16:42 Markus Meier
2015-08-18  4:32 Jeroen Roovers
2015-08-16 20:43 Mikle Kolyada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1509486898.2e30c20f28ed66d57cc2af664acd7a0fcc0cc853.whissi@gentoo \
    --to=whissi@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox