1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/yacy_ynh.git synced 2024-09-03 18:05:59 +02:00

Remove sources

This commit is contained in:
Moul 2014-07-09 18:10:24 +02:00
parent 843c95b1ba
commit 93e67ddab3
2227 changed files with 0 additions and 345156 deletions

View file

@ -1,51 +0,0 @@
Coders:
=======
Michael Christen (Orbiter)
Stephan Hermens
Marc Nause
Thomas Quella
Martin Thelian (theli)
Timo Leise
Roland Ramthun
Alexander Schier (Allo)
Matthias Söhnholz
Jan Sandbrink (NN)
Franz Brausse (FB, karlchenofhell)
David Wieditz
Designers:
=========
Thomas Quella
Natali Christen
Packagers:
==========
slick
Alexander Schier
Franz Brausse
Translators:
============
Roland Ramthun
Oliver Wunder (daburna)
Jan Sandbrink (NN)
Riccardo Lemmi
Rostislav Svoboda
Contributors:
=============
Matthias Kempka
YaCy-Bar:
=========
Martin Thelian (theli)
Alexander Schier (allo)
Oliver Wunder (daburna)
Florian Richter (flori)
Thanks to:
==========
Wolfgang Sander-Beurmann for ressources for Demo-Peer, and many public relations.
All of our users for helping the YaCy-Network grow.
For more information see http://yacy.net

View file

@ -1,20 +0,0 @@
All parts of the software known as YaCy are covered under the
terms of the GNU Lesser General Public License (files in source/net/yacy/cora) or
the GNU General Public License (all other files) as published by the
Free Software Foundation; either version 2 of the License, or (at your option)
any later version unless stated otherwise.
You should have received a copy of the GNU General Public License
along with this software; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT OWNER OR 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.

View file

