2 # rpm package description file for building
3 # Copyright (C) 2002-2005 Jan Kratochvil <project-captive@jankratochvil.net>
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; exactly version 2 of June 1991 is required
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 # Build fully statically.
20 # /usr/local/staticbuild is required to contain static libraries.
24 # Temporary cludge before full 'devel' package gets deployed
25 %define _unpackaged_files_terminate_build 0
27 Summary: Microsoft Windows platform filesystem access.
29 Name: @PACKAGE@-static
36 Group: System Environment/Base
37 Packager: Jan Kratochvil <lace@jankratochvil.net>
38 Source: http://www.jankratochvil.net/project/captive/dist/@PACKAGE@-@VERSION@.tar.gz
40 BuildRoot: /var/tmp/@PACKAGE@-@VERSION@-%{release}-root
41 BuildRequires: ORBit2-devel
42 # >= 2.7.0 due to --with-orbit-line=link
43 # >= 2.8.3 due to Mandrake-9.2 bugreport.
45 Requires: ORBit2 >= 2.8.3
47 BuildRequires: openssl-devel
51 BuildRequires: gnome-vfs2-devel
55 BuildRequires: libxml2-devel
63 BuildRequires: glib2-devel
67 BuildRequires: readline-devel
71 BuildRequires: gcc >= 3.0
73 BuildRequires: fuse-devel
74 BuildRequires: ntfsprogs-devel >= 1.8.0
75 BuildRequires: libgnomeui-devel
77 Obsoletes: @PACKAGE@-lufs
78 Obsoletes: @PACKAGE@-install
79 # FIXME: ?: ntfsprogs-gnomevfs < 1.1
81 Conflicts: @PACKAGE@-static
85 Existing binary Microsoft Windows file system drivers were exploited
86 for accessing drives with possibly proprietary file system data structures.
87 Open file system API is provided to access these file system drivers.
88 Microsoft Windows system components required by these drivers
89 were analyzed and successfuly emulated in the GNU/Linux operating system.
91 The implementation allows applications running under the GNU/Linux operating
92 system to access NTFS drives. File system driver compatibility with VFAT,
93 ISO9660 and EXT2 is also provided.
95 http://www.jankratochvil.net/project/captive/
97 This packaging is a standalone static version, no other packages are needed.
102 Summary: FUSE module for Microsoft Windows platform filesystem access.
103 Group: System Environment/Base
104 Requires: captive = %{PACKAGE_VERSION}
105 BuildRequires: fuse-devel
106 Requires: fuse fuse-libs
109 FUSE is a userspace filesystem framework.
111 Package provides FUSE filesystem module to access Microsoft Windows platform
112 filesystems such as NTFS. Use filesystem type 'captive-ntfs' for NTFS disks.
115 Summary: Instant installer for Microsoft Windows platform filesystem access.
116 Group: System Environment/Base
117 Requires: captive-fuse = %{PACKAGE_VERSION}
118 # Versions before 1.8.0 were too buggy
119 BuildRequires: ntfsprogs-devel >= 1.8.0
120 # 'PreReq' needed for Mandrake-9.1 otherwise '%preun install' fails
121 # during 'rpm -e ntfsprogs captive-install':
122 PreReq: ntfsprogs >= 1.8.0
123 Requires: ntfsprogs >= 1.8.0
124 Requires: ntfsprogs-gnomevfs
125 Obsoletes: gnome-vfs-httpcaptive
126 BuildRequires: gnome-vfs2-devel
128 BuildRequires: libgnomeui-devel
130 BuildRequires: readline-devel
132 BuildRequires: libxml2-devel >= 2.4.29
133 Requires: libxml2 >= 2.4.29
136 Package provides easy enough unattended installation of Microsoft Windows
137 platform filesystem access. Installer finds available NTFS partitions and
138 tries to acquire needed Microsoft Windows filesystem driver files.
140 You may need to run 'captive-install-acquire' to answer several questions.
141 NTFS disks will become mount(8)able at directories: /mnt/captive-VOLUME_NAME
146 #% Summary: Microsoft Windows platform filesystem access development support.
147 #% Group: Development/System
148 #% Requires: surprise = %{PACKAGE_VERSION}
150 #% %description devel
151 #% Development package containing libraries for static linking together with
152 #% header files needed for any linking.
154 #% Microsoft Windows platform filesystem access.
158 %setup -n @PACKAGE@-%{version}
161 # Never disable debug for captive, see FAQ
162 # "How to check valid input arguments? Invalid processing state assumptions?"
167 # 'define' of rpm(1) does not accept line-continuation backslashes ('\').
169 export CPPFLAGS="-I/usr/local/staticbuild/include/gnome-vfs-module-2.0"
171 --disable-shared --enable-static \
172 --enable-standalone \
173 --enable-standalone-fonts=%{_datadir}/@PACKAGE@/fonts \
176 --enable-shared --disable-static \
177 --disable-standalone \
178 --disable-standalone-fonts \
180 --disable-standalone-yum \
182 --disable-bug-replay \
185 --enable-install-pkg \
186 --enable-sandbox-setuid=@PACKAGE@ \
187 --enable-sandbox-setgid=@PACKAGE@ \
188 --enable-sandbox-chroot=%{_var}/lib/@PACKAGE@ \
190 --enable-sbin-mountdir=/sbin \
191 --enable-sbin-mount-fs=ntfs:fastfat:cdfs:ext2fsd \
192 --with-initddir=%{_initrddir} \
194 --with-orbit-line=link
196 # --enable-standalone-yum=%{_sysconfdir}/yum.repos.d
204 make DESTDIR=$RPM_BUILD_ROOT install-strip
207 rm -rf $RPM_BUILD_ROOT
215 /usr/sbin/groupadd -r fuse 2>/dev/null || \
216 /usr/sbin/groupadd fuse 2>/dev/null || \
222 /usr/sbin/groupadd -r captive 2>/dev/null || \
223 /usr/sbin/groupadd captive 2>/dev/null || \
225 /usr/sbin/useradd -r -c "Captive Sandbox" -s /sbin/nologin -g captive -d %{_var}/lib/@PACKAGE@ captive 2>/dev/null || \
226 /usr/sbin/useradd -c "Captive Sandbox" -s /sbin/nologin -g captive -d %{_var}/lib/@PACKAGE@ captive 2>/dev/null || \
232 /usr/lib/lsb/install_initd @PACKAGE@ 2>/dev/null || \
233 /sbin/chkconfig --add @PACKAGE@
234 touch %{_var}/lock/subsys/@PACKAGE@
239 %{_sbindir}/captive-install-fstab --add
240 %{_sbindir}/captive-install-acquire --text --scan-disks-quick
247 # Only on real erase, not on upgrade:
249 /usr/lib/lsb/remove_initd @PACKAGE@ 2>/dev/null || \
250 /sbin/chkconfig --del @PACKAGE@
251 %{_initrddir}/@PACKAGE@ stop
252 rm -f %{_var}/lock/subsys/@PACKAGE@
258 # Only on real erase, not on upgrade:
260 %{_sbindir}/captive-install-fstab --remove
265 # Only on real erase, not on upgrade:
267 # Remove stale sandbox chroot directories owned by 'captive.captive':
268 rm -rf %{_var}/lib/@PACKAGE@/s-*
269 rm -rf %{_var}/lib/@PACKAGE@/tmp/*
273 %defattr(-,root,root)
274 %doc README NEWS AUTHORS THANKS TODO
276 %{_libdir}/lib@PACKAGE@-@VERSION@.so
277 %{_libdir}/gnome-vfs-2.0/modules/lib@PACKAGE@-gnomevfs-@VERSION@.so
278 %{_libdir}/gnome-vfs-2.0/modules/lib@PACKAGE@-gnomevfs.so
280 %attr(644,root,root) %{_mandir}/man?/@PACKAGE@.*
281 %{_bindir}/@PACKAGE@-cmdline
282 %attr(644,root,root) %{_mandir}/man?/@PACKAGE@-cmdline.*
283 %attr(4755,root,root) %{_libexecdir}/@PACKAGE@-sandbox-server
284 %attr(644,root,root) %{_mandir}/man?/@PACKAGE@-sandbox-server.*
285 %config %{_sysconfdir}/w32-mod-id.captivemodid.xml
287 %config %{_sysconfdir}/gnome-vfs-2.0/modules/@PACKAGE@.conf
289 # %config %{_sysconfdir}/yum.repos.d/*
290 %{_datadir}/locale/*/LC_MESSAGES/@PACKAGE@.mo
291 %{_var}/lib/@PACKAGE@
296 %defattr(-,root,root)
297 %{_initrddir}/@PACKAGE@
298 /sbin/mount.@PACKAGE@
299 /sbin/mount.@PACKAGE@-*
300 %attr(644,root,root) %{_mandir}/man?/mount.@PACKAGE@.*
302 %attr(4754,root,fuse) %{_libexecdir}/@PACKAGE@-fusermount
308 %defattr(-,root,root)
309 %{_sbindir}/captive-install-fstab
310 %attr(644,root,root) %{_mandir}/man?/captive-install-fstab.*
311 %{_sbindir}/captive-install-acquire
312 %attr(644,root,root) %{_mandir}/man?/captive-install-acquire.*
314 %{_datadir}/@PACKAGE@
318 # %defattr(-,root,root)
320 # /usr/include/@PACKAGE@
321 # /usr/share/aclocal/*
322 # %{_libdir}/gnome-vfs-2.0/modules/libcaptive-gnomevfs.la
325 # ###for --disable-shared/(--enable-static-link disable):