Sisyphus
: 1 2023 | : 18631 | : 37810786
en ru br
ALT
4.0: 1.1.7-alt3
3.0: 1.1.5-alt3
www.altlinux.org/Changes

:: /
: captive

             Sources      Gear   Bugs and FR  Repocop 

# -*- coding: utf-8 -*-

%def_enable gtk_doc
%set_verify_elf_method textrel=relaxed

Name: captive
Version: 1.1.5
Release: alt3

Summary: Framework for accessing filesystems via Microsoft (R) Windows (TM) binary drivers
Summary(ru_RU.UTF-8): Библиотека для доступа к файловым системам при помощи драйверов из Microsoft (R) Windows (TM)
License: GPL
Group: System/Kernel and hardware
Url: http://www.jankratochvil.net/project/captive/
Requires: libreadline >= 4.3-alt5
BuildRequires: libntfs-devel >= 1.8.0
BuildRequires: libxml2-devel >= 2.5.9
BuildRequires: libssl-devel libreadline-devel libtinfo-devel gnome-vfs2-devel libpopt-devel zlib-devel

%if_enabled gtk_doc
BuildRequires: gtk-doc > 0.10
%endif

Source0: %name-%version.tar.bz2
Source1: mount.captive.in
Source2: captive.init
Patch0: captive-1.1.5-alt-procaccess.patch
Patch1: captive-1.1.5-alt-nonroot-install.patch
Patch2: captive-1.1.5-alt-tinfo.patch
Patch3: captive-1.1.5-alt-varlib.patch
Patch4: captive-1.1.5-alt-make_order.patch

%description
This is a framework for accessing filesystems via
Microsoft(R) Windows(TM) binary drivers

Existing binary Microsoft(R) Windows(TM) file system drivers are exploited
for accessing drives with possibly proprietary file system data structures.
Open file system API is provided to access these file system drivers.
Microsoft (R) Windows (TM) system components required by these drivers
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.

%description -l ru_RU.UTF-8
Набор средств для доступа к файловым системам при помощи двоичных
драйверов из Microsoft(R) Windows(TM)

Для доступа к устройствам с различными, в том числе, проприетарными
файловыми системами в captive используются существующие драйвера
файловых систем для Microsoft(R) Windows(TM). Для взаимодействия с
этими драйверами предоставляется открытое файловое API. Системные
компоненты из Microsoft (R) Windows (TM), требуемые для
функционирования данных драйверов, успешно эмулируются средствами
captive в операционной системе GNU/Linux

Реализация позволяет приложениям, работающим под управлением
GNU/Linux, работать с данными на устройствах с NTFS. Предоставляется
также совместимость с драйверами для VFAT, ISO9660 и EXT2

%package lufs
Summary: captive module for LUFS
Summary(ru_RU.UTF-8): модуль captive для LUFS
Group: System/Kernel and hardware
Requires: captive = %version
BuildRequires: lufs-devel

%description lufs
captive is a framework for accessing Microsoft(R) Windows(TM)
filesystems using Windows binary drivers.

lufs is a pluggable hybrid kernel/userspace filesystem framework.

This package contains captive module for LUFS

%description lufs -l ru_RU.UTF-8
captive - это набор средств для доступа к файловым системам
Microsoft(R) Windows(TM) при помощи бинарных драйверов из Windows.

LUFS - это гибридная расширяемая среда для доступа к различным
файловым системам

Этот пакет содержит модуль captive для LUFS

%package install
Summary: captive install and configuration tools
Summary(ru_RU.UTF-8): средства установки и настройки captive
Group: System/Configuration/Hardware
Requires: captive = %version
BuildRequires: pkgconfig libgnomeui-devel gnome-vfs2-devel
%description install
captive is a framework for accessing Microsoft(R) Windows(TM)
filesystems using Windows binary drivers.

This package contains install and configuration tools for captive

%description install -l ru_RU.UTF-8
captive - это набор средств для доступа к файловым системам
Microsoft(R) Windows(TM) при помощи бинарных драйверов из Windows.

Средства для установки и настройки captive

%package devel
Summary: captive development files
Group: Development/C
Requires: captive = %version
%description devel
captive is a framework for accessing Microsoft(R) Windows(TM)
filesystems using Windows binary drivers.

This package contains files needed to depelop applications using captive API

%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1

%__cp -f %SOURCE1 src/client/lufs/

%build
%__libtoolize --copy --force
%__aclocal -I macros
%__automake
%__autoconf
%configure --enable-man-pages=yes \
--enable-sandbox-setuid=captive \
--enable-sandbox-setgid=captive \
--enable-bug-replay \
--enable-lufs=yes \
--enable-html-dir=%_docdir/HTML/%name-%version \
--with-readline=yes \
%if_enabled gtk_doc
--enable-gtk-doc
%else
--disable-gtk-doc
%endif
%make_build

%install
make DESTDIR=%buildroot install

# GTK-DOC docs are unusable ate the moment :-(

%__rm -rf %buildroot%_datadir/gtk-doc

%__mkdir_p %buildroot%_initdir
%__install -m0755 %SOURCE2 %buildroot%_initdir/%name

%find_lang captive

%pre
/usr/sbin/groupadd -r -f captive
/usr/sbin/useradd -r -n -g captive -d /var/lib/captive -s /dev/null -c captive \
captive >/dev/null 2>&1 ||:

%post
%post_ldconfig

%postun
%postun_ldconfig
# deletion, not upgrade
if [ $1 = 0 ]; then
 # Remove stale sandbox chroot directories owned by 'captive.captive':
 # Well, should we really do this?
 %__rm -rf %_var/lib/captive/s-*
 %__rm -rf %_var/lib/captive/tmp/*
fi

%post lufs
%post_service %name

%preun lufs
%preun_service %name

%post install
# Currently this utility is not completely backup-safe
# so disable it to avoid "surprises"
#%_sbindir/captive-install-fstab --add
# RPM installs should be unattended and non-interactive
%_sbindir/captive-install-acquire --text --scan-disks-quick

%preun install
if [ $1 = 0 ]; then
 %_sbindir/captive-install-fstab --remove
fi

%files -f captive.lang
%doc README NEWS AUTHORS THANKS TODO
%config %_sysconfdir/gnome-vfs-2.0/modules/captive.conf

%_libdir/libcaptive-*.so
%_bindir/captive-cmdline
%attr(04711,root,root) %_sbindir/captive-sandbox-server

%attr(0644,root,man) %_man1dir/captive-cmdline.1*
%attr(0644,root,man) %_man1dir/captive-sandbox-server.1*
%attr(0644,root,man) %_man7dir/captive.7*

%dir %_var/lib/captive
%attr(1777,root,root) %_var/lib/captive/tmp
%attr(0644,root,man) %_var/lib/captive/*.sys

%_libdir/gnome-vfs-2.0/modules/libcaptive-gnomevfs*.so

%files lufs
%config(noreplace) %_initdir/%name
%_libdir/liblufs-captivefs-*.so
%_libdir/liblufs-captivefs.so
/sbin/mount.captive*
%attr(0644,root,man) %_man7dir/lufs-captivefs.7*
%attr(0644,root,man) %_man8dir/mount.captive.8*

%files install
%config %_sysconfdir/w32-mod-id.captivemodid.xml
%_sbindir/captive-install*
%attr(0644,root,man) %_man1dir/captive-install-*.1*

%files devel
%_bindir/captive-bug-replay
%_includedir/captive
%_libdir/libcaptive.so

%changelog

changelog

 
: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
: Michael Shigorin