Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/hakchi.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormadmonkey1907 <madfkingmonkey@gmail.com>2017-11-22 01:02:54 +0300
committerGitHub <noreply@github.com>2017-11-22 01:02:54 +0300
commitff9b6748136b743b875cd456b0caec531f73ae43 (patch)
treee6653f3579b445517c6daaf1eff33c0b0d5aeed6
parent33720d1cd2129b355e8a50b11b00acdc58aa31eb (diff)
parent1f0518fd4c364a28d8eb4cf1074b61d8901d482a (diff)
Merge pull request #35 from DanTheMan827/patch-1
Bugfixes
-rwxr-xr-xmod/hakchi/rootfs/bin/chmenu2
-rwxr-xr-xmod/hakchi/rootfs/bin/clover-canoe-shvc-wr4
-rwxr-xr-xmod/hakchi/rootfs/bin/clover-kachikachi-wr4
-rwxr-xr-xmod/hakchi/rootfs/bin/hsqs3
-rw-r--r--mod/hakchi/rootfs/etc/preinit1
-rw-r--r--mod/hakchi/rootfs/etc/preinit.d/b0010_functions63
6 files changed, 58 insertions, 19 deletions
diff --git a/mod/hakchi/rootfs/bin/chmenu b/mod/hakchi/rootfs/bin/chmenu
index c83f247..3ad32b8 100755
--- a/mod/hakchi/rootfs/bin/chmenu
+++ b/mod/hakchi/rootfs/bin/chmenu
@@ -31,5 +31,5 @@ fi
uistop
overmount_games
-
+sleep 1
touch "/var/startmcp.flag"
diff --git a/mod/hakchi/rootfs/bin/clover-canoe-shvc-wr b/mod/hakchi/rootfs/bin/clover-canoe-shvc-wr
index dc99ccd..b3b2bc0 100755
--- a/mod/hakchi/rootfs/bin/clover-canoe-shvc-wr
+++ b/mod/hakchi/rootfs/bin/clover-canoe-shvc-wr
@@ -34,5 +34,5 @@ done
args="$options $cfg_snes_extra_args"
-exec /bin/clover-canoe-shvc $args || \
-exec /usr/bin/clover-canoe-shvc $args
+[ -f "/bin/clover-canoe-shvc" ] && exec /bin/clover-canoe-shvc $args
+[ -f "/usr/bin/clover-canoe-shvc" ] && exec /usr/bin/clover-canoe-shvc $args
diff --git a/mod/hakchi/rootfs/bin/clover-kachikachi-wr b/mod/hakchi/rootfs/bin/clover-kachikachi-wr
index f0fc9bc..0da3c12 100755
--- a/mod/hakchi/rootfs/bin/clover-kachikachi-wr
+++ b/mod/hakchi/rootfs/bin/clover-kachikachi-wr
@@ -33,5 +33,5 @@ shift
args="$filename $@ $cfg_nes_extra_args"
[ "$cfg_disable_armet" == "y" ] && args="$(echo $args | sed 's/--enable-armet//g')"
-exec /bin/clover-kachikachi $args || \
-exec /usr/bin/clover-kachikachi $args
+[ -f "/bin/clover-kachikachi" ] && exec /bin/clover-kachikachi $args
+[ -f "/usr/bin/clover-kachikachi" ] && exec /usr/bin/clover-kachikachi $args
diff --git a/mod/hakchi/rootfs/bin/hsqs b/mod/hakchi/rootfs/bin/hsqs
index 0b1d9d2..800c456 100755
--- a/mod/hakchi/rootfs/bin/hsqs
+++ b/mod/hakchi/rootfs/bin/hsqs
@@ -7,7 +7,8 @@ printSoftwareInfo
firmware="$1"
if [ "$firmware" != "_nand_" ]; then
- firmware="$(readlink -f "$1")"
+ firmware="$(echo "$firmware" | sed -re 's/^\/usr\/share\/games\/(nes\/kachikachi\/)?/\/var\/games\//')"
+ firmware="$(readlink -f "$firmware")"
checkFirmware "$firmware" || exit 1
fi
diff --git a/mod/hakchi/rootfs/etc/preinit b/mod/hakchi/rootfs/etc/preinit
index 6c7a765..731ab4a 100644
--- a/mod/hakchi/rootfs/etc/preinit
+++ b/mod/hakchi/rootfs/etc/preinit
@@ -50,6 +50,7 @@ save_config(){
script_init(){
source_base
source_config
+ softwareCheck
}
preinit(){
diff --git a/mod/hakchi/rootfs/etc/preinit.d/b0010_functions b/mod/hakchi/rootfs/etc/preinit.d/b0010_functions
index 6ef7bce..ea73c19 100644
--- a/mod/hakchi/rootfs/etc/preinit.d/b0010_functions
+++ b/mod/hakchi/rootfs/etc/preinit.d/b0010_functions
@@ -231,28 +231,65 @@ softwareCheck(){
[ -d "$feck" ] && rm -rf "$feck.snes" && mv "$feck" "$feck.snes"
[ -f "$feck.nes" ] && mv -f "$feck.nes" "$feck"
fi
-
- linkGames "$gamepath"
+
rm -f "$mountpoint/var/saves"
ln -s "/var/lib/clover/profiles/0" "$mountpoint/var/saves"
}
+repair_fonts(){
+ if [ "$sftype" == "nes" ]; then
+ mkdir -p "$1" || return 1
+ [ ! -f "$1/title.fnt" ] && (cp $rootfs$gamepath/title.fnt "$1" || cp $squashfs$gamepath/title.fnt "$1")
+ [ ! -f "$1/copyright.fnt" ] && (cp $rootfs$gamepath/copyright.fnt "$1" || cp $squashfs$gamepath/copyright.fnt "$1")
+ fi
+}
+
+repair_games(){
+ [ -w "$1" ] || return 0
+ local usesymlink=''
+ ln -s / "$1/symlinktest" && rm "$1/symlinktest" && usesymlink='y'
+
+ ls -1 "$squashfs$gamepath" | grep CLV- | while read code
+ do
+ local gamedir="$1/$code"
+ local squashgamedir="$squashfs$gamepath/$code"
+
+ [ -d "$gamedir" ] || continue
+
+ if [ ! -f "$gamedir/$code.desktop" ]; then
+ cp "$squashgamedir/$code.desktop" "$gamedir/"
+ [ "$sftype" == "nes" ] && \
+ sed -i -e 's#/usr/bin/clover-kachikachi#/bin/clover-kachikachi-wr#g' "$gamedir/$code.desktop"
+ [ "$sftype" == "snes" ] && \
+ sed -i -e 's#/usr/bin/clover-canoe-shvc#/bin/clover-canoe-shvc-wr#g' "$gamedir/$code.desktop"
+ fi
+
+ [ -d "$gamedir/autoplay/" ] && ([ "$(ls -A "$gamedir/autoplay/")" ] || rm -r "$gamedir/autoplay/")
+ [ -d "$gamedir/pixelart/" ] && ([ "$(ls -A "$gamedir/pixelart/")" ] || rm -r "$gamedir/pixelart/")
+
+ find "$squashgamedir" -maxdepth 1 | sed -n '1!p' | while read squashfile
+ do
+ if [ "$usesymlink" == "y" ]; then
+ ln -s "${squashfile##$mountpoint}" "$gamedir/" > /dev/null 2>&1
+ else
+ rsync -a --ignore-existing "$squashfile" "$gamedir/" > /dev/null 2>&1
+ fi
+ done
+ done
+ sync
+ return 0
+}
+
overmount_games(){
local menu_code="000"
[ -f "$installpath/menu" ] && menu_code="$(cat "$installpath/menu")"
- [ -z "$menu_code" ] && menu_code="000"
+ containsGames "$rootfs$gamepath/$menu_code" || menu_code=""
echo "menu code: $menu_code"
- if [ "$menu_code" != "000" ]; then
- if containsGames "$rootfs$gamepath/$menu_code"; then
- overmount "$gamepath/$menu_code" "$gamepath" && linkGames "$rootfs$gamepath/$menu_code" && return 0
- else
- echo "no romz found at: $rootfs$gamepath/$menu_code"
- fi
- fi
- if containsGames "$rootfs$gamepath"; then
- overmount "$gamepath" && linkGames "$rootfs$gamepath" && return 0
+ if containsGames "$rootfs$gamepath/$menu_code"; then
+ overmount "$gamepath/$menu_code" "$gamepath" && repair_games "$rootfs$gamepath/$menu_code" && linkGames "$rootfs$gamepath/$menu_code" && return 0
+ else
+ echo "no romz found at: $rootfs$gamepath/$menu_code"
fi
- echo "no romz found at: $rootfs$gamepath"
linkGames "$gamepath"
return 1
}