summaryrefslogtreecommitdiffstats
path: root/extra
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2009-08-26 10:00:38 -0500
committer Eric Hameleers <alien@slackware.com>2018-05-31 22:41:17 +0200
commit5a12e7c134274dba706667107d10d231517d3e05 (patch)
tree55718d5acb710fde798d9f38d0bbaf594ed4b296 /extra
downloadcurrent-5a12e7c134274dba706667107d10d231517d3e05.tar.gz
current-5a12e7c134274dba706667107d10d231517d3e05.tar.xz
Slackware 13.0slackware-13.0
Wed Aug 26 10:00:38 CDT 2009 Slackware 13.0 x86_64 is released as stable! Thanks to everyone who helped make this release possible -- see the RELEASE_NOTES for the credits. The ISOs are off to the replicator. This time it will be a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. We're taking pre-orders now at store.slackware.com. Please consider picking up a copy to help support the project. Once again, thanks to the entire Slackware community for all the help testing and fixing things and offering suggestions during this development cycle. As always, have fun and enjoy! -P.
Diffstat (limited to 'extra')
-rw-r--r--extra/README.TXT6
-rw-r--r--extra/bittorrent/README31
l---------extra/flashplayer-plugin1
-rw-r--r--extra/slacktrack/OVERVIEW595
-rw-r--r--extra/source/bash-completion/bash-completion-xz.diff23
-rwxr-xr-xextra/source/bash-completion/bash-completion.SlackBuild50
-rw-r--r--extra/source/bash-completion/bash_completion.sh11
-rw-r--r--extra/source/bash-completion/slack-desc19
-rw-r--r--extra/source/bittorrent/bittorrent-xterm.sh37
-rwxr-xr-xextra/source/bittorrent/bittorrent.SlackBuild65
-rw-r--r--extra/source/bittorrent/doinst.sh10
-rw-r--r--extra/source/bittorrent/slack-desc19
-rwxr-xr-xextra/source/brltty/brltty.SlackBuild94
-rw-r--r--extra/source/brltty/slack-desc19
-rwxr-xr-xextra/source/flashplayer-plugin/flashplayer-plugin.SlackBuild159
-rw-r--r--extra/source/flashplayer-plugin/slack-desc19
-rw-r--r--extra/source/grub/grub-0.97-x86_64.patch809
-rwxr-xr-xextra/source/grub/grub.SlackBuild121
-rw-r--r--extra/source/grub/grub_support_256byte_inode.patch94
-rw-r--r--extra/source/grub/grubconfig_localefix.patch32
-rw-r--r--extra/source/grub/slack-desc19
-rw-r--r--extra/source/jdk-6/COPYRIGHT74
-rw-r--r--extra/source/jdk-6/HOWTO-BUILD-TXZ9
-rw-r--r--extra/source/jdk-6/LICENSE345
-rw-r--r--extra/source/jdk-6/README.html714
-rw-r--r--extra/source/jdk-6/README_ja.html438
-rw-r--r--extra/source/jdk-6/README_zh_CN.html507
-rwxr-xr-xextra/source/jdk-6/jdk.SlackBuild123
-rwxr-xr-xextra/source/jdk-6/profile.d/jdk.csh4
-rwxr-xr-xextra/source/jdk-6/profile.d/jdk.sh4
-rw-r--r--extra/source/jdk-6/register.html79
-rw-r--r--extra/source/jdk-6/register_ja.html66
-rw-r--r--extra/source/jdk-6/register_zh_CN.html66
-rw-r--r--extra/source/jdk-6/slack-desc18
-rwxr-xr-xextra/source/kde3-compat/arts/arts.SlackBuild57
-rw-r--r--extra/source/kde3-compat/arts/arts.tmpdir.diff17
-rw-r--r--extra/source/kde3-compat/arts/slack-desc19
-rwxr-xr-xextra/source/kde3-compat/k3b3/k3b3.SlackBuild67
-rw-r--r--extra/source/kde3-compat/k3b3/slack-desc19
-rw-r--r--extra/source/kde3-compat/kdelibs3/apply-patches.sh3
-rw-r--r--extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff23
-rw-r--r--extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff11
-rw-r--r--extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff37
-rwxr-xr-xextra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild68
-rw-r--r--extra/source/kde3-compat/kdelibs3/local.options4
-rw-r--r--extra/source/kde3-compat/kdelibs3/slack-desc19
-rw-r--r--extra/source/kde3-compat/qt3/doinst.sh9
-rwxr-xr-xextra/source/kde3-compat/qt3/profile.d/qt.csh22
-rwxr-xr-xextra/source/kde3-compat/qt3/profile.d/qt.sh23
-rw-r--r--extra/source/kde3-compat/qt3/qt-x11.diff11
-rw-r--r--extra/source/kde3-compat/qt3/qt.mysql.h.diff11
-rw-r--r--extra/source/kde3-compat/qt3/qt.x86.cflags.diff11
-rwxr-xr-xextra/source/kde3-compat/qt3/qt3.SlackBuild192
-rw-r--r--extra/source/kde3-compat/qt3/slack-desc19
-rwxr-xr-xextra/source/mpg123/mpg123.SlackBuild111
-rw-r--r--extra/source/mpg123/slack-desc19
-rwxr-xr-xextra/source/mplayerplug-in/mplayerplug-in.SlackBuild247
-rw-r--r--extra/source/mplayerplug-in/slack-desc19
-rw-r--r--extra/source/partitionmanager/doinst.sh5
-rwxr-xr-xextra/source/partitionmanager/partitionmanager.SlackBuild89
-rw-r--r--extra/source/partitionmanager/slack-desc19
-rwxr-xr-xextra/source/recordmydesktop/recordmydesktop.SlackBuild245
-rw-r--r--extra/source/recordmydesktop/slack-desc19
-rwxr-xr-xextra/source/slacktrack/slacktrack.SlackBuild21
-rw-r--r--extra/source/tightvnc/doinst.sh24
-rw-r--r--extra/source/tightvnc/slack-desc19
-rwxr-xr-xextra/source/tightvnc/tightvnc.SlackBuild128
-rw-r--r--extra/source/tightvnc/tightvnc.paths-and-perms.diff52
-rw-r--r--extra/source/wicd/README.SLACKWARE21
-rw-r--r--extra/source/wicd/doinst.sh36
-rw-r--r--extra/source/wicd/slack-desc19
-rwxr-xr-xextra/source/wicd/wicd.SlackBuild81
-rw-r--r--extra/source/yasm/slack-desc19
-rwxr-xr-xextra/source/yasm/yasm.SlackBuild204
-rw-r--r--extra/wicd/README.SLACKWARE21
75 files changed, 6740 insertions, 0 deletions
diff --git a/extra/README.TXT b/extra/README.TXT
new file mode 100644
index 000000000..a4c58866e
--- /dev/null
+++ b/extra/README.TXT
@@ -0,0 +1,6 @@
+/extra: Extra Slackware package directory
+
+Here are some extra/alternate packages that might be handy.
+
+These can be installed using "installpkg".
+
diff --git a/extra/bittorrent/README b/extra/bittorrent/README
new file mode 100644
index 000000000..551ba8660
--- /dev/null
+++ b/extra/bittorrent/README
@@ -0,0 +1,31 @@
+
+Here's a BitTorrent package for Slackware.
+
+Note that we don't ship either wxGTK or wxPython, which are needed for the
+bittorrent-console script. I built and installed these, and couldn't justify
+the huge size (and assorted build problems) in order to enable an ugly little
+dialog box. But feel free to grab those sources and knock yourself out!
+
+I've included a simple script and mailcap entry to allow using the curses
+based downloader instead, which will work just the same as the GUI version
+but with a lot less library overhead required. For Mozilla, Netscape, and
+other browsers that read /etc/mailcap, once you've installed this package
+BitTorrent should work right out of the box. If your browser doesn't use
+/etc/mailcap, you can set it up to use /usr/bin/bittorrent-xterm as the
+helper application for the MIME type application/x-bittorrent.
+
+If you're a command-line user, you may also consider using bittorrent-curses
+manually. Here's how:
+
+1. Download the .torrent file into your download directory.
+
+2. At the command line, use the curses version of BitTorrent to download:
+ bittorrent-curses some-big-file.torrent
+
+This should start the download and bring up a status screen where you can
+monitor the download (and upload) progress.
+
+Have fun!
+
+- P.
+
diff --git a/extra/flashplayer-plugin b/extra/flashplayer-plugin
new file mode 120000
index 000000000..def095f26
--- /dev/null
+++ b/extra/flashplayer-plugin
@@ -0,0 +1 @@
+source/flashplayer-plugin \ No newline at end of file
diff --git a/extra/slacktrack/OVERVIEW b/extra/slacktrack/OVERVIEW
new file mode 100644
index 000000000..5e0f5d612
--- /dev/null
+++ b/extra/slacktrack/OVERVIEW
@@ -0,0 +1,595 @@
+##############################################################################
+# Document: OVERVIEW
+# Purpose : Provide an overview of the Slackware package system incorporating
+# the use of 'slacktrack'
+# Please note that this is *not* a guide to the use of slacktrack;
+# the man page and SlackBuild scripts in the 'examples' directory
+# aim to fulfill that requirement.
+# Date....: 15-May-2009
+# Author..: Stuart Winter <mozes@slackware.com>
+# Homepage: http://www.slackware.com/~mozes
+##############################################################################
+
+
+CONTENTS:
+---------
+1.0 Preamble
+2.0 Slackware packages
+ 2.0.1 Format of official Slackware packages
+ 2.0.1.1 Package names
+ 2.0.1.2 Version numbers
+ 2.0.1.3 Architectures
+ 2.0.1.4 Build numbers
+ 2.1 An overview of the creation of official Slackware packages
+ 2.1.1 'Clean' and 'dirty' builds
+ 2.1.1.1 Clean builds
+ 2.1.1.2 Dirty builds
+ 2.1.1 SlackBuild and .build scripts
+ 2.1.1.2 SlackBuild scripts
+ 2.1.1.3 .build scripts
+ 2.2 slacktrack in the scheme of things
+ 2.2.1 Using slacktrack with official .build scripts
+ 2.2.2 Writing your own .build scripts for slacktrack
+ 2.2.2.1 Making use of slacktrack's environment variables
+3.0 slacktrack in operation
+ 3.1 How slacktrack finds which files have been installed
+ 3.1.1 installwatch's author
+4.0 Example scripts
+ 4.0.1 non-slackware example build scripts
+ 4.0.2 slackware example wrapper build scripts
+5.0 Known problems/features of slacktrack
+6.0 New features
+7.0 Licence
+
+
+
+1.0 Preamble
+ ---------
+
+I used to work for a company that provided web hosting and shell accounts.
+When I started there were a number of shell servers all running various
+releases of RedHat Linux, in various states of repair. I managed to convince
+the management to let me try Slackware on there instead because I have a much
+stronger understanding of how to maintain and build server using the
+Slackware distribution. This trial went well and within a few months all
+servers were converted to Slackware version 8.1.
+
+In order to ease the speed of installation (and to prevent against
+forgetting to install or configure something critical), I wrote a
+set of post installation scripts that upgraded Slackware packages,
+configured numerous config files and copied pre-compiled software
+(such as courier IMAP) onto the new system.
+For other software that I could not simply copy, I'd compile it on the
+new server.
+
+However, it soon became clear that due to security updates and so on,
+it became incredibly time consuming (not to mention seriously boring)
+to compile PHP, Apache and so on on every server.
+
+At this point, I began to investigate how to create packages for Slackware.
+
+
+2.0 Slackware packages
+ ------------------
+
+ The Slackware Linux distribution consists of a variety of 'packages'
+ that make up the distribution.
+
+ Traditionally, all packages are in '.tgz' format (a gzipped tar archive).
+ Starting with Slackware v13, new compression formats are supported which
+ are represented by three additional file extensions:
+
+ .tgz - Gzip
+ .tbz - Bzip2
+ .tlz - LZMA
+ .txz - XZ
+
+ In this document, we use the file extension '.t?z' to represent
+ one of the above file formats.
+
+ Once you have initially installed Slackware from the installer screen,
+ you have the facilities to install, remove or upgrade new or existing
+ packages using the package management tools:
+
+ installpkg <package.t?z> - install 'package.t?z'
+
+ upgradepkg <package.t?z> - upgrade existing 'package' with the
+ new version specified at the command line.
+
+ removepkg <package> - remove specified package
+
+
+ Whilst the Slackware package system is not especially feature rich,
+ Slackware's user base (including me) like it because it is simple.
+ If we want to write our own package utilities then we can easily do so
+ by examining the existing package tools and querying and amending the
+ package database (text files).
+
+ 2.0.1 Format of official Slackware packages
+ -------------------------------------
+
+ In Slackware 8.1 and up, each package file is named as follows:
+
+ packagename-version-architecture-buildnumber.t?z
+
+ 2.0.1.1 Package names
+ -------------
+
+ The package name is either the name of the single program
+ or the name of a collection of utilities that fall under
+ a single umbrella.
+ For example:
+ autoconf-2.54-noarch-1.tgz
+
+ That is the name of the autoconf package I have on my
+ Slackware 8.1 box.
+ 'autoconf' is the name of the the entire collection of
+ binaries and associated documents that are extracted from
+ the autoconf source distribution archive.
+
+ However, if we consider another example:
+ tcpip-0.17-i386-15.tgz
+
+ There is no single piece of software called 'tcpip'.
+ This package contains a number of associated utilities
+ written by different authors but bundled into one single
+ 'package'.
+
+ 2.0.1.2 Version numbers
+ ---------------
+
+ If the package is the name of a particular piece of software
+ such as 'autoconf' from the example above, then the version
+ number represents the version number that its authors distribute.
+
+ If the package is a 'bundle' such as 'tcpip' then the version
+ number increases as and when you add a new piece of software to
+ the package, or upgrade a particular piece of major software
+ contained within the package.
+ For example, with 'tcpip' above, the 0.17 refers to the version of
+ Linux Netkit. However, there are other programs included within
+ the Slackware tcpip package that are not part of 'Linux netkit'.
+
+ 2.0.1.3 Architectures
+ -------------
+
+ The architecture is just that -- it tells you which architecture
+ the package is for.
+
+ The current values in use are:
+
+ ----- [ Official Slackware architecures ]
+
+ noarch - Architecture independent files such as config files
+ i386 - packages for the x86 (Slackware v8.1 & 9)
+ i486 - packages for the x86 (Slackware 9.1+)
+ i586 - packages for the x86
+ s390 - packages for the IBM s/390 mainframe
+
+ Note: Whilst Slackware v10 is primarily built for i486, you may
+ find that there are some packages whose architecture versions
+ are higher than i486. This is for two reasons:
+
+ [a] There is no source for the package - it is a repackaged
+ binary distribution (SUN's j2sdk is an example).
+
+ [b] The package is not required or otherwise not suitable for
+ earlier revisions of the architecture (this is especially
+ the true with ARM and SPARC).
+
+ ----- [ Unofficial ports of Slackware ]
+
+ arm - packages for the ARM architecture
+ sparc - packages for the SUN Sparc architecture
+ powerpc - packages for the PowerPC architecture
+
+ 2.0.1.4 Build numbers
+ -------------
+
+ A build number suplements the version number and is changed
+ when the *package maintainer* makes a change to the package but
+ the original source code and version number remains the same.
+
+ For example, I build a package of 'foo' version 0.14 for the
+ sparc. I have never built this package before, thus it becomes
+ foo-0.14-sparc-1.tgz
+ However, I realise that I haven't configured
+ the 'bar' parameter correctly in /etc/foo.conf. I fix it
+ and re-build the package. The package is now named
+ foo-0.14-sparc-2.tgz
+
+
+ 2.1 An overview of the creation of official Slackware packages
+ -----------------------------------------------------------
+
+ This section gives a brief introduction of the two methods of
+ used when building the official Slackware packages.
+
+
+ 2.1.1 'Clean' and 'dirty' builds
+ --------------------------
+
+ I am assuming the reader has some experience with Makefiles
+ and has compiled and installed a number of software packages.
+
+ 2.1.1.1 Clean builds
+ ------------
+
+ I term a 'clean' package one where you can specify a variable
+ to the 'make install' which contains the directory you wish to install
+ the package in, rather than installing it properly over the root file system.
+ For example:
+ # ./configure --prefix=/usr --sysconfdir=/etc
+ # make
+ # make install DESTDIR=/tmp/package-foo
+
+ With a 'Makefile' that honours the DESTDIR variable, this will
+ install the whole package into /tmp/package-foo. This directory
+ effectively is the 'root' directory '/' as far as the Makefile
+ is concerned.
+
+ From here you can use the Slackware 'makepkg' program and build
+ a package.
+
+ This is by far the safest and most preferred method by all
+ users that make packages.
+
+ You will find that DESTDIR is called prefix, TOPDIR and other names;
+ you need to examine the Makefile scripts in order to determine whether
+ it contains this functionality and if it does, then discover what
+ the variable name is.
+
+ 2.1.1.2 Dirty builds
+ ------------
+
+ A 'dirty' build is the name I give to source distribution archives
+ whose Makefile scripts do not have any provisioning to install
+ in an alternate directory other than root.
+
+ For these type of builds, you will typically do:
+ # ./configure --prefix=/usr --sysconfdir=/etc
+ # make
+ # make install
+
+ The package will then be installed on the root filesystem.
+
+ So how do you know what files were installed where and
+ even if you did, how do you pull all these files together in order
+ to run makepkg over them ?
+ That's the purpose of slacktrack! :-)
+
+
+ 2.1.1 SlackBuild and .build scripts
+ -----------------------------
+
+ Slackware has a number of packages by a great number of authors.
+ Some of the packages's source Makefiles honour a DESTDIR type
+ variable but others do not.
+
+ 2.1.1.2 SlackBuild scripts
+ ------------------
+
+ SlackBuild scripts can be 'interesting'. They are
+ scripts that install into a 'clean' environment (usually /tmp).
+
+ Some of the scripts follow the make install DESTDIR=
+ style, if the Makefile permits.
+
+ Others have a 'framework' or 'controller tarball' which is
+ a _packagename.t?z (note the prefixing underscore).
+
+ The SlackBuild script uses the Slackware 'explodepkg' script
+ to untar the contents of the _.t?z into the /tmp-package<name>
+ directory.
+ Slackbuild then runs 'make' to compile the binaries
+ and libraries, but then uses the 'cat' program such as:
+ # cat foobar > /tmp/package-foobar/usr/bin/foobar
+
+ By using 'cat', the *new* version of 'foobar' retains
+ the original permissions and ownerships that are in the
+ controller tar ball.
+
+ However, you may be wondering how, if the package does not
+ have a facility to install into somewhere other than root,
+ do we get the file names and permissions for the
+ controller _.t?z in the first place.
+ The answer is simple:
+ [a] find all files on the file system and dump to a file.
+ [b] compile and install the software
+ [c] find all files on the file system and compare the file
+ produced by the first 'find'. After a little pruning, you
+ have the list of files for the controller tar ball.
+
+
+ 2.1.1.3 .build scripts
+ ---------------
+
+ For those software distributions whose Makefile does not hounour
+ the DESTDIR type system, there are Slackware's .build scripts.
+
+ These scripts literally ./configure ; make ; make install
+ and copy docs and other goodies into the root file system.
+
+ One of the problems with these scripts is that they are
+ often incomplete -- they build and install the package but
+ do not gzip the man pages or strip the binaries and libraries;
+ this is done manually afterwards.
+
+ *These* are the scripts that slacktrack and altertrack were
+ written for.
+
+ * Note: Whilst some software's Makefiles may appear to honour
+ the DESTDIR variable, the Makefile *may* be broken which can
+ result in files missing or corrupt within your new package.
+ For example: I built Apache v2.0.48 and built a package using
+ make install DESTDIR. However, a problem exists in that some of
+ the Perl scripts it installs have *temporary build paths*
+ hard coded into the resulting scripts.
+ This is why you *may* find a .build instead of a SlackBuild
+ script within Slackware's source tree.
+
+ However, the primary reason is because the build script just
+ hasn't been updated to make use of DESTDIR. *
+
+
+ 2.2 slacktrack in the scheme of things
+ ----------------------------------
+
+ I follow Slackware-current quite closly. Often I want to
+ 'back port' a -current package to an earlier release of Slackware .
+ I can't simply upgrade with -current's package because it was
+ compiled for a newer GLIBC than Slackware 8.1's, for example.
+ For packages that use a 'clean' 'SlackBuild' script, this is
+ an easy job -- I simply run 'SlackBuild' on an 8.1 box.
+
+ However, for .build scripts, I needed a way of building packages
+ using Slackware's .build scripts.
+
+ I found a great program called 'CheckInstall' which fulfilled most of my
+ requirements. However, as time went on and I started building
+ more of Slackware's packages and writing my own build scripts, I found
+ that checkinstall was lacking some features that I required.
+ At this time I was also considering porting Slackware to run on
+ the ARM architecture and helping with the Splack (Slackware on SPARC project),
+ and therefore wanted a robust program that can deal with every .build script
+ I threw at it, and if it can't handle it, I needed to be able to make modifications.
+ The easiest way of doing this was to write my own script; thus
+ 'slacktrack' was born.
+
+ slacktrack is based on the *idea* behind 'CheckInstall', but uses
+ only my own code (and contributions from other users), and only contains
+ Slackware-specific facilities -- it can not build Debian or RedHat packages
+ and never will.
+
+ slacktrack does not have all of the facilities of CheckInstall either,
+ but then these are not required for building Slackware packages
+ from .build scripts.
+
+ Also, slacktrack only works with 'official' Slackware directory locations
+ and /usr/local.
+ For example, if your make install installs binaries in /opt/packagename/bin
+ and the man pages in anywhere other than /usr/man or /usr/local/man, then
+ slacktrack's relevant options (eg stripping libs, bins, gzman) will
+ not detect them.
+
+
+ 2.2.1 Using slacktrack with official .build scripts
+ ---------------------------------------------
+
+ Building a replicar Slackware package from a .build script is
+ typically fairly trivial with slacktrack.
+
+ If we wanted to build slackware-9.1's elvis, we could do
+ # cd slackware/slackware-9.1/source/a/elvis
+ # chmod 755 elvis.build
+ # slacktrack -jefkzp "elvis-2.1-i386-2.tgz" ./elvis.build
+
+ The resulting package (by default) be stored in
+ /tmp/built-slackwarepackages/
+
+ As already mentioned, some of the Slackware .build scripts
+ are incomplete with regard to gzipping man pages, stripping binaries
+ and so on -- fetchmail.build is one of them.
+ Therefore you can specify various options to slacktrack that
+ will take care of this for you.
+ The options in the example above :
+ j - compress libraries
+ e - chown root:bin /bin,/sbin,/usr/bin,/usr/sbin directories
+ f - chown root:bin files in the binary dirs listed above
+ k - strip binaries found in the binary dirs listed above
+ z - gzip man pages
+ p - the resulting Slackware package .t?z name
+
+ The way I re-create the packages is to build a 'trackbuild' script that
+ launches slacktrack with the required options and the name
+ of the Slackware .build script. You can find examples of such
+ scripts within the docs directory after installing slacktrack:
+
+ /usr/doc/slacktrack*/buildscript-examples/
+
+ You will also find that in Slackware versions 12.0 and upwards,
+ the .build scripts are accompanied by 'trackbuild' scripts because
+ slacktrack is used by the Slackware team to produce the packages.
+
+ 2.2.2 Writing your own .build scripts for slacktrack
+ ----------------------------------------------
+
+ There isn't any specific that you have to do to write a build
+ script for use with slacktrack -- the script name specified to
+ slacktrack doesn't even have to be a script - it can be a binary -
+ as long as it is executable, it is acceptable.
+
+ You can see some of my own build scripts that I have written
+ for use with slacktrack by looking in the documents directory
+ after installing slacktrack:
+
+ /usr/doc/slacktrack*/buildscript-examples/
+
+ 2.2.2.1 Making use of slacktrack's environment variables
+ -------------------------------------------------
+
+ slacktrack exports two environment variables:
+ SLACKTRACKFAKEROOT and SLACKTRACKSCRATCHDIR
+
+ SLACKTRACKFAKEROOT:
+ ````````````````````
+
+ The purpose of this to allow your .build script to access the
+ 'root' directory of the resulting package.
+ There are two scenarios where you may want to use this
+ variable:
+
+ 1. During the build:
+
+ The reason you may wish to do this is to pre-populate
+ the package with files that you may not wish to place directly
+ onto the root filesystem.
+ The package contents will only appear inside this directory
+ once your build script has finished, and slacktrack has determined
+ what to put into this directory.
+
+ In previous slacktrack versions which used a pseudo-root filesystem
+ (where the package contents were populated *during* the build), this
+ made sense, but in slacktrack v2.00, it is unlikely that you'd want
+ to use this vairable from the build script.
+
+ 2. Post-build -- cleanups after the build:
+
+ The most likely use of this script is to perform package cleanup
+ tasks after the build. This is mainly to perform tasks that slacktrack
+ does not handle itself - such as deleting known files/directories that
+ creep into packages (due to a system daemon such as CUPS), or setting
+ some file and directory permissions.
+
+ An example post build script is below.
+ A post build script can be specified by slacktrack's -R option:
+
+ # Incase you had CUPS running:
+ rm -rf etc/cups etc/printcap
+ # crond:
+ rm -rf var/spool/cron
+ rmdir var/spool
+
+ # perllocal.pod files don't belong in packages.
+ # SGMLSPL creates this:
+ find . -name perllocal.pod -print0 | xargs -0 rm -f
+
+ # Some doc dirs have attracted setuid.
+ # We don't need setuid for anything in this package:
+ chmod -R a-s .
+
+
+ SLACKTRACKSCRATCHDIR:
+ `````````````````````
+
+ The purpose of this variable is to provide some temporary
+ space to untar your source archives and so on. slacktrack
+ will manage the creation and deletion of this directory.
+
+ For example:
+ # cd ${SLACKTRACKSCRATCHDIR}
+ # tar zxvvf ${ORIGPATH}/source/foobar.tar.gz
+
+ You can see in some of the example 'non-slackware' scripts
+ how I have used these variables
+
+
+3.0 slacktrack in operation
+ -----------------------
+
+ The basic event flow is as follows:
+
+ [1] Parse command line arguments
+ -> Check they are OK, if not bomb out
+ [2] Launch the supplied build script
+ [3] Run any specified functions (eg gzman, strip bins, chowns) over the
+ package 'root' directory and contents
+ [4] Run Slackware's 'makepkg' program over the package contents
+ [5] Move the .t?z to the specified build store path
+ [6] Scan for any hard links that may be in the package
+ -> If any found, alert the user on screen and also
+ log to a packagename.hardlinks.log file in the build store path
+
+ The slacktrack shell script is fairly simple and well commented; it should be
+ relatively easy for anybody who understands bash to quickly comprehend what
+ is happening and why.
+
+ 3.1 How slacktrack finds which files have been installed
+ ----------------------------------------------------
+
+ In order to track the files and directories that have been installed
+ or changed, slacktrack follows this ordered process:
+
+ [1] Scans a pre-set list of directories on the filesystem and
+ logs the contents.
+ [2] Launches build script which installs the package onto the
+ filesystem
+ [3] Scans the filesystem once again
+ [4] Compares the differences in the before and after snapshots
+ [5] Copies the differences into a 'package root directory' and
+ runs makepkg over them.
+
+ In slacktrack version 1, we used 'installwatch' which overloaded
+ some of glibc's filesystem calls, creating new files and directories
+ into a pseudo-root filesystem, avoiding the need to install onto
+ the host's filesystem (and also allowing to build as a non-root user).
+ However, this library is ill maintained and even in the early days
+ when it worked well, it still had problems and workarounds were required.
+
+4.0 Example scripts
+ ---------------
+
+ Included with the slacktrack binary distribution are a number of example
+ scripts that hopefully should provide you with a basis of how to use slacktrack
+ to build from 'dirty' source distributions.
+
+ The examples are bundled in the documentation directory available
+ after installing slacktrack:
+
+ /usr/doc/slacktrack*/buildscript-examples/
+
+
+5.0 Known problems/features of slacktrack
+ -------------------------------------
+
+ Current problems:
+
+ [1] slacktrack doesn't have sufficient error checking.
+
+ I'm in two minds about *where* to put error checking, you see.
+ Do I go no further if the supplied build script exits with a non-zero
+ value?
+ No, that's a bad idea because what if you didn't write the build script?
+ it might be one of these qmail type binary installer programs that
+ you can't (easily without hacking the source) fix. The author may
+ have their own systems, and the program exits with a value that their
+ own controller script recognises as non-failure.
+
+ What should I do if makepkg has failed? You see it on screen
+ and in the logs anyway, plus makepkg is one of the last things
+ that slacktrack calls -- how can you recover?
+
+ That said, version 1.03 now has some error handling. There's still
+ not enough though, imo.
+
+ [2] No support for a default config file
+
+ I don't see the point. Each .build script is different
+ and although I typically use the same options to slacktrack
+ for most of my build scripts, I don't see why I'd need a
+ config file just to save 4 bytes or so in a trackbuild wrapper :-)
+
+
+6.0 New features
+ -------------
+
+ See the TODO file in the docs directory.
+
+ If you have any specific features you would like to see
+ included, or have found any bugs, please
+ email me <mozes@slackware.com>
+
+7.0 Licence
+ -------
+
+ slacktrack is distributed under BSD Licence.
diff --git a/extra/source/bash-completion/bash-completion-xz.diff b/extra/source/bash-completion/bash-completion-xz.diff
new file mode 100644
index 000000000..3098aed16
--- /dev/null
+++ b/extra/source/bash-completion/bash-completion-xz.diff
@@ -0,0 +1,23 @@
+diff -ur a/bash_completion b/bash_completion
+--- a/bash_completion 2006-03-01 16:20:18.000000000 +0000
++++ b/bash_completion 2009-07-15 22:46:27.000000000 +0100
+@@ -2852,8 +2852,8 @@
+ return 0
+ ;;
+ +([^IZzjy])f)
+- ext='t@(ar?(.@(Z|gz|bz?(2)))|gz|bz?(2))'
+- regex='t\(ar\(\.\(Z\|gz\|bz2\?\)\)\?\|gz\|bz2\?\)'
++ ext='t@(ar?(.@(Z|xz|gz|bz?(2)))|xz|gz|bz?(2))'
++ regex='t\(ar\(\.\(Z\|xz\|gz\|bz2\?\)\)\?\|xz\|gz\|bz2\?\)'
+ ;;
+ *[Zz]*f)
+ ext='t?(ar.)@(gz|Z)'
+@@ -5519,7 +5519,7 @@
+ COMPREPLY=( $( (cd /var/log/packages; compgen -f -- "$cur") ) )
+ } &&
+ complete -F _removepkg $filenames removepkg &&
+- complete $dirnames -f -X '!*.tgz' installpkg upgradepkg explodepkg
++ complete $dirnames -f -X '!*.t?z' installpkg upgradepkg explodepkg
+
+ # look(1) completion
+ #
diff --git a/extra/source/bash-completion/bash-completion.SlackBuild b/extra/source/bash-completion/bash-completion.SlackBuild
new file mode 100755
index 000000000..153853dc2
--- /dev/null
+++ b/extra/source/bash-completion/bash-completion.SlackBuild
@@ -0,0 +1,50 @@
+#!/bin/sh
+# Set initial variables:
+CWD=`pwd`
+if [ "$TMP" = "" ]; then
+ TMP=/tmp
+fi
+PKG=$TMP/package-bash-completion
+
+VERSION=20060301
+ARCH=noarch
+BUILD=2
+
+if [ ! -d $TMP ]; then
+ mkdir -p $TMP # location to build the source
+fi
+rm -rf $PKG
+mkdir -p $PKG
+
+cd $TMP
+rm -rf bash_completion
+tar xjvf $CWD/bash-completion-$VERSION.tar.bz2
+cd bash_completion
+
+# Add support for xz file formats:
+zcat $CWD/bash-completion-xz.diff.gz | patch -p1 || exit 1
+
+mkdir -p $PKG/etc/bash_completion.d $PKG/etc/profile.d
+cp -a $CWD/bash_completion.sh.gz $PKG/etc/profile.d
+gzip -d $PKG/etc/profile.d/bash_completion.sh.gz
+chmod 755 $PKG/etc/profile.d/bash_completion.sh
+cp -a bash_completion $PKG/etc
+chmod 644 $PKG/etc/bash_completion
+cp -a contrib/* $PKG/etc/bash_completion.d
+chmod 755 $PKG/etc/bash_completion.d/*
+mkdir -p $PKG/usr/doc/bash-completion-$VERSION
+cp -a BUGS COPYING README $PKG/usr/doc/bash-completion-$VERSION
+chmod 644 $PKG/usr/doc/bash-completion-$VERSION/*
+( cd $PKG ; chown -R root.root . )
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+# Build the package:
+cd $PKG
+makepkg -l y -c n $TMP/bash-completion-$VERSION-$ARCH-$BUILD.txz
+
+# Clean up the extra stuff:
+if [ "$1" = "--cleanup" ]; then
+ rm -rf $TMP/bash_completion
+ rm -rf $PKG
+fi
diff --git a/extra/source/bash-completion/bash_completion.sh b/extra/source/bash-completion/bash_completion.sh
new file mode 100644
index 000000000..84388cb8a
--- /dev/null
+++ b/extra/source/bash-completion/bash_completion.sh
@@ -0,0 +1,11 @@
+bash=${BASH_VERSION%.*}; bmajor=${bash%.*}; bminor=${bash#*.}
+if [ "$PS1" ] && [ $bmajor -eq 2 ] && [ $bminor '>' 04 ] \
+ && [ -f /etc/bash_completion ]; then # interactive shell
+ # Source completion code
+ . /etc/bash_completion
+elif [ "$PS1" ] && [ $bmajor -eq 3 ] \
+ && [ -f /etc/bash_completion ]; then # interactive shell
+ # Source completion code
+ . /etc/bash_completion
+fi
+unset bash bmajor bminor
diff --git a/extra/source/bash-completion/slack-desc b/extra/source/bash-completion/slack-desc
new file mode 100644
index 000000000..b4ffbd4f4
--- /dev/null
+++ b/extra/source/bash-completion/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+bash-completion: bash-completion (programmable completion for the bash shell)
+bash-completion:
+bash-completion: Adds programmable completion to the bash shell. A new file called
+bash-completion: /etc/bash_completion will be sourced for interactive bash shells
+bash-completion: adding all sorts of enhanced command completion features. Once
+bash-completion: installed, you may get a list of all commands that have associated
+bash-completion: completions with 'complete -p', and examine the code for the shell
+bash-completion: functions with 'declare -f'.
+bash-completion:
+bash-completion: bash-completion was written by Ian Macdonald <ian@caliban.org>.
+bash-completion:
diff --git a/extra/source/bittorrent/bittorrent-xterm.sh b/extra/source/bittorrent/bittorrent-xterm.sh
new file mode 100644
index 000000000..fdf32ea1e
--- /dev/null
+++ b/extra/source/bittorrent/bittorrent-xterm.sh
@@ -0,0 +1,37 @@
+#!/bin/sh
+# Copyright 2003 Slackware Linux, Inc., Concord, CA, USA
+# Copyright 2006 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# /usr/bin/bittorrent-xterm.sh
+# A simple script used in /etc/mailcap to enable using
+# bittorrent-curses with Mozilla, etc.
+#
+# This goes in /etc/mailcap:
+#application/x-bittorrent; /usr/bin/bittorrent-xterm '%s' ;
+
+# Create a directory for downloads:
+if [ ! -d $HOME/BitTorrent ]; then
+ mkdir -p $HOME/BitTorrent
+fi
+
+# Change to the download directory and start BitTorrent there:
+cd $HOME/BitTorrent && exec /usr/X11R6/bin/xterm -e /usr/bin/bittorrent-curses "$1"
+
diff --git a/extra/source/bittorrent/bittorrent.SlackBuild b/extra/source/bittorrent/bittorrent.SlackBuild
new file mode 100755
index 000000000..5118d724d
--- /dev/null
+++ b/extra/source/bittorrent/bittorrent.SlackBuild
@@ -0,0 +1,65 @@
+#!/bin/sh
+
+# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+VERSION=${VERSION:-4.4.0}
+ARCH=noarch
+BUILD=${BUILD:-3}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=/tmp/package-bittorrent
+rm -rf $PKG
+mkdir -p $PKG $TMP
+
+cd $TMP
+rm -rf BitTorrent-$VERSION
+tar xvf $CWD/BitTorrent-$VERSION.tar.bz2 || exit 1
+cd BitTorrent-$VERSION || exit 1
+chown -R root.root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+python setup.py build install --root=$PKG
+# Add bittorrent-xterm (this just opens an xterm for bittorrent-curses so
+# that it can work as a MIME handler from mailcap):
+mkdir -p $PKG/usr/bin
+zcat $CWD/bittorrent-xterm.sh.gz > $PKG/usr/bin/bittorrent-xterm
+chmod 755 $PKG/usr/bin/bittorrent-xterm
+mkdir -p $PKG/usr/doc/BitTorrent-$VERSION
+cp -a \
+ INSTALL.unix.txt LICENSE.txt PKG-INFO README.txt TRACKERLESS.txt \
+ credits-l10n.txt credits.txt public.key redirdonate.html \
+ $PKG/usr/doc/BitTorrent-$VERSION
+rm -rf $PKG/usr/share/doc $PKG/usr/share/pixmaps/BitTorrent-$VERSION/icons/old
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+# Add support for using bittorrent-curses instead of bittorrent-gui
+# in /etc/mailcap:
+zcat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/bittorrent-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/bittorrent/doinst.sh b/extra/source/bittorrent/doinst.sh
new file mode 100644
index 000000000..3b84c3043
--- /dev/null
+++ b/extra/source/bittorrent/doinst.sh
@@ -0,0 +1,10 @@
+# Add bittorrent support to /etc/mailcap unless it's found there
+# already (commented out, or not):
+if ! grep application/x-bittorrent etc/mailcap 1> /dev/null 2> /dev/null ; then
+ echo "application/x-bittorrent; /usr/bin/bittorrent-xterm '%s' ; " >> etc/mailcap
+else
+ # If it calls btdownloadxterm.sh, make bittorrent-xterm the default instead:
+ if grep btdownloadxterm etc/mailcap 1> /dev/null 2> /dev/null ; then
+ sed -i -e 's/btdownloadxterm.sh/bittorrent-xterm/g' etc/mailcap
+ fi
+fi
diff --git a/extra/source/bittorrent/slack-desc b/extra/source/bittorrent/slack-desc
new file mode 100644
index 000000000..e5ba9aa42
--- /dev/null
+++ b/extra/source/bittorrent/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+bittorrent: bittorrent (BitTorrent file distribution utility)
+bittorrent:
+bittorrent: BitTorrent is a file distribution utility which utilizes the upload
+bittorrent: capacity of machines which are downloading a file to help distribute
+bittorrent: it to other downloading machines. This makes it possible to provide
+bittorrent: large files (such as the Slackware Linux ISO images) to many people
+bittorrent: without the usual problem of insufficient bandwidth. The more
+bittorrent: downloaders, the more bandwidth. Problem solved.
+bittorrent:
+bittorrent: Bram Cohen is the genius behind BitTorrent.
+bittorrent:
diff --git a/extra/source/brltty/brltty.SlackBuild b/extra/source/brltty/brltty.SlackBuild
new file mode 100755
index 000000000..c58959746
--- /dev/null
+++ b/extra/source/brltty/brltty.SlackBuild
@@ -0,0 +1,94 @@
+#!/bin/sh
+# Set initial variables:
+CWD=`pwd`
+if [ "$TMP" = "" ]; then
+ TMP=/tmp
+fi
+if [ ! -d $TMP ]; then
+ mkdir -p $TMP # location to build the source
+fi
+PKG=/tmp/package-brltty
+
+VERSION=4.0
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+
+if [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $PKG
+cd $TMP
+rm -rf brltty-$VERSION
+tar xf $CWD/brltty-$VERSION.tar.?z* || exit 1
+cd brltty-$VERSION
+
+sh autogen
+
+chown -R root:root .
+find . -perm 775 -exec chmod 755 {} \;
+find . -perm 700 -exec chmod 755 {} \;
+find . -perm 744 -exec chmod 755 {} \;
+find . -perm 664 -exec chmod 644 {} \;
+find . -perm 600 -exec chmod 644 {} \;
+./configure \
+ --prefix=/usr \
+ --bindir=/bin \
+ --sbindir=/sbin \
+ --libdir=/lib${LIBDIRSUFFIX} \
+ --infodir=/usr/info \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --build=$ARCH-slackware-linux
+make -j2 || exit 1
+make install INSTALL_ROOT=$PKG || exit 1
+chmod 755 $PKG/bin/* $PKG/lib${LIBDIRSUFFIX}/brltty/*
+
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+mkdir -p $PKG/usr/doc/brltty-$VERSION
+cp -a \
+ README* COPYING* \
+ Documents/{Manual-*,TODO,CONTRIBUTORS,HISTORY,README.*} \
+ $PKG/usr/doc/brltty-$VERSION
+cat Documents/ChangeLog | head -n 150 > $PKG/usr/doc/brltty-$VERSION/ChangeLog
+( cd $PKG/usr/doc/brltty-$VERSION
+ find . -name "Makefile*" -exec rm -f {} \;
+ find . -name "*.sgml" -exec rm -f {} \;
+ find . -size 0 -type f -exec rm -f {} \;
+)
+
+gzip -9 $PKG/usr/man/man?/*.?
+
+mkdir -p $PKG/etc
+cp -a Documents/brltty.conf $PKG/etc/brltty.conf.new
+
+mkdir -p $PKG/install
+# Write out the doinst.sh:
+cat << EOF > $PKG/install/doinst.sh
+config() {
+ NEW="\$1"
+ OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r \$OLD ]; then
+ mv \$NEW \$OLD
+ elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then # toss the redundant copy
+ rm \$NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+config etc/brltty.conf.new
+
+EOF
+
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+makepkg -l y -c n ../brltty-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/brltty/slack-desc b/extra/source/brltty/slack-desc
new file mode 100644
index 000000000..d99624990
--- /dev/null
+++ b/extra/source/brltty/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+brltty: brltty (Braille display daemon)
+brltty:
+brltty: BRLTTY is a daemon which provides access to the Linux console (text
+brltty: mode) for a blind person using a soft braille display. It drives the
+brltty: braille terminal and provides complete screen review functionality.
+brltty:
+brltty:
+brltty:
+brltty:
+brltty:
+brltty:
diff --git a/extra/source/flashplayer-plugin/flashplayer-plugin.SlackBuild b/extra/source/flashplayer-plugin/flashplayer-plugin.SlackBuild
new file mode 100755
index 000000000..1904ec59f
--- /dev/null
+++ b/extra/source/flashplayer-plugin/flashplayer-plugin.SlackBuild
@@ -0,0 +1,159 @@
+#!/bin/sh
+# Copyright (c) 2008, 2009 Eric Hameleers, Eindhoven, NL
+# All rights reserved.
+#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+# -----------------------------------------------------------------------------
+#
+# Slackware SlackBuild script
+# ===========================
+# By: Eric Hameleers <alien@slackware.com>
+# For: flashplayer-plugin
+# Descr: Adobe flash player plugin for mozilla
+# URL: http://labs.adobe.com/
+# Needs:
+# Changelog:
+# 10.0.d20.7-1: 16/Dec/2008 by Eric Hameleers <alien@slackware.com>
+# * Initial build.
+# 10.0.d21.1-1: 20/Dec/2008 by Eric Hameleers <alien@slackware.com>
+# * Update.
+# 10.0.22.87-1: 26/feb/2009 by Eric Hameleers <alien@slackware.com>
+# * Update (plugs vulnerability).
+# 10.0.32.18-1: 10/aug/2009 by Patrick J. Volkerding <volkerdi@slackware.com>
+# * Update (plugs vulnerability).
+#
+# Run 'sh flashplayer-plugin.SlackBuild' to build a Slackware package.
+# The package (.txz) and .txt file as well as build logs are created in /tmp .
+# Install it using 'installpkg'.
+#
+# -----------------------------------------------------------------------------
+
+# Set initial variables:
+
+PRGNAM=flashplayer-plugin
+VERSION=${VERSION:-10.0.32.18}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+
+if [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+# Where do we look for sources?
+SRCDIR=$(cd $(dirname $0); pwd)
+
+# Place to build (TMP) package (PKG) and output (OUTPUT) the program:
+TMP=${TMP:-/tmp/build}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+SOURCE="$SRCDIR/libflashplayer-${VERSION}.linux-${ARCH}.so.tar.gz"
+SRCURL="http://download.macromedia.com/pub/labs/flashplayer10/libflashplayer-${VERSION}.linux-${ARCH}.so.tar.gz"
+
+##
+## --- with a little luck, you won't have to edit below this point --- ##
+##
+
+# Exit the script on errors:
+set -e
+trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
+# Catch unitialized variables:
+set -u
+P1=${1:-1}
+
+# Create working directories:
+mkdir -p $OUTPUT # place for the package to be saved
+mkdir -p $TMP/tmp-$PRGNAM # location to build the source
+mkdir -p $PKG # place for the package to be built
+rm -rf $PKG/* # always erase old package's contents
+rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build
+rm -rf $OUTPUT/{configure,make,install,error,makepkg}-$PRGNAM.log
+ # remove old log files
+
+# Source file availability:
+if ! [ -f ${SOURCE} ]; then
+ if ! [ "x${SRCURL}" == "x" ]; then
+ # Check if the $SRCDIR is writable at all - if not, download to $OUTPUT
+ [ -w "$SRCDIR" ] || SOURCE="$OUTPUT/$(basename $SOURCE)"
+ echo "Source '$(basename ${SOURCE})' not available yet..."
+ echo "Will download file to $(dirname $SOURCE)"
+ wget -nv -T 20 -O "${SOURCE}" "${SRCURL}" || true
+ if [ $? -ne 0 -o ! -s "${SOURCE}" ]; then
+ echo "Downloading '$(basename ${SOURCE})' failed... aborting the build."
+ mv -f "${SOURCE}" "${SOURCE}".FAIL
+ exit 1
+ fi
+ else
+ echo "File '$(basename ${SOURCE})' not available... aborting the build."
+ exit 1
+ fi
+fi
+
+if [ "$P1" == "--download" ]; then
+ echo "Download complete."
+ exit 0
+fi
+
+# --- PACKAGE BUILDING ---
+
+echo "++"
+echo "|| $PRGNAM-$VERSION"
+echo "++"
+
+cd $TMP/tmp-$PRGNAM
+echo "Extracting the source archive(s) for $PRGNAM..."
+tar -xvf ${SOURCE}
+chown -R root:root *
+chmod -R u+w,go+r-w,a-s .
+
+if [ "$ARCH" = "x86_64" ]; then
+ if ! file libflashplayer.so | grep -q "ELF 64-bit" ; then
+ echo "The downloaded plugin is not for the '$ARCH' architecture!"; exit 1
+ fi
+elif [[ "$ARCH" =~ "i?86" ]]; then
+ if ! file libflashplayer.so | grep -q "ELF 32-bit" ; then
+ echo "The downloaded plugin is not for the '$ARCH' architecture!"; exit 1
+ fi
+fi
+
+# Install the plugin to the package dir:
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
+install -m 0755 libflashplayer.so \
+ $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins/libflashplayer.so
+
+# Add documentation:
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $SRCDIR/$(basename $0) $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
+find $PKG/usr/doc -type f -exec chmod 644 {} \;
+
+# Add a package description:
+mkdir -p $PKG/install
+cat $SRCDIR/slack-desc > $PKG/install/slack-desc
+
+# Build the package:
+cd $PKG
+makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
+cd $OUTPUT
+md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz.md5
+cd -
+cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txt
+
diff --git a/extra/source/flashplayer-plugin/slack-desc b/extra/source/flashplayer-plugin/slack-desc
new file mode 100644
index 000000000..e7fb949ac
--- /dev/null
+++ b/extra/source/flashplayer-plugin/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler-----------------------------------------|
+flashplayer-plugin: flashplayer-plugin (flash plugin for web browsers)
+flashplayer-plugin:
+flashplayer-plugin: Provides Adobe Flash plugin for browsers that recognize
+flashplayer-plugin: /usr/lib/mozilla/plugins as a valid plugin directory
+flashplayer-plugin:
+flashplayer-plugin: Plugin is subject to Adobe terms of use:
+flashplayer-plugin: http://www.adobe.com/go/labs_term_of_use
+flashplayer-plugin:
+flashplayer-plugin: Plugin is subject to Adobe Flash EULA:
+flashplayer-plugin: http://labs.adobe.com/technologies/eula/flashplayer.html
+flashplayer-plugin:
diff --git a/extra/source/grub/grub-0.97-x86_64.patch b/extra/source/grub/grub-0.97-x86_64.patch
new file mode 100644
index 000000000..480e38fce
--- /dev/null
+++ b/extra/source/grub/grub-0.97-x86_64.patch
@@ -0,0 +1,809 @@
+diff -Naur grub-0.97.orig/docs/multiboot.h grub-0.97.patched/docs/multiboot.h
+--- grub-0.97.orig/docs/multiboot.h 2003-07-09 05:45:36.000000000 -0600
++++ grub-0.97.patched/docs/multiboot.h 2006-08-26 22:44:02.000000000 -0600
+@@ -44,76 +44,81 @@
+ /* Do not include here in boot.S. */
+
+ /* Types. */
++#ifndef __x86_64__
++typedef unsigned long UINT32;
++#else
++typedef unsigned UINT32;
++#endif
+
+ /* The Multiboot header. */
+ typedef struct multiboot_header
+ {
+- unsigned long magic;
+- unsigned long flags;
+- unsigned long checksum;
+- unsigned long header_addr;
+- unsigned long load_addr;
+- unsigned long load_end_addr;
+- unsigned long bss_end_addr;
+- unsigned long entry_addr;
++ UINT32 magic;
++ UINT32 flags;
++ UINT32 checksum;
++ UINT32 header_addr;
++ UINT32 load_addr;
++ UINT32 load_end_addr;
++ UINT32 bss_end_addr;
++ UINT32 entry_addr;
+ } multiboot_header_t;
+
+ /* The symbol table for a.out. */
+ typedef struct aout_symbol_table
+ {
+- unsigned long tabsize;
+- unsigned long strsize;
+- unsigned long addr;
+- unsigned long reserved;
++ UINT32 tabsize;
++ UINT32 strsize;
++ UINT32 addr;
++ UINT32 reserved;
+ } aout_symbol_table_t;
+
+ /* The section header table for ELF. */
+ typedef struct elf_section_header_table
+ {
+- unsigned long num;
+- unsigned long size;
+- unsigned long addr;
+- unsigned long shndx;
++ UINT32 num;
++ UINT32 size;
++ UINT32 addr;
++ UINT32 shndx;
+ } elf_section_header_table_t;
+
+ /* The Multiboot information. */
+ typedef struct multiboot_info
+ {
+- unsigned long flags;
+- unsigned long mem_lower;
+- unsigned long mem_upper;
+- unsigned long boot_device;
+- unsigned long cmdline;
+- unsigned long mods_count;
+- unsigned long mods_addr;
++ UINT32 flags;
++ UINT32 mem_lower;
++ UINT32 mem_upper;
++ UINT32 boot_device;
++ UINT32 cmdline;
++ UINT32 mods_count;
++ UINT32 mods_addr;
+ union
+ {
+ aout_symbol_table_t aout_sym;
+ elf_section_header_table_t elf_sec;
+ } u;
+- unsigned long mmap_length;
+- unsigned long mmap_addr;
++ UINT32 mmap_length;
++ UINT32 mmap_addr;
+ } multiboot_info_t;
+
+ /* The module structure. */
+ typedef struct module
+ {
+- unsigned long mod_start;
+- unsigned long mod_end;
+- unsigned long string;
+- unsigned long reserved;
++ UINT32 mod_start;
++ UINT32 mod_end;
++ UINT32 string;
++ UINT32 reserved;
+ } module_t;
+
+ /* The memory map. Be careful that the offset 0 is base_addr_low
+ but no size. */
+ typedef struct memory_map
+ {
+- unsigned long size;
+- unsigned long base_addr_low;
+- unsigned long base_addr_high;
+- unsigned long length_low;
+- unsigned long length_high;
+- unsigned long type;
++ UINT32 size;
++ UINT32 base_addr_low;
++ UINT32 base_addr_high;
++ UINT32 length_low;
++ UINT32 length_high;
++ UINT32 type;
+ } memory_map_t;
+
+ #endif /* ! ASM */
+diff -Naur grub-0.97.orig/docs/x86_64.txt grub-0.97.patched/docs/x86_64.txt
+--- grub-0.97.orig/docs/x86_64.txt 1969-12-31 17:00:00.000000000 -0700
++++ grub-0.97.patched/docs/x86_64.txt 2006-10-10 10:39:42.000000000 -0600
+@@ -0,0 +1,81 @@
++[PATCH] - Make GRUB recognize and boot an x86_64 elf image
++
++
++HOW IT WORKS
++------------
++* Grub interface is unchanged.
++* Upon passing an elf-x86_64 file via "kernel=", GRUB will load and parse it
++ correctly.
++* Upon the "boot" directive, GRUB will switch from protected 32-bit
++ mode to long 64-bit mode and transfer control to the image's entrypoint.
++
++
++INSTALL
++-------
++cd grub-0.97
++patch -p1 < grub-x86_64-elf.patch
++./configure
++make
++su -c "make install"
++
++Note: You do not need to re-install your bootsectors, but you WILL need
++ to copy the modified stage2 file(s) from /usr/share/grub to
++ your actual boot filesystem (usually /boot/grub for GNU/Linux).
++
++
++WHY?
++----
++Because in our world, all elves and elf images are created equal, and have
++been endowed with the ability to be bootable. :-)
++
++
++THE NITTY GRITTY - GRUB SIDE
++----------------------------
++* Since paging is manditory in 64-bit long mode, the first 4GB of physical
++ memory (whether present or not) is identity mapped into the linear
++ address space using 2MB pages.
++* Paging data structures are written to physical 0x70000-0x75fff in the
++ same area reserved for the raw device buffer. This happens after the
++ "boot" command is issued so the raw device buffer won't mind. Paging
++ can be relocated and reconfigured after the kernel is running.
++* Header files have been added to describe the x86_64 elf image structure.
++
++
++THE NITTY GRITTY - KERNEL SIDE
++------------------------------
++* Parameters passed to the assembly entrypoint are unchanged including
++ magic number and pointer to multiboot info structure.
++* The assembly entrypoint should be designated as ".code64".
++* The Global Descriptor Table (GDT) shared by the GRUB and KERNEL sides
++ has been expanded to include 3 additional 64-bit ('L' bit set) segments:
++ 0x28 (code) and 0x30 (data).
++* An updated "multiboot.h" file is provided to reflect the difference in
++ "unsigned long" sizes between i386 and x86_64 architectures for use by
++ the client kernel.
++
++
++CAVEATS
++-------
++Possible collisions with existing GRUB patch sets are unknown. Use "darcs"
++and worry not.
++
++ http://abridgegame.org/darcs
++
++(An intelligent alternative to cvs and greying hair in the distributed
++post-mainframe age.)
++
++
++DOCUMENTATION CHANGES
++---------------------
++This is it. Sorry, stuff to do.
++
++
++APOLOGIES TO GRUB2
++------------------
++We would have liked to use GRUB2 for this, but needed it today for our
++kernel. Of course there is probably no technical reason why this
++functionality cannot be in included in GRUB2 at a future time. Thank you
++for a way cool bootloader and may all your boots be bogon (and Vogon) free.
++
++<mcnster@gmail.com>
++October 10, 2006
+diff -Naur grub-0.97.orig/grub/asmstub.c grub-0.97.patched/grub/asmstub.c
+--- grub-0.97.orig/grub/asmstub.c 2005-02-16 13:45:14.000000000 -0700
++++ grub-0.97.patched/grub/asmstub.c 2006-08-26 22:43:24.000000000 -0600
+@@ -313,6 +313,12 @@
+ stop ();
+ }
+
++void
++multi_boot_64bit_doit (int start, int mb_info)
++{
++ stop ();
++}
++
+ /* sets it to linear or wired A20 operation */
+ void
+ gateA20 (int linear)
+diff -Naur grub-0.97.orig/stage2/asm.S grub-0.97.patched/stage2/asm.S
+--- grub-0.97.orig/stage2/asm.S 2004-06-19 10:55:22.000000000 -0600
++++ grub-0.97.patched/stage2/asm.S 2006-09-25 14:59:48.000000000 -0600
+@@ -1809,6 +1809,54 @@
+ /* error */
+ call EXT_C(stop)
+
++ENTRY(multi_boot_64bit_doit)
++ call EXT_C(stop_floppy)
++
++ /* dont squash these! */
++ movl 0x8(%esp), %esi
++ movl 0x4(%esp), %edi
++
++ cli
++
++ mov %cr0, %eax
++ and $0x7fffffff, %eax
++ mov %eax, %cr0
++
++ /* enable pae */
++ mov %cr4, %eax
++ or $0x20, %eax
++ mov %eax, %cr4
++
++ /* load cr3 with pml4 */
++ mov $PML4, %eax
++ mov %eax, %cr3
++
++ /* trigger long mode */
++ mov $0xc0000080, %ecx
++ rdmsr
++ or $0x100, %eax
++ wrmsr
++
++ /* enable paging to actually switch modes */
++ mov %cr0, %eax
++ or $0x80000000, %eax
++ mov %eax, %cr0
++
++ /* jump to relocation, flush prefetch queue, and reload %cs */
++ ljmp $0x28, $longmode
++.code64
++longmode:
++ mov $0x2BADB002, %eax
++
++ mov %rsi, %rbx
++ and $0xffffffff, %rsi
++
++ and $0xffffffff, %rdi
++ call *%rdi
++ /* NOTREACHED */
++ call EXT_C(stop)
++
++.code32
+ #endif /* ! STAGE1_5 */
+
+ /*
+@@ -2341,27 +2389,35 @@
+
+ .p2align 2 /* force 4-byte alignment */
+ gdt:
+- .word 0, 0
++ .word 0, 0 /* 0x0000 */
+ .byte 0, 0, 0, 0
+
+- /* code segment */
++ /* code segment */ /* 0x0008 */
+ .word 0xFFFF, 0
+ .byte 0, 0x9A, 0xCF, 0
+
+- /* data segment */
++ /* data segment */ /* 0x0010 */
+ .word 0xFFFF, 0
+ .byte 0, 0x92, 0xCF, 0
+
+- /* 16 bit real mode CS */
++ /* 16 bit real mode CS */ /* 0x0018 */
+ .word 0xFFFF, 0
+ .byte 0, 0x9E, 0, 0
+
+- /* 16 bit real mode DS */
++ /* 16 bit real mode DS/SS */ /* 0x0020 */
+ .word 0xFFFF, 0
+ .byte 0, 0x92, 0, 0
+
++ /* 64 bit long mode CS */ /* 0x0028 */
++ .word 0xFFFF, 0
++ .byte 0, 0x9A, 0xAF, 0
++
++ /* 64-bit long mode SS */ /* 0x0030 */
++ .word 0xFFFF, 0
++ .byte 0, 0x92, 0xAF, 0
+
+ /* this is the GDT descriptor */
+ gdtdesc:
+- .word 0x27 /* limit */
++ .word 0x33 /* limit */
+ .long gdt /* addr */
++ .long 0 /* in case we go to 64-bit mode */
+diff -Naur grub-0.97.orig/stage2/boot.c grub-0.97.patched/stage2/boot.c
+--- grub-0.97.orig/stage2/boot.c 2004-03-30 04:44:08.000000000 -0700
++++ grub-0.97.patched/stage2/boot.c 2006-08-25 22:20:17.000000000 -0600
+@@ -23,10 +23,11 @@
+
+ #include "freebsd.h"
+ #include "imgact_aout.h"
+-#include "i386-elf.h"
++#include "elf.h"
+
+ static int cur_addr;
+ entry_func entry_addr;
++unsigned long_64bit_mode = 0;
+ static struct mod_list mll[99];
+ static int linux_mem_size;
+
+@@ -50,7 +51,7 @@
+ {
+ struct multiboot_header *mb;
+ struct exec *aout;
+- Elf32_Ehdr *elf;
++ Elf_Ehdr *elf;
+ }
+ pu;
+ /* presuming that MULTIBOOT_SEARCH is large enough to encompass an
+@@ -100,21 +101,25 @@
+ || pu.elf->e_ident[EI_OSABI] == ELFOSABI_FREEBSD
+ || grub_strcmp (pu.elf->e_ident + EI_BRAND, "FreeBSD") == 0
+ || suggested_type == KERNEL_TYPE_NETBSD)
+- && len > sizeof (Elf32_Ehdr)
+- && BOOTABLE_I386_ELF ((*((Elf32_Ehdr *) buffer))))
++ && len > SIZEOF_ELF_EHDR (pu.elf)
++ && (BOOTABLE_I386_ELF ((*((Elf32_Ehdr *) buffer)))
++ || BOOTABLE_X86_64_ELF ((*((Elf64_Ehdr *) buffer)))))
+ {
++ if (BOOTABLE_X86_64_ELF ((*((Elf64_Ehdr *) buffer))))
++ long_64bit_mode = 1;
++
+ if (type == KERNEL_TYPE_MULTIBOOT)
+- entry_addr = (entry_func) pu.elf->e_entry;
++ entry_addr = (entry_func) E_ENTRY (pu.elf);
+ else
+- entry_addr = (entry_func) (pu.elf->e_entry & 0xFFFFFF);
++ entry_addr = (entry_func) (E_ENTRY (pu.elf) & 0xFFFFFF);
+
+ if (entry_addr < (entry_func) 0x100000)
+ errnum = ERR_BELOW_1MB;
+
+ /* don't want to deal with ELF program header at some random
+ place in the file -- this generally won't happen */
+- if (pu.elf->e_phoff == 0 || pu.elf->e_phnum == 0
+- || ((pu.elf->e_phoff + (pu.elf->e_phentsize * pu.elf->e_phnum))
++ if (E_PHOFF (pu.elf) == 0 || E_PHNUM (pu.elf) == 0
++ || ((E_PHOFF (pu.elf) + (E_PHENTSIZE (pu.elf) * E_PHNUM (pu.elf)))
+ >= len))
+ errnum = ERR_EXEC_FORMAT;
+ str = "elf";
+@@ -590,39 +595,38 @@
+ /* ELF executable */
+ {
+ unsigned loaded = 0, memaddr, memsiz, filesiz;
+- Elf32_Phdr *phdr;
++ Elf_Phdr *phdr;
+
+ /* reset this to zero for now */
+ cur_addr = 0;
+
+ /* scan for program segments */
+- for (i = 0; i < pu.elf->e_phnum; i++)
++ for (i = 0; i < E_PHNUM (pu.elf); i++)
+ {
+- phdr = (Elf32_Phdr *)
+- (pu.elf->e_phoff + ((int) buffer)
+- + (pu.elf->e_phentsize * i));
+- if (phdr->p_type == PT_LOAD)
++ phdr = (Elf_Phdr *) (E_PHOFF (pu.elf) + ((int) buffer)
++ + (E_PHENTSIZE (pu.elf) * i));
++ if (P_TYPE (pu.elf, phdr) == PT_LOAD)
+ {
+ /* offset into file */
+- grub_seek (phdr->p_offset);
+- filesiz = phdr->p_filesz;
++ grub_seek (P_OFFSET (pu.elf, phdr));
++ filesiz = P_FILESZ (pu.elf, phdr);
+
+ if (type == KERNEL_TYPE_FREEBSD || type == KERNEL_TYPE_NETBSD)
+- memaddr = RAW_ADDR (phdr->p_paddr & 0xFFFFFF);
++ memaddr = RAW_ADDR (P_PADDR (pu.elf, phdr) & 0xFFFFFF);
+ else
+- memaddr = RAW_ADDR (phdr->p_paddr);
++ memaddr = RAW_ADDR (P_PADDR (pu.elf, phdr));
+
+- memsiz = phdr->p_memsz;
++ memsiz = P_MEMSZ (pu.elf, phdr);
+ if (memaddr < RAW_ADDR (0x100000))
+ errnum = ERR_BELOW_1MB;
+
+ /* If the memory range contains the entry address, get the
+ physical address here. */
+ if (type == KERNEL_TYPE_MULTIBOOT
+- && (unsigned) entry_addr >= phdr->p_vaddr
+- && (unsigned) entry_addr < phdr->p_vaddr + memsiz)
++ && (unsigned) entry_addr >= P_VADDR (pu.elf, phdr)
++ && (unsigned) entry_addr < P_VADDR (pu.elf, phdr) + memsiz)
+ real_entry_addr = (entry_func) ((unsigned) entry_addr
+- + memaddr - phdr->p_vaddr);
++ + memaddr - P_VADDR (pu.elf, phdr));
+
+ /* make sure we only load what we're supposed to! */
+ if (filesiz > memsiz)
+@@ -654,26 +658,26 @@
+ else
+ {
+ /* Load ELF symbols. */
+- Elf32_Shdr *shdr = NULL;
++ Elf_Shdr *shdr = NULL;
+ int tab_size, sec_size;
+ int symtab_err = 0;
+
+- mbi.syms.e.num = pu.elf->e_shnum;
+- mbi.syms.e.size = pu.elf->e_shentsize;
+- mbi.syms.e.shndx = pu.elf->e_shstrndx;
++ mbi.syms.e.num = E_SHNUM (pu.elf);
++ mbi.syms.e.size = E_SHENTSIZE (pu.elf);
++ mbi.syms.e.shndx = E_SHSTRNDX (pu.elf);
+
+ /* We should align to a 4K boundary here for good measure. */
+ if (align_4k)
+ cur_addr = (cur_addr + 0xFFF) & 0xFFFFF000;
+
+- tab_size = pu.elf->e_shentsize * pu.elf->e_shnum;
++ tab_size = E_SHENTSIZE (pu.elf) * E_SHNUM (pu.elf);
+
+- grub_seek (pu.elf->e_shoff);
++ grub_seek (E_SHOFF (pu.elf));
+ if (grub_read ((char *) RAW_ADDR (cur_addr), tab_size)
+ == tab_size)
+ {
+ mbi.syms.e.addr = cur_addr;
+- shdr = (Elf32_Shdr *) mbi.syms.e.addr;
++ shdr = (Elf_Shdr *) mbi.syms.e.addr;
+ cur_addr += tab_size;
+
+ printf (", shtab=0x%x", cur_addr);
+@@ -682,20 +686,20 @@
+ {
+ /* This section is a loaded section,
+ so we don't care. */
+- if (shdr[i].sh_addr != 0)
++ if (SH_ADDR_AT (pu.elf, shdr, i) != 0)
+ continue;
+
+ /* This section is empty, so we don't care. */
+- if (shdr[i].sh_size == 0)
++ if (SH_SIZE_AT (pu.elf, shdr, i) == 0)
+ continue;
+
+ /* Align the section to a sh_addralign bits boundary. */
+- cur_addr = ((cur_addr + shdr[i].sh_addralign) &
+- - (int) shdr[i].sh_addralign);
++ cur_addr = ((cur_addr + SH_ADDRALIGN_AT (pu.elf, shdr, i)) &
++ - (int) SH_ADDRALIGN_AT (pu.elf, shdr, i));
+
+- grub_seek (shdr[i].sh_offset);
++ grub_seek (SH_OFFSET_AT (pu.elf, shdr, i));
+
+- sec_size = shdr[i].sh_size;
++ sec_size = SH_SIZE_AT (pu.elf, shdr, i);
+
+ if (! (memcheck (cur_addr, sec_size)
+ && (grub_read ((char *) RAW_ADDR (cur_addr),
+@@ -706,7 +710,7 @@
+ break;
+ }
+
+- shdr[i].sh_addr = cur_addr;
++ SET_SH_ADDR_AT (pu.elf, shdr, i, cur_addr);
+ cur_addr += sec_size;
+ }
+ }
+diff -Naur grub-0.97.orig/stage2/builtins.c grub-0.97.patched/stage2/builtins.c
+--- grub-0.97.orig/stage2/builtins.c 2005-02-15 14:58:23.000000000 -0700
++++ grub-0.97.patched/stage2/builtins.c 2006-09-25 14:59:16.000000000 -0600
+@@ -81,6 +81,7 @@
+ /* Prototypes for allowing straightfoward calling of builtins functions
+ inside other functions. */
+ static int configfile_func (char *arg, int flags);
++static void multi_boot_64bit (int entry_addr, int mbi);
+
+ /* Initialize the data for builtins. */
+ void
+@@ -297,8 +298,11 @@
+ break;
+
+ case KERNEL_TYPE_MULTIBOOT:
+- /* Multiboot */
+- multi_boot ((int) entry_addr, (int) &mbi);
++
++ if (long_64bit_mode)
++ multi_boot_64bit((int) entry_addr, (int) &mbi);
++ else
++ multi_boot ((int) entry_addr, (int) &mbi);
+ break;
+
+ default:
+@@ -309,6 +313,73 @@
+ return 0;
+ }
+
++#define TABLE_BITS 0x7 /* user, r/w, present */
++#define PAGE_BITS 0x87 /* not pat, not global, not dirty, not accessed, user, r/w, present */
++
++#define NOT_PRESENT_TABLE 0x6
++#define NOT_PRESENT_PAGE 0x86
++
++
++static void
++multi_boot_64bit (int entry_addr, int mbi)
++{
++ unsigned *pml4 = PML4;
++ unsigned *pdpt0x000 = PDPT0x000;
++ unsigned *pd0x000_000 = PD0x000_000;
++ unsigned *pd0x000_001 = PD0x000_001;
++ unsigned *pd0x000_002 = PD0x000_002;
++ unsigned *pd0x000_003 = PD0x000_003;
++ int i;
++ unsigned long base;
++
++ /* identity map 1st 4 GB */
++
++ for (i = 0; i < 512; i++)
++ {
++ pml4[i * 2 + 0] = NOT_PRESENT_TABLE;
++ pml4[i * 2 + 1] = 0;
++
++ pdpt0x000[i * 2 + 0] = NOT_PRESENT_TABLE;
++ pdpt0x000[i * 2 + 1] = 0;
++
++ pd0x000_000[i * 2 + 0] = NOT_PRESENT_PAGE;
++ pd0x000_000[i * 2 + 1] = 0;
++ pd0x000_001[i * 2 + 0] = NOT_PRESENT_PAGE;
++ pd0x000_001[i * 2 + 1] = 0;
++ pd0x000_002[i * 2 + 0] = NOT_PRESENT_PAGE;
++ pd0x000_002[i * 2 + 1] = 0;
++ pd0x000_003[i * 2 + 0] = NOT_PRESENT_PAGE;
++ pd0x000_003[i * 2 + 1] = 0;
++ }
++
++ pml4[0x000 * 2 + 0] = PDPT0x000 + TABLE_BITS;
++ pml4[0x000 * 2 + 1] = 0;
++
++ pdpt0x000[0x000 * 2 + 0] = PD0x000_000 + TABLE_BITS;
++ pdpt0x000[0x000 * 2 + 1] = 0;
++ pdpt0x000[0x001 * 2 + 0] = PD0x000_001 + TABLE_BITS;
++ pdpt0x000[0x001 * 2 + 1] = 0;
++ pdpt0x000[0x002 * 2 + 0] = PD0x000_002 + TABLE_BITS;
++ pdpt0x000[0x002 * 2 + 1] = 0;
++ pdpt0x000[0x003 * 2 + 0] = PD0x000_003 + TABLE_BITS;
++ pdpt0x000[0x003 * 2 + 1] = 0;
++
++ for (i = 0, base = 0; i < 1005; i++, base += 0x200000)
++ {
++ pd0x000_000[i * 2 + 0] = base + PAGE_BITS;
++ pd0x000_000[i * 2 + 1] = 0;
++ pd0x000_001[i * 2 + 0] = base + (1 * 0x200 * 0x20000) + PAGE_BITS;
++ pd0x000_001[i * 2 + 1] = 0;
++ pd0x000_002[i * 2 + 0] = base + (2 * 0x200 * 0x20000) + PAGE_BITS;
++ pd0x000_002[i * 2 + 1] = 0;
++ pd0x000_003[i * 2 + 0] = base + (3 * 0x200 * 0x20000) + PAGE_BITS;
++ pd0x000_003[i * 2 + 1] = 0;
++ }
++
++ multi_boot_64bit_doit (entry_addr, mbi);
++ /* NOTREACHED */
++}
++
+ static struct builtin builtin_boot =
+ {
+ "boot",
+diff -Naur grub-0.97.orig/stage2/elf.h grub-0.97.patched/stage2/elf.h
+--- grub-0.97.orig/stage2/elf.h 1969-12-31 17:00:00.000000000 -0700
++++ grub-0.97.patched/stage2/elf.h 2006-08-25 21:58:37.000000000 -0600
+@@ -0,0 +1,79 @@
++/*
++ * GRUB -- GRand Unified Bootloader
++ * Copyright (C) 2001,2002,2006 Free Software Foundation, Inc.
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
++ */
++
++
++#include "i386-elf.h"
++#include "x86-64-elf.h"
++
++
++typedef union
++{
++ unsigned char e_ident[EI_NIDENT];
++ Elf32_Ehdr elf32;
++ Elf64_Ehdr elf64;
++}
++Elf_Ehdr;
++
++
++typedef union
++{
++ Elf32_Phdr elf32;
++ Elf64_Phdr elf64;
++}
++Elf_Phdr;
++
++
++typedef union
++{
++ Elf32_Shdr elf32;
++ Elf64_Shdr elf64;
++}
++Elf_Shdr;
++
++
++#define SIZEOF_ELF_EHDR(h) (h->e_ident[EI_CLASS] == ELFCLASS32 ? sizeof (Elf32_Ehdr) : sizeof (Elf64_Ehdr))
++
++#define E_ENTRY(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_entry : h->elf64.e_entry))
++#define E_PHOFF(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_phoff : h->elf64.e_phoff))
++#define E_PHNUM(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_phnum : h->elf64.e_phnum))
++#define E_PHENTSIZE(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_phentsize : h->elf64.e_phentsize))
++#define E_SHNUM(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_shnum : h->elf64.e_shnum))
++#define E_SHENTSIZE(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_shentsize : h->elf64.e_shentsize))
++#define E_SHSTRNDX(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_shstrndx : h->elf64.e_shstrndx))
++#define E_SHOFF(h) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? h->elf32.e_shoff : h->elf64.e_shoff))
++
++#define P_TYPE(h, p) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? p->elf32.p_type : p->elf64.p_type))
++#define P_OFFSET(h, p) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? p->elf32.p_offset : p->elf64.p_offset))
++#define P_PADDR(h, p) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? p->elf32.p_paddr : p->elf64.p_paddr))
++#define P_MEMSZ(h, p) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? p->elf32.p_memsz : p->elf64.p_memsz))
++#define P_VADDR(h, p) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? p->elf32.p_vaddr : p->elf64.p_vaddr))
++#define P_FILESZ(h, p) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? p->elf32.p_filesz : p->elf64.p_filesz))
++
++#define SH_ADDR_AT(h, sh, i) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? ((&(sh->elf32))[i]).sh_addr : ((&(sh->elf64))[i]).sh_addr))
++#define SH_SIZE_AT(h, sh, i) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? ((&(sh->elf32))[i]).sh_size : ((&(sh->elf64))[i]).sh_size))
++#define SH_ADDRALIGN_AT(h, sh, i) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? ((&(sh->elf32))[i]).sh_addralign : ((&(sh->elf64))[i]).sh_addralign))
++#define SH_OFFSET_AT(h, sh, i) ((unsigned) (h->e_ident[EI_CLASS] == ELFCLASS32 ? ((&(sh->elf32))[i]).sh_offset : ((&(sh->elf64))[i]).sh_offset))
++
++#define SET_SH_ADDR_AT(h, sh, i, v) \
++ { \
++ if (h->e_ident[EI_CLASS] == ELFCLASS32) \
++ ((&(sh->elf32))[i]).sh_addr = v; \
++ else \
++ ((&(sh->elf64))[i]).sh_addr = v; \
++ }
+diff -Naur grub-0.97.orig/stage2/shared.h grub-0.97.patched/stage2/shared.h
+--- grub-0.97.orig/stage2/shared.h 2004-06-19 10:40:09.000000000 -0600
++++ grub-0.97.patched/stage2/shared.h 2006-09-25 14:54:53.000000000 -0600
+@@ -70,6 +70,13 @@
+
+ #define BOOT_PART_TABLE RAW_ADDR (0x07be)
+
++#define PML4 0x70000
++#define PDPT0x000 0x71000
++#define PD0x000_000 0x72000
++#define PD0x000_001 0x73000
++#define PD0x000_002 0x74000
++#define PD0x000_003 0x75000
++
+ /*
+ * BIOS disk defines
+ */
+@@ -692,6 +699,8 @@
+
+ extern entry_func entry_addr;
+
++extern unsigned long_64bit_mode;
++
+ /* Enter the stage1.5/stage2 C code after the stack is set up. */
+ void cmain (void);
+
+@@ -739,6 +748,9 @@
+ /* booting a multiboot executable */
+ void multi_boot (int start, int mb_info) __attribute__ ((noreturn));
+
++/* boot into 64-bit long mode */
++void multi_boot_64bit_doit (int start, int mb_info) __attribute__ ((noreturn));
++
+ /* If LINEAR is nonzero, then set the Intel processor to linear mode.
+ Otherwise, bit 20 of all memory accesses is always forced to zero,
+ causing a wraparound effect for bugwards compatibility with the
+diff -Naur grub-0.97.orig/stage2/x86-64-elf.h grub-0.97.patched/stage2/x86-64-elf.h
+--- grub-0.97.orig/stage2/x86-64-elf.h 1969-12-31 17:00:00.000000000 -0700
++++ grub-0.97.patched/stage2/x86-64-elf.h 2006-08-26 21:45:22.000000000 -0600
+@@ -0,0 +1,86 @@
++/*
++ * GRUB -- GRand Unified Bootloader
++ * Copyright (C) 2001,2002,2006 Free Software Foundation, Inc.
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
++ */
++
++
++typedef unsigned short Elf64_Half;
++typedef unsigned long Elf64_Word;
++typedef unsigned long long Elf64_Off;
++typedef unsigned long long Elf64_Addr;
++typedef unsigned long long Elf64_Xword;
++
++
++typedef struct
++{
++ unsigned char e_ident[EI_NIDENT]; /* basic identification block */
++ Elf64_Half e_type; /* file types */
++ Elf64_Half e_machine; /* machine types */
++ Elf64_Word e_version; /* use same as "EI_VERSION" above */
++ Elf64_Addr e_entry; /* entry point of the program */
++ Elf64_Off e_phoff; /* program header table file offset */
++ Elf64_Off e_shoff; /* section header table file offset */
++ Elf64_Word e_flags; /* flags */
++ Elf64_Half e_ehsize; /* elf header size in bytes */
++ Elf64_Half e_phentsize; /* program header entry size */
++ Elf64_Half e_phnum; /* number of entries in program header */
++ Elf64_Half e_shentsize; /* section header entry size */
++ Elf64_Half e_shnum; /* number of entries in section header */
++ Elf64_Half e_shstrndx; /* section header table index */
++}
++Elf64_Ehdr;
++
++
++typedef struct
++{
++ Elf64_Word p_type;
++ Elf64_Word p_flags;
++ Elf64_Off p_offset;
++ Elf64_Addr p_vaddr;
++ Elf64_Addr p_paddr;
++ Elf64_Xword p_filesz;
++ Elf64_Xword p_memsz;
++ Elf64_Xword p_align;
++}
++Elf64_Phdr;
++
++
++typedef struct
++{
++ Elf64_Word sh_name; /* Section name (string tbl index) */
++ Elf64_Word sh_type; /* Section type */
++ Elf64_Xword sh_flags; /* Section flags */
++ Elf64_Addr sh_addr; /* Section virtual addr at execution */
++ Elf64_Off sh_offset; /* Section file offset */
++ Elf64_Xword sh_size; /* Section size in bytes */
++ Elf64_Word sh_link; /* Link to another section */
++ Elf64_Word sh_info; /* Additional section information */
++ Elf64_Xword sh_addralign; /* Section alignment */
++ Elf64_Xword sh_entsize; /* Entry size if section holds table */
++}
++Elf64_Shdr;
++
++#define ELFCLASS64 2
++
++#define EM_X86_64 0x3e
++
++#define BOOTABLE_X86_64_ELF(h) \
++ ((h.e_ident[EI_MAG0] == ELFMAG0) & (h.e_ident[EI_MAG1] == ELFMAG1) \
++ & (h.e_ident[EI_MAG2] == ELFMAG2) & (h.e_ident[EI_MAG3] == ELFMAG3) \
++ & (h.e_ident[EI_CLASS] == ELFCLASS64) & (h.e_ident[EI_DATA] == ELFDATA2LSB) \
++ & (h.e_ident[EI_VERSION] == EV_CURRENT) & (h.e_type == ET_EXEC) \
++ & (h.e_machine == EM_X86_64) & (h.e_version == EV_CURRENT))
diff --git a/extra/source/grub/grub.SlackBuild b/extra/source/grub/grub.SlackBuild
new file mode 100755
index 000000000..417cb6364
--- /dev/null
+++ b/extra/source/grub/grub.SlackBuild
@@ -0,0 +1,121 @@
+#!/bin/sh
+
+# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+VERSION=0.97
+GCVER=1.28
+ARCH=${ARCH:-x86_64}
+BUILD=7
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2"
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-grub
+
+rm -rf $PKG
+mkdir -p $PKG $TMP
+cd $TMP
+rm -rf grub-$VERSION
+tar xvf $CWD/grub-$VERSION.tar.gz || exit 1
+cd grub-$VERSION || exit 1
+
+# This is needed for the optional (but now default) increase in
+# inode size from 128 to 256 bytes with ext2 and ext3:
+zcat $CWD/grub_support_256byte_inode.patch.gz | patch -p1 --verbose || exit 1
+
+zcat $CWD/grub-0.97-x86_64.patch.gz | patch -p1 || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --infodir=/usr/info \
+ --mandir=/usr/man
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress and if needed symlink the man pages:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Compress info pages and purge "dir" file from the package:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+mkdir -p $PKG/usr/doc/grub-$VERSION
+cp -a \
+ AUTHORS BUGS COPYING INSTALL MAINTENANCE NEWS README THANKS TODO \
+ $PKG/usr/doc/grub-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+# Add Kent's grubconfig tool:
+cd $TMP
+rm -rf grubconfig-$GCVER
+tar xf $CWD/grubconfig-${GCVER}.tar.gz || exit 1
+cd grubconfig-$GCVER || exit 1
+zcat $CWD/grubconfig_localefix.patch.gz | patch || exit 1
+chown -R root:root .
+chmod 644 README
+chmod 755 grubconfig
+mkdir -p $PKG/usr/doc/grubconfig-${GCVER}
+cp -a README $PKG/usr/doc/grubconfig-${GCVER}
+cp -a grubconfig $PKG/usr/sbin/grubconfig
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/grub-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/grub/grub_support_256byte_inode.patch b/extra/source/grub/grub_support_256byte_inode.patch
new file mode 100644
index 000000000..bef3bc18e
--- /dev/null
+++ b/extra/source/grub/grub_support_256byte_inode.patch
@@ -0,0 +1,94 @@
+diff -Nrup a/stage2/fsys_ext2fs.c b/stage2/fsys_ext2fs.c
+--- a/stage2/fsys_ext2fs.c 2004-08-08 20:19:18.000000000 +0200
++++ b/stage2/fsys_ext2fs.c 2008-01-30 14:27:20.000000000 +0100
+@@ -79,7 +79,52 @@ struct ext2_super_block
+ __u32 s_rev_level; /* Revision level */
+ __u16 s_def_resuid; /* Default uid for reserved blocks */
+ __u16 s_def_resgid; /* Default gid for reserved blocks */
+- __u32 s_reserved[235]; /* Padding to the end of the block */
++ /*
++ * These fields are for EXT2_DYNAMIC_REV superblocks only.
++ *
++ * Note: the difference between the compatible feature set and
++ * the incompatible feature set is that if there is a bit set
++ * in the incompatible feature set that the kernel doesn't
++ * know about, it should refuse to mount the filesystem.
++ *
++ * e2fsck's requirements are more strict; if it doesn't know
++ * about a feature in either the compatible or incompatible
++ * feature set, it must abort and not try to meddle with
++ * things it doesn't understand...
++ */
++ __u32 s_first_ino; /* First non-reserved inode */
++ __u16 s_inode_size; /* size of inode structure */
++ __u16 s_block_group_nr; /* block group # of this superblock */
++ __u32 s_feature_compat; /* compatible feature set */
++ __u32 s_feature_incompat; /* incompatible feature set */
++ __u32 s_feature_ro_compat; /* readonly-compatible feature set */
++ __u8 s_uuid[16]; /* 128-bit uuid for volume */
++ char s_volume_name[16]; /* volume name */
++ char s_last_mounted[64]; /* directory where last mounted */
++ __u32 s_algorithm_usage_bitmap; /* For compression */
++ /*
++ * Performance hints. Directory preallocation should only
++ * happen if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is on.
++ */
++ __u8 s_prealloc_blocks; /* Nr of blocks to try to preallocate*/
++ __u8 s_prealloc_dir_blocks; /* Nr to preallocate for dirs */
++ __u16 s_reserved_gdt_blocks;/* Per group table for online growth */
++ /*
++ * Journaling support valid if EXT2_FEATURE_COMPAT_HAS_JOURNAL set.
++ */
++ __u8 s_journal_uuid[16]; /* uuid of journal superblock */
++ __u32 s_journal_inum; /* inode number of journal file */
++ __u32 s_journal_dev; /* device number of journal file */
++ __u32 s_last_orphan; /* start of list of inodes to delete */
++ __u32 s_hash_seed[4]; /* HTREE hash seed */
++ __u8 s_def_hash_version; /* Default hash version to use */
++ __u8 s_jnl_backup_type; /* Default type of journal backup */
++ __u16 s_reserved_word_pad;
++ __u32 s_default_mount_opts;
++ __u32 s_first_meta_bg; /* First metablock group */
++ __u32 s_mkfs_time; /* When the filesystem was created */
++ __u32 s_jnl_blocks[17]; /* Backup of the journal inode */
++ __u32 s_reserved[172]; /* Padding to the end of the block */
+ };
+
+ struct ext2_group_desc
+@@ -218,6 +263,9 @@ struct ext2_dir_entry
+ #define EXT2_ADDR_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s) / sizeof (__u32))
+ #define EXT2_ADDR_PER_BLOCK_BITS(s) (log2(EXT2_ADDR_PER_BLOCK(s)))
+
++#define EXT2_INODE_SIZE(s) (SUPERBLOCK->s_inode_size)
++#define EXT2_INODES_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s)/EXT2_INODE_SIZE(s))
++
+ /* linux/ext2_fs.h */
+ #define EXT2_BLOCK_SIZE_BITS(s) ((s)->s_log_block_size + 10)
+ /* kind of from ext2/super.c */
+@@ -553,7 +601,7 @@ ext2fs_dir (char *dirname)
+ gdp = GROUP_DESC;
+ ino_blk = gdp[desc].bg_inode_table +
+ (((current_ino - 1) % (SUPERBLOCK->s_inodes_per_group))
+- >> log2 (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode)));
++ >> log2 (EXT2_INODES_PER_BLOCK (SUPERBLOCK)));
+ #ifdef E2DEBUG
+ printf ("inode table fsblock=%d\n", ino_blk);
+ #endif /* E2DEBUG */
+@@ -565,13 +613,12 @@ ext2fs_dir (char *dirname)
+ /* reset indirect blocks! */
+ mapblock2 = mapblock1 = -1;
+
+- raw_inode = INODE +
+- ((current_ino - 1)
+- & (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode) - 1));
++ raw_inode = (struct ext2_inode *)((char *)INODE +
++ ((current_ino - 1) & (EXT2_INODES_PER_BLOCK (SUPERBLOCK) - 1)) *
++ EXT2_INODE_SIZE (SUPERBLOCK));
+ #ifdef E2DEBUG
+ printf ("ipb=%d, sizeof(inode)=%d\n",
+- (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode)),
+- sizeof (struct ext2_inode));
++ EXT2_INODES_PER_BLOCK (SUPERBLOCK), EXT2_INODE_SIZE (SUPERBLOCK));
+ printf ("inode=%x, raw_inode=%x\n", INODE, raw_inode);
+ printf ("offset into inode table block=%d\n", (int) raw_inode - (int) INODE);
+ for (i = (unsigned char *) INODE; i <= (unsigned char *) raw_inode;
diff --git a/extra/source/grub/grubconfig_localefix.patch b/extra/source/grub/grubconfig_localefix.patch
new file mode 100644
index 000000000..6c1d4e9f9
--- /dev/null
+++ b/extra/source/grub/grubconfig_localefix.patch
@@ -0,0 +1,32 @@
+--- /usr/sbin/grubconfig 2006-03-24 09:28:41.000000000 +0100
++++ _developpement/debug/grubconfig 2007-05-12 16:51:57.000000000 +0200
+@@ -53,6 +53,10 @@
+ rm -rf $TMP $BOOT_TMP
+ mkdir -p $TMP $BOOT_TMP
+
++# We need to ensure the output is in english in order to match the devices
++# with fdisk.
++export LC_ALL=C
++
+ PATH=$PATH:/bin:/usr/bin:/sbin:/usr/sbin
+
+ # Menu to check if we want to use VESA framebuffer support:
+@@ -475,7 +479,8 @@
+ chmod 644 $BOOT/grub/$grub_config
+ message=yes
+ installcolor;
+- umount $BOOT_TMP 2>$TMP/null && rmdir $BOOT_TMP
++ umount $BOOT_TMP 2> $TMP/null
++ rmdir $BOOT_TMP 2> $TMP/null
+ rm -rf $TMP
+ }
+
+@@ -1004,8 +1009,6 @@
+ KILL=NO
+ fi
+ simplegrub
+- umount $BOOT_TMP 2>$TMP/null
+- rm -rf $TMP $BOOT_TMP
+ chroot_umount
+ exit
+ fi
diff --git a/extra/source/grub/slack-desc b/extra/source/grub/slack-desc
new file mode 100644
index 000000000..f3bead79e
--- /dev/null
+++ b/extra/source/grub/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+grub: grub (GNU GRUB Legacy bootloader)
+grub:
+grub: This is the legacy (0.9x) version of GNU GRUB, the GRand Unified
+grub: Bootloader. GRUB is an alternative to other familiar bootloaders
+grub: such as LILO. Unlike LILO, it loads a kernel through direct file-
+grub: system support rather than a block list so it does not need to be
+grub: updated if a new kernel is installed.
+grub:
+grub: Also included is Kent Robotti's 'grubconfig' tool (similar to the
+grub: Slackware 'liloconfig' setup tool).
+grub:
diff --git a/extra/source/jdk-6/COPYRIGHT b/extra/source/jdk-6/COPYRIGHT
new file mode 100644
index 000000000..2ae212072
--- /dev/null
+++ b/extra/source/jdk-6/COPYRIGHT
@@ -0,0 +1,74 @@
+Copyright © 2009 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+California 95054, U.S.A. All rights reserved.
+
+Sun Microsystems, Inc. has intellectual property rights relating to
+technology embodied in the product that is described in this document.
+In particular, and without limitation, these intellectual property
+rights may include one or more of the U.S. patents listed at
+http://www.sun.com/patents and one or more additional patents or pending
+patent applications in the U.S. and in other countries.
+
+THIS PRODUCT CONTAINS CONFIDENTIAL INFORMATION AND TRADE SECRETS OF SUN
+MICROSYSTEMS, INC. USE, DISCLOSURE OR REPRODUCTION IS PROHIBITED
+WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SUN MICROSYSTEMS, INC.
+
+U.S. Government Rights - Commercial software. Government users are
+subject to the Sun Microsystems, Inc. standard license agreement and
+applicable provisions of the FAR and its supplements.
+
+Use is subject to license terms.
+
+This distribution may include materials developed by third parties.
+
+Sun, Sun Microsystems, the Sun logo, Java and Java SE are trademarks or
+registered trademarks of Sun Microsystems, Inc. in the U.S. and other
+countries.
+
+This product is covered and controlled by U.S. Export Control laws and
+may be subject to the export or import laws in other countries.
+Nuclear, missile, chemical biological weapons or nuclear maritime end
+uses or end users, whether direct or indirect, are strictly prohibited.
+Export or reexport to countries subject to U.S. embargo or to entities
+identified on U.S. export exclusion lists, including, but not limited
+to, the denied persons and specially designated nationals lists is
+strictly prohibited.
+
+Copyright © 2009 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+California 95054, Etats-Unis. Tous droits rservs.
+
+Sun Microsystems, Inc. dtient les droits de proprit intellectuele
+relatifs la technologie incorpore dans le produit qui est dcrit dans ce
+document. En particulier, et ce sans limitation, ces droits de proprit
+intellectuelle peuvent inclure un ou plusieurs des brevets amricains
+lists l'adresse suivante: http://www.sun.com/patents et un ou
+plusieures de brevet en attente aux Etats - Unis et dans les autres
+pays.
+
+CE PRODUIT CONTIENT DES INFORMATIONS CONFIDENTIELLES ET DES SECRETS
+COMMERCIAUX DE SUN MICROSYSTEMS, INC. SON UTILISATION, SA DIVULGATION
+ET SA REPRODUCTION SONT INTERDITES SANS L AUTORISATION EXPRESSE, ECRITE
+ET PREALABLE DE SUN MICROSYSTEMS, INC.
+
+L'utilisation est soumise aux termes du contract de licence.
+
+Cette distributions peut inclure des elements dvelopps par des tiers.
+
+Sun, Sun Microsystems, le logo Sun, Java et Java SE sont des marques de
+fabrique ou des marques dposes de Sun Microsystems, Inc. aux Etats-Unis
+et dans d'autres pays.
+
+Ce produit est soumis la lgislation amricaine en matire de contrle des
+exportations et peut tre soumis la rglementation en vigueur dans
+d'autres pays dans le domaine des exportations et importations. Les
+utilisations finales, ou utilisateurs finaux, pour des armes
+nuclaires,des missiles, des armes biologiques et chimiques ou du
+nuclaire maritime, directement ou indirectement, sont strictement
+interdites. Les exportations ou rexportations vers les pays sous
+embargo amricain, ou vers des entits figurant sur les listes d'exclusion
+d'exportation des produits ou des services qui sont regis parla
+legislation amricaines, y compris, mais de manire non exhaustive, la
+liste de personnes qui font objet d'un ordre de ne pas participer, d'une
+faon directe ou indirecte, aux exportations des produits ou des services
+qui sont rgis par la lgislation amricaine sur le contrle des
+exportations et la liste de ressortissants spcifiquement dsigns, sont
+rigoureusement interdites.
diff --git a/extra/source/jdk-6/HOWTO-BUILD-TXZ b/extra/source/jdk-6/HOWTO-BUILD-TXZ
new file mode 100644
index 000000000..389b26891
--- /dev/null
+++ b/extra/source/jdk-6/HOWTO-BUILD-TXZ
@@ -0,0 +1,9 @@
+1. Download the file jdk-6u14-linux-i586.bin from
+ java.sun.com and put it in the directory.
+
+2. Run jdk.SlackBuild to package it as an installable
+ .txz package.
+
+Newer (or older) versions may be packaged by editing the
+version number in jdk.SlackBuild first.
+
diff --git a/extra/source/jdk-6/LICENSE b/extra/source/jdk-6/LICENSE
new file mode 100644
index 000000000..0e8bde048
--- /dev/null
+++ b/extra/source/jdk-6/LICENSE
@@ -0,0 +1,345 @@
+Sun Microsystems, Inc. Binary Code License Agreement
+
+for the JAVA SE DEVELOPMENT KIT (JDK), VERSION 6
+
+SUN MICROSYSTEMS, INC. ("SUN") IS WILLING TO LICENSE THE
+SOFTWARE IDENTIFIED BELOW TO YOU ONLY UPON THE CONDITION
+THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS BINARY
+CODE LICENSE AGREEMENT AND SUPPLEMENTAL LICENSE TERMS
+(COLLECTIVELY "AGREEMENT"). PLEASE READ THE AGREEMENT
+CAREFULLY. BY USING THE SOFTWARE YOU ACKNOWLEDGE THAT
+YOU HAVE READ THE TERMS AND AGREE TO THEM. IF YOU ARE
+AGREEING TO THESE TERMS ON BEHALF OF A COMPANY OR OTHER
+LEGAL ENTITY, YOU REPRESENT THAT YOU HAVE THE LEGAL
+AUTHORITY TO BIND THE LEGAL ENTITY TO THESE TERMS. IF
+YOU DO NOT HAVE SUCH AUTHORITY, OR IF YOU DO NOT WISH
+TO BE BOUND BY THE TERMS, THEN YOU MUST NOT USE THE
+SOFTWARE ON THIS SITE OR ANY OTHER MEDIA ON WHICH THE
+SOFTWARE IS CONTAINED.
+
+1. DEFINITIONS. "Software" means the identified above in
+binary form, any other machine readable materials
+(including, but not limited to, libraries, source files,
+header files, and data files), any updates or error
+corrections provided by Sun, and any user manuals,
+programming guides and other documentation provided to you
+by Sun under this Agreement. "General Purpose Desktop
+Computers and Servers" means computers, including desktop
+and laptop computers, or servers, used for general
+computing functions under end user control (such as but not
+specifically limited to email, general purpose Internet
+browsing, and office suite productivity tools).
+The use of Software in systems and solutions that provide
+dedicated functionality (other than as mentioned above) or
+designed for use in embedded or function-specific software
+applications, for example but not limited to: Software
+embedded in or bundled with industrial control systems,
+wireless mobile telephones, wireless handheld devices,
+netbooks, kiosks, TV/STB, Blu-ray Disc devices, telematics
+and network control switching equipment, printers and
+storage management systems, and other related systems are
+excluded from this definition and not licensed under this
+Agreement. "Programs" means Java technology applets and
+applications intended to run on the Java Platform Standard
+Edition (Java SE) platform on Java-enabled General Purpose
+Desktop Computers and Servers.
+
+2. LICENSE TO USE. Subject to the terms and conditions of
+this Agreement, including, but not limited to the Java
+Technology Restrictions of the Supplemental License Terms,
+Sun grants you a non-exclusive, non-transferable, limited
+license without license fees to reproduce and use
+internally Software complete and unmodified for the sole
+purpose of running Programs. Additional licenses for
+developers and/or publishers are granted in the
+Supplemental License Terms.
+
+3. RESTRICTIONS. Software is confidential and copyrighted.
+Title to Software and all associated intellectual property
+rights is retained by Sun and/or its licensors. Unless
+enforcement is prohibited by applicable law, you may not
+modify, decompile, or reverse engineer Software. You
+acknowledge that Licensed Software is not designed or
+intended for use in the design, construction, operation or
+maintenance of any nuclear facility. Sun Microsystems, Inc.
+disclaims any express or implied warranty of fitness for
+such uses. No right, title or interest in or to any
+trademark, service mark, logo or trade name of Sun or its
+licensors is granted under this Agreement. Additional
+restrictions for developers and/or publishers licenses are
+set forth in the Supplemental License Terms.
+
+4. LIMITED WARRANTY. Sun warrants to you that for a period
+of ninety (90) days from the date of purchase, as evidenced
+by a copy of the receipt, the media on which Software is
+furnished (if any) will be free of defects in materials and
+workmanship under normal use. Except for the foregoing,
+Software is provided "AS IS". Your exclusive remedy and
+Sun's entire liability under this limited warranty will be
+at Sun's option to replace Software media or refund the fee
+paid for Software. Any implied warranties on the Software
+are limited to 90 days. Some states do not allow
+limitations on duration of an implied warranty, so the
+above may not apply to you. This limited warranty gives you
+specific legal rights. You may have others, which vary from
+state to state.
+
+5. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS
+AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS,
+REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED
+WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE
+EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY
+INVALID.
+
+6. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY
+LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
+ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT,
+CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
+CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT
+OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE,
+EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES. In no event will Sun's liability to you, whether
+in contract, tort (including negligence), or otherwise,
+exceed the amount paid by you for Software under this
+Agreement. The foregoing limitations will apply even if the
+above stated warranty fails of its essential purpose. Some
+states do not allow the exclusion of incidental or
+consequential damages, so some of the terms above may not
+be applicable to you.
+
+7. TERMINATION. This Agreement is effective until
+terminated. You may terminate this Agreement at any time by
+destroying all copies of Software. This Agreement will
+terminate immediately without notice from Sun if you fail
+to comply with any provision of this Agreement. Either
+party may terminate this Agreement immediately should any
+Software become, or in either party's opinion be likely to
+become, the subject of a claim of infringement of any
+intellectual property right. Upon Termination, you must
+destroy all copies of Software.
+
+8. EXPORT REGULATIONS. All Software and technical data
+delivered under this Agreement are subject to US export
+control laws and may be subject to export or import
+regulations in other countries. You agree to comply
+strictly with all such laws and regulations and acknowledge
+that you have the responsibility to obtain such licenses to
+export, re-export, or import as may be required after
+delivery to you.
+
+9. TRADEMARKS AND LOGOS. You acknowledge and agree as
+between you and Sun that Sun owns the SUN, SOLARIS, JAVA,
+JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS,
+JAVA, JINI, FORTE, and iPLANET-related trademarks, service
+marks, logos and other brand designations ("Sun Marks"),
+and you agree to comply with the Sun Trademark and Logo
+Usage Requirements currently located at
+http://www.sun.com/policies/trademarks. Any use you make of
+the Sun Marks inures to Sun's benefit.
+
+10. U.S. GOVERNMENT RESTRICTED RIGHTS. If Software is being
+acquired by or on behalf of the U.S. Government or by a
+U.S. Government prime contractor or subcontractor (at any
+tier), then the Government's rights in Software and
+accompanying documentation will be only as set forth in
+this Agreement; this is in accordance with 48 CFR 227.7201
+through 227.7202-4 (for Department of Defense (DOD)
+acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD
+acquisitions).
+
+11. GOVERNING LAW. Any action related to this Agreement
+will be governed by California law and controlling U.S.
+federal law. No choice of law rules of any jurisdiction
+will apply.
+
+12. SEVERABILITY. If any provision of this Agreement is
+held to be unenforceable, this Agreement will remain in
+effect with the provision omitted, unless omission would
+frustrate the intent of the parties, in which case this
+Agreement will immediately terminate.
+
+13. INTEGRATION. This Agreement is the entire agreement
+between you and Sun relating to its subject matter. It
+supersedes all prior or contemporaneous oral or written
+communications, proposals, representations and warranties
+and prevails over any conflicting or additional terms of
+any quote, order, acknowledgment, or other communication
+between the parties relating to its subject matter during
+the term of this Agreement. No modification of this
+Agreement will be binding, unless in writing and signed by
+an authorized representative of each party.
+
+SUPPLEMENTAL LICENSE TERMS
+
+These Supplemental License Terms add to or modify the terms
+of the Binary Code License Agreement. Capitalized terms not
+defined in these Supplemental Terms shall have the same
+meanings ascribed to them in the Binary Code License
+Agreement . These Supplemental Terms shall supersede any
+inconsistent or conflicting terms in the Binary Code
+License Agreement, or in any license contained within the
+Software.
+
+A. Software Internal Use and Development License Grant.
+Subject to the terms and conditions of this Agreement and
+restrictions and exceptions set forth in the Software
+"README" file incorporated herein by reference, including,
+but not limited to the Java Technology Restrictions of
+these Supplemental Terms, Sun grants you a non-exclusive,
+non-transferable, limited license without fees to reproduce
+internally and use internally the Software complete and
+unmodified for the purpose of designing, developing, and
+testing your Programs.
+
+B. License to Distribute Software. Subject to the terms and
+conditions of this Agreement and restrictions and
+exceptions set forth in the Software README file,
+including, but not limited to the Java Technology
+Restrictions of these Supplemental Terms, Sun grants you a
+non-exclusive, non-transferable, limited license without
+fees to reproduce and distribute the Software, provided
+that (i) you distribute the Software complete and
+unmodified and only bundled as part of, and for the sole
+purpose of running, your Programs, (ii) the Programs add
+significant and primary functionality to the Software,
+(iii) you do not distribute additional software intended to
+replace any component(s) of the Software, (iv) you do not
+remove or alter any proprietary legends or notices
+contained in the Software, (v) you only distribute the
+Software subject to a license agreement that protects Sun's
+interests consistent with the terms contained in this
+Agreement, and (vi) you agree to defend and indemnify Sun
+and its licensors from and against any damages, costs,
+liabilities, settlement amounts and/or expenses (including
+attorneys' fees) incurred in connection with any claim,
+lawsuit or action by any third party that arises or results
+from the use or distribution of any and all Programs and/or
+Software.
+
+C. License to Distribute Redistributables. Subject to the
+terms and conditions of this Agreement and restrictions and
+exceptions set forth in the Software README file, including
+but not limited to the Java Technology Restrictions of
+these Supplemental Terms, Sun grants you a non-exclusive,
+non-transferable, limited license without fees to reproduce
+and distribute those files specifically identified as
+redistributable in the Software "README" file
+("Redistributables") provided that: (i) you distribute the
+Redistributables complete and unmodified, and only bundled
+as part of Programs, (ii) the Programs add significant and
+primary functionality to the Redistributables, (iii) you do
+not distribute additional software intended to supersede
+any component(s) of the Redistributables (unless otherwise
+specified in the applicable README file), (iv) you do not
+remove or alter any proprietary legends or notices
+contained in or on the Redistributables, (v) you only
+distribute the Redistributables pursuant to a license
+agreement that protects Sun's interests consistent with the
+terms contained in the Agreement, (vi) you agree to defend
+and indemnify Sun and its licensors from and against any
+damages, costs, liabilities, settlement amounts and/or
+expenses (including attorneys' fees) incurred in connection
+with any claim, lawsuit or action by any third party that
+arises or results from the use or distribution of any and
+all Programs and/or Software.
+
+D. Java Technology Restrictions. You may not create,
+modify, or change the behavior of, or authorize your
+licensees to create, modify, or change the behavior of,
+classes, interfaces, or subpackages that are in any way
+identified as "java", "javax", "sun" or similar convention
+as specified by Sun in any naming convention designation.
+
+E. Distribution by Publishers. This section pertains to
+your distribution of the Software with your printed book or
+magazine (as those terms are commonly used in the industry)
+relating to Java technology ("Publication"). Subject to and
+conditioned upon your compliance with the restrictions and
+obligations contained in the Agreement, in addition to the
+license granted in Paragraph 1 above, Sun hereby grants to
+you a non-exclusive, nontransferable limited right to
+reproduce complete and unmodified copies of the Software on
+electronic media (the "Media") for the sole purpose of
+inclusion and distribution with your Publication(s),
+subject to the following terms: (i) You may not distribute
+the Software on a stand-alone basis; it must be distributed
+with your Publication(s); (ii) You are responsible for
+downloading the Software from the applicable Sun web site;
+(iii) You must refer to the Software as JavaTM SE
+Development Kit 6; (iv) The Software must be reproduced in
+its entirety and without any modification whatsoever
+(including, without limitation, the Binary Code License and
+Supplemental License Terms accompanying the Software and
+proprietary rights notices contained in the Software);
+(v) The Media label shall include the following
+information: Copyright 2006, Sun Microsystems, Inc. All
+rights reserved. Use is subject to license terms. Sun, Sun
+Microsystems, the Sun logo, Solaris, Java, the Java Coffee
+Cup logo, J2SE, and all trademarks and logos based on Java
+are trademarks or registered trademarks of Sun
+Microsystems, Inc. in the U.S. and other countries. This
+information must be placed on the Media label in such a
+manner as to only apply to the Sun Software; (vi) You must
+clearly identify the Software as Sun's product on the Media
+holder or Media label, and you may not state or imply that
+Sun is responsible for any third-party software contained
+on the Media; (vii) You may not include any third party
+software on the Media which is intended to be a replacement
+or substitute for the Software; (viii) You shall indemnify
+Sun for all damages arising from your failure to comply
+with the requirements of this Agreement. In addition, you
+shall defend, at your expense, any and all claims brought
+against Sun by third parties, and shall pay all damages
+awarded by a court of competent jurisdiction, or such
+settlement amount negotiated by you, arising out of or in
+connection with your use, reproduction or distribution of
+the Software and/or the Publication. Your obligation to
+provide indemnification under this section shall arise
+provided that Sun: (a) provides you prompt notice of the
+claim; (b) gives you sole control of the defense and
+settlement of the claim; (c) provides you, at your expense,
+with all available information, assistance and authority to
+defend; and (d) has not compromised or settled such claim
+without your prior written consent; and (ix) You shall
+provide Sun with a written notice for each Publication;
+such notice shall include the following information: (1)
+title of Publication, (2) author(s), (3) date of
+Publication, and (4) ISBN or ISSN numbers. Such notice
+shall be sent to Sun Microsystems, Inc., 4150 Network
+Circle, M/S USCA12-110, Santa Clara, California 95054,
+U.S.A , Attention: Contracts Administration.
+
+F. Source Code. Software may contain source code that,
+unless expressly licensed for other purposes, is provided
+solely for reference purposes pursuant to the terms of this
+Agreement. Source code may not be redistributed unless
+expressly provided for in this Agreement.
+
+G. Third Party Code. Additional copyright notices and
+license terms applicable to portions of the Software are
+set forth in the THIRDPARTYLICENSEREADME.txt file. In
+addition to any terms and conditions of any third party
+opensource/freeware license identified in the
+THIRDPARTYLICENSEREADME.txt file, the disclaimer of
+warranty and limitation of liability provisions in
+paragraphs 5 and 6 of the Binary Code License Agreement
+shall apply to all Software in this distribution.
+
+H. Termination for Infringement. Either party may terminate
+this Agreement immediately should any Software become, or
+in either party's opinion be likely to become, the subject
+of a claim of infringement of any intellectual property
+right.
+
+I. Installation and Auto-Update. The Software's
+installation and auto-update processes transmit a limited
+amount of data to Sun (or its service provider) about those
+specific processes to help Sun understand and optimize
+them. Sun does not associate the data with personally
+identifiable information. You can find more information
+about the data Sun collects at http://java.com/data/.
+
+For inquiries please contact: Sun Microsystems, Inc., 4150
+Network Circle, Santa Clara, California 95054, U.S.A.
+
diff --git a/extra/source/jdk-6/README.html b/extra/source/jdk-6/README.html
new file mode 100644
index 000000000..600209cab
--- /dev/null
+++ b/extra/source/jdk-6/README.html
@@ -0,0 +1,714 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+
+<html>
+<head>
+ <meta http-equiv="CONTENT-TYPE" content="text/html; charset=us-ascii">
+ <meta name="collection" content="reference">
+
+ <title>README -- Java Platform, Standard Edition Development Kit</title>
+</head>
+
+<body lang="en-US" bgcolor="#FFFFFF">
+ <h1 align="center">README</h1>
+
+ <h2 align="center">Java<sup><font size="-2">TM</font></sup> Platform,
+ Standard Edition 6<br>
+ Development Kit</h2>
+
+ <p align="center"><b>JDK<sup><font size="-2">TM</font></sup> 6</b></p>
+
+ <h2>Contents</h2>
+
+ <ul>
+ <li><a href="#introduction">Introduction</a></li>
+
+ <li><a href="#install">System Requirements &amp; Installation</a></li>
+
+ <li><a href="#docs">JDK Documentation</a></li>
+
+ <li><a href="#relnotes">Release Notes</a></li>
+
+ <li><a href="#compatibility">Compatibility</a></li>
+
+ <li><a href="#bugs">Bug Reports and Feedback</a></li>
+
+ <li><a href="#contents">Contents of the JDK</a></li>
+
+ <li><a href="#jre">Java Runtime Environment</a></li>
+
+ <li><a href="#redistribution">Redistribution</a></li>
+
+ <li><a href="#endorsed">Java Endorsed Standards Override
+ Mechanism</a></li>
+
+ <li><a href="#javadb">Java DB</a></li>
+
+ <li><a href="#webpages">Web Pages</a></li>
+ </ul>
+
+ <h2><a name="introduction" id="introduction"></a>Introduction</h2>
+
+ <blockquote>
+ Thank you for downloading this release of the Java<sup><font size=
+ "-2">TM</font></sup> Platform, Standard Edition Development Kit
+ (JDK<sup><font size="-2">TM</font></sup>). The JDK is a development
+ environment for building applications, applets, and components using the
+ Java programming language.
+ </blockquote>
+
+ <blockquote>
+ The JDK includes tools useful for developing and testing programs written
+ in the Java programming language and running on the Java<sup><font size=
+ "-2">TM</font></sup> platform.
+ </blockquote>
+
+ <h2><a name="install" id="install"></a>System Requirements &amp;
+ Installation</h2>
+
+ <blockquote>
+ System requirements, installation instructions and troubleshooting tips
+ are located on the Java Software web site at:
+ </blockquote>
+
+ <blockquote>
+ <a href="http://java.sun.com/javase/6/webnotes/install/">JDK 6
+ Installation Instructions</a>
+ </blockquote>
+
+ <h2><a name="docs" id="docs"></a>JDK<sup><font size="-2">TM</font></sup>
+ Documentation</h2>
+
+ <blockquote>
+ The on-line <a href=
+ "http://java.sun.com/javase/6/docs/">Java<sup><font size=
+ "-2">TM</font></sup> Platform, Standard Edition (Java SE)
+ Documentation</a> contains API specifications, feature descriptions,
+ developer guides, reference pages for JDK<sup><font size=
+ "-2">TM</font></sup> tools and utilities, demos, and links to related
+ information. This documentation is also available in a download bundle
+ which you can install on your machine. To obtain the documentation bundle,
+ see the <a href="http://java.sun.com/javase/6/download.jsp">download
+ page</a>. For API documentation, refer to the <a href=
+ "http://java.sun.com/javase/6/docs/api/index.html">The
+ Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition API
+ Specification</a> This provides brief descriptions of the API with an
+ emphasis on specifications, not on code examples.
+ </blockquote>
+
+ <h2><a name="relnotes" id="relnotes"></a>Release Notes</h2>
+
+ <blockquote>
+ See the <a href="http://java.sun.com/javase/6/webnotes/">Java SE 6 Release
+ Notes</a> on the Java Software web site for additional information
+ pertaining to this release. Please check the on-line release notes
+ occasionally for the latest information as they will be updated as needed.
+ </blockquote>
+
+ <h2><a name="compatibility" id="compatibility"></a>Compatibility</h2>
+
+ <blockquote>
+ See <a href=
+ "http://java.sun.com/javase/6/webnotes/compatibility.html">Compatibility
+ with Previous Releases</a> on the Java Software web site for the list of
+ known compatibility issues. Every effort has been made to support programs
+ written for previous versions of the Java<sup><font size=
+ "-2">TM</font></sup> platform. Although some incompatible changes were
+ necessary, most software should migrate to the current version with no
+ reprogramming. Any failure to do so is considered a bug, except for a
+ small number of cases where compatibility was deliberately broken, as
+ described on our compatibility web page. Some compatibility-breaking
+ changes were required to close potential security holes or to fix
+ implementation or design bugs.
+ </blockquote>
+
+ <h2><a name="bugs" id="bugs"></a>Bug Reports and Feedback</h2>
+
+ <blockquote>
+ The <a href="http://bugs.sun.com/bugdatabase/index.jsp">Bug Database</a>
+ web site lets you search for and examine existing bug reports, submit your
+ own bug reports, and tell us which bug fixes matter most to you. To
+ directly submit a bug or request a feature, fill out this form:
+ </blockquote>
+
+ <blockquote>
+ <a href=
+ "http://bugs.sun.com/services/bugreport/index.jsp">http://bugs.sun.com/services/bugreport/index.jsp</a>
+ </blockquote>
+
+ <blockquote>
+ You can send feedback to the <a href=
+ "http://developers.sun.com/contact/feedback.jsp?&category=docteam">Java SE documentation
+ team</a>. You can also send comments directly to <a href=
+ "http://developers.sun.com/contact/index.jsp">Java Software engineering
+ team email addresses</a>.
+ </blockquote>
+
+ <blockquote>
+ <b>Note</b> - Please do not seek technical support through the Bug
+ Database or our development teams. For support options, see <a href=
+ "http://java.sun.com/developer/support/">Support and Services</a> on the
+ Java Software web site.
+ </blockquote>
+
+ <h2><a name="contents" id="contents"></a>Contents of the JDK<sup><font size=
+ "-2">TM</font></sup></h2>
+
+ <blockquote>
+ This section contains a general summary of the files and directories in
+ the JDK<sup><font size="-2">TM</font></sup>. For details on the files and
+ directories, see the <a href=
+ "http://java.sun.com/javase/6/docs/technotes/tools/index.html#general">JDK
+ File Structure</a> section of the Java SE documentation for your platform.
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><b>Development Tools</b></dt>
+
+ <dd>(In the <code>bin/</code> subdirectory) Tools and utilities that
+ will help you develop, execute, debug, and document programs written
+ in the Java<sup><font size="-2">TM</font></sup> programming language.
+ For further information, see the <a href=
+ "http://java.sun.com/javase/6/docs/technotes/tools/index.html">tool
+ documentation</a>.<br>
+ <br></dd>
+
+ <dt><b>Runtime Environment</b></dt>
+
+ <dd>(In the <code>jre/</code> subdirectory) An implementation of the
+ Java Runtime Environment (JRE<sup><font size="-2">TM</font></sup>) for
+ use by the JDK. The JRE includes a Java<sup><font size=
+ "-2">TM</font></sup> Virtual Machine (JVM<sup><font size=
+ "-2">TM</font></sup>), class libraries, and other files that support
+ the execution of programs written in the Java<sup><font size=
+ "-2">TM</font></sup> programming language.<br>
+ <br></dd>
+
+ <dt><b>Additional Libraries</b></dt>
+
+ <dd>(In the <code>lib/</code> subdirectory) Additional class libraries
+ and support files required by the development tools.<br>
+ <br></dd>
+
+ <dt><b>Demo Applets and Applications</b></dt>
+
+ <dd>(In the <code>demo/</code> subdirectory) Examples, with source
+ code, of programming for the Java<sup><font size="-2">TM</font></sup>
+ platform. These include examples that use Swing and other
+ Java<sup><font size="-2">TM</font></sup> Foundation Classes, and the
+ Java<sup><font size="-2">TM</font></sup> Platform Debugger
+ Architecture.<br>
+ <br></dd>
+
+ <dt><b>Sample Code</b></dt>
+
+ <dd>(In the <code>sample</code> subdirectory) Samples, with source
+ code, of programming for certain Java API's.<br>
+ <br></dd>
+
+ <dt><b>C header Files</b></dt>
+
+ <dd>(In the <code>include/</code> subdirectory) Header files that
+ support native-code programming using the <a href=
+ "http://java.sun.com/javase/6/docs/technotes/guides/jni/">Java Native
+ Interface</a>, the <a href=
+ "http://java.sun.com/javase/6/docs/technotes/guides/jvmti/">JVM<sup><font size="-2">TM</font></sup>
+ Tool Interface</a>, and other functionality of the
+ Java<sup><font size="-2">TM</font></sup> platform.<br>
+ <br></dd>
+
+ <dt><b>Source Code</b></dt>
+
+ <dd>(In <code>src.zip</code>) Java<sup><font size="-2">TM</font></sup>
+ programming language source files for all classes that make up the
+ Java&nbsp;core API (that is, sources files for the java.*, javax.* and
+ some org.* packages, but not for com.sun.* packages). This source code
+ is provided for informational purposes only, to help developers learn
+ and use the Java<sup><font size="-2">TM</font></sup> programming
+ language. These files do not include platform-specific implementation
+ code and cannot be used to rebuild the class libraries. To extract
+ these file, use any common zip utility. Or, you may use the Jar
+ utility in the JDK's <code>bin/</code> directory:<br>
+ <br>
+ <code>jar xvf src.zip</code></dd>
+ </dl>
+ </dd>
+ </dl>
+
+ <h2><a name="jre" id="jre"></a>The Java Runtime Environment
+ (JRE<sup><font size="-2">TM</font></sup>)</h2>
+
+ <blockquote>
+ The Java<sup><font size="-2">TM</font></sup> Runtime Environment
+ (JRE<sup><font size="-2">TM</font></sup>) is available as a separately
+ downloadable product. See the <a href=
+ "http://java.sun.com/javase/6/download.jsp">download web site</a>.
+ </blockquote>
+
+ <blockquote>
+ The JRE allows you to run applications written in the Java<sup><font size=
+ "-2">TM</font></sup> programming language. Like the JDK<sup><font size=
+ "-2">TM</font></sup>, it contains the Java<sup><font size=
+ "-2">TM</font></sup> Virtual Machine (JVM<sup><font size=
+ "-2">TM</font></sup>), classes comprising the Java<sup><font size=
+ "-2">TM</font></sup> platform API, and supporting files. Unlike the JDK,
+ it does not contain development tools such as compilers and debuggers.
+ </blockquote>
+
+ <blockquote>
+ You can freely redistribute the JRE with your application, according to
+ the terms of the JRE license. Once you have developed your application
+ using the JDK, you can ship it with the JRE so your end-users will have a
+ Java<sup><font size="-2">TM</font></sup> platform on which to run your
+ software.
+ </blockquote>
+
+ <h2><a name="redistribution" id="redistribution"></a>Redistribution</h2>
+
+ <blockquote>
+ <blockquote>
+ <hr>
+ NOTE - The license for this software does not allow the redistribution
+ of beta and other pre-release versions.
+ <hr>
+ </blockquote>
+ </blockquote>
+
+ <blockquote>
+ Subject to the terms and conditions of the Software License Agreement and
+ the obligations, restrictions, and exceptions set forth below, You may
+ reproduce and distribute the Software (and also portions of Software
+ identified below as Redistributable), provided that:
+ </blockquote>
+
+ <blockquote>
+ <ol type="a">
+ <li>you distribute the Software complete and unmodified and only bundled
+ as part of Your applets and applications ("Programs"),</li>
+
+ <li>your Programs add significant and primary functionality to the
+ Software,</li>
+
+ <li>your Programs are only intended to run on Java-enabled general
+ purpose desktop computers and servers,</li>
+
+ <li>you distribute Software for the sole purpose of running your
+ Programs,</li>
+
+ <li>you do not distribute additional software intended to replace any
+ component(s) of the Software,</li>
+
+ <li>you do not remove or alter any proprietary legends or notices
+ contained in or on the Software,</li>
+
+ <li>you only distribute the Software subject to a license agreement that
+ protects Sun's interests consistent with the terms contained in this
+ Agreement, and</li>
+
+ <li>you agree to defend and indemnify Sun and its licensors from and
+ against any damages, costs, liabilities, settlement amounts and/or
+ expenses (including attorneys' fees) incurred in connection with any
+ claim, lawsuit or action by any third party that arises or results from
+ the use or distribution of any and all Programs and/or Software.</li>
+ </ol>
+ </blockquote>
+
+ <blockquote>
+ The term "vendors" used here refers to licensees, developers, and
+ independent software vendors (ISVs) who license and distribute the
+ Java<sup><font size="-2">TM</font></sup> Development Kit
+ (JDK<sup><font size="-2">TM</font></sup>) with their programs.
+ </blockquote>
+
+ <blockquote>
+ Vendors must follow the terms of the Java Development Kit Binary Code
+ License agreement.
+ </blockquote>
+
+ <h3>Required vs. Optional Files</h3>
+
+ <blockquote>
+ The files that make up the Java<sup><font size="-2">TM</font></sup>
+ Development Kit (JDK<sup><font size="-2">TM</font></sup>) are divided into
+ two categories: required and optional. Optional files may be excluded from
+ redistributions of the JDK at the vendor's discretion.
+ </blockquote>
+
+ <blockquote>
+ The following section contains a list of the files and directories that
+ may optionally be omitted from redistributions of the JDK. All files not
+ in these lists of optional files must be included in redistributions of
+ the JDK.
+ </blockquote>
+
+ <h3>Optional Files and Directories</h3>
+
+ <blockquote>
+ The following files may be optionally excluded from redistributions. These
+ files are located in the jdk1.6.0_&lt;version&gt; directory, where
+ &lt;version&gt; is the update version number. Solaris<sup><font size=
+ "-2">TM</font></sup> and Linux filenames and separators are shown. Windows
+ executables have the ".exe" suffix. Corresponding files with
+ <code>_g</code> in the name can also be excluded. The corresponding man
+ pages should be excluded for any excluded executables (with paths listed
+ below beginning with <code>bin/</code>, for the Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System and Linux).
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><code>jre/lib/charsets.jar</code></dt>
+
+ <dd>Character conversion classes</dd>
+
+ <dt><code>jre/lib/ext/</code></dt>
+
+ <dd><code>sunjce_provider.jar</code> - the SunJCE provider for Java
+ Cryptography APIs<br>
+ <code>localedata.jar</code> - contains many of the resources needed
+ for non US English locales<br>
+ <code>ldapsec.jar</code> - contains security features supported by the
+ LDAP service provider<br>
+ <code>dnsns.jar</code> - for the InetAddress wrapper of JNDI DNS
+ provider</dd>
+
+ <dt><code>bin/rmid</code> and <code>jre/bin/rmid</code></dt>
+
+ <dd>Java RMI Activation System Daemon</dd>
+
+ <dt><code>bin/rmiregistry</code> and
+ <code>jre/bin/rmiregistry</code></dt>
+
+ <dd>Java Remote Object Registry</dd>
+
+ <dt><code>bin/tnameserv</code> and <code>jre/bin/tnameserv</code></dt>
+
+ <dd>Java IDL Name Server</dd>
+
+ <dt><code>bin/keytool</code> and <code>jre/bin/keytool</code></dt>
+
+ <dd>Key and Certificate Management Tool</dd>
+
+ <dt><code>bin/kinit</code> and <code>jre/bin/kinit</code></dt>
+
+ <dd>Used to obtain and cache Kerberos ticket-granting tickets</dd>
+
+ <dt><code>bin/klist</code> and <code>jre/bin/klist</code></dt>
+
+ <dd>Kerberos display entries in credentials cache and keytab</dd>
+
+ <dt><code>bin/ktab</code> and <code>jre/bin/ktab</code></dt>
+
+ <dd>Kerberos key table manager</dd>
+
+ <dt><code>bin/policytool</code> and
+ <code>jre/bin/policytool</code></dt>
+
+ <dd>Policy File Creation and Management Tool</dd>
+
+ <dt><code>bin/orbd</code> and <code>jre/bin/orbd</code></dt>
+
+ <dd>Object Request Broker Daemon</dd>
+
+ <dt><code>bin/servertool</code> and
+ <code>jre/bin/servertool</code></dt>
+
+ <dd>Java IDL Server Tool</dd>
+
+ <dt><code>bin/javaws</code>, <code>jre/bin/javaws</code>,
+ <code>jre/lib/javaws/</code> and <code>jre/lib/javaws.jar</code></dt>
+
+ <dd>Java Web Start</dd>
+
+ <dt><code>db/</code></dt>
+
+ <dd>
+ Java DB, Sun Microsystems's distribution of the Apache Derby
+ database (only with file based distributions of the JDK).
+ </dd>
+
+ <dt><code>demo/</code></dt>
+
+ <dd>Demo Applets and Applications</dd>
+
+ <dt><code>sample/</code></dt>
+
+ <dd>Sample Code</dd>
+
+ <dt><code>src.zip</code></dt>
+
+ <dd>Archive of source files</dd>
+ </dl>
+ </dd>
+ </dl>
+
+ <h3><a name="redistributablejdkfiles" id=
+ "redistributablejdkfiles"></a>Redistributable JDK<sup><font size=
+ "-2">TM</font></sup> Files</h3>
+
+ <blockquote>
+ The limited set of files and directories from the JDK listed below may be
+ included in vendor redistributions of the Java<sup><font size=
+ "-2">TM</font></sup> Runtime Environment (JRE<sup><font size=
+ "-2">TM</font></sup>). They cannot be redistributed separately, and must
+ accompany an identically versioned JRE distribution. All paths are
+ relative to the top-level directory of the JDK. The corresponding man
+ pages should be included for any included executables (with paths listed
+ below beginning with <code>bin/</code>, for the Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System and Linux).
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><code>jre/lib/cmm/PYCC.pf</code></dt>
+
+ <dd>Color profile. This file is required only if one wishes to convert
+ between the PYCC color space and another color space.</dd>
+
+ <dt>All <code>.ttf</code> font files in the
+ <code>jre/lib/fonts/</code> directory.</dt>
+
+ <dd>Note that the LucidaSansRegular.ttf font is already contained in
+ the JRE, so there is no need to bring that file over from the
+ JDK.</dd>
+
+ <dt><code>jre/lib/audio/soundbank.gm</code></dt>
+
+ <dd>This MIDI soundbank is present in the JDK, but it has been removed
+ from the JRE in order to reduce the size of the JRE download bundle.
+ However, a soundbank file is necessary for MIDI playback, and
+ therefore the JDK's <code>soundbank.gm</code> file may be included in
+ redistributions of the JRE at the vendor's discretion. Several
+ versions of enhanced MIDI soundbanks are available from the Java Sound
+ web site: <a href=
+ "http://java.sun.com/products/java-media/sound/">http://java.sun.com/products/java-media/sound/</a>.
+ These alternative soundbanks may be included in redistributions of the
+ JRE.</dd>
+
+ <dt>The javac bytecode compiler, consisting of the following
+ files:</dt>
+
+ <dd><code>bin/javac</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System and Linux]<br>
+ <code>bin/sparcv9/javac</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (SPARC(R) Platform Edition)]<br>
+ <code>bin/amd64/javac</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (AMD)]<br>
+ <code>bin/javac.exe</code> [Microsoft Windows]<br>
+ <code>lib/tools.jar</code> [All platforms]</dd>
+
+ <dt>The Annotation Processing Tool, consisting of the following
+ files:</dt>
+
+ <dd><code>lib/tools.jar</code> [All platforms]<br>
+ <code>bin/apt</code> [Solaris<sup><font size="-2">TM</font></sup>
+ Operating System and Linux]<br>
+ <code>bin/sparcv9/apt</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (SPARC(R) Platform Edition)]<br>
+ <code>bin/amd64/apt</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (AMD)]<br>
+ <code>bin/apt.exe</code> [Microsoft Windows]</dd>
+
+ <dt><code>lib/jconsole.jar</code></dt>
+
+ <dd>The Jconsole application. NOTE: The Jconsole application requires
+ the dynamic attach mechanism.</dd>
+
+ <dt>The dynamic attach mechanism consisting of the following
+ files:</dt>
+
+ <dd><code>lib/tools.jar</code> [All platforms]<br>
+ <code>jre/lib/sparc/libattach.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (SPARC(R) Platform Edition) and
+ Linux]<br>
+ <code>jre/lib/sparcv9/libattach.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (SPARC(R) Platform Edition) and
+ Linux]<br>
+ <code>jre/lib/i386/libattach.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (x86) and Linux]<br>
+ <code>jre/lib/amd64/libattach.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (AMD) and Linux]<br>
+ <code>jre\bin\attach.dll</code> [Microsoft Windows]<br></dd>
+
+ <dt>The Java Platform Debugger Architecture implementation consisting
+ of the files shown in the dynamic attach section above, and the
+ following files:</dt>
+
+ <dd><code>lib/tools.jar</code> [All platforms]<br>
+ <code>lib/sa-jdi.jar</code> [All platforms]<br>
+ <code>jre/lib/sparc/libsaproc.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (SPARC(R) Platform Edition) and
+ Linux]<br>
+ <code>jre/lib/sparcv9/libsaproc.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (SPARC(R) Platform Edition) and
+ Linux]<br>
+ <code>jre/lib/i386/libsaproc.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (x86) and Linux]<br>
+ <code>jre/lib/amd64/libsaproc.so</code> [Solaris<sup><font size=
+ "-2">TM</font></sup> Operating System (AMD) and Linux]<br></dd>
+
+ <dt><code>jre\bin\server\</code></dt>
+
+ <dd>On Microsoft Windows platforms, the JDK includes both the Java
+ HotSpot<sup><font size="-2">TM</font></sup> Server VM and Java
+ HotSpot<sup><font size="-2">TM</font></sup> Client VM. However, the
+ JRE for Microsoft Windows platforms includes only the Java
+ HotSpot<sup><font size="-2">TM</font></sup> Client VM. Those wishing
+ to use the Java HotSpot<sup><font size="-2">TM</font></sup> Server VM
+ with the JRE may copy the JDK's <code>jre\bin\server</code> folder to
+ a <code>bin\server</code> directory in the JRE. Software vendors may
+ redistribute the Java HotSpot<sup><font size="-2">TM</font></sup>
+ Server VM with their redistributions of the JRE.</dd>
+ </dl>
+ </dd>
+ </dl>
+
+ <h3>Unlimited Strength Java Cryptography Extension</h3>
+
+ <blockquote>
+ Due to import control restrictions for some countries, the Java
+ Cryptography Extension (JCE) policy files shipped with the JDK and the JRE
+ allow strong but limited cryptography to be used. These files are located
+ at<br>
+ <br>
+ <code>&lt;java-home&gt;/lib/security/local_policy.jar</code><br>
+ <code>&lt;java-home&gt;/lib/security/US_export_policy.jar</code><br>
+ <br>
+ where <code>&lt;java-home&gt;</code> is the <code>jre</code> directory of
+ the JDK or the top-level directory of the JRE.
+ </blockquote>
+
+ <blockquote>
+ An unlimited strength version of these files indicating no restrictions on
+ cryptographic strengths is available on the JDK web site for those living
+ in eligible countries. Those living in eligible countries may download the
+ unlimited strength version and replace the strong cryptography jar files
+ with the unlimited strength files.
+ </blockquote>
+
+ <h3>The cacerts Certificates File</h3>
+
+ <blockquote>
+ Root CA certificates may be added to or removed from the Java SE
+ certificate file located at
+ </blockquote>
+
+ <blockquote>
+ <code>&lt;java-home&gt;/lib/security/cacerts</code>
+ </blockquote>
+
+ <blockquote>
+ For more information, see <a href=
+ "http://java.sun.com/javase/6/docs/technotes/tools/solaris/keytool.html#cacerts">
+ The cacerts Certificates File</a> section in the keytool documentation.
+ </blockquote>
+
+ <h2><a name="endorsed" id="endorsed"></a> Java Endorsed Standards Override
+ Mechanism</h2>
+
+ <blockquote>
+ From time to time it is necessary to update the Java platform in order to
+ incorporate newer versions of standards that are created outside of the
+ Java Community Process<font size="-2"><sup>SM</sup></font> (JCP<font size=
+ "-2"><sup>SM</sup></font> <a href=
+ "http://www.jcp.org/">http://www.jcp.org/</a>) (<i>Endorsed
+ Standards</i>), or in order to update the version of a technology included
+ in the platform to correspond to a later standalone version of that
+ technology (<i>Standalone Technologies</i>).
+ </blockquote>
+
+ <blockquote>
+ The <i>Endorsed Standards Override Mechanism</i> provides a means whereby
+ later versions of classes and interfaces that implement Endorsed Standards
+ or Standalone Technologies may be incorporated into the Java Platform.
+ </blockquote>
+
+ <blockquote>
+ For more information on the Endorsed Standards Override Mechanism,
+ including the list of platform packages that it may be used to override,
+ see
+ </blockquote>
+
+ <blockquote>
+ <a href=
+ "http://java.sun.com/javase/6/docs/technotes/guides/standards/">http://java.sun.com/javase/6/docs/technotes/guides/standards/</a>
+ </blockquote>
+
+ <h2><a name="javadb" id="javadb"></a>Java DB</h2>
+
+ <blockquote>
+ This distribution bundles Java DB, Sun Microsystems' distribution of the
+ Apache Derby pure Java database technology. Default installation locations
+ are:
+
+ <ul>
+ <li>Solaris: <code>/opt/SUNWjavadb</code></li>
+
+ <li>Linux: <code>/opt/sun/javadb</code></li>
+
+ <li>Windows: <code>C:\Program Files\Sun\JavaDB</code></li>
+ </ul>
+
+ <p>For information on Java DB and Derby, including user and API
+ documentation, the capabilities of Java DB and further resources, see the
+ index.html file in the above directories.</p>
+
+<p>
+Note that file based distributions of the JDK on Solaris and Linux
+include Java DB in the ${JAVA_HOME}/db directory.
+</p>
+ </blockquote>
+
+ <h2><a name="webpages" id="webpages"></a>Web Pages</h2>
+
+ <blockquote>
+ For additional information, refer to these Sun Microsystems pages on the
+ World Wide Web:
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><a href="http://java.sun.com/">http://java.sun.com/</a></dt>
+
+ <dd>The Java Software web site, with the latest information on Java
+ technology, product information, news, and features.</dd>
+
+ <dt><a href=
+ "http://java.sun.com/docs">http://java.sun.com/docs</a></dt>
+
+ <dd>Java<sup><font size="-2">TM</font></sup> platform Documentation
+ provides access to white papers, the Java Tutorial and other
+ documents.</dd>
+
+ <dt><a href=
+ "http://developer.java.sun.com/">http://developer.java.sun.com</a></dt>
+
+ <dd>Developer Services web site (Free registration required).
+ Additional technical information, news, and features; user forums;
+ support information, and much more.</dd>
+
+ <dt><a href=
+ "http://java.sun.com/products/">http://java.sun.com/products/</a></dt>
+
+ <dd>Java Technology Products &amp; API</dd>
+ </dl>
+ </dd>
+ </dl>
+ <hr>
+
+ <p><font size="2">The Java<sup><font size="-2">TM</font></sup> Development
+ Kit (JDK<sup><font size="-2">TM</font></sup>) is a product of Sun
+ Microsystems<sup><font size="-2">TM</font></sup>, Inc.<br>
+ <br>
+ Copyright &copy; 2009 Sun Microsystems, Inc.<br>
+ 4150 Network Circle, Santa Clara, California 95054, U.S.A.<br>
+ All rights reserved.</font></p>
+<script type="text/javascript" language="JavaScript" src="/js/omi/jsc/s_code_remote.js">
+</script>
+</body>
+</html>
+
diff --git a/extra/source/jdk-6/README_ja.html b/extra/source/jdk-6/README_ja.html
new file mode 100644
index 000000000..c21e5de24
--- /dev/null
+++ b/extra/source/jdk-6/README_ja.html
@@ -0,0 +1,438 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+
+<html>
+<head>
+ <meta http-equiv="CONTENT-TYPE" content="text/html; charset=EUC-JP">
+ <meta name="collection" content="reference">
+
+<title>README -- Java Platform, Standard Edition Development Kit</title>
+</head>
+
+<body lang="en-US" bgcolor="#FFFFFF">
+<h1 align="center">README</h1>
+
+<h2 align="center">Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition 6<br> Development Kit</h2>
+
+<p align="center"><b>JDK<sup><font size="-2">TM</font></sup> 6</b></p>
+
+<h2>Ìܼ¡</h2>
+
+ <ul>
+<li><a href="#introduction">¤Ï¤¸¤á¤Ë</a></li>
+
+<li><a href="#install">¥·¥¹¥Æ¥àÍ׷浪¤è¤Ó¥¤¥ó¥¹¥È¡¼¥ë</a></li>
+
+<li><a href="#docs">JDK ¥É¥­¥å¥á¥ó¥È</a></li>
+
+<li><a href="#relnotes">¥ê¥ê¡¼¥¹¥Î¡¼¥È</a></li>
+
+<li><a href="#compatibility">¸ß´¹À­</a></li>
+
+<li><a href="#bugs">¥Ð¥°Êó¹ð¤È¥Õ¥£¡¼¥É¥Ð¥Ã¥¯</a></li>
+
+<li><a href="#contents">JDK ¤ÎÆâÍÆ</a></li>
+
+<li><a href="#jre">Java Runtime Environment</a></li>
+
+<li><a href="#redistribution">ºÆÇÛÉÛ</a></li>
+
+<li><a href="#endorsed">¿ä¾©µ¬³Ê¥ª¡¼¥Ð¡¼¥é¥¤¥Éµ¡¹½</a></li>
+
+<li><a href="#javadb">Java DB</a></li>
+
+<li><a href="#webpages">Web ¥Ú¡¼¥¸</a></li>
+ </ul>
+
+<h2><a name="introduction"></a>¤Ï¤¸¤á¤Ë</h2>
+
+ <blockquote>
+ Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition Development Kit (JDK<sup><font size="-2">TM</font></sup>) ¤Î¤³¤Î¥ê¥ê¡¼¥¹¤ò¥À¥¦¥ó¥í¡¼¥É¤¤¤¿¤À¤­¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡£JDK ¤Ï¡¢Java ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤ò»ÈÍѤ·¤Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¢¥¢¥×¥ì¥Ã¥È¡¢¤ª¤è¤Ó¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¹½ÃÛ¤¹¤ë¤¿¤á¤Î³«È¯´Ä¶­¤Ç¤¹¡£
+ </blockquote>
+
+ <blockquote>
+ JDK ¤Ë¤Ï¡¢Java ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Î³«È¯¤È¥Æ¥¹¥È¡¢¤ª¤è¤Ó Java<sup><font size="-2">TM</font></sup> ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Î¼Â¹Ô¤Ë»ÈÍѤǤ­¤ë³Æ¼ï¥Ä¡¼¥ë¤¬ÉÕ°¤·¤Æ¤¤¤Þ¤¹¡£
+ </blockquote>
+
+<h2><a name="install"></a>¥·¥¹¥Æ¥àÍ׷浪¤è¤Ó¥¤¥ó¥¹¥È¡¼¥ë</h2>
+
+ <blockquote>
+¥·¥¹¥Æ¥àÍ×·ï¡¢¥¤¥ó¥¹¥È¡¼¥ë¼ê½ç¡¢¤ª¤è¤Ó¥È¥é¥Ö¥ë¥·¥å¡¼¥Æ¥£¥ó¥°¤Î¥Ò¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢¼¡¤Î Java Software Web ¥µ¥¤¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+ <blockquote>
+<a href="http://java.sun.com/javase/ja/6/webnotes/install/">JDK 6 ¥¤¥ó¥¹¥È¡¼¥ë¼ê½ç</a>
+ </blockquote>
+
+<h2><a name="docs"></a>JDK<sup><font size="-2">TM</font></sup> ¥É¥­¥å¥á¥ó¥È</h2>
+
+ <blockquote>
+ <a href="http://java.sun.com/javase/ja/6/docs/ja/index.html">Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition (Java SE) ¤Î¥ª¥ó¥é¥¤¥ó¥É¥­¥å¥á¥ó¥È</a>¤Ë¤Ï¡¢API »ÅÍÍ¡¢µ¡Ç½ÀâÌÀ¡¢³«È¯¼Ô¥¬¥¤¥É¡¢JDK<sup><font size="-2">TM</font></sup> ¥Ä¡¼¥ë¤ª¤è¤Ó¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡¼¤Î¥ê¥Õ¥¡¥ì¥ó¥¹¥Ú¡¼¥¸¡¢¥Ç¥â¡¢¤ª¤è¤Ó´ØÏ¢¾ðÊó¤Ø¤Î¥ê¥ó¥¯¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£JDK ¥É¥­¥å¥á¥ó¥È¤Ï¡¢»ÈÍѤ·¤Æ¤¤¤ë¥Þ¥·¥ó¤Ë¥¤¥ó¥¹¥È¡¼¥ë²Äǽ¤Ê¥À¥¦¥ó¥í¡¼¥É¥Ð¥ó¥É¥ë¤Ç¤âÆþ¼ê¤Ç¤­¤Þ¤¹¡£ ¥É¥­¥å¥á¥ó¥È¥Ð¥ó¥É¥ë¤òÆþ¼ê¤¹¤ë¤Ë¤Ï¡¢<a href="../download.html">¥À¥¦¥ó¥í¡¼¥É¥Ú¡¼¥¸</a>¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ API ¤Ë¤Ä¤¤¤Æ¤Ï¡¢<a href="http://java.sun.com/javase/ja/6/docs/ja/api/index.html">Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition ¤Î API »ÅÍÍ</a>¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ API ¤Ë¤Ä¤¤¤Æ¡¢¥³¡¼¥ÉÎã¤è¤ê¤â»ÅÍͤ˽ÅÅÀ¤ò¤ª¤¤¤¿´Êñ¤ÊÀâÌÀ¤òÆɤळ¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ </blockquote>
+
+<h2><a name="relnotes"></a>¥ê¥ê¡¼¥¹¥Î¡¼¥È</h2>
+
+ <blockquote>
+ ¤³¤Î¥ê¥ê¡¼¥¹¤Ë´Ø¤¹¤ëÄɲþðÊó¤Ë¤Ä¤¤¤Æ¤Ï¡¢Java Software Web ¥µ¥¤¥È¤Î <a href="index.html">Java SE 6 ¥ê¥ê¡¼¥¹¥Î¡¼¥È</a>¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥ª¥ó¥é¥¤¥óÈǤΥê¥ê¡¼¥¹¥Î¡¼¥È¤Ï¿ï»þ¹¹¿·¤µ¤ì¤ë¤Î¤Ç¡¢Äê´üŪ¤Ë¥¢¥¯¥»¥¹¤·¤ÆºÇ¿·¤Î¾ðÊó¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+<h2><a name="compatibility"></a>¸ß´¹À­</h2>
+
+ <blockquote>
+ ¸ß´¹À­¤Ë´Ø¤¹¤ë´ûÃΤÎÌäÂê¤Ë¤Ä¤¤¤Æ¤Ï¡¢Java Software Web ¥µ¥¤¥È¤Ç<a href="compatibility.html">°ÊÁ°¤Î¥ê¥ê¡¼¥¹¤È¤Î¸ß´¹À­</a>¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ °ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤Î Java<sup><font size="-2">TM</font></sup> ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÍѤ˵­½Ò¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Î¥µ¥Ý¡¼¥È¤Ë¤Ä¤¤¤Æ¤ÏËüÁ´¤ò´ü¤·¤Æ¤¤¤Þ¤¹¡£¸ß´¹À­¤ò¼º¤¦Êѹ¹¤¬É¬Íפʲսê¤â¤¢¤ê¤Þ¤·¤¿¤¬¡¢¤Û¤È¤ó¤É¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ï¥×¥í¥°¥é¥ß¥ó¥°¤ò¤ä¤êľ¤¹¤³¤È¤Ê¤¯¸½ºß¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë°Ü¹Ô¤Ç¤­¤Þ¤¹¡£¸ß´¹À­¤Ë´Ø¤¹¤ë Web ¥Ú¡¼¥¸¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ê°Õ¿ÞŪ¤Ë¸ß´¹À­¤òÇÓ½ü¤·¤¿¤ï¤º¤«¤Ê¾ì¹ç¤ò½ü¤¤¤Æ¡¢¥×¥í¥°¥é¥ß¥ó¥°¤ò¤ä¤êľ¤µ¤Ê¤¤¤È°Ü¹Ô¤Ç¤­¤Ê¤¤¾ì¹ç¤Ï¥Ð¥°¤Ç¤¢¤ë¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£ÀøºßŪ¤Ê¥»¥­¥å¥ê¥Æ¥£¡¼¥Û¡¼¥ë¤ò¤Õ¤µ¤°¤¿¤á¡¢¤Þ¤¿¤Ï¼ÂÁõ¤äÀß·×¾å¤Î¥Ð¥°¤ò½¤Àµ¤¹¤ë¤¿¤á¤ËɬÍפÊÊѹ¹¤Ë¤è¤Ã¤Æ¡¢°ìÉô¤Î¸ß´¹À­¤¬¼º¤ï¤ì¤Æ¤¤¤Þ¤¹¡£
+ </blockquote>
+
+<h2><a name="bugs"></a>¥Ð¥°Êó¹ð¤È¥Õ¥£¡¼¥É¥Ð¥Ã¥¯</h2>
+
+ <blockquote>
+ <a href="http://bugs.sun.com/bugdatabase/index.jsp">¥Ð¥°¥Ç¡¼¥¿¥Ù¡¼¥¹</a> Web ¥µ¥¤¥È¤Ç¤Ï¡¢´û¸¤Î¥Ð¥°Êó¹ð¤Î¸¡º÷¤ÈÄ´ºº¡¢¥Ð¥°Êó¹ð¤ÎÁ÷¿®¡¢¥Ð¥°½¤Àµ¤Î½ÅÍ×ÅÙ¤ÎÊó¹ð¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Ð¥°Êó¹ð¤äµ¡Ç½¤Ë´Ø¤¹¤ëÍ×˾¤òľÀÜÁ÷¿®¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¥Õ¥©¡¼¥à¤Ëµ­Æþ¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+ <blockquote>
+ <a href= "http://bugs.sun.com/services/bugreport/index.jsp">http://bugs.sun.com/services/bugreport/index.jsp</a>
+ </blockquote>
+
+ <blockquote>
+ ¥Õ¥£¡¼¥É¥Ð¥Ã¥¯¤Ï¡¢<a href="http://java.sun.com/docs/forms/sendusmail.html">Java SE ¥É¥­¥å¥á¥ó¥È¥Á¡¼¥à</a>¤ËÁ÷¿®¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢<a href="http://java.sun.com/mail/">Java Software ¥¨¥ó¥¸¥Ë¥¢¥ê¥ó¥°¥Á¡¼¥à¤ÎÅŻҥ᡼¥ë¥¢¥É¥ì¥¹</a>¤Ë¥³¥á¥ó¥È¤òľÀÜÁ÷¿®¤·¤Æ¤¤¤¿¤À¤¯¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+<b>Ãí</b> - Bug Database ¤äÊÀ¼Ò³«È¯¥Á¡¼¥à¤«¤é¥Æ¥¯¥Ë¥«¥ë¥µ¥Ý¡¼¥È¤ò¼õ¤±¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£ ¥µ¥Ý¡¼¥È¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Ï¡¢Java Software Web ¥µ¥¤¥È¤Î<a href="http://java.sun.com/support/">¥µ¥Ý¡¼¥È¤È¥µ¡¼¥Ó¥¹</a>¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+ <h2><a name="contents"></a>JDK<sup><font size="-2">TM</font></sup> ¤ÎÆâÍÆ</h2>
+
+ <blockquote>
+¤³¤³¤Ç¤Ï¡¢JDK<sup><font size="-2">TM</font></sup> ¤Î¥Õ¥¡¥¤¥ë¤È¥Ç¥£¥ì¥¯¥È¥ê¤Î³µÍפòÀâÌÀ¤·¤Þ¤¹¡£ ¥Õ¥¡¥¤¥ë¤È¥Ç¥£¥ì¥¯¥È¥ê¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤ª»È¤¤¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î Java SE ¥É¥­¥å¥á¥ó¥È¤Î¡Ö<a href="http://java.sun.com/javase/ja/6/docs/ja/technotes/tools/index.html#general">JDK ¥Õ¥¡¥¤¥ë¹½Â¤</a>¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+<dt><b>³«È¯¥Ä¡¼¥ë</b></dt>
+
+<dd><code>bin</code> ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ Java<sup><font size="-2">TM</font></sup> ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Î³«È¯¡¢¼Â¹Ô¡¢¥Ç¥Ð¥Ã¥°¡¢¤ª¤è¤Ó¥É¥­¥å¥á¥ó¥ÈºîÀ®¤ò»Ù±ç¤¹¤ë¥Ä¡¼¥ë¤È¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡¼¤Ç¤¹¡£ ¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢<a href="http://java.sun.com/javase/ja/6/docs/ja/technotes/tools/index.html">³Æ¥Ä¡¼¥ë¤Î¥Þ¥Ë¥å¥¢¥ë</a>¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£<br> <br></dd>
+
+<dt><b>Runtime Environment</b></dt>
+
+<dd><code>jre</code> ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£JDK ¤Ç»ÈÍѤµ¤ì¤ë Java Runtime Environment (JRE<sup><font size="-2">TM</font></sup>) ¼Â¹Ô´Ä¶­¤Î¼ÂÁõ¤Ç¤¹¡£ JRE¤Ë¤Ï¡¢Java<sup><font size="-2">TM</font></sup> ²¾ÁÛ¥Þ¥·¥ó¡¢¥¯¥é¥¹¥é¥¤¥Ö¥é¥ê¡¢¤ª¤è¤Ó Java<sup><font size="-2">TM</font></sup> ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Î¼Â¹Ô¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Þ¤¹¡£<br> <br></dd>
+
+<dt><b>Äɲå饤¥Ö¥é¥ê</b></dt>
+
+ <dd><code>lib</code> ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ³«È¯¥Ä¡¼¥ë¤ËɬÍפÊÄɲäΥ¯¥é¥¹¥é¥¤¥Ö¥é¥ê¤È¥µ¥Ý¡¼¥È¥Õ¥¡¥¤¥ë¤Ç¤¹¡£<br> <br></dd>
+
+<dt><b>¥Ç¥â¥¢¥×¥ì¥Ã¥È¤È¥¢¥×¥ê¥±¡¼¥·¥ç¥ó</b></dt>
+
+<dd><code>demo</code> ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ Java<sup><font size="-2">TM</font></sup> ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÍÑ¤Î¥×¥í¥°¥é¥ß¥ó¥°Îã¤Ç¡¢¥½¡¼¥¹¥³¡¼¥É¤¬´Þ¤Þ¤ì¤Þ¤¹¡£ Swing ¤ä¤½¤Î¾¤Î Java<sup><font size="-2">TM</font></sup> Foundation Classes¡¢¤ª¤è¤Ó Java<sup><font size="-2">TM</font></sup> Platform Debugger Architecture ¤ò»ÈÍѤ¹¤ëÎã¤â´Þ¤Þ¤ì¤Þ¤¹¡£<br> <br></dd>
+
+<dt><b>¥µ¥ó¥×¥ë¥³¡¼¥É</b></dt>
+
+ <dd><code>sample</code> ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ÆÃÄê¤Î Java API ¤Î¥×¥í¥°¥é¥ß¥ó¥°¤Î¥½¡¼¥¹¥³¡¼¥ÉÉÕ¤­¥µ¥ó¥×¥ë¤Ç¤¹¡£</dd>
+
+<dt><b>C ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë</b></dt>
+
+ <dd><code>include</code> ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ <a href="http://java.sun.com/javase/ja/6/docs/ja/technotes/guides/jni/index.html">Java Native Interface</a>¡¢<a href="http://java.sun.com/javase/ja/6/docs/ja/technotes/guides/jvmti/index.html">JVM<sup><font size="-2">TM</font></sup> Tool Interface</a>¡¢¤ª¤è¤Ó¤½¤Î¾¤Î Java<sup><font size="-2">TM</font></sup> Platform ¤Îµ¡Ç½¤ò»ÈÍѤ¹¤ë¥Í¥¤¥Æ¥£¥Ö¥³¡¼¥É¥×¥í¥°¥é¥ß¥ó¥°¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤Ç¤¹¡£<br> <br></dd>
+
+<dt><b>¥½¡¼¥¹¥³¡¼¥É</b></dt>
+
+ <dd><code>src.zip</code> ¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Java&nbsp;¥³¥¢ API ¤ò¹½À®¤¹¤ë¤¹¤Ù¤Æ¤Î¥¯¥é¥¹¤ËÂФ¹¤ë Java<sup><font size="-2">TM</font></sup> ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Ç¤¹ (java.*¡¢javax.*¡¢¤ª¤è¤Ó°ìÉô¤Î org.* ¥Ñ¥Ã¥±¡¼¥¸¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¡£com.sun.* ¥Ñ¥Ã¥±¡¼¥¸¤ÏÂоݳ°)¡£¤³¤Î¥½¡¼¥¹¥³¡¼¥É¤Ï¾ðÊóÄ󶡤ΤߤòÌÜŪ¤È¤·¤Æ¤ª¤ê¡¢³«È¯¼Ô¤¬ Java<sup><font size="-2">TM</font></sup> ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤òÍý²ò¤·³èÍѤ¹¤ë¤Î¤ËÌòΩ¤Á¤Þ¤¹¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸ÇÍ­¤Î¼ÂÁõ¥³¡¼¥É¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ·¤Æ¡¢¥¯¥é¥¹¥é¥¤¥Ö¥é¥ê¤òºÆ¹½ÃÛ¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤òŸ³«¤¹¤ë¤Ë¤Ï¡¢°ìÈÌŪ¤Ê zip ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡¼¤ò»ÈÍѤ·¤Þ¤¹¡£ ¤Þ¤¿¡¢¼¡¤Î¤è¤¦¤Ë¡¢JDK ¤Î <code>bin/</code> ¥Ç¥£¥ì¥¯¥È¥ê¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤ë Jar ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡¼¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£<br> <br> <code>jar xvf src.zip</code></dd>
+ </dl>
+ </dd>
+ </dl>
+
+<h2><a name="jre"></a>Java SE Runtime Environment (JRE<sup><font size="-2">TM</font></sup>)</h2>
+
+ <blockquote>
+Java<sup><font size="-2">TM</font></sup> Runtime Environment (JRE<sup><font size="-2">TM</font></sup>) ¤Ï¡¢Ã±ÆȤǥÀ¥¦¥ó¥í¡¼¥É¤Ç¤­¤ëÀ½ÉʤȤ·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ <a href="../download.html">¥À¥¦¥ó¥í¡¼¥É Web ¥µ¥¤¥È</a>¤ò»²¾È ¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+ <blockquote>
+ JRE ¤ò»ÈÍѤ¹¤ë¤È¡¢Java<sup><font size="-2">TM</font></sup> ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Çµ­½Ò¤µ¤ì¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤Ç¤­¤Þ¤¹¡£ JDK<sup><font size="-2">TM</font></sup> ¤ÈƱÍͤˡ¢Java<sup><font size="-2">TM</font></sup> ²¾ÁÛ¥Þ¥·¥ó¡¢Java<sup><font size="-2">TM</font></sup> ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à API ¤ò¹½À®¤¹¤ë¥¯¥é¥¹¡¢¤ª¤è¤Ó¥µ¥Ý¡¼¥È¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Þ¤¹¡£JDK ¤È¤Ï°Û¤Ê¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤ä¥Ç¥Ð¥Ã¥¬¤Ê¤É¤Î³«È¯¥Ä¡¼¥ë¤Ï´Þ¤Þ¤ì¤Þ¤»¤ó¡£
+ </blockquote>
+
+ <blockquote>
+JRE ¤Ï¡¢JRE ¤Î¥é¥¤¥»¥ó¥¹¾ò¹à¤Ë½¾¤Ã¤Æ¡¢Æȼ«¤Ë³«È¯¤·¤¿¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¤È¤â¤Ë¼«Í³¤ËºÆÇÛÉÛ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£JDK ¤ò»ÈÍѤ·¤Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò³«È¯¤·¤¿¤Î¤Á¡¢¥¨¥ó¥É¥æ¡¼¥¶¡¼¤¬¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤ò Java<sup><font size="-2">TM</font></sup> ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¼Â¹Ô¤Ç¤­¤ë¤è¤¦¤Ë¡¢JRE ¤È¤È¤â¤Ë½Ð²Ù¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ </blockquote>
+
+<h2><a name="redistribution"></a>ºÆÇÛÉÛ</h2>
+
+ <blockquote>
+ <blockquote>
+ <hr>
+Ãí - ¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î¥é¥¤¥»¥ó¥¹¤Ï¡¢¥Ù¡¼¥¿ÈǤª¤è¤Ó¤½¤Î¾¤Î¥×¥ì¥ê¥ê¡¼¥¹ÈǤκÆÇÛÉÛ¤òµö²Ä¤¹¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
+ <hr>
+ </blockquote>
+ </blockquote>
+
+ <blockquote>
+¥½¥Õ¥È¥¦¥§¥¢¥é¥¤¥»¥ó¥¹·ÀÌó¤Î¾ò¹à¡¢¤ª¤è¤Ó°Ê²¼¤Çµ¬Äꤵ¤ì¤ëµÁ̳¡¢À©¸Â¡¢¤ª¤è¤ÓÎã³°»ö¹à¤Ë½¾¤¤¡¢¥½¥Õ¥È¥¦¥§¥¢ (¤ª¤è¤Ó°Ê²¼¤ÇºÆÇÛÉÛ²Äǽ¤È¸«¤Ê¤µ¤ì¤ë¡¢¥½¥Õ¥È¥¦¥§¥¢¤Î°ìÉô) ¤òÊ£À½¤ª¤è¤ÓÇÛÉۤǤ­¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+ <ol type="a">
+<li>¥½¥Õ¥È¥¦¥§¥¢¤ò´°Á´¤Ê²þÊѤµ¤ì¤Æ¤¤¤Ê¤¤¾õÂ֤ǡ¢¤«¤Ä¥¢¥×¥ì¥Ã¥È¤ª¤è¤Ó¥¢¥×¥ê¥±¡¼¥·¥ç¥ó (¡Ö¥×¥í¥°¥é¥à¡×) ¤Î°ìÉô¤È¤·¤Æ¥Ð¥ó¥É¥ë¤µ¤ì¤¿¾õÂ֤ǤΤßÇÛÉÛ¤¹¤ë¡£</li>
+
+<li>¥×¥í¥°¥é¥à¤¬½ÅÍפ«¤Ä¼çÍפʵ¡Ç½¤ò¥½¥Õ¥È¥¦¥§¥¢¤ËÄɲ乤롣</li>
+
+<li>¥×¥í¥°¥é¥à¤¬ Java Âбþ¤ÎÈÆÍѥǥ¹¥¯¥È¥Ã¥×¥³¥ó¥Ô¥å¡¼¥¿¤ª¤è¤Ó¥µ¡¼¥Ð¡¼¤Ç¼Â¹Ô¤µ¤ì¤ë¤³¤È¤Î¤ß¤òÌÜŪ¤È¤¹¤ë¡£</li>
+
+<li>¥×¥í¥°¥é¥à¤Î¼Â¹Ô¤Î¤ß¤òÌÜŪ¤È¤·¤Æ¡¢¥½¥Õ¥È¥¦¥§¥¢¤òÇÛÉÛ¤¹¤ë¡£</li>
+
+<li>¥½¥Õ¥È¥¦¥§¥¢¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÈÃÖ¤­´¹¤¨¤ë¤³¤È¤òÌÜŪ¤È¤·¤ÆÄɲäΥ½¥Õ¥È¥¦¥§¥¢¤òÇÛÉÛ¤·¤Ê¤¤¡£</li>
+
+<li>¥½¥Õ¥È¥¦¥§¥¢¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ë¤¤¤«¤Ê¤ë½êÍ­¸¢É½¼¨¤ä¹ðÃΤâ½üµî¤Þ¤¿¤ÏÊѹ¹¤·¤Ê¤¤¡£</li>
+
+<li>ËÜ·ÀÌó¤Ë´Þ¤Þ¤ì¤ë¾ò¹à¤È¹çÃפ·¤¿¡¢Sun ¤ÎÍø±×¤òÊݸ¤ë¥é¥¤¥»¥ó¥¹·ÀÌó¤Ë½¾¤Ã¤Æ¤Î¤ß¥½¥Õ¥È¥¦¥§¥¢¤òÇÛÉÛ¤¹¤ë¡£</li>
+
+<li>¥×¥í¥°¥é¥à¤ª¤è¤Ó¥½¥Õ¥È¥¦¥§¥¢¤Î°ìÉô¤Þ¤¿¤Ï¤¹¤Ù¤Æ¤Î»ÈÍѤ¢¤ë¤¤¤ÏÇÛÉۤ˵¯°ø¤·¤¿Âè»°¼Ô¤«¤é¤ÎÀÁµá¡¢Áʾ١¢¤Þ¤¿¤ÏÁ¼Ã֤˴ØÏ¢¤·¤ÆÀ¸¤¸¤ë¤¤¤«¤Ê¤ë»³²¡¢ÈñÍÑ¡¢ºÄ̳¡¢Ï²ò¶â¡¢¤ª¤è¤Ó½ÐÈñ (ÊÛ¸î»ÎÈñÍѤò´Þ¤à) ¤«¤é¡¢Sun ¤È¤½¤Î¥é¥¤¥»¥ó¥µ¤òÍʸ¡¢Êä½þ¤¹¤ë¤³¤È¤ËƱ°Õ¤¹¤ë¡£</li>
+ </ol>
+ </blockquote>
+
+ <blockquote>
+¤³¤³¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¡Ö¥Ù¥ó¥À¡¼¡×¤È¤¤¤¦ÍѸì¤Ï¡¢¼«¤é¤Î¥×¥í¥°¥é¥à¤È¤È¤â¤Ë Java<sup><font size="-2">TM</font></sup> Development Kit (JDK<sup><font size="-2">TM</font></sup>) ¤ò¥é¥¤¥»¥ó¥¹¶¡Í¿¤ª¤è¤ÓÇÛÉÛ¤¹¤ë¥é¥¤¥»¥ó¥·¡¢³«È¯¼Ô¡¢¤ª¤è¤ÓÆÈΩ·Ï¥½¥Õ¥È¥¦¥§¥¢¥Ù¥ó¥À¡¼ (ISV) ¤ò»Ø¤·¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+¥Ù¥ó¥À¡¼¤Ï¡¢Java Development Kit ¥Ð¥¤¥Ê¥ê¥³¡¼¥É¥é¥¤¥»¥ó¥¹·ÀÌó¤Î¾ò¹à¤Ë½¾¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+ </blockquote>
+
+<h3>ɬ¿Ü¥Õ¥¡¥¤¥ë¤È¥ª¥×¥·¥ç¥ó¥Õ¥¡¥¤¥ë</h3>
+
+ <blockquote>
+Java<sup><font size="-2">TM</font></sup> Development Kit (JDK<sup><font size="-2">TM</font></sup>) ¤ò¹½À®¤¹¤ë¥Õ¥¡¥¤¥ë¤Ï¡¢É¬¿Ü¤È¥ª¥×¥·¥ç¥ó¤Î 2 ¤Ä¤ËʬÎव¤ì¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¥Õ¥¡¥¤¥ë¤Ï¡¢¥Ù¥ó¥À¡¼¤ÎȽÃǤˤè¤ê JDK ¤ÎºÆÇÛÉÛ¤«¤é½ü³°¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+JDK ¤ÎºÆÇÛÉÛ¤«¤éǤ°Õ¤Ç½ü³°¤Ç¤­¤ë¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥Ç¥£¥ì¥¯¥È¥ê¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¥Õ¥¡¥¤¥ë°ìÍ÷¤Ë´Þ¤Þ¤ì¤Ê¤¤¥Õ¥¡¥¤¥ë¤Ï¡¢¤¹¤Ù¤Æ JDK ¤ÎºÆÇÛÉۤ˴ޤá¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+ </blockquote>
+
+<h3>¥ª¥×¥·¥ç¥ó¤Î¥Õ¥¡¥¤¥ë¤È¥Ç¥£¥ì¥¯¥È¥ê</h3>
+
+ <blockquote>
+¼¡¤Î¥Õ¥¡¥¤¥ë¤ÏºÆÇÛÉÛ¤«¤éǤ°Õ¤Ë½ü³°¤Ç¤­¤Þ¤¹¡£ ¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢jdk1.6.0_&lt;version&gt; ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹¡£&lt;version&gt; ¤Ï¡¢¥¢¥Ã¥×¥Ç¡¼¥È¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Ç¤¹¡£ Solaris<sup><font size= "-2">TM</font></sup> ¤ª¤è¤Ó Linux ¤Î¥Õ¥¡¥¤¥ë̾¤È¶èÀڤ국¹æ¤¬¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Windows ¤Î¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¤Ë¤ÏËöÈø¤Ë¡Ö.exe¡×¤¬ÉÕ¤­¤Þ¤¹¡£Ì¾Á°¤Ë <code>_g</code> ¤¬ÉÕ¤¯Âбþ¤¹¤ë¥Õ¥¡¥¤¥ë¤â½ü³°¤Ç¤­¤Þ¤¹¡£ ½ü³°¤µ¤ì¤¿¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë ¡ÊSolaris<sup><font size="-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤ª¤è¤Ó Linux ¤Î¾ì¹ç¡¢°Ê²¼¤Î°ìÍ÷¤Ç¥Ñ¥¹¤¬ bin/ ¤«¤é»Ï¤Þ¤ë) ¤ËÂбþ¤¹¤ë¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ï½ü³°¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><code>jre/lib/charsets.jar</code></dt>
+
+<dd>ʸ»úÊÑ´¹¥¯¥é¥¹</dd>
+
+<dt><code>jre/lib/ext/</code></dt>
+
+ <dd><code>sunjce_provider.jar</code> - Java °Å¹æ²½ API ¤Î SunJCE ¥×¥í¥Ð¥¤¥À<br> <code>localedata.jar</code> - Êƹñ±Ñ¸ì°Ê³°¤Î¥í¥±¡¼¥ë¤ËɬÍפʥ꥽¡¼¥¹¤Î¿¤¯¤ò´Þ¤à<br> <code>ldapsec.jar</code> - LDAP ¥µ¡¼¥Ó¥¹¥×¥í¥Ð¥¤¥À¤¬¥µ¥Ý¡¼¥È¤¹¤ë¥»¥­¥å¥ê¥Æ¥£¡¼µ¡Ç½¤ò´Þ¤à<br> <code>dnsns.jar</code> - JNDI DNS ¥×¥í¥Ð¥¤¥À¤Î InetAddress ¥é¥Ã¥Ñ¡¼ÍÑ</dd>
+
+<dt><tt>bin/rmid</tt> ¤ª¤è¤Ó <tt>jre/bin/rmid</tt></dt>
+
+<dd>Java RMI µ¯Æ°¥·¥¹¥Æ¥à¥Ç¡¼¥â¥ó</dd>
+
+<dt><tt>bin/rmiregistry</tt> ¤ª¤è¤Ó <tt>jre/bin/rmiregistry</tt></dt>
+
+<dd>Java ¥ê¥â¡¼¥È¥ª¥Ö¥¸¥§¥¯¥È¥ì¥¸¥¹¥È¥ê</dd>
+
+<dt><tt>bin/tnameserv</tt> ¤ª¤è¤Ó <tt>jre/bin/tnameserv</tt></dt>
+
+<dd>Java IDL ¥Í¡¼¥à¥µ¡¼¥Ð¡¼</dd>
+
+<dt><tt>bin/keytool</tt> ¤ª¤è¤Ó <tt>jre/bin/keytool</tt></dt>
+
+<dd>¸°¤ª¤è¤Ó¾ÚÌÀ½ñ¤Î´ÉÍý¥Ä¡¼¥ë</dd>
+
+<dt><tt>bin/kinit</tt> ¤ª¤è¤Ó <tt>jre/bin/kinit</tt></dt>
+
+<dd>Kerberos ¥Á¥±¥Ã¥Èǧ²Ä¥Á¥±¥Ã¥È¤Î¼èÆÀ¤ª¤è¤Ó¥­¥ã¥Ã¥·¥å¤Ë»ÈÍÑ</dd>
+
+<dt><tt>bin/klist</tt> ¤ª¤è¤Ó <tt>jre/bin/klist</tt></dt>
+
+<dd>»ñ³Ê¥­¥ã¥Ã¥·¥å¤ª¤è¤Ó¥­¡¼¥¿¥ÖÆâ¤Î Kerberos ɽ¼¨¥¨¥ó¥È¥ê</dd>
+
+<dt><tt>bin/ktab</tt> ¤ª¤è¤Ó <tt>jre/bin/ktab</tt></dt>
+
+<dd>Kerberos ¥­¡¼¥Æ¡¼¥Ö¥ë¥Þ¥Í¡¼¥¸¥ã¡¼</dd>
+
+<dt><tt>bin/policytool</tt> ¤ª¤è¤Ó <tt>jre/bin/policytool</tt></dt>
+
+<dd>¥Ý¥ê¥·¡¼¥Õ¥¡¥¤¥ë¤ÎºîÀ®¤ª¤è¤Ó´ÉÍý¥Ä¡¼¥ë</dd>
+
+<dt><tt>bin/orbd</tt> ¤ª¤è¤Ó <tt>jre/bin/orbd</tt></dt>
+
+<dd>Object Request Broker Daemon</dd>
+
+<dt><tt>bin/servertool</tt> ¤ª¤è¤Ó <tt>jre/bin/servertool</tt></dt>
+
+<dd>Java IDL ¥µ¡¼¥Ð¡¼¥Ä¡¼¥ë</dd>
+
+ <dt><tt>bin/javaws</tt>¡¢<tt>jre/bin/javaws</tt>¡¢<tt>jre/lib/javaws/</tt> ¤ª¤è¤Ó <tt>jre/lib/javaws.jar</tt></dt>
+
+<dd>Java Web Start</dd>
+
+ <dt><code>db/</code></dt>
+
+ <dd>
+ Java DB¡£Sun Microsystems ¤¬ÇÛÉÛ¤¹¤ë Apache Derby ¥Ç¡¼¥¿¥Ù¡¼¥¹¥Æ¥¯¥Î¥í¥¸¡¼¤Ç¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï°Ê²¼¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£
+
+ <ul>
+<li>Solaris: <code>/opt/SUNWjavadb</code></li>
+
+<li>Linux: <code>/opt/sun/javadb</code></li>
+
+<li>Windows: <code>C:\Program Files\Sun\JavaDB</code></li>
+ </ul>¥æ¡¼¥¶¡¼¥É¥­¥å¥á¥ó¥È¤ä API ¥É¥­¥å¥á¥ó¥È¡¢Java DB ¤Îµ¡Ç½¤ä¤½¤Î¾¥ê¥½¡¼¥¹¤Ê¤É¤Î Java DB ¤È Derby ¤Î¾ðÊó¤Ë¤Ä¤¤¤Æ¤Ï¡¢¾åµ­¥Ç¥£¥ì¥¯¥È¥ê¤Î index.html ¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </dd>
+
+<dt><code>demo/</code></dt>
+
+<dd>¥Ç¥â¥¢¥×¥ì¥Ã¥È¤È¥¢¥×¥ê¥±¡¼¥·¥ç¥ó</dd>
+
+<dt><code>sample/</code></dt>
+
+<dd>¥µ¥ó¥×¥ë¥³¡¼¥É</dd>
+
+ <dt><code>src.zip</code></dt>
+
+<dd>¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Î¥¢¡¼¥«¥¤¥Ö</dd>
+ </dl>
+ </dd>
+ </dl>
+
+ <h3>ºÆÇÛÉÛ²Äǽ¤Ê JDK<sup><font size="-2">TM</font></sup> ¥Õ¥¡¥¤¥ë</h3>
+
+ <blockquote>
+ ¼¡¤Ë¼¨¤¹ JDK ¤Î¥Õ¥¡¥¤¥ë¡¿¥Ç¥£¥ì¥¯¥È¥ê¥»¥Ã¥È¤Ï¡¢¥Ù¥ó¥À¡¼¤ÎÄ󶡤¹¤ë Java<sup><font size="-2">TM</font></sup> Runtime Environment (JRE<sup><font size="-2">TM</font></sup>) ¤ÎºÆÇÛÉۤ˴ޤá¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤³¤ì¤é¤ò¸ÄÊ̤˺ÆÇÛÉÛ¤¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¥Ð¡¼¥¸¥ç¥ó¤¬°ìÃפ¹¤ë JRE ¤È¤È¤â¤ËÇÛÉÛ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¼¡¤Î¥Ñ¥¹¤Ï¡¢¤¹¤Ù¤Æ JDK ¤ÎºÇ¾å°Ì¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÁêÂХѥ¹¤Ç¤¹¡£ ´Þ¤á¤é¤ì¤ë¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë ¡ÊSolaris<sup><font size="-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤ª¤è¤Ó Linux ¤Î¾ì¹ç¡¢°Ê²¼¤Î°ìÍ÷¤Ç¥Ñ¥¹¤¬ bin/ ¤«¤é»Ï¤Þ¤ë) ¤ËÂбþ¤¹¤ë¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ï´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><code>jre/lib/cmm/PYCC.pf</code></dt>
+
+<dd>¥«¥é¡¼¥×¥í¥Õ¥¡¥¤¥ë¡£¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢PYCC ¥«¥é¡¼Îΰè¤È¤½¤Î¾¤Î¥«¥é¡¼Îΰè¤Î´Ö¤ÇÊÑ´¹¤ò¹Ô¤¦¾ì¹ç¤Ë¤Î¤ßɬÍפǤ¹¡£</dd>
+
+<dt><tt>jre/lib/fonts</tt> ¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤¹¤Ù¤Æ¤Î <tt>.ttf</tt> ¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë</dt>
+
+ <dd>LucidaSansRegular.ttf ¥Õ¥©¥ó¥È¤Ï¤¹¤Ç¤Ë JRE ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤¿¤á¡¢JDK ¤«¤é¼èÆÀ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£</dd>
+
+ <dt><code>jre/lib/audio/soundbank.gm</code></dt>
+
+<dd>¤³¤Î MIDI ¥µ¥¦¥ó¥É¥Ð¥ó¥¯¤Ï JDK ¤Ë´Þ¤Þ¤ì¤Þ¤¹¤¬¡¢JRE ¤«¤éºï½ü¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤Ï JRE ¤Î¥À¥¦¥ó¥í¡¼¥É¥Ð¥ó¥É¥ë¤Î¥µ¥¤¥º¤ò¸º¤é¤¹¤³¤È¤¬ÌÜŪ¤Ç¤¹¡£ ¤¿¤À¤·¡¢¥µ¥¦¥ó¥É¥Ð¥ó¥¯¥Õ¥¡¥¤¥ë¤Ï MIDI ¤ÎºÆÀ¸¤ËɬÍפʤ¿¤á¡¢¥Ù¥ó¥À¡¼¤ÎȽÃÇ¤Ç JDK ¤Î <tt>soundbank.gm</tt> ¥Õ¥¡¥¤¥ë¤ò JRE ¤ÎºÆÇÛÉۤ˴ޤá¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ³ÈÄ¥ MIDI ¥µ¥¦¥ó¥É¥Ð¥ó¥¯¤Î¤¤¤¯¤Ä¤«¤Î¥Ð¡¼¥¸¥ç¥ó¤ò Java Sound Web ¥µ¥¤¥È <a href="http://java.sun.com/products/java-media/sound/">http://java.sun.com/products/java-media/sound/</a> ¤ÇÆþ¼ê¤Ç¤­¤Þ¤¹¡£¤³¤ì¤é¤ÎÂåÂؤΥµ¥¦¥ó¥É¥Ð¥ó¥¯¤Ï¤É¤ì¤â¡¢JRE ¤ÎºÆÇÛÉۤ˴ޤá¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£</dd>
+
+<dt>javac ¥Ð¥¤¥È¥³¡¼¥É¥³¥ó¥Ñ¥¤¥é¡£°Ê²¼¤Î¥Õ¥¡¥¤¥ë¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£</dt>
+
+ <dd><tt>bin/javac</tt> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤ª¤è¤Ó Linux]<br> <tt>bin/sparcv9/javac</tt> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (SPARC(R) ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈÇ)]<br> <tt>bin/amd64/javac</tt> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (AMD)]<br> <tt>bin/javac.exe</tt> [Microsoft Windows]<br> <tt>lib/tools.jar</tt> [¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à]</dd>
+
+<dt>Annotation Processing Tool¡£°Ê²¼¤Î¥Õ¥¡¥¤¥ë¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£<br></dt>
+
+ <dd><code>lib/tools.jar</code> [¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à]<br> <code>bin/apt</code> [Solaris<sup><font size="-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤ª¤è¤Ó Linux]<br> <code>bin/sparcv9/apt</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (SPARC(R) ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈÇ)]<br> <code>bin/amd64/apt</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (AMD)]<br> <code>bin/apt.exe</code> [Microsoft Windows]</dd>
+
+ <dt><code>lib/jconsole.jar</code></dt>
+
+<dd>Jconsole ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡£Ãí: Jconsole ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤ÏưŪ¥¢¥¿¥Ã¥Áµ¡¹½¤¬É¬ÍפǤ¹¡£</dd>
+
+ <dt>ưŪ¥¢¥¿¥Ã¥Áµ¡¹½¤Ï¡¢°Ê²¼¤Î¥Õ¥¡¥¤¥ë¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£</dt>
+
+ <dd><code>lib/tools.jar</code> [¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à]<br> <code>jre/lib/sparc/libattach.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (SPARC(R) ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈÇ) ¤ª¤è¤Ó Linux]<br> <code>jre/lib/sparcv9/libattach.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (SPARC(R) ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈÇ) ¤ª¤è¤Ó Linux]<br> <code>jre/lib/i386/libattach.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (x86) ¤ª¤è¤Ó Linux]<br> <code>jre/lib/amd64/libattach.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (AMD) ¤ª¤è¤Ó Linux]<br> <code>jre\bin\attach.dll</code> [Microsoft Windows]<br></dd>
+
+ <dt>Java Platform Debugger Architecture ¤Î¼ÂÁõ¤Ï¡¢¾å¤ÎưŪ¥¢¥¿¥Ã¥Á¤Ç¼¨¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤Ó°Ê²¼¤Î¥Õ¥¡¥¤¥ë¤Ç¹½À®¤µ¤ì¤Þ¤¹¡£</dt>
+
+ <dd><code>lib/tools.jar</code> [¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à]<br> <code>lib/sa-jdi.jar</code> [¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à]<br> <code>jre/lib/sparc/libsaproc.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (SPARC(R) ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈÇ) ¤ª¤è¤Ó Linux]<br> <code>jre/lib/sparcv9/libsaproc.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (SPARC(R) ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈÇ) ¤ª¤è¤Ó Linux]<br> <code>jre/lib/i386/libsaproc.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (x86) ¤ª¤è¤Ó Linux]<br> <code>jre/lib/amd64/libsaproc.so</code> [Solaris<sup><font size= "-2">TM</font></sup> ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (AMD) ¤ª¤è¤Ó Linux]<br></dd>
+
+<dt><code>jre\bin\server\</code></dt>
+
+<dd>Microsoft Windows ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¡¢JDK ¤Ë Java HotSpot<sup><font size="-2">TM</font></sup> Server VM ¤È Java HotSpot<sup><font size="-2">TM</font></sup> Client VM ¤ÎξÊý¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¤¿¤À¤·¡¢Microsoft Windows ¥×¥é¥Ã¥È¥Õ¥©¡¼¥àÈǤΠJRE ¤Ë¤Ï Java HotSpot<sup><font size="-2">TM</font></sup> Client VM ¤·¤«´Þ¤Þ¤ì¤Æ¤¤¤Þ¤»¤ó¡£Java HotSpot<sup><font size="-2">TM</font></sup> Server VM ¤ò JRE ¤Ç»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢JDK ¤Î <tt>jre\bin\server</tt> ¥Õ¥©¥ë¥À¤ò JRE ¤Î <tt>bin\server</tt> ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤·¤Æ¤¯¤À¤µ¤¤¡£¥½¥Õ¥È¥¦¥§¥¢¥Ù¥ó¥À¡¼¤Ï¡¢JRE ¤ÎºÆÇÛÉۤκݤˡ¢Java HotSpot<sup><font size="-2">TM</font></sup> Server VM ¤òºÆÇÛÉÛ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£</dd>
+ </dl>
+ </dd>
+ </dl>
+
+<h3>̵À©¸Â¶¯ÅÙ Java °Å¹æ²½³ÈÄ¥µ¡Ç½</h3>
+
+ <blockquote>
+°ìÉô¤Î¹ñ¤ÎÍ¢Æþµ¬À©¤ËÂбþ¤¹¤ë¤¿¤á¡¢JDK ¤ª¤è¤Ó JRE ¤È¤È¤â¤Ë½Ð²Ù¤µ¤ì¤ë Java °Å¹æ²½³ÈÄ¥µ¡Ç½ (JCE) ¤Î¥Ý¥ê¥·¡¼¥Õ¥¡¥¤¥ë¤Ï¡¢¶¯ÎϤǤϤ¢¤Ã¤Æ¤âÀ©¸ÂÉÕ¤­¤Î°Å¹æÊý¼°¤Î»ÈÍѤ·¤«µö²Ä¤·¤Æ¤¤¤Þ¤»¤ó¡£ ¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï¼¡¤Î¾ì½ê¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£<br>
+ <br> <code>&lt;java-home&gt;/lib/security/local_policy.jar</code><br> <code>&lt;java-home&gt;/lib/security/US_export_policy.jar</code><br> <br><code>&lt;java-home&gt;</code> ¤Ï¡¢JDK ¤Î <code>jre</code> ¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤¿¤Ï JRE ¤ÎºÇ¾å°Ì¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£ </blockquote>
+
+ <blockquote>
+µ¬À©¤ò¼õ¤±¤Ê¤¤¹ñ¤Î¥æ¡¼¥¶¡¼¤Î¤¿¤á¤Ë¡¢°Å¹æ²½¶¯ÅÙ¤ËÀ©¸Â¤Î¤Ê¤¤ÌµÀ©¸Â¶¯Å٥С¼¥¸¥ç¥ó¤Î¥Õ¥¡¥¤¥ë¤¬ JDK Web ¥µ¥¤¥È¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Î¹ñ¤Î¥æ¡¼¥¶¡¼¤Ï¡¢ÌµÀ©¸Â¶¯Å٥С¼¥¸¥ç¥ó¤ò¥À¥¦¥ó¥í¡¼¥É¤·¡¢¶¯ÎϰŹ沽 jar ¥Õ¥¡¥¤¥ë¤ò̵À©¸Â¶¯ÅÙ¥Õ¥¡¥¤¥ë¤ÇÃÖ¤­´¹¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ </blockquote>
+
+<h3>cacerts ¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë</h3>
+
+ <blockquote>
+°Ê²¼¤Ë¤¢¤ë Java SE ¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë¤Ç¥ë¡¼¥Èǧ¾Ú¶É¾ÚÌÀ½ñ¤òÄɲäޤ¿¤Ïºï½ü¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+<code>&lt;java-home&gt;/lib/security/cacerts</code>
+ </blockquote>
+
+ <blockquote>
+ ¾ÜºÙ¤Ï keytool ¥É¥­¥å¥á¥ó¥È¤Î <a href="http://java.sun.com/javase/ja/6/docs/ja/technotes/tools/solaris/keytool.html#cacerts">cacerts ¾ÚÌÀ½ñ¥Õ¥¡¥¤¥ë</a> ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+<h2><a name="endorsed"></a>Java ¿ä¾©µ¬³Ê¥ª¡¼¥Ð¡¼¥é¥¤¥Éµ¡¹½</h2>
+
+ <blockquote>
+ Java ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ï¡¢Java Community Process<sup><font size="-1">SM</font></sup> (JCP<sup><font size="-1">SM</font></sup><a href="http://www.jcp.org/">http://www.jcp.org/</a>) °Ê³°¤ÇºîÀ®¤µ¤ì¤¿É¸½à (¿ä¾©É¸½à) ¤ÎºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤òÁȤ߹þ¤à¤¿¤á¡¢¤Þ¤¿¤Ï¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë´Þ¤Þ¤ì¤ë¥Æ¥¯¥Î¥í¥¸¡¼¤Î¥Ð¡¼¥¸¥ç¥ó¤ò¡¢¤½¤Î¥Æ¥¯¥Î¥í¥¸¡¼¤Î¿·¤·¤¤¥¹¥¿¥ó¥É¥¢¥í¥ó¥Ð¡¼¥¸¥ç¥ó (ɸ½à¥Æ¥¯¥Î¥í¥¸¡¼) ¤ËÂбþ¤µ¤»¤ë¤¿¤á¡¢Å¬µ¹¹¹¿·¤¬É¬ÍפǤ¹¡£
+ </blockquote>
+
+ <blockquote>
+¿ä¾©µ¬³Ê¥ª¡¼¥Ð¡¼¥é¥¤¥Éµ¡¹½¤ò»ÈÍѤ¹¤ì¤Ð¡¢Java ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ËÁȤ߹þ¤Þ¤ì¤ë²ÄǽÀ­¤Î¤¢¤ë¿ä¾©É¸½à¤ä¥¹¥¿¥ó¥É¥¢¥í¥ó¥Æ¥¯¥Î¥í¥¸¡¼¤ò¼ÂÁõ¤¹¤ë¡¢¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥¯¥é¥¹¤ä¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤Ǥ­¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+¿ä¾©µ¬³Ê¥ª¡¼¥Ð¡¼¥é¥¤¥Éµ¡¹½¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¼¡¤Î¥µ¥¤¥È¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Í¥Àè»ØÄê¤Ë»ÈÍѤǤ­¤ë¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¥Ñ¥Ã¥±¡¼¥¸¤Î°ìÍ÷¤â·ÇºÜ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+ </blockquote>
+
+ <blockquote>
+ <a href= "http://java.sun.com/javase/ja/6/docs/ja/technotes/guides/standards/">http://java.sun.com/javase/ja/6/docs/ja/technotes/guides/standards/</a>
+ </blockquote>
+
+<h2><a name="javadb" id="javadb"></a>Java DB</h2>
+
+ <blockquote>
+¤³¤ÎÇÛÉۤϡ¢Sun Microsystems ¤¬ÇÛÉÛ¤¹¤ë Apache Derby pure Java ¥Ç¡¼¥¿¥Ù¡¼¥¹¥Æ¥¯¥Î¥í¥¸¡¼¤Ç¤¢¤ë Java DB ¤ò¥Ð¥ó¥É¥ë¤·¤Æ¤¤¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï°Ê²¼¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£
+
+ <ul>
+<li>Solaris: <code>/opt/SUNWjavadb</code></li>
+
+<li>Linux: <code>/opt/sun/javadb</code></li>
+
+<li>Windows: <code>C:\Program Files\Sun\JavaDB</code></li>
+ </ul>
+
+ <p>¥æ¡¼¥¶¡¼¥É¥­¥å¥á¥ó¥È¤ä API ¥É¥­¥å¥á¥ó¥È¡¢Java DB ¤Îµ¡Ç½¤ä¤½¤Î¾¥ê¥½¡¼¥¹¤Ê¤É¤Î Java DB ¤È Derby ¤Î¾ðÊó¤Ë¤Ä¤¤¤Æ¤Ï¡¢¾åµ­¥Ç¥£¥ì¥¯¥È¥ê¤Î index.html ¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£</p>
+ </blockquote>
+
+<h2><a name="webpages"></a>Web ¥Ú¡¼¥¸</h2>
+
+ <blockquote>
+¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¼¡¤Î Sun Microsystems ¤Î Web ¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+ <dt><a href="http://java.sun.com/">http://java.sun.com/</a></dt>
+
+<dd>Java Software Web ¥µ¥¤¥È¡£Java ¥Æ¥¯¥Î¥í¥¸¡¢À½ÉʾðÊ󡢥˥塼¥¹¡¢¤ª¤è¤Óµ¡Ç½¤Ë¤Ä¤¤¤Æ¤ÎºÇ¿·¾ðÊ󤬷Ǻܤµ¤ì¤Æ¤¤¤Þ¤¹¡£</dd>
+
+ <dt><a href= "http://java.sun.com/docs">http://java.sun.com/docs</a></dt>
+
+<dd>Java<sup><font size="-2">TM</font></sup> ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î¥É¥­¥å¥á¥ó¥È¡£¥Û¥ï¥¤¥È¥Ú¡¼¥Ñ¡¼¤ä Java ¥Á¥å¡¼¥È¥ê¥¢¥ë¤Ê¤É¤Î¥É¥­¥å¥á¥ó¥È¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£</dd>
+
+ <dt><a href= "http://developer.java.sun.com/">http://developer.java.sun.com</a></dt>
+
+<dd>Developer Services Web ¥µ¥¤¥È¡£(̵ÎÁ¤ÎÅÐÏ¿¤¬É¬Íס£) µ»½Ñ¾ðÊ󡢥˥塼¥¹¡¢¤ª¤è¤Óµ¡Ç½¤Î¾ÜºÙ¾ðÊ󡢥桼¥¶¡¼¥Õ¥©¡¼¥é¥à¡¢¥µ¥Ý¡¼¥È¾ðÊó¤Ê¤É¤¬Ä󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£</dd>
+
+ <dt><a href= "http://java.sun.com/products/">http://java.sun.com/products/</a></dt>
+
+ <dd>Java ¥Æ¥¯¥Î¥í¥¸À½ÉÊ¤È API</dd>
+ </dl>
+ </dd>
+ </dl>
+ <hr>
+
+<p><font size="2">Java<sup><font size="-2">TM</font></sup> Development Kit (JDK<sup><font size="-2">TM</font></sup>) ¤Ï Sun Microsystems<sup><small>TM</small></sup>, Inc. ¤ÎÀ½ÉʤǤ¹¡£<br> <br> Copyright &copy; 2009 Sun Microsystems, Inc.<br> 4150 Network Circle, Santa Clara, California 95054, U.S.A.<br> All rights reserved.</font></p>
+<script type="text/javascript" language="JavaScript" src="/js/omi/jsc/s_code_remote.js">
+</script>
+</body>
+</html>
+
diff --git a/extra/source/jdk-6/README_zh_CN.html b/extra/source/jdk-6/README_zh_CN.html
new file mode 100644
index 000000000..e3b943e2e
--- /dev/null
+++ b/extra/source/jdk-6/README_zh_CN.html
@@ -0,0 +1,507 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+
+<html>
+<head>
+ <meta http-equiv="CONTENT-TYPE" content="text/html; charset=GB2312">
+
+<title>×ÔÊöÎļþ -- Java Platform, Standard Edition Development Kit</title>
+</head>
+
+<body lang="en-US" bgcolor="#FFFFFF">
+<h1 align="center">×ÔÊöÎļþ</h1>
+
+<h2 align="center">Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition 6<br> Development Kit</h2>
+
+<p align="center"><b>JDK<sup><font size="-2">TM</font></sup> 6</b></p>
+
+<h2>Ŀ¼</h2>
+
+ <ul>
+<li><a href="#introduction">¼ò½é</a></li>
+
+<li><a href="#install">ϵͳҪÇóÓë°²×°</a></li>
+
+<li><a href="#docs">JDK Îĵµ</a></li>
+
+<li><a href="#relnotes">·¢ÐÐ˵Ã÷</a></li>
+
+<li><a href="#compatibility">¼æÈÝÐÔ</a></li>
+
+<li><a href="#bugs">´íÎ󱨸æÓë·´À¡</a></li>
+
+<li><a href="#contents">JDK µÄÄÚÈÝ</a></li>
+
+<li><a href="#jre">Java Runtime Environment</a></li>
+
+<li><a href="#redistribution">ÔÙ·Ö·¢</a></li>
+
+<li><a href="#endorsed">Java Ç©Ãû±ê×¼¸²¸Ç»úÖÆ</a></li>
+
+<li><a href="#javadb">Java DB</a></li>
+
+<li><a href="#webpages">Web Ò³</a></li>
+ </ul>
+
+<h2><a name="introduction" id="introduction"></a>¼ò½é</h2>
+
+ <blockquote>
+¸ÐлÄúÏÂÔØ´Ë°æ±¾µÄ Java<sup><font size=
+ "-2">TM</font></sup> Platform, Standard Edition Development Kit (JDK<sup><font size="-2">TM</font></sup>)¡£JDK ÊÇÒ»ÖÖ¿ª·¢»·¾³£¬ÓÃÓÚʹÓà Java ±à³ÌÓïÑÔÉú³ÉÓ¦ÓóÌÐò¡¢applet ºÍ×é¼þ¡£
+ </blockquote>
+
+ <blockquote>
+JDK °üº¬µÄ¹¤¾ß¿ÉÓÃÓÚ¿ª·¢ºÍ²âÊÔÒÔ Java ±à³ÌÓïÑÔ±àд²¢ÔÚ Java<sup><font size=
+ "-2">TM</font></sup> ƽ̨ÉÏÔËÐеijÌÐò¡£
+ </blockquote>
+
+<h2><a name="install" id="install"></a>ϵͳҪÇóÓë°²×°</h2>
+
+ <blockquote>
+ϵͳҪÇó¡¢°²×°ËµÃ÷ºÍ¹ÊÕÏÅųýÌáʾλÓÚ Java Èí¼þ Web Õ¾µãÉϵÄÒÔÏÂλÖãº
+ </blockquote>
+
+ <blockquote>
+<a href="http://java.sun.com/javase/6/webnotes/install/">JDK 6 °²×°ËµÃ÷</a>
+ </blockquote>
+
+<h2><a name="docs" id="docs"></a>JDK<sup><font size="-2">TM</font></sup> Îĵµ</h2>
+
+ <blockquote>
+Áª»ú <a href=
+ "http://java.sun.com/javase/6/docs/">Java<sup><font size=
+ "-2">TM</font></sup> Platform, Standard Edition (Java SE) Îĵµ</a>°üº¬ API ˵Ã÷¡¢¹¦ÄܽéÉÜ¡¢¿ª·¢ÕßÖ¸ÄÏ¡¢JDK<sup><font size=
+ "-2">TM</font></sup> ¹¤¾ßºÍʵÓóÌÐòµÄ²Î¿¼Ò³Ãæ¡¢ÑÝʾ³ÌÐòÒÔ¼°Ö¸ÏòÏà¹ØÐÅÏ¢µÄÁ´½Ó¡£´ËÎĵµ»¹ÒÔÏÂÔØ°üµÄÐÎʽÌṩ£¬Äú¿ÉÒÔ½«´Ë°ü°²×°ÔÚ¼ÆËã»úÉÏ¡£Òª»ñµÃ¸ÃÎĵµ°ü£¬Çë²Î¼û<a href="http://java.sun.com/javase/downloads/index.jsp">ÏÂÔØÒ³Ãæ</a>¡£ÓÐ¹Ø API ÎĵµµÄÐÅÏ¢£¬Çë²ÎÔÄ <a href=
+ "http://java.sun.com/javase/6/docs/api/index.html">Java<sup><font size="-2">TM</font></sup> Platform, Standard Edition API ˵Ã÷</a>¡£¸ÃÒ³ÃæÌṩÁË API µÄ¼òÒª½éÉÜ£¬ÆäÖÐÖصã½éÉÜÁË API ˵Ã÷¶ø·Ç´úÂëʾÀý¡£
+ </blockquote>
+
+<h2><a name="relnotes" id="relnotes"></a>·¢ÐÐ˵Ã÷</h2>
+
+ <blockquote>
+Óйش˰汾µÄÆäËûÐÅÏ¢£¬Çë²Î¼û Java Èí¼þ Web Õ¾µãÉ쵀 <a href="http://java.sun.com/javase/6/webnotes/">Java SE 6 ·¢ÐÐ˵Ã÷</a>¡£ÓÉÓÚÁª»ú·¢ÐÐ˵Ã÷½«¸ù¾ÝÐèÒª½øÐиüУ¬Òò´ËÇë²»¶¨Æڲ鿴Áª»ú·¢ÐÐ˵Ã÷ÒÔÁ˽â×îÐÂÐÅÏ¢¡£
+ </blockquote>
+
+<h2><a name="compatibility" id="compatibility"></a>¼æÈÝÐÔ</h2>
+
+ <blockquote>
+ÓйØÒÑÖªµÄ¼æÈÝÐÔÎÊÌâÁÐ±í£¬Çë²Î¼û Java Èí¼þ Web Õ¾µãÉÏ<a href=
+ "http://java.sun.com/javase/6/webnotes/compatibility.html">ÓëÔçÆÚ°æ±¾µÄ¼æÈÝÐÔ</a>¡£ÎÒÃÇÒѾ¡Á¦Ö§³ÖΪÔçÆÚ°æ±¾µÄ Java<sup><font size=
+ "-2">TM</font></sup> ƽ̨±àдµÄ³ÌÐò¡£¾¡¹Ü±ØÈ»»áÓÐijЩ²»¼æÈݵĸü¸Ä£¬µ«´ó²¿·ÖÈí¼þ¶¼Äܹ»ÔÚ²»ÖØбà³ÌµÄÇé¿öÏÂǨÒƵ½µ±Ç°°æ±¾¡£³ýÁËÔÚ¼«ÉÙÊýÇé¿öÏÂÓÐÒâ²»±£³Ö¼æÈÝ£¨ÈçÎÒÃǵļæÈÝÐÔ Web Ò³ÖÐËùÊö£©ÒÔÍ⣬Èç¹û×ö²»µ½ÕâÒ»µã£¬½«±»ÈÏΪÊÇÒ»¸ö´íÎó¡£Ö®ËùÒÔ´æÔÚһЩÆÆ»µ¼æÈÝÐԵĸü¸Ä£¬ÊÇÒòΪÐèÒªÃÖ²¹Ç±Ôڵݲȫ©¶´»òÐÞ¸´ÊµÏÖ»òÉè¼Æ´íÎó¡£
+ </blockquote>
+
+<h2><a name="bugs" id="bugs"></a>´íÎ󱨸æÓë·´À¡</h2>
+
+ <blockquote>
+<a href="http://bugs.sun.com/bugdatabase/index.jsp">´íÎóÊý¾Ý¿â</a> Web Õ¾µãʹÄú¿ÉÒÔËÑË÷ºÍ¼ì²éÏÖÓеĴíÎ󱨸桢Ìá½»Äú×Ô¼ºµÄ´íÎ󱨸æÒÔ¼°Í¨ÖªÎÒÃÇÄú×îÏ£ÍûÐÞ¸´ÄÄЩ´íÎó¡£ÒªÖ±½ÓÌá½»´íÎó»òÇëÇó¹¦ÄÜ£¬ÇëÌîдÒÔÏÂ±íµ¥£º
+ </blockquote>
+
+ <blockquote>
+<a href=
+ "http://bugs.sun.com/services/bugreport/index.jsp">http://bugs.sun.com/services/bugreport/index.jsp</a>
+ </blockquote>
+
+ <blockquote>
+Äú¿ÉÒÔÏò <a href=
+ "http://java.sun.com/docs/forms/sendusmail.html">Java SE ÎĵµÐ¡×é</a>·¢ËÍ·´À¡£¬Ò²¿ÉÒÔÖ±½ÓÏò <a href=
+ "http://developers.sun.com/contact/index.jsp">Java Èí¼þ¹¤³ÌС×éµÄµç×ÓÓʼþµØÖ·</a>·¢ËÍÒâ¼û¡£
+ </blockquote>
+
+ <blockquote>
+<b>×¢</b> - Ç벻Ҫͨ¹ý´íÎóÊý¾Ý¿â»òÎÒÃǵĿª·¢ÍŶÓÑ°Çó¼¼ÊõÖ§³Ö¡£ÓйؿÉÒÔÑ¡ÔñµÄÖ§³Ö·½Ê½£¬Çë²Î¼û Java Èí¼þ Web Õ¾µãÉϵÄ<a href=
+ "http://java.sun.com/developer/support/">Ö§³ÖÓë·þÎñ</a>¡£
+ </blockquote>
+
+<h2><a name="contents" id="contents"></a>JDK<sup><font size= "-2">TM</font></sup> µÄÄÚÈÝ</h2>
+
+ <blockquote>
+±¾²¿·Ö¸ÅÀ¨½éÉÜÁË JDK<sup><font size="-2">TM</font></sup> ÖеÄÎļþºÍĿ¼¡£ÓйØÕâЩÎļþºÍĿ¼µÄÏêϸÐÅÏ¢£¬Çë²Î¼ûÊÊÓÃÓÚÄúµÄƽ̨µÄ Java SE ÎĵµµÄ <a href=
+ "http://java.sun.com/javase/6/docs/technotes/tools/index.html#general">JDK Îļþ½á¹¹</a>²¿·Ö¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+<dt><b>¿ª·¢¹¤¾ß</b></dt>
+
+<dd>£¨Î»ÓÚ <code>bin/</code> ×ÓĿ¼ÖУ©Ö¸¹¤¾ßºÍʵÓóÌÐò£¬¿É°ïÖúÄú¿ª·¢¡¢Ö´ÐС¢µ÷ÊԺͱ£´æÒÔ Java<sup><font size="-2">TM</font></sup> ±à³ÌÓïÑÔ±àдµÄ³ÌÐò¡£ÓйØÏêϸÐÅÏ¢£¬Çë²Î¼û<a href=
+ "http://java.sun.com/javase/6/docs/technotes/tools/index.html">¹¤¾ßÎĵµ</a>¡£<br> <br></dd>
+
+<dt><b>ÔËÐÐʱ»·¾³</b></dt>
+
+<dd>£¨Î»ÓÚ <code>jre/</code> ×ÓĿ¼ÖУ©ÓÉ JDK ʹÓÃµÄ Java Runtime Environment (JRE<sup><font size="-2">TM</font></sup>) µÄʵÏÖ¡£JRE °üÀ¨ Java<sup><font size=
+ "-2">TM</font></sup> ÐéÄâ»ú (JVM<sup><font size=
+ "-2">TM</font></sup>)¡¢Àà¿âÒÔ¼°ÆäËûÖ§³ÖÖ´ÐÐÒÔ Java<sup><font size=
+ "-2">TM</font></sup> ±à³ÌÓïÑÔ±àдµÄ³ÌÐòµÄÎļþ¡£<br> <br></dd>
+
+<dt><b>¸½¼Ó¿â</b></dt>
+
+<dd>£¨Î»ÓÚ <code>lib/</code> ×ÓĿ¼ÖУ©¿ª·¢¹¤¾ßËùÐèµÄÆäËûÀà¿âºÍÖ§³ÖÎļþ¡£<br> <br></dd>
+
+<dt><b>ÑÝʾ applet ºÍÓ¦ÓóÌÐò</b></dt>
+
+<dd>£¨Î»ÓÚ <code>demo/</code> ×ÓĿ¼ÖУ©Java<sup><font size="-2">TM</font></sup> ƽ̨µÄ±à³ÌʾÀý£¨´øÔ´´úÂ룩¡£ÕâЩʾÀý°üÀ¨Ê¹Óà Swing ºÍÆäËû Java<sup><font size="-2">TM</font></sup> »ùÀàÒÔ¼° Java<sup><font size="-2">TM</font></sup> ƽ̨µ÷ÊÔÆ÷Ìåϵ½á¹¹µÄʾÀý¡£<br> <br></dd>
+
+<dt><b>ÑùÀý´úÂë</b></dt>
+
+<dd>£¨Î»ÓÚ <code>sample</code> ×ÓĿ¼ÖУ©Ä³Ð© Java API µÄ±à³ÌÑùÀý£¨´øÔ´´úÂ룩¡£<br> <br></dd>
+
+<dt><b>C Í·Îļþ</b></dt>
+
+<dd>£¨Î»ÓÚ <code>include/</code> ×ÓĿ¼ÖУ©Ö§³ÖʹÓà <a href=
+ "http://java.sun.com/javase/6/docs/technotes/guides/jni/">Java ±¾»ú½çÃæ</a>¡¢<a href=
+ "http://java.sun.com/javase/6/docs/technotes/guides/jvmti/">JVM<sup><font size="-2">TM</font></sup> ¹¤¾ß½çÃæ</a>ÒÔ¼° Java<sup><font size="-2">TM</font></sup> ƽ̨µÄÆäËû¹¦ÄܽøÐб¾»ú´úÂë±à³ÌµÄÍ·Îļþ¡£<br> <br></dd>
+
+<dt><b>Ô´´úÂë</b></dt>
+
+<dd>£¨Î»ÓÚ <code>src.zip</code> ÖУ©×é³É Java ºËÐÄ API µÄËùÓÐÀàµÄ Java<sup><font size="-2">TM</font></sup> ±à³ÌÓïÑÔÔ´Îļþ£¨¼´£¬java.*¡¢javax.* ºÍijЩ org.* °üµÄÔ´Îļþ£¬µ«²»°üÀ¨ com.sun.* °üµÄÔ´Îļþ£©¡£´ËÔ´´úÂë½ö¹©²Î¿¼£¬ÒÔ±ã°ïÖú¿ª·¢ÕßѧϰºÍʹÓà Java<sup><font size="-2">TM</font></sup> ±à³ÌÓïÑÔ¡£ÕâЩÎļþ²»°üº¬Ìض¨ÓÚƽ̨µÄʵÏÖ´úÂ룬ÇÒ²»ÄÜÓÃÓÚÖØÐÂÉú³ÉÀà¿â¡£Òª¶ÔÕâЩÎļþ½øÐнâѹ£¬ÇëʹÓÃÈÎÒ»³£ÓÃµÄ zip ʵÓóÌÐò£»»òÕßÒ²¿ÉÒÔʹÓÃλÓÚ JDK µÄ <code>bin/</code> Ŀ¼ÖÐµÄ Jar ʵÓóÌÐò£º<br><br><code>jar xvf src.zip</code></dd>
+ </dl>
+ </dd>
+ </dl>
+
+<h2><a name="jre" id="jre"></a>Java Runtime Environment (JRE<sup><font size="-2">TM</font></sup>)</h2>
+
+ <blockquote>
+Java<sup><font size="-2">TM</font></sup> Runtime Environment (JRE<sup><font size="-2">TM</font></sup>) ÊÇÒ»¿î¿Éµ¥¶ÀÏÂÔصIJúÆ·¡£Çë²Î¼û<a href=
+ "http://java.sun.com/javase/downloads/index.jsp">ÏÂÔØ Web Õ¾µã</a>¡£
+ </blockquote>
+
+ <blockquote>
+ͨ¹ý JRE£¬Äú¿ÉÒÔÔËÐÐÒÔ Java<sup><font size=
+ "-2">TM</font></sup> ±à³ÌÓïÑÔ±àдµÄÓ¦ÓóÌÐò¡£Óë JDK<sup><font size=
+ "-2">TM</font></sup> ÏàËÆ£¬JRE °üº¬ Java<sup><font size=
+ "-2">TM</font></sup> ÐéÄâ»ú (JVM<sup><font size=
+ "-2">TM</font></sup>)¡¢×é³É Java<sup><font size=
+ "-2">TM</font></sup> ƽ̨ API µÄÀ༰֧³ÖÎļþ¡£Óë JDK ²»Í¬µÄÊÇ£¬Ëü²»°üº¬ÖîÈç±àÒëÆ÷ºÍµ÷ÊÔÆ÷ÕâÑùµÄ¿ª·¢¹¤¾ß¡£
+ </blockquote>
+
+ <blockquote>
+ÒÀÕÕ JRE Ðí¿ÉÖ¤Ìõ¿î£¬Äú¿ÉÒÔËæÒâµØ½« JRE ËæÓ¦ÓóÌÐòÒ»Æð½øÐÐÔÙ·Ö·¢¡£Ê¹Óà JDK ¿ª·¢Ó¦ÓóÌÐòºó£¬¿É½«ÆäÓë JRE Ò»Æð·¢ÐУ¬ÒÔ±ã×îÖÕÓû§¾ßÓпÉÔËÐÐÈí¼þµÄ Java<sup><font size="-2">TM</font></sup> ƽ̨¡£
+ </blockquote>
+
+<h2><a name="redistribution" id="redistribution"></a>ÔÙ·Ö·¢</h2>
+
+ <blockquote>
+ <blockquote>
+ <hr>
+×¢ - ±¾Èí¼þµÄÐí¿ÉÖ¤²»ÔÊÐíÔÙ·Ö·¢²âÊÔ°æºÍÆäËûÔ¤·¢Ðа汾¡£
+ <hr>
+ </blockquote>
+ </blockquote>
+
+ <blockquote>
+±ØÐë×ñÊØÈí¼þÐí¿ÉЭÒéµÄÌõ¿îºÍÌõ¼þÒÔ¼°ÏÂÃæÌá³öµÄÒåÎñ¡¢ÏÞÖƺÍÀýÍâ¡£ÔÚÏÂÁÐÇé¿öÏ£¬Äú¿ÉÒÔ¸´Öƺͷַ¢±¾Èí¼þ£¨ÒÔ¼°ÔÚÏÂÃæ±êʶΪ&ldquo;¿ÉÔÙ·Ö·¢&rdquo;µÄÈí¼þ²¿·Ö£©£º
+ </blockquote>
+
+ <blockquote>
+ <ol type="a">
+<li>Äú½«ÍêÕûµØ·Ö·¢Èí¼þ¶ø²»ÄܽøÐÐÐ޸ģ¬²¢½ö×÷ΪÄúµÄ applet ºÍÓ¦ÓóÌÐò£¨³ÌÐò£©µÄÒ»²¿·Ö´ò°ü£»</li>
+
+<li>ÄúµÄ³ÌÐò½«Ïò±¾Èí¼þÌí¼ÓÖØÒªµÄÖ÷Òª¹¦ÄÜ£»</li>
+
+<li>ÄúµÄ³ÌÐò½öÓÃÓÚÔÚÆôÓÃÁË Java µÄÆÕͨ×ÀÃæ¼ÆËã»úºÍ·þÎñÆ÷ÉÏÔËÐУ»</li>
+
+<li>Äú·Ö·¢Èí¼þÖ»ÊÇΪÁËÔËÐÐÄúµÄ³ÌÐò£»</li>
+
+<li>Äú²»·Ö·¢ÆäËûÈí¼þÀ´Ìæ»»±¾Èí¼þµÄÈκÎ×é¼þ£»</li>
+
+<li>Äú²»É¾³ý»ò¸ü¸Ä±¾Èí¼þÖаüº¬µÄÈκÎרÓÃͼÀý»òÉùÃ÷£»</li>
+
+<li>ÄúÖ»°´ÕÕÖ¼ÔÚ±£»¤ Sun µÄÀûÒæµÄÐí¿ÉЭÒéÖеÄÌõ¿îÀ´·Ö·¢±¾Èí¼þ£»</li>
+
+<li>ÄúͬÒâά»¤ºÍ±£ÕÏ Sun ¼°ÆäÐí¿É·½µÄÀûÒ棬²»Ê¹Æä³Ðµ£ÒòµÚÈý·½Ê¹Óûò·Ö·¢ÈÎÒâºÍÈ«²¿³ÌÐòºÍ/»òÈí¼þ¶øÒýÆðµÄÅâ³¥¡¢ËßËÏ»ò³åÍ»Ëùµ¼ÖµÄÅâ³¥½ð¡¢ËßËÏ·Ñ¡¢Õ®ÎñºÍ/»òµ÷½â·Ñ£¨°üÀ¨ÂÉʦ·Ñ£©¡£</li>
+ </ol>
+ </blockquote>
+
+ <blockquote>
+´Ë´¦Ê¹ÓõÄ&ldquo;¹©Ó¦ÉÌ&rdquo;Ò»´ÊÊÇÖ¸Ðí¿ÉÖ¤³ÖÓÐÈË¡¢¿ª·¢ÕßÒÔ¼°½« Java<sup><font size="-2">TM</font></sup> Development Kit (JDK<sup><font size="-2">TM</font></sup>) ÓëÆä³ÌÐòÒ»ÆðÐí¿ÉºÍ·Ö·¢µÄ¶ÀÁ¢Èí¼þ¹©Ó¦ÉÌ (ISV)¡£
+ </blockquote>
+
+ <blockquote>
+¹©Ó¦É̱ØÐë×ñÊØ Java Development Kit ¶þ½øÖÆ´úÂëÐí¿ÉЭÒéµÄÌõ¿î¡£
+ </blockquote>
+
+<h3>±ØÒªÎļþÓë¿ÉÑ¡Îļþ</h3>
+
+ <blockquote>
+×é³É Java<sup><font size="-2">TM</font></sup> Development Kit (JDK<sup><font size="-2">TM</font></sup>) µÄÎļþ·ÖΪÁ½Àࣺ±ØÒªµÄºÍ¿ÉÑ¡µÄ¡£¿ÉÑ¡Îļþ¿ÉÒÔ²»°üº¬ÔÚ JDK µÄÔÙ·Ö·¢ÖУ¨Óɹ©Ó¦É̾ö¶¨£©¡£
+ </blockquote>
+
+ <blockquote>
+ÏÂÃæÒ»½ÚÁгöÁË¿ÉÒÔÑ¡Ôñ´Ó JDK µÄÔÙ·Ö·¢ÖÐÊ¡ÂÔµÄÎļþºÍĿ¼¡£Ã»ÓÐÁÐΪ¿ÉÑ¡ÎļþµÄËùÓÐÎļþ¶¼±ØÐë°üº¬ÔÚ JDK µÄÔÙ·Ö·¢ÖС£
+ </blockquote>
+
+<h3>¿ÉÑ¡ÎļþºÍĿ¼</h3>
+
+ <blockquote>
+ÏÂÁÐÎļþ¿ÉÒÔ´ÓÔÙ·Ö·¢ÖÐÅųý¡£ÕâЩÎļþλÓÚ jdk1.6.0_&lt;°æ±¾&gt; Ŀ¼ÖУ¬ÆäÖÐ &lt;°æ±¾&gt; ÊÇ×îеİ汾ºÅ¡£½«ÏÔʾ Solaris<sup><font size="-2">TM</font></sup> ºÍ Linux µÄÎļþÃûºÍ·Ö¸ô·û¡£Windows ¿ÉÖ´ÐÐÎļþ¾ßÓÐ &quot;.exe&quot; ºó׺¡£»¹¿ÉÒÔÅųýÃû³ÆÖдøÓÐ <code>_g</code> µÄÏàÓ¦Îļþ¡£¶ÔÓÚÈκÎÒÑÅųýµÄ¿ÉÖ´ÐÐÎļþ£¬Ó¦ÅųýÏàÓ¦µÄÊÖ²áÒ³£¨°üº¬ÏÂÃæÁгöµÄÒÔ <code>bin/</code> ¿ªÍ·µÄ·¾¶£¬ÊÊÓÃÓÚ Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳºÍ Linux£©¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+<dt><code>jre/lib/charsets.jar</code></dt>
+
+<dd>×Ö·ûת»»Àà</dd>
+
+<dt><code>jre/lib/ext/</code></dt>
+
+<dd><code>sunjce_provider.jar</code> - SunJCE µÄ Java ¼ÓÃÜ·¨ API ÌṩÕß<br> <code>localedata.jar</code> - °üº¬·ÇÃÀʽӢÓïÓïÑÔ»·¾³ËùÐèµÄÐí¶à×ÊÔ´<br> <code>ldapsec.jar</code> - °üº¬ LDAP ·þÎñÌṩÕßËùÖ§³ÖµÄ°²È«ÌØÕ÷<br> <code>dnsns.jar</code> - ÓÃÓÚ JNDI DNS ÌṩÕßµÄ InetAddress °ü×°</dd>
+
+<dt><code>bin/rmid</code> ºÍ <code>jre/bin/rmid</code></dt>
+
+<dd>Java RMI »î»¯ÏµÍ³ÊØ»¤½ø³Ì</dd>
+
+<dt><code>bin/rmiregistry</code> ºÍ <code>jre/bin/rmiregistry</code></dt>
+
+<dd>Java Ô¶³Ì¶ÔÏó×¢²á±í</dd>
+
+<dt><code>bin/tnameserv</code> ºÍ <code>jre/bin/tnameserv</code></dt>
+
+<dd>Java IDL Ãû³Æ·þÎñÆ÷</dd>
+
+<dt><code>bin/keytool</code> ºÍ <code>jre/bin/keytool</code></dt>
+
+<dd>ÃÜÔ¿ºÍÖ¤Êé¹ÜÀí¹¤¾ß</dd>
+
+<dt><code>bin/kinit</code> ºÍ <code>jre/bin/kinit</code></dt>
+
+<dd>ÓÃÓÚ»ñÈ¡ºÍ¸ßËÙ»º´æ Kerberos Ʊ֤µÄÊÚÓèƱ֤</dd>
+
+<dt><code>bin/klist</code> ºÍ <code>jre/bin/klist</code></dt>
+
+<dd>ƾ¾Ý¸ßËÙ»º´æºÍÃÜÔ¿±íÖÐµÄ Kerberos ÏÔʾÌõÄ¿</dd>
+
+<dt><code>bin/ktab</code> ºÍ <code>jre/bin/ktab</code></dt>
+
+<dd>Kerberos ÃÜÔ¿±í¹ÜÀíÆ÷</dd>
+
+<dt><code>bin/policytool</code> ºÍ <code>jre/bin/policytool</code></dt>
+
+<dd>²ßÂÔÎļþ´´½¨ºÍ¹ÜÀí¹¤¾ß</dd>
+
+<dt><code>bin/orbd</code> ºÍ <code>jre/bin/orbd</code></dt>
+
+<dd>¶ÔÏóÇëÇó´úÀíÊØ»¤½ø³Ì</dd>
+
+<dt><code>bin/servertool</code> ºÍ <code>jre/bin/servertool</code></dt>
+
+<dd>Java IDL ·þÎñÆ÷¹¤¾ß</dd>
+
+<dt><code>bin/javaws</code>¡¢<code>jre/bin/javaws</code>¡¢<code>jre/lib/javaws/</code> ºÍ <code>jre/lib/javaws.jar</code></dt>
+
+<dd>Java Web Start</dd>
+
+<dt><code>db/</code></dt>
+<dd>
+Java DB£¬ËüÊÇ Sun Microsystems µÄ Apache Derby Êý¾Ý¿â¼¼ÊõµÄ·Ö·¢¡£
+ĬÈÏ°²×°Î»ÖÃΪ£º
+
+<ul>
+<li>Solaris£º<code>/opt/SUNWjavadb</code></li>
+
+<li>Linux£º<code>/opt/sun/javadb</code></li>
+
+<li>Windows£º<code>C:\Program Files\Sun\JavaDB</code></li>
+</ul>ÓÐ¹Ø Java DB ºÍ Derby µÄÐÅÏ¢£¨°üÀ¨Óû§
+ºÍ API Îĵµ¡¢Java DB µÄ¹¦ÄÜÒÔ¼°¸ü¶à×ÊÔ´£©£¬
+Çë²Î¼ûÉÏÊöĿ¼ÖÐµÄ index.html Îļþ¡£
+</dd>
+
+<dd>Java<sup><font size="-2">TM</font></sup>DB£¬Sun Microsystems µÄ Apache Derby Êý¾Ý¿â¼¼Êõ·Ö·¢¡£</dd>
+
+<dt><code>demo/</code></dt>
+
+<dd>ÑÝʾ applet ºÍÓ¦ÓóÌÐò</dd>
+
+<dt><code>sample/</code></dt>
+
+<dd>ÑùÀý´úÂë</dd>
+
+<dt><code>src.zip</code></dt>
+
+<dd>Ô´Îļþ¹éµµ</dd>
+ </dl>
+ </dd>
+ </dl>
+
+<h3><a name="redistributablejdkfiles" id=
+ "redistributablejdkfiles"></a>¿ÉÔÙ·Ö·¢µÄ JDK<sup><font size=
+ "-2">TM</font></sup> Îļþ</h3>
+
+ <blockquote>
+ÏÂÃæÁгöÁËÓÐÏÞ¼¸×é JDK ÎļþºÍĿ¼£¬¹©Ó¦ÉÌÔÚÔÙ·Ö·¢ Java<sup><font size=
+ "-2">TM</font></sup> Runtime Environment (JRE<sup><font size=
+ "-2">TM</font></sup>) ʱ£¬¿ÉÄܻὫÕâЩÎļþºÍĿ¼Ë渽ÆäÖС£²»Äܵ¥¶À¶ÔËüÃǽøÐÐÔÙ·Ö·¢£¬¶ø±ØÐëËæÏàͬ°æ±¾µÄ JRE Ò»Æð·Ö·¢¡£ËùÓз¾¶¶¼ÊÇÏà¶Ô JDK µÄ¶¥²ãĿ¼¶øÑԵġ£¶ÔÓÚÈκÎÒÑ°üº¬µÄ¿ÉÖ´ÐÐÎļþ£¬Ó¦°üº¬ÏàÓ¦µÄÊÖ²áÒ³£¨°üº¬ÏÂÃæÁгöµÄÒÔ <code>bin/</code> ¿ªÍ·µÄ·¾¶£¬ÊÊÓÃÓÚ Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳºÍ Linux£©¡£
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+<dt><code>jre/lib/cmm/PYCC.pf</code></dt>
+
+<dd>ÑÕÉ«ÅäÖÃÎļþ¡£½öµ±Óû§Ï£ÍûÔÚ PYCC ÑÕÉ«Çø¼äÓëÁíÒ»¸öÑÕÉ«Çø¼äÖ®¼ä½øÐÐת»»Ê±²ÅÐèÒªÓõ½´ËÎļþ¡£</dd>
+
+<dt>λÓÚ <code>jre/lib/fonts/</code> Ŀ¼ÖеÄËùÓÐ <code>.ttf</code> ×ÖÌåÎļþ¡£</dt>
+
+<dd>Çë×¢Ò⣬JRE ÖÐÒÑ°üº¬ LucidaSansRegular.ttf ×ÖÌ壬Òò´ËÎÞÐè´Ó JDK ÖÐÒýÈë¸ÃÎļþ¡£</dd>
+
+<dt><code>jre/lib/audio/soundbank.gm</code></dt>
+
+<dd>JDK ÖоßÓиà MIDI ÉùÒô¿â£¬µ«ÎªÁ˼õС JRE ÏÂÔØ°üËùÕ¼µÄ¿Õ¼ä£¬ÒÑ´Ó JRE ÖÐɾ³ý¸Ã¿â¡£µ«ÊÇ£¬¶ÔÓÚ MIDI »Ø·Å£¬ÉùÒô¿âÎļþÊDZØÐèµÄ£¬Òò´ËÔÚÔÙ·Ö·¢ JRE ʱ¿ÉÄܽ« JDK µÄ <code>soundbank.gm</code> ÎļþË渽ÆäÖУ¨Óɹ©Ó¦É̾ö¶¨£©¡£¿É´Ó Java Sound Web Õ¾µã»ñµÃÈô¸É¼ÓÇ¿µÄ MIDI ÉùÒô¿â°æ±¾£¬¸ÃÕ¾µãÈçÏ£º<a href=
+ "http://java.sun.com/products/java-media/sound/">http://java.sun.com/products/java-media/sound/</a>¡£ÔÚÔÙ·Ö·¢ JRE ʱ£¬¿ÉÄܽ«ÕâЩ±¸ÓÃÉùÒô¿âË渽ÆäÖС£</dd>
+
+<dt>javac ×Ö½ÚÂë±àÒëÆ÷ÓÉÏÂÁÐÎļþ×é³É£º</dt>
+
+<dd><code>bin/javac</code> [Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳºÍ Linux]<br> <code>bin/sparcv9/javac</code> [Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳ£¨SPARC(R) ƽ̨°æ£©]<br> <code>bin/amd64/javac</code> [Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳ (AMD)]<br> <code>bin/javac.exe</code> [Microsoft Windows]<br> <code>lib/tools.jar</code> [ËùÓÐƽ̨]</dd>
+
+<dt>×¢ÊÍ´¦Àí¹¤¾ßÓÉÏÂÁÐÎļþ×é³É£º</dt>
+<dd><code>lib/tools.jar</code> [ËùÓÐƽ̨]<br>
+<dd><code>bin/apt</code> [Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳºÍ Linux]<br> <code>bin/sparcv9/apt</code> [Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳ£¨SPARC(R) ƽ̨°æ£©]<br> <code>bin/amd64/apt</code> [Solaris<sup><font size="-2">TM</font></sup> ²Ù×÷ϵͳ (AMD)]<br> <code>bin/apt.exe</code> [Microsoft Windows]</dd>
+
+<dt><code>lib/jconsole.jar</code></dt>
+
+<dd>Jconsole Ó¦ÓóÌÐò¡£×¢Ò⣺</dd>
+Jconsole Ó¦ÓóÌÐòÒªÇóʹÓö¯Ì¬Á¬½Ó»úÖÆ¡£</dd>
+
+<dt>¶¯Ì¬Á¬½Ó»úÖÆÓÉÏÂÁÐÎļþ×é³É£º</dt>
+
+<dd><code>lib/tools.jar</code> [ËùÓÐƽ̨]<br>
+<code>jre/lib/sparc/libattach.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ£¨SPARC(R) ƽ̨°æ£©ºÍ Linux]
+<br>
+<code>jre/lib/sparcv9/libattach.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ£¨SPARC(R) ƽ̨°æ£©ºÍ Linux]
+<br>
+<code>jre/lib/i386/libattach.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ (x86) ºÍ Linux]<br>
+<code>jre/lib/amd64/libattach.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ (AMD) ºÍ Linux]
+<code>jre\bin\attach.dll</code> [Microsoft Windows]<br></dd>
+
+<dt>Java ƽ̨µ÷ÊÔÆ÷Ìåϵ½á¹¹ÊµÏÖÓÉ
+ÔÚÉÏÊö¶¯Ì¬Á¬½Ó²¿·ÖÖÐÏÔʾµÄÎļþºÍ
+ÏÂÁÐÎļþ×é³É£º</dt>
+
+<dd><code>lib/tools.jar</code> [ËùÓÐƽ̨]<br>
+<code>lib/sa-jdi.jar</code> [ËùÓÐƽ̨]<br>
+<code>jre/lib/sparc/libsaproc.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ£¨SPARC(R) ƽ̨°æ£©ºÍ Linux]
+<br>
+<code>jre/lib/sparcv9/libsaproc.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ£¨SPARC(R) ƽ̨°æ£©ºÍ Linux]
+<br>
+<code>jre/lib/i386/libsaproc.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ (x86) ºÍ Linux]<br>
+<code>jre/lib/amd64/libsaproc.so</code> [Solaris<sup><font size=
+"-2">TM</font></sup> ²Ù×÷ϵͳ (AMD) ºÍ Linux]<br></dd>
+
+<dt><code>jre\bin\server\</code></dt>
+
+<dd>ÔÚ Microsoft Windows ƽ̨ÉÏ£¬JDK ͬʱ°üº¬ Java HotSpot<sup><font size="-2">TM</font></sup> ·þÎñÆ÷ VM ºÍ Java HotSpot<sup><font size="-2">TM</font></sup> ¿Í»§»ú VM¡£µ«ÊÇ£¬Microsoft Windows ƽ̨É쵀 JRE ½ö°üº¬ Java HotSpot<sup><font size="-2">TM</font></sup> ¿Í»§»ú VM¡£Èç¹ûÓû§Ï£ÍûºÍ JRE Ò»ÆðʹÓà Java HotSpot<sup><font size="-2">TM</font></sup> ·þÎñÆ÷ VM£¬¿ÉÒÔ½« JDK µÄ <code>jre\bin\server</code> Îļþ¼Ð¸´ÖƵ½ JRE µÄ <code>bin\server</code> Ŀ¼ÖС£Èí¼þ¹©Ó¦É̿ɽ« Java HotSpot<sup><font size="-2">TM</font></sup> ·þÎñÆ÷ VM Ëæ JRE Ò»ÆðÔÙ·Ö·¢¡£</dd>
+ </dl>
+ </dd>
+ </dl>
+
+<h3>ÎÞÏÞ¼ÓÇ¿µÄ Java ¼ÓÃÜ·¨À©Õ¹</h3>
+
+ <blockquote>
+ÓÉÓÚijЩ¹ú¼Ò/µØÇø´æÔÚ½ø¿Ú¿ØÖÆÏÞÖÆ£¬Òò´Ë JDK ºÍ JRE Ë渽µÄ Java ¼ÓÃÜ·¨À©Õ¹ (JCE) ²ßÂÔÎļþÔÊÐíʹÓÃÇ¿´óµ«ÓÐÏ޵ļÓÃÜ·¨¡£ÕâЩÎļþλÓÚ<br> <br> <code>&lt;java-home&gt;/lib/security/local_policy.jar</code><br> <code>&lt;java-home&gt;/lib/security/US_export_policy.jar</code><br> <br>ÆäÖÐ <code>&lt;java-home&gt;</code> ÊÇ JDK µÄ <code>jre</code> Ŀ¼»ò JRE µÄ¶¥²ãĿ¼¡£
+ </blockquote>
+
+ <blockquote>
+¶ÔÓÚÄÇЩλÓÚ·ûºÏÌõ¼þµÄ¹ú¼Ò/µØÇøµÄÓû§£¬¿ÉÒÔ´Ó JDK Web Õ¾µã»ñÈ¡²»¶Ô¼ÓÃܼ¼ÊõµÄÇ¿¶ÈÖ¸¶¨ÈκÎÏÞÖƵÄÎÞÏÞ¼ÓÇ¿°æÎļþ¡£Î»ÓÚ·ûºÏÌõ¼þµÄ¹ú¼Ò/µØÇøµÄÓû§¿ÉÒÔÏÂÔØÎÞÏÞ¼ÓÇ¿°æÎļþ£¬²¢ÓÃÕâЩÎļþÌ滻ǿ¶ÈÓÐÏÞµÄ jar Îļþ¡£
+ </blockquote>
+
+<h3>Cacerts Ö¤ÊéÎļþ</h3>
+
+ <blockquote>
+¿ÉÒÔÔÚλÓÚÒÔÏÂλÖÃµÄ Java SE Ö¤ÊéÎļþÖÐÌí¼Ó»òɾ³ý¸ù CA Ö¤Êé
+ </blockquote>
+
+ <blockquote>
+<code>&lt;java-home&gt;/lib/security/cacerts</code>
+ </blockquote>
+
+ <blockquote>
+ÓйØÏêϸÐÅÏ¢£¬Çë²Î¼û keytool ÎĵµÖÐµÄ <a href=
+ "http://java.sun.com/javase/6/docs/technotes/tools/solaris/keytool.html#cacerts">cacerts Ö¤ÊéÎļþ</a>Ò»½Ú¡£
+ </blockquote>
+
+<h2><a name="endorsed" id="endorsed"></a>Java Ç©Ãû±ê×¼¸²¸Ç»úÖÆ</h2>
+
+ <blockquote>
+Ðèʱ³£¸üРJava ƽ̨£¬ÒԱ㲢ÈëÔÚ Java Community Process <font size="-2"><sup>SM</sup></font> (JCP<font size=
+ "-2"><sup>SM</sup></font> <a href=
+ "http://www.jcp.org/">http://www.jcp.org/</a>) Ö®Íâ´´½¨µÄ½Ïа汾µÄ±ê×¼£¨<i>Ç©Ãû±ê×¼</i>£©£¬»ò½«¸Ãƽ̨ÖÐËù°üº¬µÄ¼¼Êõ°æ±¾¸üÐÂΪ¸Ã¼¼ÊõÏàÓ¦µÄ½ÏеĶÀÁ¢°æ±¾£¨<i>¶ÀÁ¢¼¼Êõ</i>£©¡£
+ </blockquote>
+
+ <blockquote>
+<i>Ç©Ãû±ê×¼¸²¸Ç»úÖÆ</i>ÌṩÁËÒ»ÖÖ·½·¨£¬¿É½«Ö´ÐÐÇ©Ãû±ê×¼»ò¶ÀÁ¢¼¼ÊõµÄ½Ïа汾µÄÀàºÍ½çÃæ²¢Èë Java ƽ̨ÖС£
+ </blockquote>
+
+ <blockquote>
+ÓйØÇ©Ãû±ê×¼¸²¸Ç»úÖƵÄÏêϸÐÅÏ¢£¬°üÀ¨¸Ã»úÖƽøÐи²¸Çʱ¿ÉÄÜÓõ½µÄƽ̨°üµÄÁÐ±í£¬Çë²Î¼û
+ </blockquote>
+
+ <blockquote>
+<a href=
+ "http://java.sun.com/javase/6/docs/technotes/guides/standards/">http://java.sun.com/javase/6/docs/technotes/guides/standards/</a>
+ </blockquote>
+
+ <h2><a name="javadb" id="javadb"></a>Java DB</h2>
+
+ <blockquote>
+ ·Ö·¢°ü Java DB£¬ËüÊÇ Sun Microsystems
+ µÄ Apache Derby ´¿ Java Êý¾Ý¿â¼¼ÊõµÄ·Ö·¢¡£
+ ĬÈÏ°²×°Î»ÖÃΪ£º
+
+ <ul>
+ <li>Solaris: <code>/opt/SUNWjavadb</code></li>
+
+ <li>Linux: <code>/opt/sun/javadb</code></li>
+
+ <li>Windows: <code>C:\Program Files\Sun\JavaDB</code></li>
+ </ul>
+
+ <p>ÓÐ¹Ø Java DB ºÍ Derby µÄÐÅÏ¢£¨°üÀ¨Óû§ºÍ API Îĵµ¡¢Java DB
+ µÄ¹¦ÄÜÒÔ¼°¸ü¶à×ÊÔ´£©£¬
+ Çë²Î¼ûÉÏÊöĿ¼ÖÐµÄ index.html Îļþ¡£</p>
+ </blockquote>
+
+
+<h2><a name="webpages" id="webpages"></a>Web Ò³</h2>
+
+ <blockquote>
+ÓйØÏêϸÐÅÏ¢£¬Çë²ÎÔÄÍòάÍøÉϵÄÏÂÁÐ Sun Microsystems Ò³Ã棺
+ </blockquote>
+
+ <dl>
+ <dd>
+ <dl>
+<dt><a href="http://java.sun.com/">http://java.sun.com/</a></dt>
+
+<dd>Java Èí¼þ Web Õ¾µã£¬°üº¬ÓÐ¹Ø Java ¼¼Êõ¡¢²úÆ·ÐÅÏ¢¡¢ÐÂÎźÍÈí¼þÌØÐÔµÄ×îÐÂÐÅÏ¢¡£</dd>
+
+<dt><a href=
+ "http://java.sun.com/docs">http://java.sun.com/docs</a></dt>
+
+<dd>Java<sup><font size="-2">TM</font></sup> ƽ̨Îĵµ£¬°üº¬°×ƤÊé¡¢Java ½Ì³ÌÒÔ¼°ÆäËûÎĵµ¡£</dd>
+
+<dt><a href=
+ "http://developer.java.sun.com/">http://developer.java.sun.com</a></dt>
+
+<dd>¿ª·¢Õß·þÎñ Web Õ¾µã£¨ÐèÒª½øÐÐÃâ·Ñ×¢²á£©¡£ÆäËû¼¼ÊõÐÅÏ¢¡¢ÐÂÎźÍÈí¼þÌØÐÔ£»Óû§ÂÛ̳£»Ö§³ÖÐÅÏ¢µÈµÈ¡£</dd>
+
+<dt><a href=
+ "http://java.sun.com/products/">http://java.sun.com/products/</a></dt>
+
+<dd>Java ¼¼Êõ²úÆ·ºÍ API</dd>
+ </dl>
+ </dd>
+ </dl>
+ <hr>
+
+<p><font size="2">Java<sup><font size="-2">TM</font></sup> Development Kit (JDK<sup><font size="-2">TM</font></sup>) ÊÇ Sun Microsystems<sup><font size="-2">TM</font></sup>, Inc. µÄ²úÆ·¡£<br> <br> °æȨËùÓÐ (C) 2009 Sun Microsystems, Inc.<br> 4150 Network Circle, Santa Clara, California 95054, U.S.A.<br> ±£ÁôËùÓÐȨÀû¡£</font></p>
+<script type="text/javascript" language="JavaScript" src="/js/omi/jsc/s_code_remote.js">
+</script>
+</body>
+</html>
diff --git a/extra/source/jdk-6/jdk.SlackBuild b/extra/source/jdk-6/jdk.SlackBuild
new file mode 100755
index 000000000..6c984d583
--- /dev/null
+++ b/extra/source/jdk-6/jdk.SlackBuild
@@ -0,0 +1,123 @@
+#!/bin/sh
+
+# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+VERSION=6u16
+DVER=1.6.0_16
+ARCH=x86_64 # only determines the lib path locations
+JAVA_ARCH=${JAVA_ARCH:-x64} # or i586 if you want the 32bit version
+BUILD=${BUILD:-1}
+
+
+if [ "$JAVA_ARCH" = "x64" ]; then
+ LIB_ARCH=amd64
+else
+ LIB_ARCH=i386
+fi
+
+if [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-jdk
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $PKG
+mkdir -p usr/lib${LIBDIRSUFFIX}
+cd usr/lib${LIBDIRSUFFIX}
+yes yes | sh $CWD/jdk-${VERSION}-linux-${JAVA_ARCH}.bin || exit 1
+mkdir -p $PKG/etc/profile.d
+for file in $(ls $CWD/profile.d/*) ; do
+ cat $file | sed -e "s#lib/java#lib${LIBDIRSUFFIX}/java#" \
+ > $PKG/etc/profile.d/$(basename $file)
+done
+chown -R root.root $PKG
+find $PKG \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400
+\) \
+ -exec chmod 644 {} \;
+
+chmod 755 $PKG/etc/profile.d/*
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ mv jdk${DVER} java || exit 1
+ ln -sf java jdk${DVER}
+) || exit 1
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
+( cd $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
+ ln -sf /usr/lib${LIBDIRSUFFIX}/java/jre/lib/${LIB_ARCH}/libnpjp2.so libnpjp2.so
+)
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ ln -sf ./java/jre/lib/${LIB_ARCH}/server/libjvm.so .
+)
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat << EOF > $PKG/install/doinst.sh
+
+# Clean up a potential upgrade mess caused by changing the
+# installation directory to /usr/lib${LIBDIRSUFFIX}/java/:
+if [ -L usr/lib${LIBDIRSUFFIX}/java ]; then
+ rm -rf usr/lib${LIBDIRSUFFIX}/java
+ mkdir -p usr/lib${LIBDIRSUFFIX}/java/man
+ mkdir -p usr/lib${LIBDIRSUFFIX}/java/jre/lib/${LIB_ARCH}/server
+ mkdir -p usr/lib${LIBDIRSUFFIX}/java/jre/lib/${LIB_ARCH}/client
+ mkdir -p usr/lib${LIBDIRSUFFIX}/java/jre/javaws
+ mkdir -p usr/lib${LIBDIRSUFFIX}/java/jre/bin
+ mkdir -p usr/lib${LIBDIRSUFFIX}/java/bin
+ mkdir -p usr/lib${LIBDIRSUFFIX}/mozilla/plugins
+fi
+if [ -L ControlPanel ]; then
+ rm -f ControlPanel
+fi
+if [ -L ja ]; then
+ rm -f ja
+fi
+if [ -L javaws ]; then
+ rm -f javaws
+fi
+if [ -L libjsig.so ]; then
+ rm -f libjsig.so
+fi
+# End cleanup.
+EOF
+
+# Install the desktop/mime files:
+mkdir -p $PKG/usr/share/{applications,icons,mime}
+cp -a $PKG/usr/lib${LIBDIRSUFFIX}/java/jre/lib/desktop/applications/* \
+ $PKG/usr/share/applications/
+cp -a $PKG/usr/lib${LIBDIRSUFFIX}/java/jre/lib/desktop/icons/hicolor \
+ $PKG/usr/share/icons/
+cp -a $PKG/usr/lib${LIBDIRSUFFIX}/java/jre/lib/desktop/mime/packages \
+ $PKG/usr/share/mime/
+
+# We ship the package unmodified, so we do not compress manpages.
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/jdk-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
+
diff --git a/extra/source/jdk-6/profile.d/jdk.csh b/extra/source/jdk-6/profile.d/jdk.csh
new file mode 100755
index 000000000..3a1ec7be8
--- /dev/null
+++ b/extra/source/jdk-6/profile.d/jdk.csh
@@ -0,0 +1,4 @@
+#!/bin/csh
+setenv JAVA_HOME /usr/lib/java
+setenv MANPATH ${MANPATH}:${JAVA_HOME}/man
+setenv PATH ${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin
diff --git a/extra/source/jdk-6/profile.d/jdk.sh b/extra/source/jdk-6/profile.d/jdk.sh
new file mode 100755
index 000000000..ed0bc73d4
--- /dev/null
+++ b/extra/source/jdk-6/profile.d/jdk.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+export JAVA_HOME=/usr/lib/java
+export MANPATH="${MANPATH}:${JAVA_HOME}/man"
+export PATH="${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
diff --git a/extra/source/jdk-6/register.html b/extra/source/jdk-6/register.html
new file mode 100644
index 000000000..916ee3701
--- /dev/null
+++ b/extra/source/jdk-6/register.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Register your JDK</title>
+<style type="text/css">
+<!--
+.style1 {font-family: Arial, Helvetica, sans-serif}
+.style3 {font-family: Arial, Helvetica, sans-serif; font-size: small; }
+input.buttonblue,input.defbutton{ background: #3F6580;border-right:1px solid #304C60;border-bottom:1px solid #304C60;border-left:1px solid #BACDD9;border-top:1px solid #BACDD9; font-weight:bold; color:#FFFFFF; font-size:.8em; height:1.9em}
+input.buttonblue:hover{color:#fbe249;}
+a:link,a.named:visited{color:#3E6B8A}
+a:hover{text-decoration:underline}
+a{text-decoration:none}
+a:visited,a:visited code{color:#917E9C}
+-->
+</style>
+</head>
+
+<body>
+<table width="813" border="0" cellpadding="3" cellspacing="0">
+ <tr>
+ <td width="7" height="78">&nbsp;</td>
+ <td width="794" align="left" valign="top">
+ <img src="file:/tmp/package-jdk/usr/lib64/jdk1.6.0_15/jre/lib/servicetag/jdk_header.png" width="783" height="63"></td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td><p class="style1">Thank you for installing the
+ <strong> Java Development Kit Version 6 Update 15 </strong>
+ from Sun Microsystems. </p>
+ <p class="style1">Registering your product will give you the following benefits:</p>
+ <ul class="style1">
+ <li> Notification of new versions, patches, and updates</li>
+ <li> Special offers on Sun developer products, services and training </li>
+ <li> Access to early releases and documentation </li>
+ </ul>
+ <p class="style1">Product registration is FREE, quick and easy!</p>
+ <blockquote>
+ <p class="style1">All you need is a Sun Developer Network or other Sun Online account. If you don't already have one, you will be prompted to create one. </p>
+ <table width="708" border="0" cellspacing="0" cellpadding="3">
+ <tr valign="top">
+ <td width="126" height="35">
+ <form name="form1" method="post" action="https://inventory.sun.com/RegistrationWeb/register/urn:st:39938c22-57ad-43b4-8953-b7833a960447?product=jdk&locale=en" enctype="text/xml">
+ <input type="hidden" name="servicetag_payload" value="<?xml version=%221.0%22 encoding=%22UTF-8%22 standalone=%22no%22?><registration_data version=%221.0%22><environment><hostname>midas64</hostname><hostId>00000000</hostId><osName>Linux</osName><osVersion>2.6.29.6</osVersion><osArchitecture>amd64</osArchitecture><systemModel>AuthenticAMD</systemModel><systemManufacturer>gigabyte technology co., ltd.</systemManufacturer><cpuManufacturer>AuthenticAMD</cpuManufacturer><serialNumber>serial number</serialNumber></environment><registry urn=%22urn:st:39938c22-57ad-43b4-8953-b7833a960447%22 version=%221.0%22><service_tag><instance_urn>urn:st:771d40cb-57e3-4969-b32a-769e55e82934</instance_urn><product_name>Java SE 6 Development Kit</product_name><product_version>1.6.0_15</product_version><product_urn>urn:uuid:b58ef9a8-5ae8-11db-a023-080020a9ed93</product_urn><product_parent_urn>urn:uuid:fdc90b21-018d-4cab-b866-612c7c119ed3</product_parent_urn><product_parent>Java Platform Standard Edition 6 (Java SE 6)</product_parent><product_defined_inst_id>id=1.6.0_15-b03 amd64,dir=/tmp/package-jdk/usr/lib64/jdk1.6.0_15/jre</product_defined_inst_id><product_vendor>Sun Microsystems</product_vendor><platform_arch>amd64</platform_arch><timestamp>2009-08-06 00:48:47 GMT</timestamp><container>global</container><source>jdk-6u15-fcs-bin-b03-linux-amd64-02_jul_2009.bin</source><installer_uid>-1</installer_uid></service_tag></registry></registration_data>">
+ <input type="submit" name="Submit"border="0" class="buttonblue" onmouseover="this.style.color='#fbe249';" onmouseout="this.style.color='#FFF';" value="Register My JDK">
+ </form></td>
+ <td width="570"><span class="style3">You need to be connected to the Internet to register this Sun product. </span></td>
+ </tr>
+ </table>
+ </blockquote>
+ </td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td bgcolor="#f1f7df">
+ <p class="style3">Sun Microsystems, Inc. respects your privacy.
+ We will use your personal information for communications
+ and management of your Sun Online Account, the services
+ and applications you access using your Sun Online Account,
+ and the products and systems you register with your Sun Online Account.</p>
+ <p class="style3">For more information on the data that will be collected as
+ part of the registration process and how it will be managed <br>
+ see <a href="http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html">http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html</a>. <br>
+ <br>
+ For more information on Sun's Privacy Policy see <a href="http://www.sun.com/privacy/">http://www.sun.com/privacy/</a> or contact <a class="moz-txt-link-rfc2396E" href="mailto:privacy@sun.com">privacy@sun.com.</a></p></td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+</body>
+</html>
diff --git a/extra/source/jdk-6/register_ja.html b/extra/source/jdk-6/register_ja.html
new file mode 100644
index 000000000..f98d2dff7
--- /dev/null
+++ b/extra/source/jdk-6/register_ja.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.or
+g/TR/html4/loose.dtd">
+<html><head>
+
+
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>JDK 製å“登録</title>
+
+<style type="text/css">
+<!--
+.style1 {font-family: Arial, Helvetica, sans-serif}
+.style3 {font-family: Arial, Helvetica, sans-serif; font-size: small; }
+input.buttonblue,input.defbutton{ background: #3F6580;border-right:1px solid #304C60;border-bottom:1px solid #304C60;border-left:1px solid #BACDD9;border-top:1px solid #BACDD9; font-weight:bold; color:#FFFFFF; font-size:.8em; height:1.9em}
+input.buttonblue:hover{color:#fbe249;}
+a:link,a.named:visited{color:#3E6B8A}
+a:hover{text-decoration:underline}
+a{text-decoration:none}
+a:visited,a:visited code{color:#917E9C}
+-->
+</style></head><body>
+<table border="0" cellpadding="3" cellspacing="0" width="813">
+ <tbody><tr>
+ <td height="78" width="7">&nbsp;</td>
+ <td align="left" valign="top" width="794"><img src="file:/tmp/package-jdk/usr/lib64/jdk1.6.0_15/jre/lib/servicetag/jdk_header.png" height="63" width="783"></td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+
+ <td><p class="style1">Sun Microsystems ã®<strong> Java Development Kit Version 6 Update 15 </strong>をインストールã—ã¦ã„ãŸã ãã€ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚ </p>
+ <p class="style1">製å“登録をã™ã‚‹ã¨ã€æ¬¡ã®ã‚ˆã†ãªç‰¹å…¸ã‚’å—ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚</p>
+ <ul class="style1">
+ <li> 最新ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã€ãƒ‘ッãƒã€ãŠã‚ˆã³æ›´æ–°ã«ã¤ã„ã¦ã®é€šçŸ¥</li>
+ <li> Sun ã®é–‹ç™ºè€…å‘ã‘製å“ã€ã‚µãƒ¼ãƒ“スã€ãŠã‚ˆã³ãƒˆãƒ¬ãƒ¼ãƒ‹ãƒ³ã‚°ã®ç‰¹åˆ¥è²©å£² </li>
+ <li> アーリーリリースãŠã‚ˆã³ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ </li>
+ </ul>
+ <p class="style1">製å“登録ã¯ç„¡æ–™ã§ã‚ã‚Šã€è¿…速ã§ç°¡å˜ã§ã™ã€‚</p>
+ <blockquote>
+ <p class="style1">å¿…è¦ã«ãªã‚‹ã®ã¯ã€Sun 開発者å‘ã‘ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¾ãŸã¯ãã®ä»–ã® Sun オンラインアカウントã ã‘ã§ã™ã€‚ ã¾ã ã‚¢ã‚«ã‚¦ãƒ³ãƒˆãŒãªã„å ´åˆã¯ã€ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã®ä½œæˆãŒæ±‚ã‚られã¾ã™ã€‚ </p>
+ <table width="708" border="0" cellspacing="0" cellpadding="3">
+ <tr valign="top">
+ <td width="126" height="35"><form name="form1" method="post" action="https://inventory.sun.com/RegistrationWeb/register/urn:st:39938c22-57ad-43b4-8953-b7833a960447?product=jdk&locale=ja" enctype="text/xml">
+ <input type="hidden" name="servicetag_payload" value="<?xml version=%221.0%22 encoding=%22UTF-8%22 standalone=%22no%22?><registration_data version=%221.0%22><environment><hostname>midas64</hostname><hostId>00000000</hostId><osName>Linux</osName><osVersion>2.6.29.6</osVersion><osArchitecture>amd64</osArchitecture><systemModel>AuthenticAMD</systemModel><systemManufacturer>gigabyte technology co., ltd.</systemManufacturer><cpuManufacturer>AuthenticAMD</cpuManufacturer><serialNumber>serial number</serialNumber></environment><registry urn=%22urn:st:39938c22-57ad-43b4-8953-b7833a960447%22 version=%221.0%22><service_tag><instance_urn>urn:st:771d40cb-57e3-4969-b32a-769e55e82934</instance_urn><product_name>Java SE 6 Development Kit</product_name><product_version>1.6.0_15</product_version><product_urn>urn:uuid:b58ef9a8-5ae8-11db-a023-080020a9ed93</product_urn><product_parent_urn>urn:uuid:fdc90b21-018d-4cab-b866-612c7c119ed3</product_parent_urn><product_parent>Java Platform Standard Edition 6 (Java SE 6)</product_parent><product_defined_inst_id>id=1.6.0_15-b03 amd64,dir=/tmp/package-jdk/usr/lib64/jdk1.6.0_15/jre</product_defined_inst_id><product_vendor>Sun Microsystems</product_vendor><platform_arch>amd64</platform_arch><timestamp>2009-08-06 00:48:47 GMT</timestamp><container>global</container><source>jdk-6u15-fcs-bin-b03-linux-amd64-02_jul_2009.bin</source><installer_uid>-1</installer_uid></service_tag></registry></registration_data>">
+ <input type="submit" name="Submit"border="0" class="buttonblue" onmouseover="this.style.color='#fbe249';" onmouseout="this.style.color='#FFF';" value="JDK 製å“登録">
+ </form></td>
+ <td width="570"><span class="style3">ã“ã® Sun 製å“を登録ã™ã‚‹ã«ã¯ã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆã«æŽ¥ç¶šã—ã¦ã„ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ </span></td>
+ </tr>
+ </table>
+ </blockquote>
+ </td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td bgcolor="#f1f7df">
+ <p class="style3">Sun Microsystems, Inc. ã¯ã€ãŠå®¢æ§˜ã®ãƒ—ライãƒã‚·ãƒ¼ã‚’å°Šé‡ã—ã¾ã™ã€‚ ãŠå®¢æ§˜ã®å€‹äººæƒ…å ±ã¯ã€ãŠå®¢æ§˜ã® Sun オンラインアカウントã€ãŠå®¢æ§˜ãŒ Sun オンラインアカウントを使用ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã‚µãƒ¼ãƒ“スã¨ã‚¢ãƒ—リケーションã€ãŠã‚ˆã³ãŠå®¢æ§˜ãŒ Sun オンラインアカウントã§ç™»éŒ²ã™ã‚‹è£½å“ã¨ã‚·ã‚¹ãƒ†ãƒ ã®é€šä¿¡ã¨ç®¡ç†ã«ä½¿ç”¨ã—ã¾ã™ã€‚</p>
+ <p class="style3">登録ã®éš›ã«åŽé›†ã•ã‚Œã‚‹ãƒ‡ãƒ¼ã‚¿ã‚„ã€ãれらãŒã©ã®ã‚ˆã†ã«ç®¡ç†ã•ã‚Œã‚‹ã‹ã«ã¤ã„ã¦ã®è©³ç´°ã¯ã€<br><a href="http://java.sun.com/javase/ja/registration/JDKRegistrationPrivacy.html">http://java.sun.com/javase/ja/registration/JDKRegistrationPrivacy.html</a> ã‚’å‚ç…§ã—ã¦ãã ã•ã„。 <br> <br> Sun ã®ãƒ—ライãƒã‚·ãƒ¼ãƒãƒªã‚·ãƒ¼ã«ã¤ã„ã¦ã®è©³ç´°ã¯ã€<a href="http://jp.sun.com/privacy/">http://jp.sun.com/privacy/</a> ã‚’å‚ç…§ã™ã‚‹ã‹ã€<a class="moz-txt-link-rfc2396E" href="http://jp.sun.com/cgi-bin/contact/comment.cgi?url=http://jp.sun.com/privacy/">ãŠå•ã„åˆã‚ã›ãƒ•ã‚©ãƒ¼ãƒ </a>ã‹ã‚‰ãŠå•ã„åˆã‚ã›ãã ã•ã„。</p></td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+</body>
+</html>
diff --git a/extra/source/jdk-6/register_zh_CN.html b/extra/source/jdk-6/register_zh_CN.html
new file mode 100644
index 000000000..bc5fc2ae9
--- /dev/null
+++ b/extra/source/jdk-6/register_zh_CN.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>注册您的 JDK</title>
+<style type="text/css">
+<!--
+.style1 {font-family: Arial, Helvetica, sans-serif}
+.style3 {font-family: Arial, Helvetica, sans-serif; font-size: small; }
+input.buttonblue,input.defbutton{ background: #3F6580;border-right:1px solid #304C60;border-bottom:1px solid #304C60;border-left:1px solid #BACDD9;border-top:1px solid #BACDD9; font-weight:bold; color:#FFFFFF; font-size:.8em; height:1.9em}
+input.buttonblue:hover{color:#fbe249;}
+a:link,a.named:visited{color:#3E6B8A}
+a:hover{text-decoration:underline}
+a{text-decoration:none}
+a:visited,a:visited code{color:#917E9C}
+-->
+</style></head><body>
+<table border="0" cellpadding="3" cellspacing="0" width="813">
+ <tbody><tr>
+ <td height="78" width="7">&nbsp;</td>
+ <td align="left" valign="top" width="794"><img src="file:/tmp/package-jdk/usr/lib64/jdk1.6.0_15/jre/lib/servicetag/jdk_header.png" height="63" width="783"></td>
+ </tr>
+
+ <tr>
+ <td>&nbsp;</td>
+
+<td><p class="style1">感谢您安装 Sun Microsystems 的 <strong>Java Development Kit Version 6 Update 15</strong>。 </p>
+<p class="style1">注册产å“åŽæ‚¨å°†èŽ·å¾—如下增值æœåŠ¡ï¼š</p>
+ <ul class="style1">
+<li> 获得新版本ã€ä¿®è¡¥ç¨‹åºå’Œæ›´æ–°çš„通知æœåŠ¡</li>
+<li> 获得有关 Sun å¼€å‘者产å“ã€æœåŠ¡å’ŒåŸ¹è®­çš„优惠 </li>
+<li> 获得对早期版本和文档的访问æƒé™ </li>
+ </ul>
+<p class="style1">产å“注册是å…费的,å³å¿«é€Ÿåˆè½»æ¾ï¼</p>
+ <blockquote>
+<p class="style1">您需è¦å…·æœ‰ Sun å¼€å‘者网络或其他 Sun è”机å¸æˆ·ã€‚如果您没有,系统将æ示您创建一个。 </p>
+ <table width="708" border="0" cellspacing="0" cellpadding="3">
+ <tr valign="top">
+ <td width="126" height="35"><form name="form1" method="post" action="https://inventory.sun.com/RegistrationWeb/register/urn:st:39938c22-57ad-43b4-8953-b7833a960447?product=jdk&locale=zh_CN" enctype="text/xml">
+ <input type="hidden" name="servicetag_payload" value="<?xml version=%221.0%22 encoding=%22UTF-8%22 standalone=%22no%22?><registration_data version=%221.0%22><environment><hostname>midas64</hostname><hostId>00000000</hostId><osName>Linux</osName><osVersion>2.6.29.6</osVersion><osArchitecture>amd64</osArchitecture><systemModel>AuthenticAMD</systemModel><systemManufacturer>gigabyte technology co., ltd.</systemManufacturer><cpuManufacturer>AuthenticAMD</cpuManufacturer><serialNumber>serial number</serialNumber></environment><registry urn=%22urn:st:39938c22-57ad-43b4-8953-b7833a960447%22 version=%221.0%22><service_tag><instance_urn>urn:st:771d40cb-57e3-4969-b32a-769e55e82934</instance_urn><product_name>Java SE 6 Development Kit</product_name><product_version>1.6.0_15</product_version><product_urn>urn:uuid:b58ef9a8-5ae8-11db-a023-080020a9ed93</product_urn><product_parent_urn>urn:uuid:fdc90b21-018d-4cab-b866-612c7c119ed3</product_parent_urn><product_parent>Java Platform Standard Edition 6 (Java SE 6)</product_parent><product_defined_inst_id>id=1.6.0_15-b03 amd64,dir=/tmp/package-jdk/usr/lib64/jdk1.6.0_15/jre</product_defined_inst_id><product_vendor>Sun Microsystems</product_vendor><platform_arch>amd64</platform_arch><timestamp>2009-08-06 00:48:47 GMT</timestamp><container>global</container><source>jdk-6u15-fcs-bin-b03-linux-amd64-02_jul_2009.bin</source><installer_uid>-1</installer_uid></service_tag></registry></registration_data>">
+<input type="submit" name="Submit"border="0" class="buttonblue" onmouseover="this.style.color='#fbe249';" onmouseout="this.style.color='#FFF';" value="注册我的 JDK">
+ </form></td>
+<td width="570"><span class="style3">您需è¦è¿žæŽ¥åˆ° Internet æ¥æ³¨å†Œæ­¤ Sun 产å“。 </span></td>
+ </tr>
+ </table>
+ </blockquote>
+ </td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td bgcolor="#f1f7df">
+ <p class="style3">Sun Microsystems, Inc. å°Šé‡æ‚¨çš„éšç§ã€‚我们会将您的个人信æ¯ç”¨äºŽé€šä¿¡å’Œ Sun è”机å¸æˆ·çš„管ç†ã€Sun è”机å¸æˆ·è®¿é—®çš„æœåŠ¡å’Œåº”用程åºä»¥åŠç”¨äºŽä½¿ç”¨ Sun è”机å¸æˆ·æ³¨å†Œçš„产å“和系统。</p>
+<p class="style3">有关注册过程中收集的数æ®ä»¥åŠè¿™äº›æ•°æ®çš„管ç†æ–¹å¼çš„更多信æ¯ï¼Œ<br>请访问 <a href="http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html">http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html</a>。<br> <br>有关 Sun éšç§æ”¿ç­–的更多信æ¯ï¼Œè¯·è®¿é—® <a href="http://www.sun.com/privacy/">http://www.sun.com/privacy/</a> 或与 <a class="moz-txt-link-rfc2396E" href="mailto:privacy@sun.com">privacy@sun.com</a> è”系。</p></td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+</body>
+</html>
diff --git a/extra/source/jdk-6/slack-desc b/extra/source/jdk-6/slack-desc
new file mode 100644
index 000000000..5e21d1707
--- /dev/null
+++ b/extra/source/jdk-6/slack-desc
@@ -0,0 +1,18 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+ |-----handy-ruler------------------------------------------------------|
+jdk: Java(TM) 2 Platform Standard Edition Development Kit 6.0 update 16.
+jdk:
+jdk: The Java 2 SDK software includes tools for developing, testing, and
+jdk: running programs written in the Java programming language. This
+jdk: package contains everything you need to run Java(TM).
+jdk:
+jdk: For additional information, refer to this Sun Microsystems web page:
+jdk: http://java.sun.com/
+jdk:
+jdk:
+jdk:
diff --git a/extra/source/kde3-compat/arts/arts.SlackBuild b/extra/source/kde3-compat/arts/arts.SlackBuild
new file mode 100755
index 000000000..a617c18c5
--- /dev/null
+++ b/extra/source/kde3-compat/arts/arts.SlackBuild
@@ -0,0 +1,57 @@
+#!/bin/sh
+CWD=`pwd`
+TMP=/tmp
+PKG=$TMP/package-arts
+
+VERSION=${VERSION:-1.5.10}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-opt1}
+
+rm -rf $PKG
+mkdir -p $PKG/opt/kde3
+
+# Avoid a version number in .la files:
+if [ -d /opt/kde3/lib64/qt3 ]; then
+ QTDIR=/opt/kde3/lib64/qt3
+fi
+cd $TMP
+echo "Building arts-$VERSION.tar.bz2..."
+tar xjvf $CWD/arts-$VERSION.tar.bz2
+cd arts-$VERSION
+
+QTDIR=/opt/kde3/lib64/qt3
+
+zcat $CWD/arts.tmpdir.diff.gz | patch -p1 --verbose || exit 1
+
+chown -R root:root .
+CFLAGS=$CPUOPT \
+CXXFLAGS=$CPUOPT \
+./configure \
+ --prefix=/opt/kde3 \
+ --libdir=/opt/kde3/lib64 \
+ --sysconfdir=/opt/kde3/etc \
+ --with-xinerama \
+ --disable-debug \
+ --program-prefix="" \
+ --program-suffix="" \
+ --build=$ARCH-slackware-linux
+make -j4 || exit 1
+make install DESTDIR=$PKG
+
+mkdir -p $PKG/usr/doc/arts-$VERSION
+cp -a \
+ COPYING* INSTALL doc/NEWS doc/README doc/TODO \
+ $PKG/usr/doc/arts-$VERSION
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+if [ -d $PKG/usr/man ]; then
+ gzip -9 $PKG/usr/man/man?/*
+fi
+
+cd $PKG
+makepkg -l y -c n ../arts-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/kde3-compat/arts/arts.tmpdir.diff b/extra/source/kde3-compat/arts/arts.tmpdir.diff
new file mode 100644
index 000000000..f50472a1e
--- /dev/null
+++ b/extra/source/kde3-compat/arts/arts.tmpdir.diff
@@ -0,0 +1,17 @@
+--- ./mcop/mcoputils.cc.orig 2006-01-19 10:16:08.000000000 -0600
++++ ./mcop/mcoputils.cc 2006-09-19 17:07:50.000000000 -0500
+@@ -47,7 +47,13 @@
+ result = lstat(tmp_dir, &stat_buf);
+ if ((result == -1) && (errno == ENOENT))
+ {
+- return 1;
++ result = mkdir(tmp_dir, 0700);
++ if (result == -1)
++ {
++ arts_warning("Error: Can not create directory \"%s\".\n", tmp_dir);
++ return 1;
++ }
++ result = stat(tmp_dir, &stat_buf);
+ }
+ if ((result == -1) || (!S_ISDIR(stat_buf.st_mode)))
+ {
diff --git a/extra/source/kde3-compat/arts/slack-desc b/extra/source/kde3-compat/arts/slack-desc
new file mode 100644
index 000000000..c7b45613d
--- /dev/null
+++ b/extra/source/kde3-compat/arts/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+arts: arts (Analog Realtime Synthesizer)
+arts:
+arts: aRts is the core sound system for KDE, and is short for "analog
+arts: realtime synthesizer". aRts is designed to create or process sound
+arts: using small specialized modules. These may create a waveform, play
+arts: samples, filter data, add signals, perform effects (like delay,
+arts: flanger or chorus), or output the data to the soundcard.
+arts:
+arts:
+arts:
+arts:
diff --git a/extra/source/kde3-compat/k3b3/k3b3.SlackBuild b/extra/source/kde3-compat/k3b3/k3b3.SlackBuild
new file mode 100755
index 000000000..186fbe7b9
--- /dev/null
+++ b/extra/source/kde3-compat/k3b3/k3b3.SlackBuild
@@ -0,0 +1,67 @@
+#!/bin/sh
+CWD=`pwd`
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-k3b3
+
+VERSION=1.0.5
+ARCH=${ARCH:-x86_64}
+BUILD=opt1
+
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+elif [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2"
+fi
+
+if [ ! -d $TMP ]; then
+ mkdir -p $TMP
+fi
+rm -rf $PKG
+mkdir -p $PKG
+cd $TMP
+rm -rf k3b-$VERSION
+tar xjvf $CWD/k3b-$VERSION.tar.bz2 || exit 1
+cd k3b-$VERSION
+chown -R root:root .
+find . -perm 777 -exec chmod 755 {} \;
+find . -perm 664 -exec chmod 644 {} \;
+
+QTDIR=/opt/kde3/lib64/qt3
+
+# ./configure --help lists --docdir, but it is ignored. Oh well.
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/opt/kde3 \
+ --libdir=/opt/kde3/lib64 \
+ --sysconfdir=/etc/kde \
+ --docdir=/usr/doc \
+ --without-cdrecord-suid-root \
+ --program-prefix="" \
+ --program-suffix="" \
+ --build=$ARCH-slackware-linux
+make -j4 || exit 1
+make install DESTDIR=$PKG
+
+# Add a .desktop in the compatible location:
+mkdir -p $PKG/usr/share/applications/kde4
+( cd $PKG/usr/share/applications/kde4 ; ln -sf /opt/kde3/share/applications/kde/k3b.desktop k3b3.desktop )
+
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+mkdir -p $PKG/usr/doc/k3b-$VERSION
+cp -a \
+ AUTHORS COPYING COPYING-DOCS ChangeLog FAQ INSTALL KNOWNBUGS PERMISSIONS README RELEASE_HOWTO TODO k3b.lsm \
+ $PKG/usr/doc/k3b-$VERSION
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+makepkg -l y -c n $TMP/k3b3-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/kde3-compat/k3b3/slack-desc b/extra/source/kde3-compat/k3b3/slack-desc
new file mode 100644
index 000000000..52856f6a3
--- /dev/null
+++ b/extra/source/kde3-compat/k3b3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+k3b3: k3b3 (The CD Creator, KDE3 version)
+k3b3:
+k3b3: K3b makes writing cds under Linux easy. It has an easy to use
+k3b3: interface and supports CD burning (including on-the-fly), copying,
+k3b3: erasing, ripping, and more.
+k3b3:
+k3b3: K3b was written by Sebastian Trueg, Thomas Froescher,
+k3b3: Christian Kvasny, and Klaus-Dieter Krannich.
+k3b3:
+k3b3: For more information, visit: http://www.k3b.org
+k3b3:
diff --git a/extra/source/kde3-compat/kdelibs3/apply-patches.sh b/extra/source/kde3-compat/kdelibs3/apply-patches.sh
new file mode 100644
index 000000000..68190b0b2
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/apply-patches.sh
@@ -0,0 +1,3 @@
+zcat $CWD/kdelibs-utempter.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
+zcat $CWD/kdelibs.inotify.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
+zcat $CWD/kdelibs.no.inotify.externs.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff b/extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff
new file mode 100644
index 000000000..4f7c8f3a0
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff
@@ -0,0 +1,23 @@
+diff -Naur kdelibs-3.5.7.orig/kdecore/kpty.cpp kdelibs-3.5.7/kdecore/kpty.cpp
+--- kdelibs-3.5.7.orig/kdecore/kpty.cpp 2006-05-22 19:14:21.000000000 +0100
++++ kdelibs-3.5.7/kdecore/kpty.cpp 2007-06-10 14:08:18.000000000 +0100
+@@ -401,7 +401,9 @@
+ #ifdef HAVE_UTEMPTER
+ KProcess_Utmp utmp;
+ utmp.cmdFd = d->masterFd;
+- utmp << "/usr/sbin/utempter" << "-a" << d->ttyName << "";
++ utmp << "/usr/lib/utempter/utempter" << "add";
++ if (remotehost)
++ utmp << remotehost;
+ utmp.start(KProcess::Block);
+ Q_UNUSED(user);
+ Q_UNUSED(remotehost);
+@@ -444,7 +446,7 @@
+ #ifdef HAVE_UTEMPTER
+ KProcess_Utmp utmp;
+ utmp.cmdFd = d->masterFd;
+- utmp << "/usr/sbin/utempter" << "-d" << d->ttyName;
++ utmp << "/usr/lib/utempter/utempter" << "del";
+ utmp.start(KProcess::Block);
+ #elif defined(USE_LOGIN)
+ const char *str_ptr = d->ttyName.data();
diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff b/extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff
new file mode 100644
index 000000000..791b5e683
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff
@@ -0,0 +1,11 @@
+--- ./kio/kio/kdirwatch.cpp.orig 2006-07-22 03:16:37.000000000 -0500
++++ ./kio/kio/kdirwatch.cpp 2009-06-18 19:27:38.000000000 -0500
+@@ -71,7 +71,7 @@
+ #include <linux/types.h>
+ // Linux kernel headers are documented to not compile
+ #define _S390_BITOPS_H
+-#include <linux/inotify.h>
++#include <sys/inotify.h>
+
+ static inline int inotify_init (void)
+ {
diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff b/extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff
new file mode 100644
index 000000000..ef06c1dce
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff
@@ -0,0 +1,37 @@
+--- ./kio/kio/kdirwatch.cpp.orig 2009-06-18 19:29:01.000000000 -0500
++++ ./kio/kio/kdirwatch.cpp 2009-06-18 19:32:41.000000000 -0500
+@@ -73,20 +73,20 @@
+ #define _S390_BITOPS_H
+ #include <sys/inotify.h>
+
+-static inline int inotify_init (void)
+-{
+- return syscall (__NR_inotify_init);
+-}
+-
+-static inline int inotify_add_watch (int fd, const char *name, __u32 mask)
+-{
+- return syscall (__NR_inotify_add_watch, fd, name, mask);
+-}
+-
+-static inline int inotify_rm_watch (int fd, __u32 wd)
+-{
+- return syscall (__NR_inotify_rm_watch, fd, wd);
+-}
++// static inline int inotify_init (void)
++// {
++// return syscall (__NR_inotify_init);
++// }
++
++// static inline int inotify_add_watch (int fd, const char *name, __u32 mask)
++// {
++// return syscall (__NR_inotify_add_watch, fd, name, mask);
++// }
++
++// static inline int inotify_rm_watch (int fd, __u32 wd)
++// {
++// return syscall (__NR_inotify_rm_watch, fd, wd);
++// }
+
+ #ifndef IN_ONLYDIR
+ #define IN_ONLYDIR 0x01000000
diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild b/extra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild
new file mode 100755
index 000000000..d197ea32f
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild
@@ -0,0 +1,68 @@
+#!/bin/sh
+CWD=`pwd`
+TMP=/tmp
+PKG=$TMP/package-kdelibs
+
+# Set the config option variables if they are not already set:
+if [ -r ../KDE.options ]; then
+ . ../KDE.options
+fi
+
+# The global options may be overridden here (if needed):
+if [ -r ./local.options ]; then
+ . ./local.options
+fi
+
+rm -rf $PKG
+mkdir -p $PKG/usr
+
+# Avoid a version number in .la files:
+if [ -d /opt/kde3/lib64/qt ]; then
+ QTDIR=/opt/kde3/lib64/qt3
+fi
+
+cd $TMP
+echo "Building kdelibs-$VERSION.tar.bz2..."
+tar xjvf $CWD/kdelibs-$VERSION.tar.bz2 || exit 1
+cd kdelibs-$VERSION || exit 1
+
+if [ -r $CWD/apply-patches.sh ]; then
+ . $CWD/apply-patches.sh
+fi
+
+chown -R root:root .
+CFLAGS=$CPUOPT \
+CXXFLAGS=$CPUOPT \
+./configure \
+ --prefix=/opt/kde3 \
+ --libdir=/opt/kde3/lib64 \
+ --sysconfdir=/opt/kde3/etc \
+ --with-ssl-dir=/usr \
+ --with-xinerama \
+ --disable-debug \
+ --enable-dnotify \
+ --program-prefix="" \
+ --program-suffix="" \
+ --build=$TARGET-slackware-linux
+
+make $NUMJOBS || exit 1
+make install DESTDIR=$PKG
+
+mkdir -p $PKG/usr/doc/kdelibs-$VERSION
+cp -a \
+ AUTHORS COMPILING COMPILING.html COPYING* DEBUG INSTALL KDE2PORTING.html KDE3PORTING.html NAMING README kdelibs.lsm \
+ $PKG/usr/doc/kdelibs-$VERSION
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+if [ -d $PKG/usr/man ]; then
+ gzip -9 $PKG/usr/man/man?/*
+fi
+
+cd $PKG
+makepkg -l y -c n ../kdelibs3-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/kde3-compat/kdelibs3/local.options b/extra/source/kde3-compat/kdelibs3/local.options
new file mode 100644
index 000000000..056703278
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/local.options
@@ -0,0 +1,4 @@
+VERSION=3.5.10
+ARCH=x86_64
+TARGET=x86_64
+BUILD=opt1
diff --git a/extra/source/kde3-compat/kdelibs3/slack-desc b/extra/source/kde3-compat/kdelibs3/slack-desc
new file mode 100644
index 000000000..b6e75d1d5
--- /dev/null
+++ b/extra/source/kde3-compat/kdelibs3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+kdelibs3: kdelibs3 (KDE3 runtime libraries)
+kdelibs3:
+kdelibs3: System libraries and other resources required by KDE3.
+kdelibs3:
+kdelibs3:
+kdelibs3:
+kdelibs3:
+kdelibs3:
+kdelibs3:
+kdelibs3:
+kdelibs3:
diff --git a/extra/source/kde3-compat/qt3/doinst.sh b/extra/source/kde3-compat/qt3/doinst.sh
new file mode 100644
index 000000000..d57fb0319
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/doinst.sh
@@ -0,0 +1,9 @@
+## This was causing problems compiling KDE for unknown reasons.
+## So, we'll symlink the libraries into /opt/kde3 again...
+# Add QT library directory to /etc/ld.so.conf:
+if ! grep /opt/kde3/lib etc/ld.so.conf 1> /dev/null 2> /dev/null ; then
+ echo "/opt/kde3/lib" >> etc/ld.so.conf
+fi
+if [ -x /sbin/ldconfig ]; then
+ /sbin/ldconfig 2> /dev/null
+fi
diff --git a/extra/source/kde3-compat/qt3/profile.d/qt.csh b/extra/source/kde3-compat/qt3/profile.d/qt.csh
new file mode 100755
index 000000000..490877c4f
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/profile.d/qt.csh
@@ -0,0 +1,22 @@
+#!/bin/csh
+# Environment path variables for the Qt package:
+if ( ! $?QTDIR ) then
+ # It's best to use the generic directory to avoid
+ # compiling in a version-containing path:
+ if ( -d /opt/kde3/lib/qt3 ) then
+ setenv QTDIR /opt/kde3/lib/qt3
+ else
+ # Find the newest Qt directory and set $QTDIR to that:
+ foreach qtd ( /opt/kde3/lib/qt-* )
+ if ( -d $qtd ) then
+ setenv QTDIR $qtd
+ endif
+ end
+ endif
+endif
+set path = ( $path $QTDIR/bin /opt/kde3/bin )
+if ( $?CPLUS_INCLUDE_PATH ) then
+ setenv CPLUS_INCLUDE_PATH $QTDIR/include:$CPLUS_INCLUDE_PATH
+else
+ setenv CPLUS_INCLUDE_PATH $QTDIR/include
+endif
diff --git a/extra/source/kde3-compat/qt3/profile.d/qt.sh b/extra/source/kde3-compat/qt3/profile.d/qt.sh
new file mode 100755
index 000000000..c4e23bb59
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/profile.d/qt.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+# Environment variables for the Qt package.
+#
+# It's best to use the generic directory to avoid
+# compiling in a version-containing path:
+if [ -d /opt/kde3/lib/qt3 ]; then
+ QTDIR=/opt/kde3/lib/qt3
+else
+ # Find the newest Qt directory and set $QTDIR to that:
+ for qtd in /opt/kde3/lib/qt-* ; do
+ if [ -d $qtd ]; then
+ QTDIR=$qtd
+ fi
+ done
+fi
+if [ ! "$CPLUS_INCLUDE_PATH" = "" ]; then
+ CPLUS_INCLUDE_PATH=$QTDIR/include:$CPLUS_INCLUDE_PATH
+else
+ CPLUS_INCLUDE_PATH=$QTDIR/include
+fi
+PATH="$PATH:$QTDIR/bin:/opt/kde3/bin"
+export QTDIR
+export CPLUS_INCLUDE_PATH
diff --git a/extra/source/kde3-compat/qt3/qt-x11.diff b/extra/source/kde3-compat/qt3/qt-x11.diff
new file mode 100644
index 000000000..74453f21f
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/qt-x11.diff
@@ -0,0 +1,11 @@
+--- ./src/kernel/qgif.h.orig Tue Mar 19 02:31:42 2002
++++ ./src/kernel/qgif.h Sun Mar 24 22:14:19 2002
+@@ -47,7 +47,7 @@
+ #endif // QT_H
+
+ #ifndef QT_BUILTIN_GIF_READER
+-#define QT_BUILTIN_GIF_READER 0
++#define QT_BUILTIN_GIF_READER 1
+ #endif
+
+ bool qt_builtin_gif_reader();
diff --git a/extra/source/kde3-compat/qt3/qt.mysql.h.diff b/extra/source/kde3-compat/qt3/qt.mysql.h.diff
new file mode 100644
index 000000000..2d6fca5ac
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/qt.mysql.h.diff
@@ -0,0 +1,11 @@
+--- ./src/sql/drivers/mysql/qsql_mysql.h.orig 2002-04-15 03:05:53.000000000 -0700
++++ ./src/sql/drivers/mysql/qsql_mysql.h 2002-10-14 14:59:36.000000000 -0700
+@@ -46,7 +46,7 @@
+ #include <qt_windows.h>
+ #endif
+
+-#include <mysql.h>
++#include <mysql/mysql.h>
+
+ #ifdef QT_PLUGIN
+ #define Q_EXPORT_SQLDRIVER_MYSQL
diff --git a/extra/source/kde3-compat/qt3/qt.x86.cflags.diff b/extra/source/kde3-compat/qt3/qt.x86.cflags.diff
new file mode 100644
index 000000000..880037c23
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/qt.x86.cflags.diff
@@ -0,0 +1,11 @@
+--- ./mkspecs/linux-g++/qmake.conf.orig Fri Apr 26 00:48:00 2002
++++ ./mkspecs/linux-g++/qmake.conf Tue May 7 12:05:04 2002
+@@ -18,7 +18,7 @@
+ QMAKE_CFLAGS_DEPS = -M
+ QMAKE_CFLAGS_WARN_ON = -Wall -W
+ QMAKE_CFLAGS_WARN_OFF = -w
+-QMAKE_CFLAGS_RELEASE = -O2
++QMAKE_CFLAGS_RELEASE = -O2 -march=i486 -mtune=i686
+ QMAKE_CFLAGS_DEBUG = -g
+ QMAKE_CFLAGS_SHLIB = -fPIC
+ QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
diff --git a/extra/source/kde3-compat/qt3/qt3.SlackBuild b/extra/source/kde3-compat/qt3/qt3.SlackBuild
new file mode 100755
index 000000000..d32d283ea
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/qt3.SlackBuild
@@ -0,0 +1,192 @@
+#!/bin/sh
+# Copyright 2006, 2007, 2008 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Build with NODEVEL=<something> after building the other deps to get rid of
+# the .so, include, and other files not needed for runtime.
+
+PKGNAM=qt3
+VERSION=${VERSION:-3.3.8b}
+ARCH=${ARCH:-x86_64}
+NUMJOBS=${NUMJOBS:-" -j7 "}
+BUILD=${BUILD:-opt2}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+# Don't build a devel package (but put a devel SYSTEM on this machine...)
+NODEVEL=true
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+#cd $TMP
+# I have *many* times tried building this package in /tmp, and it always
+# ends up with a "/tmp" directory embedded in some wrong place. Hopefully
+# the next time I see this comment I'll remember that and not make the
+# same mistake again just for the sake of doing things "right" (but having
+# the package come out wrong...)
+#rm -rf ${PKGNAM}-${VERSION}
+mkdir -p /opt/kde3/lib${LIBDIRSUFFIX}
+cd /opt/kde3/lib${LIBDIRSUFFIX}
+rm -rf qt-3* qt3 qt-3.* qt3-*
+tar xvf $CWD/qt-x11-free-$VERSION.tar.bz2 || exit 1
+mv qt-x11-free-$VERSION qt3
+cd qt3
+
+if [ $ARCH = "i486" ]; then
+ zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 || exit 1
+fi
+
+zcat $CWD/qt-x11.diff.gz | patch -p1 || exit 1
+zcat $CWD/qt.mysql.h.diff.gz | patch -p1 || exit 1
+
+# Make sure ownerships and permissions are sane:
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+QTDIR=/opt/kde3/lib${LIBDIRSUFFIX}/qt3
+
+# And here's what we are currently using. The "yes" agrees to the GPL, so don't run this script if you
+# don't agree. :-)
+echo "yes" | CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" ./configure \
+ -prefix /opt/kde3/lib${LIBDIRSUFFIX}/qt3-${VERSION} \
+ -release \
+ -system-zlib \
+ -system-libpng \
+ -qt-imgfmt-png \
+ -system-libmng \
+ -qt-imgfmt-mng \
+ -system-libjpeg \
+ -qt-imgfmt-jpeg \
+ -qt-gif \
+ -thread \
+ -stl \
+ -no-g++-exceptions \
+ -xft \
+ -plugin-sql-mysql \
+ -plugin-style-cde \
+ -plugin-style-compact \
+ -qt-style-motif \
+ -plugin-style-motifplus \
+ -plugin-style-platinum \
+ -plugin-style-sgi \
+ -plugin-style-windows \
+ -enable-opengl
+
+# We're using '-i' to work around a bug where the build tries to strip html files.
+# Build the important stuff:
+make $NUMJOBS -i
+make install || exit 1
+make $NUMJOBS -i symlinks sub-src sub-tools
+make install || exit 1
+make install INSTALL_ROOT=$PKG || exit 1
+# Link the shared libraries into /opt/kde3/lib.
+( cd /opt/kde3/lib${LIBDIRSUFFIX}
+ for file in qt3/lib/*.so* ; do
+ ln -sf $file .
+ done
+)
+
+# Leave these out so as not to interfere with Qt4:
+if [ -z "$NODEVEL" ]; then
+ # Add man pages:
+ mkdir -p $PKG/usr/man
+ cp -a doc/man/* $PKG/usr/man
+ find $PKG/usr/man -type f -exec gzip -9 "{}" \;
+fi
+
+if [ $ARCH = "i486" ]; then
+ # Put this back as shipped:
+ ( cd $PKG/opt/kde3/lib/qt3-${VERSION}
+ zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 -R )
+fi
+
+mkdir -p $PKG/etc/profile.d
+cat $CWD/profile.d/qt.sh | sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" \
+ > $PKG/etc/profile.d/qt.sh
+cat $CWD/profile.d/qt.csh | sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" \
+ > $PKG/etc/profile.d/qt.csh
+chmod 755 $PKG/etc/profile.d/*
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Put a ton of links to more "normal" places. I'd just use a prefix of /usr, but it
+# creates a ton of new (and ambiguously named) /usr directories...
+
+mkdir -p $PKG/opt/kde3/bin
+( cd $PKG/opt/kde3/bin
+ for file in assistant designer linguist lrelease lupdate moc qm2ts qmake qtconfig uic ; do
+ ln -sf /opt/kde3/lib${LIBDIRSUFFIX}/qt3/bin/$file .
+ done
+)
+
+sed -i -e "s#/lib\$#/lib${LIBDIRSUFFIX}#" \
+ $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3-$VERSION/lib/pkgconfig/qt-mt.pc || exit 1
+mkdir -p $PKG/opt/kde3/lib${LIBDIRSUFFIX}/pkgconfig
+( cd $PKG/opt/kde3/lib${LIBDIRSUFFIX}/pkgconfig
+ ln -sf /opt/kde3/lib${LIBDIRSUFFIX}/qt3/lib/pkgconfig/qt-mt.pc .
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ FAQ INSTALL LICENSE.GPL* LICENSE.QPL MANIFEST PLATFORMS README* changes* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Put the actual file tree in /opt/kde3/lib/qt3:
+mv $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3-${VERSION} $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3
+( cd $PKG/opt/kde3/lib${LIBDIRSUFFIX} ; ln -sf qt3 qt3-${VERSION})
+
+( cd $PKG/opt/kde3/lib${LIBDIRSUFFIX}
+ for file in qt3/lib/*.so* ; do
+ ln -sf $file .
+ done
+)
+
+# This much documentation isn't needed for the compat qt3 package -- look in the
+# source if you need it.
+rm -rf $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3/doc
+
+mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz | sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" \
+ > $PKG/install/doinst.sh
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/kde3-compat/qt3/slack-desc b/extra/source/kde3-compat/qt3/slack-desc
new file mode 100644
index 000000000..dc7ea57e6
--- /dev/null
+++ b/extra/source/kde3-compat/qt3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+qt3: Qt3 (a multi-platform C++ graphical user interface toolkit, version 3)
+qt3:
+qt3: Qt is a complete and well-developed object-oriented framework for
+qt3: developing graphical user interface (GUI) applications using C++.
+qt3:
+qt3: This release is free only for development of free software for the X
+qt3: Window System. If you use Qt for developing commercial or other
+qt3: non-free software, you must have a professional license. Please see
+qt3: http://www.trolltech.com/purchase.html for information on how to
+qt3: obtain a professional license.
+qt3:
diff --git a/extra/source/mpg123/mpg123.SlackBuild b/extra/source/mpg123/mpg123.SlackBuild
new file mode 100755
index 000000000..2212eb85b
--- /dev/null
+++ b/extra/source/mpg123/mpg123.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/sh
+# Copyright 2006-2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+PKGNAM=mpg123
+VERSION=${VERSION:-0.65}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+rm -rf $PKG
+mkdir -p $PKG $TMP
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+fi
+
+cd $TMP
+rm -rf ${PKGNAM}-${VERSION}
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
+
+# Make sure ownerships and permissions are sane:
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --program-prefix= \
+ --program-suffix= \
+ --build=$ARCH-slackware-linux
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.*
+ )
+ done
+ )
+fi
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING INSTALL NEWS README \
+ doc \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/extra/source/mpg123/slack-desc b/extra/source/mpg123/slack-desc
new file mode 100644
index 000000000..cabaa7f17
--- /dev/null
+++ b/extra/source/mpg123/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mpg123: mpg123 (a command-line mp3 player)
+mpg123:
+mpg123: (full?) MPEG 1.0/2.0, Layer 1,2 and 3 support (Layer-3 realtime only
+mpg123: with a 'fast' machine). Since April 97, 128kbit j-stereo should work
+mpg123: on a 486DX4-120. With 2:1 down-sampling or using the downmix-mode
+mpg123: even a 486DX2-66 should play such a stream in realtime!
+mpg123:
+mpg123: The mpg123 project was started by Michel Hipp and is now being
+mpg123: maintained by Thomas Orgis and Nicholas J. Humfrey.
+mpg123:
+mpg123:
diff --git a/extra/source/mplayerplug-in/mplayerplug-in.SlackBuild b/extra/source/mplayerplug-in/mplayerplug-in.SlackBuild
new file mode 100755
index 000000000..d37232fc4
--- /dev/null
+++ b/extra/source/mplayerplug-in/mplayerplug-in.SlackBuild
@@ -0,0 +1,247 @@
+#!/bin/sh
+# $Id: mplayerplug-in.SlackBuild,v 1.3 2008/08/08 11:36:29 root Exp root $
+# Copyright (c) 2006-2008 Eric Hameleers <alien@slackware.com>, Eindhoven,NL
+# All rights reserved.
+#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+# -----------------------------------------------------------------------------
+#
+# Slackware SlackBuild script
+# ===========================
+# By: Eric Hameleers <alien@slackware.com>
+# For: mplayerplug-in
+# Descr: embedded video player for mozilla based browsers
+# URL: http://mplayerplug-in.sourceforge.net/
+# Needs: MPlayer >= 1.0rc2
+# Changelog:
+# 3.31-1: 05/Nov/2006 by Eric Hameleers <alien@slackware.com>
+# * Initial build.
+# 3.55-1: 08/Aug/2008 by Eric Hameleers <alien@slackware.com>
+# * Update.
+#
+# Run 'sh mplayerplug-in.SlackBuild --cleanup' to build a Slackware package.
+# The package (.txz) plus descriptive .txt file are created in /tmp .
+# Install using 'installpkg'.
+#
+# -----------------------------------------------------------------------------
+
+# Set initial variables:
+
+PRGNAM=mplayerplug-in
+VERSION=${VERSION:-3.55}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+TAG=${TAG:-}
+
+DOCS="ChangeLog INSTALL LICENSE README TODO"
+
+# Where do we look for sources?
+SRCDIR=$(cd $(dirname $0); pwd)
+
+# Place to build (TMP) package (PKG) and output (OUTPUT) the program:
+TMP=${TMP:-/tmp/build}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+SOURCE="$SRCDIR/${PRGNAM}-${VERSION}.tar.gz"
+SRCURL="http://downloads.sourceforge.net/${PRGNAM}/${PRGNAM}-${VERSION}.tar.gz"
+
+##
+## --- with a little luck, you won't have to edit below this point --- ##
+##
+
+# Exit the script on errors:
+set -e
+trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
+# Catch unitialized variables:
+set -u
+P1=${1:-1}
+
+# Slackware 11 and up need other option (gcc > 3.3.x)
+if [ $(gcc -dumpversion | tr -d '.' |cut -c 1-2) -gt 33 ]; then
+ MOPT=tune
+else
+ MOPT=cpu
+fi
+
+case "$ARCH" in
+ i486) SLKCFLAGS="-O2 -march=i486 -m${MOPT}=i686"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ s390) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ powerpc) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ x86_64) SLKCFLAGS="-O2 -fPIC"
+ SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"
+ ;;
+ athlon-xp) SLKCFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+esac
+
+# Create working directories:
+mkdir -p $OUTPUT # place for the package to be saved
+mkdir -p $TMP/tmp-$PRGNAM # location to build the source
+mkdir -p $PKG # place for the package to be built
+rm -rf $PKG/* # always erase old package's contents
+rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build
+
+# Source file availability:
+if ! [ -f ${SOURCE} ]; then
+ if ! [ "x${SRCURL}" == "x" ]; then
+ # Check if the $SRCDIR is writable at all - if not, download to $OUTPUT
+ [ -w "$SRCDIR" ] || SOURCE="$OUTPUT/$(basename $SOURCE)"
+ echo "Source '$(basename ${SOURCE})' not available yet..."
+ echo "Will download file to $(dirname $SOURCE)"
+ wget -nv -T 20 -O "${SOURCE}" "${SRCURL}" || true
+ if [ $? -ne 0 -o ! -s "${SOURCE}" ]; then
+ echo "Downloading '$(basename ${SOURCE})' failed... aborting the build."
+ mv -f "${SOURCE}" "${SOURCE}".FAIL
+ exit 1
+ fi
+ else
+ echo "File '$(basename ${SOURCE})' not available... aborting the build."
+ exit 1
+ fi
+fi
+
+if [ "$P1" == "--download" ]; then
+ echo "Download complete."
+ exit 0
+fi
+
+# --- PACKAGE BUILDING ---
+
+echo "++"
+echo "|| $PRGNAM-$VERSION"
+echo "++"
+
+cd $TMP/tmp-$PRGNAM
+echo "Extracting the source archive(s) for $PRGNAM..."
+if $(file ${SOURCE} | grep -q ": bzip2"); then
+ tar -xjvf ${SOURCE}
+elif $(file ${SOURCE} | grep -q ": gzip"); then
+ tar -xzvf ${SOURCE}
+fi
+cd ${PRGNAM}-${VERSION}
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+echo Building ...
+LDFLAGS="$SLKLDFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS" \
+./configure --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --enable-wmp \
+ --enable-qt \
+ --enable-rm \
+ --enable-gmp \
+ --enable-dvx \
+ --program-prefix="" \
+ --program-suffix="" \
+ --build=$ARCH-slackware-linux \
+ 2>&1 | tee $OUTPUT/configure-${PRGNAM}.log
+make 2>&1 | tee $OUTPUT/make-${PRGNAM}.log
+
+# Install all the needed stuff to the package dir
+# Use installwatch if available, to produce a logfile of the installation
+# process that is more easily readable:
+if $(which installwatch > /dev/null 2>&1); then
+ installwatch -o $OUTPUT/install-${PRGNAM}.log make DESTDIR=$PKG install
+else
+ make DESTDIR=$PKG install 2>&1 |tee $OUTPUT/install-${PRGNAM}.log
+fi
+
+# Prepare the config files:
+mv $PKG/etc/mplayerplug-in.conf{,.new}
+mv $PKG/etc/mplayerplug-in.types{,.new}
+
+# Add this to the doinst.sh
+! [ -d $PKG/install ] && mkdir -p $PKG/install
+cat <<EOINS >> $PKG/install/doinst.sh
+# Handle the incoming configuration files:
+config() {
+ for infile in \$1; do
+ NEW="\$infile"
+ OLD="\`dirname \$NEW\`/\`basename \$NEW .new\`"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r \$OLD ]; then
+ mv \$NEW \$OLD
+ elif [ "\`cat \$OLD | md5sum\`" = "\`cat \$NEW | md5sum\`" ]; then
+ # toss the redundant copy
+ rm \$NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+ done
+}
+
+config etc/mplayerplug-in.conf.new
+config etc/mplayerplug-in.types.new
+
+EOINS
+
+# Add documentation:
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true
+cp -a $SRCDIR/$(basename $0) $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
+find $PKG/usr/doc -type f -exec chmod 644 {} \;
+
+# Compress the man page(s):
+if [ -d $PKG/usr/man ]; then
+ find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
+ for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+fi
+
+# Strip binaries:
+cd $PKG
+find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+cd -
+
+# Add a package description:
+mkdir -p $PKG/install
+cat $SRCDIR/slack-desc > $PKG/install/slack-desc
+if [ -f $SRCDIR/doinst.sh ]; then
+ cat $SRCDIR/doinst.sh >> $PKG/install/doinst.sh
+fi
+
+# Build the package:
+cd $PKG
+makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
+cd $OUTPUT
+md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz.md5
+cd -
+cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txt
+if [ -f $PKG/install/slack-required ]; then
+ cat $PKG/install/slack-required > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.dep
+fi
+
+# Clean up the extra stuff:
+if [ "$P1" = "--cleanup" ]; then
+ rm -rf $TMP/tmp-$PRGNAM
+ rm -rf $PKG
+fi
diff --git a/extra/source/mplayerplug-in/slack-desc b/extra/source/mplayerplug-in/slack-desc
new file mode 100644
index 000000000..5e847c964
--- /dev/null
+++ b/extra/source/mplayerplug-in/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mplayerplug-in: mplayerplug-in (embedded video player for mozilla based browsers)
+mplayerplug-in:
+mplayerplug-in: mplayerplug-in is a browser plugin to allow playing embedded
+mplayerplug-in: movies on web pages, using MPlayer.
+mplayerplug-in: Media is played embedded in the page or in a separate window
+mplayerplug-in: depending on how the author of the webpage intended the media to
+mplayerplug-in: be displayed.
+mplayerplug-in:
+mplayerplug-in:
+mplayerplug-in: mplayerplug-in homepage: http://mplayerplug-in.sf.net/
+mplayerplug-in:
diff --git a/extra/source/partitionmanager/doinst.sh b/extra/source/partitionmanager/doinst.sh
new file mode 100644
index 000000000..e376b59af
--- /dev/null
+++ b/extra/source/partitionmanager/doinst.sh
@@ -0,0 +1,5 @@
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database /usr/share/applications >/dev/null 2>&1
+fi
+
diff --git a/extra/source/partitionmanager/partitionmanager.SlackBuild b/extra/source/partitionmanager/partitionmanager.SlackBuild
new file mode 100755
index 000000000..cf91510f1
--- /dev/null
+++ b/extra/source/partitionmanager/partitionmanager.SlackBuild
@@ -0,0 +1,89 @@
+#!/bin/sh
+
+# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+VERSION=1.0.0-BETA1
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+NUMJOBS=${NUMJOBS:--j6}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-partitionmanager
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf partitionmanager-$VERSION
+tar xvf $CWD/partitionmanager-$VERSION.tar.bz2 || exit 1
+cd partitionmanager-$VERSION || exit 1
+# All the rest of KDE uses 'en' not 'en_US' as a documentation language:
+mv doc/{en_US,en} || exit 1
+sed -i -e 's/en_US/en/' doc/CMakeLists.txt
+sed -i -e 's/en_US/en/' doc/en/CMakeLists.txt
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ QTDIR=/usr/lib${LIBDIRSUFFIX}/qt \
+ PATH=$QTDIR/bin:$PATH \
+ cmake \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ ..
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd -
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/partitionmanager-$VERSION
+cp -a \
+ BUGS CHANGES* COPYING* INSTALL README* \
+ $PKG/usr/doc/partitionmanager-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/partitionmanager-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
+
diff --git a/extra/source/partitionmanager/slack-desc b/extra/source/partitionmanager/slack-desc
new file mode 100644
index 000000000..0f8c66787
--- /dev/null
+++ b/extra/source/partitionmanager/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------|
+partitionmanager: partitionmanager (Graphical partition manager for KDE4)
+partitionmanager:
+partitionmanager: Easily manage disks, partitions and filesystems on your KDE
+partitionmanager: desktop. Create, resize, move, copy, back up, restore or
+partitionmanager: delete partitions.
+partitionmanager:
+partitionmanager:
+partitionmanager:
+partitionmanager:
+partitionmanager:
+partitionmanager:
diff --git a/extra/source/recordmydesktop/recordmydesktop.SlackBuild b/extra/source/recordmydesktop/recordmydesktop.SlackBuild
new file mode 100755
index 000000000..c5ff5d0e5
--- /dev/null
+++ b/extra/source/recordmydesktop/recordmydesktop.SlackBuild
@@ -0,0 +1,245 @@
+#!/bin/sh
+# $Id: recordmydesktop.SlackBuild,v 1.8 2009/05/12 22:14:43 root Exp root $
+# Copyright (c) 2008 Eric Hameleers <alien@slackware.com>
+# All rights reserved.
+#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+# -----------------------------------------------------------------------------
+#
+# Slackware SlackBuild script
+# ===========================
+# By: Eric Hameleers <alien@slackware.com>
+# For: recordmydesktop
+# Descr: record desktop sessions with audio and video
+# URL: http://recordmydesktop.sourceforge.net/
+# Needs:
+# Changelog:
+# 0.3.8.1-1: 17/Dec/2008 by Eric Hameleers <alien@slackware.com>
+# * Initial build.
+# 0.3.8.1-2: 13/may/2009 by Eric Hameleers <alien@slackware.com>
+# * Rebuilt for python 2.6.2.
+#
+# Run 'sh recordmydesktop.SlackBuild --cleanup' to build a Slackware package.
+# The package (.txz) and .txt file as well as build logs are created in /tmp .
+# Install it using 'installpkg'.
+#
+# -----------------------------------------------------------------------------
+
+# Set initial variables:
+
+PRGNAM=recordmydesktop
+VERSION=${VERSION:-0.3.8.1}
+QTVER=${QTVER:-0.3.8}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-2}
+NUMJOBS=${NUMJOBS:" -j4 "}
+
+DOCS="AUTHORS COPYING README ChangeLog"
+QTDOCS="AUTHORS COPYING README ChangeLog"
+
+# Where do we look for sources?
+SRCDIR=$(cd $(dirname $0); pwd)
+
+# Place to build (TMP) package (PKG) and output (OUTPUT) the program:
+TMP=${TMP:-/tmp/build}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+SOURCE[0]="$SRCDIR/${PRGNAM}-${VERSION}.tar.gz"
+SRCURL[0]="http://downloads.sourceforge.net/${PRGNAM}/${PRGNAM}-${VERSION}.tar.gz"
+
+SOURCE[1]="$SRCDIR/qt-${PRGNAM}-${QTVER}.tar.gz"
+SRCURL[1]="http://downloads.sourceforge.net/${PRGNAM}/qt-${PRGNAM}-${QTVER}.tar.gz"
+
+##
+## --- with a little luck, you won't have to edit below this point --- ##
+##
+
+# Exit the script on errors:
+set -e
+trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
+# Catch unitialized variables:
+set -u
+P1=${1:-1}
+
+case "$ARCH" in
+ i486) SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ s390) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ powerpc) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ x86_64) SLKCFLAGS="-O2 -fPIC"
+ SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"
+ ;;
+ athlon-xp) SLKCFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+esac
+
+# Create working directories:
+mkdir -p $OUTPUT # place for the package to be saved
+mkdir -p $TMP/tmp-$PRGNAM # location to build the source
+mkdir -p $PKG # place for the package to be built
+rm -rf $PKG/* # always erase old package's contents
+rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build
+rm -rf $OUTPUT/{configure,make,install,error,makepkg}-$PRGNAM.log
+ # remove old log files
+
+# Source file availability:
+for (( i = 0; i < ${#SOURCE[*]}; i++ )) ; do
+ if ! [ -f ${SOURCE[$i]} ]; then
+ if ! [ "x${SRCURL[$i]}" == "x" ]; then
+ # Check if the $SRCDIR is writable at all - if not, download to $OUTPUT
+ [ -w "$SRCDIR" ] || SOURCE[$i]="$OUTPUT/$(basename ${SOURCE[$i]})"
+ echo "Source '$(basename ${SOURCE[$i]})' not available yet..."
+ echo "Will download file to $(dirname $SOURCE[$i])"
+ wget -nv -T 20 -O "${SOURCE[$i]}" "${SRCURL[$i]}" || true
+ if [ $? -ne 0 -o ! -s "${SOURCE[$i]}" ]; then
+ echo "Downloading '$(basename ${SOURCE[$i]})' failed.. aborting the build."
+ mv -f "${SOURCE[$i]}" "${SOURCE[$i]}".FAIL
+ exit 1
+ fi
+ else
+ echo "File '$(basename ${SOURCE[$i]})' not available.. aborting the build."
+ exit 1
+ fi
+ fi
+done
+
+if [ "$P1" == "--download" ]; then
+ echo "Download complete."
+ exit 0
+fi
+
+# --- PACKAGE BUILDING ---
+
+echo "++"
+echo "|| $PRGNAM-$VERSION"
+echo "++"
+
+cd $TMP/tmp-$PRGNAM
+echo "Extracting the source archive(s) for $PRGNAM..."
+for (( i = 0; i < ${#SOURCE[*]}; i++ )) ; do
+tar -xvf ${SOURCE[$i]}
+done
+chown -R root:root *
+chmod -R u+w,go+r-w,a-s *
+
+echo Building ...
+
+# First, the commandline program:
+cd ${PRGNAM}-${VERSION}
+ LDFLAGS="$SLKLDFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ CFLAGS="$SLKCFLAGS" \
+ ./configure --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --program-prefix= \
+ --program-suffix= \
+ --build=$ARCH-slackware-linux \
+ 2>&1 | tee $OUTPUT/configure-${PRGNAM}.log
+ make 2>&1 | tee $OUTPUT/make-${PRGNAM}.log
+
+ if $(which installwatch > /dev/null 2>&1); then
+ installwatch -o $OUTPUT/install-${PRGNAM}.log make DESTDIR=$PKG install
+ else
+ make DESTDIR=$PKG install 2>&1 |tee $OUTPUT/install-${PRGNAM}.log
+ fi
+cd ..
+
+# Next, the QT4 GUI program:
+cd qt-${PRGNAM}-${QTVER}
+ LDFLAGS="$SLKLDFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ CFLAGS="$SLKCFLAGS" \
+ ./configure --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --program-prefix= \
+ --program-suffix= \
+ --build=$ARCH-slackware-linux \
+ 2>&1 | tee $OUTPUT/configure-qt-${PRGNAM}.log
+ make 2>&1 | tee $OUTPUT/make-qt-${PRGNAM}.log
+
+ if $(which installwatch > /dev/null 2>&1); then
+ installwatch -o $OUTPUT/install-${PRGNAM}.log make DESTDIR=$PKG install
+ else
+ make DESTDIR=$PKG install 2>&1 |tee $OUTPUT/install-${PRGNAM}.log
+ fi
+cd ..
+
+# Add this to the doinst.sh:
+! [ -d $PKG/install ] && mkdir -p $PKG/install
+cat <<EOT >> $PKG/install/doinst.sh
+# Update the desktop database:
+if [ -x usr/bin/update-desktop-database ]; then
+ chroot . /usr/bin/update-desktop-database /usr/share/applications > /dev/null 2>&1
+fi
+
+EOT
+
+# Add documentation:
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/qt-${PRGNAM}
+( cd ${PRGNAM}-${VERSION}
+ cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true
+)
+( cd qt-${PRGNAM}-${QTVER}
+ cp -a $QTDOCS $PKG/usr/doc/$PRGNAM-$VERSION/qt-${PRGNAM} || true
+)
+cp -a $SRCDIR/$(basename $0) $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
+find $PKG/usr/doc -type f -exec chmod 644 {} \;
+
+# Compress the man page(s):
+if [ -d $PKG/usr/man ]; then
+ find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
+ for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+fi
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a package description:
+mkdir -p $PKG/install
+cat $SRCDIR/slack-desc > $PKG/install/slack-desc
+if [ -f $SRCDIR/doinst.sh ]; then
+ cat $SRCDIR/doinst.sh >> $PKG/install/doinst.sh
+fi
+
+# Build the package:
+cd $PKG
+makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
+cd $OUTPUT
+md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz.md5
+cd -
+cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txt
+if [ -f $PKG/install/slack-required ]; then
+ cat $PKG/install/slack-required > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.dep
+fi
+
diff --git a/extra/source/recordmydesktop/slack-desc b/extra/source/recordmydesktop/slack-desc
new file mode 100644
index 000000000..facfd02b9
--- /dev/null
+++ b/extra/source/recordmydesktop/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+recordmydesktop: recordmydesktop (record desktop sessions with audio and video)
+recordmydesktop:
+recordmydesktop: recordMyDesktop is a desktop session recorder for GNU/Linux
+recordmydesktop: that attemps to be easy to use, yet also effective at it's
+recordmydesktop: primary task.
+recordmydesktop: The command-line program (the backend) and the graphical
+recordmydesktop: interface (the frontend) are separate programs, but all the
+recordmydesktop: functionality relies on the backend which is also a standalone
+recordmydesktop: program. The frontend can't function on it's own.
+recordmydesktop:
+recordmydesktop: recordmydesktop home: http://recordmydesktop.sourceforge.net/
diff --git a/extra/source/slacktrack/slacktrack.SlackBuild b/extra/source/slacktrack/slacktrack.SlackBuild
new file mode 100755
index 000000000..abefb3be2
--- /dev/null
+++ b/extra/source/slacktrack/slacktrack.SlackBuild
@@ -0,0 +1,21 @@
+#!/bin/sh
+# Set initial variables:
+CWD=`pwd`
+if [ "$TMP" = "" ]; then
+ TMP=/tmp
+fi
+
+export VERSION=2.06
+export ARCH=${ARCH:-x86_64}
+export PKGEXT=${PKGEXT:-txz}
+
+if [ ! -d $TMP ]; then
+ mkdir -p $TMP # location to build the source
+fi
+cd $TMP
+rm -rf slacktrack
+tar xvf $CWD/slacktrack-$VERSION-source.tar.gz
+cd slacktrack
+
+# Start the "real" SlackBuild:
+./slacktrack.SlackBuild
diff --git a/extra/source/tightvnc/doinst.sh b/extra/source/tightvnc/doinst.sh
new file mode 100644
index 000000000..8ce980e53
--- /dev/null
+++ b/extra/source/tightvnc/doinst.sh
@@ -0,0 +1,24 @@
+# Handle the incoming configuration files:
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+config etc/tightvncserver.conf.new
+config etc/rc.d/rc.vncservers.new
+config etc/rc.d/rc.vncservers.conf.new
+
+# Update the desktop database:
+if [ -x usr/bin/update-desktop-database ]; then
+ chroot . /usr/bin/update-desktop-database usr/share/applications > /dev/null
+2>&1
+fi
+
diff --git a/extra/source/tightvnc/slack-desc b/extra/source/tightvnc/slack-desc
new file mode 100644
index 000000000..4003e63af
--- /dev/null
+++ b/extra/source/tightvnc/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+tightvnc: tightvnc (remote control software)
+tightvnc:
+tightvnc: Virtual Network Computing (VNC) is a remote display system which
+tightvnc: allows you to view a desktop environment from anywhere on the Internet
+tightvnc: and from a wide variety of machine architectures.
+tightvnc: TightVNC is an enhanced VNC distribution. This package contains a
+tightvnc: client which will allow you to connect to other desktops running a
+tightvnc: VNC or a TightVNC server.
+tightvnc:
+tightvnc: tightvnc home: http://www.tightvnc.com/
+tightvnc:
diff --git a/extra/source/tightvnc/tightvnc.SlackBuild b/extra/source/tightvnc/tightvnc.SlackBuild
new file mode 100755
index 000000000..526b8f3d6
--- /dev/null
+++ b/extra/source/tightvnc/tightvnc.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/sh
+# Copyright 2007-2009 Eric Hameleers, Eindhoven, NL
+# All rights reserved.
+#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+# -----------------------------------------------------------------------------
+#
+# Slackware SlackBuild script
+# ===========================
+# By: Eric Hameleers <alien@slackware.com>
+# For: tightvnc
+# Descr: remote control software
+# URL: http://www.tightvnc.com/
+# -----------------------------------------------------------------------------
+
+# Set initial variables:
+
+PRGNAM=tightvnc
+VERSION=${VERSION:-1.3.10}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PRGNAM}
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+case "$ARCH" in
+ i486) SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ s390) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ x86_64) SLKCFLAGS="-O2 -fPIC"
+ SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"
+ ;;
+esac
+
+# Explode the package framework:
+cd $PKG
+ explodepkg $CWD/_$PRGNAM.tar.gz
+cd -
+
+cd $TMP
+rm -rf vnc_unixsrc
+tar xvf $CWD/${PRGNAM}-${VERSION}_unixsrc.tar.?z* || exit 1
+cd vnc_unixsrc || exit 1
+
+# Make sure ownerships and permissions are sane:
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Make vncserver use sane pathnames and executable permissions:
+zcat $CWD/tightvnc.paths-and-perms.diff.gz | patch -p1 --verbose || exit 1
+
+# Use xinit's Xclients script to start the session:
+cat vnc-xclients.patch | sed -e 's/Red Hat /Slackware /' | patch || exit 1
+
+xmkmf -a
+make CDEBUGFLAGS="$SLKCFLAGS" World || exit 1
+
+cd Xvnc
+ LDFLAGS="$SLKLDFLAGS" \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ ./configure
+ make EXTRA_LIBRARIES="-lwrap -lnss_nis" CDEBUGFLAGS="$SLKCFLAGS" \
+ EXTRA_DEFINES="-DUSE_LIBWRAP=1"
+cd - # end 'cd Xvnc'
+
+# Manually install files:
+mkdir -p $PKG/usr/bin $PKG/usr/man/man1
+./vncinstall $PKG/usr/bin $PKG/usr/man
+
+mkdir -p $PKG/usr/share/tightvnc
+cp -aR classes $PKG/usr/share/tightvnc/
+
+mkdir $PKG/etc
+cp -a tightvncserver.conf $PKG/etc/tightvncserver.conf.new
+
+# Add documentation:
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENCE.TXT README WhatsNew ChangeLog \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/install/README.1st $PKG/usr/doc/$PRGNAM-$VERSION
+
+# Compress the man page(s):
+if [ -d $PKG/usr/man ]; then
+ find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
+ for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+fi
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a package description:
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+
+# Build the package:
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txz
+
diff --git a/extra/source/tightvnc/tightvnc.paths-and-perms.diff b/extra/source/tightvnc/tightvnc.paths-and-perms.diff
new file mode 100644
index 000000000..b6eb14f16
--- /dev/null
+++ b/extra/source/tightvnc/tightvnc.paths-and-perms.diff
@@ -0,0 +1,52 @@
+diff -ur vnc_unixsrc.orig/tightvncserver.conf vnc_unixsrc/tightvncserver.conf
+--- vnc_unixsrc.orig/tightvncserver.conf 2009-02-12 05:27:18.000000000 +0100
++++ vnc_unixsrc/tightvncserver.conf 2009-06-02 23:55:22.000000000 +0200
+@@ -19,15 +19,15 @@
+ # $geometry = "1024x768";
+ # $depth = 24;
+ # $desktopName = "X";
+-# $vncClasses = "/usr/local/vnc/classes";
++# $vncClasses = "/usr/share/tightvnc/classes";
+ # $vncUserDir = "$ENV{HOME}/.vnc";
+-# $fontPath = "unix/:7100";
++# $fontPath = "/usr/share/fonts/misc/,/usr/share/fonts/Type1/,/usr/share/fonts/75dpi/";
+ # $authType = "-rfbauth $vncUserDir/passwd";
+-# $colorPath = "/usr/lib/X11/rgb";
++# $colorPath = "/usr/share/X11/rgb";
+
+ ## Here is another example of setting the font path:
+ #
+-# $fontPath = "/usr/lib/X11/fonts/misc/"
++# $fontPath = "unix/:7100";
+ # $fontPath = "$fontPath,/usr/lib/X11/fonts/75dpi/";
+
+ ## You might wish to make your vnc directory under /tmp, to make sure
+diff -ur vnc_unixsrc.orig/vncinstall vnc_unixsrc/vncinstall
+--- vnc_unixsrc.orig/vncinstall 2002-03-19 12:44:02.000000000 +0100
++++ vnc_unixsrc/vncinstall 2009-06-02 23:51:54.000000000 +0200
+@@ -47,7 +47,7 @@
+ else
+ echo "Copying $f -> $bin_dst/`basename $f`"
+ cp -pf $f $bin_dst
+- chmod 0555 $bin_dst/`basename $f`
++ chmod 0755 $bin_dst/`basename $f`
+ fi
+
+ # Installing man pages
+diff -ur vnc_unixsrc.orig/vncserver vnc_unixsrc/vncserver
+--- vnc_unixsrc.orig/vncserver 2009-02-12 05:27:18.000000000 +0100
++++ vnc_unixsrc/vncserver 2009-06-02 23:51:39.000000000 +0200
+@@ -32,10 +32,11 @@
+ $geometry = "1024x768";
+ $depth = 24;
+ $desktopName = "X";
+-$vncClasses = "/usr/local/vnc/classes";
++$vncClasses = "/usr/share/tightvnc/classes";
+ $vncUserDir = "$ENV{HOME}/.vnc";
+-$fontPath = "unix/:7100";
++$fontPath = "/usr/share/fonts/misc/,/usr/share/fonts/Type1/,/usr/share/fonts/75dpi/";
+ $authType = "-rfbauth $vncUserDir/passwd";
++$colorPath = "/usr/share/X11/rgb";
+
+ # Read configuration from the system-wide and user files if present.
+
diff --git a/extra/source/wicd/README.SLACKWARE b/extra/source/wicd/README.SLACKWARE
new file mode 100644
index 000000000..47a9cba99
--- /dev/null
+++ b/extra/source/wicd/README.SLACKWARE
@@ -0,0 +1,21 @@
+After installing this package, make sure the /etc/rc.d/rc.wicd
+script is executable; if necessary, do:
+ chmod +x /etc/rc.d/rc.wicd
+
+Results have varied, but you will probably need/want to remove
+any references to interfaces from /etc/rc.d/rc.inet1.conf - in
+other words, make that file look as if netconfig has never been
+run.
+
+When you start X, you should see a wicd icon in the system tray;
+click on it to open the gui interface and configure as desired.
+Your user account will need to be a member of the 'netdev' group
+in order to use wicd.
+
+Note that urwid will need to be installed if you want to use the
+curses client.
+
+Also, if you don't have kde installed, you won't have a graphical
+sudo client available; you might wish to consider ktsuss from
+SlackBuilds.org.
+
diff --git a/extra/source/wicd/doinst.sh b/extra/source/wicd/doinst.sh
new file mode 100644
index 000000000..2c0f7d98b
--- /dev/null
+++ b/extra/source/wicd/doinst.sh
@@ -0,0 +1,36 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+# Keep same perms on rc.wicd.new:
+if [ -e etc/rc.d/rc.wicd ]; then
+ cp -a etc/rc.d/rc.wicd etc/rc.d/rc.wicd.new.incoming
+ cat etc/rc.d/rc.wicd.new > etc/rc.d/rc.wicd.new.incoming
+ mv etc/rc.d/rc.wicd.new.incoming etc/rc.d/rc.wicd.new
+fi
+
+# Update desktop menu
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+# Update icon cache if one exists
+if [ -r usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -t -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+config etc/dbus-1/system.d/wicd.conf.new
+config etc/rc.d/rc.wicd.new
+config etc/wicd/manager-settings.conf.new
+
diff --git a/extra/source/wicd/slack-desc b/extra/source/wicd/slack-desc
new file mode 100644
index 000000000..47cf875f8
--- /dev/null
+++ b/extra/source/wicd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler-------------------------------------------------------|
+wicd: wicd (network manager for linux)
+wicd:
+wicd: wicd is a wired and wireless network manager for Linux.
+wicd: Some features include:
+wicd: - Ability to connect to wired and wireless networks
+wicd: - Profiles for each wireless network and wired network
+wicd: - Many encryption schemes, some of which include WEP/WPA/WPA2
+wicd: - Compatible with wireless-tools
+wicd:
+wicd: Homepage: http://wicd.net
+wicd:
diff --git a/extra/source/wicd/wicd.SlackBuild b/extra/source/wicd/wicd.SlackBuild
new file mode 100755
index 000000000..21d6d454c
--- /dev/null
+++ b/extra/source/wicd/wicd.SlackBuild
@@ -0,0 +1,81 @@
+#!/bin/sh
+
+# Copyright 2008,2009 Robby Workman Northport, AL, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=wicd
+VERSION=${VERSION:-1.6.2.1}
+ARCH=${ARCH:-x86_64} # This should be the same as the python package
+BUILD=${BUILD:-1}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PRGNAM
+
+if [ "$ARCH" = "i486" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 || exit 1
+cd $PRGNAM-$VERSION || exit 1
+chown -R root:root .
+
+python setup.py configure \
+ --lib=/usr/lib${LIBDIRSUFFIX}/wicd \
+ --kdedir=/usr/share/autostart \
+ --backends=/usr/lib${LIBDIRSUFFIX}/wicd/backends \
+ --wicdgroup=netdev \
+ || exit 1
+python setup.py install --root=$PKG || exit 1
+
+# Handle some Slackware defaults
+# Use dhcpcd as the dhcp client
+# Use kdesu as the graphical sudo application
+cat << EOF > $PKG/etc/wicd/manager-settings.conf.new
+[Settings]
+dhcp_client = 2
+sudo_app = 2
+EOF
+
+# Don't clobber dbus config on upgrade
+mv $PKG/etc/dbus-1/system.d/wicd.conf $PKG/etc/dbus-1/system.d/wicd.conf.new
+mv $PKG/etc/rc.d/rc.wicd $PKG/etc/rc.d/rc.wicd.new
+
+# Compress the man pages and add a bit to the package docs
+( cd $PKG/usr/man || exit 1
+ find . -type f -exec gzip -9 {} \;
+ for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
+)
+cat $CWD/README.SLACKWARE > $PKG/usr/doc/$PRGNAM-$VERSION/README.SLACKWARE
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -c n -l y $TMP/$PRGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/extra/source/yasm/slack-desc b/extra/source/yasm/slack-desc
new file mode 100644
index 000000000..fc28253f2
--- /dev/null
+++ b/extra/source/yasm/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+yasm: yasm (complete rewrite of the NASM assembler)
+yasm:
+yasm: Yasm is a complete rewrite of the NASM assembler under the "new" BSD
+yasm: License (some portions are under other licenses, see COPYING for
+yasm: details). Yasm currently supports the x86 and AMD64 instruction sets,
+yasm: accepts NASM and GAS assembler syntaxes, outputs binary, ELF32, ELF64,
+yasm: 32 and 64-bit Mach-O, RDOFF2, COFF, Win32, and Win64 object formats,
+yasm: and generates source debugging information in STABS, DWARF 2, and
+yasm: CodeView 8 formats.
+yasm:
+yasm: yasm home: http://www.tortall.net/projects/yasm/
diff --git a/extra/source/yasm/yasm.SlackBuild b/extra/source/yasm/yasm.SlackBuild
new file mode 100755
index 000000000..0c71cdae3
--- /dev/null
+++ b/extra/source/yasm/yasm.SlackBuild
@@ -0,0 +1,204 @@
+#!/bin/sh
+# $Id: yasm.SlackBuild,v 1.7 2009/05/12 20:24:31 root Exp root $
+# Copyright (c) 2008 Eric Hameleers <alien@slackware.com>
+# All rights reserved.
+#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+# -----------------------------------------------------------------------------
+#
+# Slackware SlackBuild script
+# ===========================
+# By: Eric Hameleers <alien@slackware.com>
+# For: yasm
+# Descr: complete rewrite of the NASM assembler
+# URL: http://www.tortall.net/projects/yasm/
+# Needs:
+# Changelog:
+# 0.7.1-1: 16/Jun/2008 by Eric Hameleers <alien@slackware.com>
+# * Initial build.
+# 0.7.2-1: 08/dec/2008 by Eric Hameleers <alien@slackware.com>
+# * Update.
+# 0.8.0-1: 12/may/2009 by Eric Hameleers <alien@slackware.com>
+# * Update.
+#
+# Run 'sh yasm.SlackBuild' to build a Slackware package.
+# The package (.txz) plus descriptive .txt file are created in /tmp .
+# Install using 'installpkg'.
+#
+# -----------------------------------------------------------------------------
+
+PRGNAM=yasm
+VERSION=${VERSION:-0.8.0}
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-1}
+TAG=${TAG:-}
+
+DOCS="ABOUT-NLS AUTHORS ChangeLog COPYING GNU_* NEWS README *.txt"
+
+# If you want to disable python bindings, set ENABLE_PYTHON to "NO".
+# Building python support on Slackware 12.0 and older will fail (missing Pyrex).
+ENABLE_PYTHON=${ENABLE_PYTHON:-"YES"}
+
+# Where do we look for sources?
+SRCDIR=$(cd $(dirname $0); pwd)
+
+# Place to build (TMP) package (PKG) and output (OUTPUT) the program:
+TMP=${TMP:-/tmp/build}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+SOURCE="$SRCDIR/${PRGNAM}-${VERSION}.tar.gz"
+SRCURL="http://www.tortall.net/projects/${PRGNAM}/releases/${PRGNAM}-${VERSION}.tar.gz"
+
+##
+## --- with a little luck, you won't have to edit below this point --- ##
+##
+
+# Exit the script on errors:
+set -e
+trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
+# Catch unitialized variables:
+set -u
+P1=${1:-1}
+
+case "$ARCH" in
+ i486) SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ s390) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ powerpc) SLKCFLAGS="-O2"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+ x86_64) SLKCFLAGS="-O2 -fPIC"
+ SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"
+ ;;
+ athlon-xp) SLKCFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
+ SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ ;;
+esac
+
+# Create working directories:
+mkdir -p $OUTPUT # place for the package to be saved
+mkdir -p $TMP/tmp-$PRGNAM # location to build the source
+mkdir -p $PKG # place for the package to be built
+rm -rf $PKG/* # always erase old package's contents
+rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build
+
+# Source file availability:
+if ! [ -f ${SOURCE} ]; then
+ if ! [ "x${SRCURL}" == "x" ]; then
+ # Check if the $SRCDIR is writable at all - if not, download to $OUTPUT
+ [ -w "$SRCDIR" ] || SOURCE="$OUTPUT/$(basename $SOURCE)"
+ echo "Source '$(basename ${SOURCE})' not available yet..."
+ echo "Will download file to $(dirname $SOURCE)"
+ wget -nv -T 20 -O "${SOURCE}" "${SRCURL}" || true
+ if [ $? -ne 0 -o ! -s "${SOURCE}" ]; then
+ echo "Downloading '$(basename ${SOURCE})' failed... aborting the build."
+ mv -f "${SOURCE}" "${SOURCE}".FAIL
+ exit 1
+ fi
+ else
+ echo "File '$(basename ${SOURCE})' not available... aborting the build."
+ exit 1
+ fi
+fi
+
+if [ "$P1" == "--download" ]; then
+ echo "Download complete."
+ exit 0
+fi
+
+# --- PACKAGE BUILDING ---
+
+echo "++"
+echo "|| $PRGNAM-$VERSION"
+echo "++"
+
+cd $TMP/tmp-$PRGNAM
+echo "Extracting the source archive(s) for $PRGNAM..."
+tar -xvf ${SOURCE}
+cd ${PRGNAM}-${VERSION}
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+if [ "$ENABLE_PYTHON" = "YES" ]; then
+ PYTHONSTUFF="--enable-python --enable-python-bindings"
+else
+ PYTHONSTUFF=""
+fi
+
+echo Building ...
+LDFLAGS="$SLKLDFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS" \
+./configure --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ ${PYTHONSTUFF} \
+ --program-prefix= \
+ --program-suffix= \
+ --build=$ARCH-slackware-linux \
+ 2>&1 | tee $OUTPUT/configure-${PRGNAM}.log
+make 2>&1 | tee $OUTPUT/make-${PRGNAM}.log
+
+# Install all the needed stuff to the package dir
+# Use installwatch if available, to produce a logfile of the installation
+# process that is more easily readable:
+if $(which installwatch > /dev/null 2>&1); then
+ installwatch -o $OUTPUT/install-${PRGNAM}.log make DESTDIR=$PKG install
+else
+ make DESTDIR=$PKG install 2>&1 |tee $OUTPUT/install-${PRGNAM}.log
+fi
+
+# Add documentation:
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true
+cp -a $SRCDIR/$(basename $0) $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
+find $PKG/usr/doc -type f -exec chmod 644 {} \;
+
+# Remove empty share directory:
+rmdir $PKG/usr/share || true
+
+# Compress the man page(s):
+if [ -d $PKG/usr/man ]; then
+ find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
+ for i in $(find $PKG/usr/man -type l -name "*.?") ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+fi
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Add a package description:
+mkdir -p $PKG/install
+cat $SRCDIR/slack-desc > $PKG/install/slack-desc
+
+# Build the package:
+cd $PKG
+makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
+cd $OUTPUT
+md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz.md5
+cd -
+cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txt
+
diff --git a/extra/wicd/README.SLACKWARE b/extra/wicd/README.SLACKWARE
new file mode 100644
index 000000000..47a9cba99
--- /dev/null
+++ b/extra/wicd/README.SLACKWARE
@@ -0,0 +1,21 @@
+After installing this package, make sure the /etc/rc.d/rc.wicd
+script is executable; if necessary, do:
+ chmod +x /etc/rc.d/rc.wicd
+
+Results have varied, but you will probably need/want to remove
+any references to interfaces from /etc/rc.d/rc.inet1.conf - in
+other words, make that file look as if netconfig has never been
+run.
+
+When you start X, you should see a wicd icon in the system tray;
+click on it to open the gui interface and configure as desired.
+Your user account will need to be a member of the 'netdev' group
+in order to use wicd.
+
+Note that urwid will need to be installed if you want to use the
+curses client.
+
+Also, if you don't have kde installed, you won't have a graphical
+sudo client available; you might wish to consider ktsuss from
+SlackBuilds.org.
+