]> git.pld-linux.org Git - packages/setup.git/blobdiff - setup.spec
- postshell in setup.spec
[packages/setup.git] / setup.spec
index e3d0dcc5206f707328cfe5274c60314090150a0d..875587c2c74793f3ab270ff382ae4a8ecdca3d4e 100644 (file)
@@ -1,23 +1,43 @@
+#
+# TODO:
+# - make some README.PLD with system features description
+#
+# Conditional build:
+%bcond_with    ssp     # enable stack-smashing protector (vide dietlibc.spec)
+#
+%define        iana_etc_ver    1.04
+%undefine      with_ccache
+#
 Summary:       Simple setup files
-Summary(de):   Einfache Setup-Dateien 
+Summary(de):   Einfache Setup-Dateien
+Summary(es):   Varios archivos básicos de configuración
 Summary(fr):   Fichiers de configuration simples
+Summary(ja):   ¥µ¥ó¥×¥ë¥»¥Ã¥È¥¢¥Ã¥×¥Õ¥¡¥¤¥ë
 Summary(pl):   Podstawowe pliki systemu Linux
-Summary(tr):   Basit kurulum dosyalarý
 Summary(pt_BR):        Vários arquivos básicos de configuração
-Summary(es):   Varios archivos básicos de configuración
-Summary(ja):   ¥µ¥ó¥×¥ë¥»¥Ã¥È¥¢¥Ã¥×¥Õ¥¡¥¤¥ë
+Summary(tr):   Basit kurulum dosyalarý
 Name:          setup
-Version:       2.4.0
-Release:       2
-License:       public domain
+Version:       2.4.10
+Release:       4
+License:       Public Domain, partially BSD-like
 Group:         Base
-Group(de):     Gründsätzlich
-Group(pl):     Podstawowe
-Source0:       %{name}-%{version}.tar.bz2
-Source1:       services
-BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-Buildarch:     noarch
+Source0:       ftp://distfiles.pld-linux.org/src/%{name}-%{version}.tar.bz2
+# Source0-md5: 7f50f1650e961a77b18afa0a4a588fc1
+Source1:       http://www.sethwklein.net/projects/iana-etc/downloads/iana-etc-%{iana_etc_ver}.tar.bz2
+# Source1-md5: 9f769f7b2d0e519cf62dacb2b3b051d4
+Source2:       %{name}-update-fstab.c
+Source3:       postshell.c
+# This is source of non-iana changes in services file
+#Patch0:               %{name}-services.patch
+Patch0:                %{name}-securetty.patch
+Patch1:                %{name}-profile.env.patch
+BuildRequires: dietlibc-static
+BuildRequires: gawk
+Conflicts:     FHS < 2.3
 AutoReqProv:   no
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%define                _sbindir        /sbin
 
 %description
 This package contains a number of very important configuration and
@@ -27,71 +47,100 @@ setup files, including the passwd, group, profile files, etc.
 Dieses Paket enthält wichtige Konfigurations- und Setup-Dateien, u.a.
 passwd-, group-, profile-Dateien usw.
 
+%description -l es
+Este paquete contiene una variedad de archivos de configuración y
+setup muy importantes, incluyendo el passwd, group, archivos de
+"perfil", etc.
+
 %description -l fr
 Ce paquetage contient un nombre de fichiers de configuration très
 importants, comme passwd, group, les fichiers profile, etc.
 
+%description -l ja
+¤³¤Îsetup¥Ñ¥Ã¥±¡¼¥¸¤Ë¤Ï¡¢passwd, group, profile ¤Ê¤É¤Î¡¢
+½ÅÍפʥ·¥¹¥Æ¥àÀßÄê¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤Þ¤¹¡£
+
 %description -l pl
 Pakiet ten zawiera wiele bardzo wa¿nych plików konfiguracyjnych dla
-twojego systemu.
+Twojego systemu.
+
+%description -l pt_BR
+Este pacote contém uma variedade de arquivos de configuração e setup
+muito importantes, incluindo o passwd, group, arquivos de "perfil",
+etc.
 
 %description -l tr
 Bu paket, passwd, group, profile gibi çok önemli ayar ve kurulum
 dosyalarýný içerir.
 
