X-Git-Url: http://git.jankratochvil.net/?a=blobdiff_plain;f=project%2Fcaptive%2FIndex.html.pl;h=7d0dde42e4c08015eadc6a6d9e5adf1a8d71103e;hb=9033b1684bac08f38562d0c2b17e3522d0863ced;hp=bc825d9ff8435d386c643e54641f59b4e2a35d21;hpb=2621bfaf2cf08dde0a9899687a88e9246abb3aca;p=www.jankratochvil.net.git diff --git a/project/captive/Index.html.pl b/project/captive/Index.html.pl index bc825d9..7d0dde4 100755 --- a/project/captive/Index.html.pl +++ b/project/captive/Index.html.pl @@ -27,33 +27,37 @@ use warnings; BEGIN{ open F,"Makefile"; our $top_dir=pop @{[split /\s/,(grep /^top_srcdir/,)[0]]}; eval "use lib '$top_dir'"; close F; } use My::Web; -use My::Project; -use project::captive::ListItem; +Wuse 'My::Project'; +Wuse 'project::captive::ListItem'; my $W=My::Project->init_project( "__PACKAGE__"=>__PACKAGE__, "ListItem"=>\@project::captive::ListItem::ListItem, + "no_project_data"=>1, "head_css"=>" .reqpkg { font-style: italic; } .stuff { font-style: italic; font-size: larger; margin-left: 20%; margin-right: 10%; } .re { font-style: italic; } +table.mailman > * /* FIXME: What is it? */ > tr > th, +table.mailman > * /* FIXME: What is it? */ > tr > td { padding: 1ex; text-align: center; } ", + "no_job"=>1, ); -print vskip("10ex")."

!!! DO NOT DISCLOSE - **************** !!!

\n".vskip("10ex"); +print vskip("10ex")."

!!! DO NOT DISCLOSE !!!

\n".vskip("10ex"); print <<"HERE";

The First Read/Write NTFS for Free Operating Systems

-

The First Free Microsoft Windows Kernel API Emulation

+

The First Open Source MS-Windows Kernel API for Free OS

