Magellan Linux

Annotation of /smage/trunk/core/shadow/shadow-4.1.4.3-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1373 - (hide annotations) (download)
Tue Mar 1 18:46:16 2011 UTC (13 years, 2 months ago) by niro
File size: 3653 byte(s)
auto added: ver bump to 4.1.4.3-r1
1 niro 1373 # $Id$
2    
3     PNAME="shadow"
4     PVER="4.1.4.3"
5     PBUILD="r1"
6    
7     PCATEGORIE="sys-apps"
8     STATE="unstable"
9    
10     DESCRIPTION="Utilities to deal with user accounts, with pam support."
11     HOMEPAGE="http://pkg-shadow.alioth.debian.org/"
12    
13     DEPEND=">= virtual/glibc
14     >= app-shells/bash-4"
15    
16     SDEPEND=">= sys-dev/autoconf-5
17     >= sys-dev/automake-4
18     >= sys-dev/libtool-2.2"
19    
20     SRCFILE="${PNAME}-${PVER}.tar.bz2"
21     SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
22    
23     MCORE_ONLY_KEEP="bin
24     etc
25     $(mlibdir)
26     usr/bin/passwd
27     usr/$(mlibdir)
28     usr/sbin/groupadd
29     usr/sbin/groupdel
30     usr/sbin/groupmod
31     usr/sbin/useradd
32     usr/sbin/userdel
33     usr/sbin/usermod
34     usr/sbin/pwconv
35     usr/sbin/grpconv
36     sbin"
37    
38     # no shared libs get installed, is multilib needed anymore?
39     sminclude multilib mtools mcore-split
40    
41     SRC_URI=(
42     ftp://pkg-${PNAME}.alioth.debian.org/pub/pkg-${PNAME}/${SRCFILE}
43     mirror://${PNAME}/${SRCFILE}
44     mirror://${PNAME}/securetty
45     mirror://${PNAME}/${PNAME}-4.1.2.1-defaults.patch
46     mirror://${PNAME}/${PNAME}-${PVER}-groupmod-username.patch
47     )
48    
49     UP2DATE="updatecmd ${HOMEPAGE} | grep 'New release' | sed 's/.*: \(.*\).*/\1/;q'"
50    
51     src_prepare()
52     {
53     munpack ${SRCFILE} || die
54    
55     # fixes useradd default settings (create_mail_spool)
56     mpatch ${PNAME}-4.1.2.1-defaults.patch || die
57    
58     # fixes username issues with groupadd if pam is enabled
59     # see: http://lists.alioth.debian.org/pipermail/pkg-shadow-devel/2009-November/007850.html
60     mpatch ${PNAME}-${PVER}-groupmod-username.patch || die
61    
62     # do not build 'groups'; coreutils provide a better version
63     all-abis "sed -i 's/groups$(EXEEXT) //' src/Makefile.in" || die
64     all-abis "sed -i '/groups/d' man/Makefile.in" || die
65     }
66    
67     src_compile()
68     {
69     mconfigure \
70     --enable-shared \
71     --without-libpam \
72     --without-libcrack \
73     --with-libcrypt \
74     --disable-nls \
75     --without-selinux \
76     || die
77    
78     mmake || die
79     }
80    
81     mcore_generic_src_install()
82     {
83     # needed directories
84     minstalldir /etc/{default,skel} || die
85    
86     # added exec_prefix for better bin location
87     mmake DESTDIR=${BINDIR} install || die
88    
89     minstalletc etc/limits limits || die
90     minstalletc etc/login.access login.access || die
91    
92     # makes recovery easier, when /usr is not mounted :)
93     mv -v ${BINDIR}/usr/bin/passwd ${BINDIR}/bin || die
94     mlink /bin/passwd /usr/bin || die
95    
96     # not provided by shadow anymore; install our own now
97     minstalletc securetty || die
98    
99     # disable these checks as pam controls them now
100     sed -e "s/^DIALUPS_CHECK_ENAB/# &/" \
101     -e "s/^LASTLOG_ENAB/# &/" \
102     -e "s/^MAIL_CHECK_ENAB/# &/" \
103     -e "s/^PORTTIME_CHECKS_ENAB/# &/" \
104     -e "s/^CONSOLE/# &/" \
105     -e "s/^MOTD_FILE/# &/" \
106     -e "s/^NOLOGINS_FILE/# &/" \
107     -e "s/^PASS_MIN_LEN/# &/" \
108     -e "s/^SU_WHEEL_ONLY/# &/" \
109     -e "s/^CONSOLE_GROUPS/# &/" \
110     -e "s/^ENVIRON_FILE/# &/" \
111     -e "s/^OBSCURE_CHECKS_ENAB/# &/" \
112     -e "s/^CRACKLIB_DICTPATH/# &/" \
113     -e "s/^PASS_CHANGE_TRIES/# &/" \
114     -e "s/^PASS_ALWAYS_WARN/# &/" \
115     -e "s/^FAILLOG_ENAB/# &/" \
116     -e "s/^QUOTAS_ENAB/# &/" \
117     -e "s/^FTMP_FILE/# &/" \
118     -e "s/^ENV_HZ/# &/" \
119     -e "s/^CHFN_AUTH/# &/" \
120     etc/login.defs > ${BINDIR}/etc/login.defs || die
121    
122     # fix some pathes in login.defs
123     # md5crypt is also controlled by pam !
124     sed -i -e "s/^MD5_CRYPT_ENAB/# &/" \
125     -e 's%/var/spool/mail%/var/mail%' \
126     -e 's@DICTPATH.*@DICTPATH\t/lib/cracklib/pw_dict@' \
127     ${BINDIR}/etc/login.defs || die
128    
129     # fix src_install; mcore has no cracklib installed
130     sed -i -e 's:# OBSCURE_CHECKS_ENAB:OBSCURE_CHECKS_ENAB:' \
131     -e 's:^CRACKLIB_DICTPATH:#CRACKLIB_DICTPATH:' \
132     -e 's:# PASS_CHANGE_TRIES:PASS_CHANGE_TRIES:' \
133     -e 's:# PASS_ALWAYS_WARN:PASS_ALWAYS_WARN:' \
134     ${BINDIR}/etc/login.defs || die
135     }
136    
137     postinstall()
138     {
139     if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
140     then
141     /usr/sbin/pwconv
142     /usr/sbin/grpconv
143     fi
144     }