blob: 4819a3dc783d29cdd7803925cd2e8a898d690ae5 (
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
92
93
94
95
96
97
|
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcsc-lite/pcsc-lite-1.8.11.ebuild,v 1.1 2014/02/14 23:11:54 flameeyes Exp $
EAPI="5"
inherit eutils multilib systemd udev user
DESCRIPTION="PC/SC Architecture smartcard middleware library"
HOMEPAGE="http://pcsclite.alioth.debian.org/"
STUPID_NUM="3991"
MY_P="${PN}-${PV/_/-}"
SRC_URI="http://alioth.debian.org/download.php/file/${STUPID_NUM}/${MY_P}.tar.bz2"
S="${WORKDIR}/${MY_P}"
# GPL-2 is there for the init script; everything else comes from
# upstream.
LICENSE="BSD ISC MIT GPL-3+ GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
# This is called libusb so that it doesn't fool people in thinking that
# it is _required_ for USB support. Otherwise they'll disable udev and
# that's going to be worse.
IUSE="libusb +udev policykit"
REQUIRED_USE="^^ ( udev libusb )"
CDEPEND="libusb? ( virtual/libusb:1 )
udev? ( virtual/udev )
policykit? ( >=sys-auth/polkit-0.111 )"
DEPEND="${CDEPEND}
virtual/pkgconfig"
RDEPEND="${CDEPEND}
!<app-crypt/ccid-1.4.1-r1
!<sys-apps/baselayout-2
!<sys-apps/openrc-0.11.8"
pkg_setup() {
enewgroup openct # make sure it exists
enewgroup pcscd
enewuser pcscd -1 -1 /run/pcscd pcscd,openct
}
src_prepare() {
epatch "${FILESDIR}"/${P}-polkit-pcscd.patch
}
src_configure() {
econf \
--disable-maintainer-mode \
--disable-silent-rules \
--docdir="${EPREFIX}/usr/share/doc/${PF}" \
--enable-usbdropdir="${EPREFIX}/usr/$(get_libdir)/readers/usb" \
--enable-ipcdir=/run/pcscd \
$(use_enable udev libudev) \
$(use_enable libusb) \
$(use_enable policykit polkit) \
"$(systemd_with_unitdir)" \
${myconf}
}
DOCS=( AUTHORS DRIVERS HELP README SECURITY ChangeLog )
src_install() {
default
prune_libtool_files
newinitd "${FILESDIR}"/pcscd-init.7 pcscd
if use udev; then
insinto "$(udev_get_udevdir)"/rules.d
doins "${FILESDIR}"/99-pcscd-hotplug.rules
fi
}
pkg_postinst() {
elog "Starting from version 1.6.5, pcsc-lite will start as user nobody in"
elog "the pcscd group, to avoid running as root."
elog ""
elog "This also means you need the newest drivers available so that the"
elog "devices get the proper owner."
elog ""
elog "Furthermore, a conf.d file is no longer installed by default, as"
elog "the default configuration does not require one. If you need to"
elog "pass further options to pcscd, create a file and set the"
elog "EXTRA_OPTS variable."
elog ""
if use udev; then
elog "Hotplug support is provided by udev rules; you only need to tell"
elog "the init system to hotplug it, by setting this variable in"
elog "/etc/rc.conf:"
elog ""
elog " rc_hotplug=\"pcscd\""
fi
}
|