Compare commits

..

8 Commits

8 changed files with 79 additions and 33 deletions

@ -2,6 +2,10 @@ You can help us in the development of the project on the website: https://linux-
----------------------------------------
Changelog:
###Scripts version 2397### / Date: 05.03.2025 / Download update size: 4 megabytes
* fixed icons for autosearch shortcut after using setup.exe (thanks to Htylol)
* added display of time spent in the game in hours and minutes, can be switched or turned off in global settings (thanks to Htylol)
###Scripts version 2396### / Date: 04.03.2025 / Download update size: 4 megabytes
* fixed exiftool operation in flatpak version of PortProton (thanks to Boria138)
* fixed extra exiftool launches when switching from game menu to main menu and back (thanks to Htylol)

@ -2,6 +2,10 @@
-----------------------------------------
История изменений:
###Scripts version 2397### / Дата: 05.03.2025 / Размер скачиваемого обновления: 4 мегабайта
* исправлены иконки для автопоиска ярлыка после использования setup.exe (спасибо Htylol)
* добавлено отображение проведенного времени в игре в часах и минутах, можно переключить, или выключить в глобальных настройках (спасибо Htylol)
###Scripts version 2396### / Дата: 04.03.2025 / Размер скачиваемого обновления: 4 мегабайта
* исправлена работа exiftool во flatpak версии PortProton (спасибо Boria138)
* исправлены лишние запуски exiftool при переходе из меню игры в главное меню и обратно (спасибо Htylol)

@ -7,7 +7,7 @@
msgid ""
msgstr "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-27 20:05+0500\n"
"POT-Creation-Date: 2025-03-02 01:22+0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1415,6 +1415,12 @@ msgid "If downloading steam covers is enabled, they will be downloaded and "
"is unavailable for some reason)"
msgstr ""
msgid "Show in hours and minutes"
msgstr ""
msgid "Show in days, hours, minutes"
msgstr ""
msgid "Recommended value"
msgstr ""

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-27 20:05+0500\n"
"POT-Creation-Date: 2025-03-02 01:22+0500\n"
"PO-Revision-Date: 2024-11-13 08:18+0500\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -1844,6 +1844,12 @@ msgstr ""
"crearán. (La desactivación se proporciona en los casos en que su descarga no "
"esté disponible por algún motivo)"
msgid "Show in hours and minutes"
msgstr ""
msgid "Show in days, hours, minutes"
msgstr ""
msgid "Recommended value"
msgstr ""

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-27 20:05+0500\n"
"PO-Revision-Date: 2025-02-27 20:06+0500\n"
"POT-Creation-Date: 2025-03-02 01:22+0500\n"
"PO-Revision-Date: 2025-03-02 01:22+0500\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: ru_RU\n"
@ -1832,6 +1832,12 @@ msgstr ""
"создаваться. (Отключение предусмотрено в тех случаях, когда их скачивание по "
"каким-то причинам недоступно)"
msgid "Show in hours and minutes"
msgstr "Отображать в часах и минутах"
msgid "Show in days, hours, minutes"
msgstr "Отображать в днях, часах и минутах"
msgid "Recommended value"
msgstr "Рекомендуемое значение"

