summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
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 00000000..a4c58866
--- /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 00000000..551ba866
--- /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 00000000..def095f2
--- /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 00000000..5e0f5d61
--- /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 00000000..3098aed1
--- /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 00000000..153853dc
--- /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 00000000..84388cb8
--- /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 00000000..b4ffbd4f
--- /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 00000000..fdf32ea1
--- /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 00000000..5118d724
--- /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 00000000..3b84c304
--- /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 00000000..e5ba9aa4
--- /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 00000000..c5895974
--- /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 00000000..d9962499
--- /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 00000000..1904ec59
--- /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 00000000..e7fb949a
--- /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 00000000..480e38fc
--- /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 00000000..417cb636
--- /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 00000000..bef3bc18
--- /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 00000000..6c1d4e9f
--- /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 00000000..f3bead79
--- /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 00000000..2ae21207
--- /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 00000000..389b2689
--- /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 00000000..0e8bde04
--- /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 00000000..600209ca
--- /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 00000000..c21e5de2
--- /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 00000000..e3b943e2
--- /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 00000000..6c984d58
--- /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 00000000..3a1ec7be
--- /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 00000000..ed0bc73d
--- /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 00000000..916ee370
--- /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 00000000..f98d2dff
--- /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 00000000..bc5fc2ae
--- /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 00000000..5e21d170
--- /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 00000000..a617c18c
--- /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 00000000..f50472a1
--- /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 00000000..c7b45613
--- /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 00000000..186fbe7b
--- /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 00000000..52856f6a
--- /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 00000000..68190b0b
--- /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 00000000..4f7c8f3a
--- /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 00000000..791b5e68
--- /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 00000000..ef06c1dc
--- /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 00000000..d197ea32
--- /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 00000000..05670327
--- /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 00000000..b6e75d1d
--- /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 00000000..d57fb031
--- /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 00000000..490877c4
--- /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 00000000..c4e23bb5
--- /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 00000000..74453f21
--- /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 00000000..2d6fca5a
--- /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 00000000..880037c2
--- /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 00000000..d32d283e
--- /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 00000000..dc7ea57e
--- /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 00000000..2212eb85
--- /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 00000000..cabaa7f1
--- /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 00000000..d37232fc
--- /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 00000000..5e847c96
--- /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 00000000..e376b59a
--- /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 00000000..cf91510f
--- /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 00000000..0f8c6678
--- /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 00000000..c5ff5d0e
--- /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 00000000..facfd02b
--- /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 00000000..abefb3be
--- /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 00000000..8ce980e5
--- /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 00000000..4003e63a
--- /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 00000000..526b8f3d
--- /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 00000000..b6eb14f1
--- /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 00000000..47a9cba9
--- /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 00000000..2c0f7d98
--- /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 00000000..47cf875f
--- /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 00000000..21d6d454
--- /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 00000000..fc28253f
--- /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 00000000..0c71cdae
--- /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 00000000..47a9cba9
--- /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.
+