Fixed message typo.
[captive.git] / captive.spec.in
index 174056a..fb40beb 100644 (file)
@@ -17,7 +17,7 @@
 
 
 # Build fully statically.
-# /usr/local/devel-static is required to contain static libraries.
+# /usr/local/staticbuild is required to contain static libraries.
 %define static 1
 
 
@@ -34,14 +34,15 @@ Name: @PACKAGE@
 Version: @VERSION@
 Release: %{release}
 Group: System Environment/Base
-Packager: Jan Kratochvil <project-captive@jankratochvil.net>
+Packager: Jan Kratochvil <lace@jankratochvil.net>
 Source: http://www.jankratochvil.net/project/captive/dist/@PACKAGE@-@VERSION@.tar.gz
 License: GPL
 BuildRoot: /var/tmp/@PACKAGE@-@VERSION@-%{release}-root
 BuildRequires: ORBit2-devel
-# Due to --with-orbit-line=link
+# >= 2.7.0 due to --with-orbit-line=link
+# >= 2.8.3 due to Mandrake-9.2 bugreport.
 %if ! %{static}
-Requires: ORBit2 >= 2.7.0
+Requires: ORBit2 >= 2.8.3
 %endif
 BuildRequires: openssl-devel
 %if ! %{static}
@@ -75,7 +76,6 @@ BuildRequires: libgnomeui-devel
 Obsoletes: @PACKAGE@
 Obsoletes: @PACKAGE@-lufs
 Obsoletes: @PACKAGE@-install
-Obsoletes: gnome-vfs-httpcaptive
 # FIXME: ?: ntfsprogs-gnomevfs < 1.1
 %else
 Conflicts: @PACKAGE@-static
@@ -91,6 +91,8 @@ were analyzed and successfuly emulated in the GNU/Linux operating system.
 The implementation allows applications running under the GNU/Linux operating
 system to access NTFS drives. File system driver compatibility with VFAT,
 ISO9660 and EXT2 is also provided.
+
+http://www.jankratochvil.net/project/captive/
 %if %{static}
 This packaging is a standalone static version, no other packages are needed.
 
@@ -120,7 +122,7 @@ BuildRequires: ntfsprogs-devel >= 1.8.0
 PreReq: ntfsprogs >= 1.8.0
 Requires: ntfsprogs >= 1.8.0
 Requires: ntfsprogs-gnomevfs
-Requires: gnome-vfs-httpcaptive
+Obsoletes: gnome-vfs-httpcaptive
 BuildRequires: gnome-vfs2-devel
 Requires: gnome-vfs2
 BuildRequires: libgnomeui-devel
@@ -164,6 +166,7 @@ NTFS disks will become mount(8)able at directories: /mnt/captive-VOLUME_NAME
 %endif
 # 'define' of rpm(1) does not accept line-continuation backslashes ('\').
 %if %{static}
+export CPPFLAGS="-I/usr/local/staticbuild/include/gnome-vfs-module-2.0"
 %configure \
                --disable-shared --enable-static \
                --enable-standalone \
@@ -174,6 +177,7 @@ NTFS disks will become mount(8)able at directories: /mnt/captive-VOLUME_NAME
                --disable-standalone \
                --disable-standalone-fonts \
 %endif
+               --disable-standalone-yum \
                --with-readline \
                --disable-bug-replay \
                --disable-lufs \
@@ -189,6 +193,8 @@ NTFS disks will become mount(8)able at directories: /mnt/captive-VOLUME_NAME
                --disable-gtk-doc \
                --with-orbit-line=link
 
+#              --enable-standalone-yum=%{_sysconfdir}/yum.repos.d
+
 make
 %if %{static}
 ./build-static link
@@ -200,20 +206,35 @@ make DESTDIR=$RPM_BUILD_ROOT install-strip
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%pre
+
+%if ! %{static}
+%pre fuse
+%endif
+%if %{static}
+/usr/sbin/groupadd -r                                  fuse 2>/dev/null || \
+   /usr/sbin/groupadd                                  fuse 2>/dev/null || \
+   /usr/sbin/adduser --quiet --system --no-create-home fuse 2>/dev/null || \
+   echo >&2 "WARNING: Failed to create system group: fuse"
+%endif
+
 %post
 /sbin/ldconfig