HERE my @stuff=( "A lot of people claim themselves as Windows Programmers.\n" ." Now I can finally join them - I also wrote my own Microsoft Windows.", "Why do they need ".a_href('http://www.winsupersite.com/reviews/winserver2k3_gold2.asp','5000 developers') - ." to write Microsoft Windows when it is just One Man Show task?", + ." to write Microsoft Windows when it can be just One Man Show?", @@ -61,25 +65,15 @@ my @stuff=( ." hal.dll.", ); +print rightimg((map("

$_

\n",($stuff[int rand @stuff])))[0], + 'captive-install-acquire-small','[ Captive Microsoft Windows Drivers Acquire Illustration ]', + "a_href_img"=>'captive-install-acquire'); print <<"HERE"; - - - - - - - - -
- @{[ map("

$_

\n",($stuff[int rand @stuff])) ]} -
@{[ a_href My::Web::img_src('captive-install-acquire'), - img('captive-install-acquire-small','[ Captive Microsoft Windows Drivers Acquire Illustration ]') ]}
- @{[ vskip "3ex" ]} - +
Distribution
@@ -95,8 +89,8 @@ my %reqpkg=( 3=>[qw(glib2 gnome-vfs2 ORBit2 libxml2 openssl popt readline)], ); my %version=( - map(($_=>["0.9.1","0"]),qw(captive captive-lufs captive-install)), - "lufs"=>["0.9.6","1captive2"], + map(($_=>["0.9.7","0"]),qw(captive captive-lufs captive-install)), + "lufs"=>["0.9.6","1captive5"], "gnome-vfs-httpcaptive"=>["2.3.8captive2","0"], "ntfsprogs"=>["200309071734","1captive1"], "ntfsprogs-gnomevfs"=>["1.0.1","0"], @@ -121,15 +115,25 @@ my %pkg_nosrc=(map(($_=>1),qw( captive-lufs captive-install ))); + +my $case; +my $a_href_arch=sub ($$%) +{ +my($file_base,$text,%args)=@_; + + $text=~s/[._]\D.*$// if $case!=1 && $text!~/^[.]/; + return a_href $file_base,$text,"size"=>($case==1),%args; +}; + my @dist=( { "name"=>"Red Hat 9
Shrike i386", "out"=>sub { my($pkg,$version_base,$version_ext)=@_; my $file="$pkg-$version_base-$version_ext.i386.rpm"; - my $r=a_href "dist/$file",$file; + my $r=&$a_href_arch("dist/$file",$file); (my $filedev=$file)=~s/^\Q$pkg\E-/${pkg}-devel-/; - $r.="
".a_href("dist/$filedev",$filedev) if $has_devel{$pkg}; + $r.="
".&$a_href_arch("dist/$filedev",$filedev) if $has_devel{$pkg}; return $r; }, }, @@ -138,12 +142,12 @@ my @dist=( "out"=>sub { my($pkg,$version_base,$version_ext)=@_; my $file="$pkg-$version_base-$version_ext".(!$has_rh8{$pkg} ? "" : "rh8").".i386.rpm"; - my $r=a_href "dist/$file",$file; + my $r=&$a_href_arch("dist/$file",$file); (my $filedev=$file)=~s/^\Q$pkg\E-/${pkg}-devel-/; - $r.="
".a_href("dist/$filedev",$filedev) if $has_devel{$pkg}; + $r.="
".&$a_href_arch("dist/$filedev",$filedev) if $has_devel{$pkg}; if ($pkg eq "captive-install") { - for (qw(libxml2-2.5.4-1.i386.rpm libxml2-python-2.5.4-1.i386.rpm)) { - $r.="
".a_href('ftp://ftp.redhat.com/pub/redhat/linux/9/en/os/i386/RedHat/RPMS/'.$_,$_)." of Red Hat 9"; + for (qw(libxml2-2.5.4-1.i386.rpm libxml2-python-2.5.4-1.i386.rpm libxml2-devel-2.5.4-1.i386.rpm)) { + $r.="
".&$a_href_arch('ftp://ftp.redhat.com/pub/redhat/linux/9/en/os/i386/RedHat/RPMS/'.$_,$_)." of Red Hat 9"; } } return $r; @@ -154,52 +158,40 @@ my @dist=( "out"=>sub { my($pkg,$version_base,$version_ext)=@_; my $file="$pkg-$version_base-$version_ext".(!$has_mdk91{$pkg} ? ".i386.rpm" : "mdk91.i586.rpm"); - my $r=a_href "dist/$file",$file; + my $r=&$a_href_arch("dist/$file",$file); (my $filedev=$file)=~s/^\Q$pkg\E-/${pkg}-devel-/; - $r.="
".a_href("dist/$filedev",$filedev) if $has_devel{$pkg}; + $r.="
".&$a_href_arch("dist/$filedev",$filedev) if $has_devel{$pkg}; return $r; }, }, { - "name"=>"Red Hat .src.rpm
(of 9 - Shrike)", - "out"=>sub { - my($pkg,$version_base,$version_ext)=@_; - return () if $pkg_nosrc{$pkg}; - my $file="$pkg-$version_base-$version_ext.src.rpm"; - return $file,$file; - }, - }, - { "name"=>"Debian GNU/Linux
'unstable' i386", "out"=>sub { my($pkg,$version_base,$version_ext)=@_; $version_ext=~s/^\d+//; my $file="${pkg}_$version_base".($version_ext=~/^\d+$/ ? "" : $version_ext)."_i386.deb"; - my $r=a_href "dist/$file",$file; + my $r=&$a_href_arch("dist/$file",$file); (my $filedev=$file)=~s/^\Q$pkg\E_/${pkg}-dev_/; - $r.="
".a_href("dist/$filedev",$filedev) if $has_devel{$pkg}; + $r.="
".&$a_href_arch("dist/$filedev",$filedev) if $has_devel{$pkg}; return $r; }, }, { - "name"=>"Debian GNU/Linux
sources", + "name"=>"Sources (.tar.gz)", "out"=>sub { my($pkg,$version_base,$version_ext)=@_; return () if $pkg_nosrc{$pkg}; $version_ext=~s/^\d+//; - my $file="${pkg}_$version_base".($version_ext=~/^\d+$/ ? "" : $version_ext); - return CGI::escapeHTML($file).":" - .' ' .a_href("dist/$file.dsc",".dsc","size"=>0) - .' '.a_href("dist/$file.tar.gz",".tar.gz"); + my $file="$pkg-$version_base".($version_ext=~/^\d+$/ ? "" : $version_ext).".tar.gz"; + return $file,$file; }, }, { - "name"=>"Sources (.tar.gz)", + "name"=>"Sources (.src.rpm)
(Red Hat 9 - Shrike)", "out"=>sub { my($pkg,$version_base,$version_ext)=@_; return () if $pkg_nosrc{$pkg}; - $version_ext=~s/^\d+//; - my $file="$pkg-$version_base".($version_ext=~/^\d+$/ ? "" : $version_ext).".tar.gz"; + my $file="$pkg-$version_base-$version_ext.src.rpm"; return $file,$file; }, }, @@ -208,11 +200,12 @@ my @dist=( for my $dist (@dist) { print ""; print ""; - for my $case (1,2,3) { + for my $casel (1,2,3) { + $case=$casel; print ""; } @@ -225,16 +218,33 @@ HERE print vskip "3ex"; print <<"HERE"; -

Installation notes

+

Installation Notes

You should first run captive-install-acquire command to check your available Microsoft Windows drivers versions. Now you can execute:

-

# mount -t captive-ntfs /dev/hda1 /mnt/dosc

+

+ # mkdir /mnt/dosc
+ # mount -t captive-ntfs /dev/hda1 /mnt/dosc +

-

Package version conflicts

+ +

Overview

+ +

'captive' is the base package. It contains debugging 'captive-cmdline' client.
+'captive-lufs' permits mounting NTFS as regular filesystem. It needs 'lufs'.
+'lufs' is a daemon to enable userland process to provide filesystem functions.

+ +

Any errors from 'captive-lufs' are written to '/var/log/messages'.

+ +

Needed drivers (at least ntoskrnl.exe+ntfs.sys) must be in '/var/lib/captive'.

+ +

'captive' package creates 'captive' user and 'captive' group on your system.

+ + +

Package Version Conflicts

@@ -256,7 +266,7 @@ your convenience.

-

LUFS kernel driver module

+

LUFS Kernel Driver Module

@{[ a_href 'http://lufs.sourceforge.net/lufs/','LUFS' ]} (Linux Userland File System) needs Linux kernel module driver (lufs.o) compatible with your @@ -273,48 +283,101 @@ Linux kernel version (rpm -q kernel) and re-run /usr/share/lufs/prepmod.

-
Distribution Installation Case #1
Filesystem and installer
(recommended)
Installation Case #2
Manual installation
(filesystem, expert user)
Installation Case #3
Command-line client
(no filesystem access)
".$dist->{"name"}.""; print join("
",map({ my $pkg=$_; my($file,$text)=&{$dist->{"out"}}($pkg,@{$version{$pkg}}); - (!defined $text ? ($file) || () : (a_href("dist/$file",$text))); + (!defined $text ? ($file) || () : (&$a_href_arch("dist/$file",$text))); } @{$pkg{$case}})); print "
- - - - - - -
-

The First Free Microsoft Windows Kernel API Emulation

- -

Compatibility with existing binary Microsoft Windows file system drivers was - reached. Microsoft Windows kernel system components required by these drivers - were analyzed and successfuly emulated in the GNU/Linux operating system. - Project brings Microsoft Windows kernel emulation framework to support even - other types Microsoft Windows drivers in the future. - @{[ a_href 'http://www.reactos.com/','ReactOS' ]} - code base made a big asset for this functionality.

-
@{[ a_href 'http://www.reactos.com/',img('reactos','ReactOS') ]}
+HERE + + +print rightimg <<"HERE",'reactos','ReactOS',"a_href"=>'http://www.reactos.com/'; +

The First Open Source MS-Windows Kernel API for Free OS

+ +

Compatibility with existing binary Microsoft Windows file system drivers was + reached. Microsoft Windows kernel system components required by these drivers + were analyzed and successfuly emulated in the GNU/Linux operating system. + Project brings Microsoft Windows kernel emulation framework to support even + other types Microsoft Windows drivers in the future. + @{[ a_href 'http://www.reactos.com/','ReactOS' ]} + code base made a big asset for this functionality.

+HERE + + +my @lists=qw(captive-announce-list captive-list captive-devel-list); + +print <<"HERE"; + +

Mailing Lists

+ +
+ + @{[ map("",@lists) ]} + + @{[ map({ ""; } @lists) ]} + @{[ map({ ""; } @lists) ]} + @{[ + map((''),@lists) + ]} + +
$_
New versions announcements
+ (low traffic, recommended)
User supportDevelopment
".a_href(&{$W->{"mailman_url_sub"}}()."/listinfo/$_",'Mailman Infopage')."
".a_href(&{$W->{"pipermail_url_sub"}}()."/$_",'Archive')."
Subscribe?
+ + + + +
Email address:
Your new Mailman password:
Reenter your password:
+

+
+ +
@{[ vskip "3ex" ]} -

See also

+

See Also

@{[ vskip "3ex" ]}

Why did I install Microsoft Windows and wrote such disgusting piece of code?
- I expect @{[ a_href $W->{"top_dir"}."/CV.html.pl","yet another challenging task" ]}, ! + Expecting @{[ a_href $W->{"resume_url"},"yet another challenging task" ]}!

HERE