@ -1,14 +0,0 @@
Apache Jakarta HttpClient
Copyright 1999-2007 The Apache Software Foundation
Apache Commons FileUpload
Copyright 2002-2008 The Apache Software Foundation
Apache Commons IO
Copyright 2001-2008 The Apache Software Foundation
This product includes software developed by
The Apache Software Foundation (http://www.apache.org/).
This product includes software developed by
SuperBonBon Industries (http://www.sbbi.net/)

View file

@ -1,8 +0,0 @@
YaCy lng highlighting for Notepad++
To enable the highlighting of YaCy lng files simply copy the file userDefineLang.xml into your %APPDATA%\Notepad++ directory.
If you installed Notepad++ with the "Dont use %APPDATA%" option copy the file directly into the Notepad++ root directory.
If you have already created other user defined languages merge the content of your existing userDefineLang.xml with the contents of ours.
Now open one of the lng files and highlighting should work instantly. "YaCy lng" is now available in the "Language"-menue, too.

View file

@ -1,42 +0,0 @@
<!-- This is a language definition file for the YaCy translation .lng files to be used for the Notepad++ editor available here: http://notepad-plus.sourceforge.net -->
<!-- Put this file into your %APPDATA%\Notepad++ directory to have syntax highlighting support for the YaCy .lng files automatically -->
<!-- The language also shows in the Language menu as "YaCy lng" in the user defined section -->
<!-- Known bugs: - Unescaped # also are displayed as comments in the middle of the line -->
<!-- 2010-01-20 Tested with Notepad++ v4.2.2 by Michael Benz (mikeworks) -->
<!-- 2010-01-20 Tested with Notepad++ v5.6.4 by Michael Benz (mikeworks) -->
<NotepadPlus>
<UserLang name="YaCy lng" ext="lng">
<Settings>
<Global caseIgnored="no" />
<TreatAsSymbol comment="no" commentLine="yes" />
<Prefix words1="no" words2="no" words3="no" words4="no" />
</Settings>
<KeywordLists>
<Keywords name="Delimiters">&quot;&apos;0&quot;&apos;0</Keywords>
<Keywords name="Folder+">#---------------------------</Keywords>
<Keywords name="Folder-">#-----------------------------</Keywords>
<Keywords name="Operators">=</Keywords>
<Keywords name="Comment">1 2 0#</Keywords>
<Keywords name="Words1">#File:</Keywords>
<Keywords name="Words2"></Keywords>
<Keywords name="Words3"></Keywords>
<Keywords name="Words4"></Keywords>
</KeywordLists>
<Styles>
<WordsStyle name="DEFAULT" styleID="11" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="FOLDEROPEN" styleID="12" fgColor="FF0000" bgColor="FFFFFF" fontName="" fontStyle="3" />
<WordsStyle name="FOLDERCLOSE" styleID="13" fgColor="FF0000" bgColor="FFFFFF" fontName="" fontStyle="3" />
<WordsStyle name="KEYWORD1" styleID="5" fgColor="FF0000" bgColor="FFFFFF" fontName="" fontStyle="0" fontSize="10" />
<WordsStyle name="KEYWORD2" styleID="6" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="1" />
<WordsStyle name="KEYWORD3" styleID="7" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="KEYWORD4" styleID="8" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="COMMENT" styleID="1" fgColor="00AA00" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="COMMENT LINE" styleID="2" fgColor="00AA00" bgColor="FFFFFF" fontName="" fontStyle="2" />
<WordsStyle name="NUMBER" styleID="4" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="OPERATOR" styleID="10" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="1" />
<WordsStyle name="DELIMINER1" styleID="14" fgColor="8080C0" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="DELIMINER2" styleID="15" fgColor="8080C0" bgColor="FFFFFF" fontName="" fontStyle="0" />
<WordsStyle name="DELIMINER3" styleID="16" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" />
</Styles>
</UserLang>
</NotepadPlus>

View file

@ -1 +0,0 @@
rundll32 url.dll,FileProtocolHandler "http://localhost:8090"

View file

@ -1 +0,0 @@
<meta http-equiv="refresh" content="0;url=http://localhost:8090/">

View file

@ -1,112 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>CFBundleName</key>
<string>YaCy</string>
<key>CFBundleIdentifier</key>
<string>net.yacy.yacy</string>
<key>CFBundleVersion</key>
<string>@REPL_VERSION@</string>
<key>CFBundleAllowMixedLocalizations</key>
<string>true</string>
<key>CFBundleExecutable</key>
<string>JavaApplicationStub</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleIconFile</key>
<string>YaCy_2013_Icon.icns</string>
<key>Java</key>
<dict>
<key>VMOptions</key>
<string>-server -d64 -Xmx600m -Xms90m -Djava.net.preferIPv4Stack=true -Dfile.encoding=UTF-8 -Dsolr.directoryFactory=solr.MMapDirectoryFactory</string>
<key>WorkingDirectory</key>
<string>$APP_PACKAGE/Contents/Resources/Java</string>
<key>MainClass</key>
<string>net.yacy.yacy</string>
<key>JVMVersion</key>
<string>1.5+</string>
<key>Arguments</key>
<string>-gui Library/YaCy</string>
<key>ClassPath</key>
<array>
<string>$JAVAROOT/htroot</string>
<string>$JAVAROOT/lib/activation.jar</string>
<string>$JAVAROOT/lib/apache-mime4j-0.6.jar</string>
<string>$JAVAROOT/lib/arq-2.8.7.jar</string>
<string>$JAVAROOT/lib/bcmail-jdk15-145.jar</string>
<string>$JAVAROOT/lib/bcprov-jdk15-145.jar</string>
<string>$JAVAROOT/lib/commons-codec-1.7.jar</string>
<string>$JAVAROOT/lib/commons-compress-1.4.1.jar</string>
<string>$JAVAROOT/lib/commons-fileupload-1.2.2.jar</string>
<string>$JAVAROOT/lib/commons-io-2.1.jar</string>
<string>$JAVAROOT/lib/commons-jxpath-1.3.jar</string>
<string>$JAVAROOT/lib/commons-lang-2.6.jar</string>
<string>$JAVAROOT/lib/commons-logging-1.1.3.jar</string>
<string>$JAVAROOT/lib/fontbox-1.8.3.jar</string>
<string>$JAVAROOT/lib/geronimo-stax-api_1.0_spec-1.0.1.jar</string>
<string>$JAVAROOT/lib/guava-15.0.jar</string>
<string>$JAVAROOT/lib/htmllexer.jar</string>
<string>$JAVAROOT/lib/httpclient-4.3.1.jar</string>
<string>$JAVAROOT/lib/httpcore-4.3.jar</string>
<string>$JAVAROOT/lib/httpmime-4.3.1.jar</string>
<string>$JAVAROOT/lib/icu4j-core.jar</string>
<string>$JAVAROOT/lib/iri-0.8.jar</string>
<string>$JAVAROOT/lib/J7Zip-modified.jar</string>
<string>$JAVAROOT/lib/jakarta-oro-2.0.8.jar</string>
<string>$JAVAROOT/lib/jaudiotagger-2.0.4-20111207.115108-15.jar</string>
<string>$JAVAROOT/lib/jcifs-1.3.17.jar</string>
<string>$JAVAROOT/lib/jcl-over-slf4j-1.7.2.jar</string>
<string>$JAVAROOT/lib/jempbox-1.8.3.jar</string>
<string>$JAVAROOT/lib/jena-2.6.4.jar</string>
<string>$JAVAROOT/lib/jsch-0.1.50.jar</string>
<string>$JAVAROOT/lib/json-simple-1.1.1.jar</string>
<string>$JAVAROOT/lib/log4j-over-slf4j-1.7.2.jar</string>
<string>$JAVAROOT/lib/lucene-analyzers-common-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-analyzers-phonetic-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-classification-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-codecs-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-core-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-facet-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-grouping-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-highlighter-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-join-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-memory-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-misc-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-queries-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-queryparser-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-spatial-4.6.0.jar</string>
<string>$JAVAROOT/lib/lucene-suggest-4.6.0.jar</string>
<string>$JAVAROOT/lib/metadata-extractor-2.6.2.jar</string>
<string>$JAVAROOT/lib/noggit-0.5.jar</string>
<string>$JAVAROOT/lib/pdfbox-1.8.3.jar</string>
<string>$JAVAROOT/lib/poi-3.6-20091214.jar</string>
<string>$JAVAROOT/lib/poi-scratchpad-3.6-20091214.jar</string>
<string>$JAVAROOT/lib/sax-2.0.1.jar</string>
<string>$JAVAROOT/lib/servlet-api-2.5-20081211.jar</string>
<string>$JAVAROOT/lib/slf4j-api-1.7.2.jar</string>
<string>$JAVAROOT/lib/slf4j-jdk14-1.7.2.jar</string>
<string>$JAVAROOT/lib/solr-core-4.6.0.jar</string>
<string>$JAVAROOT/lib/solr-solrj-4.6.0.jar</string>
<string>$JAVAROOT/lib/spatial4j-0.3.jar</string>
<string>$JAVAROOT/lib/webcat-0.1-swf.jar</string>
<string>$JAVAROOT/lib/wstx-asl-3.2.9.jar</string>
<string>$JAVAROOT/lib/xercesImpl.jar</string>
<string>$JAVAROOT/lib/xml-apis.jar</string>
<string>$JAVAROOT/lib/yacycore.jar</string>
<string>$JAVAROOT/lib/zookeeper-3.4.5.jar</string>
</array>
<key>Properties</key>
<dict>
<key>apple.laf.useScreenMenuBar</key>
<string>true</string>
</dict>
</dict>
</dict>
</plist>

View file

@ -1 +0,0 @@
APPL????

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

View file

@ -1,29 +0,0 @@
<?php
/*
This file serves the latest Java version locations for the Windows installer.
JAVA VERSION
http://www.java.com/de/download/manual.jsp BundleId +1 / +2
Use this User-Agent to see the 64bit version link:
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0)
$_GET['what'] should be 'jre'
$_GET['version'] 32 or 64 (bit)
$_GET['yacyrevnr'] not used yet
*/
if ($_GET['what'] == 'jre') {
if($_GET['version'] == 32)
// jre-6u29-windows-i586.exe
header('Location: http://javadl.sun.com/webapps/download/AutoDL?BundleId=57241');
if($_GET['version'] == 64)
// jre-6u29-windows-x64.exe
header('Location: http://javadl.sun.com/webapps/download/AutoDL?BundleId=56699');
}
?>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

View file

@ -1,145 +0,0 @@
<?php
/* by Allo, KarlchenOfHell */
$page = 'error.html';
$peername = 'Error';
$seedurl = 'http://www.anomic.de/yacy/seed.txt'; // remote seed-file
$seedfile = 'seed.txt'; // local cache file, needs write access
$hostlength = 24; // EDIT THIS! length of the hostname + 1 (strlen(".peer.karlchenofhell.org"))
function get($url, $filename) {
if(!file_exists($filename) || (time()-filectime($filename)) > 600){
$content=file_get_contents($url);
$file=fopen($filename, 'w');
fwrite($file, $content);
fclose($file);
}else{
$content=file_get_contents($filename);
}
return $content;
}
class peer {
var $seed;
function peer($seed) {
switch (substr($seed, 0, 1)) {
case 'p': $plainlist = substr($seed, 2); break; // plain text
case 'b': $plainlist = base64_decode(substr($seed, 2)); break; // base64-encoded
default: $plainlist = substr($seed, 2); break;
}
$plainlist = substr($plainlist, 1, -1); // kill '{' on beginning and '}' at the end
$list = explode(',', $plainlist);
$r = array();
foreach ($list as $value) {
$equal = strpos($value, '=');
$r[substr($value, 0, $equal)] = substr($value, $equal + 1);
}
$this->seed = $r;
}
function getHash() { return $this->seed['Hash']; }
function getIPType() { return $this->seed['IPType']; }
function getTags() { return $this->seed['Tags']; }
function getPort() { return $this->seed['Port']; }
function getIP() { return $this->seed['IP']; }
function getRI() { return $this->seed['rI']; }
function getUptime() { return $this->seed['Uptime']; }
function getVersion() { return $this->seed['Version']; }
function getUTC() { return $this->seed['UTC']; }
function getPeerType() { return $this->seed['PeerType']; }
function getSI() { return $this->seed['sI']; }
function getLastSeen() { return $this->seed['LastSeen']; }
function getName() { return $this->seed['Name']; }
function getCCount() { return $this->seed['CCount']; }
function getSCount() { return $this->seed['SCount']; }
function getNews() { return $this->seed['news']; }
function getUSpeed() { return $this->seed['USpeed']; }
function getCRTCount() { return $this->seed['CRTCnt']; }
function getCRWCount() { return $this->seed['CRWCnt']; }
function getBirthDate() { return $this->seed['BDate']; }
function getLinks() { return $this->seed['LCount']; }
function getRU() { return $this->seed['rU']; }
function getWords() { return $this->seed['ICount']; }
function getSU() { return $this->seed['sU']; }
function getISpeed() { return $this->seed['ISpeed']; }
function getNCount() { return $this->seed['NCount']; }
function getFlags() { return $this->seed['Flags']; }
}
function decodeSeedList($list) {
$seeds = explode("\n", $list);
$r = array();
foreach ($seeds as $seed) {
$peer = new peer($seed);
$r[strtolower($peer->getName())] = $peer;
}
return $r;
}
###peername.yacypeer.dyndns.org
###rewrite:
###RewriteCond %{REQUEST_URI} /error.html
###RewriteRule ^/(.*) /error.html [L]
###RewriteRule ^/(.*) /index.php?url=$1 [L]
$name = $_SERVER['SERVER_NAME'];
$name = substr($name, 0, strlen($name) - $hostlength);
###domain.org/peername/*
###rewrite:
###RewriteRule ^/(.*) /error.html [L]
###RewriteRule ^/([^\/]*)/(.*) /index.php?name=$1&url=$2 [L]
#$name=$_GET['name'];
$seedfile = get($seedurl, $seedfile);
$peers = decodeSeedList($seedfile);
$peer = $peers[strtolower($name)];
if (strlen($name) == 0 || $peer == null) {
// peer-list
?>
<html>
<head>
<title>Active YaCy-Peers</title>
</head>
<body>
<table border="2" cellpadding="2" cellspacing="0">
<tr>
<th>Name</th>
<th>Uptime</th>
</tr><?
foreach ($peers as $peer) {
echo '
<tr>
<td><a href="http://'. $peer->getIP() .':'. $peer->getPort() .'">'. $peer->getName() .'</a></td>
<td>'. $peer->getUptime() .'</td>
</tr>';
}?>
</table>
</body>
</html>
<?
} else {
if ($peer) {
$peername=$peer->getName();
$page='http://'. $peer->getIP() .':'.$peer->getPort() .'/';
}
?>
<html>
<head>
<title><? echo $peername; ?></title>
</head>
<frameset rows="*">
<frame src="<? echo $page/*.$_GET['url']*/; ?>" />
</frameset>
</html>
<?
}

View file

@ -1,504 +0,0 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
not price. Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that
there is no warranty for the free library. Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License. This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License. We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.
When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General
Public License permits more lax criteria for linking other code with
the library.
We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License. It also provides other free software developers Less
of an advantage over competing non-free programs. These disadvantages
are the reason we use the ordinary General Public License for many
libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard. To achieve this, non-free programs must be
allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software. For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Ty Coon>, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -1,10 +0,0 @@
#!/bin/sh
cd /tmp
FILE=`tempfile`.html
wget "$1" -O $FILE -k
convert $FILE -resize 168x128 "$2"
if [ -e "${2%.png}"-0.png ];then
mv "${2%.png}"-0.png "${2}"
rm "${2%.png}"-[0-9]*.png
fi
rm $FILE

View file

@ -1,308 +0,0 @@
# Author: Franz Brauße <mike-nought@gmx.de>
# Date: 14.10.2006
# based on the spec-file of 0.48-3
# Distributed under the terms of the GNU General Public Licens v2
Summary: P2P search engine, web-crawler and proxy
Name: yacy
Version: @REPL_VERSION@_@REPL_REVISION_NR@
Release: 3
License: GPL
Group: Application/Internet
Source0: git@gitorious.org:yacy/rc1.git
URL: http://yacy.net
Requires: bash
Requires: sudo
Requires: coreutils
Requires: util-linux
Requires: grep
Requires: sed
Requires: wget
Requires: jre >= 1.4.2
BuildArch: noarch
BuildRoot: @REPL_YACY_ROOT_DIR@/RELEASE/BUILD
Packager: Franz Brauße <mike-nought@gmx.de>
%description
YaCy is a Java-based peer-2-peer search engine.
It contains a proxy which gathers all the web-pages
you retrieve with it. All private data stays private and
is not indexed or processed in any way. Furthermore
you'll get a individual .yacy-domain which makes you
independent of the traditional DNS system.
Also included in YaCy is a Wiki, a P2P-message-system, a
Blog and a bookmark management system. YaCy can be configured
to set special limits for proxy-users i.e. a maximum quota or
online-time.
%package libx
Summary: Addon package containing parsers, etc.
License: GPL
Group: Application/Internet
Requires: yacy
%description libx
This package contains the following parsers:
OpenDocument V2, MimeType, Rich Text Format, Word Document,
vCard, rpm, Bzip2, Acrobat Portable Document, RSS/Atom Feed,
Zip, tar, Power Point, gzip
Additionally it allows port forwarding via secure channel,
seed uploading via SCP and provides a SOAP API.
# %prep # nothing to be done here, ant already prepared everything nicely for us
# %build # ant did this for us as well... such a nice tool
%pre
# check whether group 'yacy' already exists, if not it will be created
#if ! getent group yacy >> /dev/null; then
# echo "adding group yacy"
# groupadd -r yacy
#fi
# check whether user 'yacy' already exists, if not it will be created
if ! getent passwd yacy >> /dev/null; then
echo "adding user yacy"
useradd yacy -p `dd count=1 if=/dev/urandom status=noxfer 2> /dev/null | md5sum | cut -c0-15` -r
fi
%install
cd ../..
rm -rf $RPM_BUILD_ROOT
# define directories yacy will use
YACYCDIR="/usr/share/yacy" # all the other shit
YACYDDIR="/usr/share/doc/yacy" # documentation
YACYLDIR="/usr/lib/yacy" # classes / jars
DATADIR="/var/lib/yacy" # DB, SETTINGS, WORK, etc. - all in DATA
LOGDIR="/var/log/yacy" # logs of yacy, basically DATA/LOG
install -d ${RPM_BUILD_ROOT}{$YACYCDIR,$YACYDDIR,$YACYLDIR/libx,$DATADIR,$LOGDIR}
# copy all other files
cp -r htroot locales ranking skins ${RPM_BUILD_ROOT}$YACYCDIR/
cp -r defaults classes lib libx ${RPM_BUILD_ROOT}$YACYLDIR/
cp -r doc ${RPM_BUILD_ROOT}$YACYDDIR/
cp *.sh build.properties superseed.txt httpd.mime yacy.badwords.example yacy.logging yacy.stopwords* yacy.yellow ${RPM_BUILD_ROOT}$YACYCDIR/
cp AUTHORS COPYRIGHT ChangeLog gpl.txt readme.txt ${RPM_BUILD_ROOT}$YACYDDIR/
install -m 744 *.sh ${RPM_BUILD_ROOT}$YACYCDIR/ # start/stop/kill scripts
rm -r `find ${RPM_BUILD_ROOT}/ -type d -name '.svn'` # delete unwanted .svn-folders
rm -r `find ${RPM_BUILD_ROOT}/ -type d -name '.git'` # delete unwanted .git-folders
# location for init-script
install -d ${RPM_BUILD_ROOT}/etc/init.d/
%post
# link DATA- and LOG-directories to YaCy-folder
ln -s /usr/lib/yacy/classes /usr/share/yacy/classes # classes linken
ln -s /usr/lib/yacy/lib /usr/share/yacy/lib # lib linken
ln -s /usr/lib/yacy/libx /usr/share/yacy/libx # libx linken
ln -s /var/lib/yacy /usr/share/yacy/DATA # DATA linken
echo "created link /usr/share/yacy/DATA -> /var/lib/yacy" # user-feedback
if [ ! -L /var/lib/yacy/LOG ]; then
ln -s /var/log/yacy /var/lib/yacy/LOG # LOG linken
echo "created link /var/lib/yacy/LOG -> /var/log/yacy" # user-feedback
fi
if [ ! -e /var/lib/yacy/SETTINGS ]; then
mkdir /var/lib/yacy/SETTINGS;
chown yacy /var/lib/yacy/SETTINGS;
fi
if [ ! -e /etc/yacy ]; then ln -s /var/lib/yacy/SETTINGS /etc/yacy; fi # SETTINGS linken
chown yacy -R /var/lib/yacy
chown yacy -R /var/log/yacy
chmod +x /usr/share/yacy/startYACY.sh
chmod +x /usr/share/yacy/stopYACY.sh
chmod +x /usr/share/yacy/killYACY.sh
## language check - not wanted
#LNG=""
#LNT=""
#if [ ! -z $LC_TYPE ]; then LNT=${LC_TYPE%_*}; fi
#if [ ! -z $LANG ]; then LNT=${LANG%_*}; fi
#if [ $LNT == de -o $LNT == it -o $LNT == sk ]; then # translation exists
# # test whether settings-directory exists
# if [ ! -d /var/lib/yacy/SETTINGS ]; then mkdir /var/lib/yacy/SETTINGS; chown yacy:root /var/lib/yacy/SETTINGS; fi
# echo "htLocaleSelection=$LNT.lng" >> /var/lib/yacy/SETTINGS/yacy.conf
# chown yacy:root /var/lib/yacy/SETTINGS/yacy.conf
#fi
# we need an init-script
cat > /etc/init.d/yacy <<EOF
#!/bin/sh
# YaCy init script
# Author: Franz Brauße <mike-nought@gmx.de>
# Date: 14.10.2006
# License: Distributed under the terms of the GNU General Public Licens v2
# This file belongs to the YaCy RPM package
# TODO
# - save PID when started in debug-mode
### BEGIN INIT INFO
# Provides: yacy
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 5
# Default-Stop:
# Description: yacy is a distributed search engine
# config-file is /etc/yacy/yacy.conf
### END INIT INFO
YACY_HOME="/usr/share/yacy"
DATA_HOME="/var/lib/yacy"
PID_FILE="/var/run/yacy.pid"
JAVA=\`which java\ 2> /dev/null\`
if [ ! -x "\$JAVA" ]; then
echo "The 'java' command is not executable."
echo "Either you have not installed java or it is not in your PATH"
#Cron supports setting the path in
#echo "Has this script been invoked by CRON?"
#echo "if so, please set PATH in the crontab, or set the correct path in the variable in this script."
if [ \$1 == "stop" -a \$2 == "--force" ]; then exit 0; else exit 1; fi
fi
# get arguments for java
if [ -f \$DATA_HOME/SETTINGS/yacy.conf ]; then
i=\`grep javastart_Xmx \$DATA_HOME/SETTINGS/yacy.conf\`;
JAVA_MAX="-\${i#javastart_Xmx=}";
i=\`grep javastart_Xms \$DATA_HOME/SETTINGS/yacy.conf\`;
JAVA_MIN="-\${i#javastart_Xms=}";
fi
CLASSPATH="\$YACY_HOME/classes:."
for N in \$YACY_HOME/lib/*.jar; do CLASSPATH="\$CLASSPATH:\$N"; done
if [ -d \$YACY_HOME/libx ]; then
for N in \$YACY_HOME/libx/*.jar; do CLASSPATH="\$CLASSPATH:\$N"; done
fi
ME=\$0
if [ "\$1" = "restart" ]; then
shift
\$ME stop
\$ME start \$*
exit 0
fi
WTF=\$1; shift
if [ "\$1" == "--max" ]; then JAVA_MAX="-Xmx\$2"; shift; shift; fi
if [ "\$1" == "--min" ]; then JAVA_MIN="-Xms\$2"; shift; shift; fi
if [ "\$1" == "--nice" ]; then NICE="nice -n \$2"; shift; shift; fi
if [ "\$1" == "--debug" ]; then DEBUG="-d"; shift; fi
shift
cd \$YACY_HOME
if [ "\$JAVA_MAX" == "-" ]; then JAVA_MAX=""; fi
if [ "\$JAVA_MIN" == "-" ]; then JAVA_MIN=""; fi
case "\$WTF" in
start)
if [ -e \$PID_FILE ]; then
echo "YaCy seems to be running. If not, delete the file \$PID_FILE."
exit 1
fi
echo -n "Starting YaCy... "
CMD="sudo -u yacy \$NICE \$JAVA -Djava.awt.headless=true \$JAVA_MAX \$JAVA_MIN -classpath \$CLASSPATH yacy \$* & pid=\\\$!; echo \\\$pid > \$PID_FILE"
if [ \$DEBUG ]; then
\$CMD
else
eval \$CMD &> /dev/null
fi
echo "done"
exit 0
;;
stop)
echo "Shutting down YaCy, please be patient. Waiting maximal 60 seconds before killing the process... "
\$YACY_HOME/stopYACY.sh
if [ ! -e \$PID_FILE ]; then
echo "PID-file not found: YaCy doesn't appear to be running. You eventually have to kill the process yourself."
exit 1
else
pid=\`cat \$PID_FILE\`
fi
i=0
while test -d /proc/\$pid; do
sleep 2;
i=\$[i+2];
if [ \$i -ge 60 ]; then
echo -n "Now killing: ";
kill -9 \$pid;
echo "done"
break;
fi
done
rm \$PID_FILE
exit 0
;;
status)
echo -n "YaCy is "
if [ ! -e \$PID_FILE -o ! -d /proc/`cat \$PID_FILE` ]; then
echo -n "not "
fi
echo "running."
exit 0
;;
kill)
echo -n "Killing YaCy: "
kill -9 \`cat \$PID_FILE\`
rm \$PID_FILE
echo "done"
exit 0
;;
*)
echo "Usage: /etc/init.d/yacy {start|restart} [--max RAM] [--min RAM] [--nice LEVEL] [--debug] [YACY_ARGUMENTS]"
echo " {stop|kill|status}"
echo ""
echo " --max RAM[{k|M|G}] Maximum RAM YaCy may use"
echo " --min RAM[{k|M|G}] Initial RAM YaCY shall use"
echo " --nice LEVEL Enter desired nice-level of YaCy-process"
echo " --debug Active mode, process will not be backgrounded"
exit 1
;;
esac
EOF
#chmod +x /etc/init.d/yacy
chmod 744 /etc/init.d/yacy
%preun
if [ -x /etc/init.d/yacy ]; then /etc/init.d/yacy stop --force; fi
%postun
rm -r /usr/share/yacy
rm -r /usr/lib/yacy
rm -r /usr/share/doc/yacy
if [ -e /etc/init.d/yacy ]; then rm -f /etc/init.d/yacy; fi
if [ `getent passwd yacy` ]; then userdel yacy &> /dev/null; fi
%clean
rm -rf $RPM_BUILD_ROOT
%files
%config %dir /var/lib/yacy/
%dir /var/log/yacy/
%attr (755,root,root) /usr/share/yacy/startYACY.sh
%attr (755,root,root) /usr/share/yacy/stopYACY.sh
%attr (755,root,root) /usr/share/yacy/killYACY.sh
%defattr(644,root,root,755)
/usr/share/yacy/*
/usr/lib/yacy/lib/*
/usr/lib/yacy/classes/*
%doc /usr/share/doc/yacy/*
%changelog
* Fri Oct 20 2006 Franz Brauße <mike-nought@gmx.de>
- added Packager-Tag
- marked documentation-files as such
- fixed permissions
* Sat Oct 14 2006 Franz Brauße <mike-nought@gmx.de>
- initial spec file based on yacy-0.48-3.spec
- some adaptions for build with ant

View file

@ -1,333 +0,0 @@
dnl automatically generate initscripts for different distros
dnl by Florian Richter <Florian_Richter@gmx.de>
dnl
define(helptext, `Usage:
m4 -DopenSUSE yacyInit.m4 > yacy.init.openSUSE
or: m4 -DDebian yacyInit.m4 > yacy.init.Debian
or: m4 -DFedora yacyInit.m4 > yacy.init.Fedora
or: m4 -DArchLinux yacyInit.m4 > yacy.init.ArchLinux
')dnl
ifdef(`openSUSE',, ifdef(`ArchLinux',, ifdef(`Fedora',, ifdef(`Debian',,````errprint(helptext())m4exit(0)''''))))dnl
#!/bin/bash
#
# init script for YaCy
#
# Provided by Matthias Kempka, 26.12.2004
# Updated by Florian Richter, 17.7.2008
#
ifdef(`Fedora', `
# chkconfig: - 20 80
# description: Distributed web search engine
')dnl
### BEGIN INIT INFO
# Provides: yacy
# Required-Start: $network
# Required-Stop: $network
ifdef(`openSUSE', `
# Default-Start: 3 5
')dnl
ifdef(`Debian', `
# Default-Start: 2 3 4 5
')dnl
ifdef(`Fedora', `
# Default-Start: 3 5
')dnl
ifdef(`Mandriva', `
# Default-Start: 3 5
')dnl
# Default-Stop: 0 1 6
# Short-Description: Distributed web search engine
# Description: yacy is a distributed search engine
# config-file is /etc/yacy/yacy.conf
### END INIT INFO
NAME="yacy"
DESC="YaCy P2P Web Search"
YACY_HOME="/usr/share/yacy"
DATA_HOME="/var/lib/yacy"
PID_FILE="/var/run/yacy.pid"
USER=yacy
# Set this to the maximum number of seconds the script should try to shutdown
# yacy. You might want to increase this on slower peers or for bigger
# databases.
SHUTDOWN_TIMEOUT=50
# Default niceness if not set in config file
NICE_VAL=0
JAVA_ARGS="-server -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Dfile.encoding=UTF-8"
#check if system supports large memory pages and enable it if possible
HUGEPAGESTOTAL="$(cat /proc/meminfo | grep HugePages_Total | sed s/[^0-9]//g)"
if [ -n "$HUGEPAGESTOTAL" ] && [ $HUGEPAGESTOTAL -ne 0 ]
then
JAVA_ARGS="$JAVA_ARGS -XX:+UseLargePages -d64 -Dsolr.directoryFactory=solr.MMapDirectoryFactory"
fi
ifdef(`openSUSE', `dnl
. /etc/rc.status
rc_reset
')dnl
ifdef(`ArchLinux', `dnl
[ -f /etc/profile.d/jre.sh ] && . /etc/profile.d/jre.sh
[ -f /etc/conf.d/yacy ] && . /etc/conf.d/yacy
. /etc/rc.conf
. /etc/rc.d/functions
')dnl
ifdef(`Fedora', `dnl
# Source function library.
. /etc/rc.d/init.d/functions
[ -e /etc/sysconfig/$NAME ] && . /etc/sysconfig/$NAME
')dnl
if [ "$(id -u)" != "0" -a "$(whoami)" != "$USER" ] ; then
echo "please run this script as root!"
exit 4
fi
JAVA=$(which java 2> /dev/null)
if [ ! -x "$JAVA" ]; then
echo "The 'java' command is not executable."
echo "Either you have not installed java or it is not in your PATH"
if [ $1 == "stop" -a $2 == "--force" ]; then exit 0; else exit 1; fi
fi
cd $YACY_HOME
#get javastart args
if [ -s DATA/SETTINGS/yacy.conf ]
then
# startup memory
for i in Xmx Xms; do
j=$(grep javastart_$i DATA/SETTINGS/yacy.conf | sed 's/^[^=]*=//');
if [ -n $j ]; then JAVA_ARGS="-$j $JAVA_ARGS"; fi;
done
# Priority
j=$(grep javastart_priority DATA/SETTINGS/yacy.conf | sed 's/^[^=]*=//');
if [ ! -z "$j" ];then
if [ -n $j ]; then NICE_VAL=$j; fi;
fi
else
JAVA_ARGS="-Xmx120m -Xms120m $JAVA_ARGS"
fi
# generating the proper classpath
CP=/usr/share/java/yacy.jar:$YACY_HOME/htroot
for name in /usr/share/java/yacy/*.jar; do
CP=$CP:$name
done
ifdef(`Debian', `
CP="$CP:/usr/share/java/javatar.jar"
CP="$CP:/usr/share/java/commons-httpclient.jar"
CP="$CP:/usr/share/java/commons-fileupload.jar"
CP="$CP:/usr/share/java/commons-logging.jar"
CP="$CP:/usr/share/java/commons-codec.jar"
CP="$CP:/usr/share/java/commons-discovery.jar"
CP="$CP:/usr/share/java/commons-io.jar"
CP="$CP:/usr/share/java/pdfbox.jar"
CP="$CP:/usr/share/java/bcprov.jar"
CP="$CP:/usr/share/java/bcmail.jar"
CP="$CP:/usr/share/java/jakarta-poi.jar"
CP="$CP:/usr/share/java/jakarta-poi-scratchpad.jar"
CP="$CP:/usr/share/java/oro.jar"
CP="$CP:/usr/share/java/xerces.jar"
CP="$CP:/usr/share/java/jsch.jar"
CP="$CP:/usr/share/java/ant.jar" # bzip-stuff
CP="$CP:/usr/share/java/jmimemagic.jar"
CP="$CP:/usr/share/java/log4j-1.2.jar"
CP="$CP:/usr/share/java/odfutils.jar"
CP="$CP:/usr/share/java/jrpm.jar"
CP="$CP:/usr/share/java/tmextractors.jar"
CP="$CP:/usr/share/java/servlet-api.jar"
CP="$CP:/usr/share/java/j7zip.jar"
')dnl
CLASSPATH=$CP
if [ -f $PID_FILE ]; then
pid=$(cat "$PID_FILE")
pidno=$( ps ax | grep "$pid" | awk '{ print $1 }' | grep "$pid" )
fi
RETVAL=0
case "$1" in
start)
if [ -n "$pidno" ]; then
echo "already running"
exit 0
fi
ifdef(`openSUSE', `
echo -n "Starting $DESC. "
')dnl
ifdef(`Debian', `
echo -n "Starting $DESC: "
')dnl
ifdef(`Fedora', `
echo -n "Starting $DESC: "
')dnl
ifdef(`ArchLinux', `
stat_busy "Starting YaCy Daemon"
')dnl
ARGS="$JAVA_ARGS -classpath $CLASSPATH net.yacy.yacy"
define(`START_YACY_WITH_START_STOP_DAEMON',`
/sbin/start-stop-daemon --start --background --make-pidfile --chuid $USER\
--pidfile $PID_FILE --chdir $YACY_HOME --startas $JAVA\
--nicelevel $NICE_VAL\
-- $ARGS
')dnl
define(`START_YACY_WITH_SUDO', `
cmdline="$JAVA $ARGS"
if [ "$(whoami)" != "$USER" ]; then
nice -$NICE_VAL sudo -u yacy $cmdline &>/dev/null &
else
nice -$NICE_VAL $cmdline &>/dev/null &
fi
echo $! >$PID_FILE
')dnl
ifdef(`ArchLinux', `START_YACY_WITH_SUDO()')dnl
ifdef(`openSUSE', `START_YACY_WITH_SUDO()')dnl
ifdef(`Fedora', `START_YACY_WITH_SUDO()')dnl
ifdef(`Debian', `START_YACY_WITH_START_STOP_DAEMON()')dnl
sleep 1
ps ax|grep "^ *$(cat $PID_FILE)" > /dev/null
if [ "$?" == "0" ]; then
ifdef(`Debian', `
echo "$NAME."
')dnl
ifdef(`Fedora', `
echo
')dnl
ifdef(`openSUSE', `
rc_status -v
')dnl
ifdef(`ArchLinux', `
add_daemon yacy
chown yacy:root /var/run/daemons/yacy
stat_done
')dnl
RETVAL=0
chown yacy:root $PID_FILE
else
ifdef(`Debian', `
echo "failed."
')dnl
ifdef(`Fedora', `
echo
')dnl
ifdef(`openSUSE', `
rc_failed
rc_status -v
')dnl
ifdef(`ArchLinux', `
stat_fail
')dnl
RETVAL=1
fi
;;
stop)
if [ -n "$pidno" ]; then
ifdef(`openSUSE', `
echo -n "Shutting down $DESC: "
')dnl
ifdef(`Debian', `
echo -n "Stopping $DESC: "
')dnl
ifdef(`Fedora', `
echo -n "Stopping $DESC: "
')dnl
ifdef(`ArchLinux', `
stat_busy "Stopping YaCy Daemon"
')dnl
cd $YACY_HOME
cmdline="$JAVA $JAVA_ARGS -cp $CLASSPATH net.yacy.yacy -shutdown"
if [ "$(whoami)" != "$USER" ]; then
sudo -u yacy $cmdline &>/dev/null &
else
$cmdline &>/dev/null &
fi
shutdown_pid=$!
timeout=$SHUTDOWN_TIMEOUT
while [ -n "$pidno" ]; do
let timeout=$timeout-1
if [ $timeout -eq 0 ]; then
kill -9 $pid &>/dev/null
break
fi
echo -n "."
sleep 1
pidno=$( ps ax | grep $pid | awk '{ print $1 }' | grep $pid )
done
# dont forget to kill shutdown process if necessary
shutdown_pid=$( ps ax | grep $shutdown_pid | awk '{ print $1 }' | grep $shutdown_pid )
if [ -n "$shutdown_pid" ] ; then
kill -9 $shutdown_pid &>/dev/null
fi
if [ "$2" != "--leave-pidfile" ]; then
rm $PID_FILE
ifdef(`ArchLinux', `
rm_daemon yacy
')dnl
fi
cd - >/dev/null
ifdef(`Debian', `
echo "$NAME."
')dnl
ifdef(`Fedora', `
echo
')dnl
ifdef(`openSUSE', `
rc_status -v
')dnl
ifdef(`ArchLinux', `
stat_done
')dnl
exit 0
fi
echo "not running."
;;
restart)
$0 stop --leave-pidfile
sleep 3
$0 start
;;
reload)
$0 restart
;;
force-reload)
$0 restart
;;
status)
# needed by Fedora
if [ -n "$pidno" ]; then
echo "is running."
exit 0
else
if [ -f $PID_FILE ]; then
echo "is dead, but pid file exists."
exit 1
else
echo "is not running."
exit 3
fi
fi
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
exit $RETVAL

View file

@ -1,35 +0,0 @@
yacyInit.sh - start/stop script
provided by Matthias Kempka, 26.12.2004
INSTALLATION:
This installation is tested on Debian systems. It is likely that other
distributions have other paths.
1. copy yacyInit.sh (the init skript) to /etc/init.d
2. edit /etc/init.d/yacyInit.sh and set the variables
DAEMON_DIR - the installation directory of yacy (the direcory
where the file startYACY.sh is).
USER - the user whose rights the proxy should have. This should not
be root. The user must have write access to DAEMON_DIR.
PATH - The default path should be ok for most systems. Ensure that java is
in the path, though.
3. Link /etc/init.d in the runlevel-directories, these are the
directories where the scripts reside that are called when entering
a runlevel. On Debian systems, these are /etc/rc0.d, /etc/rc1.d and
so on. I.e., as root issue the following commands. Note, that these
settings are ok for Debian systems and most likely have to be
adapted to work on other systems. Please write to lists@mkempka.de
for comments on that.
ln -s /etc/init.d/yacyInit.sh /etc/rc0.d/K05yacyInit.sh
ln -s /etc/init.d/yacyInit.sh /etc/rc1.d/K05yacyInit.sh
ln -s /etc/init.d/yacyInit.sh /etc/rc2.d/S95yacyInit.sh
ln -s /etc/init.d/yacyInit.sh /etc/rc3.d/S95yacyInit.sh
ln -s /etc/init.d/yacyInit.sh /etc/rc4.d/S95yacyInit.sh
ln -s /etc/init.d/yacyInit.sh /etc/rc5.d/S95yacyInit.sh
ln -s /etc/init.d/yacyInit.sh /etc/rc6.d/K05yacyInit.sh
TODO:
- find log possibility when starting via the start-skript
- create concept which user should start yacy

View file

@ -1,112 +0,0 @@
#!/bin/sh
#
# init script for the HTTP Proxy: YaCy
#
# Provided by Matthias Kempka, 26.12.2004
# ensure java is in the path
PATH=/sbin:/bin:/usr/sbin:/usr/local/bin:/usr/bin
# installation directory
DAEMON_DIR=/opt/yacy
# set to the user whose rights the proxy will gain
USER=yacy
# Set this to the maximum number of seconds the script should try to shutdown
# yacy. You might want to increase this on slower peers or for bigger
# databases.
SHUTDOWN_TIMEOUT=20
# Don't run if not installed
test -f $DAEMON_DIR/startYACY.sh || exit 0
cd $DAEMON_DIR
# Default niceness if not set in config file
NICE_VAL=0
JAVA_ARGS="-Djava.awt.headless=true"
#get javastart args
if [ -f DATA/SETTINGS/yacy.conf ]
then
# startup memory
for i in Xmx Xms; do
j="`grep javastart_$i DATA/SETTINGS/yacy.conf | sed 's/^[^=]*=//'`";
if [ -n $j ]; then JAVA_ARGS="-$j $JAVA_ARGS"; fi;
done
# Priority
j="`grep javastart_priority DATA/SETTINGS/yacy.conf | sed 's/^[^=]*=//'`";
if [ ! -z "$j" ];then
if [ -n $j ]; then NICE_VAL=$j; fi;
fi
fi
# generating the proper classpath
CLASSPATH=""
for N in lib/*.jar; do CLASSPATH="$CLASSPATH$N:"; done
for N in libx/*.jar; do CLASSPATH="$CLASSPATH$N:"; done
CLASSPATH="classes:.:htroot:$CLASSPATH"
NAME="yacy"
DESC="YaCy HTTP Proxy"
PID_FILE=/var/run/$NAME.pid
JAVA=$(which java)
if [ -f $PID_FILE ]; then
pid=$(cat "$PID_FILE")
pidno=$( ps ax | grep "$pid" | awk '{ print $1 }' | grep "$pid" )
fi
case "$1" in
start)
if [ -n "$pidno" ]; then
echo "already running"
exit 0
fi
echo -n "Starting $DESC: "
start-stop-daemon --start --background --make-pidfile --chuid $USER\
--pidfile $PID_FILE --chdir $DAEMON_DIR --startas $JAVA\
--nicelevel $NICE_VAL\
-- $JAVA_ARGS -classpath $CLASSPATH net.yacy.yacy $DAEMON_DIR
echo "$NAME."
;;
stop)
if [ -n "$pidno" ]; then
echo -n "Stopping $DESC: "
cd $DAEMON_DIR
./stopYACY.sh
timeout=$SHUTDOWN_TIMEOUT
while [ -n "$pidno" ]; do
let timeout=$timeout-1
if [ $timeout -eq 0 ]; then
start-stop-daemon --stop --pidfile $PID_FILE --oknodo --verbose
break
fi
echo -n "."
sleep 1
pidno=$( ps ax | grep $pid | awk '{ print $1 }' | grep $pid )
done
echo "$NAME."
cd -
exit 0
fi
echo "not running."
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
N=/etc/init.d/yacyInit.sh
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $N {start|stop|restart}" >&2
exit 1
;;
esac
exit 0

View file

@ -1,113 +0,0 @@
#!/bin/sh
#
# init script for the HTTP Proxy: YaCy
#
# Provided by Matthias Kempka, 26.12.2004
# edited by DanielR, 2008-07-21
# installation directory
DAEMON_DIR=/path/to/yacy
# set to the user whose rights the proxy will gain
USER=yacyUser
# Default niceness if not set in config file
NICE_VAL=0
# Set this to the maximum number of minutes the script should try to shutdown
# yacy. You might want to increase this on slower peers or for bigger
# databases.
SHUTDOWN_TIMEOUT=10
# Don't run if not installed
test -f $DAEMON_DIR/startYACY.sh || exit 0
NAME="yacy"
DESC="YaCy HTTP Proxy"
PID_FILE="yacy.pid"
cd $DAEMON_DIR
if [ -f $PID_FILE ]; then
pid=$(cat "$PID_FILE")
fi
check_process()
{
pidno=""
if [ $pid -gt 0 ]; then
pidno=$( ps ax | grep "$pid" | awk '{ print $1 }' | grep "$pid" )
fi
}
# checks if yacy.running exists every 2 seconds for a minute (exits after 60 seconds)
# returns true (0) if exists
check_runningFile()
{
iteration=0
while [ $iteration -lt 30 ]; do
echo -n "."
iteration=$(($iteration + 1))
sleep 2
if [ ! -f DATA/yacy.running ]; then
return 1
fi
done
return 0
}
check_process
case "$1" in
start)
if [ -n "$pidno" ]; then
echo "already running"
exit 0
fi
echo -n "Starting $DESC: "
#./startYACY.sh 2>error.log >/dev/null
start-stop-daemon --start --verbose --pidfile $PID_FILE --nicelevel $NICE_VAL\
--chuid $USER --chdir $DAEMON_DIR --startas ./startYACY.sh\
-- 2>error.log
echo "$NAME."
;;
stop)
if [ -n "$pidno" ]; then
echo -n "Stopping $DESC: "
cd $DAEMON_DIR
./stopYACY.sh > /dev/null
# yacy has per default a delayed shutdown by 5 seconds
sleep 6
timeout=$SHUTDOWN_TIMEOUT
echo "waiting that YaCy has finished (killing YaCy after $timeout minutes)"
while [ -n "$pidno" ]; do
check_runningFile
timeout=$(($timeout-1))
if [ $timeout -eq 0 ]; then
start-stop-daemon --stop --pidfile $PID_FILE --oknodo --verbose
break
fi
echo -n ":"
check_process
#pidno=$( ps ax | grep $pid | awk '{ print $1 }' | grep $pid )
done
echo "$NAME."
cd -
exit 0
fi
echo "not running."
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
N=/etc/init.d/yacyInit.sh
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $N {start|stop|restart}" >&2
exit 1
;;
esac
exit 0

View file

@ -1,232 +0,0 @@
#!/usr/bin/perl
$VERSION = "0.05";
%IRSSI = (
authors => "Alexander Schier & Robert Weidlich",
contact => "",
name => "YaCy Script",
description => "A script to monitor and control YaCy",
license => "GPL",
url => "http://www.yacy-websuche.de",
changed => "Wed Apr 05 2006"
);
#use Irssi;
use strict;
use XML::Simple;
use LWP::Simple;
use Data::Dumper;
use vars qw($VERSION %IRSSI);
my $help = "/yacy show ppm|peer|version|network\n".
" set host|port|user|pass value\n".
" get host|port|user|pass\n".
" help";
our %cmds =
(
show => ["ppm","peer","version","network", "stats"],
set => ["user","pass","host","port"],
help => []
);
my $prog;
if ( defined(&Xchat::print) ) {
$prog = "xchat";
Xchat::register($IRSSI{'name'},$VERSION,$IRSSI{'description'});
} elsif ( defined(&Irssi::print) ) {
$prog = "irssi";
}
sub setting_init() {
if ($prog eq "irssi") {
Irssi::settings_add_str("yacy_script.pl", "yacy_host", "localhost");
Irssi::settings_add_int("yacy_script.pl", "yacy_port", 8090);
Irssi::settings_add_str("yacy_script.pl", "yacy_user", "admin");
Irssi::settings_add_str("yacy_script.pl", "yacy_pass", "");
Irssi::settings_add_int("yacy_script.pl", "yacy_statusbarupdate_interval", 60);
} elsif ($prog eq "xchat") {
if ( ! -e Xchat::get_info('xchatdir')."/yacy.xml" ) {
my $data = {
host => "localhost",
port => "8090",
user => "admin",
pass => ""
};
XMLout($data, NoAttr => 1, OutputFile => Xchat::get_info('xchatdir')."/yacy.xml");
}
}
}
sub setting_set($$) {
if ($prog eq "xchat") {
my $data = XMLin(Xchat::get_info('xchatdir')."/yacy.xml");
$data->{$_[0]} = $_[1];
open my $fh, '>', Xchat::get_info('xchatdir')."/yacy.xml";
XMLout($data, NoAttr => 1, OutputFile => $fh);
close $fh;
} elsif ($prog eq "irssi") {
Irssi::settings_set_str("yacy_".$_[0],$_[1]);
}
}
sub setting_get($) {
if ($prog eq "xchat") {
my $data = XMLin(Xchat::get_info('xchatdir')."/yacy.xml");
return $data->{$_[0]};
} elsif ($prog eq "irssi") {
return Irssi::settings_get_str("yacy_".$_[0]);
}
}
sub get_network {
my $host = setting_get("host");
my $port = setting_get("port");
my $user = setting_get("user");
my $pass = setting_get("pass");
my $doc=get('http://'.$user.':'.$pass.'@'.$host.':'.$port.'/Network.xml');
if($doc){
return XMLin($doc);
}
return 0;
}
sub yacy($$$) {
my ($cmd, $arg, $arg2, $prnt, $output);
if ($prog eq "irssi") {
($cmd,$arg,$arg2)=split / /, shift;
} elsif ($prog eq "xchat") {
$cmd = $_[0][1];
$arg = $_[0][2];
$arg2 = $_[0][3];
}
if ($cmd eq "show") {
my $data=get_network();
if ( ! $data ) {
$prnt = "Peer is not running.";
} else {
if ($arg eq "ppm") {
$output = "is now crawling with YaCy at $data->{'your'}->{'ppm'} pages per minute.";
} elsif ($arg eq "peer") {
$output = "operates the $data->{'your'}->{'type'} YaCy peer $data->{'your'}->{'name'}, which is running $data->{'your'}->{'uptime'}";
} elsif ($arg eq "version") {
$output = "uses YaCy version $data->{'your'}->{'version'}";
} elsif ($arg eq "network") {
$output = "'s peer currently knows $data->{'active'}->{'count'} senior and $data->{'potential'}->{'count'} junior peers";
} elsif ($arg eq "stats") {
$output = "'s peer stores $data->{'your'}->{'links'} links and $data->{'your'}->{'words'} words";
} else {
$prnt="Unknown argument: \"$arg\"\n$help";
}
}
} elsif ($cmd eq "set") {
if ($arg) {
if ($arg2) {
setting_set($arg,$arg2);
} else {
$prnt = "$arg is currently set to \"".setting_get($arg)."\"";
}
} else {
$prnt = "Argument required\n$help";
}
} elsif ($cmd eq "help") {
$prnt=$help;
} else {
$prnt="Unknown command: \"$cmd\"\n$help";
}
if ( $prog eq "irssi" ) {
Irssi::active_win->command("/me $output") if ($output);
Irssi::active_win->print($prnt) if ($prnt);
} elsif ( $prog eq "xchat" ) {
Xchat::print($prnt) if ($prnt);
Xchat::command("me $output") if ($output);
return 3;
}
}
sub cmd_help() {
my ($arg) = @_;
if ( $arg =~ /(yacy)/ ) {
Irssi::print($help);
Irssi::signal_stop();
}
}
sub signal_complete_word {
my ($list, $window, $word, $linestart, $want_space) = @_;
if($linestart =~ /\/yacy/){
Irssi::signal_stop();
my @words=split(/ /, $linestart);
if(@words == 1){
my @cmds2=keys(%cmds);
foreach (@cmds2){
if($_ =~/^$word/i){
push(@$list, $_);
}
}
}elsif(@words == 2){
my @cmds2=$cmds{@words[1]};
for my $i (0 .. $#{$cmds2[0]} ) {
if($cmds2[0][$i] =~/^$word/i){
push(@$list, $cmds2[0][$i]);
}
}
}
}
}
# this is a irssi only section #
my ($irssi_links, $irssi_words, $irssi_ppm)=(0,0,0);;
sub irssi_init_statusbar {
my $updateinterval = setting_get("statusbarupdate_interval"); #XXX: this does not work, if the option isn't set manually?!
if( $updateinterval > 0 && get_network()){ #only, if Network.xml can be loaded and the interval is not zero
Irssi::statusbar_item_register("yacyLinks", undef, "irssi_statusbar_yacyLinks");
Irssi::statusbar_item_register("yacyWords", undef, "irssi_statusbar_yacyWords");
Irssi::statusbar_item_register("yacyPPM", undef, "irssi_statusbar_yacyPPM");
Irssi::timeout_add($updateinterval * 1000, "irssi_update_statusbar", undef);
irssi_update_statusbar(); #initial update
#TODO: Some way to add this to the statusbar (or create a own one), without
#beeing obstrusive.
}
}
sub irssi_update_statusbar {
$data=get_network();
if($data){
$irssi_links=$data->{'your'}->{'links'};
Irssi::statusbar_items_redraw('yacyLinks');
$irssi_words=$data->{'your'}->{'words'};
Irssi::statusbar_items_redraw('yacyWords');
$irssi_ppm=$data->{'your'}->{'ppm'};
Irssi::statusbar_items_redraw('yacyPPM');
}
}
# redraw handlers #
sub irssi_statusbar_yacyLinks {
my ($item, $get_size_only) = @_;
$item->default_handler($get_size_only, " ".$irssi_links, undef, 1);
}
sub irssi_statusbar_yacyWords {
my ($item, $get_size_only) = @_;
$item->default_handler($get_size_only, " ".$irssi_words, undef, 1);
}
sub irssi_statusbar_yacyPPM {
my ($item, $get_size_only) = @_;
$item->default_handler($get_size_only, " ".$irssi_ppm, undef, 1);
}
# end irssi only #
setting_init();
if ( $prog eq "irssi" ) {
Irssi::command_bind("help","cmd_help", "Irssi commands");
Irssi::command_bind('yacy', \&yacy);
Irssi::signal_add('complete word', 'signal_complete_word');
#irssi only
irssi_init_statusbar();
} elsif ( $prog eq "xchat") {
Xchat::hook_command("yacy","yacy",{help_text => $help});
}

View file

@ -1,82 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
<id>bindistribution</id>
<formats>
<format>tar.gz</format>
</formats>
<baseDirectory>YaCy</baseDirectory>
<fileSets>
<fileSet>
<directory>addon</directory>
<outputDirectory>addon</outputDirectory>
</fileSet>
<fileSet>
<directory>bin</directory>
<outputDirectory>bin</outputDirectory>
</fileSet>
<fileSet>
<directory>defaults</directory>
<outputDirectory>defaults</outputDirectory>
</fileSet>
<fileSet>
<directory>dictionaries</directory>
<outputDirectory>dictionaries</outputDirectory>
</fileSet>
<fileSet>
<directory>htroot</directory>
<outputDirectory>htroot</outputDirectory>
</fileSet>
<fileSet>
<directory>langstats</directory>
<outputDirectory>langstats</outputDirectory>
</fileSet>
<fileSet>
<directory>locales</directory>
<outputDirectory>locales</outputDirectory>
</fileSet>
<fileSet>
<directory>ranking</directory>
<outputDirectory>ranking</outputDirectory>
</fileSet>
<fileSet>
<directory>skins</directory>
<outputDirectory>skins</outputDirectory>
</fileSet>
<fileSet>
<directory>vocabularies</directory>
<outputDirectory>vocabularies</outputDirectory>
</fileSet>
<fileSet>
<directory>${basedir}</directory>
<includes>
<include>*.bat</include>
<include>*.sh</include>
<include>yacy.*</include>
<include>readme.txt</include>
<include>gpl.txt</include>
<include>lgpl21.txt</include>
<include>AUTHORS</include>
<include>COPYRIGHT</include>
<include>NOTICE</include>
</includes>
<outputDirectory>.</outputDirectory>
</fileSet>
</fileSets>
<dependencySets>
<dependencySet>
<unpack>false</unpack>
<scope>runtime</scope>
<outputDirectory>lib</outputDirectory>
</dependencySet>
</dependencySets>
</assembly>

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/Load_RSS_p.html?indexAllItemContent=&repeat=off&url=$1" > /dev/null

View file

@ -1,12 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
pw=$(grep ^adminAccountBase64MD5= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
if which curl &>/dev/null; then
curl -s --header "Authorization: realm=$pw" "http://127.0.0.1:$port/$1"
elif which wget &>/dev/null; then
wget -q -t 1 --timeout=120 --header "Authorization: realm=$pw" "http://127.0.0.1:$port/$1" -O -
else
exit 1
fi

View file

@ -1,12 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
pw=$(grep ^adminAccountBase64MD5= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
if which curl &>/dev/null; then
curl -s --header "Authorization: realm=$pw" "http://127.0.0.1:$port/$1"
elif which wget &>/dev/null; then
wget -q -t 1 --timeout=5 --header "Authorization: realm=$pw" "http://127.0.0.1:$port/$1"
else
exit 1
fi

View file

@ -1,26 +0,0 @@
#!/bin/bash
# for a production environment with high-availability requirement,
# (and if you are using the debian version of yacy)
# add the following line in /etc/crontab
# 0 * * * * root cd /usr/share/yacy/bin && ./checkalive.sh
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
RESULT=`wget -t 1 --spider http://localhost:$port/Status.html 2>&1`
FLAG=0
for x in $RESULT; do
if [ "$x" = '200' ]; then
FLAG=1
fi
done
if [ $FLAG -eq '0' ]; then
cd ..
timeout 30s ./stopYACY.sh
./killYACY.sh
rm DATA/yacy.running
./startYACY.sh
fi
exit

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/IndexControlURLs_p.html?deletecomplete=&deleteIndex=on&deleteSolr=on&deleteCrawlQueues=on&deleteRobots=on&deleteSearchFl=on&deleteCache=on" > /dev/null

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/Tables_p.html?table=api&deletetable=all" > /dev/null

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/IndexControlURLs_p.html?deleteIndex=off&deleteSolr=off&deleteCache=on&deleteCrawlQueues=off&deleteRobots=on&deleteSearchFl=on&deletecomplete=" > /dev/null

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/IndexControlURLs_p.html?deletecomplete=&deleteIndex=on&deleteSolr=on&deleteCrawlQueues=on&deleteRobots=on&deleteSearchFl=on&deleteCache=off" > /dev/null

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/IndexControlURLs_p.html?urlhashdeleteall=&urlstring=$1" > /dev/null

View file

@ -1,15 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
cd ..
./stopYACY.sh
#./killYACY.sh
cd DATA/RELEASE/
rm ../../lib/*
rm -Rf yacy
tar xfz `basename $1`
cp -Rf yacy/* ../../
rm -Rf yacy
cd ../../
chmod 755 *.sh
chmod 755 bin/*.sh
nohup ./startYACY.sh -l

View file

@ -1,11 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
if which curl &>/dev/null; then
curl -s "http://localhost:$port/Network.xml?page=2&ip=" | awk '/<address>/{ gsub("<address>","" );gsub("<\/address>","" ); print $0 }' | awk '{print $1}'
elif which wget &>/dev/null; then
wget -q -O - "http://localhost:$port/Network.xml?page=2&ip=" | awk '/<address>/{ gsub("<address>","" );gsub("<\/address>","" ); print $0 }' | awk '{print $1}'
else
exit 1
fi

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
java -ea -cp ../classes:../lib/yacycore.jar net.yacy.kelondro.logging.ThreadDump -f $1

View file

@ -1,5 +0,0 @@
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
while [ 1 = 1 ]
do
curl "http://localhost:$port/NetworkPicture.png?width=768&height=576&bgcolor=FFFFFF" > /dev/null
done

View file

@ -1,9 +0,0 @@
#!/bin/sh
cd "`dirname $0`"
for N in `cat $1`; do
echo import of $N:
./apicall.sh /IndexImportOAIPMH_p.html?urlstart=$N > /dev/null
C=$(($C+1))
done

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh /IndexImportMediawiki_p.html?file=$1 > /dev/null

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/Crawler_p.html?bookmarkFolder=/crawlStart&crawlingDomMaxPages=10000&intention=&range=domain&indexMedia=on&recrawl=nodoubles&storeHTCache=on&sitemapURL=&repeat_time=7&crawlingQ=on&crawlingIfOlderUnit=day&cachePolicy=ifexist&indexText=on&crawlingMode=file&crawlingURL=http://&bookmarkTitle=&mustnotmatch=&crawlingstart=import&mustmatch=.*&crawlingIfOlderNumber=7&repeat_unit=seldays&crawlingDepth=0&crawlingFile=$1" > /dev/null

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/IndexControlURLs_p.xml?indexdump=" | awk '/<dumpfile>/{ gsub("<dumpfile>","" );gsub("<\/dumpfile>","" ); print $0 }' | awk '{print $1}';

View file

@ -1,3 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/IndexControlURLs_p.xml?indexrestore=&dumpfile=$1" > /dev/null

View file

@ -1,4 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/ConfigAccounts_p.html?setAdmin=&adminuser=admin&adminpw1=$1&adminpw2=$1&access=" > /dev/null
echo "Password for User Name 'admin' set to '$1'"

View file

@ -1,4 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
./search1.sh -y localhost:$port "$1"

View file

@ -1,33 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
if which curl &>/dev/null; then
while getopts "ys" opt; do
case $opt in
y)
shift;
curl -s "http://$1/yacysearch.rss?query=$2" | awk '/^<link>/{ gsub("<link>","" );gsub("<\/link>","" ); print $0 }'
;;
s)
shift;
curl -s "http://$1/solr/select?q=text_t:$2&start=0&rows=100&fl=sku&wt=rss" | awk '/^<link>/{ gsub("<link>","" );gsub("<\/link>","" ); print $0 }'
;;
esac
done
elif which wget &>/dev/null; then
while getopts "ys" opt; do
case $opt in
y)
shift;
wget -q -O - "http://$1/yacysearch.rss?query=$2" | awk '/^<link>/{ gsub("<link>","" );gsub("<\/link>","" ); print $0 }'
;;
s)
shift;
wget -q -O - "http://$1/solr/select?q=text_t:$2&start=0&rows=100&fl=sku&wt=rss" | awk '/^<link>/{ gsub("<link>","" );gsub("<\/link>","" ); print $0 }'
;;
esac
done
else
echo "Neither curl nor wget installed!"
exit 1
fi

View file

@ -1,4 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
./searchall1.sh -s localhost:$port $1

View file

@ -1,4 +0,0 @@
TMPFILE=`mktemp -t search` || exit 1
for address in `./up1.sh $1`; do sleep 0.01; ./search1.sh -s $address $2 >> $TMPFILE & done
sleep 2
cat $TMPFILE

View file

@ -1,27 +0,0 @@
touch /tmp/yp$$.dump
echo "cleaning search buffer"
curl -s --user $1:$2 http://localhost:8080/Ranking_p.html > /dev/null
echo "start search for $4"
curl -s -o /tmp/yp$$.query "http://localhost:8080/yacysearch.rss?maximumRecords=10&resource=local&query=$4" &
curl -s --user $1:$2 http://localhost:8080/Status.html > /dev/null &
curl -s --user $1:$2 http://localhost:8080/Status.html > /dev/null &
curl -s --user $1:$2 http://localhost:8080/Status.html > /dev/null &
curl -s --user $1:$2 http://localhost:8080/Status.html > /dev/null &
curl -s --user $1:$2 http://localhost:8080/Status.html > /dev/null &
echo "search started"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=0&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 1 ready"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=$3&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 2 ready"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=$3&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 3 ready"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=$3&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 4 ready"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=$3&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 5 ready"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=$3&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 6 ready"
curl -s --user $1:$2 "http://localhost:8080/Threaddump_p.html?sleep=$3&createThreaddump=&plain=true" >> /tmp/yp$$.dump
echo "thread dump 7 ready"
cat /tmp/yp$$.dump
rm -f /tmp/yp$$.dump

View file

@ -1,13 +0,0 @@
#!/bin/sh
cd "`dirname $0`"
S=`date "+%s"`
C=0
for N in `cat $1`; do
echo search for $N:
./search.sh $N | head -1
C=$(($C+1))
T=`date "+%s"`
echo runtime = $(($T-$S)) seconds, count = $C, time per query = $((1000*($T-$S)/$C)) milliseconds
#sleep 1
done

View file

@ -1,22 +0,0 @@
#!/bin/sh
cd "`dirname $0`"
./searchtest.sh ../test/words/searchtest.words.aa &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ab &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ac &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ad &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ae &
sleep 1
./searchtest.sh ../test/words/searchtest.words.af &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ag &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ah &
sleep 1
./searchtest.sh ../test/words/searchtest.words.ai &
sleep 1
./searchtest.sh ../test/words/searchtest.words.aj &

View file

@ -1,7 +0,0 @@
#!/bin/bash
cd "`dirname $0`"
./apicall.sh "/Network.xml?page=1&ip=" | awk '/<address>/{ gsub("<address>","" );gsub("<\/address>","" ); print $0 }' | awk '{print $1}';
#port=$(grep ^port= ../DATA/SETTINGS/yacy.conf |cut -d= -f2)
#./up1.sh localhost:$port

View file

@ -1,428 +0,0 @@
;yacy.nsi
; ----------------------------------------
;(C) 2004-2006 by Alexander Schier
;(C) 2008-2010 by David Wieditz
;(C) 2011- by Rene Kluge
/*----------------------------------------
MANUALS
http://nsis.sourceforge.net/Docs/
http://nsis.sourceforge.net/Docs/Modern%20UI%202/Readme.html
----------------------------------------
COMMAND LINE OPTIONS (case sensitive):
/S - silent install/uninstall
/D="C:\yacy" - installation folder
----------------------------------------*/
; ----------------------------------------
; MODERN UI
!include MUI2.nsh
!include x64.nsh
!include FileFunc.nsh
!include WinVer.nsh
; ----------------------------------------
; GENERAL
VIProductVersion "@REPL_VERSION@.0.0"
VIAddVersionKey "ProductName" "YaCy"
VIAddVersionKey "LegalCopyright" "YaCy"
VIAddVersionKey "FileVersion" "@REPL_VERSION@"
VIAddVersionKey "FileDescription" "YaCy"
VIAddVersionKey "OriginalFilename" "yacy_v@REPL_VERSION@_@REPL_DATE@_@REPL_REVISION_NR@.exe"
Name "YaCy @REPL_VERSION@"
OutFile "RELEASE\WINDOWS\yacy_v@REPL_VERSION@_@REPL_DATE@_@REPL_REVISION_NR@.exe"
;default installation folder
InstallDir "$PROFILE\YaCy"
InstallDirRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\YaCy" "UninstallString"
;recommend free space in GB for YaCy
!define RecommendSpace "4"
; commands for firewall config, see http://support.microsoft.com/kb/947709/en-us
!define WinXPAddFwRulePort 'netsh firewall add allowedprogram name="YaCy" program="%SystemRoot%\System32\javaw.exe"'
!define WinXPDelFwRulePort 'netsh firewall del allowedprogram program="%SystemRoot%\System32\javaw.exe"'
!define WinVistaAddFwRulePort 'netsh advfirewall firewall add rule name="YaCy" program="%SystemRoot%\System32\javaw.exe" dir=in action=allow'
!define WinVistaDelFwRulePort 'netsh advfirewall firewall del rule name="YaCy"'
var WinAddFwRulePort
var WinDelFwRulePort
;requested execution level on Vista / 7
RequestExecutionLevel admin
SetCompressor /SOLID LZMA
!insertmacro MUI_RESERVEFILE_LANGDLL ;loads faster
; ----------------------------------------
; JAVA VERSION
; http://www.java.com/de/download/manual.jsp BundleId +1 / +2
; User-Agent to see the 64bit link: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0)
; at least we need Java 6
!define JRE_VERSION6 "1.6"
; download link Oracle Java 7 Update 25
; 32 bit / jre-7u25-windows-i586.exe
!define JRE_32 "http://javadl.sun.com/webapps/download/AutoDL?BundleId=79063"
; 64 bit / jre-7u25-windows-x64.exe
!define JRE_64 "http://javadl.sun.com/webapps/download/AutoDL?BundleId=79065"
;!define JRE_32 "http://yacy.berlios.de/download.php?what=jre&version=32&yacyrevnr=@REPL_REVISION_NR@"
;!define JRE_64 "http://yacy.berlios.de/download.php?what=jre&version=64&yacyrevnr=@REPL_REVISION_NR@"
; ----------------------------------------
; GENERAL APPEARANCE
;BrandingText "yacy.net"
!define MUI_ICON "RELEASE\MAIN\addon\YaCy.ico"
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
!define MUI_WELCOMEFINISHPAGE_BITMAP "RELEASE\MAIN\addon\installer\network.bmp"
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP "RELEASE\MAIN\addon\installer\logo.bmp"
!define MUI_HEADERIMAGE_BITMAP_NOSTRETCH
!define MUI_ABORTWARNING ;display warning before aborting installation
; ----------------------------------------
; INSTALLER PAGES
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE gpl.txt
!define MUI_COMPONENTSPAGE_NODESC
!insertmacro MUI_PAGE_COMPONENTS
ComponentText "YaCy v@REPL_VERSION@ (Build @REPL_DATE@)"
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE CheckDriveSpace
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!define MUI_PAGE_CUSTOMFUNCTION_SHOW SHOW_PageFinish_custom
!define MUI_FINISHPAGE_SHOWREADME http://www.yacy-websuche.de/wiki/index.php/InstallerFinished
!define MUI_FINISHPAGE_SHOWREADME_TEXT $(finishPage)
!insertmacro MUI_PAGE_FINISH
; ----------------------------------------
; UNINSTALLER PAGES
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
; ----------------------------------------
; LANGUAGES
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "French"
!insertmacro MUI_LANGUAGE "German"
LangString stillRunning ${LANG_ENGLISH} "YaCy is still active. Please stop YaCy first."
LangString keepData 0 "Do you want to keep the data?"
LangString noAdminForJava 0 "You need Administrator privileges to install Java. Java will now be downloaded to the shared documents folder. YaCy won't run without Java."
LangString finishPage 0 "Show how to configure the Windows Firewall for YaCy."
LangString yacyNoHd 0 "YaCy should be installed on a hard disk. Continue with selected folder?"
LangString yacyNeedSpace 0 "We recommend ${RecommendSpace} GB free space for YaCy. There are only $TempDriveFree GB left. Continue anyway?"
LangString yacyNeedOs 0 "Please run Windows 2000 or better (e.g. Windows XP, Vista or Windows 7) for YaCy."
LangString stillRunning ${LANG_FRENCH} "YaCy is still active. Please stop YaCy first."
LangString keepData 0 "Do you want to keep the data?"
LangString noAdminForJava 0 "You need Administrator privileges to install Java. Java will now be downloaded to the shared documents folder. YaCy won't run without Java."
LangString finishPage 0 "Show how to configure the Windows Firewall for YaCy."
LangString yacyNoHd 0 "YaCy should be installed on a hard disk. Continue with selected folder?"
LangString yacyNeedSpace 0 "We recommend ${RecommendSpace} GB free space for YaCy. There are only $TempDriveFree GB left. Continue anyway?"
LangString yacyNeedOs 0 "Please run Windows 2000 or better (e.g. Windows XP, Vista or Windows 7) for YaCy."
LangString stillRunning ${LANG_GERMAN} "YaCy ist noch aktiv. Bitte beenden Sie YaCy."
LangString keepData 0 "Moechten Sie die Daten behalten?"
LangString noAdminForJava 0 "Sie benoetigen Administrator-Rechte um Java zu installieren. Java wird nun in 'Gemeinsame Dokumente' gespeichert. YaCy benoetigt Java zur Ausfuehrung."
LangString finishPage 0 "Zeige die Windows Firewall Konfiguration fuer YaCy."
LangString yacyNoHd 0 "YaCy sollte auf einer Festplatte installiert werden. Soll der gewaehlte Ordner trotzdem verwendet werden?"
LangString yacyNeedSpace 0 "Wir empfehlen ${RecommendSpace} GB fuer YaCy. Es sind noch $TempDriveFree GB frei. Trotzdem fortfahren?"
LangString yacyNeedOs 0 "YaCy benoetigt Windows 2000 oder besser (z.B. Windows XP, Vista oder Windows 7)."
; ----------------------------------------
; INSTALLABLE MODULES
;InstType "Normal"
Section "YaCy"
SectionIn 1 RO
SetShellVarContext current ; use system variables (folders) for current user
RMDir /r "$INSTDIR\lib" ;remove old libraries in case of update
RMDir /r "$SMPROGRAMS\YaCy" ;clear old shortcuts
Delete "$QUICKLAUNCH\YaCy-Search.lnk" ;old
Delete "$DESKTOP\YaCy-Search.lnk" ;old
Delete "$SMSTARTUP\start YaCy (no console).lnk" ;old
SetOutPath $INSTDIR
;set noindex attribute for windows indexing service
nsExec::Exec 'attrib +I "$INSTDIR"'
nsExec::Exec 'attrib +I "$INSTDIR\*" /S /D'
File /r /x *.sh "RELEASE\MAIN\*"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\YaCy" "DisplayName" "YaCy"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\YaCy" "UninstallString" '"$INSTDIR\uninstall.exe"'
WriteUninstaller "uninstall.exe"
SectionEnd
Section "Java (Oracle JRE)" Sec_Java_id
SectionIn 1 RO
SetShellVarContext current
Call GetJRE
SectionEnd
Section "Start Menu Group"
SectionIn 1
SetShellVarContext current
CreateDirectory "$SMPROGRAMS\YaCy"
CreateShortCut "$SMPROGRAMS\YaCy\YaCy.lnk" "$INSTDIR\startYACY.bat" "" "$INSTDIR\addon\YaCy.ico" "" SW_SHOWMINIMIZED
CreateShortCut "$SMPROGRAMS\YaCy\Readme.lnk" "$INSTDIR\readme.txt"
CreateShortCut "$SMPROGRAMS\YaCy\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
SectionEnd
Section "Desktop Icon"
SectionIn 1
SetShellVarContext current
CreateShortCut "$DESKTOP\YaCy.lnk" "$INSTDIR\startYACY.bat" "" "$INSTDIR\addon\YaCy.ico" "" SW_SHOWMINIMIZED
SectionEnd
Section "Configure Firewall" Sec_Firewall_id
SectionIn 1
SetShellVarContext current
call OpenFirewall
SectionEnd
/*
Section "YaCy in Startup"
SetShellVarContext current
CreateShortCut "$SMSTARTUP\YaCy.lnk" "$INSTDIR\startYACY.bat" "" "$INSTDIR\addon\YaCy.ico" "" SW_SHOWMINIMIZED
SectionEnd
*/
; ----------------------------------------
; UNINSTALLER
Section "Uninstall"
ClearErrors
Delete "$INSTDIR\DATA\yacy.running"
IfErrors 0 uninstall
MessageBox MB_ICONSTOP "$(stillRunning)" /SD IDOK
Goto nouninstall
uninstall:
Call un.CloseFirewall
SetShellVarContext current
RMDir /r "$INSTDIR\addon"
RMDir /r "$INSTDIR\bin"
RMDir /r "$INSTDIR\classes"
RMDir /r "$INSTDIR\defaults"
RMDir /r "$INSTDIR\htroot"
RMDir /r "$INSTDIR\langstats"
RMDir /r "$INSTDIR\lib"
RMDir /r "$INSTDIR\libbuild"
RMDir /r "$INSTDIR\libx"
RMDir /r "$INSTDIR\locales"
RMDir /r "$INSTDIR\ranking"
RMDir /r "$INSTDIR\skins"
RMDir /r "$INSTDIR\source"
Delete "$INSTDIR\*.*"
MessageBox MB_YESNO|MB_ICONQUESTION "$(keepData)" /SD IDYES IDYES keepdata
;delete all
RMDir /r "$INSTDIR"
;or jump to this
keepdata:
RMDir /r "$SMPROGRAMS\YaCy"
Delete "$DESKTOP\YaCy.lnk"
Delete "$SMSTARTUP\YaCy.lnk"
DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\YaCy"
nouninstall:
SectionEnd
; ----------------------------------------
; FUNCTIONS
Function .onInit
; check Windows-Version, need Win 2000 or higher
${If} ${AtMostWinME}
MessageBox MB_ICONSTOP "$(yacyNeedOs)"
Abort
${EndIf}
; init of JRE section
; detect JRE first
var /global InstalledJREVersion
${If} ${RunningX64}
SetRegView 64
${EndIf}
ReadRegStr $InstalledJREVersion HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion"
; if right JRE already installed hide and deselect JRE section
${If} $InstalledJREVersion = ${JRE_VERSION6}
SectionSetText ${Sec_Java_id} ""
SectionSetFlags ${Sec_Java_id} 0
${EndIf}
; init of Firewall section, only valid for WindowsXP SP2/SP3 and Vista/Win 7 with Admin
var /global FirewallServiceStart
IntOp $FirewallServiceStart 3 + 0
${If} ${IsWinVista}
${OrIf} ${IsWin7}
StrCpy $WinAddFwRulePort '${WinVistaAddFwRulePort}'
StrCpy $WinDelFwRulePort '${WinVistaDelFwRulePort}'
ReadRegDWORD $FirewallServiceStart HKLM "SYSTEM\CurrentControlSet\services\MpsSvc" "Start"
${EndIf}
${If} ${IsWinXP}
${AndIf} ${AtLeastServicePack} 2
StrCpy $WinAddFwRulePort '${WinXPAddFwRulePort}'
StrCpy $WinDelFwRulePort '${WinXPDelFwRulePort}'
ReadRegDWORD $FirewallServiceStart HKLM "SYSTEM\CurrentControlSet\services\SharedAccess" "Start"
${EndIf}
;need Admin for firewall-config
${IfNot} $0 = "Admin"
IntOp $FirewallServiceStart 3 + 0
${EndIf}
; hide and deselect Firewall if no proper configuration
${If} $FirewallServiceStart > 2
SectionSetText ${Sec_Firewall_id} ""
SectionSetFlags ${Sec_Firewall_id} 0
${EndIf}
FunctionEnd
Function GetJRE
; based on http://nsis.sourceforge.net/Simple_Java_Runtime_Download_Script
${If} ${RunningX64}
StrCpy $3 ${JRE_64}
${Else}
StrCpy $3 ${JRE_32}
${EndIf}
;check if admin before download, advise if non
userInfo::getAccountType
Pop $0
${IfNot} $0 = "Admin"
MessageBox MB_ICONEXCLAMATION "$(noAdminForJava)" /SD IDOK
${EndIf}
SetShellVarContext all
StrCpy $2 "$DOCUMENTS\Java Runtime (install for YaCy).exe"
SetShellVarContext current
nsisdl::download /TIMEOUT=30000 $3 $2
Pop $R0 ;Get the return value
${IfNot} $R0 = "success"
MessageBox MB_OK "Download failed: $R0" /SD IDOK
Return
${EndIf}
${If} $0 == "Admin"
ExecWait "$2 /s"
Delete $2
${Else}
CreateShortCut "$DESKTOP\Install Java for YaCy.lnk" "$2"
${EndIf}
FunctionEnd
Function CheckDriveSpace
var /global RootFolder
var /global TempDriveFree
var /global RootFolderType
; if "\\Folder" it's a Network-Folder
StrCpy $RootFolder $InstDir 2
StrCmp $RootFolder "\\" NetworkFolder Driveletter
Networkfolder:
; prepare String for DriveSpace
${GetRoot} $RootFolder $InstDir
goto NoHDD
; now check drive-letters
Driveletter:
StrCpy $RootFolder $InstDir 3
; prepare for {GetDrives-Loop}
StrCpy $RootFolderType "invalid"
${GetDrives} "ALL" "CheckDriveType"
; jump if error
StrCmp $RootFolderType "invalid" CheckSpace
; jump if HDD
StrCmp $RootFolderType "HDD" CheckSpace
NoHDD:
; stay on folder-selection if user wants to give another folder, else check free space
MessageBox MB_ICONEXCLAMATION|MB_YESNO "$(yacyNoHd)" IDYES NextPage
Abort
CheckSpace:
ClearErrors
${DriveSpace} $RootFolder "/D=F /S=G" $TempDriveFree
; if DriveSpace fails for any reason -> jump ahead
IfErrors NextPage
${If} $TempDriveFree < ${RecommendSpace}
MessageBox MB_ICONEXCLAMATION|MB_YESNO "$(yacyNeedSpace)" IDYES NextPage
Abort
${EndIf}
NextPage:
FunctionEnd
Function CheckDriveType
; based on http://nsis.sourceforge.net/GetDrives
${If} $9 == $RootFolder
StrCpy $RootFolderType $8
StrCpy $0 StopGetDrives
${EndIf}
Push $0
FunctionEnd
Function OpenFirewall
var /global ExecErrorCode
; run netsh
nsExec::ExecToStack '$WinAddFwRulePort'
pop $ExecErrorCode
; if run without error register for uninstall and clear finish page
${If} $ExecErrorCode = "0"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\YaCy" "DelFwRulePort" '$WinDelFwRulePort'
IntOp $FirewallServiceStart 0 + 0
${Else}
IntOp $FirewallServiceStart 3 + 0
${EndIf}
FunctionEnd
Function SHOW_PageFinish_custom
; hide and disable firewall info from wiki if firewall is open
${If} $FirewallServiceStart = 0
SendMessage $mui.FinishPage.ShowReadme ${BM_SETCHECK} 0 0
ShowWindow $mui.FinishPage.ShowReadme ${SW_HIDE}
${EndIf}
FunctionEnd
Function un.CloseFirewall
; get string for closing port from registy
ReadRegStr '$WinDelFwRulePort' HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\YaCy" "DelFwRulePort"
; if found > run netsh to close port
${IfNot} '$WinDelFwRulePort' == ''
nsExec::ExecToStack '$WinDelFwRulePort'
${EndIf}
FunctionEnd

View file

@ -1,16 +0,0 @@
# defining some compiler arguments
javacSource=1.6
javacTarget=1.6
# Release Configuration
releaseVersion=1.67
stdReleaseFile=yacy${branch}_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz
sourceReleaseFile=yacy_src_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz
releaseFileParentDir=yacy
privateKeyFile=private.key
# defining some file/directory access rights
accessRightsDir=755
accessRightsExecutable=755
accessRightsFile=644

View file

@ -1,815 +0,0 @@
<project name="YaCy" default="all" basedir=".">
<description>
YaCy - a Peer to Peer Web Search Engine
</description>
<!--
# THIS IS THE YACY BUILD SCRIPT
# YOU CAN USE IT TO COMPILE YOUR OWN RELEASE
# THE TARGET OF THE COMPILATION CAN BE FOUND
# IN THE 'RELEASE' DIRECTORY AFTERWARDS
# YOU NEED APACHE ANT TO USE THIS SCRIPT
# ==========================================
# This Software is Copyrighted
# (C) by Michael Peter Christen; mc@yacy.net
# first published on http://yacy.net
# Frankfurt, Germany, 2005-2009
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-->
<!-- defining the timestamp format -->
<tstamp>
<format property="REPL_DATE_FORMAT" pattern="yyyymmdd" />
</tstamp>
<!-- defining all needed directory names -->
<property name="yacyroot" location="."/>
<property name="addon" location="addon"/>
<property name="src" location="source"/>
<property name="data" location="DATA"/>
<property name="lib" location="lib"/>
<property name="libt" location="libt"/>
<property name="libbuild" location="libbuild"/>
<property name="build" location="classes"/>
<property name="javadoc" location="api"/>
<property name="htroot" location="htroot"/>
<property name="test" location="test"/>
<property name="langstats" location="langstats"/>
<property name="locales" location="locales"/>
<property name="skins" location="skins"/>
<property name="release" location="RELEASE"/>
<property name="htdocsWWW" location="${data}/HTDOCS/www"/>
<property name="release_main" location="${release}/MAIN"/>
<property name="release_windows" location="${release}/WINDOWS"/>
<property name="release_mac" location="${release}/MAC"/>
<property name="git" location=".git"/>
<property name="defaults" location="defaults"/>
<property name="RDFaParser" location="RDFaParser"/>
<!-- pseudo default branch as fallback -->
<property name="branch" value="" />
<!-- pseudo default releaseNr as fallback -->
<property name="releaseNr" value="9000" />
<!-- defining all needed directory names for packing search widget-->
<property name="jquery" location="htroot/jquery/"/>
<property name="portalsearch" location="htroot/portalsearch/"/>
<property name="img-2" location="htroot/yacy/ui/img-2"/>
<!-- variables for installonlinux target-->
<property name="DESTDIR" value="DESTDIR"/>
<property name="PKGMANAGER" value="false"/>
<property name="RESTARTCMD" value="/etc/init.d/yacy restart"/>
<!-- determining if the .git directory exists -->
<condition property="isGit">
<available file="${git}" />
</condition>
<target name="buildGitRevTask">
<delete file="${libbuild}/GitRevTask.jar" failonerror="false" />
<javac srcdir="${libbuild}/GitRevTask" includeantruntime="true">
<classpath>
<pathelement location="${libbuild}/org.eclipse.jgit-1.1.0.201109151100-r.jar" />
</classpath>
</javac>
<jar destfile="${libbuild}/GitRevTask.jar" basedir="${libbuild}/GitRevTask">
<manifest>
<attribute name="Main-Class" value="GitRevTask"/>
</manifest>
</jar>
</target>
<target name="determineGitRevision" if="isGit" depends="buildGitRevTask">
<taskdef resource="GitRevTask.properties">
<classpath>
<pathelement location="${libbuild}/GitRevTask.jar" />
<pathelement location="${libbuild}/org.eclipse.jgit-1.1.0.201109151100-r.jar" />
</classpath>
</taskdef>
<gitRev repoPath="${yacyroot}" branchprop="branch" revprop="releaseNr" dateprop="DSTAMP" />
</target>
<!-- reading the build properties from file -->
<target name="readBuildProperties" depends="determineGitRevision">
<!-- loading some property values from file -->
<loadproperties srcFile="build.properties" />
</target>
<!-- initializing all needed variables -->
<target name="init" depends="readBuildProperties">
<mkdir dir="${data}"/>
<mkdir dir="${release}"/>
<!-- YaCy Release Date -->
<filter token="REPL_DATE" value="${DSTAMP}"/>
<filter token="REPL_RELEASE" value="${stdReleaseFile}"/>
<!-- YaCy Brach -->
<echo message="YaCy Branch: ${branch}" />
<!-- YaCy Release Version number -->
<echo message="YaCy Version number: ${releaseVersion}" />
<filter token="REPL_VERSION" value="${releaseVersion}" />
<!-- YaCy Release <revision number -->
<echo message="YaCy Release number: ${releaseNr}" />
<filter token="REPL_REVISION_NR" value="${releaseNr}"/>
<!-- YaCy root directory -->
<filter token="REPL_YACY_ROOT_DIR" value="${yacyroot}"/>
<filter token="REPL_PKGMANAGER" value="${PKGMANAGER}"/>
<filter token="REPL_RESTARTCMD" value="${RESTARTCMD}"/>
<!-- apply replacments -->
<delete file="${build}/net/yacy/peers/operation/yacyBuildProperties.java" failonerror="false"/>
<copy file="${src}/net/yacy/peers/operation/yacyBuildProperties.java" tofile="${build}/net/yacy/peers/operation/yacyBuildProperties.java" overwrite="true" filtering="true" />
<!-- copy log4j config file -->
<copy file="${src}/log4j.properties" tofile="${build}/log4j.properties" overwrite="true" filtering="true" />
</target>
<target name="javadoc" depends="init" description="make javadoc for YaCy core">
<javadoc destdir="${javadoc}"
windowtitle="YaCy API"
encoding="UTF-8"
charset="UTF-8"
access="private">
<fileset dir="${src}">
<include name="**/*.java"/>
</fileset>
</javadoc>
</target>
<!-- define the classpath that should be used for compiling -->
<!-- when changing paths here, please also update the paths in /addon/YaCy.app/Contents/Info.plist -->
<path id="project.class.path">
<pathelement location="${build}" />
<pathelement location="${htroot}" />
<pathelement location="${lib}/activation.jar" />
<pathelement location="${lib}/apache-mime4j-0.6.jar" />
<pathelement location="${lib}/arq-2.8.7.jar" />
<pathelement location="${lib}/bcmail-jdk15-145.jar" />
<pathelement location="${lib}/bcprov-jdk15-145.jar" />
<pathelement location="${lib}/commons-codec-1.7.jar" />
<pathelement location="${lib}/commons-compress-1.4.1.jar" />
<pathelement location="${lib}/commons-fileupload-1.2.2.jar" />
<pathelement location="${lib}/commons-io-2.1.jar" />
<pathelement location="${lib}/commons-jxpath-1.3.jar" />
<pathelement location="${lib}/commons-lang-2.6.jar" />
<pathelement location="${lib}/commons-logging-1.1.3.jar" />
<pathelement location="${lib}/fontbox-1.8.3.jar" />
<pathelement location="${lib}/geronimo-stax-api_1.0_spec-1.0.1.jar" />
<pathelement location="${lib}/guava-15.0.jar" />
<pathelement location="${lib}/htmllexer.jar" />
<pathelement location="${lib}/httpclient-4.3.1.jar" />
<pathelement location="${lib}/httpcore-4.3.jar" />
<pathelement location="${lib}/httpmime-4.3.1.jar" />
<pathelement location="${lib}/icu4j-core.jar" />
<pathelement location="${lib}/iri-0.8.jar" />
<pathelement location="${lib}/J7Zip-modified.jar" />
<pathelement location="${lib}/jakarta-oro-2.0.8.jar" />
<pathelement location="${lib}/jaudiotagger-2.0.4-20111207.115108-15.jar" />
<pathelement location="${lib}/jcifs-1.3.17.jar" />
<pathelement location="${lib}/jcl-over-slf4j-1.7.2.jar" />
<pathelement location="${lib}/jempbox-1.8.3" />
<pathelement location="${lib}/jena-2.6.4.jar" />
<pathelement location="${lib}/jsch-0.1.50.jar" />
<pathelement location="${lib}/json-simple-1.1.1.jar" />
<pathelement location="${lib}/jsoup-1.6.3.jar" />
<pathelement location="${lib}/log4j-over-slf4j-1.7.2.jar" />
<pathelement location="${lib}/lucene-analyzers-common-4.6.0.jar" />
<pathelement location="${lib}/lucene-analyzers-phonetic-4.6.0.jar" />
<pathelement location="${lib}/lucene-classification-4.6.0.jar" />
<pathelement location="${lib}/lucene-codecs-4.6.0.jar" />
<pathelement location="${lib}/lucene-core-4.6.0.jar" />
<pathelement location="${lib}/lucene-facet-4.6.0.jar" />
<pathelement location="${lib}/lucene-grouping-4.6.0.jar" />
<pathelement location="${lib}/lucene-highlighter-4.6.0.jar" />
<pathelement location="${lib}/lucene-join-4.6.0.jar" />
<pathelement location="${lib}/lucene-memory-4.6.0.jar" />
<pathelement location="${lib}/lucene-misc-4.6.0.jar" />
<pathelement location="${lib}/lucene-queries-4.6.0.jar" />
<pathelement location="${lib}/lucene-queryparser-4.6.0.jar" />
<pathelement location="${lib}/lucene-spatial-4.6.0.jar" />
<pathelement location="${lib}/lucene-suggest-4.6.0.jar" />
<pathelement location="${lib}/metadata-extractor-2.6.2.jar" />
<pathelement location="${lib}/noggit-0.5.jar" />
<pathelement location="${lib}/pdfbox-1.8.3.jar" />
<pathelement location="${lib}/poi-3.6-20091214.jar" />
<pathelement location="${lib}/poi-scratchpad-3.6-20091214.jar" />
<pathelement location="${lib}/sax-2.0.1.jar" />
<pathelement location="${lib}/servlet-api-2.5-20081211.jar" />
<pathelement location="${lib}/slf4j-api-1.7.2.jar" />
<pathelement location="${lib}/slf4j-jdk14-1.7.2.jar" />
<pathelement location="${lib}/solr-core-4.6.0.jar" />
<pathelement location="${lib}/solr-solrj-4.6.0.jar" />
<pathelement location="${lib}/spatial4j-0.3.jar" />
<pathelement location="${lib}/webcat-0.1-swf.jar" />
<pathelement location="${lib}/wstx-asl-3.2.9.jar" />
<pathelement location="${lib}/xercesImpl.jar" />
<pathelement location="${lib}/xml-apis.jar" />
<pathelement location="${lib}/zookeeper-3.4.5.jar" />
</path>
<target name="compile-core" depends="init" description="compile YaCy core">
<!-- compile yacyBuildProperties.java -->
<javac srcdir="${build}" destdir="${build}" sourcepath="${src}"
debug="true" debuglevel="lines,vars,source" includeantruntime="false"
includes="net/yacy/peers/operation/yacyBuildProperties.java"
source="${javacSource}" target="${javacTarget}">
<classpath refid="project.class.path" />
<compilerarg value="-Xlint"/>
</javac>
<delete file="${build}/BuildProperties.java" />
<!-- compile the core sources -->
<javac srcdir="${src}/" destdir="${build}"
debug="true" debuglevel="lines,vars,source" includeantruntime="false"
excludes="net/yacy/peers/operation/yacyBuildProperties.java"
source="${javacSource}" target="${javacTarget}">
<classpath refid="project.class.path" />
<compilerarg value="-Xlint"/>
</javac>
<!-- prepare classpath for MANIFEST (manifest cp is relative to jar) -->
<path id="project.classpath.runtime">
<fileset dir="./lib">
<include name="**/*.jar" />
<exclude name="yacycore.jar"/>
</fileset>
</path>
<pathconvert property="manifest.classpath" pathsep=" " refid="project.classpath.runtime">
<flattenmapper/>
</pathconvert>
<!-- make the jacycore jar -->
<jar destfile="${lib}/yacycore.jar" basedir="${build}/">
<manifest>
<attribute name="Main-Class" value="net.yacy.yacy"/>
<attribute name="Class-Path" value="${manifest.classpath}"/>
</manifest>
</jar>
</target>
<target name="compile-cora" depends="init" description="compile YaCy cora component">
<!-- compile the cora sources -->
<javac srcdir="${src}/net/yacy/cora/" destdir="${build}/"
debug="true" debuglevel="lines,vars,source"
source="${javacSource}" target="${javacTarget}">
<classpath refid="project.class.path" />
<compilerarg value="-Xlint"/>
</javac>
<!-- make yacy-cora.jar -->
<jar destfile="${lib}/yacy-cora.jar" includes="**/net/yacy/cora/**" basedir="${build}/"></jar>
</target>
<target name="compile" depends="compile-core" description="compile YaCy core and YaCy servlets">
<!-- compile htroot, htroot/yacy and htroot/htdocsdefault -->
<javac srcdir="${htroot}/"
excludes="processing/**"
source="${javacSource}" target="${javacTarget}"
debug="true" debuglevel="lines,vars,source" includeantruntime="false">
<classpath refid="project.class.path" />
<compilerarg value="-Xlint"/>
</javac>
</target>
<target name="all" depends="compile">
</target>
<target name="copyMain4Dist" depends="compile">
<!-- copy all libs -->
<copy todir="${release_main}/lib">
<fileset dir="${lib}"
includes="**/*"/>
</copy>
<!-- copy build libs -->
<copy todir="${release_main}/libbuild">
<fileset dir="${libbuild}"
includes="**/*"/>
</copy>
<!-- copy configuration files -->
<copy todir="${release_main}">
<fileset dir=".">
<include name="yacy.yellow"/>
<include name="yacy.badwords.example"/>
<include name="yacy.stopwords"/>
<include name="yacy.parser"/>
</fileset>
</copy>
<!-- copy defaults -->
<copy todir="${release_main}/defaults">
<fileset dir="${defaults}"
includes="**/*"/>
</copy>
<!-- copy Unix wrappers -->
<copy todir="${release_main}">
<fileset dir=".">
<include name="startYACY.sh"/>
<include name="stopYACY.sh"/>
<include name="killYACY.sh"/>
<include name="updateYACY.sh"/>
<include name="restart.sh"/>
<include name="reconfigureYACY.sh"/>
<include name="startYACY.command"/>
<include name="stopYACY.command"/>
</fileset>
</copy>
<!-- copy other wrappers -->
<copy todir="${release_main}">
<fileset dir=".">
<include name="startYACY.bat"/>
<include name="startYACY_debug.bat"/>
<include name="stopYACY.bat"/>
<include name="getWin32MaxHeap.bat"/>
</fileset>
</copy>
<!-- copy locales -->
<copy todir="${release_main}/locales">
<fileset dir="${locales}">
<include name="*"/>
</fileset>
</copy>
<!-- copy skins -->
<copy todir="${release_main}/skins">
<fileset dir="${skins}">
<include name="*"/>
</fileset>
</copy>
<!-- copy language statistics files -->
<copy todir="${release_main}/langstats">
<fileset dir="${langstats}">
<include name="*"/>
</fileset>
</copy>
<!-- copy documentation -->
<copy todir="${release_main}">
<fileset dir=".">
<include name="readme.txt"/>
<include name="gpl.txt"/>
<include name="ChangeLog"/>
<include name="AUTHORS"/>
<include name="COPYRIGHT"/>
<include name="NOTICE"/>
</fileset>
</copy>
<!-- copy source code -->
<copy todir="${release_main}/source">
<fileset dir="${src}">
<include name="**/*.*"/>
</fileset>
</copy>
<!-- copy server pages -->
<copy todir="${release_main}/htroot">
<fileset dir="${htroot}">
<include name="**/*"/>
</fileset>
</copy>
<!-- copy add-on's -->
<copy todir="${release_main}/addon">
<fileset dir="${addon}">
<include name="**/*"/>
</fileset>
</copy>
<!-- copy development tools -->
<copy todir="${release_main}">
<fileset dir=".">
<include name="build.xml"/>
<include name="build.properties"/>
</fileset>
</copy>
<!-- copy searchtest -->
<copy todir="${release_main}/bin">
<fileset dir="bin">
<include name="**/*.sh"/>
<include name="searchtest*"/>
</fileset>
</copy>
</target>
<!-- run unittests-->
<target name="compileTest" depends="compile" description="run unittests">
<javac srcdir="${test}" destdir="${test}"
debug="true" debuglevel="lines,vars,source"
source="${javacSource}" target="${javacTarget}">
<classpath>
<pathelement location="${build}"/>
<pathelement location="${htroot}"/>
<fileset dir="${libt}" includes="**/*.jar" />
<fileset dir="${lib}" includes="**/*.jar" />
</classpath>
<compilerarg value="-Xlint"/>
</javac>
</target>
<target name="test" depends="compileTest" description="run some unittests">
<junit printsummary="yes" haltonfailure="no" fork="true" dir="${yacyroot}">
<formatter type="plain"/>
<batchtest>
<fileset dir="${test}">
<include name="**/*Test*.java"/>
</fileset>
</batchtest>
<classpath>
<pathelement location="${test}"/>
<pathelement location="${build}"/>
<pathelement location="${htroot}"/>
<fileset dir="${libt}" includes="**/*.jar" />
<fileset dir="${lib}" includes="**/*.jar" />
</classpath>
</junit>
</target>
<!-- =======================================================================================================
making a release file for yacy
======================================================================================================= -->
<target name="dist" depends="copyMain4Dist" description="make for standard YaCy">
<tar destfile="${release}/${stdReleaseFile}" compression="gzip" defaultexcludes="yes" longfile="fail">
<!-- packing all files into a gzipped tar -->
<tarfileset dir="${release_main}" prefix="${releaseFileParentDir}/" dirmode="${accessRightsDir}" mode="${accessRightsExecutable}">
<include name="**/*.sh"/>
<include name="**/*.command"/>
</tarfileset>
<tarfileset dir="${release_main}" prefix="${releaseFileParentDir}/" dirmode="${accessRightsDir}" mode="${accessRightsFile}" >
<include name="**/*"/>
<exclude name="**/*.sh"/>
<exclude name="**/*.command"/>
</tarfileset>
</tar>
<delete dir="${release_main}"/>
<delete dir="${release_windows}" failonerror="false" />
<delete dir="${release}/SPECS" failonerror="false" />
</target>
<!-- packing YaCy search widget for static hosting -->
<target name="portalsearch" description="pack YaCy search widget for static hosting">
<tar destfile="${release}/yacy-portalsearch.tar.gz" compression="gzip" defaultexcludes="yes" longfile="fail">
<tarfileset dir="${portalsearch}" prefix="yacy/portalsearch/">
<include name="*.*"/>
</tarfileset>
<tarfileset dir="${jquery}" prefix="yacy/jquery/">
<include name="**/*"/>
</tarfileset>
<tarfileset dir="${img-2}" prefix="yacy/ui/img-2/">
<include name="magnify.png"/>
<include name="cancel_round.png"/>
<include name="stop.png"/>
</tarfileset>
</tar>
</target>
<!-- make clean -->
<target name="clean" description="make clean">
<delete dir="${release_main}" failonerror="false"/>
<delete file="${build}/net/yacy/peers/operation/yacyBuildProperties.java" failonerror="false"/>
<delete file="${build}/log4j.properties" failonerror="false"/>
<delete file="${lib}/yacycore.jar" failonerror="false"/>
<delete file="${lib}/yacy-cora.jar" failonerror="false"/>
<delete file="${lib}/svnRevNr.jar" failonerror="false"/>
<delete file="${libbuild}/svnRevNr.jar" failonerror="false"/>
<delete file="${libbuild}/GitRevTask.jar" failonerror="false"/>
<delete failonerror="false">
<fileset dir="${src}" includes="**/*.class" />
<fileset dir="${build}" includes="**/*.class" />
<fileset dir="${htroot}" includes="**/*.class" />
<fileset dir="test/" includes="**/*.class" />
<fileset dir="${libbuild}/svnRevNr" includes="**/*.class" />
<fileset dir="${libbuild}/GitRevTask" includes="**/*.class" />
<fileset dir="." includes="TEST-*" />
</delete>
<delete dir="test/DATA" failonerror="false"/>
</target>
<target name="installonlinux">
<!-- copy configuration files -->
<copy todir="${DESTDIR}/usr/share/yacy">
<fileset dir=".">
<include name="yacy.logging"/>
<include name="yacy.yellow"/>
<include name="yacy.badwords.example"/>
<include name="yacy.stopwords"/>
<include name="yacy.parser"/>
<include name="httpd.mime"/>
</fileset>
</copy>
<!-- copy defaults -->
<copy todir="${DESTDIR}/usr/share/yacy/defaults">
<fileset dir="${defaults}" includes="**/*"/>
</copy>
<!-- copy locales -->
<copy todir="${DESTDIR}/usr/share/yacy/locales">
<fileset dir="${locales}">
<include name="*"/>
</fileset>
</copy>
<!-- copy skins -->
<copy todir="${DESTDIR}/usr/share/yacy/skins">
<fileset dir="${skins}">
<include name="*"/>
</fileset>
</copy>
<!-- copy language statistics files -->
<copy todir="${DESTDIR}/usr/share/yacy/langstats">
<fileset dir="${langstats}">
<include name="*"/>
</fileset>
</copy>
<!-- copy shell scripts from bin/ -->
<!-- i'm not sure, if this is consistent with the debian policy -->
<!-- but for /usr/bin or /usr/lib we need an extra environment variable -->
<copy todir="${DESTDIR}/usr/share/yacy/bin">
<fileset dir="bin/">
<include name="*"/>
</fileset>
</copy>
<chmod dir="${DESTDIR}/usr/share/yacy/bin/" perm="755" includes="*"/>
<!-- copy documentation -->
<copy todir="${DESTDIR}/usr/share/doc/yacy">
<fileset dir=".">
<include name="readme.txt"/>
<include name="ChangeLog"/>
<include name="AUTHORS"/>
<include name="COPYRIGHT"/>
<include name="NOTICE"/>
</fileset>
</copy>
<!-- copy server pages -->
<copy todir="${DESTDIR}/usr/share/yacy/htroot">
<fileset dir="${htroot}">
<include name="**/*"/>
<exclude name="yacy/seedUpload/**"/>
</fileset>
<fileset dir="${htroot}">
<include name="yacy/seedUpload/yacySeedUploadFile.html"/>
<include name="yacy/seedUpload/yacySeedUploadFtp.html"/>
</fileset>
</copy>
<!-- prepare /var/lib/yacy -->
<mkdir dir="${DESTDIR}/var/lib/yacy" />
<mkdir dir="${DESTDIR}/var/lib/yacy/LOG" />
<mkdir dir="${DESTDIR}/var/lib/yacy/SETTINGS" />
<mkdir dir="${DESTDIR}/etc" />
<mkdir dir="${DESTDIR}/var/log" />
<symlink link="${DESTDIR}/usr/share/yacy/DATA"
resource="../../../var/lib/yacy"/>
<symlink link="${DESTDIR}/etc/yacy"
resource="../var/lib/yacy/SETTINGS"/>
<symlink link="${DESTDIR}/var/log/yacy"
resource="../lib/yacy/LOG"/>
</target>
<!-- run YaCy (needed for NetBeans4) -->
<target name="run" description="Run YaCy">
<!-- debug options:
java -Xrunhprof:help
Hprof usage: -Xrunhprof[:help]|[:<option>=<value>, ...]
Option Name and Value Description Default
_____________________ ___________ _______
heap=dump|sites|all heap profiling all
cpu=samples|times|old CPU usage off
monitor=y|n monitor contention n
format=a|b ascii or binary output a
file=<file> write data to file java.hprof(.txt for ascii)
net=<host>:<port> send data over a socket write to file
depth=<size> stack trace depth 4
cutoff=<value> output cutoff point 0.0001
lineno=y|n line number in traces? y
thread=y|n thread in traces? n
doe=y|n dump on exit? y
gc_okay=y|n GC okay during sampling y
Example: java -Xrunhprof:cpu=samples,file=log.txt,depth=3 FooClass
Note: format=b cannot be used with cpu=old|times
-->
<java classname="net.yacy.yacy" fork="yes">
<classpath>
<pathelement location="${build}"/>
<pathelement location="${htroot}"/>
<pathelement location="${lib}" />
<fileset dir="${lib}" includes="**/*.jar" />
</classpath>
<!--<arg value="-Xrunhprof"/>-->
<arg line="-start"/>
<jvmarg line="-Xms180m"/>
<jvmarg line="-Xmx512m"/>
<!-- <arg line="-migratewords"/>-->
<!-- <arg line="-start ${user.dir}"/>-->
</java>
</target>
<!-- run a single file (selected in NetBeans4) -->
<target name="run-single" depends="compile" description="Run Single File">
<fail unless="classname">Must set property 'classname'</fail>
<java classname="net.yacy.yacy" fork="yes">
<classpath refid="run.classpath"/>
<classpath>
<pathelement location="${build}"/>
<pathelement location="${htroot}"/>
<pathelement location="${lib}" />
<fileset dir="${lib}" includes="**/*.jar" />
</classpath>
<arg line=""/>
</java>
</target>
<!-- run YaCy with remote debugging enabled on port 8000 -->
<target name="debug" description="Debug YaCy">
<java classname="net.yacy.yacy" fork="yes">
<classpath>
<pathelement location="${build}"/>
<pathelement location="${htroot}"/>
<pathelement location="${lib}" />
<fileset dir="${lib}" includes="**/*.jar" />
</classpath>
<arg line="-start"/>
<jvmarg line="-Xdebug"/>
<jvmarg line="-Xnoagent"/>
<jvmarg line="-Djava.compiler=none"/>
<jvmarg line="-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"/>
</java>
</target>
<!-- stop YaCy again -->
<target name="stop" description="Stop YaCy">
<java classname="net.yacy.yacy" fork="yes">
<classpath>
<pathelement location="${build}"/>
<pathelement location="${htroot}"/>
<pathelement location="${lib}" />
<fileset dir="${lib}" includes="**/*.jar" />
</classpath>
<arg line="-stop"/>
</java>
</target>
<!-- create the html-documentation from javadoc -->
<target name="create-doc" description="Create the javadoc-HTML-Pages">
<javadoc destdir="doc/api"
author="true"
version="true"
use="false"
encoding="iso-8859-1"
windowtitle="YaCy API Documentation">
<classpath>
<fileset dir="${lib}">
<include name="**/*.jar"/>
</fileset>
<pathelement location="${build}"/>
</classpath>
<fileset dir="source" defaultexcludes="yes">
<include name="**/*.java" />
</fileset>
<fileset dir="htroot" defaultexcludes="yes">
<include name="**/*.java" />
</fileset>
</javadoc>
</target>
<target name="rpm" depends="all" description="Creates the main rpm-package and another for lib">
<mkdir dir="${release}/RPMS/noarch" />
<mkdir dir="${release}/BUILD" />
<copy file="addon/yacy-svn-4.spec" tofile="${release}/SPECS/yacy-svn.spec" overwrite="true" filtering="true" />
<rpm specFile="yacy-svn.spec" topDir="${release}" />
<move file="${release}/RPMS/noarch/yacy-${releaseVersion}_${releaseNr}-3.noarch.rpm"
tofile="${release}/yacy-${releaseVersion}_${releaseNr}-3.noarch.rpm" />
<move file="${release}/RPMS/noarch/yacy-lib-${releaseVersion}_${releaseNr}-3.noarch.rpm"
tofile="${release}/yacy-lib-${releaseVersion}_${releaseNr}-3.noarch.rpm" />
<delete dir="${release}/SPECS" failonerror="false" />
<delete dir="${release}/RPMS" failonerror="false" />
<delete dir="${release_windows}" failonerror="false" />
</target>
<target name="distWinInstaller" depends="copyMain4Dist" description="Creates an NSIS Windows installer">
<!-- http://nsisant.sourceforge.net/ -->
<mkdir dir="${release_windows}" />
<copy file="build.nsi" tofile="${release_windows}/build.nsi" overwrite="true" filtering="true" />
<taskdef name="nsis" classname="net.sf.nsisant.Task">
<classpath location="${libbuild}/nsisant-1.2.jar"/>
</taskdef>
<nsis script="${release_windows}/build.nsi" nocd="yes" verbosity="2" />
<move file="${release_windows}/yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}.exe"
tofile="${release}/yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}.exe" />
<delete dir="${release_main}"/>
<delete dir="${release_windows}" failonerror="false" />
</target>
<target name="distMacApp" depends="copyMain4Dist" description="Creates a YaCy.app">
<copy todir="${release_mac}/YaCy.app">
<fileset dir="${addon}/YaCy.app"></fileset>
</copy>
<copy file="${addon}/YaCy.app/Contents/Info.plist" tofile="${release_mac}/YaCy.app/Contents/Info.plist" filtering="true" overwrite="true" />
<move file="${release_main}" tofile="${release_mac}/YaCy.app/Contents/Resources/Java" verbose="false" />
<chmod file="${release_mac}/YaCy.app/Contents/MacOS/JavaApplicationStub" perm="755"/>
<exec executable="hdiutil">
<arg line="create -srcfolder ${release_mac}/YaCy.app ${release}/yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}.dmg"/>
</exec>
<delete dir="${release_mac}" failonerror="false" verbose="false" />
</target>
<!-- to use the deb command the following debian packages must be installed: dpkg-dev debhelper m4 -->
<target name="deb" depends="init" description="Creates a debian package">
<!-- replacing the old with the new revision number -->
<replaceregexp file="debian/changelog"
match="yacy \(.*\) unstable; urgency=low"
replace="yacy (${releaseVersion}.${releaseNr}) unstable; urgency=low" />
<!-- build debian package -->
<exec executable="dpkg-buildpackage">
<arg value="-b"/>
<arg value="-rfakeroot"/>
<arg value="-uc"/>
</exec>
<replaceregexp file="debian/changelog"
match="yacy \(.*\) unstable; urgency=low"
replace="yacy (*auto-git-version*) unstable; urgency=low" />
</target>
<target name="sign" depends="readBuildProperties" description="sign current release file in RELEASE/ with ${privateKeyFile}">
<fail message="There is no release file (${release}/${stdReleaseFile}) that could be signed !">
<condition>
<not><available file="${stdReleaseFile}" filepath="${release}" type="file" /></not>
</condition>
</fail>
<java classname="net.yacy.utils.CryptoLib" failonerror="true">
<classpath>
<pathelement location="${build}"/>
</classpath>
<arg line="--sign ${privateKeyFile} ${release}/${stdReleaseFile}"/>
</java>
</target>
<target name="genkey" depends="readBuildProperties" description="generate a pair of keys and write it to ${privateKeyFile} and ${privateKeyFile}.pub">
<fail message="There is already a private key file (${privateKeyFile})!">
<condition>
<available file="${privateKeyFile}" type="file" />
</condition>
</fail>
<java classname="net.yacy.utils.CryptoLib" failonerror="true">
<classpath>
<pathelement location="${build}"/>
</classpath>
<arg line="--gen-key ${privateKeyFile} ${privateKeyFile}.pub"/>
</java>
<chmod file="${privateKeyFile}" perm="600"/>
</target>
<target name="deleteData" description="start with a fresh yacy installation">
<delete dir="${data}"/>
</target>
</project>

View file

@ -1,6 +0,0 @@
yacy (1.2.9018) unstable; urgency=low
* SVN Update
-- Michael Peter Christen <mc@yacy.net> Wed, 28 May 2008 19:15:45 +0200

View file

@ -1 +0,0 @@
5

View file

@ -1,89 +0,0 @@
#!/bin/sh
set -e
# if we do not have debconf, we just skip this
. /usr/share/debconf/confmodule || exit 0
CONFIGFILE=/var/lib/yacy/SETTINGS/yacy.conf
if [ ! -e $CONFIGFILE ]; then
db_set yacy/peername $(hostname)
else
db_set yacy/peername $(grep "^peerName=" $CONFIGFILE | sed -e "s/peerName=\(.*\)/\1/")
NETWORK_URL=$(grep "^network\.unit\.definition=" $CONFIGFILE | sed -e "s/network\.unit\.definition=\(.*\)/\1/")
case "$NETWORK_URL" in
defaults/yacy.network.freeworld.unit)
db_set yacy/network freeworld
;;
defaults/yacy.network.intranet.unit)
db_set yacy/network intranet
;;
defaults/yacy.network.allip.unit)
db_set yacy/network allip
;;
defaults/yacy.network.webportal.unit)
db_set yacy/network webportal
;;
*)
db_set yacy/network url
db_set yacy/network-url "$NETWORK_URL"
;;
esac
db_set yacy/memory-start $(grep "^javastart_Xms=" $CONFIGFILE | sed -e "s/javastart_Xms=Xms\(.*\)m/\1/")
db_set yacy/memory-max $(grep "^javastart_Xmx=" $CONFIGFILE | sed -e "s/javastart_Xmx=Xmx\(.*\)m/\1/")
fi
db_capb backup
# use state machine to support step back
STATE=1
while true; do
case "$STATE" in
1)
# Two unrelated questions.
db_input high yacy/peername || true
db_input high yacy/password || true
db_input high yacy/network || true
;;
2)
# Only ask this question if the
# first question was answered with
# url
db_get yacy/network
if [ "$RET" = "url" ]; then
db_input high yacy/network-url || true
fi
;;
3)
db_input high yacy/memory-start || true
db_input high yacy/memory-max || true
;;
*)
# The default case catches when $STATE is greater than the
# last implemented state, and breaks out of the loop. This
# requires that states be numbered consecutively from 1
# with no gaps, as the default case will also be entered
# if there is a break in the numbering
break # exits the enclosing "while" loop
;;
esac
if db_go; then
STATE=$(($STATE + 1))
else
STATE=$(($STATE - 1))
fi
done
if [ $STATE -eq 0 ]; then
# The user has asked to back up from the first
# question. This case is problematical. Regular
# dpkg and apt package installation isn't capable
# of backing up questions between packages as this
# is written, so this will exit leaving the package
# unconfigured - probably the best way to handle
# the situation.
exit 10
fi

View file

@ -1,19 +0,0 @@
Source: yacy
Section: network
Priority: extra
Maintainer: Michael Peter Christen <mc@yacy.net>
Build-Depends: ant, sun-java6-jdk | openjdk-6-jdk, debhelper (>= 5), m4
Standards-Version: 3.7.2
Package: yacy
Architecture: all
Depends: java2-runtime, sudo, debconf
Description: Peer-to-Peer Web Search Engine
YaCy is a Java-based peer-to-peer search engine.
It provides a personal web search engine, which is
free and decentralized. The search index is distributed
over a p2p network. It contains a crawler, an indexer
and an own database engine. In the 'robinson-modus', YaCy
can be used for a topic-oriented search portal or to index an
intranet.
Homepage: http://yacy.net/

View file

@ -1,30 +0,0 @@
This package was debianized by Florian Richter <Florian_Richter@gmx.de> on
Wed, 28 May 2008 19:15:45 +0200.
It was downloaded from <http://yacy.net>
Upstream Author: Michael Peter Christen <mc@yacy.net>
Copyright: (C) by Michael Peter Christen; mc@yacy.net
License:
All parts of the software known as YaCy are covered 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 unless stated otherwise.
You should have received a copy of the GNU General Public License
along with this software; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
People who have contributed to this software in addition to those
mentioned in the source code or other files belonging to YaCy:
Jakub Steiner (bookmarkpriv.png, bookmarkpub.png)
The Debian packaging is (C) 2008, Florian Richter <Florian_Richter@gmx.de> and
is licensed under the GPL, see `/usr/share/common-licenses/GPL'.
Some libraries of yacy have different licenses. Please have a look at lib/

View file

@ -1,128 +0,0 @@
#!/bin/sh
# postinst script for yacy
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
add_group_if_missing() {
if [ -x /usr/sbin/adduser ]; then
if ! id -g yacy >/dev/null 2>&1; then
addgroup --gid 265 --force-badname yacy
fi
fi
}
add_user_if_missing() {
if [ -x /usr/sbin/adduser ]; then
if ! id -u yacy > /dev/null 2>&1; then
adduser --system --home /var/lib/yacy --no-create-home \
--uid 264 --gid 265 --disabled-password --force-badname \
yacy
fi
fi
}
add_group_if_missing
add_user_if_missing
###### debconf stuff
CONFIGFILE=/var/lib/yacy/SETTINGS/yacy.conf
. /usr/share/debconf/confmodule
# Generate config file, if it doesn't exist.
if [ ! -e $CONFIGFILE ]; then
mkdir -p /var/lib/yacy/SETTINGS
echo "# Initial configfile from debconf" > $CONFIGFILE
echo "peerName=$HOSTNAME" >> $CONFIGFILE
echo "adminAccountBase64MD5=" >> $CONFIGFILE
echo "network.unit.definition=defaults/yacy.network.freeworld.unit" >> $CONFIGFILE
echo "adminAccountForLocalhost=false" >> $CONFIGFILE
echo "javastart_Xmx=Xmx600m" >> $CONFIGFILE
echo "javastart_Xms=Xmx600m" >> $CONFIGFILE
fi
# Substitute in the values from the debconf db.
# There are obvious optimizations possible here.
# The cp before the sed ensures we do not mess up
# the config file's ownership and permissions.
db_get yacy/peername
PEERNAME="$RET"
db_get yacy/password
PASSWORD="$RET"
if [ "$PASSWORD" != "" ]; then
BASE64=$(java -cp /usr/share/java/yacy/yacycore.jar net.yacy.cora.order.Base64Order -es "admin:$PASSWORD")
B64MD5=$(java -cp /usr/share/java/yacy/yacycore.jar net.yacy.cora.order.Digest -strfhex "$BASE64")
PASSWORD_HASH=$(echo $B64MD5 | sed "s/\(\S\) .*/\1/")
db_set yacy/password ""
else
PASSWORD_HASH=$(grep "^adminAccountBase64MD5=" $CONFIGFILE | sed -e "s/^adminAccountBase64MD5=\(.*\)/\1/")
fi
db_get yacy/network
NETWORK="$RET"
if [ "$NETWORK" = "url" ]; then
db_get yacy/network-url
NETWORK="$RET"
else
NETWORK="defaults/yacy\\.network\\.$NETWORK\\.unit"
fi
db_get yacy/memory-start
MEMORY_START="$RET"
db_get yacy/memory-max
MEMORY_MAX="$RET"
cp -a -f $CONFIGFILE $CONFIGFILE.tmp
# If the admin deleted or commented some variables but then set
# them via debconf, (re-)add them to the conffile.
#test -z "$FOO" || grep -Eq '^ *FOO=' $CONFIGFILE || \
# echo "FOO=" >> $CONFIGFILE
#test -z "$BAR" || grep -Eq '^ *BAR=' $CONFIGFILE || \
# echo "BAR=" >> $CONFIGFILE
sed -e "s,^ *peerName=.*,peerName=$PEERNAME," \
-e "s,^ *adminAccountBase64MD5=.*,adminAccountBase64MD5=$PASSWORD_HASH," \
-e "s,^ *network\.unit\.definition=.*,network\.unit\.definition=$NETWORK," \
-e "s,^ *javastart_Xms=.*,javastart_Xms=Xms${MEMORY_START}m," \
-e "s,^ *javastart_Xmx=.*,javastart_Xmx=Xmx${MEMORY_MAX}m," \
< $CONFIGFILE > $CONFIGFILE.tmp
mv -f $CONFIGFILE.tmp $CONFIGFILE
#### debconf stuff end
chown yacy:yacy -R /var/lib/yacy
case "$1" in
configure)
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View file

@ -1,44 +0,0 @@
#!/bin/sh
# postrm script for yacy
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge)
rm -rf /var/lib/yacy /etc/init.d/yacy
;;
remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View file

@ -1,37 +0,0 @@
#!/bin/sh
# preinst script for yacy
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <new-preinst> `install'
# * <new-preinst> `install' <old-version>
# * <new-preinst> `upgrade' <old-version>
# * <old-preinst> `abort-upgrade' <new-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
install|upgrade)
;;
abort-upgrade)
;;
*)
echo "preinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View file

