summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSeverin Glöckner2021-10-24 03:31:41 +0200
committerSeverin Glöckner2021-10-24 03:33:03 +0200
commit9679f1d6a7a6cba7864baebe4d91e117b6c84962 (patch)
tree8985bc69c8248f3a42098e04493ebedb651cdf89
parent1774233dbe477b2c9f861e6db1cc398372d5bd06 (diff)
downloadaur-9679f1d6a7a6cba7864baebe4d91e117b6c84962.tar.gz
packaging & translation update
-rw-r--r--.SRCINFO8
-rw-r--r--PKGBUILD59
-rw-r--r--freedink.install27
3 files changed, 76 insertions, 18 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 065ccca00f5b..17a90187e175 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,8 +1,9 @@
pkgbase = freedink
pkgdesc = Humorous top-down adventure and role-playing game
pkgver = 109.6
- pkgrel = 1
+ pkgrel = 2
url = https://www.gnu.org/software/freedink
+ install = freedink.install
arch = i486
arch = i686
arch = pentium4
@@ -15,6 +16,7 @@ pkgbase = freedink
makedepends = rsync
makedepends = cxxtest
makedepends = glm
+ makedepends = intltool
depends = sdl2_image
depends = sdl2_mixer
depends = sdl2_ttf
@@ -26,11 +28,15 @@ pkgbase = freedink
source = https://ftp.gnu.org/gnu/freedink/freedink-109.6.tar.gz
source = https://sources.debian.org/data/main/f/freedink/109.6-3/debian/patches/sdl2-2.0.10.patch
source = sound.patch
+ source = backport.patch::https://git.savannah.gnu.org/cgit/freedink.git/patch/?id=ced987af0574b7fdb11a85ccdcb32f7a6748ef09
+ source = backport-translations.patch::https://git.savannah.gnu.org/cgit/freedink/freedink-data.git/patch/?id=c80d04ba1eb1b0e42525378f617972432968d872
source = https://ftp.gnu.org/gnu/freedink/freedink-data-1.08.20190120.tar.gz
source = https://ftp.gnu.org/gnu/freedink/dfarc-3.14.tar.gz
sha256sums = 5e0b35ac8f46d7bb87e656efd5f9c7c2ac1a6c519a908fc5b581e52657981002
sha256sums = 9e26cd4179fd4cb3dd5ea347e6a66f5f8b3a7a5fb574dd728592c0b52bdf5442
sha256sums = 59cdf6e96b5ee3e8d6a44750222590be6cb013c436682dfb223367c895540ba4
+ sha256sums = 0b5af8ea5d77372ef338aab4a876660bd418aee52b696ad73f7f92f3df88de70
+ sha256sums = 3a64a2a5bd1b1fa93b299ae3f354b5d1c88e40f597d119aa6e95d09f40e19bb8
sha256sums = 715f44773b05b73a9ec9b62b0e152f3f281be1a1512fbaaa386176da94cffb9d
sha256sums = a51124ecd11eeca0f1d16732ef58ee690e2fa2db06cc0ec2a5b61b41f8b0e8fa
diff --git a/PKGBUILD b/PKGBUILD
index 0675b73341e8..cdb3f3850510 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,16 +5,18 @@
# FreeDink consists of multiple parts:
# * The engine – this is an open source reimplementation of the game Dink Smallwood.
# * The editor – it is part of the enigne.
-# * The game data – telling the same story like the original game.
+# * The game data – telling the same story as the original game.
# If you have a copy of the original game, you can also use the original files instead.
-# * The modding tool DFArc – optional.
+# * The mod manager DFArc – optional, to use modifications, such as extra stories.
+
+# The mod manager DFArc can be started by right-clicking on the FreeDink application launcher.
pkgname=freedink
_engine=109.6
_data=1.08.20190120
_dfarc=3.14
pkgver=$_engine
-pkgrel=1
+pkgrel=2
pkgdesc='Humorous top-down adventure and role-playing game'
arch=('i486' 'i686' 'pentium4' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
url='https://www.gnu.org/software/freedink'
@@ -25,11 +27,13 @@ depends=('sdl2_image' 'sdl2_mixer' 'sdl2_ttf' 'sdl2_gfx' 'fontconfig' # For the
'soundfont-fluid' # Arbitrary choosen, but hardcoded, soundfont to play midi files.
#'timidity++'
)
-makedepends=('help2man' 'rsync' 'cxxtest' 'glm')
+makedepends=('help2man' 'rsync' 'cxxtest' 'glm' 'intltool')
+install=freedink.install
+
# For the game to play midi files, one needs to install either timidity++ or fluidsynth and a soundfont.
-# In case of timidity
+# In case of timidity:
# - install timidity++
# - install a soundfont
# - configure /etc/timidity/timidity.cfg
@@ -49,13 +53,17 @@ makedepends=('help2man' 'rsync' 'cxxtest' 'glm')
#
# Debian Buster uses timidity, but the configuration differs a lot.
# The way it's explained in the Arch wiki and example config works for
-# using timidity standalone, but not for freedink.
+# using timidity standalone, but not for using it with freedink.
-# To build the latest git version of the freedink engine, use this as source:
-# "git://git.sv.gnu.org/freedink"
+# To build the latest git version, use this as source:
+# https://git.savannah.gnu.org/git/freedink.git
+# https://git.savannah.gnu.org/git/freedink/freedink-data.git
+# https://git.savannah.gnu.org/git/freedink/dfarc.git
source=(https://ftp.gnu.org/gnu/freedink/freedink-${_engine}.tar.gz
https://sources.debian.org/data/main/f/freedink/109.6-3/debian/patches/sdl2-2.0.10.patch
sound.patch
+ backport.patch::https://git.savannah.gnu.org/cgit/freedink.git/patch/?id=ced987af0574b7fdb11a85ccdcb32f7a6748ef09
+ backport-translations.patch::https://git.savannah.gnu.org/cgit/freedink/freedink-data.git/patch/?id=c80d04ba1eb1b0e42525378f617972432968d872
https://ftp.gnu.org/gnu/freedink/freedink-data-${_data}.tar.gz
https://ftp.gnu.org/gnu/freedink/dfarc-${_dfarc}.tar.gz
)
@@ -63,20 +71,30 @@ source=(https://ftp.gnu.org/gnu/freedink/freedink-${_engine}.tar.gz
sha256sums=('5e0b35ac8f46d7bb87e656efd5f9c7c2ac1a6c519a908fc5b581e52657981002'
'9e26cd4179fd4cb3dd5ea347e6a66f5f8b3a7a5fb574dd728592c0b52bdf5442'
'59cdf6e96b5ee3e8d6a44750222590be6cb013c436682dfb223367c895540ba4'
+ '0b5af8ea5d77372ef338aab4a876660bd418aee52b696ad73f7f92f3df88de70'
+ '3a64a2a5bd1b1fa93b299ae3f354b5d1c88e40f597d119aa6e95d09f40e19bb8'
'715f44773b05b73a9ec9b62b0e152f3f281be1a1512fbaaa386176da94cffb9d'
'a51124ecd11eeca0f1d16732ef58ee690e2fa2db06cc0ec2a5b61b41f8b0e8fa')
prepare () {
cd "${srcdir}/freedink-${_engine}"
- # Fix an otherwise breaking check
+ # Fix an otherwise breaking check.
sed "s/AC_PREREQ(2.61)/AC_PREREQ(2.64)/" -i configure.ac
+ # Patches
patch -p1 < ../sdl2-2.0.10.patch
+ patch -p1 < ../backport.patch
+
+ # German & French translation update (backported from git).
+ patch --directory="${srcdir}/freedink-data-${_data}" -p1 < ../backport-translations.patch
# Hacking in here the sound changes.
patch -p0 < ../sound.patch
+ # Display correct version in main menu.
+ sed '/dversion_string = "v1.08 FreeDink";/ s/v1.08/v1.09/' -i src/game_engine.cpp
+
# Autodetect the freedink binary in the mod manager without needing symlinks.
# This changes the default configuration to look for a binary called freedink instead of dink.
sed '/^ mDinkExe/ s/"dink"/"freedink"/' -i "${srcdir}/dfarc-${_dfarc}/src/Config.cpp"
@@ -87,7 +105,7 @@ prepare () {
}
build () {
- # Build the FreeDinc game engine.
+ # Build the FreeDink game engine.
cd "${srcdir}/freedink-${_engine}"
./configure --prefix=/usr
@@ -95,7 +113,7 @@ build () {
# Sometimes linking errors occur when building in parallel. Allow only 1 job.
make -j1
- # Build the mod manager (optional).
+ # Build the mod manager (optional). With GTK3 instead of GTK2.
cd "${srcdir}/dfarc-${_dfarc}"
./configure --prefix=/usr --disable-desktopfiles --with-wx-config=/usr/bin/wx-config-gtk3
make
@@ -127,22 +145,29 @@ package () {
rm "${pkgdir}"/usr/share/icons/hicolor/32x32/mimetypes/application-x-dmod.png
# Get the images for the launcher.
- install -Dm644 "${srcdir}/freedink-${_engine}"/android/res/drawable-xxhdpi/ic_launcher.png \
- "${pkgdir}"/usr/share/icons/hicolor/256x256/apps/freedink.png
- install -Dm644 "${srcdir}/dfarc-${_dfarc}"/share/pixmaps/dfarc.png \
- "${pkgdir}"/usr/share/icons/hicolor/32x32/apps/freedink.png
+ install -Dm644 "${srcdir}"/freedink-${_engine}/android/res/drawable-xxhdpi/ic_launcher.png \
+ "${pkgdir}"/usr/share/icons/hicolor/256x256/apps/freedink.png
+ install -Dm644 "${srcdir}"/dfarc-${_dfarc}/share/pixmaps/dfarc.png \
+ "${pkgdir}"/usr/share/icons/hicolor/32x32/apps/freedink.png
- # Use symlinks for the mimetype's image.
+ # Use symlinks for the mimetype's image (instead of duplicated images).
mkdir -p "${pkgdir}"/usr/share/icons/hicolor/{32x32,256x256,scalable}/mimetypes/
ln -s ../apps/freedink.png "${pkgdir}"/usr/share/icons/hicolor/32x32/mimetypes/application-x-dmod.png
ln -s ../apps/freedink.png "${pkgdir}"/usr/share/icons/hicolor/256x256/mimetypes/application-x-dmod.png
ln -s ../apps/freedink.svg "${pkgdir}"/usr/share/icons/hicolor/scalable/mimetypes/application-x-dmod.svg
+ # The launcher associated to the mimetype uses this icon.
+ ln -s ../apps/freedink.png "${pkgdir}"/usr/share/icons/hicolor/32x32/apps/dfarc.png
+ ln -s ../apps/freedink.png "${pkgdir}"/usr/share/icons/hicolor/256x256/apps/dfarc.png
+ ln -s ../apps/freedink.svg "${pkgdir}"/usr/share/icons/hicolor/scalable/apps/dfarc.svg
+
# Packaging Files - as there is just one icon, show only one launcher for all.
rm "${pkgdir}"/usr/share/applications/freedinkedit.desktop
- # This desktop file is left only for the mimetype.
+
+ # This launcher is left only for the mimetype.
echo "NoDisplay=true" >> "${pkgdir}"/usr/share/applications/freedink-dfarc.desktop
sed 's/Exec=dfarc/Exec=freedink-dfarc/' -i "${pkgdir}"/usr/share/applications/freedink-dfarc.desktop
+
# The editor and mod manager can now be started by right-clicking.
cat >> "${pkgdir}"/usr/share/applications/freedink.desktop << EOF
Actions=Editor;DFArc;
diff --git a/freedink.install b/freedink.install
new file mode 100644
index 000000000000..a80772dbd65d
--- /dev/null
+++ b/freedink.install
@@ -0,0 +1,27 @@
+post_install() {
+ echo ""
+ echo "==> The important keys in FreeDink are:"
+ echo " spacebar -> talk"
+ echo " ctrl -> confirm / attack"
+ echo " enter -> open & close inventory"
+ echo ""
+ echo "Press and move the mouse to move in FreeDink, or use the arrow keys."
+ echo ""
+}
+
+post_upgrade() {
+ echo ""
+ echo "==> The keyboard buttons in FreeDink are:"
+ echo " spacebar -> talk"
+ echo " ctrl -> confirm / attack"
+ echo " shift -> magic attack"
+ echo " esc -> open menu"
+ echo " enter -> open & close inventory"
+ echo " m -> open & close map"
+ echo " tab" -> turbo mode (pressed)
+ echo ""
+ echo "To walk, press and move the mouse or use the arrow keys."
+ echo "Fullscreen can be toggled by alt + backspace."
+ echo "Actions assigned to »Button 7« will be mapped to key »6«."
+ echo ""
+}