-%description -l pt_BR
-Este pacote contém uma variedade de arquivos de configuração e
-setup muito importantes, incluindo o passwd, group, arquivos de
-"perfil", etc.
-
-%description -l es
-Este paquete contiene una variedad de archivos de configuración
-y setup muy importantes, incluyendo el passwd, group, archivos de
-"perfil", etc.
-
-%description -l ja
-¤³¤Îsetup¥Ñ¥Ã¥±¡¼¥¸¤Ë¤Ï¡¢passwd, group, profile ¤Ê¤É¤Î¡¢
-½ÅÍפʥ·¥¹¥Æ¥àÀßÄê¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤Þ¤¹¡£
-
 %prep
-%setup -q
+%setup -q -a1
+%patch0 -p1
+%patch1 -p1
+install %{SOURCE2} update-fstab.c
+install %{SOURCE3} postshell.c
+
+%build
+%{__make} -C iana-etc-%{iana_etc_ver}
+
+%{__make} \
+       OPT_FLAGS="%{rpmcflags} %{?with_ssp:-fno-stack-protector}" \
+       LDFLAGS="%{rpmldflags}" \
+       CC="diet %{__cc}"
+%{__make} postshell update-fstab \
+       OPT_FLAGS="%{rpmcflags} -Os" \
+       LDFLAGS="%{rpmldflags}" \
+       CC="diet %{__cc}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/shrc.d
 
-install -d $RPM_BUILD_ROOT
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
 
-cp -fa * $RPM_BUILD_ROOT
-cp -f %{SOURCE1} $RPM_BUILD_ROOT/etc
+install postshell $RPM_BUILD_ROOT%{_sbindir}
+install update-fstab $RPM_BUILD_ROOT%{_sbindir}
+
+install iana-etc-%{iana_etc_ver}/protocols $RPM_BUILD_ROOT%{_sysconfdir}/protocols
+# don't overwrite files from setup tar-ball, fix it in original tar!
+#install iana-etc-%{iana_etc_ver}/services $RPM_BUILD_ROOT%{_sysconfdir}/services
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-#%triggerin -- %{name} < %{version}-%{release}
-#[ "$1" = "1" ] && exit 0
-#[ ! -e /etc/group.rpmnew ] && exit 0
-#cat /etc/group.rpmnew | while read GROUPLINE ; do
-#      GR="`echo $GROUPLINE | cut -f 1 -d ':'`"
-#      if ! grep -q "^$GR" /etc/group ; then
-#              echo "$GROUPLINE" >> /etc/group
-#      fi
-#done
+%triggerpostun -p %{_sbindir}/joinpasswd -- %{name} < %{version}-%{release}
+
+%triggerin -p %{_sbindir}/update-fstab -- %{name} < 2.4.10-1
+
+%post -p /sbin/postshell
+-/sbin/env-update -u
+
+%postun -p /sbin/postshell
+-/sbin/env-update -u
 
 %files
 %defattr(644,root,root,755)
-
-%dir %{_sysconfdir}/profile.d
-%attr(755,root,root) %{_sysconfdir}/profile.d/*.sh
-%attr(755,root,root) %{_sysconfdir}/profile.d/*.csh
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/passwd
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/group
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/services
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/host.conf
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/hosts
-%config(noreplace,missingok) %verify(not md5 size mtime) %{_sysconfdir}/motd
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/profile
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/protocols
-%config(noreplace,missingok) %verify(not md5 size mtime) %{_sysconfdir}/filesystems
+%doc ChangeLog
+%attr(755,root,root) %{_sbindir}/joinpasswd
+%attr(755,root,root) %{_sbindir}/postshell
+%attr(755,root,root) %{_sbindir}/update-fstab
+%attr(755,root,root) /etc/profile.d/*.sh
+%attr(755,root,root) /etc/profile.d/*.csh
+%dir /etc/profile.d
+%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/env.d/*
+%dir %{_sysconfdir}/env.d
+%dir %{_sysconfdir}/shrc.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fstab
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/group
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/host.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/hosts
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/passwd
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/profile
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/protocols
+%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/secure*
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/services
+%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/filesystems
+%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/motd
+%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/resolv.conf
 %ghost %{_sysconfdir}/shells
-
-%attr(600,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/secure*
This page took 0.041725 seconds and 4 git commands to generate.