-/usr/sbin/groupadd -r captive 2>/dev/null || \
-   /usr/sbin/groupadd captive 2>/dev/null || \
-        true
+/usr/sbin/groupadd -r                  captive 2>/dev/null || \
+   /usr/sbin/groupadd                  captive 2>/dev/null || \
+   /usr/sbin/addgroup --system --quiet captive 2>/dev/null || \
+   echo >&2 "WARNING: Failed to create system group: captive"
 /usr/sbin/useradd -r -c "Captive Sandbox" -s /sbin/nologin -g captive -d %{_var}/lib/@PACKAGE@ captive 2>/dev/null || \
    /usr/sbin/useradd -c "Captive Sandbox" -s /sbin/nologin -g captive -d %{_var}/lib/@PACKAGE@ captive 2>/dev/null || \
-   true
+   /usr/sbin/adduser --quiet --system --no-create-home            --home %{_var}/lib/@PACKAGE@ captive 2>/dev/null || \
+   echo >&2 "WARNING: Failed to create system user: captive"
 
 %if ! %{static}
 %post fuse
 %endif
 /usr/lib/lsb/install_initd @PACKAGE@ 2>/dev/null || \
                /sbin/chkconfig --add @PACKAGE@
+touch %{_var}/lock/subsys/@PACKAGE@
 
 %if ! %{static}
 %post install
@@ -224,21 +245,32 @@ rm -rf $RPM_BUILD_ROOT
 %preun
 
 %if ! %{static}
+%preun fuse
+%endif
+# Only on real erase, not on upgrade:
+if [ $1 = 0 ];then
+       /usr/lib/lsb/remove_initd @PACKAGE@ 2>/dev/null || \
+                       /sbin/chkconfig --del @PACKAGE@
+       %{_initrddir}/@PACKAGE@ stop
+       rm -f %{_var}/lock/subsys/@PACKAGE@
+fi
+
+%if ! %{static}
 %preun install
 %endif
-%{_sbindir}/captive-install-fstab --remove
+# Only on real erase, not on upgrade:
+if [ $1 = 0 ];then
+       %{_sbindir}/captive-install-fstab --remove
+fi
 
 %postun
 /sbin/ldconfig
-# Remove stale sandbox chroot directories owned by 'captive.captive':
-rm -rf %{_var}/lib/@PACKAGE@/s-*
-rm -rf %{_var}/lib/@PACKAGE@/tmp/*
-
-%if ! %{static}
-%postun fuse
-%endif
-/usr/lib/lsb/remove_initd @PACKAGE@ 2>/dev/null || \
-               /sbin/chkconfig --del @PACKAGE@
+# Only on real erase, not on upgrade:
+if [ $1 = 0 ];then
+       # Remove stale sandbox chroot directories owned by 'captive.captive':
+       rm -rf %{_var}/lib/@PACKAGE@/s-*
+       rm -rf %{_var}/lib/@PACKAGE@/tmp/*
+fi
 
 %files
 %defattr(-,root,root)
@@ -253,7 +285,11 @@ rm -rf %{_var}/lib/@PACKAGE@/tmp/*
 %attr(644,root,root) %{_mandir}/man?/@PACKAGE@-cmdline.*
 %attr(4755,root,root) %{_libexecdir}/@PACKAGE@-sandbox-server
 %attr(644,root,root) %{_mandir}/man?/@PACKAGE@-sandbox-server.*
+%config %{_sysconfdir}/w32-mod-id.captivemodid.xml
+%if ! %{static}
 %config %{_sysconfdir}/gnome-vfs-2.0/modules/@PACKAGE@.conf
+%endif
+# %config %{_sysconfdir}/yum.repos.d/*
 %{_datadir}/locale/*/LC_MESSAGES/@PACKAGE@.mo
 %{_var}/lib/@PACKAGE@
 
@@ -265,12 +301,14 @@ rm -rf %{_var}/lib/@PACKAGE@/tmp/*
 /sbin/mount.@PACKAGE@
 /sbin/mount.@PACKAGE@-*
 %attr(644,root,root) %{_mandir}/man?/mount.@PACKAGE@.*
+%if %{static}
+%attr(4754,root,fuse) %{_libexecdir}/@PACKAGE@-fusermount
+%endif
 
 %if ! %{static}
 %files install
 %endif
 %defattr(-,root,root)
-%config %{_sysconfdir}/w32-mod-id.captivemodid.xml
 %{_sbindir}/captive-install-fstab
 %attr(644,root,root) %{_mandir}/man?/captive-install-fstab.*
 %{_sbindir}/captive-install-acquire