@ -1,40 +0,0 @@
#!/bin/sh
# prerm script for yacy
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <prerm> `remove'
# * <old-prerm> `upgrade' <new-version>
# * <new-prerm> `failed-upgrade' <old-version>
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
# * <deconfigured's-prerm> `deconfigure' `in-favour'
# <package-being-installed> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
remove|upgrade|deconfigure)
;;
failed-upgrade)
;;
*)
echo "prerm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View file

@ -1,55 +0,0 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
configure: configure-stamp
configure-stamp:
# Add here commands to configure the package.
build: build-stamp
build-stamp: configure-stamp
# build yacy
ant compile -DPKGMANAGER=true
m4 -DDebian addon/yacyInit.m4 >debian/yacy.init
clean:
ant clean
rm -f debian/yacy.init
dh_clean
install:
# Add here commands to install the package into debian/yacy.
ant installonlinux -DDESTDIR=$(CURDIR)/debian/yacy
mkdir -p $(CURDIR)/debian/yacy/usr/share/java/yacy/
cp lib/*.jar $(CURDIR)/debian/yacy/usr/share/java/yacy/
#cp -r classes $(CURDIR)/debian/yacy/usr/share/java/yacy/
# Build architecture-independent files here.
binary-indep: install
# We have nothing to do by default.
# Build architecture-dependent files here.
binary-arch: install
dh_installdebconf
dh_installchangelogs
dh_installdocs
dh_installinit
# dh_installman
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure

View file

@ -1 +0,0 @@
misc:Depends=debconf (>= 0.5) | debconf-2.0

View file

@ -1,50 +0,0 @@
Template: yacy/peername
Type: string
Description: name for YaCy-peer
Template: yacy/password
Type: password
Description: Admin password
Please choose an admin password for YaCy
.
If you leave this blank, YaCy's admin interface is accessable
from localhost without password. If you already set
a password, the old password won't be changed.
Template: yacy/network
Type: select
Choices: freeworld, intranet, allip, webportal, url
Default: freeworld
Description: Choose network to participate
Choose a network:
* freeworld: public general purpose YaCy network
* intranet: index local (private) ips only
* allip: private peer for all websites
* webportal: public peer for specific websites
* url: give custom network definition file via url
Template: yacy/network-url
Type: string
Description: URL for custom network definition file
Use this to configure your own YaCy-network
Template: yacy/memory-start
Type: string
Default: 180
Description: Initial java memory setting
Initial memory (in MB) for java virtual machine, you are ask for the maximum memory usage in the next question.
.
If a high performance for large search indexes is wanted, then setting the values to equal number is recommended.
.
If YaCy shall be nice in not-only-yacy environments, then the Xms value may be lower
Template: yacy/memory-max
Type: string
Default: 600
Description: Maximum java memory
Maximum memory (in MB) for java virtual machine
.
If a high performance for large search indexes is wanted, then setting the values to equal number is recommended
.
If YaCy shall be nice in not-only-yacy environments, then the Xms value may be lower

View file

@ -1,970 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0" xmlns:h="http://www.w3.org/1999/xhtml"
xmlns="http://www.w3.org/1999/XSL/Transform"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xalan="http://xml.apache.org/xalan"
xmlns:java="http://xml.apache.org/xalan/java"
exclude-result-prefixes="java"
>
<!-- Version 0.21 by Fabien.Gandon@sophia.inria.fr -->
<!-- This software is distributed under either the CeCILL-C license or the
GNU Lesser General Public License version 3 license. -->
<!-- This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License -->
<!-- as published by the Free Software Foundation version 3 of the License
or under the terms of the CeCILL-C license. -->
<!-- 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 Lesser General Public License version 3 at http://www.gnu.org/licenses/ -->
<!-- and the CeCILL-C license at http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html
for more details -->
<output indent="yes" method="xml" media-type="application/rdf+xml"
encoding="UTF-8" omit-xml-declaration="yes" />
<!-- base of the current HTML doc -->
<variable name='html_base' select="//*/h:head/h:base[position()=1]/@href" />
<!-- default HTML vocabulary namespace -->
<variable name='default_voc' select="'http://www.w3.org/1999/xhtml/vocab#'" />
<!-- parser instance -->
<param name='parser' select="''" />
<!-- url of the current XHTML page if provided by the XSLT engine -->
<param name='url' select="''" />
<!-- this contains the URL of the source document whether it was provided
by the base or as a parameter e.g. http://example.org/bla/file.html -->
<variable name='this'>
<choose>
<when test="string-length($html_base)>0">
<value-of select="$html_base" />
</when>
<otherwise>
<value-of select="$url" />
</otherwise>
</choose>
</variable>
<!-- this_location contains the location the source document e.g. http://example.org/bla/ -->
<variable name='this_location'>
<call-template name="get-location">
<with-param name="url" select="$this" />
</call-template>
</variable>
<!-- this_root contains the root location of the source document e.g. http://example.org/ -->
<variable name='this_root'>
<call-template name="get-root">
<with-param name="url" select="$this" />
</call-template>
</variable>
<!-- templates for parsing - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - -->
<!--Start the RDF generation -->
<template match="/">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<apply-templates mode="rdf2rdfxml" /> <!-- the mode is used to ease integration with other XSLT templates -->
</rdf:RDF>
</template>
<!-- match RDFa element -->
<template
match="*[attribute::property or attribute::rel or attribute::rev or attribute::typeof]"
mode="rdf2rdfxml">
<!-- identify suject -->
<variable name="subject">
<call-template name="subject" />
</variable>
<!-- do we have object properties? -->
<if test="string-length(@rel)>0 or string-length(@rev)>0">
<variable name="object"> <!-- identify the object(s) -->
<choose>
<when test="@resource">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="@resource" />
</call-template>
</when>
<when test="@href">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="@href" />
</call-template>
</when>
<when
test="descendant::*[attribute::about or attribute::src or attribute::typeof or
attribute::href or attribute::resource or
attribute::rel or attribute::rev or attribute::property]">
<call-template name="recurse-objects" />
</when>
<otherwise>
<call-template name="self-curie-or-uri">
<with-param name="node" select="." />
</call-template>
</otherwise>
</choose>
</variable>
<call-template name="relrev">
<with-param name="subject" select="$subject" />
<with-param name="object" select="$object" />
</call-template>
</if>
<!-- do we have data properties ? -->
<if test="string-length(@property)>0">
<!-- identify language -->
<variable name="language"
select="string(ancestor-or-self::*/attribute::xml:lang[position()=1])" />
<variable name="expended-pro">
<call-template name="expand-ns">
<with-param name="qname" select="@property" />
</call-template>
</variable>
<choose>
<when test="@content"> <!-- there is a specific content -->
<call-template name="property">
<with-param name="subject" select="$subject" />
<with-param name="object" select="@content" />
<with-param name="datatype">
<choose>
<when test="@datatype='' or not(@datatype)"></when> <!-- enforcing plain literal -->
<otherwise>
<call-template name="expand-ns">
<with-param name="qname" select="@datatype" />
</call-template>
</otherwise>
</choose>
</with-param>
<with-param name="predicate" select="@property" />
<with-param name="attrib" select="'true'" />
<with-param name="language" select="$language" />
</call-template>
</when>
<when test="not(*)"> <!-- there no specific content but there are no children elements in the
content -->
<call-template name="property">
<with-param name="subject" select="$subject" />
<with-param name="object" select="." />
<with-param name="datatype">
<choose>
<when test="@datatype='' or not(@datatype)"></when> <!-- enforcing plain literal -->
<otherwise>
<call-template name="expand-ns">
<with-param name="qname" select="@datatype" />
</call-template>
</otherwise>
</choose>
</with-param>
<with-param name="predicate" select="@property" />
<with-param name="attrib" select="'true'" />
<with-param name="language" select="$language" />
</call-template>
</when>
<otherwise> <!-- there is no specific content; we use the value of element -->
<call-template name="property">
<with-param name="subject" select="$subject" />
<with-param name="object" select="." />
<with-param name="datatype">
<choose>
<when test="@datatype='' or not(@datatype)">
http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral
</when> <!-- enforcing XML literal -->
<otherwise>
<call-template name="expand-ns">
<with-param name="qname" select="@datatype" />
</call-template>
</otherwise>
</choose>
</with-param>
<with-param name="predicate" select="@property" />
<with-param name="attrib" select="'false'" />
<with-param name="language" select="$language" />
</call-template>
</otherwise>
</choose>
</if>
<!-- do we have classes ? -->
<if test="@typeof">
<call-template name="class">
<with-param name="resource">
<call-template name="self-curie-or-uri">
<with-param name="node" select="." />
</call-template>
</with-param>
<with-param name="class" select="@typeof" />
</call-template>
</if>
<apply-templates mode="rdf2rdfxml" />
</template>
<!-- named templates to process URIs and token lists - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- tokenize a string using space as a delimiter -->
<template name="tokenize">
<param name="string" />
<if test="string-length($string)>0">
<choose>
<when test="contains($string,' ')">
<value-of select="normalize-space(substring-before($string,' '))" />
<call-template name="tokenize">
<with-param name="string"
select="normalize-space(substring-after($string,' '))" />
</call-template>
</when>
<otherwise>
<value-of select="$string" />
</otherwise>
</choose>
</if>
</template>
<!-- get file location from URL -->
<template name="get-location">
<param name="url" />
<if test="string-length($url)>0 and contains($url,'/')">
<value-of select="concat(substring-before($url,'/'),'/')" />
<call-template name="get-location">
<with-param name="url" select="substring-after($url,'/')" />
</call-template>
</if>
</template>
<!-- get root location from URL -->
<template name="get-root">
<param name="url" />
<choose>
<when test="contains($url,'//')">
<value-of
select="concat(substring-before($url,'//'),'//',substring-before(substring-after($url,'//'),'/'),'/')" />
</when>
<otherwise>
UNKNOWN ROOT
</otherwise>
</choose>
</template>
<!-- return namespace of a qname -->
<template name="return-ns">
<param name="qname" />
<variable name="ns_prefix" select="substring-before($qname,':')" />
<if test="string-length($ns_prefix)>0"> <!-- prefix must be explicit -->
<variable name="name" select="substring-after($qname,':')" />
<value-of
select="ancestor-or-self::*/namespace::*[name()=$ns_prefix][position()=1]" />
</if>
<if
test="string-length($ns_prefix)=0 and ancestor-or-self::*/namespace::*[name()=''][position()=1]"> <!-- no prefix -->
<variable name="name" select="substring-after($qname,':')" />
<value-of select="ancestor-or-self::*/namespace::*[name()=''][position()=1]" />
</if>
</template>
<!-- expand namespace of a qname -->
<template name="expand-ns">
<param name="qname" />
<variable name="ns_prefix" select="substring-before($qname,':')" />
<if test="string-length($ns_prefix)>0"> <!-- prefix must be explicit -->
<variable name="name" select="substring-after($qname,':')" />
<variable name="ns_uri"
select="ancestor-or-self::*/namespace::*[name()=$ns_prefix][position()=1]" />
<value-of select="concat($ns_uri,$name)" />
</if>
<if
test="string-length($ns_prefix)=0 and ancestor-or-self::*/namespace::*[name()=''][position()=1]"> <!-- no prefix -->
<variable name="name" select="substring-after($qname,':')" />
<variable name="ns_uri"
select="ancestor-or-self::*/namespace::*[name()=''][position()=1]" />
<value-of select="concat($ns_uri,$name)" />
</if>
</template>
<!-- determines the CURIE / URI of a node -->
<template name="self-curie-or-uri">
<param name="node" />
<choose>
<when test="$node/attribute::about"> <!-- we have an about attribute to extend -->
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$node/attribute::about" />
</call-template>
</when>
<when test="$node/attribute::src"> <!-- we have an src attribute to extend -->
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$node/attribute::src" />
</call-template>
</when>
<when
test="$node/attribute::resource and not($node/attribute::rel or $node/attribute::rev)"> <!-- enforcing the resource as subject if no rel or rev -->
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$node/attribute::resource" />
</call-template>
</when>
<when
test="$node/attribute::href and not($node/attribute::rel or $node/attribute::rev)"> <!-- enforcing the href as subject if no rel or rev -->
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$node/attribute::href" />
</call-template>
</when>
<when
test="$node/self::h:head or $node/self::h:body or $node/self::h:html">
<value-of select="$this" />
</when> <!-- enforcing the doc as subject -->
<when test="$node/attribute::id"> <!-- we have an id attribute to extend -->
<value-of select="concat($this,'#',$node/attribute::id)" />
</when>
<otherwise>
blank:node:
<value-of select="generate-id($node)" />
</otherwise>
</choose>
</template>
<!-- expand CURIE / URI -->
<template name="expand-curie-or-uri">
<param name="curie_or_uri" />
<choose>
<when test="starts-with($curie_or_uri,'[_:')"> <!-- we have a CURIE blank node -->
<value-of
select="concat('blank:node:',substring-after(substring-before($curie_or_uri,']'),'[_:'))" />
</when>
<when test="starts-with($curie_or_uri,'[')"> <!-- we have a CURIE between square brackets -->
<call-template name="expand-ns">
<with-param name="qname"
select="substring-after(substring-before($curie_or_uri,']'),'[')" />
</call-template>
</when>
<when test="starts-with($curie_or_uri,'#')"> <!-- we have an anchor -->
<value-of select="concat($this,$curie_or_uri)" />
</when>
<when test="string-length($curie_or_uri)=0"> <!-- empty anchor means the document itself -->
<value-of select="$this" />
</when>
<when
test="not(starts-with($curie_or_uri,'[')) and contains($curie_or_uri,':')"> <!-- it is a URI -->
<value-of select="$curie_or_uri" />
</when>
<when
test="not(contains($curie_or_uri,'://')) and not(starts-with($curie_or_uri,'/'))"> <!-- relative URL -->
<value-of select="concat($this_location,$curie_or_uri)" />
</when>
<when
test="not(contains($curie_or_uri,'://')) and (starts-with($curie_or_uri,'/'))"> <!-- URL from root domain -->
<value-of select="concat($this_root,substring-after($curie_or_uri,'/'))" />
</when>
<otherwise>
UNKNOWN CURIE URI
</otherwise>
</choose>
</template>
<!-- returns the first token in a list separated by spaces -->
<template name="get-first-token">
<param name="tokens" />
<if test="string-length($tokens)>0">
<choose>
<when test="contains($tokens,' ')">
<value-of select="normalize-space(substring-before($tokens,' '))" />
</when>
<otherwise>
<value-of select="$tokens" />
</otherwise>
</choose>
</if>
</template>
<!-- returns the namespace for an object property -->
<template name="get-relrev-ns">
<param name="qname" />
<variable name="ns_prefix"
select="substring-before(translate($qname,'[]',''),':')" />
<choose>
<when test="string-length($ns_prefix)>0">
<call-template name="return-ns">
<with-param name="qname" select="$qname" />
</call-template>
</when>
<!-- returns default_voc if the predicate is a reserved value -->
<otherwise>
<variable name="is-reserved">
<call-template name="check-reserved">
<with-param name="nonprefixed">
<call-template name="no-leading-colon">
<with-param name="name" select="$qname" />
</call-template>
</with-param>
</call-template>
</variable>
<if test="$is-reserved='true'">
<value-of select="$default_voc" />
</if>
</otherwise>
</choose>
</template>
<!-- returns the namespace for a data property -->
<template name="get-property-ns">
<param name="qname" />
<variable name="ns_prefix"
select="substring-before(translate($qname,'[]',''),':')" />
<choose>
<when test="string-length($ns_prefix)>0">
<call-template name="return-ns">
<with-param name="qname" select="$qname" />
</call-template>
</when>
<!-- returns default_voc otherwise -->
<otherwise>
<value-of select="$default_voc" />
</otherwise>
</choose>
</template>
<!-- returns the qname for a predicate -->
<template name="get-predicate-name">
<param name="qname" />
<variable name="clean_name" select="translate($qname,'[]','')" />
<call-template name="no-leading-colon">
<with-param name="name" select="$clean_name" />
</call-template>
</template>
<!-- no leading colon -->
<template name="no-leading-colon">
<param name="name" />
<choose>
<when test="starts-with($name,':')"> <!-- remove leading colons -->
<value-of select="substring-after($name,':')" />
</when>
<otherwise>
<value-of select="$name" />
</otherwise>
</choose>
</template>
<!-- check if a predicate is reserved -->
<template name="check-reserved">
<param name="nonprefixed" />
<choose>
<when
test="$nonprefixed='alternate' or $nonprefixed='appendix' or $nonprefixed='bookmark' or $nonprefixed='cite'">
true
</when>
<when
test="$nonprefixed='chapter' or $nonprefixed='contents' or $nonprefixed='copyright' or $nonprefixed='first'">
true
</when>
<when
test="$nonprefixed='glossary' or $nonprefixed='help' or $nonprefixed='icon' or $nonprefixed='index'">
true
</when>
<when
test="$nonprefixed='last' or $nonprefixed='license' or $nonprefixed='meta' or $nonprefixed='next'">
true
</when>
<when
test="$nonprefixed='p3pv1' or $nonprefixed='prev' or $nonprefixed='role' or $nonprefixed='section'">
true
</when>
<when
test="$nonprefixed='stylesheet' or $nonprefixed='subsection' or $nonprefixed='start' or $nonprefixed='top'">
true
</when>
<when test="$nonprefixed='up'">
true
</when>
<when
test="$nonprefixed='made' or $nonprefixed='previous' or $nonprefixed='search'">
true
</when> <!-- added because they are frequent -->
<otherwise>
false
</otherwise>
</choose>
</template>
<!-- named templates to generate RDF - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - -->
<template name="recursive-copy"> <!-- full copy -->
<copy>
<for-each select="node()|attribute::* ">
<call-template name="recursive-copy" />
</for-each>
</copy>
</template>
<template name="subject"> <!-- determines current subject -->
<choose>
<!-- current node is a meta or a link in the head and with no about attribute -->
<when
test="(self::h:link or self::h:meta) and ( ancestor::h:head ) and not(attribute::about)">
<value-of select="$this" />
</when>
<!-- an attribute about was specified on the node -->
<when test="self::*/attribute::about">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="@about" />
</call-template>
</when>
<!-- an attribute src was specified on the node -->
<when test="self::*/attribute::src">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="@src" />
</call-template>
</when>
<!-- an attribute typeof was specified on the node -->
<when test="self::*/attribute::typeof">
<call-template name="self-curie-or-uri">
<with-param name="node" select="." />
</call-template>
</when>
<!-- current node is a meta or a link in the body and with no about attribute -->
<when
test="(self::h:link or self::h:meta) and not( ancestor::h:head ) and not(attribute::about)">
<call-template name="self-curie-or-uri">
<with-param name="node" select="parent::*" />
</call-template>
</when>
<!-- an about was specified on its parent or the parent had a rel or a
rev attribute but no href or an typeof. -->
<when
test="ancestor::*[attribute::about or attribute::src or attribute::typeof or attribute::resource or attribute::href or attribute::rel or attribute::rev][position()=1]">
<variable name="selected_ancestor"
select="ancestor::*[attribute::about or attribute::src or attribute::typeof or attribute::resource or attribute::href or attribute::rel or attribute::rev][position()=1]" />
<choose>
<when
test="$selected_ancestor[(attribute::rel or attribute::rev) and not (attribute::resource or attribute::href)]">
<value-of
select="concat('blank:node:INSIDE_',generate-id($selected_ancestor))" />
</when>
<when test="$selected_ancestor/attribute::about">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$selected_ancestor/attribute::about" />
</call-template>
</when>
<when test="$selected_ancestor/attribute::src">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$selected_ancestor/attribute::src" />
</call-template>
</when>
<when test="$selected_ancestor/attribute::resource">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri"
select="$selected_ancestor/attribute::resource" />
</call-template>
</when>
<when test="$selected_ancestor/attribute::href">
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="$selected_ancestor/attribute::href" />
</call-template>
</when>
<otherwise>
<call-template name="self-curie-or-uri">
<with-param name="node" select="$selected_ancestor" />
</call-template>
</otherwise>
</choose>
</when>
<otherwise> <!-- it must be about the current document -->
<value-of select="$this" />
</otherwise>
</choose>
</template>
<!-- recursive call for object(s) of object properties -->
<template name="recurse-objects">
<xsl:for-each select="child::*">
<choose>
<when test="attribute::about or attribute::src"> <!-- there is a known resource -->
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri" select="attribute::about | attribute::src" />
</call-template>
<text> </text>
</when>
<when
test="(attribute::resource or attribute::href) and ( not (attribute::rel or attribute::rev or attribute::property))"> <!-- there is an incomplet triple -->
<call-template name="expand-curie-or-uri">
<with-param name="curie_or_uri"
select="attribute::resource | attribute::href" />
</call-template>
<text> </text>
</when>
<when test="attribute::typeof and not (attribute::about)"> <!-- there is an implicit resource -->
<call-template name="self-curie-or-uri">
<with-param name="node" select="." />
</call-template>
<text> </text>
</when>
<when test="attribute::rel or attribute::rev or attribute::property"> <!-- there is an implicit resource -->
<if
test="not (preceding-sibling::*[attribute::rel or attribute::rev or attribute::property])"> <!-- generate the triple only once -->
<call-template name="subject" />
<text> </text>
</if>
</when>
<otherwise> <!-- nothing at that level thus consider children -->
<call-template name="recurse-objects" />
</otherwise>
</choose>
</xsl:for-each>
</template>
<!-- generate recursive call for multiple objects in rel or rev -->
<template name="relrev">
<param name="subject" />
<param name="object" />
<!-- test for multiple predicates -->
<variable name="single-object">
<call-template name="get-first-token">
<with-param name="tokens" select="$object" />
</call-template>
</variable>
<if test="string-length(@rel)>0">
<call-template name="relation">
<with-param name="subject" select="$subject" />
<with-param name="object" select="$single-object" />
<with-param name="predicate" select="@rel" />
</call-template>
</if>
<if test="string-length(@rev)>0">
<call-template name="relation">
<with-param name="subject" select="$single-object" />
<with-param name="object" select="$subject" />
<with-param name="predicate" select="@rev" />
</call-template>
</if>
<!-- recursive call for multiple predicates -->
<variable name="other-objects"
select="normalize-space(substring-after($object,' '))" />
<if test="string-length($other-objects)>0">
<call-template name="relrev">
<with-param name="subject" select="$subject" />
<with-param name="object" select="$other-objects" />
</call-template>
</if>
</template>
<!-- generate an RDF statement for a relation -->
<template name="relation">
<param name="subject" />
<param name="predicate" />
<param name="object" />
<!-- test for multiple predicates -->
<variable name="single-predicate">
<call-template name="get-first-token">
<with-param name="tokens" select="$predicate" />
</call-template>
</variable>
<!-- get namespace of the predicate -->
<variable name="predicate-ns">
<call-template name="get-relrev-ns">
<with-param name="qname" select="$single-predicate" />
</call-template>
</variable>
<!-- get name of the predicate -->
<variable name="predicate-name">
<call-template name="get-predicate-name">
<with-param name="qname" select="$single-predicate" />
</call-template>
</variable>
<choose>
<when test="string-length($predicate-ns)>0"> <!-- there is a known namespace for the predicate -->
<choose>
<when test="starts-with($subject,'blank:node:')">
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheSubjectNodeID($parser,substring-after($subject,'blank:node:'))" />
</when>
<otherwise>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheSubjectURI($parser,$subject)" />
</otherwise>
</choose>
<!-- get full predicate -->
<variable name="expanded-predicate">
<call-template name="expand-ns">
<with-param name="qname" select="$single-predicate" />
</call-template>
</variable>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setThePropertyURI($parser,$expanded-predicate)" />
<choose>
<when test="starts-with($object,'blank:node:')">
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheObjectNodeID($parser,substring-after($object,'blank:node:'))" />
</when>
<otherwise>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheObjectURI($parser,$object)" />
</otherwise>
</choose>
</when>
<otherwise> <!-- no namespace generate a comment for debug -->
<xsl:comment>
No namespace for the rel or rev value ; could not produce the
triple for:
<value-of select="$subject" />
-
<value-of select="$single-predicate" />
-
<value-of select="$object" />
</xsl:comment>
</otherwise>
</choose>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.flushObjectProperty($parser)" />
<!-- recursive call for multiple predicates -->
<variable name="other-predicates"
select="normalize-space(substring-after($predicate,' '))" />
<if test="string-length($other-predicates)>0">
<call-template name="relation">
<with-param name="subject" select="$subject" />
<with-param name="predicate" select="$other-predicates" />
<with-param name="object" select="$object" />
</call-template>
</if>
</template>
<!-- generate an RDF statement for a property -->
<template name="property">
<param name="subject" />
<param name="predicate" />
<param name="object" />
<param name="datatype" />
<param name="attrib" /> <!-- is the content from an attribute ? true /false -->
<param name="language" />
<!-- test for multiple predicates -->
<variable name="single-predicate">
<call-template name="get-first-token">
<with-param name="tokens" select="$predicate" />
</call-template>
</variable>
<!-- get namespace of the predicate -->
<variable name="predicate-ns">
<call-template name="get-property-ns">
<with-param name="qname" select="$single-predicate" />
</call-template>
</variable>
<!-- get name of the predicate -->
<variable name="predicate-name">
<call-template name="get-predicate-name">
<with-param name="qname" select="$single-predicate" />
</call-template>
</variable>
<choose>
<when test="string-length($predicate-ns)>0"> <!-- there is a known namespace for the predicate -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setThePropertyURI($parser,$predicate-name)" />
<choose>
<when test="starts-with($subject,'blank:nod: ')">
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheSubjectNodeID($parser,substring-after($subject,'blank:node:'))" />
</when>
<otherwise>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheSubjectURI($parser,$subject)" />
</otherwise>
</choose>
<if test="string-length($language)>0">
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheLanguage($parser,$language)" />
</if>
<choose>
<when
test="$datatype='http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral'">
<choose>
<when test="$attrib='true'"> <!-- content is in an attribute -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheDatatype($parser,$datatype)" />
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheValue($parser,normalize-space(string($object)))" />
</when>
<otherwise> <!-- content is in the element and may include some tags -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheDatatype($parser,$datatype)" />
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheValue($parser,$object)" />
</otherwise>
</choose>
</when>
<when test="string-length($datatype)>0">
<!-- there is a datatype other than XMLLiteral -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheDatatype($parser,$datatype)" />
<choose>
<when test="$attrib='true'"> <!-- content is in an attribute -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheValue($parser,normalize-space(string($object)))" />
</when>
<otherwise> <!-- content is in the text nodes of the element -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheValue($parser,$object)" />
</otherwise>
</choose>
</when>
<otherwise> <!-- there is no datatype -->
<choose>
<when test="$attrib='true'"> <!-- content is in an attribute -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheValue($parser,normalize-space(string($object)))" />
</when>
<otherwise> <!-- content is in the text nodes of the element -->
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheValue($parser,$object)" />
</otherwise>
</choose>
</otherwise>
</choose>
</when>
<otherwise> <!-- generate a comment for debug -->
<xsl:comment>
Could not produce the triple for:
<value-of select="$subject" />
-
<value-of select="$single-predicate" />
-
<value-of select="$object" />
</xsl:comment>
</otherwise>
</choose>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.flushDataProperty($parser)" />
<!-- recursive call for multiple predicates -->
<variable name="other-predicates"
select="normalize-space(substring-after($predicate,' '))" />
<if test="string-length($other-predicates)>0">
<call-template name="property">
<with-param name="subject" select="$subject" />
<with-param name="predicate" select="$other-predicates" />
<with-param name="object" select="$object" />
<with-param name="datatype" select="$datatype" />
<with-param name="attrib" select="$attrib" />
<with-param name="language" select="$language" />
</call-template>
</if>
</template>
<!-- generate an RDF statement for a class -->
<template name="class">
<param name="resource" />
<param name="class" />
<!-- case multiple classes -->
<variable name="single-class">
<call-template name="get-first-token">
<with-param name="tokens" select="$class" />
</call-template>
</variable>
<!-- get namespace of the class -->
<variable name="class-ns">
<call-template name="return-ns">
<with-param name="qname" select="$single-class" />
</call-template>
</variable>
<if test="string-length($class-ns)>0"> <!-- we have a qname for the class -->
<variable name="expended-class">
<call-template name="expand-ns">
<with-param name="qname" select="$single-class" />
</call-template>
</variable>
<choose>
<when test="starts-with($resource,'blank:node:')">
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheSubjectNodeID($parser,substring-after($resource,'blank:node:'))" />
</when>
<otherwise>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheSubjectURI($parser,$resource)" />
</otherwise>
</choose>
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setThePropertyURI($parser,'http://www.w3.org/1999/02/22-rdf-syntax-ns#type')" />
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.setTheObjectURI($parser,$expended-class)" />
<value-of
select="java:net.yacy.document.parser.rdfa.impl.RDFaTripleImpl.flushObjectProperty($parser)" />
</if>
<!-- recursive call for multiple classes -->
<variable name="other-classes" select="normalize-space(substring-after($class,' '))" />
<if test="string-length($other-classes)>0">
<call-template name="class">
<with-param name="resource" select="$resource" />
<with-param name="class" select="$other-classes" />
</call-template>
</if>
</template>
<!-- ignore the rest of the DOM -->
<template match="text()|@*|*" mode="rdf2rdfxml">
<apply-templates mode="rdf2rdfxml" />
</template>
</stylesheet>