@ -1248,13 +1248,15 @@ create_name_desktop () {
# Конвертация секунд в дни, часы, минуты
seconds_to_time () {
[[ ! $DESKTOP_WITH_TIME == enabled ]] && return 0
[[ $DESKTOP_WITH_TIME == "disabled" ]] && return 0
[[ -z $1 ]] && return 0
local seconds days hours minutes
seconds=$1
days=$((seconds / (60 * 60 * 24)))
seconds=$((seconds % (60 * 60 * 24)))
if [[ $DESKTOP_WITH_TIME == "posnumber2" ]] ; then
days=$((seconds / (60 * 60 * 24)))
seconds=$((seconds % (60 * 60 * 24)))
fi
hours=$((seconds / (60 * 60)))
seconds=$((seconds % (60 * 60)))
@ -1262,8 +1264,8 @@ seconds_to_time () {
minutes=$((seconds / 60))
seconds=$((seconds % 60))
if [[ $days =~ ^0$ ]] ; then
days=
if [[ $days == "0" ]] ; then
days=""
elif [[ $days =~ ^1$ ]] ; then
days="$days ${translations[day]}, "
elif [[ $days =~ ^([2-9]1|[1-9][0-9]+1)$ ]] && [[ $LANGUAGE == ru ]] ; then
@ -1274,26 +1276,29 @@ seconds_to_time () {
days="$days ${translations[days]}, "
fi
if [[ $hours =~ ^0$ ]] ; then
hours=
if [[ $hours == "0" ]] ; then
hours=""
elif [[ $hours =~ ^1$ ]] ; then
hours="$hours ${translations[hour]} ${translations[and]} "
elif [[ $hours =~ ^([2-4]|2[2-4])$ ]] && [[ $LANGUAGE == ru ]] ; then
elif [[ $hours =~ [2-4]$ && ! $hours =~ ^1[2-4]$ ]] && [[ $LANGUAGE == ru ]] ; then
hours="$hours часа ${translations[and]} "
elif [[ $hours =~ ^21$ ]] && [[ $LANGUAGE == ru ]] ; then
elif [[ $hours =~ 1$ && ! $hours =~ 11$ ]] && [[ $LANGUAGE == ru ]] ; then
hours="$hours ${translations[hour]} ${translations[and]} "
else
hours="$hours ${translations[hours]} ${translations[and]} "
fi
if [[ $minutes =~ ^0$ ]] ; then
hours=${hours//" ${translations[and]} "/}
minutes=
if [[ -z $days ]] || [[ -z $hours ]] ; then
days=${days//","/}
fi
if [[ -z $days ]] && [[ -z $hours ]] ; then
if [[ $minutes == "0" ]] ; then
minutes=""
if [[ $DESKTOP_WITH_TIME == "posnumber1" && -z $hours ]] \
|| [[ $DESKTOP_WITH_TIME == "posnumber2" && -z $days && -z $hours ]]; then
minutes="${translations[less than a minute]}"
else
hours=${hours//" ${translations[and]} "/}
if [[ $DESKTOP_WITH_TIME == "posnumber2" ]] \
&& [[ -z $days || -z $hours ]] ; then
days=${days//","/}
fi
fi
elif [[ $minutes =~ ^1$ ]] ; then
minutes="$minutes ${translations[minute]}"
@ -1305,7 +1310,11 @@ seconds_to_time () {
minutes="$minutes ${translations[minutes]}"
fi
echo -e "<b>\n${translations[Time spent]}: $days$hours$minutes</b>"
if [[ $DESKTOP_WITH_TIME == "posnumber1" ]] ; then
echo -e "<b>\n${translations[Time spent]}: $hours$minutes</b>"
elif [[ $DESKTOP_WITH_TIME == "posnumber2" ]] ; then
echo -e "<b>\n${translations[Time spent]}: $days$hours$minutes</b>"
fi
}
combobox_fix () {
@ -6015,10 +6024,10 @@ gui_userconf () {
GPU_VAR="disabled"
fi
if [[ -n "$DESKTOP_WITH_TIME" ]] \
&& [[ "$DESKTOP_WITH_TIME" != "disabled" ]]
then
DESKTOP_WITH_TIME="enabled"
if [[ $DESKTOP_WITH_TIME == "posnumber1" ]] ; then
DESKTOP_WITH_TIME=${translations[Show in hours and minutes]}
elif [[ $DESKTOP_WITH_TIME == "posnumber2" ]] ; then
DESKTOP_WITH_TIME=${translations[Show in days, hours, minutes]}
else
DESKTOP_WITH_TIME="disabled"
fi
@ -6042,9 +6051,9 @@ gui_userconf () {
YAD_DPI_VAR="disabled"
fi
if [[ $GUI_THEME == default ]] ; then GUI_THEME=${translations[default]}
elif [[ $GUI_THEME == compact ]] ; then GUI_THEME=${translations[compact]}
elif [[ $GUI_THEME == classic ]] ; then GUI_THEME=${translations[classic]}
if [[ $GUI_THEME == "default" ]] ; then GUI_THEME=${translations[default]}
elif [[ $GUI_THEME == "compact" ]] ; then GUI_THEME=${translations[compact]}
elif [[ $GUI_THEME == "classic" ]] ; then GUI_THEME=${translations[classic]}
fi
if command -v gsettings &>/dev/null ; then
@ -6064,7 +6073,7 @@ gui_userconf () {
--field="${translations[Choice wine audio driver]}!${translations[Fixes sound popling if choice alsa]} :CB" "$(combobox_fix --disabled "$SOUND_DRIVER_VAR" "alsa!oss!pulse")" \
--field="${translations[Select PortProton theme]}!${translations[Allows you to select a theme for PortProton]} :CB" "$(combobox_fix "$GUI_THEME" "${translations[default]}!${translations[compact]}!${translations[classic]}")" \
--field="${translations[Select gtk theme]}!${translations[Allows you to select a theme for GTK.]} :CB" "$(combobox_fix "$GTK_THEME" "${YAD_GTK_THEME}Adwaita:${translations[light]}!Adwaita:${translations[dark]}!${translations[default]}")" \
--field="${translations[Time display]}!${translations[Displays time spent in an application or game]} :CB" "$(combobox_fix --disabled "$DESKTOP_WITH_TIME" "enabled")" \
--field="${translations[Time display]}!${translations[Displays time spent in an application or game]} :CB" "$(combobox_fix --disabled "$DESKTOP_WITH_TIME" "${translations[Show in hours and minutes]}!${translations[Show in days, hours, minutes]}")" \
--field="${translations[Sort shortcuts by time]}!${translations[This setting sorts the shortcuts in the main menu depending on the time spent in the application or game]} :CB" "$(combobox_fix --disabled "$SORT_WITH_TIME" "enabled")" \
1> "${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb" 2>/dev/null &
@ -6116,6 +6125,9 @@ gui_userconf () {
elif [[ $GTK_THEME =~ ${translations[light]} ]] ; then GTK_THEME=${GTK_THEME//${translations[light]}/light}
elif [[ $GTK_THEME =~ ${translations[dark]} ]] ; then GTK_THEME=${GTK_THEME//${translations[dark]}/dark}
fi
if [[ $DESKTOP_WITH_TIME == "${translations[Show in hours and minutes]}" ]] ; then DESKTOP_WITH_TIME="posnumber1"
elif [[ $DESKTOP_WITH_TIME == "${translations[Show in days, hours, minutes]}" ]] ; then DESKTOP_WITH_TIME="posnumber2"
fi
edit_user_conf_from_gui PW_GPU_USE PW_WINE_DPI_VALUE PW_SOUND_DRIVER_USE GUI_THEME GTK_THEME DESKTOP_WITH_TIME SORT_WITH_TIME
restart_pp
@ -6346,6 +6358,7 @@ pw_auto_create_shortcut () {
pw_init_db
export PW_NO_RESTART_PPDB="1"
edit_db_from_gui PW_PREFIX_NAME LAUNCH_URI
unset PW_ICON_FOR_YAD name_desktop_png
portwine_create_shortcut
fi
fi
@ -6372,6 +6385,7 @@ pw_auto_create_shortcut () {
export portwine_exe="$exe_path"
resize_png "$portwine_exe" "${PORTPROTON_NAME}" "48" "128"
export PW_NO_RESTART_PPDB=1
unset PW_ICON_FOR_YAD name_desktop_png
portwine_create_shortcut
fi
done

@ -264,10 +264,16 @@ if [[ ! $PW_GUI_START =~ (PANED|NOTEBOOK) ]] ; then
export PW_GUI_START="NOTEBOOK"
fi
# DESKTOP_WITH_TIME by default displays hours and minutes
if [[ -z $DESKTOP_WITH_TIME ]] ; then
echo 'export DESKTOP_WITH_TIME="posnumber1"' >> "$USER_CONF"
export DESKTOP_WITH_TIME="posnumber1"
fi
# TODO:fixes_after_update
if fixes_after_update "2372: Reset PW_WINE_DPI_VALUE in user.conf" ; then
sed -i '/export PW_WINE_DPI_VALUE=/d' "$USER_CONF"
unset PW_WINE_DPI_VALUE
if fixes_after_update "2395: DESKTOP_WITH_TIME by default displays hours and minutes" ; then
DESKTOP_WITH_TIME="posnumber1"
edit_user_conf_from_gui DESKTOP_WITH_TIME
fi
# choose wine dpi default

@ -1,6 +1,6 @@
#!/usr/bin/env bash
#Author: Castro-Fidel (linux-gaming.ru)
#SCRIPTS_NEXT_VERSION=2396
#SCRIPTS_NEXT_VERSION=2397
#SCRIPTS_STABLE_VERSION=2388
########################################################################
export AI_TOP_GAMES="PW_LGC PW_VKPLAY PW_EPIC PW_BATTLE_NET PW_WORLD_OF_SEA_BATTLE PW_RUSSIAN_FISHING PW_HO_YO_PLAY PW_FARLIGHT84 PW_WARFRAME PW_WGC PW_UBISOFT"