summaryrefslogtreecommitdiff
path: root/packaging
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2011-01-02 01:48:38 +0200
committerAndrei Karas <akaras@inbox.ru>2011-01-02 02:41:24 +0200
commit3eeae12c498d1a4dbe969462d2ba841f77ee3ccb (patch)
treeff8eab35e732bc0749fc11677c8873a7b3a58704 /packaging
downloadplus-3eeae12c498d1a4dbe969462d2ba841f77ee3ccb.tar.gz
plus-3eeae12c498d1a4dbe969462d2ba841f77ee3ccb.tar.bz2
plus-3eeae12c498d1a4dbe969462d2ba841f77ee3ccb.tar.xz
plus-3eeae12c498d1a4dbe969462d2ba841f77ee3ccb.zip
Initial commit.
This code based on mana client http://www.gitorious.org/mana/mana and my private repository.
Diffstat (limited to 'packaging')
-rw-r--r--packaging/debian/changelog77
-rw-r--r--packaging/debian/compat1
-rw-r--r--packaging/debian/control27
-rw-r--r--packaging/debian/copyright49
-rw-r--r--packaging/debian/mana-data.install5
-rw-r--r--packaging/debian/mana.desktop16
-rw-r--r--packaging/debian/mana.docs6
-rw-r--r--packaging/debian/mana.install5
-rw-r--r--packaging/debian/mana.sgml149
-rw-r--r--packaging/debian/patches/00list0
-rw-r--r--packaging/debian/rules69
-rw-r--r--packaging/debian/watch2
-rwxr-xr-xpackaging/windows/make-translations.sh6
-rw-r--r--packaging/windows/make-translations.vbs42
-rw-r--r--packaging/windows/portable.xml6
-rw-r--r--packaging/windows/readme.txt6
-rw-r--r--packaging/windows/setup.nsi336
-rw-r--r--packaging/windows/setup_finish.bmpbin0 -> 206243 bytes
-rw-r--r--packaging/windows/setup_welcome.bmpbin0 -> 206243 bytes
19 files changed, 802 insertions, 0 deletions
diff --git a/packaging/debian/changelog b/packaging/debian/changelog
new file mode 100644
index 000000000..bc5b75799
--- /dev/null
+++ b/packaging/debian/changelog
@@ -0,0 +1,77 @@
+tmw (0.0.24-1) unstable; urgency=low
+
+ * New upstream release.
+ * Wrapped configure script options line to a more human readable
+ format.
+ * Bumped Standards-Version to 3.7.3.
+ * Changed description in debian/tmw.menu, it is now called as an
+ adventure instead of an arcade game.
+ * Removed the ugly hyphen in the description of debian/tmw.desktop.
+ * Removed debian/tmw.6 manpage, because it is in upstream now.
+ * Removed 01-set-gl-texture-zero and 02-guichan_0.7 patches,
+ because they are fixed in the current upstream release.
+ * Removed now useless calls of dh_link and dh_installman in
+ debian/rules.
+ * Removed debian/tmw-data.docs, because the NEWS and AUTHORS file
+ is already in the tmw package.
+ * Removed deprecated encoding flag from debian/tmw.desktop.
+ * Added debian/watch file.
+ * Added homepage field to debian/control and removed the one from
+ the long descriptions.
+ * Added a break to the long description of tmw-data. It looks now
+ realy better.
+ * Added the tmw-dbg package, which provides the debugging symbols.
+
+ -- Patrick Matthäi <patrick.matthaei@web.de> Mon, 24 Dec 2007 17:10:00 +0100
+
+tmw (0.0.23-3) unstable; urgency=low
+
+ * Added missing files data/graphics/images/ambient/*.png to
+ release.
+ Closes: #439861
+ * Added guichan_0.7 patch to build tmw against guichan 0.7.1.
+ * debian/control: Changed guichan version to libguichan2 and
+ changed build dependencie from libcurl3-dev to libcurl4-gnutls-dev.
+ * debian/tmw.menu: Corrected menu entry categorie to Games/Adventure.
+ Thanks lintian.
+ * Fixed clean rule. Thanks lintian.
+
+ -- Patrick Matthäi <patrick.matthaei@web.de> Thu, 6 Sep 2007 18:36:00 +0100
+
+tmw (0.0.23-2) unstable; urgency=low
+
+ * Added set-gl-texture-zero patch to set GL texture index
+ to zero when an image uses the SDL backend.
+ Closes: #427915
+ * debian/control: Removed dependencie of tmw-data to tmw.
+ Closes: #427920
+ * debian/control: Set tmw as recommends to tmw-data.
+ * debian/control: Added dpatch to the build dependencies.
+ * debian/control: Changed guichan version to libguichan1.
+ Closes: #435065
+ * debian/tmw.docs: Added upstream ChangeLog to package.
+ * debian/rules: Removed now unneeded '--with-opengl'
+ configure flag.
+
+ -- Patrick Matthäi <patrick.matthaei@web.de> Wed, 20 Jun 2007 08:55:12 +0100
+
+tmw (0.0.23-1) unstable; urgency=low
+
+ * Uploaded tmw to unstable.
+ Closes: #418725, #423275
+ * New upstream release.
+ * debian/rules: No longer needed the tmw-icon rename
+ hack. Upstream renamed the icon files.
+ * debian/tmw.xpm: Added xpm icon file, because upstream
+ has forgotten it in the newest release.
+
+ -- Patrick Matthäi <patrick.matthaei@web.de> Mon, 5 Jun 2007 21:05:36 +0100
+
+tmw (0.0.22.2-1) experimental; urgency=low
+
+ * Initial release.
+ * Uploading to experimental because we need libguichan0-dev (>= 0.6.1).
+ * src/main.cpp:
+ Moved tmw-icon.png to /usr/share/icons/tmw.png.
+
+ -- Patrick Matthäi <patrick.matthaei@web.de> Tue, 6 Mar 2007 09:08:21 +0100
diff --git a/packaging/debian/compat b/packaging/debian/compat
new file mode 100644
index 000000000..7ed6ff82d
--- /dev/null
+++ b/packaging/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/packaging/debian/control b/packaging/debian/control
new file mode 100644
index 000000000..a5696ca5d
--- /dev/null
+++ b/packaging/debian/control
@@ -0,0 +1,27 @@
+Source: mana
+Section: games
+Priority: optional
+Homepage: http://manasource.org/
+Maintainer: Patrick Matthäi <patrick.matthaei@web.de>
+Build-Depends: debhelper (>= 5), dpkg-dev (>= 1.13.19), dpatch, autotools-dev, libcurl4-gnutls-dev, libgl1-mesa-dev, libguichan2-dev (>= 0.7.1), libsdl1.2-dev, libsdl-image1.2-dev, libsdl-net1.2-dev, libsdl-mixer1.2-dev, libphysfs-dev, libpng12-dev, libxml2-dev, zlib1g-dev
+Standards-Version: 3.7.3
+
+Package: mana
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, mana-data (= ${source:Version})
+Description: Mana is a 2D MMORPG client
+
+Package: mana-dbg
+Architecture: any
+Priority: extra
+Depends: mana (= ${binary:Version})
+Description: Mana is a 2D MMORPG client (debugging symbols)
+ .
+ This package provides debugging symbols for the mana package.
+
+Package: mana-data
+Architecture: all
+Recommends: mana
+Description: Mana is a 2D MMORPG client
+ .
+ This package contains the data files.
diff --git a/packaging/debian/copyright b/packaging/debian/copyright
new file mode 100644
index 000000000..a6a2b687a
--- /dev/null
+++ b/packaging/debian/copyright
@@ -0,0 +1,49 @@
+This package was debianized by Patrick Matthäi <patrick.matthaei@web.de> on
+Wed, 6 Feb 2007 09:16:23 +0100.
+
+It was downloaded from <http://www.themanaworld.org/>.
+
+Upstream Author: Eugenio Favalli <elvenprogrammer@gmail.com>
+
+License (src/utils/base64.h, src/utils/base64.cpp):
+
+ Copyright (C) 1997-1998 PHP Development Team
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of one of the following licenses:
+
+ A) 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.
+
+ B) the PHP License as published by the PHP Development Team and
+ included in the distribution in the file: LICENSE
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+On Debian systems, the complete text of the GNU General Public License
+can be found in /usr/share/common-licenses/GPL file.
+
+License (everything else):
+
+ Copyright (C) 2004-2007 The The Mana World Development Team
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+On Debian systems, the complete text of the GNU General Public License
+can be found in /usr/share/common-licenses/GPL file.
diff --git a/packaging/debian/mana-data.install b/packaging/debian/mana-data.install
new file mode 100644
index 000000000..82a37bb34
--- /dev/null
+++ b/packaging/debian/mana-data.install
@@ -0,0 +1,5 @@
+data/graphics/gui/*.png usr/share/games/mana/data/graphics/gui
+data/graphics/images/*.png usr/share/games/mana/data/graphics/images
+data/graphics/images/ambient/*.png usr/share/games/mana/data/graphics/images/ambient
+data/graphics/tiles/*.png usr/share/games/mana/data/graphics/tiles
+data/help/*.txt usr/share/games/mana/data/help
diff --git a/packaging/debian/mana.desktop b/packaging/debian/mana.desktop
new file mode 100644
index 000000000..ec24a2fc6
--- /dev/null
+++ b/packaging/debian/mana.desktop
@@ -0,0 +1,16 @@
+
+[Desktop Entry]
+Version=1.0
+Name=Mana
+Comment=A 2D MMORPG client
+Comment[fr]=Un jeu en ligne dans un univers fantastique
+Comment[de]=ein Online Fantasy Spiel
+Comment[it]=Un gioco fantasy online
+Comment[nl]=Een online role playing game
+Comment[sv]=Ett fantasyrollspel online
+Exec=mana
+StartupNotify=false
+Terminal=false
+Type=Game
+Icon=mana.png
+Categories=Game
diff --git a/packaging/debian/mana.docs b/packaging/debian/mana.docs
new file mode 100644
index 000000000..d622a5279
--- /dev/null
+++ b/packaging/debian/mana.docs
@@ -0,0 +1,6 @@
+AUTHORS
+NEWS
+README
+ChangeLog
+docs/progression.txt
+docs/FAQ.txt
diff --git a/packaging/debian/mana.install b/packaging/debian/mana.install
new file mode 100644
index 000000000..da45ec4a9
--- /dev/null
+++ b/packaging/debian/mana.install
@@ -0,0 +1,5 @@
+debian/manaplus.desktop usr/share/applications
+debian/manaplus.xpm usr/share/pixmaps
+data/icons/manaplus.png usr/share/icons
+docs/manaplus.6 usr/share/man/man6
+src/manaplus usr/games
diff --git a/packaging/debian/mana.sgml b/packaging/debian/mana.sgml
new file mode 100644
index 000000000..257c948d6
--- /dev/null
+++ b/packaging/debian/mana.sgml
@@ -0,0 +1,149 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+
+<!-- Process this file with docbook-to-man to generate an nroff manual
+ page: `docbook-to-man manpage.sgml > manpage.1'. You may view
+ the manual page with: `docbook-to-man manpage.sgml | nroff -man |
+ less'. A typical entry in a Makefile or Makefile.am is:
+
+manpage.1: manpage.sgml
+ docbook-to-man $< > $@
+
+
+ The docbook-to-man binary is found in the docbook-to-man package.
+ Please remember that if you create the nroff version in one of the
+ debian/rules file targets (such as build), you will need to include
+ docbook-to-man in your Build-Depends control field.
+
+ -->
+
+ <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+ <!ENTITY dhfirstname "<firstname>FERREIRA</firstname>">
+ <!ENTITY dhsurname "<surname>Yohann</surname>">
+ <!-- Please adjust the date whenever revising the manpage. -->
+ <!ENTITY dhdate "<date>avril 13, 2005</date>">
+ <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+ allowed: see man(7), man(1). -->
+ <!ENTITY dhsection "<manvolnum>6</manvolnum>">
+ <!ENTITY dhemail "<email>bertram@cegetel.net</email>">
+ <!ENTITY dhusername "FERREIRA Yohann">
+ <!ENTITY dhucpackage "<refentrytitle>Mana</refentrytitle>">
+ <!ENTITY dhpackage "mana">
+
+ <!ENTITY debian "<productname>Debian</productname>">
+ <!ENTITY gnu "<acronym>GNU</acronym>">
+ <!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
+]>
+
+<refentry>
+ <refentryinfo>
+ <address>
+ &dhemail;
+ </address>
+ <author>
+ &dhfirstname;
+ &dhsurname;
+ </author>
+ <copyright>
+ <year>2003</year>
+ <holder>&dhusername;</holder>
+ </copyright>
+ &dhdate;
+ </refentryinfo>
+ <refmeta>
+ &dhucpackage;
+
+ &dhsection;
+ </refmeta>
+ <refnamediv>
+ <refname>&dhpackage;</refname>
+
+ <refpurpose>Mana is the abreviation of The Mana World : A Fantasy Online Game</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>&dhpackage;</command>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+ <refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>This manual page documents briefly the
+ <command>&dhpackage;</command> ingame
+ commands.</para>
+ <para><command>&dhpackage;</command> is a Great Online Game based upon the Seiken Densetsu Serie.
+It has its own universe, and and its own character management system, which will
+give you the opportunity to play in a 2D heroic-fantasy world forever.</para>
+
+ </refsect1>
+ <refsect1>
+ <title>COMMON KEYS</title>
+
+ <para>Arrow Keys, Key Pad Keys (Diagonals Supported).
+Move your character around.
+
+Left Ctrl :
+Make your character attack.
+
+G :
+Get Items on the ground or in a chest.
+
+Alt + 1...9 :
+Shows an Emoticon above your character.
+
+Alt + I :
+Shows / Hide Inventory Window.
+
+Alt + K :
+Shows / Hide Skills Window.
+
+Alt + E :
+Shows / Hide Equipment Window.
+
+Alt + C :
+Shows Configuration Window.
+</para>
+
+ </refsect1>
+ <refsect1>
+ <title>SEE ALSO</title>
+
+ <para>libguichan (2).</para>
+
+ <para>The program is documented fully by <citetitle>The Mana World Team</citetitle> available via the
+ website http://www.manaworld.org/</para>
+ </refsect1>
+ <refsect1>
+ <title>AUTHOR</title>
+
+ <para>This manual page was written by &dhusername; &dhemail; for
+ the &debian; system (but may be used by others). Permission is
+ granted to copy, distribute and/or modify this document under
+ the terms of the &gnu; General Public License, Version 2 any
+ later version published by the Free Software Foundation.
+ </para>
+ <para>
+ On Debian systems, the complete text of the GNU General Public
+ License can be found in /usr/share/common-licenses/GPL.
+ </para>
+
+ </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
+
+
diff --git a/packaging/debian/patches/00list b/packaging/debian/patches/00list
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/packaging/debian/patches/00list
diff --git a/packaging/debian/rules b/packaging/debian/rules
new file mode 100644
index 000000000..df2e08d6f
--- /dev/null
+++ b/packaging/debian/rules
@@ -0,0 +1,69 @@
+#!/usr/bin/make -f
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+include /usr/share/dpatch/dpatch.make
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+config.status: patch
+ dh_testdir
+ CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) \
+ --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr \
+ --datadir=/usr/share/games --bindir=/usr/games --mandir=/usr/share/man
+
+build: build-stamp
+build-stamp: config.status
+ dh_testdir
+ $(MAKE)
+ touch build-stamp
+
+clean: unpatch
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp
+ [ ! -f Makefile ] || $(MAKE) distclean
+ dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+binary-indep: build install
+ dh_testdir -i
+ dh_testroot -i
+ dh_installchangelogs -i ChangeLog
+ dh_installdocs -i
+ dh_install -i
+ dh_compress -i
+ dh_fixperms -i
+ dh_installdeb -i
+ dh_gencontrol -i
+ dh_md5sums -i
+ dh_builddeb -i
+
+binary-arch: build install
+ dh_testdir -a
+ dh_testroot -a
+ dh_installchangelogs -a ChangeLog
+ dh_installdocs -a
+ dh_install -a
+ dh_desktop -a
+ dh_installmenu -a
+ dh_strip -a --dbg-package=mana-dbg
+ dh_compress -a
+ dh_fixperms -a
+ dh_installdeb -a
+ dh_shlibdeps -a
+ dh_gencontrol -a
+ dh_md5sums -a
+ dh_builddeb -a
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/packaging/debian/watch b/packaging/debian/watch
new file mode 100644
index 000000000..01aa13f7e
--- /dev/null
+++ b/packaging/debian/watch
@@ -0,0 +1,2 @@
+version=3
+http://sf.net/themanaworld/tmw-(.*)\.tar\.gz
diff --git a/packaging/windows/make-translations.sh b/packaging/windows/make-translations.sh
new file mode 100755
index 000000000..1d4132397
--- /dev/null
+++ b/packaging/windows/make-translations.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+for i in `grep -v ^# ../../po/LINGUAS`; do
+ mkdir -p ../../translations/$i/LC_MESSAGES
+ msgfmt -c -o ../../translations/$i/LC_MESSAGES/manaplus.mo ../../po/$i.po
+done
diff --git a/packaging/windows/make-translations.vbs b/packaging/windows/make-translations.vbs
new file mode 100644
index 000000000..339a0299e
--- /dev/null
+++ b/packaging/windows/make-translations.vbs
@@ -0,0 +1,42 @@
+Set fso = CreateObject("Scripting.FileSystemObject")
+Set WshShell = CreateObject("WScript.Shell")
+Dim s, infile, outfile, command
+
+Function CreateFolderIfNonexistent(folder)
+ if not fso.FolderExists(folder) then
+ fso.CreateFolder(folder)
+ end if
+end Function
+
+'check for existence of msgfmt
+if not fso.FileExists("msgfmt.exe") then
+ WScript.echo "msgfmt.exe not found. Please get gettext for windows from http://gnuwin32.sourceforge.net/packages/gettext.htm and copy the files msgfmt.exe and all dll files from the gettext/bin directory into this directory and run this script again."
+ WScript.Quit(1)
+end if
+
+CreateFolderIfNonexistent("..\..\translations\")
+
+'open translation list
+Set stream = fso.GetFile("..\..\po\LINGUAS").OpenAsTextStream(1, 0)
+
+'iterate contents of translations file
+translations = 0
+do while not stream.AtEndOfStream
+ s = stream.ReadLine()
+ if inStr(s, "#") = false then
+ 'create the output directory
+ CreateFolderIfNonexistent("..\..\translations\" + s)
+ CreateFolderIfNonexistent("..\..\translations\" + s + "\LC_MESSAGES")
+ 'build the translate command
+ infile = "../../po/" + s + ".po"
+ outfile = "../../translations/" + s +"/LC_MESSAGES/mana.mo"
+ command = "msgfmt -c -o " + outfile + " " + infile
+ 'execute translate command
+ errval = WshShell.run(command, 0, true)
+ if errval = 0 then
+ translations = translations + 1
+ end if
+ end if
+loop
+
+WScript.echo translations, " translations compiled."
diff --git a/packaging/windows/portable.xml b/packaging/windows/portable.xml
new file mode 100644
index 000000000..0059d1094
--- /dev/null
+++ b/packaging/windows/portable.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<configuration>
+ <option name="dataDir" value="logs"/>
+ <option name="configDir" value="configs"/>
+ <option name="screenshotDir" value="screenshots"/>
+</configuration>
diff --git a/packaging/windows/readme.txt b/packaging/windows/readme.txt
new file mode 100644
index 000000000..4a10fef49
--- /dev/null
+++ b/packaging/windows/readme.txt
@@ -0,0 +1,6 @@
+HOW TO BUILD THE INSTALLER
+
+See the following wiki page, which also deals with the steps needed to produce
+the Windows installer:
+
+ http://wiki.themanaworld.org/index.php/Making_a_new_release
diff --git a/packaging/windows/setup.nsi b/packaging/windows/setup.nsi
new file mode 100644
index 000000000..f4cecdf22
--- /dev/null
+++ b/packaging/windows/setup.nsi
@@ -0,0 +1,336 @@
+; This script allows the following parameters being overwritten from
+; command line. When called without any parameters it behaves exactly
+; like the old install script.
+;
+; DLLDIR - directory containing required dlls
+; EXEDIR - directory containing manaplus.exe
+; EXESUFFIX - offset to SRCDIR pointing to a directory containing manaplus.exe
+; PRODUCT_VERSION - software version
+; UPX - upx binary name
+;
+; For a cmake build on UNIX the following should give you a working installer:
+; makensis -DDLLDIR=/path/to/dlls \
+; -DPRODUCT_VERSION=0.1.`date +%Y%m%d`
+; -DUPX=upx
+; -DEXESUFFIX=/src
+
+CRCCheck on
+SetCompress off
+SetCompressor /SOLID lzma
+
+!define SRCDIR "..\.."
+!ifndef UPX
+ !define "UPX upx\upx.exe"
+!endif
+
+!ifdef EXESUFFIX
+ !define EXEDIR ${SRCDIR}/${EXESUFFIX}
+!endif
+
+!ifndef EXEDIR
+ !define EXEDIR ${SRCDIR}
+!endif
+
+!ifndef DLLDIR
+ !define DLLDIR ${SRCDIR}/dll
+!endif
+
+;--- (and without !defines ) ---
+!System "${UPX} --best --crp-ms=999999 --compress-icons=0 --nrv2d ${EXEDIR}\manaplus.exe"
+
+; HM NIS Edit helper defines
+!define PRODUCT_NAME "ManaPlus"
+!ifndef PRODUCT_VERSION
+ !define PRODUCT_VERSION "0.0.29.1"
+!endif
+!define PRODUCT_PUBLISHER "Mana Development Team"
+!define PRODUCT_WEB_SITE "http://manasource.org"
+!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\manaplus.exe"
+!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
+!define PRODUCT_UNINST_ROOT_KEY "HKLM"
+
+; MUI 1.67 compatible ------
+!include "MUI.nsh"
+
+; MUI Settings
+!define MUI_ABORTWARNING
+;!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\win-install.ico"
+!define MUI_ICON "${SRCDIR}\data\icons\manaplus.ico"
+;!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\win-uninstall.ico"
+!define MUI_UNICON "${SRCDIR}\data\icons\manaplus.ico"
+
+;Language Selection Dialog Settings
+;Remember the installer language
+!define MUI_LANGDLL_REGISTRY_ROOT "HKCU"
+!define MUI_LANGDLL_REGISTRY_KEY "Software\Mana"
+!define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
+
+!define MUI_WELCOMEFINISHPAGE_BITMAP "setup_welcome.bmp"
+!define MUI_UNWELCOMEFINISHPAGE_BITMAP "setup_welcome.bmp"
+
+; Welcome page
+
+!define MUI_WELCOMEPAGE_TITLE_3LINES
+!insertmacro MUI_PAGE_WELCOME
+; License page
+!insertmacro MUI_PAGE_LICENSE "${SRCDIR}\COPYING"
+; Directory page
+!insertmacro MUI_PAGE_DIRECTORY
+; Components page
+!insertmacro MUI_PAGE_COMPONENTS
+; Instfiles page
+!insertmacro MUI_PAGE_INSTFILES
+; Finish page
+!define MUI_FINISHPAGE_RUN
+!define MUI_FINISHPAGE_RUN_FUNCTION RunMana
+!define MUI_FINISHPAGE_SHOWREADME 'notepad.exe "$\"$INSTDIR\README$\""'
+!define MUI_PAGE_CUSTOMFUNCTION_PRE changeFinishImage
+!define MUI_FINISHPAGE_LINK "Visit Mana website for the latest news, FAQs and support"
+!define MUI_FINISHPAGE_LINK_LOCATION "http://themanaworld.org"
+!insertmacro MUI_PAGE_FINISH
+
+Function RunMana
+SetOutPath $INSTDIR
+Exec "$INSTDIR\manaplus.exe"
+FunctionEnd
+
+Function changeFinishImage
+!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 1" "Text" "$PLUGINSDIR\setup_finish.bmp"
+FunctionEnd
+
+; Uninstaller pages
+
+!insertmacro MUI_UNPAGE_CONFIRM
+!insertmacro MUI_UNPAGE_INSTFILES
+!define MUI_FINISHPAGE_TITLE_3LINES
+!insertmacro MUI_UNPAGE_FINISH
+
+;Languages
+!insertmacro MUI_LANGUAGE "English" # first language is the default language
+!insertmacro MUI_LANGUAGE "French"
+!insertmacro MUI_LANGUAGE "German"
+!insertmacro MUI_LANGUAGE "Spanish"
+!insertmacro MUI_LANGUAGE "SimpChinese"
+!insertmacro MUI_LANGUAGE "TradChinese"
+!insertmacro MUI_LANGUAGE "Japanese"
+!insertmacro MUI_LANGUAGE "Korean"
+!insertmacro MUI_LANGUAGE "Italian"
+!insertmacro MUI_LANGUAGE "Dutch"
+!insertmacro MUI_LANGUAGE "Danish"
+!insertmacro MUI_LANGUAGE "Swedish"
+!insertmacro MUI_LANGUAGE "Norwegian"
+!insertmacro MUI_LANGUAGE "Finnish"
+!insertmacro MUI_LANGUAGE "Greek"
+!insertmacro MUI_LANGUAGE "Russian"
+!insertmacro MUI_LANGUAGE "Portuguese"
+!insertmacro MUI_LANGUAGE "PortugueseBR"
+!insertmacro MUI_LANGUAGE "Polish"
+!insertmacro MUI_LANGUAGE "Ukrainian"
+!insertmacro MUI_LANGUAGE "Czech"
+!insertmacro MUI_LANGUAGE "Slovak"
+!insertmacro MUI_LANGUAGE "Croatian"
+!insertmacro MUI_LANGUAGE "Bulgarian"
+!insertmacro MUI_LANGUAGE "Hungarian"
+!insertmacro MUI_LANGUAGE "Thai"
+!insertmacro MUI_LANGUAGE "Romanian"
+!insertmacro MUI_LANGUAGE "Latvian"
+!insertmacro MUI_LANGUAGE "Macedonian"
+!insertmacro MUI_LANGUAGE "Estonian"
+!insertmacro MUI_LANGUAGE "Turkish"
+!insertmacro MUI_LANGUAGE "Lithuanian"
+!insertmacro MUI_LANGUAGE "Catalan"
+!insertmacro MUI_LANGUAGE "Slovenian"
+!insertmacro MUI_LANGUAGE "Serbian"
+!insertmacro MUI_LANGUAGE "SerbianLatin"
+!insertmacro MUI_LANGUAGE "Arabic"
+!insertmacro MUI_LANGUAGE "Farsi"
+!insertmacro MUI_LANGUAGE "Hebrew"
+!insertmacro MUI_LANGUAGE "Indonesian"
+!insertmacro MUI_LANGUAGE "Mongolian"
+!insertmacro MUI_LANGUAGE "Luxembourgish"
+!insertmacro MUI_LANGUAGE "Albanian"
+!insertmacro MUI_LANGUAGE "Breton"
+!insertmacro MUI_LANGUAGE "Belarusian"
+!insertmacro MUI_LANGUAGE "Icelandic"
+!insertmacro MUI_LANGUAGE "Malay"
+!insertmacro MUI_LANGUAGE "Bosnian"
+!insertmacro MUI_LANGUAGE "Kurdish"
+
+!insertmacro MUI_RESERVEFILE_LANGDLL
+
+ReserveFile "setup_finish.bmp"
+
+; MUI end ------
+
+Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
+OutFile "manaplus-${PRODUCT_VERSION}-win32.exe"
+InstallDir "$PROGRAMFILES\Mana"
+InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
+ShowInstDetails show
+ShowUnInstDetails show
+
+Function .onInit
+ !insertmacro MUI_LANGDLL_DISPLAY
+ InitPluginsDir
+ File /oname=$PLUGINSDIR\setup_finish.bmp "setup_finish.bmp"
+FunctionEnd
+
+Section "Core files (required)" SecCore
+ SectionIn RO
+ SetOutPath "$INSTDIR"
+ SetOverwrite ifnewer
+ CreateDirectory "$INSTDIR\data"
+ CreateDirectory "$INSTDIR\data\fonts"
+ CreateDirectory "$INSTDIR\data\graphics"
+ CreateDirectory "$INSTDIR\data\help"
+ CreateDirectory "$INSTDIR\data\icons"
+ CreateDirectory "$INSTDIR\data\graphics\gui"
+ CreateDirectory "$INSTDIR\data\graphics\images"
+ CreateDirectory "$INSTDIR\data\graphics\sprites"
+ CreateDirectory "$INSTDIR\data\sfx"
+ CreateDirectory "$INSTDIR\data\sfx\system"
+ CreateDirectory "$INSTDIR\data\themes"
+ CreateDirectory "$INSTDIR\data\themes\blackwood"
+ CreateDirectory "$INSTDIR\data\themes\classic"
+ CreateDirectory "$INSTDIR\data\themes\enchilado"
+ CreateDirectory "$INSTDIR\data\themes\redandblack"
+ CreateDirectory "$INSTDIR\data\themes\wood"
+ CreateDirectory "$INSTDIR\docs"
+
+ SetOverwrite ifnewer
+ SetOutPath "$INSTDIR"
+
+ File "${EXEDIR}\manaplus.exe"
+ File "${DLLDIR}\*.dll"
+ File "${SRCDIR}\AUTHORS"
+ File "${SRCDIR}\COPYING"
+ File "${SRCDIR}\NEWS"
+ File "${SRCDIR}\README.txt"
+ SetOutPath "$INSTDIR\data\fonts"
+ File "${SRCDIR}\data\fonts\*.ttf"
+ SetOutPath "$INSTDIR\data\graphics"
+ File "${SRCDIR}\data\graphics\*.png"
+ SetOutPath "$INSTDIR\data\graphics\gui"
+ File "${SRCDIR}\data\graphics\gui\*.png"
+ File "${SRCDIR}\data\graphics\gui\*.xml"
+ SetOutPath "$INSTDIR\data\graphics\images"
+ File /x minimap_*.png ${SRCDIR}\data\graphics\images\*.png
+ File "${SRCDIR}\data\graphics\images\error.png"
+ SetOutPath "$INSTDIR\data\graphics\sprites"
+ File "${SRCDIR}\data\graphics\sprites\*.gif"
+ File "${SRCDIR}\data\graphics\sprites\*.png"
+ File "${SRCDIR}\data\graphics\sprites\*.xml"
+ SetOutPath "$INSTDIR\data\sfx\system"
+ File "${SRCDIR}\data\sfx\system\*.ogg"
+ SetOutPath "$INSTDIR\data\themes\blackwood"
+ File "${SRCDIR}\data\themes\blackwood\*.png"
+ File "${SRCDIR}\data\themes\blackwood\*.xml"
+ SetOutPath "$INSTDIR\data\themes\classic"
+ File "${SRCDIR}\data\themes\classic\*.png"
+ File "${SRCDIR}\data\themes\classic\*.xml"
+ SetOutPath "$INSTDIR\data\themes\enchilado"
+ File "${SRCDIR}\data\themes\enchilado\*.png"
+ File "${SRCDIR}\data\themes\enchilado\*.xml"
+ SetOutPath "$INSTDIR\data\themes\redandblack"
+ File "${SRCDIR}\data\themes\redandblack\*.png"
+ File "${SRCDIR}\data\themes\redandblack\*.xml"
+ SetOutPath "$INSTDIR\data\themes\wood"
+ File "${SRCDIR}\data\themes\wood\*.png"
+ File "${SRCDIR}\data\themes\wood\*.xml"
+ SetOutPath "$INSTDIR\data\help"
+ File "${SRCDIR}\data\help\*.txt"
+ SetOutPath "$INSTDIR\data\icons\"
+ File "${SRCDIR}\data\icons\manaplus.ico"
+ SetOutPath "$INSTDIR\docs"
+ File "${SRCDIR}\docs\FAQ.txt"
+SectionEnd
+
+Section "Create Shortcuts" SecShortcuts
+ SetOutPath "$INSTDIR"
+ SetOverwrite ifnewer
+ CreateDirectory "$SMPROGRAMS\Mana"
+ CreateShortCut "$SMPROGRAMS\Mana\ManaPlus.lnk" "$INSTDIR\manaplus.exe"
+ CreateShortCut "$SMPROGRAMS\Mana\ManaPlus (no opengl).lnk" "$INSTDIR\manaplus.exe" --no-opengl
+ CreateShortCut "$SMPROGRAMS\Mana\ManaPlus (safemode).lnk" "$INSTDIR\manaplus.exe" --safemode
+ CreateShortCut "$DESKTOP\ManaPlus.lnk" "$INSTDIR\manaplus.exe"
+SectionEnd
+
+Section /o "Music" SecMusic
+ AddSize 17602
+ CreateDirectory "$INSTDIR\data\music"
+ SetOutPath "$INSTDIR\data\music"
+ NSISdl::download "http://downloads.sourceforge.net/themanaworld/tmwmusic-0.2.tar.gz" "$TEMP\tmwmusic-0.2.tar.gz"
+ ;Requires an additional plugin from http://nsis.sourceforge.net/UnTGZ_plug-in Place untgz.dll in your nsis/plugin dir
+ untgz::extract -j -d "$INSTDIR\data\music" "$TEMP\tmwmusic-0.2.tar.gz"
+ Delete "$TEMP\tmwmusic-0.2.tar.gz"
+SectionEnd
+
+Section /o "Portable" SecPortable
+ SetOutPath "$INSTDIR"
+ File "portable.xml"
+SectionEnd
+
+Section "Translations" SecTrans
+ SetOutPath "$INSTDIR"
+ File /nonfatal /r "${SRCDIR}\translations"
+SectionEnd
+
+;Package descriptions
+!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecCore} "The core program files."
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecShortcuts} "Create game shortcuts."
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecMusic} "Background music. (If selected the music will be downloaded from the internet.)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecPortable} "Portable client. (If selected client will work as portable client.)"
+ !insertmacro MUI_DESCRIPTION_TEXT ${SecTrans} "Translations for the user interface into 23 different languages. Uncheck this component to leave it in English."
+!insertmacro MUI_FUNCTION_DESCRIPTION_END
+
+
+
+Section -AdditionalIcons
+ WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}"
+ CreateShortCut "$SMPROGRAMS\Mana\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url"
+ CreateShortCut "$SMPROGRAMS\Mana\Readme.lnk" "notepad.exe" "$INSTDIR\README.txt"
+ CreateShortCut "$SMPROGRAMS\Mana\FAQ.lnk" "$INSTDIR\docs\FAQ.txt"
+ CreateShortCut "$SMPROGRAMS\Mana\Uninstall.lnk" "$INSTDIR\uninst.exe"
+SectionEnd
+
+Section -Post
+ WriteUninstaller "$INSTDIR\uninst.exe"
+ WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\manaplus.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\manaplus.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
+SectionEnd
+
+Function un.onInit
+ !insertmacro MUI_UNGETLANGUAGE
+FunctionEnd
+
+Section Uninstall
+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Mana"
+
+ Delete "$INSTDIR\*.*"
+
+ Delete "$SMPROGRAMS\Mana\Uninstall.lnk"
+ Delete "$DESKTOP\ManaPlus.lnk"
+ Delete "$SMPROGRAMS\Mana\ManaPlus.lnk"
+ Delete "$SMPROGRAMS\Mana\ManaPlus (no opengl).lnk"
+ Delete "$SMPROGRAMS\Mana\Website.lnk"
+ Delete "$SMPROGRAMS\Mana\Readme.lnk"
+ Delete "$SMPROGRAMS\Mana\FAQ.lnk"
+
+ RMDir "$SMPROGRAMS\Mana"
+
+ RMDir /r "$INSTDIR\data"
+ RMDir /r "$INSTDIR\docs"
+ RMDir /r "$INSTDIR\translations"
+ RMDir /r "$INSTDIR\updates"
+ RMDir "$INSTDIR"
+
+ DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
+ DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
+ SetAutoClose true
+SectionEnd
diff --git a/packaging/windows/setup_finish.bmp b/packaging/windows/setup_finish.bmp
new file mode 100644
index 000000000..c23770b9f
--- /dev/null
+++ b/packaging/windows/setup_finish.bmp
Binary files differ
diff --git a/packaging/windows/setup_welcome.bmp b/packaging/windows/setup_welcome.bmp
new file mode 100644
index 000000000..c23770b9f
--- /dev/null
+++ b/packaging/windows/setup_welcome.bmp
Binary files differ