Binary file not shown.

View file

@ -1,22 +0,0 @@
## List of search engines used by YaCy heuristic search option
## Format example
## SystemName = http://www.thesystem.org/search?q={searchTerms}
## all opensearch parameters can be used in search url
## {searchTerms} is replaced by search query
## {startIndex?} is replaced by result start
## {count} is replaced by expected number of results
##
## the syntax of this file:
## - all lines beginning with '##' are comments
## - all non-empty lines not beginning with '#' are keyword lines
## - all lines beginning with '#' and where the second character is not '#' are commented-out keyword lines
##
#Blekko = http://blekko.com/ws/{searchTerms}+/rss # get 20 results from blekko
#Faroo-Web = http://www.faroo.com/instant.rss?q={searchTerms}&start={startIndex}&length={count}&l=en&src=web # get results from Faroo web-search
#Faroo-News = http://www.faroo.com/instant.rss?q={searchTerms}&start={startIndex}&length=20&l=en&src=news # get results from Faroo news-search
#openBDB = http://www.openbdb.com/b/{searchTerms}.xml # Open Book Database
#Twitter = http://search.twitter.com/search.rss?rpp=20&q={searchTerms}
#WordPress.com = http://en.search.wordpress.com/?q={searchTerms}&f=feed&page={startPage?} #Search WordPress.com Blogs
#Sueddeutsche.de = http://suche.sueddeutsche.de/query/{searchTerms}?output=rss # Sueddeutsche Zeitung Artikel Archiv
#Los Angeles Times = http://framework.latimes.com/?s={searchTerms}&feed=rss2

