"priority"=>666,
"summary"=>"The first free NTFS read/write filesystem for GNU/Linux",
"license"=>"GPL",
- "maintenance"=>"update",
+ "maintenance"=>"active",
"language"=>"i386 asm, C, Perl",
"icon"=>"captive-install-acquire-icon.png",
"cvs-of main tree"=>"captive",
"cvs-of branched ReactOS subdir"=>"reactos:captive",
- "cvs-of branched LUFS"=>"lufs:captive",
- "cvs-of 'httpcaptive://' method"=>"gnome-vfs-httpcaptive:captive",
- "cvs-of 'libntfs://' method"=>"ntfsprogs-gnomevfs",
"description"=>sub { return <<"HERE"; },
<p>Project implements the first full read/write free access to NTFS disk drives.
You can mount your Microsoft Windows NT, 200x or XP partition as
.'<td>• '.a_href('#seealso','See Also').'</td>'
.'</tr></table>'
},
+ "project::Lib-init-hook"=>sub {
+ if (my $file=$W->{"args"}{"file"}) {
+ My::Web::header("Refresh"=>"1;url=".path_web("./dist/$file","abs"=>1));
+ }
+ },
);
&{$_}() for reverse @{$W->{"footing_delimit_sub_push"}};
-my %version=(
- map(($_=>["1.1.5","0"]),qw(captive captive-lufs captive-install)),
- "lufs"=>["0.9.7","1captive8"],
- );
+my $version="1.1.6.1";
+my $revision="0";
+
+Wrequire 'project::captive::DriverSurvey';
+my $survey_want=1;
+$survey_want=0 if $W->{"args"}{"file"};
+$survey_want=0 if project::captive::DriverSurvey::cookie();
+
+local *download=sub($)
+{
+my($name)=@_;
+
+ # Do not: ,"attr"=>'target="_blank"'
+ # as it would require Framed XHTML.
+ my $real="dist/$name";
+ return a_href './DriverSurvey.pm?file='.$name,$name,"size"=>$real
+ if $survey_want;
+ return a_href $real,$name,"size"=>1;
+};
print <<"HERE";
<h2 id="download">Download</h2>
<td>
<p>RPM i386 binary<br />tested for distributions:</p>
<table border="0"><tr><td align="left"><ul>
- <li>Red Hat 9 Shrike</li>
- <li>Red Hat 8 Psyche</li>
- <li>SuSE 9.0</li>
- <li>SuSE 9.1</li>
- <li>Mandrake 9.1 Bamboo</li>
+ <li>Fedora Core 4</li>
</ul></td></tr></table>
</td>
- <td>@{[ a_href 'dist/captive-static-'.$version{"captive"}[0].'-'.$version{"captive"}[1].'.i386.rpm',
- undef(),"size"=>1,"basename"=>1 ]}</td>
+ <td>@{[ download("captive-static-$version-$revision.i386.rpm") ]}</td>
</tr>
<tr>
<td>
<p>.tar.gz i386 binary<br />(for non-RPM distributions)</p>
</td>
- <td>@{[ a_href 'dist/captive-static-'.$version{"captive"}[0].'.tar.gz',undef(),"size"=>1,"basename"=>1 ]}</td>
+ <td>@{[ download("captive-static-$version.tar.gz") ]}</td>
</tr>
<tr>
<td>Source archives</td>
<td>@{[ a_href 'CVS.pm#source','download link' ]}</td>
</tr>
</table>
+HERE
-<h4>Development Status</h4>
-
-<p>Project is no longer developed. The key functionality is reached
-by the latest released version. All its resources are available
-@{[ a_href 'CVS.pm#source','here' ]} for download.</p>
-
-<h4>Known Issue</h4>
-
-<p>Captive was written to interface with the Linux kernel via
-@{[ a_href 'http://lufs.sourceforge.net/lufs/','LUFS' ]}.
-Unfortunately, this project is no longer being maintained by its author.
-Mounting of NTFS devices usually works, but is no longer supported by the
-author of Captive. Always unmount the device by umount(8) command before shutting
-down your GNU/Linux system.</p>
-
-<p>A port of Captive to the newer
-@{[ a_href 'http://fuse.sourceforge.net/','FUSE' ]}
-interface has not yet been implemented.
-There is an experimental LUFS-FUSE bridge called
-@{[ a_href 'http://sourceforge.net/project/showfiles.php?group_id=121684','lufis' ]}
-that can be used in the meanwhile.
-Also, the captive-cmdline(1) interface will get around any kernel compatibility
-problems.</p>
+if (!$survey_want) {
+ print <<"HERE";
+<p>@{[ a_href 'DriverSurvey.pm','Linux Drivers Availability survey' ]} link
+- if you already answered before.</p>
+HERE
+ }
+print <<"HERE";
@{[ vskip "3ex" ]}
<h2 id="news">NEWS</h2>
<dl>
- <dt>captive-1.1.5 (2004-01-18) [@{[ a_href $W->{"project_viewcvs"}.'/*checkout*/captive/NEWS?rev=HEAD','archive' ]}]</dt>
+ <dt>captive-1.1.6.1 (2005-12-29) [@{[ a_href $W->{"project_viewcvs"}.'captive/NEWS?rev=HEAD','archive' ]}]</dt>
<dd>
<ul>
- <li>Fixed ignorance of the file truncate operation via LUFS (Matthias R.)</li>
- <li>Support for reading of HIDDEN SYSTEM NTFS files via LUFS</li>
- <li>Fixed refusal to mount some NT4.0 NTFSes (Nerijus Baliunas, Scott Chevalley)</li>
- <li>Support <code>/dev/ataraid</code> devices (Ivan Tonov)</li>
+ <li>New FUSE interface, deprecated LUFS - improve compatibility of Linux kernel</li>
+ <li>Provided script for proper NTFS unmounts during GNU/Linux OS shutdown</li>
+ <li>Updates for recent Microsoft installed binaries and files for download</li>
+ <li>Hopefully survives reading of many small files like on XMMS scanning</li>
+ <li>Improved recent GNU/Linux build environment compatibility</li>
</ul>
</dd>
- <dt>lufs-0.9.7captive8 (2003-12-06) [@{[ a_href $W->{"project_viewcvs"}.'/*checkout*/lufs/NEWS.captive?rev=1.1.2.11','archive' ]}]</dt>
</dl>
@{[ vskip "3ex" ]}
available Microsoft Windows drivers versions. Now you can execute:</p>
<blockquote>
- <p class="quote" style="white-space: pre;"
-># captive-cmdline \\
- --load-module=/var/lib/captive/ntoskrnl.exe \\
- --filesystem=/var/lib/captive/ntfs.sys \\
- --sandbox-server=/usr/sbin/captive-sandbox-server \\
- --bug-pathname=/tmp/captive-bug-%FT%T.captivebug.xml.gz \\
- --disk --rw /dev/hda1
-# Now you can use ftp(1)-like command-line interface for the NTFS disk access.</p
- >
- <p>(Backslash end-of-line characters '\\' to be omitted for line continuation.)</p>
+ <p class="quote">
+ # mkdir /mnt/dosc<br />
+ # mount -t captive-ntfs /dev/hda1 /mnt/dosc
+ </p>
</blockquote>
<h2>Overview</h2>
-<p>Any errors from '<b>captive-lufs</b>' are written to '<b>/var/log/messages</b>'.</p>
+<p>Any errors from '<b>captive-fuse</b>' are written to '<b>/var/log/messages</b>'.</p>
<p>Needed drivers (at least ntoskrnl.exe+ntfs.sys) must be in '<b>/var/lib/captive</b>'.</p>
<p>'<b>captive</b>' package creates '<b>captive</b>' user and '<b>captive</b>' group on your system.</p>
-<h2>LUFS Kernel Driver Module</h2>
-
-<p>@{[ a_href 'http://lufs.sourceforge.net/lufs/','LUFS' ]} (Linux Userland File
-System) needs Linux kernel module driver (<i>lufs.o</i>) compatible with your
-running Linux kernel. The binary driver is supplied already precompiled for many
-Linux kernel versions in the binary packages above (<b>.i386.rpm</b> and
-<b>_i386.deb</b> archives).</p>
+<h2>FUSE Kernel Driver Module</h2>
-<p>If you cannot <b>mount</b>(8) your NTFS filesystem you should run <span
-class="quote">/usr/share/lufs/prepmod</span> to see the reasons. It is always
-recommended to upgrade to the latest stable kernel supplied by your GNU/Linux
-distribution vendor. You may need to install package
-<b>kernel-source</b> (Red Hat) or <b>kernel-headers</b> (Debian) matching your
-Linux kernel version (<b>rpm -q kernel</b>) and re-run <span
-class="quote">/usr/share/lufs/prepmod</span>.</p>
+<p>@{[ a_href 'http://fuse.sourceforge.net/','FUSE' ]} (Filesystem in Userspace)
+needs Linux kernel module driver (<i>fuse.ko</i>) compatible with your
+running Linux kernel.</p>
-<p><b>WARNING:</b> This 'captive' package may modify your Linux kernel
-sources matching your currently running kernel version. These minor
-modifications may include a dependencies rebuild, compiling build tools, fixes of
-several include files, etc. All the modifications are done at the mount(8) time
-by the automatically executed <span class="quote">/usr/share/lufs/prepmod</span> script.
-This behavior was not present in the original
-@{[ a_href 'http://lufs.sourceforge.net/lufs/','LUFS' ]} distribution
-by @{[ a_href 'http://www.malinux.net/main/','Florin Malita' ]}.</p>
+<p>If you cannot <b>mount</b>(8) your NTFS filesystem you should check your
+Linux kernel is based on version at least 2.6.14 where
+@{[ a_href 'http://fuse.sourceforge.net/','FUSE' ]} got imported. You should
+also check the module is enabled or even built-in.</p>
HERE
my @mans=(
'captive'=>[7,'Microsoft Windows NT kernel emulation for NTFS disk access'],
'mount.captive'=>[8,'mount(8) interface for NTFS disk access'],
- 'lufs-captivefs'=>[7,'Linux Userland File System module for NTFS as filesystem'],
'captive-cmdline'=>[1,'Command-line client for captive(7) NTFS disk access'],
### 'captive-sandbox-server'=>[1,'Security+safety wrapper for NTFS disk access'],
'captive-install-acquire'=>[1,'Find MS Windows XP driver files for NTFS'],