RHVoice updates.
This commit is contained in:
Symlink
+1
@@ -0,0 +1 @@
|
|||||||
|
/home/stormux/.local/etc/RHVoice
|
||||||
@@ -4,6 +4,9 @@ set -euo pipefail
|
|||||||
|
|
||||||
scriptDir="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)"
|
scriptDir="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)"
|
||||||
installerPath="${1:-}"
|
installerPath="${1:-}"
|
||||||
|
logRoot="${STORMUX_LOG_ROOT:-${HOME}/Logs}"
|
||||||
|
logDir="${logRoot}/installs"
|
||||||
|
logFile=""
|
||||||
|
|
||||||
if [[ -z "${installerPath}" || ! -f "${installerPath}" ]]; then
|
if [[ -z "${installerPath}" || ! -f "${installerPath}" ]]; then
|
||||||
printf 'Usage: %s installer.sh\n' "${0##*/}" >&2
|
printf 'Usage: %s installer.sh\n' "${0##*/}" >&2
|
||||||
@@ -21,7 +24,47 @@ fex="${fex:-}"
|
|||||||
|
|
||||||
export installPath cache launchRoot redownload ipfsGateway fex gameName
|
export installPath cache launchRoot redownload ipfsGateway fex gameName
|
||||||
|
|
||||||
|
safe_log_name() {
|
||||||
|
local name="$1"
|
||||||
|
|
||||||
|
name="${name//\//_}"
|
||||||
|
name="${name//[^[:alnum:]. _-]/_}"
|
||||||
|
printf '%s\n' "$name"
|
||||||
|
}
|
||||||
|
|
||||||
|
prune_old_logs() {
|
||||||
|
find "$logDir" -type f -name '*.log' -mtime +7 -delete 2> /dev/null || true
|
||||||
|
}
|
||||||
|
|
||||||
|
setup_logging() {
|
||||||
|
local timestamp
|
||||||
|
local safeName
|
||||||
|
|
||||||
|
mkdir -p "$logDir"
|
||||||
|
prune_old_logs
|
||||||
|
timestamp="$(date '+%Y%m%d-%H%M%S')"
|
||||||
|
safeName="$(safe_log_name "$gameName")"
|
||||||
|
logFile="${logDir}/${safeName}-${timestamp}.log"
|
||||||
|
exec > >(tee -a "$logFile") 2>&1
|
||||||
|
printf 'Installing %s [%s]\n' "$gameName" "$(date)"
|
||||||
|
printf 'Installer path: %s\n' "$installerPath"
|
||||||
|
}
|
||||||
|
|
||||||
|
finish_logging() {
|
||||||
|
local exitCode=$?
|
||||||
|
|
||||||
|
if [[ "$exitCode" -eq 0 ]]; then
|
||||||
|
printf '%s installed [%s]\n' "$gameName" "$(date)"
|
||||||
|
else
|
||||||
|
printf '%s installation failed with exit code %s [%s]\n' "$gameName" "$exitCode" "$(date)"
|
||||||
|
speak "${gameName} installation failed. Check ${logFile} for details." 1
|
||||||
|
fi
|
||||||
|
exit "$exitCode"
|
||||||
|
}
|
||||||
|
|
||||||
mkdir -p "${installPath}" "${cache}" "${launchRoot}"
|
mkdir -p "${installPath}" "${cache}" "${launchRoot}"
|
||||||
|
setup_logging
|
||||||
|
trap finish_logging EXIT
|
||||||
|
|
||||||
# shellcheck disable=SC1091
|
# shellcheck disable=SC1091
|
||||||
source "${scriptDir}/game_install_functions.sh"
|
source "${scriptDir}/game_install_functions.sh"
|
||||||
|
|||||||
@@ -3,6 +3,36 @@
|
|||||||
export installPath="${installPath:-${HOME}/.local/games}"
|
export installPath="${installPath:-${HOME}/.local/games}"
|
||||||
export fex="${fex:-}"
|
export fex="${fex:-}"
|
||||||
|
|
||||||
|
logRoot="${STORMUX_LOG_ROOT:-${HOME}/Logs}"
|
||||||
|
launchLogDir="${logRoot}/launches"
|
||||||
|
launchLogFile=""
|
||||||
|
|
||||||
|
safe_log_name() {
|
||||||
|
local name="$1"
|
||||||
|
|
||||||
|
name="${name//\//_}"
|
||||||
|
name="${name//[^[:alnum:]. _-]/_}"
|
||||||
|
printf '%s\n' "$name"
|
||||||
|
}
|
||||||
|
|
||||||
|
prune_old_launch_logs() {
|
||||||
|
mkdir -p "$launchLogDir"
|
||||||
|
find "$launchLogDir" -type f -name '*.log' -mtime +7 -delete 2> /dev/null || true
|
||||||
|
}
|
||||||
|
|
||||||
|
setup_launch_logging() {
|
||||||
|
local launchName="$1"
|
||||||
|
local timestamp
|
||||||
|
local safeName
|
||||||
|
|
||||||
|
prune_old_launch_logs
|
||||||
|
timestamp="$(date '+%Y%m%d-%H%M%S')"
|
||||||
|
safeName="$(safe_log_name "$launchName")"
|
||||||
|
launchLogFile="${launchLogDir}/${safeName}-${timestamp}.log"
|
||||||
|
exec > >(tee -a "$launchLogFile") 2>&1
|
||||||
|
printf 'Launching %s [%s]\n' "$launchName" "$(date)"
|
||||||
|
}
|
||||||
|
|
||||||
start_screen_reader() {
|
start_screen_reader() {
|
||||||
cthulhu &
|
cthulhu &
|
||||||
}
|
}
|
||||||
@@ -155,6 +185,7 @@ find_launch_script() {
|
|||||||
|
|
||||||
dispatch_launch_request() {
|
dispatch_launch_request() {
|
||||||
local launchScript="${STORMUX_LAUNCH_SCRIPT:-}"
|
local launchScript="${STORMUX_LAUNCH_SCRIPT:-}"
|
||||||
|
local launchName="${GAME:-}"
|
||||||
|
|
||||||
if [[ -z "$launchScript" && -n "${GAME:-}" ]]; then
|
if [[ -z "$launchScript" && -n "${GAME:-}" ]]; then
|
||||||
launchScript="$(find_launch_script "$GAME" || true)"
|
launchScript="$(find_launch_script "$GAME" || true)"
|
||||||
@@ -165,11 +196,18 @@ dispatch_launch_request() {
|
|||||||
printf 'Launch script not found: %s\n' "$launchScript" >&2
|
printf 'Launch script not found: %s\n' "$launchScript" >&2
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
if [[ -z "$launchName" ]]; then
|
||||||
|
launchName="${launchScript##*/}"
|
||||||
|
launchName="${launchName%.sh}"
|
||||||
|
fi
|
||||||
|
setup_launch_logging "$launchName"
|
||||||
|
printf 'Launch script: %s\n' "$launchScript"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "$launchScript"
|
source "$launchScript"
|
||||||
return $?
|
return $?
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
setup_launch_logging "${launchName:-unknown}"
|
||||||
case "${GAME:-}" in
|
case "${GAME:-}" in
|
||||||
"")
|
"")
|
||||||
printf 'No game specified.\n' >&2
|
printf 'No game specified.\n' >&2
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
; Sample of the configuration file.
|
||||||
|
; To make changes, uncomment and edit the required parameters.
|
||||||
|
; For more information, please consult the documentation at https://github.com/RHVoice/RHVoice/tree/master/doc/en/Configuration-file.md
|
||||||
|
|
||||||
|
; The default pitch, speed, and volume.
|
||||||
|
; In the client settings they will correspond to fifty percent.
|
||||||
|
; default_pitch=1.0
|
||||||
|
; default_rate=1.0
|
||||||
|
; default_volume=1.0
|
||||||
|
|
||||||
|
; Minimum and maximum pitch values.
|
||||||
|
; min_pitch=0.5
|
||||||
|
; max_pitch=2.0
|
||||||
|
|
||||||
|
; Minimum and maximum speech rate values.
|
||||||
|
; min_rate=0.5
|
||||||
|
max_rate=5.0
|
||||||
|
|
||||||
|
; Minimum and maximum volume values.
|
||||||
|
; min_volume=0.25
|
||||||
|
; max_volume=2.0
|
||||||
|
|
||||||
|
; For this and higher speach rate values, the Sonic library is used.
|
||||||
|
; min_sonic_rate=1
|
||||||
|
|
||||||
|
; The following settings allow you to disable a specific language or voice.
|
||||||
|
; languages.english.enabled=false
|
||||||
|
; voices.elena.enabled=false
|
||||||
|
|
||||||
|
; The symbol, which in the text will indicate that the vowel after sign must receive stress.
|
||||||
|
; Applies only to Russian and Ukrainian languages.
|
||||||
|
; stress_marker=
|
||||||
|
|
||||||
|
; Punctuation mode (all, some or none).
|
||||||
|
; punctuation_mode=some
|
||||||
|
|
||||||
|
; Characters pronounced in the (some) punctuation mode.
|
||||||
|
punctuation_list=+#61;<>~@#35;$%^&*|
|
||||||
|
|
||||||
|
; Indication of capital letters when reading character by character.
|
||||||
|
; Possible values: no, word, pitch, sound
|
||||||
|
; indicate_capitals=no
|
||||||
|
; cap_pitch_factor=1.3
|
||||||
|
|
||||||
|
; In auto language switching mode, always switch to the primary language.
|
||||||
|
; when reading numbers and punctuation marks.
|
||||||
|
; prefer_primary_language=true
|
||||||
|
|
||||||
|
; Enable pseudo-English support for Russian voices.
|
||||||
|
; languages.Russian.use_pseudo_english=true
|
||||||
|
; Windows only: return numeric English ID for Esperanto.
|
||||||
|
; languages.esperanto.present_as_english=false
|
||||||
|
|
||||||
|
; Speech quality: min (maximum speed),
|
||||||
|
; standard (standard quality) or max (maximum possible quality,
|
||||||
|
; but with delays in the synthesis of long sentences).
|
||||||
|
quality=max
|
||||||
|
|
||||||
|
; List of voice profiles. The first in the profile indicates the main
|
||||||
|
; voice (it will read numbers and other text for which automatic language determining fails).
|
||||||
|
; The following are additional voices. If the profile has two voices, whose languages ‹have common
|
||||||
|
; letters, the second will only be used when the Client will
|
||||||
|
; specifically request to use it.
|
||||||
|
voice_profiles=Aleksandr+Alan,Elena+CLB
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
alicia=aleesha
|
||||||
|
bifrost=buyfraust
|
||||||
|
copyparty=coppeeparty
|
||||||
|
cthulhu=kthoolu
|
||||||
|
danestange=dainstanggey
|
||||||
|
godot=guhdoe
|
||||||
|
kae=kay*
|
||||||
|
kde=kaydeee
|
||||||
|
stange=stangey
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
aa=dubbelaye
|
||||||
|
asus=aysus
|
||||||
|
bournemouth=bornmouth
|
||||||
|
certificate=cirtifficate
|
||||||
|
configure=kunfigure
|
||||||
|
disconnects=disconects
|
||||||
|
douche=doosh*
|
||||||
|
espeak=easpeak*
|
||||||
|
firepit=fiarpit
|
||||||
|
foliage=foalyage
|
||||||
|
freenginx=freeenginex
|
||||||
|
fyshoil=fishoil
|
||||||
|
git=ghit*
|
||||||
|
github=ghittehub
|
||||||
|
gitea=ghittee
|
||||||
|
inflatable=inflatable*
|
||||||
|
jolla=yolla
|
||||||
|
irssi=earsy
|
||||||
|
jenux=jennux
|
||||||
|
lightnin=lighttnin
|
||||||
|
mapper=mappper
|
||||||
|
messaged=mesaged
|
||||||
|
nginx=enginex
|
||||||
|
reading=reding
|
||||||
|
recognise=recognize
|
||||||
|
reconnection=reconection
|
||||||
|
reconnected=reconected
|
||||||
|
rhvoice=ahraychvoice
|
||||||
|
scarecrow=scaircrow
|
||||||
|
shit=shitt
|
||||||
|
singleplayer=singelplayer
|
||||||
|
snakebite=snaikbite
|
||||||
|
sync=sink*
|
||||||
|
teapots=teapotts
|
||||||
|
timezone=timezoan
|
||||||
|
unmodified=unmoddified
|
||||||
|
unranked=unraynked
|
||||||
|
vinux=vinnux
|
||||||
|
whatsapp=watsap
|
||||||
|
wench=wentch*
|
||||||
|
youngin=younggin*
|
||||||
Reference in New Issue
Block a user