View file

@ -1,137 +0,0 @@
###
### This is the MIME file type matching configuration for the YaCy server
###
# Extension = MIME type
7z = application/x-7z-compressed
ai = application/postscript
aiff = audio/x-aiff
apk = application/vnd.android.package-archive
asp = text/html
aspx = text/html
au = audio/basic
avi = video/x-msvideo
bat = text/plain
bin = application/octet-stream
bmp = image/bmp
bz2 = application/x-bzip2
class = application/octet-stream
c = text/plain
com = application/octet-stream
css = text/css
csv = text/csv
db = application/octet-stream
dll = application/octet-stream
doc = application/msword
docx = application/msword
dot = application/msword
dvi = application/x-dvi
eps = application/postscript
exe = application/octet-stream
gif = image/gif
gz = application/gzip
gpx = text/xml
hqx = application/mac-binhex40
htm = text/html
html = text/html
ico = image/bmp
jar = application/java-archive
java = text/plain
jpe = image/jpeg
jpeg = image/jpeg
jpg = image/jpeg
js = text/javascript
json = application/json
jsp = text/html
kml = application/vnd.google-earth.kml+xml
lha = application/x-lzh
lzh = application/x-lzh
m4v = video/x-m4v
md5 = text/plain
mf = application/octet-stream
mov = video/quicktime
mm = application/freemind
mp2 = audio/mpeg
mp3 = audio/mpeg
mp4 = video/mp4
mpe = video/mpeg
mpeg = video/mpeg
mpg = video/mpeg
odt = application/vnd.oasis.opendocument.text
ods = application/vnd.oasis.opendocument.spreadsheet
odp = application/vnd.oasis.opendocument.presentation
odg = application/vnd.oasis.opendocument.graphics
odc = application/vnd.oasis.opendocument.chart
odf = application/vnd.oasis.opendocument.formula
odb = application/vnd.oasis.opendocument.database
odi = application/vnd.oasis.opendocument.image
odm = application/vnd.oasis.opendocument.text-master
opml = text/x-opml
ott = application/vnd.oasis.opendocument.text-template
ots = application/vnd.oasis.opendocument.spreadsheet-template
otp = application/vnd.oasis.opendocument.presentation-template
otg = application/vnd.oasis.opendocument.graphics-template
ogg = audio/ogg-vorbis
pac = application/x-ns-proxy-autoconfig
pdf = application/pdf
php = application/x-httpd-php
php3 = application/x-httpd-php
php4 = application/x-httpd-php
php5 = application/x-httpd-php
phtml = application/x-httpd-php
pl = text/plain
png = image/png
pot = application/mspowerpoint
pps = application/mspowerpoint
ppt = application/mspowerpoint
pptx = application/mspowerpoint
ppz = application/mspowerpoint
ps = application/postscript
py = text/html
qt = video/quicktime
ra = audio/x-pn-realaudio
ram = audio/x-pn-realaudio
rar = application/x-rar
rdf = application/rdf+xml
rm = audio/x-pn-realaudio-plugin
rpm = application/x-rpm
rss = application/rss+xml
rtf = application/rtf
sh = text/plain
shtml = text/html
sid = audio/prs.sid
stream = audio/x-qt-stream
svg = image/svg+xml
swf = application/x-shockwave-flash
sxw = application/OOo-writer
sxc = application/OOo-calc
sxd = application/OOo-draw
sxi = application/OOo-impress
tar = application/tar
tbz = application/x-bzip2
tbz2 = application/x-bzip2
tex = application/x-tex
tgz = application/tar
tif = image/tiff
tiff = image/tiff
torrent = application/x-bittorrent
txt = text/plain
vdx = application/x-visio
vtx = application/x-visio
vcf = text/x-vcard
vsd = application/x-visio
vst = application/x-visio
vss = application/vnd.visio
wav = audio/x-wav
webm = video/webm
wmv = video/x-ms-wmv
xhtml = text/xhtml+xml
xla = application/msexcel
xls = application/msexcel
xlsx = application/msexcel
xpi = application/x-xpinstall
xsl = text/xml
xml = text/xml
Z = application/x-compress
zip = application/zip
default = application/octet-stream

