From b4b66740dc4887a24c0b6f8e9c79f2532cdbebc8 Mon Sep 17 00:00:00 2001 From: mckaygerhard Date: Thu, 29 Dec 2022 18:26:28 -0400 Subject: [PATCH] linux distro pacakging, added unit files and initscript * added sisvinit unit service script * added systemshit unit service script * added debian packaging script and fiels in root dir * added spec file for shit rpm distros * added first intent of alpine packaging --- alpine/APKBUILD | 122 ++ alpine/multicraft-server.confd | 6 + alpine/multicraft-server.initd | 35 + alpine/multicraft-server.pre-install | 5 + debian/README.Debian | 6 + debian/README.source | 10 + debian/changelog | 13 + debian/compat | 1 + debian/control | 75 + debian/copyright | 1626 +++++++++++++++++ debian/multicraft-data.install | 9 + debian/multicraft-server.README.Debian | 49 + debian/multicraft-server.init | 81 + debian/multicraft-server.install | 2 + debian/multicraft-server.postinst | 32 + debian/multicraft-server.postrm | 15 + debian/multicraft.install | 3 + .../01-kfreebsd-debian-gettex-glibc.patch | 25 + debian/patches/03-rawlua.patch | 20 + debian/patches/04-postgresql.patch | 19 + debian/patches/series | 3 + debian/rules | 75 + debian/source/format | 1 + debian/watch.ex | 38 + misc/multicraf.spec | 232 +++ misc/multicraft.logrotate | 5 + misc/multicraftserver | 5 + misc/multicraftserver.service | 16 + misc/multicraftserver@.service | 16 + 29 files changed, 2545 insertions(+) create mode 100644 alpine/APKBUILD create mode 100644 alpine/multicraft-server.confd create mode 100644 alpine/multicraft-server.initd create mode 100644 alpine/multicraft-server.pre-install create mode 100644 debian/README.Debian create mode 100644 debian/README.source create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/multicraft-data.install create mode 100644 debian/multicraft-server.README.Debian create mode 100644 debian/multicraft-server.init create mode 100644 debian/multicraft-server.install create mode 100644 debian/multicraft-server.postinst create mode 100644 debian/multicraft-server.postrm create mode 100644 debian/multicraft.install create mode 100644 debian/patches/01-kfreebsd-debian-gettex-glibc.patch create mode 100644 debian/patches/03-rawlua.patch create mode 100644 debian/patches/04-postgresql.patch create mode 100644 debian/patches/series create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/watch.ex create mode 100644 misc/multicraf.spec create mode 100644 misc/multicraft.logrotate create mode 100755 misc/multicraftserver create mode 100644 misc/multicraftserver.service create mode 100644 misc/multicraftserver@.service diff --git a/alpine/APKBUILD b/alpine/APKBUILD new file mode 100644 index 000000000..b437d2a2e --- /dev/null +++ b/alpine/APKBUILD @@ -0,0 +1,122 @@ +# Maintainer: PICCORO Lenz McKAY +pkgname=multicraft +pkgver=2.0.3 +pkgrel=0 +pkgdesc="Minetest fork infinite-world block sandbox game and a game engine" +url="https://www.multicraft.world/" +# riscv64 blocked by luajit +arch="all !riscv64" +license="LGPL-3-or-later AND CC-BY-SA-3.0" +pkgusers="multicraft" +pkggroups="multicraft" +install="$pkgname-server.pre-install" +depends="$pkgname-common" +makedepends=" + bzip2-dev + cmake + curl-dev + freetype-dev + gettext-dev + hiredis-dev + libjpeg-turbo-dev + libogg-dev + libpng-dev + libvorbis-dev + libxi-dev + luajit-dev + mesa-dev + openal-soft-dev + openssl-dev>3 + samurai + sqlite-dev + zstd-dev + " +subpackages="$pkgname-doc + $pkgname-common::noarch + $pkgname-server + $pkgname-server-openrc:openrc + " +_irrlichtver="1.9.0mt8" +source="https://github.com/multicraft/multicraft/archive/refs/tags/$pkgver/multicraft-$pkgver.tar.gz + https://github.com/minetest/irrlicht/archive/refs/tags/$_irrlichtver/irrlichtmt-$_irrlichtver.tar.gz + multicraft-server.confd + multicraft-server.initd + 0001-CMake-link-with-Intl-when-necessary.patch + " + +prepare() { + default_prepare + + mv "$srcdir"/irrlicht-$_irrlichtver "$srcdir"/multicraft-$pkgver/lib/irrlichtmt +} + +build() { + cmake -G Ninja -B build_client \ + -DCMAKE_BUILD_TYPE=Release \ + -DCUSTOM_BINDIR=/usr/bin \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCUSTOM_DOCDIR="/usr/share/doc/$pkgname" \ + -DCUSTOM_SHAREDIR="/usr/share/$pkgname" \ + -DBUILD_CLIENT=1 \ + -DBUILD_SERVER=0 \ + -DENABLE_REDIS=0 \ + -DENABLE_CURL=1 \ + -DRUN_IN_PLACE=0 + cmake --build build_client + + cmake -G Ninja -B build_server \ + -DCMAKE_BUILD_TYPE=Release \ + -DCUSTOM_BINDIR=/usr/bin \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCUSTOM_DOCDIR="/usr/share/doc/multicraft" \ + -DCUSTOM_SHAREDIR="/usr/share/multicraft" \ + -DBUILD_CLIENT=0 \ + -DBUILD_SERVER=1 \ + -DENABLE_REDIS=1 \ + -DENABLE_CURL=1 \ + -DRUN_IN_PLACE=0 + cmake --build build_server +} + +package() { + DESTDIR="$pkgdir" cmake --install build_client +} + +common() { + pkgdesc="Multicraft files used by both client & server" + depends="" + + install -o multicraft -g multicraft -d "$subpkgdir"/var/lib/multicraft + amove \ + usr/share/multicraft/builtin \ + usr/share/multicraft/games +} + +server() { + pkgdesc="Multicraft server" + depends="$pkgname-common" + + cd "$builddir" + install -Dm644 multicraft.conf.example \ + "$subpkgdir"/etc/multicraft/multicraft.conf + install -Dm755 bin/multicraftserver \ + -t "$subpkgdir"/usr/bin +} + +openrc() { + pkgdesc="Multicraft server (OpenRC init scripts)" + install_if="$pkgname-server openrc" + + install -Dm755 "$srcdir"/multicraft-server.initd \ + "$subpkgdir"/etc/init.d/multicraft-server + install -Dm644 "$srcdir"/multicraft-server.confd \ + "$subpkgdir"/etc/conf.d/multicraft-server +} + +sha512sums=" +15d2ce3b1150f077ff933a04f0ba8e02c71ee60a0edb636d1511d4e90244a34a14d7e5c4b47bee4de96cd179249a5a6963d7a092084f46c0fa54c9ff431a5265 multicraft-5.6.1.tar.gz +3a5cbcd8d13730e08f24a72b4ceb2a6d3ba1cfa4292475915da6413ab8084d0b7f0b5dc34edc152d5bf516730faf43d983433619b0a1fb15540adb5cab00ca10 irrlichtmt-1.9.0mt8.tar.gz +7bca17dc0bd59db9c07c160677498aa09297026104e922bf93b7629c274d0aebd226af60c5e82f49ffe3cc5c1e4448e3798b6c2a44144fc6eca4d3aaed3384bb multicraft-server.confd +c27aea87468538b48b5e0a66fa5cdde4fc67f3c00a0e57f359a2f044a31c5617d1b5f3dec72e015537ee3bf126bd1073878c0f4447de67db9be2c4cf21416dd7 multicraft-server.initd +c815e6c9c5433e4fda9b8559b662086e18b14461e4fd8626b4d5178554a2423c9b243450845d49710825b627dede91de8411655adff7a960672c639735499533 0001-CMake-link-with-Intl-when-necessary.patch +" \ No newline at end of file diff --git a/alpine/multicraft-server.confd b/alpine/multicraft-server.confd new file mode 100644 index 000000000..0e290b741 --- /dev/null +++ b/alpine/multicraft-server.confd @@ -0,0 +1,6 @@ +#USER="multicraft" +#GROUP="games" +#LOG="/var/lib/multicraft/multicraftd.log" +#CONFIG="/etc/multicraft/multicraft.conf" +#ARGS="" +GAMEID="minimal" diff --git a/alpine/multicraft-server.initd b/alpine/multicraft-server.initd new file mode 100644 index 000000000..4b16a179e --- /dev/null +++ b/alpine/multicraft-server.initd @@ -0,0 +1,35 @@ +#!/sbin/openrc-run + +description="Multicraft server" + +pidfile="/var/run/$SVCNAME.pid" +command="/usr/bin/multicraftserver" + +start_stop_daemon_args="--user ${USER:-multicraft} --group ${GROUP:-games} + --make-pidfile --pidfile $pidfile --background --quiet --wait 300" +command_args="$ARGS" + + +depend() { + need net + after firewall +} + +optional_command_arg() { + if [ -n "$2" ]; then + command_args="$command_args $1 $2" + fi +} + +start_pre() { + optional_command_arg --log $LOG + optional_command_arg --config $CONFIG + optional_command_arg --gameid $GAMEID +} + +reload() { + ebegin "Reloading $SVCNAME" + start-stop-daemon --signal HUP \ + --exec "$EXEC" --pidfile "$pidfile" + eend $? +} diff --git a/alpine/multicraft-server.pre-install b/alpine/multicraft-server.pre-install new file mode 100644 index 000000000..9b6382a74 --- /dev/null +++ b/alpine/multicraft-server.pre-install @@ -0,0 +1,5 @@ +#!/bin/sh + +adduser -S -D -h /var/lib/multicraft -s /sbin/nologin -G games -g multicraft multicraft 2>/dev/null + +exit 0 diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 000000000..2ff730f5e --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,6 @@ +multicraft for Debian +-------------------- + + + + -- unknown Thu, 29 Dec 2022 17:59:13 -0400 diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 000000000..73e1b3af0 --- /dev/null +++ b/debian/README.source @@ -0,0 +1,10 @@ +multicraft for Debian +-------------------- + + + + + + -- unknown Thu, 29 Dec 2022 17:59:13 -0400 + diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 000000000..07b869874 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,13 @@ +multicraft (2.0.3-1) unstable; urgency=medium + + * Initial release + * added -fpermissive to allow the optimizations on the new release + * added libxxf86vm to build depends due non recursive in older debians + * added missing libnl-genl-3-dev with alternative on wheezy or squeeze + * in control added a large line due OBS service is crap on depends (using rpm as real) + * added spatialindex support + * Drop luajit-2.1.patch. Fixed upstream. + * alternate between python-imaging to python-pil for backporting (Closes: #866441) + + -- PICCORO Lenz McKAY Thu, 29 Dec 2022 17:59:13 -0400 + diff --git a/debian/compat b/debian/compat new file mode 100644 index 000000000..7f8f011eb --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +7 diff --git a/debian/control b/debian/control new file mode 100644 index 000000000..bde4e3acd --- /dev/null +++ b/debian/control @@ -0,0 +1,75 @@ +Source: multicraft +Section: games +Priority: optional +Maintainer: PICCORO Lenz McKAY +Build-Depends: cmake, pkg-config, + debhelper (>= 10) | dh-systemd | dh-autoreconf, lsb-release, + cron, + gettext, doxygen, + libbz2-dev, + libcurl4-gnutls-dev, libnl-genl-3-dev | libnl-dev | libnl-3-dev, librtmp-dev, libidn11-dev, libncurses-dev | libncurses5-dev, + libfreetype6-dev, + libglu1-mesa-dev, + libgmp3-dev | libgmp-dev, + libirrlicht-dev (>= 1.7.0), + libjpeg-dev, + libjsoncpp-dev, + libleveldb-dev, + libluajit-5.1-dev [i386 amd64 kfreebsd-i386 armel armhf powerpc powerpcspe mips], + liblua5.1-dev, + libogg-dev, + libopenal-dev, + libpng-dev, + libpq-dev, + libspatialindex-dev, + libsqlite3-dev, + libvorbis-dev, + libx11-dev, + libxxf86vm-dev, + postgresql-server-dev-all | libpq-dev, + zlib1g-dev +Standards-Version: 4.1.4 +Homepage: https://www.multicraft.world/ +Rules-Requires-Root: no + +Package: multicraft +Architecture: any +Depends: multicraft-data (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends} +Recommends: multicraft-game | multicraft-game-game +Description: Multiplayer infinite-world block sandbox (client with embebed server) + Multicraft is a minecraft-inspired game written from scratch and licensed + under the LGPL (version 2.1 or later). It supports both survival and creative + modes along with multiplayer support, dynamic lighting, and an "infinite" map + generator. + . + This is a improved upgrade over 5.2 series due 5.X one superset and changed + the protocol of network. + +Package: multicraft-server +Architecture: any +Depends: multicraft-data (= ${source:Version}), adduser, lsb-base (>= 3.0-6), ${misc:Depends}, ${shlibs:Depends} +Recommends: multicraft-game | multicraft-game-game +Description: Multiplayer infinite-world block sandbox (server only) + Multicraft is a minecraft-inspired game written from scratch and licensed + under the LGPL (version 2.1 or later). It supports both survival and creative + modes along with multiplayer support, dynamic lighting, and an "infinite" map + generator. + . + This is the multicraft server package. + This is a improved upgrade over 5.2 series due 5.X one superset and changed + the protocol of network. + +Package: multicraft-data +Architecture: all +Depends: adduser,${misc:Depends} +Provides: multicraft-game, multicraft-game-minenux +Description: Multiplayer infinite-world block sandbox (data files) + Multicraft is a minecraft-inspired game written from scratch and licensed + under the LGPL (version 2.1 or later). It supports both survival and creative + modes along with multiplayer support, dynamic lighting, and an "infinite" map + generator. + . + These are the files used by both client and server packages, such as + the textures and other graphical files and the standard mods. + This is a improved upgrade over 5.2 series due 5.X one superset and changed + the protocol of network. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 000000000..14d39b625 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,1626 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: multicraft +Source: + +Files: debian/* +Copyright: 2021 PICCORO Lenz McKAY +License: GPL-3.0+ + +License: GPL-3.0+ + 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 3 of the License, or + (at your option) any later version. + . + This package 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, see . + . + On Debian systems, the complete text of the GNU General + Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". + +Files: * +Copyright: 2010-2014, celeron55, Perttu Ahola + and contributors +License: LGPL-2.1+ + +Files: *.ogg + *.png + games/minetest_game/mods/beds/* + games/minetest_game/mods/boats/* + games/minetest_game/mods/bones/* + games/minetest_game/mods/bucket/* + games/minetest_game/mods/creative/* + games/minetest_game/mods/default/* + games/minetest_game/mods/screwdriver/* + games/minetest_game/mods/stairs/* + games/minetest_game/mods/tnt/* + games/minetest_game/mods/vessels/* + games/minetest_game/mods/wool/* + games/minetest_game/mods/xpanes/* +Copyright: 2010-2012, celeron55, Perttu Ahola + 2011-2012, Kahrl + BlockMen, + erlehmann + 2012-2016, PilzAdam, + Zeg9, + thetoon, + PavelS(SokolovPavel), + sofar (sofar@foo-projects.org), + paramat + 2015-2016 Jean-Patrick G. (kilbith) +License: CC-BY-SA-3.0 +Comment: + According to the main README file all Minetest textures and sounds are + licensed under CC-BY-SA-3.0 with the notable exceptions below. + +Files: games/minetest_game/mods/flowers/* + games/minetest_game/mods/tnt/* + games/minetest_game/mods/farming/* + games/minetest_game/mods/xpanes/* + games/minetest_game/mods/dye/* + games/minetest_game/mods/vessels/textures/* + games/minetest_game/mods/doors/textures/doors_trapdoor.png +Copyright: PilzAdam + Zeg9 + thetoon + PavelS(SokolovPavel) + 2012-2013 Ironzorg, VanessaE + 2012 Perttu Ahola (celeron55) + BlockMen (2014-2015) + MasterGollum + Gambit + 2014 webdesigner97 + Vanessa Ezekowitz +License: WTFPL + +Files: games/minetest_game/mods/farming/textures/farming_tool_diamondhoe.png + games/minetest_game/mods/farming/textures/farming_tool_mesehoe.png + games/minetest_game/mods/farming/textures/farming_tool_bronzehoe.png + games/minetest_game/mods/farming/textures/farming_tool_steelhoe.png + games/minetest_game/mods/farming/textures/farming_tool_stonehoe.png + games/minetest_game/mods/farming/textures/farming_tool_woodhoe.png + games/minetest_game/mods/doors/sounds/doors_door_open.ogg + games/minetest_game/mods/doors/sounds/doors_door_close.ogg +Copyright: BlockMen + CGEffex + bennstir +License: CC-BY-3.0 + +Files: games/minetest_game/mods/default/textures/default_desert_cobble.png +Copyright: PenguinDad +License: CC-BY-SA-4.0 + +Files: lib/jsoncpp/jsoncpp.cpp +Copyright: 2007-2010 Baptiste Lepilleur +License: public-domain + +Files: lib/gmp/mini-gmp.* +Copyright: 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2000, + 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, + 2010, 2011, 2012, 2013 Free Software Foundation, Inc. +License: LGPL-3+ + +Files: debian/* +Copyright: 2011-2012, Michael Gilbert + 2013-2015, Martin Quinson + 2014-2017, Markus Koschany +License: GPL-2+ + +Files: debian/patches/* +Copyright: 2011-2012, Michael Gilbert + 2013-2015, Martin Quinson + 2014-2017, Markus Koschany +License: LGPL-2.1+ + +Files: util/wireshark/minetest.lua +Copyright: 2011, celeron55, Perttu Ahola +License: GPL-2+ + +Files: src/util/sha1.cpp + src/util/sha1.h + games/minetest_game/mods/carts/* + games/minetest_game/mods/give_initial_stuff/* + games/minetest_game/mods/sethome/* + games/minetest_game/mods/sfinv/* +Copyright: Copyright (c) 2005 Michael D. Leonhard (http://tamale.net) + Copyright (C) 2012-2016 PilzAdam + Copyright (C) 2014-2016 SmallJoker + Copyright (C) 2012-2016 Various Minetest developers and contributors + Copyright (C) 2012-2016 Perttu Ahola (celeron55) + Copyright (C) 2012-2016 Various Minetest developers and contributors +License: Expat + +Files: src/util/base64.* +Copyright: 2004-2008, René Nyffenegger + Nyffenegger rene.nyffenegger@adp-gmbh.ch +License: zlib + +Files: src/cguittfont/* +Copyright: 2009-2010 John Norman +License: zlib + +Files: + src/guiPasswordChange.* + src/guiVolumeChange.* +Copyright: + 2010-2011, 2013, celeron55, Perttu Ahola + 2011, 2013, Ciaran Gultnieks + 2013, RealBadAngel, Maciej Kasatkin +License: ISC + Permission to use, copy, modify, and/or distribute this software for + any purpose with or without fee is hereby granted, provided that the + above copyright notice and this permission notice appear in all + copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL + WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + +Files: util/minetestmapper.py +Copyright: + 2011, celeron55, Perttu Ahola + 2011, j0gge +License: WTFPL + +Files: src/noise.* +Copyright: 2010-2014, celeron55, Perttu Ahola + 2010-2014, kwolekr, Ryan Kwolek +License: BSD-2-clause + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + +Files: src/util/sha2.h +Copyright: 1995-1998 Eric Young (eay@cryptsoft.com) +License: cryptsoft-License + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR 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. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +Files: src/util/sha256.c +Copyright: 2004 The OpenSSL Project +License: OpenSSL-License + +Files: fonts/mono_dejavu_sans* +Copyright: 2003, Bitstream Inc + 2006, Tavmjong Bah +License: DejaVu-License + +Files: fonts/DroidSans* + fonts/Arimo* + fonts/Cousine* +Copyright: 2008, The Android Open Source Project + 2010-2012, Google Corporation +License: Apache-2.0 + Licensed 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. + . + On Debian systems, the complete text of the Apache license 2.0 can be found + in "/usr/share/common-licenses/Apache-2.0". + +License: DejaVu-License + Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is + a trademark of Bitstream, Inc. + . + Permission is hereby granted, free of charge, to any person obtaining a copy + of the fonts accompanying this license ("Fonts") and associated + documentation files (the "Font Software"), to reproduce and distribute the + Font Software, including without limitation the rights to use, copy, merge, + publish, distribute, and/or sell copies of the Font Software, and to permit + persons to whom the Font Software is furnished to do so, subject to the + following conditions: + . + The above copyright and trademark notices and this permission notice shall + be included in all copies of one or more of the Font Software typefaces. + . + The Font Software may be modified, altered, or added to, and in particular + the designs of glyphs or characters in the Fonts may be modified and + additional glyphs or characters may be added to the Fonts, only if the fonts + are renamed to names not containing either the words "Bitstream" or the word + "Vera". + . + This License becomes null and void to the extent applicable to Fonts or Font + Software that has been modified and is distributed under the "Bitstream + Vera" names. + . + The Font Software may be sold as part of a larger software package but no + copy of one or more of the Font Software typefaces may be sold by itself. + . + THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, + TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME + FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING + ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE + FONT SOFTWARE. + . + Except as contained in this notice, the names of Gnome, the Gnome + Foundation, and Bitstream Inc., shall not be used in advertising or + otherwise to promote the sale, use or other dealings in this Font Software + without prior written authorization from the Gnome Foundation or Bitstream + Inc., respectively. For further information, contact: fonts at gnome dot + org. + . + Arev Fonts Copyright + ------------------------------ + . + Copyright (c) 2006 by Tavmjong Bah. All Rights Reserved. + . + Permission is hereby granted, free of charge, to any person obtaining + a copy of the fonts accompanying this license ("Fonts") and + associated documentation files (the "Font Software"), to reproduce + and distribute the modifications to the Bitstream Vera Font Software, + including without limitation the rights to use, copy, merge, publish, + distribute, and/or sell copies of the Font Software, and to permit + persons to whom the Font Software is furnished to do so, subject to + the following conditions: + . + The above copyright and trademark notices and this permission notice + shall be included in all copies of one or more of the Font Software + typefaces. + . + The Font Software may be modified, altered, or added to, and in + particular the designs of glyphs or characters in the Fonts may be + modified and additional glyphs or characters may be added to the + Fonts, only if the fonts are renamed to names not containing either + the words "Tavmjong Bah" or the word "Arev". + . + This License becomes null and void to the extent applicable to Fonts + or Font Software that has been modified and is distributed under the + "Tavmjong Bah Arev" names. + . + The Font Software may be sold as part of a larger software package but + no copy of one or more of the Font Software typefaces may be sold by + itself. + . + THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT + OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL + TAVMJONG BAH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL + DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM + OTHER DEALINGS IN THE FONT SOFTWARE. + . + Except as contained in this notice, the name of Tavmjong Bah shall not + be used in advertising or otherwise to promote the sale, use or other + dealings in this Font Software without prior written authorization + from Tavmjong Bah. For further information, contact: tavmjong @ free + . fr. + . + $Id: LICENSE 2133 2007-11-28 02:46:28Z lechimp $ + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a copy of + this software and associated documentation files (the "Software"), to deal in + the Software without restriction, including without limitation the rights to + use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies + of the Software, and to permit persons to whom the Software is furnished to do + so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +License: LGPL-2.1+ + 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; either version 2.1 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 Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + . + On Debian systems, the complete text of the GNU Lesser General Public + License version 2 can be found in "/usr/share/common-licenses/LGPL-2.1". + +License: GPL-2+ + This package 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 package 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, see + . + On Debian systems, the complete text of the GNU General + Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". + +License: zlib + This source code is provided 'as-is', without any express or implied + warranty. In no event will the author be held liable for any damages + arising from the use of this software. + . + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + . + 1. The origin of this source code must not be misrepresented; you must not + claim that you wrote the original source code. If you use this source code + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + . + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original source code. + . + 3. This notice may not be removed or altered from any source distribution. + +License: CC-BY-SA-3.0 + Creative Commons Attribution-ShareAlike 3.0 Unported + ․ + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION + ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE + INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + ITS USE. + ․ + License + ․ + THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE + COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY + COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS + AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. + ․ + BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE + TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY + BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS + CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND + CONDITIONS. + ․ + 1. Definitions + ․ + a. "Adaptation" means a work based upon the Work, or upon the Work and + other pre-existing works, such as a translation, adaptation, derivative + work, arrangement of music or other alterations of a literary or + artistic work, or phonogram or performance and includes cinematographic + adaptations or any other form in which the Work may be recast, + transformed, or adapted including in any form recognizably derived from + the original, except that a work that constitutes a Collection will not + be considered an Adaptation for the purpose of this License. For the + avoidance of doubt, where the Work is a musical work, performance or + phonogram, the synchronization of the Work in timed-relation with a + moving image ("synching") will be considered an Adaptation for the + purpose of this License. + ․ + b. "Collection" means a collection of literary or artistic works, such + as encyclopedias and anthologies, or performances, phonograms or + broadcasts, or other works or subject matter other than works listed in + Section 1(f) below, which, by reason of the selection and arrangement of + their contents, constitute intellectual creations, in which the Work is + included in its entirety in unmodified form along with one or more other + contributions, each constituting separate and independent works in + themselves, which together are assembled into a collective whole. A work + that constitutes a Collection will not be considered an Adaptation (as + defined below) for the purposes of this License. + ․ + c. "Creative Commons Compatible License" means a license that is listed + at http://creativecommons.org/compatiblelicenses that has been approved + by Creative Commons as being essentially equivalent to this License, + including, at a minimum, because that license: (i) contains terms that + have the same purpose, meaning and effect as the License Elements of + this License; and, (ii) explicitly permits the relicensing of + adaptations of works made available under that license under this + License or a Creative Commons jurisdiction license with the same License + Elements as this License. + ․ + d. "Distribute" means to make available to the public the original and + copies of the Work or Adaptation, as appropriate, through sale or other + transfer of ownership. + ․ + e. "License Elements" means the following high-level license attributes + as selected by Licensor and indicated in the title of this License: + Attribution, ShareAlike. + ․ + f. "Licensor" means the individual, individuals, entity or entities that + offer(s) the Work under the terms of this License. + ․ + g. "Original Author" means, in the case of a literary or artistic work, + the individual, individuals, entity or entities who created the Work or + if no individual or entity can be identified, the publisher; and in + addition (i) in the case of a performance the actors, singers, + musicians, dancers, and other persons who act, sing, deliver, declaim, + play in, interpret or otherwise perform literary or artistic works or + expressions of folklore; (ii) in the case of a phonogram the producer + being the person or legal entity who first fixes the sounds of a + performance or other sounds; and, (iii) in the case of broadcasts, the + organization that transmits the broadcast. + ․ + h. "Work" means the literary and/or artistic work offered under the + terms of this License including without limitation any production in the + literary, scientific and artistic domain, whatever may be the mode or + form of its expression including digital form, such as a book, pamphlet + and other writing; a lecture, address, sermon or other work of the same + nature; a dramatic or dramatico-musical work; a choreographic work or + entertainment in dumb show; a musical composition with or without words; + a cinematographic work to which are assimilated works expressed by a + process analogous to cinematography; a work of drawing, painting, + architecture, sculpture, engraving or lithography; a photographic work + to which are assimilated works expressed by a process analogous to + photography; a work of applied art; an illustration, map, plan, sketch + or three-dimensional work relative to geography, topography, + architecture or science; a performance; a broadcast; a phonogram; a + compilation of data to the extent it is protected as a copyrightable + work; or a work performed by a variety or circus performer to the extent + it is not otherwise considered a literary or artistic work. + ․ + i. "You" means an individual or entity exercising rights under this + License who has not previously violated the terms of this License with + respect to the Work, or who has received express permission from the + Licensor to exercise rights under this License despite a previous + violation. + ․ + j. "Publicly Perform" means to perform public recitations of the Work + and to communicate to the public those public recitations, by any means + or process, including by wire or wireless means or public digital + performances; to make available to the public Works in such a way that + members of the public may access these Works from a place and at a place + individually chosen by them; to perform the Work to the public by any + means or process and the communication to the public of the performances + of the Work, including by public digital performance; to broadcast and + rebroadcast the Work by any means including signs, sounds or images. + ․ + k. "Reproduce" means to make copies of the Work by any means including + without limitation by sound or visual recordings and the right of + fixation and reproducing fixations of the Work, including storage of a + protected performance or phonogram in digital form or other electronic + medium. + ․ + 2. Fair Dealing Rights. Nothing in this License is intended to reduce, + limit, or restrict any uses free from copyright or rights arising from + limitations or exceptions that are provided for in connection with the + copyright protection under copyright law or other applicable laws. + ․ + 3. License Grant. Subject to the terms and conditions of this License, + Licensor hereby grants You a worldwide, royalty-free, non-exclusive, + perpetual (for the duration of the applicable copyright) license to + exercise the rights in the Work as stated below: + ․ + a. to Reproduce the Work, to incorporate the Work into one or more + Collections, and to Reproduce the Work as incorporated in the + Collections; + ․ + b. to create and Reproduce Adaptations provided that any such + Adaptation, including any translation in any medium, takes reasonable + steps to clearly label, demarcate or otherwise identify that changes + were made to the original Work. For example, a translation could be + marked "The original work was translated from English to Spanish," or a + modification could indicate "The original work has been modified."; + ․ + c. to Distribute and Publicly Perform the Work including as incorporated + in Collections; and, + ․ + d. to Distribute and Publicly Perform Adaptations. + ․ + e. For the avoidance of doubt: + ․ + i. Non-waivable Compulsory License Schemes. In those jurisdictions in + which the right to collect royalties through any statutory or compulsory + licensing scheme cannot be waived, the Licensor reserves the exclusive + right to collect such royalties for any exercise by You of the rights + granted under this License; + ․ + ii. Waivable Compulsory License Schemes. In those jurisdictions in which + the right to collect royalties through any statutory or compulsory + licensing scheme can be waived, the Licensor waives the exclusive right + to collect such royalties for any exercise by You of the rights granted + under this License; and, + ․ + iii. Voluntary License Schemes. The Licensor waives the right to collect + royalties, whether individually or, in the event that the Licensor is a + member of a collecting society that administers voluntary licensing + schemes, via that society, from any exercise by You of the rights + granted under this License. + ․ + The above rights may be exercised in all media and formats whether now + known or hereafter devised. The above rights include the right to make + such modifications as are technically necessary to exercise the rights + in other media and formats. Subject to Section 8(f), all rights not + expressly granted by Licensor are hereby reserved. + ․ + 4. Restrictions. The license granted in Section 3 above is expressly + made subject to and limited by the following restrictions: + ․ + a. You may Distribute or Publicly Perform the Work only under the terms + of this License. You must include a copy of, or the Uniform Resource + Identifier (URI) for, this License with every copy of the Work You + Distribute or Publicly Perform. You may not offer or impose any terms on + the Work that restrict the terms of this License or the ability of the + recipient of the Work to exercise the rights granted to that recipient + under the terms of the License. You may not sublicense the Work. You + must keep intact all notices that refer to this License and to the + disclaimer of warranties with every copy of the Work You Distribute or + Publicly Perform. When You Distribute or Publicly Perform the Work, You + may not impose any effective technological measures on the Work that + restrict the ability of a recipient of the Work from You to exercise the + rights granted to that recipient under the terms of the License. This + Section 4(a) applies to the Work as incorporated in a Collection, but + this does not require the Collection apart from the Work itself to be + made subject to the terms of this License. If You create a Collection, + upon notice from any Licensor You must, to the extent practicable, + remove from the Collection any credit as required by Section 4(c), as + requested. If You create an Adaptation, upon notice from any Licensor + You must, to the extent practicable, remove from the Adaptation any + credit as required by Section 4(c), as requested. + ․ + b. You may Distribute or Publicly Perform an Adaptation only under the + terms of: (i) this License; (ii) a later version of this License with + the same License Elements as this License; (iii) a Creative Commons + jurisdiction license (either this or a later license version) that + contains the same License Elements as this License (e.g., + Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons Compatible + License. If you license the Adaptation under one of the licenses + mentioned in (iv), you must comply with the terms of that license. If + you license the Adaptation under the terms of any of the licenses + mentioned in (i), (ii) or (iii) (the "Applicable License"), you must + comply with the terms of the Applicable License generally and the + following provisions: (I) You must include a copy of, or the URI for, + the Applicable License with every copy of each Adaptation You Distribute + or Publicly Perform; (II) You may not offer or impose any terms on the + Adaptation that restrict the terms of the Applicable License or the + ability of the recipient of the Adaptation to exercise the rights + granted to that recipient under the terms of the Applicable License; + (III) You must keep intact all notices that refer to the Applicable + License and to the disclaimer of warranties with every copy of the Work + as included in the Adaptation You Distribute or Publicly Perform; (IV) + when You Distribute or Publicly Perform the Adaptation, You may not + impose any effective technological measures on the Adaptation that + restrict the ability of a recipient of the Adaptation from You to + exercise the rights granted to that recipient under the terms of the + Applicable License. This Section 4(b) applies to the Adaptation as + incorporated in a Collection, but this does not require the Collection + apart from the Adaptation itself to be made subject to the terms of the + Applicable License. + ․ + c. If You Distribute, or Publicly Perform the Work or any Adaptations or + Collections, You must, unless a request has been made pursuant to + Section 4(a), keep intact all copyright notices for the Work and + provide, reasonable to the medium or means You are utilizing: (i) the + name of the Original Author (or pseudonym, if applicable) if supplied, + and/or if the Original Author and/or Licensor designate another party or + parties (e.g., a sponsor institute, publishing entity, journal) for + attribution ("Attribution Parties") in Licensor's copyright notice, + terms of service or by other reasonable means, the name of such party or + parties; (ii) the title of the Work if supplied; (iii) to the extent + reasonably practicable, the URI, if any, that Licensor specifies to be + associated with the Work, unless such URI does not refer to the + copyright notice or licensing information for the Work; and (iv) , + consistent with Ssection 3(b), in the case of an Adaptation, a credit + identifying the use of the Work in the Adaptation (e.g., "French + translation of the Work by Original Author," or "Screenplay based on + original Work by Original Author"). The credit required by this Section + 4(c) may be implemented in any reasonable manner; provided, however, + that in the case of a Adaptation or Collection, at a minimum such credit + will appear, if a credit for all contributing authors of the Adaptation + or Collection appears, then as part of these credits and in a manner at + least as prominent as the credits for the other contributing authors. + For the avoidance of doubt, You may only use the credit required by this + Section for the purpose of attribution in the manner set out above and, + by exercising Your rights under this License, You may not implicitly or + explicitly assert or imply any connection with, sponsorship or + endorsement by the Original Author, Licensor and/or Attribution Parties, + as appropriate, of You or Your use of the Work, without the separate, + express prior written permission of the Original Author, Licensor and/or + Attribution Parties. + ․ + d. Except as otherwise agreed in writing by the Licensor or as may be + otherwise permitted by applicable law, if You Reproduce, Distribute or + Publicly Perform the Work either by itself or as part of any Adaptations + or Collections, You must not distort, mutilate, modify or take other + derogatory action in relation to the Work which would be prejudicial to + the Original Author's honor or reputation. Licensor agrees that in those + jurisdictions (e.g. Japan), in which any exercise of the right granted + in Section 3(b) of this License (the right to make Adaptations) would be + deemed to be a distortion, mutilation, modification or other derogatory + action prejudicial to the Original Author's honor and reputation, the + Licensor will waive or not assert, as appropriate, this Section, to the + fullest extent permitted by the applicable national law, to enable You + to reasonably exercise Your right under Section 3(b) of this License + (right to make Adaptations) but not otherwise. + ․ + 5. Representations, Warranties and Disclaimer + ․ + UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR + OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY + KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, + INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, + FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF + LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, + WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE + EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. + ․ + 6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE + LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR + ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES + ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS + BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + ․ + 7. Termination + ․ + a. This License and the rights granted hereunder will terminate + automatically upon any breach by You of the terms of this License. + Individuals or entities who have received Adaptations or Collections + from You under this License, however, will not have their licenses + terminated provided such individuals or entities remain in full + compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will + survive any termination of this License. + ․ + b. Subject to the above terms and conditions, the license granted here + is perpetual (for the duration of the applicable copyright in the Work). + Notwithstanding the above, Licensor reserves the right to release the + Work under different license terms or to stop distributing the Work at + any time; provided, however that any such election will not serve to + withdraw this License (or any other license that has been, or is + required to be, granted under the terms of this License), and this + License will continue in full force and effect unless terminated as + stated above. + ․ + 8. Miscellaneous + ․ + a. Each time You Distribute or Publicly Perform the Work or a + Collection, the Licensor offers to the recipient a license to the Work + on the same terms and conditions as the license granted to You under + this License. + ․ + b. Each time You Distribute or Publicly Perform an Adaptation, Licensor + offers to the recipient a license to the original Work on the same terms + and conditions as the license granted to You under this License. + ․ + c. If any provision of this License is invalid or unenforceable under + applicable law, it shall not affect the validity or enforceability of + the remainder of the terms of this License, and without further action + by the parties to this agreement, such provision shall be reformed to + the minimum extent necessary to make such provision valid and + enforceable. + ․ + d. No term or provision of this License shall be deemed waived and no + breach consented to unless such waiver or consent shall be in writing + and signed by the party to be charged with such waiver or consent. + ․ + e. This License constitutes the entire agreement between the parties + with respect to the Work licensed here. There are no understandings, + agreements or representations with respect to the Work not specified + here. Licensor shall not be bound by any additional provisions that may + appear in any communication from You. This License may not be modified + without the mutual written agreement of the Licensor and You. + ․ + f. The rights granted under, and the subject matter referenced, in this + License were drafted utilizing the terminology of the Berne Convention + for the Protection of Literary and Artistic Works (as amended on + September 28, 1979), the Rome Convention of 1961, the WIPO Copyright + Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and + the Universal Copyright Convention (as revised on July 24, 1971). These + rights and subject matter take effect in the relevant jurisdiction in + which the License terms are sought to be enforced according to the + corresponding provisions of the implementation of those treaty + provisions in the applicable national law. If the standard suite of + rights granted under applicable copyright law includes additional rights + not granted under this License, such additional rights are deemed to be + included in the License; this License is not intended to restrict the + license of any rights under applicable law. + ․ + ․ + Creative Commons Notice + ․ + Creative Commons is not a party to this License, and makes no warranty + whatsoever in connection with the Work. Creative Commons will not be + liable to You or any party on any legal theory for any damages + whatsoever, including without limitation any general, special, + incidental or consequential damages arising in connection to this + license. Notwithstanding the foregoing two (2) sentences, if Creative + Commons has expressly identified itself as the Licensor hereunder, it + shall have all rights and obligations of Licensor. + ․ + Except for the limited purpose of indicating to the public that the Work + is licensed under the CCPL, Creative Commons does not authorize the use + by either party of the trademark "Creative Commons" or any related + trademark or logo of Creative Commons without the prior written consent + of Creative Commons. Any permitted use will be in compliance with + Creative Commons' then-current trademark usage guidelines, as may be + published on its website or otherwise made available upon request from + time to time. For the avoidance of doubt, this trademark restriction + does not form part of the License. + ․ + Creative Commons may be contacted at http://creativecommons.org/. + +License: CC-BY-3.0 + http://creativecommons.org/licenses/by/3.0/ + . + THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE + COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY + COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS + AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. + . + BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE + TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY + BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS + CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND + CONDITIONS. + . + 1. Definitions + . + a. "Adaptation" means a work based upon the Work, or upon the Work and + other pre-existing works, such as a translation, adaptation, + derivative work, arrangement of music or other alterations of a + literary or artistic work, or phonogram or performance and includes + cinematographic adaptations or any other form in which the Work may be + recast, transformed, or adapted including in any form recognizably + derived from the original, except that a work that constitutes a + Collection will not be considered an Adaptation for the purpose of + this License. For the avoidance of doubt, where the Work is a musical + work, performance or phonogram, the synchronization of the Work in + timed-relation with a moving image ("synching") will be considered an + Adaptation for the purpose of this License. + b. "Collection" means a collection of literary or artistic works, such as + encyclopedias and anthologies, or performances, phonograms or + broadcasts, or other works or subject matter other than works listed + in Section 1(f) below, which, by reason of the selection and + arrangement of their contents, constitute intellectual creations, in + which the Work is included in its entirety in unmodified form along + with one or more other contributions, each constituting separate and + independent works in themselves, which together are assembled into a + collective whole. A work that constitutes a Collection will not be + considered an Adaptation (as defined above) for the purposes of this + License. + c. "Distribute" means to make available to the public the original and + copies of the Work or Adaptation, as appropriate, through sale or + other transfer of ownership. + d. "Licensor" means the individual, individuals, entity or entities that + offer(s) the Work under the terms of this License. + e. "Original Author" means, in the case of a literary or artistic work, + the individual, individuals, entity or entities who created the Work + or if no individual or entity can be identified, the publisher; and in + addition (i) in the case of a performance the actors, singers, + musicians, dancers, and other persons who act, sing, deliver, declaim, + play in, interpret or otherwise perform literary or artistic works or + expressions of folklore; (ii) in the case of a phonogram the producer + being the person or legal entity who first fixes the sounds of a + performance or other sounds; and, (iii) in the case of broadcasts, the + organization that transmits the broadcast. + f. "Work" means the literary and/or artistic work offered under the terms + of this License including without limitation any production in the + literary, scientific and artistic domain, whatever may be the mode or + form of its expression including digital form, such as a book, + pamphlet and other writing; a lecture, address, sermon or other work + of the same nature; a dramatic or dramatico-musical work; a + choreographic work or entertainment in dumb show; a musical + composition with or without words; a cinematographic work to which are + assimilated works expressed by a process analogous to cinematography; + a work of drawing, painting, architecture, sculpture, engraving or + lithography; a photographic work to which are assimilated works + expressed by a process analogous to photography; a work of applied + art; an illustration, map, plan, sketch or three-dimensional work + relative to geography, topography, architecture or science; a + performance; a broadcast; a phonogram; a compilation of data to the + extent it is protected as a copyrightable work; or a work performed by + a variety or circus performer to the extent it is not otherwise + considered a literary or artistic work. + g. "You" means an individual or entity exercising rights under this + License who has not previously violated the terms of this License with + respect to the Work, or who has received express permission from the + Licensor to exercise rights under this License despite a previous + violation. + h. "Publicly Perform" means to perform public recitations of the Work and + to communicate to the public those public recitations, by any means or + process, including by wire or wireless means or public digital + performances; to make available to the public Works in such a way that + members of the public may access these Works from a place and at a + place individually chosen by them; to perform the Work to the public + by any means or process and the communication to the public of the + performances of the Work, including by public digital performance; to + broadcast and rebroadcast the Work by any means including signs, + sounds or images. + i. "Reproduce" means to make copies of the Work by any means including + without limitation by sound or visual recordings and the right of + fixation and reproducing fixations of the Work, including storage of a + protected performance or phonogram in digital form or other electronic + medium. + . + 2. Fair Dealing Rights. Nothing in this License is intended to reduce, + limit, or restrict any uses free from copyright or rights arising from + limitations or exceptions that are provided for in connection with the + copyright protection under copyright law or other applicable laws. + . + 3. License Grant. Subject to the terms and conditions of this License, + Licensor hereby grants You a worldwide, royalty-free, non-exclusive, + perpetual (for the duration of the applicable copyright) license to + exercise the rights in the Work as stated below: + . + a. to Reproduce the Work, to incorporate the Work into one or more + Collections, and to Reproduce the Work as incorporated in the + Collections; + b. to create and Reproduce Adaptations provided that any such Adaptation, + including any translation in any medium, takes reasonable steps to + clearly label, demarcate or otherwise identify that changes were made + to the original Work. For example, a translation could be marked "The + original work was translated from English to Spanish," or a + modification could indicate "The original work has been modified."; + c. to Distribute and Publicly Perform the Work including as incorporated + in Collections; and, + d. to Distribute and Publicly Perform Adaptations. + e. For the avoidance of doubt: + . + i. Non-waivable Compulsory License Schemes. In those jurisdictions in + which the right to collect royalties through any statutory or + compulsory licensing scheme cannot be waived, the Licensor + reserves the exclusive right to collect such royalties for any + exercise by You of the rights granted under this License; + ii. Waivable Compulsory License Schemes. In those jurisdictions in + which the right to collect royalties through any statutory or + compulsory licensing scheme can be waived, the Licensor waives the + exclusive right to collect such royalties for any exercise by You + of the rights granted under this License; and, + iii. Voluntary License Schemes. The Licensor waives the right to + collect royalties, whether individually or, in the event that the + Licensor is a member of a collecting society that administers + voluntary licensing schemes, via that society, from any exercise + by You of the rights granted under this License. + . + The above rights may be exercised in all media and formats whether now + known or hereafter devised. The above rights include the right to make + such modifications as are technically necessary to exercise the rights in + other media and formats. Subject to Section 8(f), all rights not expressly + granted by Licensor are hereby reserved. + . + 4. Restrictions. The license granted in Section 3 above is expressly made + subject to and limited by the following restrictions: + . + a. You may Distribute or Publicly Perform the Work only under the terms + of this License. You must include a copy of, or the Uniform Resource + Identifier (URI) for, this License with every copy of the Work You + Distribute or Publicly Perform. You may not offer or impose any terms + on the Work that restrict the terms of this License or the ability of + the recipient of the Work to exercise the rights granted to that + recipient under the terms of the License. You may not sublicense the + Work. You must keep intact all notices that refer to this License and + to the disclaimer of warranties with every copy of the Work You + Distribute or Publicly Perform. When You Distribute or Publicly + Perform the Work, You may not impose any effective technological + measures on the Work that restrict the ability of a recipient of the + Work from You to exercise the rights granted to that recipient under + the terms of the License. This Section 4(a) applies to the Work as + incorporated in a Collection, but this does not require the Collection + apart from the Work itself to be made subject to the terms of this + License. If You create a Collection, upon notice from any Licensor You + must, to the extent practicable, remove from the Collection any credit + as required by Section 4(b), as requested. If You create an + Adaptation, upon notice from any Licensor You must, to the extent + practicable, remove from the Adaptation any credit as required by + Section 4(b), as requested. + b. If You Distribute, or Publicly Perform the Work or any Adaptations or + Collections, You must, unless a request has been made pursuant to + Section 4(a), keep intact all copyright notices for the Work and + provide, reasonable to the medium or means You are utilizing: (i) the + name of the Original Author (or pseudonym, if applicable) if supplied, + and/or if the Original Author and/or Licensor designate another party + or parties (e.g., a sponsor institute, publishing entity, journal) for + attribution ("Attribution Parties") in Licensor's copyright notice, + terms of service or by other reasonable means, the name of such party + or parties; (ii) the title of the Work if supplied; (iii) to the + extent reasonably practicable, the URI, if any, that Licensor + specifies to be associated with the Work, unless such URI does not + refer to the copyright notice or licensing information for the Work; + and (iv) , consistent with Section 3(b), in the case of an Adaptation, + a credit identifying the use of the Work in the Adaptation (e.g., + "French translation of the Work by Original Author," or "Screenplay + based on original Work by Original Author"). The credit required by + this Section 4 (b) may be implemented in any reasonable manner; + provided, however, that in the case of a Adaptation or Collection, at + a minimum such credit will appear, if a credit for all contributing + authors of the Adaptation or Collection appears, then as part of these + credits and in a manner at least as prominent as the credits for the + other contributing authors. For the avoidance of doubt, You may only + use the credit required by this Section for the purpose of attribution + in the manner set out above and, by exercising Your rights under this + License, You may not implicitly or explicitly assert or imply any + connection with, sponsorship or endorsement by the Original Author, + Licensor and/or Attribution Parties, as appropriate, of You or Your + use of the Work, without the separate, express prior written + permission of the Original Author, Licensor and/or Attribution + Parties. + c. Except as otherwise agreed in writing by the Licensor or as may be + otherwise permitted by applicable law, if You Reproduce, Distribute or + Publicly Perform the Work either by itself or as part of any + Adaptations or Collections, You must not distort, mutilate, modify or + take other derogatory action in relation to the Work which would be + prejudicial to the Original Author's honor or reputation. Licensor + agrees that in those jurisdictions (e.g. Japan), in which any exercise + of the right granted in Section 3(b) of this License (the right to + make Adaptations) would be deemed to be a distortion, mutilation, + modification or other derogatory action prejudicial to the Original + Author's honor and reputation, the Licensor will waive or not assert, + as appropriate, this Section, to the fullest extent permitted by the + applicable national law, to enable You to reasonably exercise Your + right under Section 3(b) of this License (right to make Adaptations) + but not otherwise. + . + 5. Representations, Warranties and Disclaimer + . + UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR + OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY + KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, + INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, + FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF + LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, + WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION + OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. + . + 6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE + LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR + ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES + ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS + BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + . + 7. Termination + . + a. This License and the rights granted hereunder will terminate + automatically upon any breach by You of the terms of this License. + Individuals or entities who have received Adaptations or Collections + from You under this License, however, will not have their licenses + terminated provided such individuals or entities remain in full + compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will + survive any termination of this License. + b. Subject to the above terms and conditions, the license granted here is + perpetual (for the duration of the applicable copyright in the Work). + Notwithstanding the above, Licensor reserves the right to release the + Work under different license terms or to stop distributing the Work at + any time; provided, however that any such election will not serve to + withdraw this License (or any other license that has been, or is + required to be, granted under the terms of this License), and this + License will continue in full force and effect unless terminated as + stated above. + . + 8. Miscellaneous + . + a. Each time You Distribute or Publicly Perform the Work or a Collection, + the Licensor offers to the recipient a license to the Work on the same + terms and conditions as the license granted to You under this License. + b. Each time You Distribute or Publicly Perform an Adaptation, Licensor + offers to the recipient a license to the original Work on the same + terms and conditions as the license granted to You under this License. + c. If any provision of this License is invalid or unenforceable under + applicable law, it shall not affect the validity or enforceability of + the remainder of the terms of this License, and without further action + by the parties to this agreement, such provision shall be reformed to + the minimum extent necessary to make such provision valid and + enforceable. + d. No term or provision of this License shall be deemed waived and no + breach consented to unless such waiver or consent shall be in writing + and signed by the party to be charged with such waiver or consent. + e. This License constitutes the entire agreement between the parties with + respect to the Work licensed here. There are no understandings, + agreements or representations with respect to the Work not specified + here. Licensor shall not be bound by any additional provisions that + may appear in any communication from You. This License may not be + modified without the mutual written agreement of the Licensor and You. + f. The rights granted under, and the subject matter referenced, in this + License were drafted utilizing the terminology of the Berne Convention + for the Protection of Literary and Artistic Works (as amended on + September 28, 1979), the Rome Convention of 1961, the WIPO Copyright + Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 + and the Universal Copyright Convention (as revised on July 24, 1971). + These rights and subject matter take effect in the relevant + jurisdiction in which the License terms are sought to be enforced + according to the corresponding provisions of the implementation of + those treaty provisions in the applicable national law. If the + standard suite of rights granted under applicable copyright law + includes additional rights not granted under this License, such + additional rights are deemed to be included in the License; this + License is not intended to restrict the license of any rights under + applicable law. + +License: CC-BY-SA-4.0 + Attribution-ShareAlike 4.0 International + . + ======================================================================= + . + Creative Commons Corporation ("Creative Commons") is not a law firm and + does not provide legal services or legal advice. Distribution of + Creative Commons public licenses does not create a lawyer-client or + other relationship. Creative Commons makes its licenses and related + information available on an "as-is" basis. Creative Commons gives no + warranties regarding its licenses, any material licensed under their + terms and conditions, or any related information. Creative Commons + disclaims all liability for damages resulting from their use to the + fullest extent possible. + . + Using Creative Commons Public Licenses + . + Creative Commons public licenses provide a standard set of terms and + conditions that creators and other rights holders may use to share + original works of authorship and other material subject to copyright + and certain other rights specified in the public license below. The + following considerations are for informational purposes only, are not + exhaustive, and do not form part of our licenses. + . + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + . + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More_considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + . + ======================================================================= + . + Creative Commons Attribution-ShareAlike 4.0 International Public + License + . + By exercising the Licensed Rights (defined below), You accept and agree + to be bound by the terms and conditions of this Creative Commons + Attribution-ShareAlike 4.0 International Public License ("Public + License"). To the extent this Public License may be interpreted as a + contract, You are granted the Licensed Rights in consideration of Your + acceptance of these terms and conditions, and the Licensor grants You + such rights in consideration of benefits the Licensor receives from + making the Licensed Material available under these terms and + conditions. + . + . + Section 1 -- Definitions. + . + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + . + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + . + c. BY-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + . + d. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + . + e. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + . + f. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + . + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution and ShareAlike. + . + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + . + i. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + . + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + . + k. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + . + l. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + . + m. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + . + . + Section 2 -- Scope. + . + a. License grant. + . + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + . + a. reproduce and Share the Licensed Material, in whole or + in part; and + . + b. produce, reproduce, and Share Adapted Material. + . + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + . + 3. Term. The term of this Public License is specified in Section + 6(a). + . + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + . + 5. Downstream recipients. + . + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + . + b. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + . + c. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + . + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + . + b. Other rights. + . + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + . + 2. Patent and trademark rights are not licensed under this + Public License. + . + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + . + . + Section 3 -- License Conditions. + . + Your exercise of the Licensed Rights is expressly made subject to the + following conditions. + . + a. Attribution. + . + 1. If You Share the Licensed Material (including in modified + form), You must: + . + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + . + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + . + ii. a copyright notice; + . + iii. a notice that refers to this Public License; + . + iv. a notice that refers to the disclaimer of + warranties; + . + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + . + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + . + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + . + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + . + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + . + b. ShareAlike. + . + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + . + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-SA Compatible License. + . + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + . + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + . + . + Section 4 -- Sui Generis Database Rights. + . + Where the Licensed Rights include Sui Generis Database Rights that + apply to Your use of the Licensed Material: + . + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + . + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material, + . + including for purposes of Section 3(b); and + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + . + For the avoidance of doubt, this Section 4 supplements and does not + replace Your obligations under this Public License where the Licensed + Rights include other Copyright and Similar Rights. + . + . + Section 5 -- Disclaimer of Warranties and Limitation of Liability. + . + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + . + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + . + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + . + . + Section 6 -- Term and Termination. + . + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + . + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + . + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + . + 2. upon express reinstatement by the Licensor. + . + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + . + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + . + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + . + . + Section 7 -- Other Terms and Conditions. + . + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + . + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + . + . + Section 8 -- Interpretation. + . + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + . + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + . + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + . + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + . + . + ======================================================================= + . + Creative Commons is not a party to its public licenses. + Notwithstanding, Creative Commons may elect to apply one of its public + licenses to material it publishes and in those instances will be + considered the "Licensor." Except for the limited purpose of indicating + that material is shared under a Creative Commons public license or as + otherwise permitted by the Creative Commons policies published at + creativecommons.org/policies, Creative Commons does not authorize the + use of the trademark "Creative Commons" or any other trademark or logo + of Creative Commons without its prior written consent including, + without limitation, in connection with any unauthorized modifications + to any of its public licenses or any other arrangements, + understandings, or agreements concerning use of licensed material. For + the avoidance of doubt, this paragraph does not form part of the public + licenses. + . + Creative Commons may be contacted at creativecommons.org. + +License: WTFPL + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + Version 2, December 2004 + . + Copyright (C) 2004 Sam Hocevar + . + Everyone is permitted to copy and distribute verbatim or modified copies of + this license document, and changing it is allowed as long as the name is + changed. + . + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + . + 0. You just DO WHAT THE FUCK YOU WANT TO. + +License: OpenSSL-License + * Copyright (c) 1998-2004 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS 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. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + +License: public-domain + The author (Baptiste Lepilleur) explicitly disclaims copyright in all + jurisdictions which recognize such a disclaimer. In such jurisdictions, this + software is released into the Public Domain. + +License: LGPL-3+ + On Debian systems the complete text of the GNU Lesser General Public License 3 + can be found at /usr/share/common-licenses/LGPL-3. + + diff --git a/debian/multicraft-data.install b/debian/multicraft-data.install new file mode 100644 index 000000000..aa4862f58 --- /dev/null +++ b/debian/multicraft-data.install @@ -0,0 +1,9 @@ +usr/share/doc/multicraft +usr/share/games/multicraft/builtin +usr/share/games/multicraft/client +usr/share/games/multicraft/games +usr/share/games/multicraft/textures +usr/share/games/multicraft/fonts +usr/share/locale +usr/share/metainfo/net.minetest.multicraft.appdata.xml usr/share/metainfo/ +usr/share/icons/hicolor/128x128/apps/multicraft.png diff --git a/debian/multicraft-server.README.Debian b/debian/multicraft-server.README.Debian new file mode 100644 index 000000000..242679779 --- /dev/null +++ b/debian/multicraft-server.README.Debian @@ -0,0 +1,49 @@ +multicraft-server for Debian +========================== + +Since version 0.4.10+repack-3 Debian supports running multiple Minetest servers. +An unprivileged system-wide user, Debian-minetest, controls the server. + + * The home directory of this user is /var/games/multicraft. + * All log files are written to /var/log/multicraft. + * The default server configuration is located at /etc/multicraft/multicraft.conf. + +systemd (default init system) +============================= + +Debian's Minetest server supports template units. You can start multiple +servers by specifying the name of your configuration files on the command-line. + + # This command will start the server with the default configuration, + # /etc/multicraft/multicraft.conf + + systemctl start multicraftserver@multicraft.service + + # For running a second PvP server, you can create another configuration + # file /etc/multicraft/pvp.conf and then start the server with + + systemctl start multicraftserver@pvp.service + +The new log file will then be written to /var/log/multicraft/multicraft-pvp.log. + +SysV +==== + +You can start the server with default multicraft.conf configuration by using the +service command. + + service multicraftserver start + +and stop it with + + service multicraftserver stop + +To disable the init script use the facilities provided by your init system. For +instance, under sysvinit, use + + update-rc.d multicraftserver disable + +or under systemd, use + + systemctl disable multicraftserver@multicraft.service + diff --git a/debian/multicraft-server.init b/debian/multicraft-server.init new file mode 100644 index 000000000..7813692d7 --- /dev/null +++ b/debian/multicraft-server.init @@ -0,0 +1,81 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: minetest4-server +# Required-Start: $remote_fs $network +# Required-Stop: $remote_fs $network +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Start multicraft network game server +# Description: dedicated game server for multicraft +### END INIT INFO + +PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" +NAME="multicraftserver" +DAEMON="/usr/games/multicraftserver" +DESC="multicraft VenenuX server" +PIDFILE="/var/run/$NAME.pid" +BINARY="/usr/games/multicraftserver" +USER="multicraft" +DAEMON_OPTS="--config /etc/multicraft/multicraft.conf --logfile /var/log/multicraft/multicraft.log" + +test -x $DAEMON || exit 0 + +. /lib/lsb/init-functions + +# Include defaults if available +if [ -f /etc/default/$NAME ] ; then + . /etc/default/$NAME +fi + +multicraft_start() { + start-stop-daemon \ + --start \ + --quiet \ + --pidfile $PIDFILE \ + --oknodo \ + --background \ + --exec $BINARY \ + --startas $DAEMON \ + --make-pidfile --chuid $USER \ + -- $DAEMON_OPTS > /dev/null 2>&1 || return 1 + return 0 +} + +multicraft_stop() { + start-stop-daemon \ + --stop \ + --quiet \ + --pidfile $PIDFILE \ + --oknodo \ + --exec $BINARY || return 1 + rm -f $PIDFILE + return 0 +} + +case "$1" in + start) + log_begin_msg "Starting $DESC: $NAME" + multicraft_start + log_end_msg $? + ;; + stop) + log_begin_msg "Stopping $DESC: $NAME" + multicraft_stop + log_end_msg $? + ;; + restart|force-reload) + log_begin_msg "Restarting $DESC: $NAME" + multicraft_stop && sleep 1 && multicraft_start + log_end_msg $? + ;; + status) + status_of_proc -p "$PIDFILE" "$DAEMON" "$NAME" && exit 0 || exit $? + ;; + *) + # echo "Usage: $0 {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/debian/multicraft-server.install b/debian/multicraft-server.install new file mode 100644 index 000000000..4d62c89e6 --- /dev/null +++ b/debian/multicraft-server.install @@ -0,0 +1,2 @@ +usr/bin/multicraftserver usr/games +usr/share/man/man6/multicraftserver.6 diff --git a/debian/multicraft-server.postinst b/debian/multicraft-server.postinst new file mode 100644 index 000000000..83056a3d9 --- /dev/null +++ b/debian/multicraft-server.postinst @@ -0,0 +1,32 @@ +#!/bin/sh + +set -e + +case "$1" in + configure) + if ! getent passwd multicraft >/dev/null; then + adduser \ + --disabled-password \ + --quiet \ + --system \ + --home /var/games/multicraft \ + --no-create-home \ + --gecos "multicraftserver" \ + --ingroup games \ + --force-badname multicraft + fi + install -d /var/games + install -d /var/games/multicraft + install -d /var/log/multicraft + chown multicraft:games /var/games/multicraft + chown multicraft:games /var/log/multicraft + ;; + abort-upgrade|abort-remove|abort-deconfigure) + ;; + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +#DEBHELPER# diff --git a/debian/multicraft-server.postrm b/debian/multicraft-server.postrm new file mode 100644 index 000000000..e2b981576 --- /dev/null +++ b/debian/multicraft-server.postrm @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + + +if [ "$1" = "purge" ] ; then + if getent passwd multicraft >/dev/null; then + deluser --remove-home multicraft >/dev/null + fi + rm -r /var/games/multicraft + rm -r /var/log/multicraft + rmdir --ignore-fail-on-non-empty /var/games +fi + +#DEBHELPER# diff --git a/debian/multicraft.install b/debian/multicraft.install new file mode 100644 index 000000000..8348b192e --- /dev/null +++ b/debian/multicraft.install @@ -0,0 +1,3 @@ +usr/bin/multicraft /usr/games +usr/share/applications/net.minetest.multicraft.desktop /usr/share/applications +usr/share/man/man6/multicraft.6 diff --git a/debian/patches/01-kfreebsd-debian-gettex-glibc.patch b/debian/patches/01-kfreebsd-debian-gettex-glibc.patch new file mode 100644 index 000000000..a9672a59d --- /dev/null +++ b/debian/patches/01-kfreebsd-debian-gettex-glibc.patch @@ -0,0 +1,25 @@ +From: Matthew Bekkema +Date: Sun, 4 Jan 2015 20:49:22 +0100 +Subject: kfreebsd-gettext + +Fix the build on kFreeBSD as it uses glibc +--- + cmake/Modules/FindGettextLib.cmake | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +--- a/cmake/Modules/FindGettextLib.cmake ++++ b/cmake/Modules/FindGettextLib.cmake +@@ -60,9 +60,10 @@ find_package_handle_standard_args(Gettex + + if(GETTEXTLIB_FOUND) + # BSD variants require special linkage as they don't use glibc +- if(${CMAKE_SYSTEM_NAME} MATCHES "BSD|DragonFly") +- set(GETTEXT_LIBRARY "intl") +- endif() ++ # DEBIAN CHANGE: kFreeBSD still uses glibc ++# if(${CMAKE_SYSTEM_NAME} MATCHES "BSD|DragonFly") ++# set(GETTEXT_LIBRARY "intl") ++# endif() + + set(GETTEXT_PO_PATH ${CMAKE_SOURCE_DIR}/po) + set(GETTEXT_MO_BUILD_PATH ${CMAKE_BINARY_DIR}/locale//LC_MESSAGES) diff --git a/debian/patches/03-rawlua.patch b/debian/patches/03-rawlua.patch new file mode 100644 index 000000000..82f95ce87 --- /dev/null +++ b/debian/patches/03-rawlua.patch @@ -0,0 +1,20 @@ +From: Markus Koschany +Date: Sun, 4 Jun 2017 21:50:23 +0200 +Subject: rawlua + +Forwarded: no + +--- minetest4-4.0.18.orig/cmake/Modules/FindLua.cmake ++++ minetest4-4.0.18/cmake/Modules/FindLua.cmake +@@ -21,8 +21,7 @@ else() + endif() + + if(NOT USE_LUAJIT) +- message(STATUS "LuaJIT not found, using bundled Lua.") +- set(LUA_LIBRARY lua) +- set(LUA_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/lua/src) +- add_subdirectory(lib/lua) ++ message(STATUS "LuaJIT not found, using the version of Lua provided by the system.") ++ set(LUA_INCLUDE_DIR "/usr/include/lua5.1/") ++ set(LUA_LIBRARY "lua5.1") + endif() diff --git a/debian/patches/04-postgresql.patch b/debian/patches/04-postgresql.patch new file mode 100644 index 000000000..4bd556ff0 --- /dev/null +++ b/debian/patches/04-postgresql.patch @@ -0,0 +1,19 @@ +From: Markus Koschany +Date: Sat, 1 Feb 2020 23:36:10 +0100 +Subject: postgresql + +Fix for not finding PostgreSQL. +--- + src/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -170,6 +170,7 @@ option(ENABLE_POSTGRESQL "Enable Postgre + set(USE_POSTGRESQL FALSE) + + if(ENABLE_POSTGRESQL) ++ set(PostgreSQL_TYPE_INCLUDE_DIR /usr/include/postgresql/) + find_package("PostgreSQL") + + if(PostgreSQL_FOUND) diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 000000000..66aeeef79 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,3 @@ +#01-kfreebsd-debian-gettex-glibc.patch +#03-rawlua.patch +#04-postgresql.patch diff --git a/debian/rules b/debian/rules new file mode 100755 index 000000000..064c98f10 --- /dev/null +++ b/debian/rules @@ -0,0 +1,75 @@ +#!/usr/bin/make -f + +export DH_VERBOSE = 1 +DH_VERBOSE = 1 +export VERBOSE = 1 +VERBOSE = 1 + +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) +DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) +DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) +CUFLAGS = -O0 +else +CUFLAGS = -O2 -fomit-frame-pointer -fexpensive-optimizations -fpermissive -Wall +ifneq (,$(findstring i386,$(DEB_BUILD_ARCH))) +CUFLAGS = -m32 -O3 -fomit-frame-pointer -fexpensive-optimizations -march=pentium3 -mtune=nocona -mmmx -msse -mno-sse2 -mno-sse3 -fpermissive -mfpmath=sse -Wall +endif +ifneq (,$(findstring i486,$(DEB_BUILD_ARCH))) +CUFLAGS = -m32 -O3 -fomit-frame-pointer -fexpensive-optimizations -march=pentium3 -mtune=nocona -mmmx -msse -mno-sse2 -mno-sse3 -fpermissive -mfpmath=sse -Wall +endif +ifneq (,$(findstring amd64,$(DEB_BUILD_ARCH))) +CUFLAGS = -O3 -fomit-frame-pointer -fexpensive-optimizations -mtune=nocona -mmmx -msse -msse2 -fpermissive -mfpmath=sse -Wall +endif +endif +export CFLAGS=$(CUFLAGS) +export CXXFLAGS=$(CUFLAGS) +export DEB_CFLAGS_MAINT_APPEND = $(CUFLAGS) +export DEB_CXXFLAGS_MAINT_APPEND = $(CUFLAGS) + +export DEB_BUILD_MAINT_OPTIONS = hardening=+fortify,+stackprotector,+relro,+bindnow,-pie +# older bz comprension +export DEB_DH_BUILDDEB_ARGS = -- -Zbzip2 +# avoid useless dependencies +export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed + +override_dh_auto_configure: + dh_auto_configure -- \ + -DRUN_IN_PLACE=0 \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DENABLE_SPATIAL=ON \ + -DENABLE_SYSTEM_JSONCPP=1 \ + -DENABLE_SYSTEM_GMP=1 \ + -DJSON_INCLUDE_DIR=/usr/include/jsoncpp \ + -DENABLE_GETTEXT=1 \ + -DENABLE_FREETYPE=1 \ + -DFREETYPE_INCLUDE_DIR_freetype2=/usr/include/freetype2 \ + -DFREETYPE_INCLUDE_DIR_ft2build=/usr/include \ + -DENABLE_LEVELDB=1 \ + -DENABLE_LUAJIT=ON \ + -DENABLE_POSTGRESQL=1 \ + -DLEVELDB_INCLUDE_DIR=/usr/include/leveldb \ + -DCUSTOM_LOCALEDIR=/usr/share/locale \ + -DCUSTOM_SHAREDIR=/usr/share/games/multicraft \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SERVER=1 -DCMAKE_BUILD_TYPE=Release + + +override_dh_installchangelogs: +# dh_installchangelogs debian/changelog.upstream + +override_dh_install: + find . -iname "license.txt" -delete + dh_install --list-missing + +override_dh_clean: + dh_clean + $(RM) -r bin + $(RM) -r lib/jsoncpp lib/gmp + +override_dh_builddeb: + dh_builddeb -- -Zgzip + +%: + dh ${@} diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 000000000..163aaf8d8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/watch.ex b/debian/watch.ex new file mode 100644 index 000000000..a9c783fff --- /dev/null +++ b/debian/watch.ex @@ -0,0 +1,38 @@ +# Example watch control file for uscan +# Rename this file to "watch" and then you can run the "uscan" command +# to check for upstream updates and more. +# See uscan(1) for format + +# Compulsory line, this is a version 4 file +version=4 + +# PGP signature mangle, so foo.tar.gz has foo.tar.gz.sig +#opts="pgpsigurlmangle=s%$%.sig%" + +# HTTP site (basic) +#http://example.com/downloads.html \ +# files/multicraft-([\d\.]+)\.tar\.gz debian uupdate + +# Uncomment to examine an FTP server +#ftp://ftp.example.com/pub/multicraft-(.*)\.tar\.gz debian uupdate + +# SourceForge hosted projects +# http://sf.net/multicraft/ multicraft-(.*)\.tar\.gz debian uupdate + +# GitHub hosted projects +#opts="filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%-$1.tar.gz%" \ +# https://github.com//multicraft/tags \ +# (?:.*?/)?v?(\d[\d.]*)\.tar\.gz debian uupdate + +# PyPI +# https://pypi.debian.net/multicraft/multicraft-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) + +# Direct Git +# opts="mode=git" http://git.example.com/multicraft.git \ +# refs/tags/v([\d\.]+) debian uupdate + + + + +# Uncomment to find new files on GooglePages +# http://example.googlepages.com/foo.html multicraft-(.*)\.tar\.gz diff --git a/misc/multicraf.spec b/misc/multicraf.spec new file mode 100644 index 000000000..ad5ea1df9 --- /dev/null +++ b/misc/multicraf.spec @@ -0,0 +1,232 @@ +Name: multicraft +Version: 2.0.3 +Release: 1%{?dist} +Summary: Minenux Multicraft Minetest fork for sandbox infinite block world + +License: LGPLv2+ and CC-BY-SA +URL: https://codeberg.org/minenux/minetest-engine-multicraft + +Source0: %{name}_%{version}.orig.tar.gz + +#Patch0001: 0001-mapper.patch + +%if 0%{?rhel} +ExclusiveArch: %{ix86} x86_64 +%else +# LuaJIT arches +ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64le +%endif + +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: cmake >= 3.0 +BuildRequires: irrlicht-devel +BuildRequires: jsoncpp-devel +BuildRequires: luajit-devel +BuildRequires: bzip2-devel gettext-devel sqlite-devel zlib-devel +BuildRequires: libpng-devel libjpeg-turbo-devel libXxf86vm mesa-libGL-devel +BuildRequires: desktop-file-utils +BuildRequires: systemd +BuildRequires: openal-soft-devel +BuildRequires: libvorbis-devel +BuildRequires: libcurl-devel libidn-devel +BuildRequires: leveldb-devel +BuildRequires: gmp-devel +BuildRequires: libappstream-glib +BuildRequires: freetype-devel + +Requires: %{name}-server = %{version}-%{release} +Requires: %{name}-data = %{version}-%{release} +Requires: hicolor-icon-theme + +%description +Game of mining, crafting and building in the infinite world of cubic blocks with +optional hostile creatures, features both single and the network multiplayer +mode, mods. Public multiplayer servers are available. + +%package server +Summary: multicraft multiplayer server only for LAN and network remote play + +Requires(pre): shadow-utils +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Requires: %{name}-data = %{version}-%{release} + +%description server +Game of mining, crafting and building in the infinite world of cubic +blocks with optional hostile creatures, features both single and the +network multiplayer mode. This is Multicraft multiplayer server only serve the game to connect to + +%package data +Summary: multicraft common data between client and server + +%description data +Multicraft common data. This package is shared between multicraft server and client. + +%if 0%{?fedora_version} > 32 +%global debug_package %{nil} +%endif + +%prep +%autosetup -p1 + +#game datapackage are included +#cp %{SOURCE4} /doc + +# purge bundled jsoncpp and lua, and gmp :P +rm -vrf lib/jsoncpp lib/lua lib/gmp + +find . -name .gitignore -print -delete +find . -name .travis.yml -print -delete +find . -name .luacheckrc -print -delete + +%build +%undefine _hardened_build +%undefine _annotated_build +%undefine _strict_symbol_defs_build +CFLAGS="-O3 -fomit-frame-pointer -Wall -ffp-contract=off" +CXXFLAGS="-O3 -fomit-frame-pointer -Wall -ffp-contract=off -fpermissive" +LDFLAGS="-Wl,-z,relro -Wl,--as-needed -Wl,-z,now" +%ifarch x86_64 +CFLAGS="-O3 -fomit-frame-pointer -mtune=nocona -mmmx -msse -msse2 -Wall -ffp-contract=off" +CXXFLAGS="-O3 -fomit-frame-pointer -mtune=nocona -mmmx -msse -msse2 -Wall -ffp-contract=off -fpermissive" +%endif +%ifarch %{ix86} +CFLAGS="-O3 -march=pentium3 -mtune=nocona -mfpmath=sse -fomit-frame-pointer -mmmx -msse -msse2 -mno-sse4 -mno-sse3 -fpermissive -Wall -fexpensive-optimizations" +CXXFLAGS="-O3 -march=pentium3 -mtune=nocona -mfpmath=sse -fomit-frame-pointer -mmmx -msse -msse2 -mno-sse4 -mno-sse3 -fpermissive -Wall -fexpensive-optimizations -fpermissive" +%endif +%ifarch aarch64 +%define _lto_cflags %{nil} +%endif +# -DFREETYPE_INCLUDE_DIR_freetype2=/usr/include/freetype2 \ +# -DFREETYPE_INCLUDE_DIR_ft2build=/usr/include \ +# -DLEVELDB_INCLUDE_DIR=/usr/include/leveldb \ +%cmake -DENABLE_CURL=TRUE \ + -DENABLE_LEVELDB=TRUE \ + -DENABLE_LUAJIT=TRUE \ + -DENABLE_GETTEXT=TRUE \ + -DENABLE_SOUND=TRUE \ + -DENABLE_SYSTEM_JSONCPP=TRUE \ + -DENABLE_SYSTEM_GMP=TRUE \ + -DENABLE_FREETYPE=TRUE \ + -DBUILD_SERVER=TRUE \ + -DBUILD_CLIENT=TRUE \ + -DRUN_IN_PLACE=0 \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCUSTOM_LOCALEDIR=%{_datadir}/locale \ + -DCUSTOM_SHAREDIR=%{_datadir}/games/%{name} \ + -DENABLE_POSTGRESQL=1 \ + -DJSON_INCLUDE_DIR=/usr/include/json \ +%{nil} +%if 0%{?fedora_version} > 32 +%cmake_build +%else +make %{?_smp_mflags} VERBOSE=1 +%endif + + +%install +%if 0%{?fedora_version} > 32 +%cmake_install +%else +%make_install +%endif + +# Add desktop file is done by install +#desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE1} + +# Systemd unit file +# mkdir -p %{buildroot}%{_unitdir}/ +# install -m 0644 %{SOURCE3} %{buildroot}%{_unitdir} + +# /etc/rsyslog.d/multicraft.conf +# mkdir -p %{buildroot}%{_sysconfdir}/rsyslog.d/ +# install -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rsyslog.d/%{name}.conf + +# /etc/logrotate.d/multicraft +# mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d/ +# install -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} + +# /var/lib/multicraft directory for server data files +install -d -m 0775 %{buildroot}%{_sharedstatedir}/%{name}/ + +# /etc/multicraft/multicraft.conf +install -d -m 0775 %{buildroot}%{_sysconfdir}/%{name}/ +install -d -m 0775 %{buildroot}%{_sysconfdir}/sysconfig/%{name}/ + +# /etc/sysconfig/multicraft.conf +# install -d -m 0775 %{buildroot}%{_sysconfdir}/sysconfig/%{name}/ +# install -m 0664 %{SOURCE8} %{buildroot}%{_sysconfdir}/sysconfig/%{name} + +# Move doc directory back to the sources +mkdir __doc +mv %{buildroot}%{_datadir}/doc/%{name}/* __doc +rm -rf %{buildroot}%{_datadir}/doc/%{name} + +%find_lang %{name} + +%post +/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%postun +if [ $1 -eq 0 ] ; then + /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null + /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + +%pre server +getent group %{name} >/dev/null || groupadd -r %{name} +getent passwd %{name} >/dev/null || \ + useradd -r -g %{name} -d %{_sharedstatedir}/%{name} -s /sbin/nologin \ + -c "multicraft-server" %{name} +exit 0 + +%post server +%systemd_post %{name}@%{name}.service + +%preun server +%systemd_preun %{name}@%{name}.service + +%postun server +%systemd_postun_with_restart %{name}@%{name}.service + +%%files -f %%{name}.lang +%files +%{_bindir}/%{name} +%{_datadir}/applications/*.desktop +%{_mandir}/man6/%{name}.* + +%files server +%doc README.* doc/*.txt +%{_bindir}/%{name}server +%{_unitdir}/%{name}@.service +%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} +%config(noreplace) %{_sysconfdir}/rsyslog.d/%{name}.conf +%attr(-,multicraft,multicraft)%{_sharedstatedir}/%{name}/ +%attr(-,multicraft,multicraft)%{_sysconfdir}/%{name}/ +%attr(-,multicraft,multicraft)%{_sysconfdir}/sysconfig/%{name}/ +%{_mandir}/man6/%{name}server.* + +%files data +%{_datadir}/games/%{name}/games +%{_datadir}/games/%{name}/builtin +%{_datadir}/games/%{name}/client +%{_datadir}/games/%{name}/clientmods +%{_datadir}/games/%{name}/fonts +%{_datadir}/games/%{name}/textures +%{_datadir}/icons/hicolor/*/apps/%{name}.png +%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg +%{_datadir}/metainfo/*.appdata.xml +%{_datadir}/locale/*/*/%{name}.mo + +%changelog +* Mon Dic 26 2022 PICCORO Lenz McKAY - 2.0.3-1 +- Basic build of the current stable version +- change all patchs to multicraft path +- set all to multicraft as project sufix + diff --git a/misc/multicraft.logrotate b/misc/multicraft.logrotate new file mode 100644 index 000000000..50d79a059 --- /dev/null +++ b/misc/multicraft.logrotate @@ -0,0 +1,5 @@ +/var/log/minetest*.log { + copytruncate + notifempty + missingok +} diff --git a/misc/multicraftserver b/misc/multicraftserver new file mode 100755 index 000000000..641dd111c --- /dev/null +++ b/misc/multicraftserver @@ -0,0 +1,5 @@ +#!/bin/sh +set -e + +exec @INSTALLPLACE@/multicraftserver \ + "$@" diff --git a/misc/multicraftserver.service b/misc/multicraftserver.service new file mode 100644 index 000000000..1d1f0db54 --- /dev/null +++ b/misc/multicraftserver.service @@ -0,0 +1,16 @@ +[Unit] +Description=Multicraft multiplayer server multicraft.conf server config +Documentation=man:multicraftserver(6) +After=network.target +RequiresMountsFor=/var/games/multicraftserver + +[Service] +Restart=on-failure +User=multicraft +Group=games +ExecStart=/usr/lib/multicraft/multicraftserver --config /etc/multicraft/multicraft.conf --logfile /var/log/multicraft/multicraft.log +StandardOutput=null + +[Install] +WantedBy=multi-user.target + diff --git a/misc/multicraftserver@.service b/misc/multicraftserver@.service new file mode 100644 index 000000000..804eed01a --- /dev/null +++ b/misc/multicraftserver@.service @@ -0,0 +1,16 @@ +[Unit] +Description=Multicraft multiplayer server %i.conf server config +Documentation=man:multicraftserver(6) +After=network.target +RequiresMountsFor=/var/games/multicraft-server + +[Service] +Restart=on-failure +User=multicraft +Group=games +ExecStart=/usr/lib/multicraft/multicraftserver --config /etc/multicraft/%i.conf --logfile /var/log/multicraft/%i.log +StandardOutput=null + +[Install] +WantedBy=multi-user.target +