forked from CastroFidel/PortWINE
Scripts version 2123
This commit is contained in:
parent
8b442cf9ef
commit
a2b5385071
@ -2,6 +2,9 @@ You can help us in the development of the project on the website: boosty.to/port
|
||||
-----------------------------------------
|
||||
Changelog:
|
||||
|
||||
###Scripts version 2123###
|
||||
* HOTFIX - GALLIUM NINE mode
|
||||
|
||||
###Scripts version 2122###
|
||||
* added the pp-games-lib plugin to the new PortProton/data/plugins/ details directory on github (plugin author: comrade zorn) https://github.com/zorn-v/PortProton-games-library
|
||||
* updated scripts for installing and launching League of Legends (updated WINE_LOL_GE_7.0-4 - from now on there is no need to enter the root password to launch League of Legends)
|
||||
|
@ -2,6 +2,11 @@
|
||||
-----------------------------------------
|
||||
История изменений:
|
||||
|
||||
###Scripts version 2123###
|
||||
* HOTFIX - скачивание PROTON GE при использовании режжима GALLIUM NINE
|
||||
* добавлена русификация CREDITS (Авторы и спасибы) - спасибо chal55rus
|
||||
* добавлена русификация плагина pp-games-lib - спасибо zorn
|
||||
|
||||
###Scripts version 2122###
|
||||
* добавлен плагин pp-games-lib в новый каталог PortProton/data/plugins/ подробности на github (автор плагина: товарищ zorn) https://github.com/zorn-v/PortProton-games-library
|
||||
* обновлены срипты установки и запуска League of Legends (обновлен WINE_LOL_GE_7.0-4 - отныне нет необходимости вводить пароль рут для запуска League of Legends)
|
||||
|
@ -18,7 +18,7 @@ except ModuleNotFoundError:
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
settings = QSettings('PPGL', 'PortProtonGamesLib')
|
||||
g = SimpleNamespace()
|
||||
g = SimpleNamespace(locale = '')
|
||||
|
||||
class MainWindow(QMainWindow):
|
||||
def __init__(self):
|
||||
@ -46,6 +46,10 @@ class MainWindow(QMainWindow):
|
||||
g.shortcuts_dir = g.base_dir + '/shortcuts'
|
||||
g.games_dir = g.base_dir + '/games'
|
||||
|
||||
loc_path = Path(g.base_dir + '/data/tmp/PortProton_loc')
|
||||
if loc_path.exists():
|
||||
g.locale = loc_path.read_text().strip()
|
||||
|
||||
Path(g.shortcuts_dir).mkdir(parents=True, exist_ok=True)
|
||||
Path(g.games_dir).mkdir(parents=True, exist_ok=True)
|
||||
|
||||
@ -67,16 +71,16 @@ class MainWindow(QMainWindow):
|
||||
self.toolbar.setIconSize(QSize(32, 32))
|
||||
self.toolbar.setToolButtonStyle(Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
|
||||
self.toolbar.setMovable(False)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_FileDialogNewFolder), 'Install new game', self)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_FileDialogNewFolder), _tr('Install new game'), self)
|
||||
action.triggered.connect(self.install_game)
|
||||
self.toolbar.addAction(action)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_FileLinkIcon), 'Add game entry', self)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_FileLinkIcon), _tr('Add game entry'), self)
|
||||
action.triggered.connect(self.add_game)
|
||||
self.toolbar.addAction(action)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_BrowserReload), 'Reload list', self)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_BrowserReload), _tr('Reload list'), self)
|
||||
action.triggered.connect(self.reload_list)
|
||||
self.toolbar.addAction(action)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_TrashIcon), 'Drop install prefix', self)
|
||||
action = QAction(self.style().standardIcon(QStyle.StandardPixmap.SP_TrashIcon), _tr('Drop install prefix'), self)
|
||||
action.triggered.connect(self.drop_prefix)
|
||||
self.toolbar.addAction(action)
|
||||
spacer = QWidget(self)
|
||||
@ -96,7 +100,7 @@ class MainWindow(QMainWindow):
|
||||
self.game_list.reload()
|
||||
|
||||
def drop_prefix(self):
|
||||
res = QMessageBox.question(self, 'Are you shure ?', 'Do you really want to remove<br/><b>' + g.install_pfx + '</b> ?')
|
||||
res = QMessageBox.question(self, _tr('Are you shure ?'), _tr('Do you really want to remove<br/><b>{0}</b> ?', g.install_pfx))
|
||||
if res == QMessageBox.StandardButton.Yes:
|
||||
shutil.rmtree(g.install_pfx, True)
|
||||
|
||||
@ -147,13 +151,13 @@ class InstallGame(QDialog):
|
||||
if self._installing:
|
||||
setup_btn = QPushButton(self)
|
||||
setup_btn.setIcon(self.style().standardIcon(QStyle.StandardPixmap.SP_FileDialogStart))
|
||||
setup_btn.setText('Run another setup')
|
||||
setup_btn.setText(_tr('Run another setup'))
|
||||
setup_btn.clicked.connect(self._runSetup)
|
||||
layout.addWidget(setup_btn)
|
||||
self.setLayout(layout)
|
||||
self.resize(400, 300)
|
||||
self.setModal(True)
|
||||
self.setWindowTitle('Select game exe file')
|
||||
self.setWindowTitle(_tr('Select game exe file'))
|
||||
geometry = settings.value('geometry_install')
|
||||
if geometry:
|
||||
self.restoreGeometry(geometry)
|
||||
@ -189,7 +193,7 @@ class InstallGame(QDialog):
|
||||
|
||||
def _runSetup(self):
|
||||
downloads_dir = QStandardPaths.writableLocation(QStandardPaths.StandardLocation.DownloadLocation)
|
||||
exe_file, _ = QFileDialog.getOpenFileName(self, caption='Choose setup file', filter='Exe files (*.exe)', directory=downloads_dir)
|
||||
exe_file, _ = QFileDialog.getOpenFileName(self, caption=_tr('Choose setup file'), filter='Exe files (*.exe)', directory=downloads_dir)
|
||||
if not exe_file:
|
||||
return
|
||||
ppdb = shlex.quote(exe_file + '.ppdb')
|
||||
@ -212,8 +216,8 @@ class InstallGame(QDialog):
|
||||
def _handleDoubleClick(self, item):
|
||||
game_dir = item.text().split('/')[0]
|
||||
dlg = QInputDialog(self)
|
||||
dlg.setWindowTitle('Please enter game entry name')
|
||||
dlg.setLabelText('New game entry')
|
||||
dlg.setWindowTitle(_tr('Please enter game entry name'))
|
||||
dlg.setLabelText(_tr('New game entry'))
|
||||
dlg.setTextValue(game_dir)
|
||||
dlg.resize(300, 0)
|
||||
ok = dlg.exec()
|
||||
@ -223,7 +227,7 @@ class InstallGame(QDialog):
|
||||
file_name = re.sub(r'[<>:/\\|?*]', '_', shortcut_name)
|
||||
shortcut = f"{g.shortcuts_dir}/{file_name}.desktop"
|
||||
if Path(shortcut).exists():
|
||||
res = QMessageBox.question(self, 'Shortcut already exuists', 'Shortcut <b>' + file_name + '</b> already exists. Overwrite ?')
|
||||
res = QMessageBox.question(self, _tr('Shortcut already exists'), _tr('Shortcut <b>{0}</b> already exists. Overwrite ?', file_name))
|
||||
if res != QMessageBox.StandardButton.Yes:
|
||||
return
|
||||
src_dir = self.install_dir + '/' + game_dir
|
||||
@ -232,7 +236,7 @@ class InstallGame(QDialog):
|
||||
ppdb = shlex.quote(g.games_dir + '/' + item.text()) + '.ppdb'
|
||||
self.setDisabled(True)
|
||||
if self._installing and Path(dst_dir).exists():
|
||||
res = QMessageBox.question(self, 'Dir already exuists', 'Dir <b>' + game_dir + '</b> already exists. Overwrite ?')
|
||||
res = QMessageBox.question(self, _tr('Dir already exists'), _tr('Dir <b>{0}</b> already exists. Overwrite ?', game_dir))
|
||||
if res != QMessageBox.StandardButton.Yes:
|
||||
return
|
||||
if self._installing:
|
||||
@ -284,8 +288,18 @@ class GameList(QListWidget):
|
||||
|
||||
def reload(self):
|
||||
self.clear()
|
||||
def validate(shortcut):
|
||||
config = ConfigParser()
|
||||
config.read(shortcut)
|
||||
try:
|
||||
if config.get('Desktop Entry', 'Exec'):
|
||||
return True
|
||||
except Exception:
|
||||
return False
|
||||
shortcuts = list(Path(g.shortcuts_dir).glob('*.desktop'))
|
||||
shortcuts += list(Path(g.base_dir).glob('*.desktop'))
|
||||
for shortcut in shortcuts:
|
||||
if validate(shortcut):
|
||||
item = GameItem(self, shortcut)
|
||||
self.addItem(item)
|
||||
self.sortItems()
|
||||
@ -306,17 +320,17 @@ class GameList(QListWidget):
|
||||
return
|
||||
selected = selected[0]
|
||||
menu = QMenu(self)
|
||||
desktop = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_DesktopIcon), 'Add to desktop')
|
||||
restore_gui = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_DialogResetButton), 'Restore PP GUI')
|
||||
remove = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_TrashIcon), 'Remove game entry')
|
||||
uninstall = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_DialogCloseButton), 'Uninstall game')
|
||||
desktop = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_DesktopIcon), _tr('Add to desktop'))
|
||||
restore_gui = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_DialogResetButton), _tr('Restore PortProton GUI'))
|
||||
remove = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_TrashIcon), _tr('Remove game entry'))
|
||||
uninstall = menu.addAction(self.style().standardIcon(QStyle.StandardPixmap.SP_DialogCloseButton), _tr('Uninstall game'))
|
||||
if not selected.game_dir.startswith(g.games_dir):
|
||||
uninstall.setVisible(False)
|
||||
action = menu.exec(self.mapToGlobal(event.pos()))
|
||||
desktop_shortcut = QStandardPaths.writableLocation(QStandardPaths.StandardLocation.DesktopLocation) + '/' + Path(selected.desktop_file).name
|
||||
if action == desktop:
|
||||
if Path(desktop_shortcut).exists():
|
||||
res = QMessageBox.question(self, 'Shortcut already exuists', 'Desktop shortcut <b>' + desktop_shortcut + '</b> already exists. Overwrite ?')
|
||||
res = QMessageBox.question(self, _tr('Shortcut already exists'), _tr('Shortcut <b>{0}</b> already exists. Overwrite ?', desktop_shortcut))
|
||||
if res != QMessageBox.StandardButton.Yes:
|
||||
return
|
||||
shutil.copy(selected.desktop_file, desktop_shortcut)
|
||||
@ -337,8 +351,8 @@ class GameList(QListWidget):
|
||||
self.reload()
|
||||
if action == uninstall:
|
||||
res = QMessageBox.question(self,
|
||||
'Are you shure ?',
|
||||
'Do you really want to uninstall <b>' + selected.get('Name') + '</b><br/>located in "<b>'+selected.game_dir+'</b>" ?'
|
||||
_tr('Are you shure ?'),
|
||||
_tr('Do you really want to uninstall <b>{0}</b><br/>located in "<b>{1}</b>" ?', selected.get('Name'), selected.game_dir)
|
||||
)
|
||||
if res != QMessageBox.StandardButton.Yes:
|
||||
return
|
||||
@ -403,6 +417,36 @@ class GameItem(QListWidgetItem):
|
||||
import signal
|
||||
signal.signal(signal.SIGINT, signal.SIG_DFL)
|
||||
|
||||
lang = {
|
||||
'RUS': {
|
||||
'Install new game': 'Установить игру',
|
||||
'Add game entry': 'Добавить в список',
|
||||
'Reload list': 'Обновить список',
|
||||
'Drop install prefix': 'Удалить установочный префикс',
|
||||
'Are you shure ?': 'Вы уверены ?',
|
||||
'Do you really want to remove<br/><b>{0}</b> ?': 'Вы действительно хотите удалить<br/><b>{0}</b> ?',
|
||||
'Run another setup': 'Запустить установку',
|
||||
'Select game exe file': 'Выберите exe файл игры',
|
||||
'Choose setup file': 'Выберите установочный файл',
|
||||
'Please enter game entry name': 'Введите название игры',
|
||||
'New game entry': 'Название игры',
|
||||
'Shortcut already exists': 'Ярлык уже существует',
|
||||
'Shortcut <b>{0}</b> already exists. Overwrite ?': 'Ярлык <b>{0}</b> уже существует. Перезаписать ?',
|
||||
'Dir already exists': 'Директория уже существует',
|
||||
'Dir <b>{0}</b> already exists. Overwrite ?': 'Директория <b>{0}</b> уже существует. Перезаписать ?',
|
||||
'Add to desktop': 'Добавить на рабочий стол',
|
||||
'Restore PortProton GUI': 'Восстановить PortProton GUI',
|
||||
'Remove game entry': 'Убрать из списка',
|
||||
'Uninstall game': 'Удалить игру',
|
||||
'Do you really want to uninstall <b>{0}</b><br/>located in "<b>{1}</b>" ?': 'Вы действительно хотите удалить <b>{0}</b><br/>расположеную в "<b>{1}</b>" ?'
|
||||
}
|
||||
}
|
||||
def _tr(text, *fmt):
|
||||
res = lang.get(g.locale, {}).get(text, text)
|
||||
if fmt:
|
||||
res = res.format(*fmt)
|
||||
return res
|
||||
|
||||
app = QApplication([])
|
||||
win = MainWindow()
|
||||
win.show()
|
||||
|
@ -1,5 +1,298 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if [ "${update_loc}" = "RUS" ]
|
||||
then
|
||||
KEY_CREDITS=$RANDOM
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=1 --show-uri \
|
||||
--image-path="$PW_GUI_ICON_PATH" --image="port_proton" \
|
||||
--text-align=center --scroll --text="PortProton v. ${install_ver}
|
||||
scripts v. ${scripts_install_ver}
|
||||
|
||||
https://portwine-linux.ru
|
||||
|
||||
Авторские права © 2022 Castro-Fidel (PortWINE-Linux.ru)
|
||||
|
||||
Эта программа поставляется без каких-либо гарантий.
|
||||
Подробнее см. в Лицензия." &
|
||||
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=2 \
|
||||
--text-align=center --scroll --text="Автор: Casro-Fidel (Михаил Тергоев)
|
||||
|
||||
Помощники разработчика и тестировщики:
|
||||
Cefeiko
|
||||
Dezert1r
|
||||
Taz_mania
|
||||
Anton_Famillianov
|
||||
RidBowt
|
||||
chal55rus
|
||||
UserDiscord
|
||||
Survolog
|
||||
gavr
|
||||
RusNor
|
||||
aldiserg
|
||||
an9949an
|
||||
andrey4korop
|
||||
zorn
|
||||
" &
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=3 --text-info --scroll <<< "Лицензия Массачусетского технологического института (MIT License)
|
||||
|
||||
Авторские права (©) 2022 Castro-Fidel (PortWINE-Linux.ru)
|
||||
|
||||
Настоящим предоставляется бесплатное разрешение любому лицу, получившему копию данного
|
||||
программного обеспечения и связанных с ним файлов документации (Программное
|
||||
обеспечение), для в Программном обеспечении без ограничений, включая, помимо прочего,
|
||||
права использовать, копировать, изменять, объединять, публиковать, распространять,
|
||||
сублицензировать и/или продавать копий Программного обеспечения, а также разрешить
|
||||
лицам, которым Программное обеспечение предоставляется для этого при соблюдении
|
||||
следующих условий:
|
||||
|
||||
Вышеприведенное уведомление об авторских правах и это уведомление о разрешении должны
|
||||
быть включены во все копии или существенные части Программного обеспечения.
|
||||
|
||||
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ (КАК ЕСТЬ), БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНЫХ ИЛИ
|
||||
ПОДРАЗУМЕВАЕТСЯ, ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ,
|
||||
ПРИГОДНОСТЬ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ И НЕНАРУШЕНИЕ ПРАВ. НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ
|
||||
АВТОРЫ ИЛИ ВЛАДЕЛЕЦ АВТОРСКИХ ПРАВ НЕСУТ ОТВЕТСТВЕННОСТЬ ЗА ЛЮБЫЕ ПРЕТЕНЗИИ, УЩЕРБ ИЛИ
|
||||
ДРУГОЕ. ОТВЕТСТВЕННОСТЬ, БУДУЩАЯ ПО ДОГОВОРУ, ДЕЛИКТУ ИЛИ ИНЫМ ОБРАЗОМ, ВОЗНИКАЮЩАЯ ИЗ
|
||||
ВНЕ ИЛИ В СВЯЗИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ИЛИ ДРУГИМИ СДЕЛКАМИ В
|
||||
ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ." &
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=4 \
|
||||
--text-info --fontname="Serif bold italic 12" --show-uri --scroll \
|
||||
<<< ' Проект поддержали:
|
||||
https://boosty.to/portwine-linux.ru
|
||||
|
||||
1 1
|
||||
A B
|
||||
AdamArclight666
|
||||
Akai
|
||||
Aleks
|
||||
Alexsei Cherniavskiy
|
||||
Alex Sh
|
||||
Allegra_g
|
||||
AlxChkln
|
||||
amikha1lov
|
||||
Andrei K
|
||||
anisan_sg
|
||||
Another games
|
||||
Apofis Smab
|
||||
apolon
|
||||
Aule Mahal
|
||||
Azartiny Mor
|
||||
BELIJJAaL
|
||||
benya
|
||||
CanBoo
|
||||
chal55rus
|
||||
Coin Hunt
|
||||
Cruze
|
||||
Dadenard
|
||||
Dallasss
|
||||
Daniil Go
|
||||
Dencher12
|
||||
Denis
|
||||
Dezert1r
|
||||
Dima Manshin
|
||||
DIO
|
||||
d.kostroma
|
||||
Dmitriy Tokarev
|
||||
Drakorgaur
|
||||
dunkanMcLoud
|
||||
dupster mailbox
|
||||
Eliot
|
||||
El Mago
|
||||
Ethan Winters
|
||||
Evgen Buiko
|
||||
EvilDevolver
|
||||
fight fox
|
||||
funti2f
|
||||
fusiok
|
||||
GaiverX
|
||||
Gekko
|
||||
Geomant17
|
||||
gg_harper
|
||||
Happy Husky
|
||||
haravara
|
||||
Homyakin
|
||||
Ivan Vlasov
|
||||
ivboss
|
||||
ksandr4370
|
||||
LeGi0neR
|
||||
Lexa XLS
|
||||
Linux Vumtut
|
||||
Lonely Lonely
|
||||
Maksami Cordyceps
|
||||
Maktub
|
||||
Melord
|
||||
MICROFARAT
|
||||
MLogaut
|
||||
Monti Roquefort
|
||||
MrBatonio
|
||||
Nesterik
|
||||
Nikola P.
|
||||
Nuclearsun
|
||||
Nurik
|
||||
Oleg55Rus
|
||||
onix
|
||||
Optimus
|
||||
Ottakvot
|
||||
paulscathedral
|
||||
penguin4ek
|
||||
Pependos
|
||||
PLAFON
|
||||
PlagueEvgeny
|
||||
Rojok56
|
||||
Ruslan Vlasov
|
||||
Rustam
|
||||
Saireg
|
||||
sanelasan
|
||||
sashman
|
||||
Seeropoonya
|
||||
sendependa_dio
|
||||
shecspir
|
||||
Soma
|
||||
sship
|
||||
StGdG
|
||||
Subscript
|
||||
Sudo Connect
|
||||
sugoyako
|
||||
Taras Zagibalov
|
||||
The End
|
||||
tima
|
||||
Tykva
|
||||
ua3dko
|
||||
V1ktr
|
||||
VanBugel
|
||||
VAtiB
|
||||
Vikthor Prieto
|
||||
vlad petrov
|
||||
Vosarat
|
||||
VUMtut
|
||||
Windchester
|
||||
wrager
|
||||
Xpamych
|
||||
Yurec
|
||||
Yuri Emelyanov
|
||||
Zillah Giovanni
|
||||
Zloy Ivan
|
||||
Zorit
|
||||
zorn
|
||||
Александр
|
||||
Александр Абдулов
|
||||
Александр Кладов
|
||||
Александр Лобанов
|
||||
Алексей Ultralin
|
||||
Алексей Войтенко
|
||||
Алексей Галаш
|
||||
Алексей Зубрийчук
|
||||
Алексей Ивушкин
|
||||
Алексей Кравчук
|
||||
Алексей Чугунов
|
||||
Андрей Гусаков
|
||||
Андрей Карпенцов
|
||||
Антоний Дамикан
|
||||
Антон Рудковский
|
||||
Антон Фамилианов
|
||||
Артём К.
|
||||
Валерий Толмачёв
|
||||
Виктор Шварц
|
||||
Виктор Щетинин
|
||||
Виндэта(рог)
|
||||
Виталий Нуров
|
||||
Влад Блинов
|
||||
Владимир Бильдюкевич
|
||||
Владимир Дарвин
|
||||
Влад Кладиев
|
||||
Вячеслав Шитюков
|
||||
Вячеслав Шустров
|
||||
Георгий Гурский
|
||||
Данил Павлов
|
||||
Дед Мазай
|
||||
Денис Мальцев
|
||||
Денис Матій
|
||||
Денис Олефиренко
|
||||
Дмитрий Круглов
|
||||
Дмитрий Мазанка
|
||||
Дмитрий Сидоров
|
||||
Евгений Бебин
|
||||
Евгений Долгополов
|
||||
Евгений Хирвонен
|
||||
Евгений Храмов
|
||||
Егор Кречун
|
||||
Женя Рябушкин
|
||||
Иван Белекеев
|
||||
Коляныч Королёв
|
||||
Константин __
|
||||
Константин Абадонна
|
||||
Леонид
|
||||
Максим Хмара-Миронов
|
||||
Маленькая сосна
|
||||
Марат
|
||||
Марат Рахимов
|
||||
Неизвестый Дмитрий
|
||||
Никита Булавин
|
||||
Николай Гинтов
|
||||
Павел Иванов
|
||||
Павел Пашенцев
|
||||
Равич Ревес
|
||||
Рамиль
|
||||
Рома Б.
|
||||
Роман Игнатьев
|
||||
Роман Паженский
|
||||
Саша
|
||||
Семён Клишин
|
||||
Семён Ярополов
|
||||
Сергей Казёнкин
|
||||
Сергей Круглов
|
||||
Серёга Сапрыкин
|
||||
Стас Толкачёв
|
||||
Тима Суеубаев
|
||||
Тимофей Ковалев
|
||||
Тимур Сафонов
|
||||
Удалить Аккаунт
|
||||
Хоттабыч
|
||||
|
||||
|
||||
Список будет дополняться...' &
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=5 --text="Хотите присоединится и помочь в развитии проекта:" \
|
||||
--title=JOIN --window-icon=group --image=system-config-users --uri-color=red --show-uri \
|
||||
--text-info --scroll <<< \
|
||||
"Website: http://portwine-linux.ru
|
||||
Discord: http://discord.gg/yJSEFjF
|
||||
VK: https://vk.com/portwinelinux
|
||||
-------------------------------------------
|
||||
Стать платным подписчиком:
|
||||
boosty: https://boosty.to/portwine-linux.ru
|
||||
patreon: https://www.patreon.com/portproton
|
||||
Кошельки WebMoney: WMZ-Z135951244401 WME-E325631629973
|
||||
Yandex кошельк: 410012267513818
|
||||
-------------------------------------------
|
||||
Задонатить на стрим:
|
||||
https://www.donationalerts.com/r/portwine_linux" &
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=6 --show-uri --title="THIRD PARTY LIBRARIES" \
|
||||
--fontname="Serif bold italic 10" --text-info <<< " Сторонние библиотеки, которые используются в PortProton
|
||||
|
||||
PortProton собран на основе бесплатных библиотек программного обеспечения:
|
||||
|
||||
WINE-PROTON: https://github.com/ValveSoftware/Proton
|
||||
WINE-PROTON-GE: https://github.com/GloriousEggroll/proton-ge-custom/
|
||||
Kron4ek/Wine: https://github.com/Kron4ek/Wine-Builds
|
||||
YAD: https://github.com/v1cont/yad
|
||||
ZENITY: https://github.com/GNOME/zenity" &
|
||||
|
||||
"${pw_yad_new}" --title "О НАС" --key="${KEY_CREDITS}" --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
|
||||
--center --notebook --no-buttons --tab-pos=bottom \
|
||||
--tab="О PORTPROTON" --tab="АВТОРЫ" --tab="ЛИЦЕНЗИЯ" --tab="СПОНСОРЫ" --tab="ПРИСОЕДИНИТЬСЯ" \
|
||||
--tab="БИБЛИОТЕКИ"
|
||||
|
||||
/usr/bin/env bash -c ${pw_full_command_line[*]}
|
||||
|
||||
else
|
||||
|
||||
KEY_CREDITS=$RANDOM
|
||||
|
||||
"${pw_yad_new}" --plug="${KEY_CREDITS}" --tabnum=1 --show-uri \
|
||||
@ -284,3 +577,4 @@ ZENITY: https://github.com/GNOME/zenity" &
|
||||
--tab="THIRD PARTY LIBRARIES"
|
||||
|
||||
/usr/bin/env bash -c ${pw_full_command_line[*]}
|
||||
fi
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
#Author: Castro-Fidel (PortWINE-Linux.ru)
|
||||
#SCRIPTS_NEXT_VERSION=2122
|
||||
#SCRIPTS_NEXT_VERSION=2123
|
||||
########################################################################
|
||||
export PW_MANGOHUD=0
|
||||
export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt
|
||||
@ -43,7 +43,7 @@ export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}"
|
||||
export PW_WINE_FULLSCREEN_FSR="0"
|
||||
###WINE_PROTON_PW_FOR_GALLIUM_NINE###
|
||||
# export PW_PW_VER="7-26"
|
||||
export PW_PROTON_PW_VER="${PW_GE_VER}"
|
||||
export PW_PROTON_PW_VER="${PW_PROTON_GE_VER}"
|
||||
###WINE_KRON4EK###
|
||||
export PW_WINE_KRON4EK_VER="WINE-7.13-STAGING-TKG-AMD64"
|
||||
#################################################################
|
||||
|
Loading…
Reference in New Issue
Block a user