View file

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>Sources for OAI ListFriends entries. The Key is the URL to the ListFriends Source, the Value is the Path to the local file where the ListFriends file is stored</comment>
<entry key="http://roar.eprints.org/cgi/roar_search/advanced/export_roar_ROAR::ListFriends.xml?_action_export=1&amp;output=ROAR%3A%3AListFriends">DATA/DICTIONARIES/harvesting/export_roar_ROAR_ListFriends.xml</entry>
<entry key="http://www.openarchives.org/Register/ListFriends">DATA/DICTIONARIES/harvesting/ListFriends.xml</entry>
</properties>

View file

@ -1,32 +0,0 @@
###
### YaCy Init File
###
# performance-settings
# delay-times for permanent loops (milliseconds)
# the idlesleep is the pause that an process sleeps if the last call to the
# process job was without execution of anything;
# the busysleep is the pause after a full job execution
# the prereq-value is a memory pre-requisite: that much bytes must
# be available/free in the heap; othervise the loop is not executed
# and another idlesleep is performed
20_dhtdistribution_idlesleep=5000
20_dhtdistribution_busysleep=500
20_dhtdistribution_memprereq=12582912
50_localcrawl_idlesleep=2000
50_localcrawl_busysleep=60
50_localcrawl_memprereq=12582912
50_localcrawl_isPaused=false
60_remotecrawlloader_idlesleep=60000
60_remotecrawlloader_busysleep=10000
60_remotecrawlloader_memprereq=12582912
60_remotecrawlloader_isPaused=false
62_remotetriggeredcrawl_idlesleep=10000
62_remotetriggeredcrawl_busysleep=2000
62_remotetriggeredcrawl_memprereq=12582912
62_remotetriggeredcrawl_isPaused=false
80_indexing_idlesleep=1000
80_indexing_busysleep=0
80_indexing_memprereq=12582912

View file

@ -1,4 +0,0 @@
PHPSESSIONID
PHPSESSID
jsessionid
sid

View file

@ -1,485 +0,0 @@
## this is a list of all solr keys for the default index 'collection1', the fulltext search index
## this complete list of keys can be changed; the actual schema is stored in:
## DATA/SETTINGS/solr.collection.schema
## the syntax of this file:
## - all lines beginning with '##' are comments
## - all non-empty lines not beginning with '#' are keyword lines
## - all lines beginning with '#' and where the second character is not '#' are commented-out keyword lines
### mandatory values, do not disable them, YaCy won't work without them
## primary key of document, the URL hash, string (mandatory field)
id
##url of document, string (mandatory field)
sku
## last-modified from http header, date (mandatory field)
last_modified
## mime-type of document, string (mandatory field)
content_type
## content of title tag, text (mandatory field)
title
## the 64 bit hash of the org.apache.solr.update.processor.Lookup3Signature of title, used to compute title_unique_b
#title_exact_signature_l
## flag shows if title is unique in the whole index; if yes and another document appears with same title, the unique-flag is set to false, boolean
#title_unique_b
## id of the host, a 6-byte hash that is part of the document id (mandatory field)
host_id_s
## the md5 of the raw source (mandatory field)
md5_s
## the 64 bit hash of the org.apache.solr.update.processor.Lookup3Signature of text_t
exact_signature_l
## flag shows if exact_signature_l is unique at the time of document creation, used for double-check during search
exact_signature_unique_b
## counter for the number of documents which are not unique (== count of not-unique-flagged documents + 1)
#exact_signature_copycount_i
## 64 bit of the Lookup3Signature from EnhancedTextProfileSignature of text_t
fuzzy_signature_l
## intermediate data produced in EnhancedTextProfileSignature: a list of word frequencies
#fuzzy_signature_text_t
## flag shows if fuzzy_signature_l is unique at the time of document creation, used for double-check during search
fuzzy_signature_unique_b
## counter for the number of documents which are not unique (== count of not-unique-flagged documents + 1)
#fuzzy_signature_copycount_i
## the size of the raw source (mandatory field)
size_i
## fail reason if a page was not loaded. if the page was loaded then this field is empty, string (mandatory field)
failreason_s
## fail type if a page was not loaded. This field is either empty, 'excl' or 'fail'
failtype_s
## html status return code (i.e. "200" for ok), -1 if not loaded (see content of failreason_t for this case), int (mandatory field)
httpstatus_i
## redirect url if the error code is 299 < httpstatus_i < 310
#httpstatus_redirect_s
## number of unique http references, should be equal to references_internal_i + references_external_i
references_i
## number of unique http references from same host to referenced url
references_internal_i
## number of unique http references from external hosts
references_external_i
## number of external hosts which provide http references
references_exthosts_i
## depth of web page according to number of clicks from the 'main' page, which is the page that appears if only the host is entered as url
clickdepth_i
## needed (post-)processing steps on this metadata set
process_sxt
## key from a harvest process (i.e. the crawl profile hash key) which is needed for near-realtime postprocessing. This shall be deleted as soon as postprocessing has been terminated.
harvestkey_s
### optional but highly recommended values, part of the index distribution process
## time when resource was loaded
load_date_dt
## date until resource shall be considered as fresh
fresh_date_dt
## id of the referrer to this document, discovered during crawling
referrer_id_s
## the name of the publisher of the document
publisher_t
## the language used in the document
language_s
## number of links to audio resources
audiolinkscount_i
## number of links to video resources
videolinkscount_i
## number of links to application resources
applinkscount_i
### optional but highly recommended values, not part of the index distribution process
## tags that are attached to crawls/index generation to separate the search result into user-defined subsets
collection_sxt
## geospatial point in degrees of latitude,longitude as declared in WSG84, location; this creates two additional subfields, coordinate_p_0_coordinate (latitude) and coordinate_p_1_coordinate (longitude)
coordinate_p
## content of author-tag, texgen
author
## content of description-tag(s), text
description_txt
## the 64 bit hash of the org.apache.solr.update.processor.Lookup3Signature of description, used to compute description_unique_b
#description_exact_signature_l
## flag shows if description is unique in the whole index; if yes and another document appears with same description, the unique-flag is set to false, boolean
#description_unique_b
## content of keywords tag; words are separated by space
keywords
## character encoding, string
charset_s
## number of words in visible area, int
wordcount_i
## total number of inbound links, int
inboundlinkscount_i
## number of inbound links with nofollow tag, int
inboundlinksnofollowcount_i
## external number of inbound links, int
outboundlinkscount_i
## number of external links with nofollow tag, int
outboundlinksnofollowcount_i
## number of images, int
imagescount_i
## response time of target server in milliseconds, int
responsetime_i
## all visible text, text
text_t
## additional synonyms to the words in the text
synonyms_sxt
## h1 header
h1_txt
## h2 header
h2_txt
## h3 header
h3_txt
## h4 header
h4_txt
## h5 header
h5_txt
## h6 header
h6_txt
### optional values, not part of standard YaCy handling (but useful for external applications)
## ip of host of url (after DNS lookup), string
#ip_s
## tags of css entries, normalized with absolute URL
#css_tag_sxt
## urls of css entries, normalized with absolute URL
#css_url_sxt
## number of css entries, int
#csscount_i
## urls of script entries, normalized with absolute URL
#scripts_sxt
## number of entries in scripts_sxt, int
#scriptscount_i
## noindex and nofollow attributes
## from HTML (meta-tag in HTML header: robots)
## and HTTP header (X-Robots-Tag property)
## coded as binary value:
## bit 0: "all" contained in html header meta
## bit 1: "index" contained in html header meta
## bit 2: "follow" contained in html header meta
## bit 3: "noindex" contained in html header meta
## bit 4: "nofollow" contained in html header meta
## bit 8: "all" contained in http header X-Robots-Tag
## bit 9: "noindex" contained in http header X-Robots-Tag
## bit 10: "nofollow" contained in http header X-Robots-Tag
## bit 11: "noarchive" contained in http header X-Robots-Tag
## bit 12: "nosnippet" contained in http header X-Robots-Tag
## bit 13: "noodp" contained in http header X-Robots-Tag
## bit 14: "notranslate" contained in http header X-Robots-Tag
## bit 15: "noimageindex" contained in http header X-Robots-Tag
## bit 16: "unavailable_after" contained in http header X-Robots-Tag
#robots_i
## content of <meta name="generator" content=#content#> tag, text
#metagenerator_t
## internal links, only the protocol
inboundlinks_protocol_sxt
## internal links, the url only without the protocol
inboundlinks_urlstub_sxt
## internal links, the visible anchor text
inboundlinks_anchortext_txt
## external links, only the protocol
outboundlinks_protocol_sxt
## external links, the url only without the protocol
outboundlinks_urlstub_sxt
## external links, the visible anchor text
outboundlinks_anchortext_txt
## all text/words appearing in image alt texts or the tokenized url
images_text_t
## all image links without the protocol and '://'
images_urlstub_sxt
## all image link protocols
images_protocol_sxt
## all image link alt tag
images_alt_sxt
## size of images:height
images_height_val
## size of images:width
images_width_val
## size of images as number of pixels (easier for ranking than using with and height)
images_pixel_val
## number of image links with alt tag
#images_withalt_i
## binary pattern for the existance of h1..h6 headlines, int
#htags_i
## url inside the canonical link element, string
#canonical_s
## flag shows if the url in canonical_t is equal to sku, boolean
#canonical_equal_sku_b
## link from the url property inside the refresh link element, string
#refresh_s
## all texts in <li> tags
#li_txt
## number of <li> tags, int
#licount_i
## all texts inside of <b> or <strong> tags. no doubles. listed in the order of number of occurrences in decreasing order
bold_txt
## number of occurrences of texts in bold_txt
#bold_val
## total number of occurrences of <b> or <strong>, int
#boldcount_i
## all texts inside of <i> tags. no doubles. listed in the order of number of occurrences in decreasing order
italic_txt
## number of occurrences of texts in italic_txt
#italic_val
## total number of occurrences of <i>, int
#italiccount_i
## all texts inside of <u> tags. no doubles. listed in the order of number of occurrences in decreasing order
underline_txt
## number of occurrences of texts in underline_txt
#underline_val
## total number of occurrences of <u>, int
#underlinecount_i
## flag that shows if a swf file is linked, boolean
#flash_b
## list of all links to frames
#frames_sxt
## number of attr_frames, int
#framesscount_i
## list of all links to iframes
#iframes_sxt
## number of attr_iframes, int
#iframesscount_i
## url of the hreflang link tag, see http://support.google.com/webmasters/bin/answer.py?hl=de&answer=189077
#hreflang_url_sxt
## country code of the hreflang link tag, see http://support.google.com/webmasters/bin/answer.py?hl=de&answer=189077
#hreflang_cc_sxt
## page navigation url, see http://googlewebmastercentral.blogspot.de/2011/09/pagination-with-relnext-and-relprev.html
#navigation_url_sxt
## page navigation rel property value, can contain one of {top,up,next,prev,first,last}
#navigation_type_sxt
## publisher url as defined in http://support.google.com/plus/answer/1713826?hl=de
#publisher_url_s
## the protocol of the url
url_protocol_s
## the file name (which is the string after the last '/' and before the query part from '?' on) without the file extension
url_file_name_s
## tokens generated from url_file_name_s which can be used for better matching and result boosting
url_file_name_tokens_t
## the file name extension
url_file_ext_s
## all path elements in the url hpath (see: http://www.ietf.org/rfc/rfc1738.txt) without the file name
url_paths_sxt
## number of key-value pairs in search part of the url
#url_parameter_i
## the keys from key-value pairs in the search part of the url
#url_parameter_key_sxt
## the values from key-value pairs in the search part of the url
#url_parameter_value_sxt
## number of all characters in the url == length of sku field
url_chars_i
## host of the url, string
host_s
## the Domain Class Name, either the TLD or a combination of ccSLD+TLD if a ccSLD is used.
#host_dnc_s
## either the second level domain or, if a ccSLD is used, the third level domain
host_organization_s
## the organization and dnc concatenated with '.'
#host_organizationdnc_s
## the remaining part of the host without organizationdnc
#host_subdomain_s
## number of documents from the same host; can be used to measure references_internal_i for likelihood computation, integer
host_extent_i
## number of titles (counting the 'title' field) in the document
#title_count_i
## number of characters for each title
#title_chars_val
## number of words in each title
#title_words_val
## number of descriptions in the document. Its not counting the 'description' field since there is only one. But it counts the number of descriptions that appear in the document (if any)
#description_count_i
## number of characters for each description
#description_chars_val
## number of words in each description
#description_words_val
## number of h1..h6 header lines
#h1_i
#h2_i
#h3_i
#h4_i
#h5_i
#h6_i
## breadcrumbs, see http://schema.org/WebPage; this is a counter how many itemprop="breadcrumb" properties in div tags appears within a page
#schema_org_breadcrumb_i
## Open Graph Metadata field, see http://ogp.me/ns#
#opengraph_title_t
#opengraph_type_s
#opengraph_url_s
#opengraph_image_s
## citation ranking
## the number of documents within a single host
#cr_host_count_i
## the chance to click on this page when randomly clicking on links within on one host
#cr_host_chance_d
## normalization of chance: 0 for lower halve of cr_host_count_i urls, 1 for 1/2 of the remaining and so on. the maximum number is 10
#cr_host_norm_i
## custom rating; to be set with external rating information
rating_i
## names of cms attributes; if several are recognized then they are listen in decreasing order of number of matching criterias
#ext_cms_txt
## number of attributes that count for a specific cms in attr_cms
#ext_cms_val
## names of ad-servers/ad-services
#ext_ads_txt
## number of attributes counts in attr_ads
#ext_ads_val
## names of recognized community functions
#ext_community_txt
## number of attribute counts in attr_community
#ext_community_val
## names of map services
#ext_maps_txt
## number of attribute counts in attr_maps
#ext_maps_val
## names of tracker server
#ext_tracker_txt
## number of attribute counts in attr_tracker
#ext_tracker_val
## names matching title expressions
#ext_title_txt
## number of matching title expressions
#ext_title_val

View file

@ -1,201 +0,0 @@
## this is a list of all solr keys for the webgraph index 'webgraph', an index of all links
## this complete list of keys can be changed; the actual schema is stored in:
## DATA/SETTINGS/solr.webgraph.schema
## the syntax of this file:
## - all lines beginning with '##' are comments
## - all non-empty lines not beginning with '#' are keyword lines
## - all lines beginning with '#' and where the second character is not '#' are commented-out keyword lines
##
## document organization
##
## primary key of document, a combination of <source-url-hash><target-url-hash><four-digit-hex-counter> (28 characters)
id
## last-modified from http header, date (mandatory field)
last_modified
## time when resource was loaded
#load_date_dt
## tags that are attached to crawls/index generation to separate the search result into user-defined subsets
collection_sxt
## needed (post-)processing steps on this metadata set, used i.e. for clickdepth-computation.
#process_sxt
## key from a harvest process (i.e. the crawl profile hash key) which is needed for near-realtime postprocessing. This shall be deleted as soon as postprocessing has been terminated.
harvestkey_s
##
## url construction information about the source
##
## primary key of document, the URL hash (source)
source_id_s
## the protocol of the url (source)
#source_protocol_s
## the url without the protocol (source)
#source_urlstub_s
## the file name without the extension (source)
#source_file_name_s
## the file name extension (source)
#source_file_ext_s
## number of all characters in the url (source)
#source_chars_i
## path of the url (source)
#source_path_s
## count of all path elements in the url (source)
#source_path_folders_count_i
## all path elements in the url without the file name (source)
#source_path_folders_sxt
## number of key-value pairs in search part of the url (source)
#source_parameter_count_i
## the keys from key-value pairs in the search part of the url (source)
#source_parameter_key_sxt
## the values from key-value pairs in the search part of the url (source)
#source_parameter_value_sxt
## depth of web page according to number of clicks from the 'main' page, which is the page that appears if only the host is entered as url (source)
#source_clickdepth_i
## copy of the citation rank norm value from the source link
#source_cr_host_norm_i
## host of the url (source)
#source_host_s
## id of the host (source)
source_host_id_s
## the Domain Class Name, either the TLD or a combination of ccSLD+TLD if a ccSLD is used (source)
#source_host_dnc_s
## either the second level domain or, if a ccSLD is used, the third level domain
#source_host_organization_s
## the organization and dnc concatenated with '.' (source)
#source_host_organizationdnc_s
## the remaining part of the host without organizationdnc (source)
#source_host_subdomain_s
##
## Information in the source about the target
##
## the text content of the a-tag (in source, but pointing to a target)
target_linktext_t
## the length of the a-tag content text as number of characters (in source, but pointing to a target)
#target_linktext_charcount_i
## the length of the a-tag content text as number of words (in source, but pointing to a target)
#target_linktext_wordcount_i
## if the link is an image link, this contains the alt tag if the image is also liked as img link (in source, but pointing to a target)
target_alt_t
## the length of the a-tag content text as number of characters (in source, but pointing to a target)
#target_alt_charcount_i
## the length of the a-tag content text as number of words (in source, but pointing to a target)
#target_alt_wordcount_i
## the name property of the a-tag (in source, but pointing to a target)
target_name_t
## the rel property of the a-tag (in source, but pointing to a target)
#target_rel_s
## the rel property of the a-tag, coded binary (in source, but pointing to a target)
#target_relflags_i
##
## url construction information about the target
##
## primary key of document, the URL hash (target)
target_id_s
## order number of target url, a count from first to last URL on the source page (target)
target_order_i
## the protocol of the url (target)
target_protocol_s
## the url without the protocol (target)
target_urlstub_s
## the file name without the extension (target)
target_file_name_s
## the file name extension (target)
target_file_ext_s
## number of all characters in the url (target)
#target_chars_i
## path of the url (target)
#target_path_s
## count of all path elements in the url (target)
#target_path_folders_count_i
## all path elements in the url without the file name (target)
target_path_folders_sxt
## number of key-value pairs in search part of the url (target)
#target_parameter_count_i
## the keys from key-value pairs in the search part of the url (target)
#target_parameter_key_sxt
## the values from key-value pairs in the search part of the url (target)
#target_parameter_value_sxt
## depth of web page according to number of clicks from the 'main' page, which is the page that appears if only the host is entered as url (target)
#target_clickdepth_i
## copy of the citation rank norm value from the target link; this is only filled if the target host is identical to the source host
#target_cr_host_norm_i
## host of the url (target)
#target_host_s
## id of the host (target)
target_host_id_s
## the Domain Class Name, either the TLD or a combination of ccSLD+TLD if a ccSLD is used (target)
#target_host_dnc_s
## either the second level domain or, if a ccSLD is used, the third level domain (target)
#target_host_organization_s
## the organization and dnc concatenated with '.' (target)
#target_host_organizationdnc_s
## the remaining part of the host without organizationdnc (target)
#target_host_subdomain_s
## flag shows if the target host is equal to the source host
target_inbound_b

View file

@ -1,67 +0,0 @@
<?xml version="1.0" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Example exchange rates file for CurrencyField type named "currency" in example schema -->
<currencyConfig version="1.0">
<rates>
<!-- Updated from http://www.exchangerate.com/ at 2011-09-27 -->
<rate from="USD" to="ARS" rate="4.333871" comment="ARGENTINA Peso" />
<rate from="USD" to="AUD" rate="1.025768" comment="AUSTRALIA Dollar" />
<rate from="USD" to="EUR" rate="0.743676" comment="European Euro" />
<rate from="USD" to="BRL" rate="1.881093" comment="BRAZIL Real" />
<rate from="USD" to="CAD" rate="1.030815" comment="CANADA Dollar" />
<rate from="USD" to="CLP" rate="519.0996" comment="CHILE Peso" />
<rate from="USD" to="CNY" rate="6.387310" comment="CHINA Yuan" />
<rate from="USD" to="CZK" rate="18.47134" comment="CZECH REP. Koruna" />
<rate from="USD" to="DKK" rate="5.515436" comment="DENMARK Krone" />
<rate from="USD" to="HKD" rate="7.801922" comment="HONG KONG Dollar" />
<rate from="USD" to="HUF" rate="215.6169" comment="HUNGARY Forint" />
<rate from="USD" to="ISK" rate="118.1280" comment="ICELAND Krona" />
<rate from="USD" to="INR" rate="49.49088" comment="INDIA Rupee" />
<rate from="USD" to="XDR" rate="0.641358" comment="INTNL MON. FUND SDR" />
<rate from="USD" to="ILS" rate="3.709739" comment="ISRAEL Sheqel" />
<rate from="USD" to="JPY" rate="76.32419" comment="JAPAN Yen" />
<rate from="USD" to="KRW" rate="1169.173" comment="KOREA (SOUTH) Won" />
<rate from="USD" to="KWD" rate="0.275142" comment="KUWAIT Dinar" />
<rate from="USD" to="MXN" rate="13.85895" comment="MEXICO Peso" />
<rate from="USD" to="NZD" rate="1.285159" comment="NEW ZEALAND Dollar" />
<rate from="USD" to="NOK" rate="5.859035" comment="NORWAY Krone" />
<rate from="USD" to="PKR" rate="87.57007" comment="PAKISTAN Rupee" />
<rate from="USD" to="PEN" rate="2.730683" comment="PERU Sol" />
<rate from="USD" to="PHP" rate="43.62039" comment="PHILIPPINES Peso" />
<rate from="USD" to="PLN" rate="3.310139" comment="POLAND Zloty" />
<rate from="USD" to="RON" rate="3.100932" comment="ROMANIA Leu" />
<rate from="USD" to="RUB" rate="32.14663" comment="RUSSIA Ruble" />
<rate from="USD" to="SAR" rate="3.750465" comment="SAUDI ARABIA Riyal" />
<rate from="USD" to="SGD" rate="1.299352" comment="SINGAPORE Dollar" />
<rate from="USD" to="ZAR" rate="8.329761" comment="SOUTH AFRICA Rand" />
<rate from="USD" to="SEK" rate="6.883442" comment="SWEDEN Krona" />
<rate from="USD" to="CHF" rate="0.906035" comment="SWITZERLAND Franc" />
<rate from="USD" to="TWD" rate="30.40283" comment="TAIWAN Dollar" />
<rate from="USD" to="THB" rate="30.89487" comment="THAILAND Baht" />
<rate from="USD" to="AED" rate="3.672955" comment="U.A.E. Dirham" />
<rate from="USD" to="UAH" rate="7.988582" comment="UKRAINE Hryvnia" />
<rate from="USD" to="GBP" rate="0.647910" comment="UNITED KINGDOM Pound" />
<!-- Cross-rates for some common currencies -->
<rate from="EUR" to="GBP" rate="0.869914" />
<rate from="EUR" to="NOK" rate="7.800095" />
<rate from="GBP" to="NOK" rate="8.966508" />
</rates>
</currencyConfig>

View file

@ -1,38 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- If this file is found in the config directory, it will only be
loaded once at startup. If it is found in Solr's data
directory, it will be re-loaded every commit.
See http://wiki.apache.org/solr/QueryElevationComponent for more info
-->
<elevate>
<query text="foo bar">
<doc id="1" />
<doc id="2" />
<doc id="3" />
</query>
<query text="ipod">
<doc id="MA147LL/A" /> <!-- put the actual ipod at the top -->
<doc id="IW-02" exclude="true" /> <!-- exclude this cable -->
</query>
</elevate>

View file

@ -1,8 +0,0 @@
# Set of Catalan contractions for ElisionFilter
# TODO: load this as a resource from the analyzer and sync it in build.xml
d
l
m
n
s
t

View file

@ -1,9 +0,0 @@
# Set of French contractions for ElisionFilter
# TODO: load this as a resource from the analyzer and sync it in build.xml
l
m
t
qu
n
s
j

View file

@ -1,5 +0,0 @@
# Set of Irish contractions for ElisionFilter
# TODO: load this as a resource from the analyzer and sync it in build.xml
d
m
b

View file

@ -1,23 +0,0 @@
# Set of Italian contractions for ElisionFilter
# TODO: load this as a resource from the analyzer and sync it in build.xml
c
l
all
dall
dell
nell
sull
coll
pell
gl
agl
dagl
degl
negl
sugl
un
m
t
s
v
d

View file

@ -1,5 +0,0 @@
# Set of Irish hyphenations for StopFilter
# TODO: load this as a resource from the analyzer and sync it in build.xml
h
n
t

View file

@ -1,6 +0,0 @@
# Set of overrides for the dutch stemmer
# TODO: load this as a resource from the analyzer and sync it in build.xml
fiets fiets
bromfiets bromfiets
ei eier
kind kinder

View file

@ -1,420 +0,0 @@
#
# This file defines a Japanese stoptag set for JapanesePartOfSpeechStopFilter.
#
# Any token with a part-of-speech tag that exactly matches those defined in this
# file are removed from the token stream.
#
# Set your own stoptags by uncommenting the lines below. Note that comments are
# not allowed on the same line as a stoptag. See LUCENE-3745 for frequency lists,
# etc. that can be useful for building you own stoptag set.
#
# The entire possible tagset is provided below for convenience.
#
#####
# noun: unclassified nouns
#名詞
#
# noun-common: Common nouns or nouns where the sub-classification is undefined
#名詞-一般
#
# noun-proper: Proper nouns where the sub-classification is undefined
#名詞-固有名詞
#
# noun-proper-misc: miscellaneous proper nouns
#名詞-固有名詞-一般
#
# noun-proper-person: Personal names where the sub-classification is undefined
#名詞-固有名詞-人名
#
# noun-proper-person-misc: names that cannot be divided into surname and
# given name; foreign names; names where the surname or given name is unknown.
# e.g. お市の方
#名詞-固有名詞-人名-一般
#
# noun-proper-person-surname: Mainly Japanese surnames.
# e.g. 山田
#名詞-固有名詞-人名-姓
#
# noun-proper-person-given_name: Mainly Japanese given names.
# e.g. 太郎
#名詞-固有名詞-人名-名
#
# noun-proper-organization: Names representing organizations.
# e.g. 通産省, NHK
#名詞-固有名詞-組織
#
# noun-proper-place: Place names where the sub-classification is undefined
#名詞-固有名詞-地域
#
# noun-proper-place-misc: Place names excluding countries.
# e.g. アジア, バルセロナ, 京都
#名詞-固有名詞-地域-一般
#
# noun-proper-place-country: Country names.
# e.g. 日本, オーストラリア
#名詞-固有名詞-地域-国
#
# noun-pronoun: Pronouns where the sub-classification is undefined
#名詞-代名詞
#
# noun-pronoun-misc: miscellaneous pronouns:
# e.g. それ, ここ, あいつ, あなた, あちこち, いくつ, どこか, なに, みなさん, みんな, わたくし, われわれ
#名詞-代名詞-一般
#
# noun-pronoun-contraction: Spoken language contraction made by combining a
# pronoun and the particle 'wa'.
# e.g. ありゃ, こりゃ, こりゃあ, そりゃ, そりゃあ
#名詞-代名詞-縮約
#
# noun-adverbial: Temporal nouns such as names of days or months that behave
# like adverbs. Nouns that represent amount or ratios and can be used adverbially,
# e.g. 金曜, 一月, 午後, 少量
#名詞-副詞可能
#
# noun-verbal: Nouns that take arguments with case and can appear followed by
# 'suru' and related verbs (する, できる, なさる, くださる)
# e.g. インプット, 愛着, 悪化, 悪戦苦闘, 一安心, 下取り
#名詞-サ変接続
#
# noun-adjective-base: The base form of adjectives, words that appear before な ("na")
# e.g. 健康, 安易, 駄目, だめ
#名詞-形容動詞語幹
#
# noun-numeric: Arabic numbers, Chinese numerals, and counters like 何 (回), 数.
# e.g. 0, 1, 2, 何, 数, 幾
#名詞-数
#
# noun-affix: noun affixes where the sub-classification is undefined
#名詞-非自立
#
# noun-affix-misc: Of adnominalizers, the case-marker の ("no"), and words that
# attach to the base form of inflectional words, words that cannot be classified
# into any of the other categories below. This category includes indefinite nouns.
# e.g. あかつき, 暁, かい, 甲斐, 気, きらい, 嫌い, くせ, 癖, こと, 事, ごと, 毎, しだい, 次第,
# 順, せい, 所為, ついで, 序で, つもり, 積もり, 点, どころ, の, はず, 筈, はずみ, 弾み,
# 拍子, ふう, ふり, 振り, ほう, 方, 旨, もの, 物, 者, ゆえ, 故, ゆえん, 所以, わけ, 訳,
# わり, 割り, 割, ん-口語/, もん-口語/
#名詞-非自立-一般
#
# noun-affix-adverbial: noun affixes that that can behave as adverbs.
# e.g. あいだ, 間, あげく, 挙げ句, あと, 後, 余り, 以外, 以降, 以後, 以上, 以前, 一方, うえ,
# 上, うち, 内, おり, 折り, かぎり, 限り, きり, っきり, 結果, ころ, 頃, さい, 際, 最中, さなか,
# 最中, じたい, 自体, たび, 度, ため, 為, つど, 都度, とおり, 通り, とき, 時, ところ, 所,
# とたん, 途端, なか, 中, のち, 後, ばあい, 場合, 日, ぶん, 分, ほか, 他, まえ, 前, まま,
# 儘, 侭, みぎり, 矢先
#名詞-非自立-副詞可能
#
# noun-affix-aux: noun affixes treated as 助動詞 ("auxiliary verb") in school grammars
# with the stem よう(だ) ("you(da)").
# e.g. よう, やう, 様 (よう)
#名詞-非自立-助動詞語幹
#
# noun-affix-adjective-base: noun affixes that can connect to the indeclinable
# connection form な (aux "da").
# e.g. みたい, ふう
#名詞-非自立-形容動詞語幹
#
# noun-special: special nouns where the sub-classification is undefined.
#名詞-特殊
#
# noun-special-aux: The そうだ ("souda") stem form that is used for reporting news, is
# treated as 助動詞 ("auxiliary verb") in school grammars, and attach to the base
# form of inflectional words.
# e.g. そう
#名詞-特殊-助動詞語幹
#
# noun-suffix: noun suffixes where the sub-classification is undefined.
#名詞-接尾
#
# noun-suffix-misc: Of the nouns or stem forms of other parts of speech that connect
# to ガル or タイ and can combine into compound nouns, words that cannot be classified into
# any of the other categories below. In general, this category is more inclusive than
# 接尾語 ("suffix") and is usually the last element in a compound noun.
# e.g. おき, かた, 方, 甲斐 (がい), がかり, ぎみ, 気味, ぐるみ, (~した) さ, 次第, 済 (ず) み,
# よう, (でき)っこ, 感, 観, 性, 学, 類, 面, 用
#名詞-接尾-一般
#
# noun-suffix-person: Suffixes that form nouns and attach to person names more often
# than other nouns.
# e.g. 君, 様, 著
#名詞-接尾-人名
#
# noun-suffix-place: Suffixes that form nouns and attach to place names more often
# than other nouns.
# e.g. 町, 市, 県
#名詞-接尾-地域
#
# noun-suffix-verbal: Of the suffixes that attach to nouns and form nouns, those that
# can appear before スル ("suru").
# e.g. 化, 視, 分け, 入り, 落ち, 買い
#名詞-接尾-サ変接続
#
# noun-suffix-aux: The stem form of そうだ (様態) that is used to indicate conditions,
# is treated as 助動詞 ("auxiliary verb") in school grammars, and attach to the
# conjunctive form of inflectional words.
# e.g. そう
#名詞-接尾-助動詞語幹
#
# noun-suffix-adjective-base: Suffixes that attach to other nouns or the conjunctive
# form of inflectional words and appear before the copula だ ("da").
# e.g. 的, げ, がち
#名詞-接尾-形容動詞語幹
#
# noun-suffix-adverbial: Suffixes that attach to other nouns and can behave as adverbs.
# e.g. 後 (ご), 以後, 以降, 以前, 前後, 中, 末, 上, 時 (じ)
#名詞-接尾-副詞可能
#
# noun-suffix-classifier: Suffixes that attach to numbers and form nouns. This category
# is more inclusive than 助数詞 ("classifier") and includes common nouns that attach
# to numbers.
# e.g. 個, つ, 本, 冊, パーセント, cm, kg, カ月, か国, 区画, 時間, 時半
#名詞-接尾-助数詞
#
# noun-suffix-special: Special suffixes that mainly attach to inflecting words.
# e.g. (楽し) さ, (考え) 方
#名詞-接尾-特殊
#
# noun-suffix-conjunctive: Nouns that behave like conjunctions and join two words
# together.
# e.g. (日本) 対 (アメリカ), 対 (アメリカ), (3) 対 (5), (女優) 兼 (主婦)
#名詞-接続詞的
#
# noun-verbal_aux: Nouns that attach to the conjunctive particle て ("te") and are
# semantically verb-like.
# e.g. ごらん, ご覧, 御覧, 頂戴
#名詞-動詞非自立的
#
# noun-quotation: text that cannot be segmented into words, proverbs, Chinese poetry,
# dialects, English, etc. Currently, the only entry for 名詞 引用文字列 ("noun quotation")
# is いわく ("iwaku").
#名詞-引用文字列
#
# noun-nai_adjective: Words that appear before the auxiliary verb ない ("nai") and
# behave like an adjective.
# e.g. 申し訳, 仕方, とんでも, 違い
#名詞-ナイ形容詞語幹
#
#####
# prefix: unclassified prefixes
#接頭詞
#
# prefix-nominal: Prefixes that attach to nouns (including adjective stem forms)
# excluding numerical expressions.
# e.g. お (水), 某 (氏), 同 (社), 故 (~氏), 高 (品質), お (見事), ご (立派)
#接頭詞-名詞接続
#
# prefix-verbal: Prefixes that attach to the imperative form of a verb or a verb
# in conjunctive form followed by なる/なさる/くださる.
# e.g. お (読みなさい), お (座り)
#接頭詞-動詞接続
#
# prefix-adjectival: Prefixes that attach to adjectives.
# e.g. お (寒いですねえ), バカ (でかい)
#接頭詞-形容詞接続
#
# prefix-numerical: Prefixes that attach to numerical expressions.
# e.g. 約, およそ, 毎時
#接頭詞-数接続
#
#####
# verb: unclassified verbs
#動詞
#
# verb-main:
#動詞-自立
#
# verb-auxiliary:
#動詞-非自立
#
# verb-suffix:
#動詞-接尾
#
#####
# adjective: unclassified adjectives
#形容詞
#
# adjective-main:
#形容詞-自立
#
# adjective-auxiliary:
#形容詞-非自立
#
# adjective-suffix:
#形容詞-接尾
#
#####
# adverb: unclassified adverbs
#副詞
#
# adverb-misc: Words that can be segmented into one unit and where adnominal
# modification is not possible.
# e.g. あいかわらず, 多分
#副詞-一般
#
# adverb-particle_conjunction: Adverbs that can be followed by の, は, に,
# な, する, だ, etc.
# e.g. こんなに, そんなに, あんなに, なにか, なんでも
#副詞-助詞類接続
#
#####
# adnominal: Words that only have noun-modifying forms.
# e.g. この, その, あの, どの, いわゆる, なんらかの, 何らかの, いろんな, こういう, そういう, ああいう,
# どういう, こんな, そんな, あんな, どんな, 大きな, 小さな, おかしな, ほんの, たいした,
# 「(, も) さる (ことながら)」, 微々たる, 堂々たる, 単なる, いかなる, 我が」「同じ, 亡き
#連体詞
#
#####
# conjunction: Conjunctions that can occur independently.
# e.g. が, けれども, そして, じゃあ, それどころか
接続詞
#
#####
# particle: unclassified particles.
助詞
#
# particle-case: case particles where the subclassification is undefined.
助詞-格助詞
#
# particle-case-misc: Case particles.
# e.g. から, が, で, と, に, へ, より, を, の, にて
助詞-格助詞-一般
#
# particle-case-quote: the "to" that appears after nouns, a persons speech,
# quotation marks, expressions of decisions from a meeting, reasons, judgements,
# conjectures, etc.
# e.g. ( だ) と (述べた.), ( である) と (して執行猶予...)
助詞-格助詞-引用
#
# particle-case-compound: Compounds of particles and verbs that mainly behave
# like case particles.
# e.g. という, といった, とかいう, として, とともに, と共に, でもって, にあたって, に当たって, に当って,
# にあたり, に当たり, に当り, に当たる, にあたる, において, に於いて,に於て, における, に於ける,
# にかけ, にかけて, にかんし, に関し, にかんして, に関して, にかんする, に関する, に際し,
# に際して, にしたがい, に従い, に従う, にしたがって, に従って, にたいし, に対し, にたいして,
# に対して, にたいする, に対する, について, につき, につけ, につけて, につれ, につれて, にとって,
# にとり, にまつわる, によって, に依って, に因って, により, に依り, に因り, による, に依る, に因る,
# にわたって, にわたる, をもって, を以って, を通じ, を通じて, を通して, をめぐって, をめぐり, をめぐる,
# って-口語/, ちゅう-関西弁「という」/, (何) ていう (人)-口語/, っていう-口語/, といふ, とかいふ
助詞-格助詞-連語
#
# particle-conjunctive:
# e.g. から, からには, が, けれど, けれども, けど, し, つつ, て, で, と, ところが, どころか, とも, ども,
# ながら, なり, ので, のに, ば, ものの, や ( した), やいなや, (ころん) じゃ(いけない)-口語/,
# (行っ) ちゃ(いけない)-口語/, (言っ) たって (しかたがない)-口語/, (それがなく)ったって (平気)-口語/
助詞-接続助詞
#
# particle-dependency:
# e.g. こそ, さえ, しか, すら, は, も, ぞ
助詞-係助詞
#
# particle-adverbial:
# e.g. がてら, かも, くらい, 位, ぐらい, しも, (学校) じゃ(これが流行っている)-口語/,
# (それ)じゃあ (よくない)-口語/, ずつ, (私) なぞ, など, (私) なり (に), (先生) なんか (大嫌い)-口語/,
# (私) なんぞ, (先生) なんて (大嫌い)-口語/, のみ, だけ, (私) だって-口語/, だに,
# (彼)ったら-口語/, (お茶) でも (いかが), 等 (とう), (今後) とも, ばかり, ばっか-口語/, ばっかり-口語/,
# ほど, 程, まで, 迄, (誰) も (が)([助詞-格助詞] および [助詞-係助詞] の前に位置する「も」)
助詞-副助詞
#
# particle-interjective: particles with interjective grammatical roles.
# e.g. (松島) や
助詞-間投助詞
#
# particle-coordinate:
# e.g. と, たり, だの, だり, とか, なり, や, やら
助詞-並立助詞
#
# particle-final:
# e.g. かい, かしら, さ, ぜ, (だ)っけ-口語/, (とまってる) で-方言/, な, ナ, なあ-口語/, ぞ, ね, ネ,
# ねぇ-口語/, ねえ-口語/, ねん-方言/, の, のう-口語/, や, よ, ヨ, よぉ-口語/, わ, わい-口語/
助詞-終助詞
#
# particle-adverbial/conjunctive/final: The particle "ka" when unknown whether it is
# adverbial, conjunctive, or sentence final. For example:
# (a) 「A か B か」. Ex:「(国内で運用する) か,(海外で運用する) か (.)」
# (b) Inside an adverb phrase. Ex:「(幸いという) か (, 死者はいなかった.)」
# 「(祈りが届いたせい) か (, 試験に合格した.)」
# (c) 「かのように」. Ex:「(何もなかった) か (のように振る舞った.)」
# e.g. か
助詞-副助詞/並立助詞/終助詞
#
# particle-adnominalizer: The "no" that attaches to nouns and modifies
# non-inflectional words.
助詞-連体化
#
# particle-adnominalizer: The "ni" and "to" that appear following nouns and adverbs
# that are giongo, giseigo, or gitaigo.
# e.g. に, と
助詞-副詞化
#
# particle-special: A particle that does not fit into one of the above classifications.
# This includes particles that are used in Tanka, Haiku, and other poetry.
# e.g. かな, けむ, ( しただろう) に, (あんた) にゃ(わからん), (俺) ん (家)
助詞-特殊
#
#####
# auxiliary-verb:
助動詞
#
#####
# interjection: Greetings and other exclamations.
# e.g. おはよう, おはようございます, こんにちは, こんばんは, ありがとう, どうもありがとう, ありがとうございます,
# いただきます, ごちそうさま, さよなら, さようなら, はい, いいえ, ごめん, ごめんなさい
#感動詞
#
#####
# symbol: unclassified Symbols.
記号
#
# symbol-misc: A general symbol not in one of the categories below.
# e.g. [○◎@$〒→+]
記号-一般
#
# symbol-comma: Commas
# e.g. [,、]
記号-読点
#
# symbol-period: Periods and full stops.
# e.g. [..。]
記号-句点
#
# symbol-space: Full-width whitespace.
記号-空白
#
# symbol-open_bracket:
# e.g. [({‘“『【]
記号-括弧開
#
# symbol-close_bracket:
# e.g. [)}’”』」】]
記号-括弧閉
#
# symbol-alphabetic:
#記号-アルファベット
#
#####
# other: unclassified other
#その他
#
# other-interjection: Words that are hard to classify as noun-suffixes or
# sentence-final particles.
# e.g. (だ)ァ
その他-間投
#
#####
# filler: Aizuchi that occurs during a conversation or sounds inserted as filler.
# e.g. あの, うんと, えと
フィラー
#
#####
# non-verbal: non-verbal sound.
非言語音
#
#####
# fragment:
#語断片
#
#####
# unknown: unknown part of speech.
#未知語
#
##### End of file

View file

@ -1,125 +0,0 @@
# This file was created by Jacques Savoy and is distributed under the BSD license.
# See http://members.unine.ch/jacques.savoy/clef/index.html.
# Also see http://www.opensource.org/licenses/bsd-license.html
# Cleaned on October 11, 2009 (not normalized, so use before normalization)
# This means that when modifying this list, you might need to add some
# redundant entries, for example containing forms with both أ and ا
من
ومن
منها
منه
في
وفي
فيها
فيه
و
ف
ثم
او
أو
ب
بها
به
ا
أ
اى
اي
أي
أى
لا
ولا
الا
ألا
إلا
لكن
ما
وما
كما
فما
عن
مع
اذا
إذا
ان
أن
إن
انها
أنها
إنها
انه
أنه
إنه
بان
بأن
فان
فأن
وان
وأن
وإن
التى
التي
الذى
الذي
الذين
الى
الي
إلى
إلي
على
عليها
عليه
اما
أما
إما
ايضا
أيضا
كل
وكل
لم
ولم
لن
ولن
هى
هي
هو
وهى
وهي
وهو
فهى
فهي
فهو
انت
أنت
لك
لها
له
هذه
هذا
تلك
ذلك
هناك
كانت
كان
يكون
تكون
وكانت
وكان
غير
بعض
قد
نحو
بين
بينما
منذ
ضمن
حيث
الان
الآن
خلال
بعد
قبل
حتى
عند
عندما
لدى
جميع

View file

@ -1,193 +0,0 @@
# This file was created by Jacques Savoy and is distributed under the BSD license.
# See http://members.unine.ch/jacques.savoy/clef/index.html.
# Also see http://www.opensource.org/licenses/bsd-license.html
а
аз
ако
ала
бе
без
беше
би
бил
била
били
било
близо
бъдат
бъде
бяха
в
вас
ваш
ваша
вероятно
вече
взема
ви
вие
винаги
все
всеки
всички
всичко
всяка
във
въпреки
върху
г
ги
главно
го
д
да
дали
до
докато
докога
дори
досега
доста
е
едва
един
ето
за
зад
заедно
заради
засега
затова
защо
защото
и
из
или
им
има
имат
иска
й
каза
как
каква
какво
както
какъв
като
кога
когато
което
които
кой
който
колко
която
къде
където
към
ли
м
ме
между
мен
ми
мнозина
мога
могат
може
моля
момента
му
н
на
над
назад
най
направи
напред
например
нас
не
него
нея
ни
ние
никой
нито
но
някои
някой
няма
обаче
около
освен
особено
от
отгоре
отново
още
пак
по
повече
повечето
под
поне
поради
после
почти
прави
пред
преди
през
при
пък
първо
с
са
само
се
сега
си
скоро
след
сме
според
сред
срещу
сте
съм
със
също
т
тази
така
такива
такъв
там
твой
те
тези
ти
тн
то
това
тогава
този
той
толкова
точно
трябва
тук
тъй
тя
тях
у
харесва
ч
че
често
чрез
ще
щом
я

View file

@ -1,220 +0,0 @@
# Catalan stopwords from http://github.com/vcl/cue.language (Apache 2 Licensed)
a
abans
ací
ah
així
això
al
als
aleshores
algun
alguna
algunes
alguns
alhora
allà
allí
allò
altra
altre
altres
amb
ambdós
ambdues
apa
aquell
aquella
aquelles
aquells
aquest
aquesta
aquestes
aquests
aquí
baix
cada
cadascú
cadascuna
cadascunes
cadascuns
com
contra
d'un
d'una
d'unes
d'uns
dalt
de
del
dels
des
després
dins
dintre
donat
doncs
durant
e
eh
el
els
em
en
encara
ens
entre
érem
eren
éreu
es
és
esta
està
estàvem
estaven
estàveu
esteu
et
etc
ets
fins
fora
gairebé
ha
han
has
havia
he
hem
heu
hi
ho
i
igual
iguals
ja
l'hi
la
les
li
li'n
llavors
m'he
ma
mal
malgrat
mateix
mateixa
mateixes
mateixos
me
mentre
més
meu
meus
meva
meves
molt
molta
moltes
molts
mon
mons
n'he
n'hi
ne
ni
no
nogensmenys
només
nosaltres
nostra
nostre
nostres
o
oh
oi
on
pas
pel
pels
per
però
perquè
poc
poca
pocs
poques
potser
propi
qual
quals
quan
quant
que
què
quelcom
qui
quin
quina
quines
quins
s'ha
s'han
sa
semblant
semblants
ses
seu
seus
seva
seva
seves
si
sobre
sobretot
sóc
solament
sols
son
són
sons
sota
sou
t'ha
t'han
t'he
ta
tal
també
tampoc
tan
tant
tanta
tantes
teu
teus
teva
teves
ton
tons
tot
tota
totes
tots
un
una
unes
uns
us
va
vaig
vam
van
vas
veu
vosaltres
vostra
vostre
vostres

View file

@ -1,172 +0,0 @@
a
s
k
o
i
u
v
z
dnes
cz
tímto
budeš
budem
byli
jseš
můj
svým
ta
tomto
tohle
tuto
tyto
jej
zda
proč
máte
tato
kam
tohoto
kdo
kteří
mi
nám
tom
tomuto
mít
nic
proto
kterou
byla
toho
protože
asi
ho
naši
napište
re
což
tím
takže
svých
její
svými
jste
aj
tu
tedy
teto
bylo
kde
ke
pravé
ji
nad
nejsou
či
pod
téma
mezi
přes
ty
pak
vám
ani
když
však
neg
jsem
tento
článku
články
aby
jsme
před
pta
jejich
byl
ještě
bez
také
pouze
první
vaše
která
nás
nový
tipy
pokud
může
strana
jeho
své
jiné
zprávy
nové
není
vás
jen
podle
zde
být
více
bude
již
než
který
by
které
co
nebo
ten
tak
při
od
po
jsou
jak
další
ale
si
se
ve
to
jako
za
zpět
ze
do
pro
je
na
atd
atp
jakmile
přičemž
on
ona
ono
oni
ony
my
vy
ji
mne
jemu
tomu
těm
těmu
němu
němuž
jehož
jíž
jelikož
jež
jakož
načež

View file

@ -1,108 +0,0 @@
| From svn.tartarus.org/snowball/trunk/website/algorithms/danish/stop.txt
| This file is distributed under the BSD License.
| See http://snowball.tartarus.org/license.php
| Also see http://www.opensource.org/licenses/bsd-license.html
| - Encoding was converted to UTF-8.
| - This notice was added.
| A Danish stop word list. Comments begin with vertical bar. Each stop
| word is at the start of a line.
| This is a ranked list (commonest to rarest) of stopwords derived from
| a large text sample.
og | and
i | in
jeg | I
det | that (dem. pronoun)/it (pers. pronoun)
at | that (in front of a sentence)/to (with infinitive)
en | a/an
den | it (pers. pronoun)/that (dem. pronoun)
til | to/at/for/until/against/by/of/into, more
er | present tense of "to be"
som | who, as
på | on/upon/in/on/at/to/after/of/with/for, on
de | they
med | with/by/in, along
han | he
af | of/by/from/off/for/in/with/on, off
for | at/for/to/from/by/of/ago, in front/before, because
ikke | not
der | who/which, there/those
var | past tense of "to be"
mig | me/myself
sig | oneself/himself/herself/itself/themselves
men | but
et | a/an/one, one (number), someone/somebody/one
har | present tense of "to have"
om | round/about/for/in/a, about/around/down, if
vi | we
min | my
havde | past tense of "to have"
ham | him
hun | she
nu | now
over | over/above/across/by/beyond/past/on/about, over/past
da | then, when/as/since
fra | from/off/since, off, since
du | you
ud | out
sin | his/her/its/one's
dem | them
os | us/ourselves
op | up
man | you/one
hans | his
hvor | where
eller | or
hvad | what
skal | must/shall etc.
selv | myself/youself/herself/ourselves etc., even
her | here
alle | all/everyone/everybody etc.
vil | will (verb)
blev | past tense of "to stay/to remain/to get/to become"
kunne | could
ind | in
når | when
være | present tense of "to be"
dog | however/yet/after all
noget | something
ville | would
jo | you know/you see (adv), yes
deres | their/theirs
efter | after/behind/according to/for/by/from, later/afterwards
ned | down
skulle | should
denne | this
end | than
dette | this
mit | my/mine
også | also
under | under/beneath/below/during, below/underneath
have | have
dig | you
anden | other
hende | her
mine | my
alt | everything
meget | much/very, plenty of
sit | his, her, its, one's
sine | his, her, its, one's
vor | our
mod | against
disse | these
hvis | if
din | your/yours
nogle | some
hos | by/at
blive | be/become
mange | many
ad | by/through
bliver | present tense of "to be/to become"
hendes | her/hers
været | be
thi | for (conj)
jer | you
sådan | such, like this/like that

View file

@ -1,292 +0,0 @@
| From svn.tartarus.org/snowball/trunk/website/algorithms/german/stop.txt
| This file is distributed under the BSD License.
| See http://snowball.tartarus.org/license.php
| Also see http://www.opensource.org/licenses/bsd-license.html
| - Encoding was converted to UTF-8.
| - This notice was added.
| A German stop word list. Comments begin with vertical bar. Each stop
| word is at the start of a line.
| The number of forms in this list is reduced significantly by passing it
| through the German stemmer.
aber | but
alle | all
allem
allen
aller
alles
als | than, as
also | so
am | an + dem
an | at
ander | other
andere
anderem
anderen
anderer
anderes
anderm
andern
anderr
anders
auch | also
auf | on
aus | out of
bei | by
bin | am
bis | until
bist | art
da | there
damit | with it
dann | then
der | the
den
des
dem
die
das
daß | that
derselbe | the same
derselben
denselben
desselben
demselben
dieselbe
dieselben
dasselbe
dazu | to that
dein | thy
deine
deinem
deinen
deiner
deines
denn | because
derer | of those
dessen | of him
dich | thee
dir | to thee
du | thou
dies | this
diese
diesem
diesen
dieser
dieses
doch | (several meanings)
dort | (over) there
durch | through
ein | a
eine
einem
einen
einer
eines
einig | some
einige
einigem
einigen
einiger
einiges
einmal | once
er | he
ihn | him
ihm | to him
es | it
etwas | something
euer | your
eure
eurem
euren
eurer
eures
für | for
gegen | towards
gewesen | p.p. of sein
hab | have
habe | have
haben | have
hat | has
hatte | had
hatten | had
hier | here
hin | there
hinter | behind
ich | I
mich | me
mir | to me
ihr | you, to her
ihre
ihrem
ihren
ihrer
ihres
euch | to you
im | in + dem
in | in
indem | while
ins | in + das
ist | is
jede | each, every
jedem
jeden
jeder
jedes
jene | that
jenem
jenen
jener
jenes
jetzt | now
kann | can
kein | no
keine
keinem
keinen
keiner
keines
können | can
könnte | could
machen | do
man | one
manche | some, many a
manchem
manchen
mancher
manches
mein | my
meine
meinem
meinen
meiner
meines
mit | with
muss | must
musste | had to
nach | to(wards)
nicht | not
nichts | nothing
noch | still, yet
nun | now
nur | only
ob | whether
oder | or
ohne | without
sehr | very
sein | his
seine
seinem
seinen
seiner
seines
selbst | self
sich | herself
sie | they, she
ihnen | to them
sind | are
so | so
solche | such
solchem
solchen
solcher
solches
soll | shall
sollte | should
sondern | but
sonst | else
über | over
um | about, around
und | and
uns | us
unse
unsem
unsen
unser
unses
unter | under
viel | much
vom | von + dem
von | from
vor | before
während | while
war | was
waren | were
warst | wast
was | what
weg | away, off
weil | because
weiter | further
welche | which
welchem
welchen
welcher
welches
wenn | when
werde | will
werden | will
wie | how
wieder | again
will | want
wir | we
wird | will
wirst | willst
wo | where
wollen | want
wollte | wanted
würde | would
würden | would
zu | to
zum | zu + dem
zur | zu + der
zwar | indeed
zwischen | between

View file

@ -1,78 +0,0 @@
# Lucene Greek Stopwords list
# Note: by default this file is used after GreekLowerCaseFilter,
# so when modifying this file use 'σ' instead of 'ς'
ο
η
το
οι
τα
του
τησ
των
τον
την
και
κι
κ
ειμαι
εισαι
ειναι
ειμαστε
ειστε
στο
στον
στη
στην
μα
αλλα
απο
για
προσ
με
σε
ωσ
παρα
αντι
κατα
μετα
θα
να
δε
δεν
μη
μην
επι
ενω
εαν
αν
τοτε
που
πωσ
ποιοσ
ποια
ποιο
ποιοι
ποιεσ
ποιων
ποιουσ
αυτοσ
αυτη
αυτο
αυτοι
αυτων
αυτουσ
αυτεσ
αυτα
εκεινοσ
εκεινη
εκεινο
εκεινοι
εκεινεσ
εκεινα
εκεινων
εκεινουσ
οπωσ
ομωσ
ισωσ
οσο
οτι

View file

@ -1,54 +0,0 @@
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# a couple of test stopwords to test that the words are really being
# configured from this file:
stopworda
stopwordb
# Standard english stop words taken from Lucene's StopAnalyzer
a
an
and
are
as
at
be
but
by
for
if
in
into
is
it
no
not
of
on
or
such
that
the
their
then
there
these
they
this
to
was
will
with

View file

@ -1,354 +0,0 @@
| From svn.tartarus.org/snowball/trunk/website/algorithms/spanish/stop.txt
| This file is distributed under the BSD License.
| See http://snowball.tartarus.org/license.php
| Also see http://www.opensource.org/licenses/bsd-license.html
| - Encoding was converted to UTF-8.
| - This notice was added.
| A Spanish stop word list. Comments begin with vertical bar. Each stop
| word is at the start of a line.
| The following is a ranked list (commonest to rarest) of stopwords
| deriving from a large sample of text.
| Extra words have been added at the end.
de | from, of
la | the, her
que | who, that
el | the
en | in
y | and
a | to
los | the, them
del | de + el
se | himself, from him etc
las | the, them
por | for, by, etc
un | a
para | for
con | with
no | no
una | a
su | his, her
al | a + el
| es from SER
lo | him
como | how
más | more
pero | pero
sus | su plural
le | to him, her
ya | already
o | or
| fue from SER
este | this
| ha from HABER
sí | himself etc
porque | because
esta | this
| son from SER
entre | between
| está from ESTAR
cuando | when
muy | very
sin | without
sobre | on
| ser from SER
| tiene from TENER
también | also
me | me
hasta | until
hay | there is/are
donde | where
| han from HABER
quien | whom, that
| están from ESTAR
| estado from ESTAR
desde | from
todo | all
nos | us
durante | during
| estados from ESTAR
todos | all
uno | a
les | to them
ni | nor
contra | against
otros | other
| fueron from SER
ese | that
eso | that
| había from HABER
ante | before
ellos | they
e | and (variant of y)
esto | this
mí | me
antes | before
algunos | some
qué | what?
unos | a
yo | I
otro | other
otras | other
otra | other
él | he
tanto | so much, many
esa | that
estos | these
mucho | much, many
quienes | who
nada | nothing
muchos | many
cual | who
| sea from SER
poco | few
ella | she
estar | to be
| haber from HABER
estas | these
| estaba from ESTAR
| estamos from ESTAR
algunas | some
algo | something
nosotros | we
| other forms
mi | me
mis | mi plural
tú | thou
te | thee
ti | thee
tu | thy
tus | tu plural
ellas | they
nosotras | we
vosotros | you
vosotras | you
os | you
mío | mine
mía |
míos |
mías |
tuyo | thine
tuya |
tuyos |
tuyas |
suyo | his, hers, theirs
suya |
suyos |
suyas |
nuestro | ours
nuestra |
nuestros |
nuestras |
vuestro | yours
vuestra |
vuestros |
vuestras |
esos | those
esas | those
| forms of estar, to be (not including the infinitive):
estoy
estás
está
estamos
estáis
están
esté
estés
estemos
estéis
estén
estaré
estarás
estará
estaremos
estaréis
estarán
estaría
estarías
estaríamos
estaríais
estarían
estaba
estabas
estábamos
estabais
estaban
estuve
estuviste
estuvo
estuvimos
estuvisteis
estuvieron
estuviera
estuvieras
estuviéramos
estuvierais
estuvieran
estuviese
estuvieses
estuviésemos
estuvieseis
estuviesen
estando
estado
estada
estados
estadas
estad
| forms of haber, to have (not including the infinitive):
he
has
ha
hemos
habéis
han
haya
hayas
hayamos
hayáis
hayan
habré
habrás
habrá
habremos
habréis
habrán
habría
habrías
habríamos
habríais
habrían
había
habías
habíamos
habíais
habían
hube
hubiste
hubo
hubimos
hubisteis
hubieron
hubiera
hubieras
hubiéramos
hubierais
hubieran
hubiese
hubieses
hubiésemos
hubieseis
hubiesen
habiendo
habido
habida
habidos
habidas
| forms of ser, to be (not including the infinitive):
soy
eres
es
somos
sois
son
sea
seas
seamos
seáis
sean
seré
serás
será
seremos
seréis
serán
sería
serías
seríamos
seríais
serían
era
eras
éramos
erais
eran
fui
fuiste
fue
fuimos
fuisteis
fueron
fuera
fueras
fuéramos
fuerais
fueran
fuese
fueses
fuésemos
fueseis
fuesen
siendo
sido
| sed also means 'thirst'
| forms of tener, to have (not including the infinitive):
tengo
tienes
tiene
tenemos
tenéis
tienen
tenga
tengas
tengamos
tengáis
tengan
tendré
tendrás
tendrá
tendremos
tendréis
tendrán
tendría
tendrías
tendríamos
tendríais
tendrían
tenía
tenías
teníamos
teníais
tenían
tuve
tuviste
tuvo
tuvimos
tuvisteis
tuvieron
tuviera
tuvieras
tuviéramos
tuvierais
tuvieran
tuviese
tuvieses
tuviésemos
tuvieseis
tuviesen
teniendo
tenido
tenida
tenidos
tenidas
tened

View file

@ -1,99 +0,0 @@
# example set of basque stopwords
al
anitz
arabera
asko
baina
bat
batean
batek
bati
batzuei
batzuek
batzuetan
batzuk
bera
beraiek
berau
berauek
bere
berori
beroriek
beste
bezala
da
dago
dira
ditu
du
dute
edo
egin
ere
eta
eurak
ez
gainera
gu
gutxi
guzti
haiei
haiek
haietan
hainbeste
hala
han
handik
hango
hara
hari
hark
hartan
hau
hauei
hauek
hauetan
hemen
hemendik
hemengo
hi
hona
honek
honela
honetan
honi
hor
hori
horiei
horiek
horietan
horko
horra
horrek
horrela
horretan
horri
hortik
hura
izan
ni
noiz
nola
non
nondik
nongo
nor
nora
ze
zein
zen
zenbait
zenbat
zer
zergatik
ziren
zituen
zu
zuek
zuen
zuten

View file

@ -1,313 +0,0 @@
# This file was created by Jacques Savoy and is distributed under the BSD license.
# See http://members.unine.ch/jacques.savoy/clef/index.html.
# Also see http://www.opensource.org/licenses/bsd-license.html
# Note: by default this file is used after normalization, so when adding entries
# to this file, use the arabic 'ي' instead of 'ی'
انان
نداشته
سراسر
خياه
ايشان
وي
تاكنون
بيشتري
دوم
پس
ناشي
وگو
يا
داشتند
سپس
هنگام
هرگز
پنج
نشان
امسال
ديگر
گروهي
شدند
چطور
ده
و
دو
نخستين
ولي
چرا
چه
وسط
ه
كدام
قابل
يك
رفت
هفت
همچنين
در
هزار
بله
بلي
شايد
اما
شناسي
گرفته
دهد
داشته
دانست
داشتن
خواهيم
ميليارد
وقتيكه
امد
خواهد
جز
اورده
شده
بلكه
خدمات
شدن
برخي
نبود
بسياري
جلوگيري
حق
كردند
نوعي
بعري
نكرده
نظير
نبايد
بوده
بودن
داد
اورد
هست
جايي
شود
دنبال
داده
بايد
سابق
هيچ
همان
انجا
كمتر
كجاست
گردد
كسي
تر
مردم
تان
دادن
بودند
سري
جدا
ندارند
مگر
يكديگر
دارد
دهند
بنابراين
هنگامي
سمت
جا
انچه
خود
دادند
زياد
دارند
اثر
بدون
بهترين
بيشتر
البته
به
براساس
بيرون
كرد
بعضي
گرفت
توي
اي
ميليون
او
جريان
تول
بر
مانند
برابر
باشيم
مدتي
گويند
اكنون
تا
تنها
جديد
چند
بي
نشده
كردن
كردم
گويد
كرده
كنيم
نمي
نزد
روي
قصد
فقط
بالاي
ديگران
اين
ديروز
توسط
سوم
ايم
دانند
سوي
استفاده
شما
كنار
داريم
ساخته
طور
امده
رفته
نخست
بيست
نزديك
طي
كنيد
از
انها
تمامي
داشت
يكي
طريق
اش
چيست
روب
نمايد
گفت
چندين
چيزي
تواند
ام
ايا
با
ان
ايد
ترين
اينكه
ديگري
راه
هايي
بروز
همچنان
پاعين
كس
حدود
مختلف
مقابل
چيز
گيرد
ندارد
ضد
همچون
سازي
شان
مورد
باره
مرسي
خويش
برخوردار
چون
خارج
شش
هنوز
تحت
ضمن
هستيم
گفته
فكر
بسيار
پيش
براي
روزهاي
انكه
نخواهد
بالا
كل
وقتي
كي
چنين
كه
گيري
نيست
است
كجا
كند
نيز
يابد
بندي
حتي
توانند
عقب
خواست
كنند
بين
تمام
همه
ما
باشند
مثل
شد
اري
باشد
اره
طبق
بعد
اگر
صورت
غير
جاي
بيش
ريزي
اند
زيرا
چگونه
بار
لطفا
مي
درباره
من
ديده
همين
گذاري
برداري
علت
گذاشته
هم
فوق
نه
ها
شوند
اباد
همواره
هر
اول
خواهند
چهار
نام
امروز
مان
هاي
قبل
كنم
سعي
تازه
را
هستند
زير
جلوي
عنوان
بود

View file

@ -1,95 +0,0 @@
| From svn.tartarus.org/snowball/trunk/website/algorithms/finnish/stop.txt
| This file is distributed under the BSD License.
| See http://snowball.tartarus.org/license.php
| Also see http://www.opensource.org/licenses/bsd-license.html
| - Encoding was converted to UTF-8.
| - This notice was added.
| forms of BE
olla
olen
olet
on
olemme
olette
ovat
ole | negative form
oli
olisi
olisit
olisin
olisimme
olisitte
olisivat
olit
olin
olimme
olitte
olivat
ollut
olleet
en | negation
et
ei
emme
ette
eivät
|Nom Gen Acc Part Iness Elat Illat Adess Ablat Allat Ess Trans
minä minun minut minua minussa minusta minuun minulla minulta minulle | I
sinä sinun sinut sinua sinussa sinusta sinuun sinulla sinulta sinulle | you
hän hänen hänet häntä hänessä hänestä häneen hänellä häneltä hänelle | he she
me meidän meidät meitä meissä meistä meihin meillä meiltä meille | we
te teidän teidät teitä teissä teistä teihin teillä teiltä teille | you
he heidän heidät heitä heissä heistä heihin heillä heiltä heille | they
tämä tämän tätä tässä tästä tähän tallä tältä tälle tänä täksi | this
tuo tuon tuotä tuossa tuosta tuohon tuolla tuolta tuolle tuona tuoksi | that
se sen sitä siinä siitä siihen sillä siltä sille sinä siksi | it
nämä näiden näitä näissä näistä näihin näillä näiltä näille näinä näiksi | these
nuo noiden noita noissa noista noihin noilla noilta noille noina noiksi | those
ne niiden niitä niissä niistä niihin niillä niiltä niille niinä niiksi | they
kuka kenen kenet ketä kenessä kenestä keneen kenellä keneltä kenelle kenenä keneksi| who
ketkä keiden ketkä keitä keissä keistä keihin keillä keiltä keille keinä keiksi | (pl)
mikä minkä minkä mitä missä mistä mihin millä miltä mille minä miksi | which what
mitkä | (pl)
joka jonka jota jossa josta johon jolla jolta jolle jona joksi | who which
jotka joiden joita joissa joista joihin joilla joilta joille joina joiksi | (pl)
| conjunctions
että | that
ja | and
jos | if
koska | because
kuin | than
mutta | but
niin | so
sekä | and
sillä | for
tai | or
vaan | but
vai | or
vaikka | although
| prepositions
kanssa | with
mukaan | according to
noin | about
poikki | across
yli | over, across
| other
kun | when
niin | so
nyt | now
itse | self

Some files were not shown because too many files have changed in this diff Show more