https://www.altlinux.org/api.php?action=feedcontributions&user=IgorN&feedformat=atomALT Linux Wiki - Вклад [ru]2024-03-29T13:37:37ZВкладMediaWiki 1.38.2https://www.altlinux.org/index.php?title=Pipewire&diff=78550Pipewire2024-02-11T07:48:25Z<p>IgorN: Улучшено форматирование и добавлено описание для улучшения понимания происходящего.</p>
<hr />
<div>Pipewire — новый звуковой сервер, пришедший на смену Pulseaudio.<br />
<br />
Источник: [[С PulseAudio на PipeWire]]<br />
<br />
== Установка пакетов ==<br />
<br />
apt-get update<br />
apt-get install pipewire wireplumber<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable" style="margin-left:2em"<br />
![Список устанавливаемых пакетов:]<br />
|-<br />
|<br />
{{pkg|pipewire}}<br />
{{pkg|pipewire-libs}}<br />
{{pkg|wireplumber}}<br />
{{pkg|libwireplumber}}<br />
{{pkg|gst-plugins-libcamera1.0}}<br />
{{pkg|libcamera}}<br />
{{pkg|libfdk-aac2}}<br />
{{pkg|libgtest}}<br />
{{pkg|liblc3}}<br />
{{pkg|libldac2}}<br />
{{pkg|libmysofa}}<br />
{{pkg|rtkit}}<br />
|}<br />
<br />
== Выключение pulseaudio и включение pipewire ==<br />
<br />
{{Note|Все команды, указанные в разделе, выполнять с правами обычного пользователя.}}<br />
<br />
Отключить pulseaudio:<br />
<syntaxhighlight lang="text"><br />
$ systemctl --user disable --now pulseaudio{,.socket,-x11}<br />
</syntaxhighlight><br />
<br />
В выводе окажется следующее:<br />
<syntaxhighlight lang="text"><br />
Created symlink /home/user/.config/systemd/user/pulseaudio.service → /dev/null.<br />
Created symlink /home/user/.config/systemd/user/pulseaudio.socket → /dev/null.<br />
Created symlink /home/user/.config/systemd/user/pulseaudio-x11.service → /dev/null.<br />
</syntaxhighlight><br />
<br />
Полностью заблокировать запуск pulseaudio:<br />
<syntaxhighlight lang="text"><br />
$ systemctl --user mask pulseaudio{,.socket,-x11}<br />
</syntaxhighlight><br />
<br />
Запустить pipewire и wireplumber:<br />
<syntaxhighlight lang="text"><br />
$ systemctl --user enable --now pipewire{,-pulse}{,.socket} wireplumber<br />
</syntaxhighlight><br />
<br />
Вывод:<br />
<syntaxhighlight lang="text"><br />
Created symlink /home/user/.config/systemd/user/default.target.wants/pipewire.service → /usr/lib/systemd/user/pipewire.service.<br />
Created symlink /home/user/.config/systemd/user/sockets.target.wants/pipewire.socket → /usr/lib/systemd/user/pipewire.socket.<br />
Created symlink /home/user/.config/systemd/user/default.target.wants/pipewire-pulse.service → /usr/lib/systemd/user/pipewire-pulse.service.<br />
Created symlink /home/user/.config/systemd/user/sockets.target.wants/pipewire-pulse.socket → /usr/lib/systemd/user/pipewire-pulse.socket.<br />
Created symlink /home/user/.config/systemd/user/pipewire-session-manager.service → /usr/lib/systemd/user/wireplumber.service.<br />
Created symlink /home/user/.config/systemd/user/pipewire.service.wants/wireplumber.service → /usr/lib/systemd/user/wireplumber.service.<br />
</syntaxhighlight><br />
<br />
== Проверка ==<br />
<br />
<syntaxhighlight lang="text">$ pactl info | grep -i pulsea</syntaxhighlight><br />
<br />
Вывод:<br />
<syntaxhighlight lang="text">Имя сервера: PulseAudio (on PipeWire 0.3.71)</syntaxhighlight></div>IgorNhttps://www.altlinux.org/index.php?title=Pipewire&diff=78549Pipewire2024-02-11T07:32:12Z<p>IgorN: Добавлен список подтягиваемых пакетов.</p>
<hr />
<div>Pipewire — новый звуковой сервер, пришедший на смену Pulseaudio.<br />
<br />
Источник: [[С PulseAudio на PipeWire]]<br />
<br />
== Установка пакетов ==<br />
<br />
apt-get update<br />
apt-get install pipewire wireplumber<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable" style="margin-left:2em"<br />
![Список устанавливаемых пакетов:]<br />
|-<br />
|<br />
{{pkg|pipewire}}<br />
{{pkg|pipewire-libs}}<br />
{{pkg|wireplumber}}<br />
{{pkg|libwireplumber}}<br />
{{pkg|gst-plugins-libcamera1.0}}<br />
{{pkg|libcamera}}<br />
{{pkg|libfdk-aac2}}<br />
{{pkg|libgtest}}<br />
{{pkg|liblc3}}<br />
{{pkg|libldac2}}<br />
{{pkg|libmysofa}}<br />
{{pkg|rtkit}}<br />
|}<br />
<br />
== Выключение pulseaudio и включение pipewire ==<br />
<br />
Производится под пользователем:<br />
<br />
<syntaxhighlight lang="text">$ systemctl --user disable --now pulseaudio{,.socket,-x11}<br />
<br />
$ systemctl --user mask pulseaudio{,.socket,-x11}<br />
Created symlink /home/user/.config/systemd/user/pulseaudio.service → /dev/null.<br />
Created symlink /home/user/.config/systemd/user/pulseaudio.socket → /dev/null.<br />
Created symlink /home/user/.config/systemd/user/pulseaudio-x11.service → /dev/null.<br />
<br />
$ systemctl --user enable --now pipewire{,-pulse}{,.socket} wireplumber<br />
Created symlink /home/user/.config/systemd/user/default.target.wants/pipewire.service → /usr/lib/systemd/user/pipewire.service.<br />
Created symlink /home/user/.config/systemd/user/sockets.target.wants/pipewire.socket → /usr/lib/systemd/user/pipewire.socket.<br />
Created symlink /home/user/.config/systemd/user/default.target.wants/pipewire-pulse.service → /usr/lib/systemd/user/pipewire-pulse.service.<br />
Created symlink /home/user/.config/systemd/user/sockets.target.wants/pipewire-pulse.socket → /usr/lib/systemd/user/pipewire-pulse.socket.<br />
Created symlink /home/user/.config/systemd/user/pipewire-session-manager.service → /usr/lib/systemd/user/wireplumber.service.<br />
Created symlink /home/user/.config/systemd/user/pipewire.service.wants/wireplumber.service → /usr/lib/systemd/user/wireplumber.service.</syntaxhighlight><br />
<br />
== Проверка ==<br />
<br />
<syntaxhighlight lang="text">$ pactl info | grep -i pulsea<br />
Имя сервера: PulseAudio (on PipeWire 0.3.71)</syntaxhighlight></div>IgorNhttps://www.altlinux.org/index.php?title=%D0%A1%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B8%D0%91%D0%9A&diff=78540СправкиБК2024-02-09T07:00:26Z<p>IgorN: Актуализировано. Добавлены ссылки на статью о Wine. Обновлена ссылка на загрузку.</p>
<hr />
<div>Процедура установки программы [https://spravki-bk.ru/ Справки БК]<br />
{{Attention|Печать из СправкиБК под WINE пока не работает.}}<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
= Подготовка среды =<br />
{{Note|В примере представлена установка в стандартный префикс, расположенный в {{path|~/.wine}}. Для программ, требующих для своей работы проприетарные библиотеки от третьих лиц, к коим относится MS .NET, рекомендуется использовать отдельный префикс. C основами по работе с префиксами Wine можно ознакомиться [http://WINE#Префиксы здесь].}}<br />
#[http://WINE#Установка_вручную Установка Wine].<br />
#С помощью [[WINE#Использование_winetricks_для_установки_Windows-компонентов|winetricks]] установить в Wine-префикс пакет ''MS .NET 3.5 SP1'', выполнив в терминале команду с правами обычного пользователя:<br />
#:<pre>$ winetricks -q dotnet35sp1</pre><br />
''-q'' — «тихий» режим установки. При его использовании пропускаются диалоги «мастера установки», что избавляет от рутины. Процесс установки MS .NET может занять длительное время — до ''пары десятков минут''.<br />
<br />
= Установка =<br />
#Загрузите и распакуйте [https://spravki-bk.ru/wp-content/uploads/SpravkiBk_2.5.3_28.06.2023.zip архив] ''(приведённая по ссылке версия может устареть, актуальную см. на [https://spravki-bk.ru/ странице загрузки])''.<br />
#Установите с правами обычного пользователя, указав актуальный путь до установочного файла:<br />
#:<pre>$ wine msiexec /i ~/Загрузки/SpravkiBk-*-Setup.msi</pre><br />
#Закройте терминал.<br />
<br />
{{Note|Для переноса программы на другой компьютер, достаточно скопировать префикс и расположить в желаемом месте пространства каталогов пользователя. В зависимости от способа копирования может потребоваться смена владельца на содержимое префикса с помощью [[Управление_правами#Chown|chown]]. Останется создать кнопки запуска для удобства использования программы.}}<br />
<br />
= Работа =<br />
[[Изображение:Spravkibk.png]]<br />
[[Категория:Enterprise Software]]</div>IgorNhttps://www.altlinux.org/index.php?title=WINE&diff=78539WINE2024-02-09T05:51:14Z<p>IgorN: Примечания обёрнуты в соответствующий шаблон. Улучшено построение предложения в некоторых примечаниях.</p>
<hr />
<div>=== О Wine ===<br />
'''Wine''' — Wine Is Not Emulator — это свободная реализация среды ОС Windows поверх Linux (*UNIX) подсистем. Исполнение Windows-программ производится напрямую без какой-либо эмуляции и с минимальными накладными расходами.<br />
<br />
* Официальный сайт: [https://www.winehq.org/ winehq.org]<br />
* Руководство пользователя: [https://wiki.winehq.org/Wine_User's_Guide Wine_User's_Guide]<br />
* Отчёты пользователей с описанием опыта запуска тех или иных Windows-программ: [https://appdb.winehq.org/ appdb.winehq.org]<br />
* Отчёты по запуску игр: [https://www.protondb.com/ protondb.com]<br />
<br />
=== Установка Wine ===<br />
Wine состоит из нескольких основных и вспомогательных пакетов:<br />
* {{pkg|wine}} — среда Wine для выполнения 64-битных программ.<br />
* {{pkg|i586-wine}} — 32-х битная среда Wine.<br />
* {{pkg|wine-common}} — основные утилиты среды Wine (wineboot, winecfg, wineconsole, wineserver и т.д.).<br />
* {{pkg|wine-programs}} — вспомогательные программы (notepad, winefile, winemine).<br />
* {{pkg|wine-gecko}} — свободная реализация Internet Explorer на основе браузерного движка [https://wiki.winehq.org/Gecko Gecko].<br />
* {{pkg|wine-mono}} — [https://wiki.winehq.org/Mono свободная реализация .NET Framework]. Охватывает версии .NET, начиная с 1.x до 4.8.x.<br />
* {{pkg|winetricks}} — [https://wiki.winehq.org/Winetricks скрипт], предоставляющий различные опции по управлению средой Wine. Чаще всего используется для упрощения установки несвободных компонентов Windows и ряда Windows-программ от сторонних разработчиков.<br />
<br />
==== На этапе установки дистрибутива ====<br />
Если во время установки дистрибутива Альт были выбраны '''Эмуляторы''' или '''Виртуализация''' и '''Запуск программ Windows''', то Wine будет установлен автоматически (после может потребоваться установка некоторых 32-битных библиотек - см. пункт [[WINE#Нюансы_по_i586-wine|Нюансы по i586-wine]]):<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable" style="margin-left:2em"<br />
![Список устанавливаемых пакетов при автоматической установке:]<br />
|-<br />
|<br />
{{pkg|wine}}<br />
{{pkg|wine-common}}<br />
{{pkg|i586-libnss-mdns}}<br />
{{pkg|i586-libnss-myhostname}}<br />
{{pkg|i586-xorg-dri-*}}<br />
{{pkg|wine-mono}}<br />
{{pkg|wine-gecko}}<br />
{{pkg|winetricks}}<br />
{{pkg|i586-wine}}<br />
{{pkg|i586-wine-cpcsp_proxy}}<br />
{{pkg|virtualbox}}<br />
|}<br />
<br />
==== Установка вручную ====<br />
Если '''Эмуляторы''' или '''Виртуализация''' и '''Запуск программ Windows''' во время установки не были выбраны, то Wine можно установить вручную (после может потребоваться установка некоторых 32-битных библиотек - см. пункт [[WINE#Нюансы_по_i586-wine|Нюансы по i586-wine]]):<br />
<br />
$ su -<br />
# apt-get update<br />
# apt-get install wine-full i586-wine<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable" style="margin-left:2em"<br />
![Список устанавливаемых пакетов при ручной установке:]<br />
|-<br />
|<br />
{{pkg|cabextract}}<br />
{{pkg|libOSMesa}}<br />
{{pkg|wine}}<br />
{{pkg|wine-common}}<br />
{{pkg|wine-full}}<br />
{{pkg|wine-gecko-*}}<br />
{{pkg|wine-mono-*}}<br />
{{pkg|wine-programs}}<br />
{{pkg|winetricks}}<br />
{{pkg|i586-wine}}<br />
{{pkg|i586-*}}<br />
|}<br />
<br />
==== Установка с помощью Epm ====<br />
{{Примечание|<br />
Epm - единая команда управления пакетами, разработанная в компании Etersoft (основная статья - [[Epm]]). Позволяет устанавливать как пакеты из репозитория ALT Linux, так и чужие пакеты (предназначенные для другой ОС на базе Linux). Для установки epm в ALT Linux:<br />
$ su -<br />
# apt-get update<br />
# apt-get install eepm<br />
}}<br />
{{Attention|Установка из репозитория Десятой платформы p10 может быть неудачна, в случае возникновения ошибки выполните установку wine вручную или обновите epm из стороннего репозитория.}}<br />
su -<br />
apt-get update<br />
epm play wine<br />
<br />
С помощью скрипта [[Epm]] будут установлены все вышеперечисленные пакеты, а также выполнена установка некоторых 32-битных библиотек - см. пункт [[WINE#Нюансы_по_i586-wine|Нюансы по i586-wine]]).<br />
<br />
==== Нюансы по i586-wine ====<br />
На момент 2023 года поддержка выполнения 32-х битных программ в 64-х битной среде (Windows-on-Windows) находится на завершающем этапе разработки, но пока не используется в сборке для репозитория платформы. Поэтому всё ещё требуется отдельная установка 32-х битой среды Wine и попутного комплекта 32-х битных Linux-библиотек. Всё необходимое устанавливается при варианте установки посредством {{cmd|epm play wine}}.<br />
<br />
В случае, когда пакет {{pkg|i586-wine}} отсутствует, при запуске 32-х битной программы будет выведено предупреждение и программа не заработает:<br />
{{cmd|It looks like i586-wine is missing, you should install it. As root, please execute "apt-get install i586-wine"}}<br />
<br />
В случае, когда пакет {{pkg|i586-wine}} был установлен отдельно, могут потребоваться некоторые 32-х битные библиотеки (в основном 32-х битные графические драйвера). Это легко исправить выполнением следующей команды:<br />
<br />
epm play i586-fix<br />
<br />
Если пакет i586-wine был установлен после создания префикса, то префикс придётся удалить и пересоздать, иначе программы в нём перестанут работать и будет выведена ошибка:<br />
{{cmd|wine: could not load kernel32.dll, status c0000135}}<br />
<br />
Пример пересоздания префикса. Команды выполняются с правами обычного пользователя.<br />
Полное удаление:<br />
rm -r /home/$USER/.wine<br />
Пересоздание префикса по стандартному пути ''/home/$USER/.wine'':<br />
wineboot -i<br />
<br />
<br />
=== Основы по использованию Wine ===<br />
<br />
==== Префиксы ====<br />
Wine управляет префиксами (prefix), которые можно назвать отдельными экземплярами ОС Windows.<br />
* Стандартный префикс располагается в ''/home/$USER/.wine''.<br />
* Префикс содержит в себе файлы реестра, каталоги, набор библиотек и программ, расположенных по той же структуре, как и в оригинальной Windows.<br />
[[Файл:Altlinux wine basics a 10.png|800px|center]]<br />
** ''dosdevices'' — в каталоге располагаются символические ссылки на каталоги, которые имитируют Windows-тома (диски). Тома обозначаются латинской буквой. К примеру, системный том Windows по умолчанию обозначается «C:».<br />
** ''drive_c'' — условный том «C:», в котором располагаются компоненты Windows.<br />
[[Файл:Altlinux wine basics a 20.png|800px|center]]<br />
** ''.update-timestamp'' — [https://en.wikipedia.org/wiki/Unix_time метка времени].<br />
** ''system.reg'', ''user.reg'' и ''userdef.reg'' являются файлами [https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B5%D1%81%D1%82%D1%80_Windows реестра Windows].<br />
* По умолчанию создаются 64-х битные префиксы.<br />
* Компоненты эталонного префикса, из которого создаются все прочие создаваемые пользователем префиксы, находятся в ''/usr/lib64/wine/x86_64-windows/''.<br />
* Wine-префиксы на жаргоне называют "бутылками".<br />
<br />
<br><br />
===== Особенности и ограничения префиксов =====<br />
* Название префикса может быть любым, но для избежания затруднений следует придерживаться следующего:<br />
** Название префикса принято начинать с ''.wine''. Пример: ''.wine_nalogul''. В этом случае сразу понятно, что это Wine-префикс и что в него установлена программа Налогоплательщик ЮЛ.<br />
** Название должно содержать только латинские буквы и арабские цифры. Из символов можно применять знак точки, расположенный в самом начале названия, что означает скрытый каталог.<br />
** Название не должно содержать пробелы, иначе путь придётся экранировать кавычками, чтобы интерпретатор мог корректно его обработать. В противном случае можно легко столкнуться со следующей ошибкой: ''wine: invalid directory in WINEPREFIX: not an absolute path''<br />
* Можно создавать префиксы в любых желаемых каталогах, принадлежащих пользователю.<br />
* Ограничений по количеству префиксов нет.<br />
* '''''Категорически недопустимо создание префиксов с правами суперпользователя'''''. Это крайне небезопасно — программы в префиксе получают доступ ко всем файлам системы. Так же обычный пользователь не сможет взаимодействовать с префиксом, так как им будет владеть суперпользователь.<br />
* Wine поддерживает одновременную работу множества Windows-программ, запущенных в одном или нескольких префиксах.<br />
* Не смотря на то, что Wine позволяет запускать исполняемые файлы Windows-программ из любого места пространства пользователя, правильнее это делать, разместив исполняемый файл внутри префикса. Оптимальным вариантом будет размещение в его корневом каталоге: ''home/$USER/.wine/drive_c''. Такой подход связан с тем, что некоторые Windows-программы становятся неработоспособными, если расположены вне пространства префикса. Поэтому лучше предупредить возникновение подобных проблем и располагать исполняемые файлы внутри префикса.<br />
* Крайней нежелательно размещать префикс на разделе с файловой системой NTFS (основная файловая система OC Windows). Данная файловая система не поддерживает систему прав и атрибутов Linux, что приведёт к проблемам с запуском программ.<br />
* '''''НЕДОПУСТИМО устанавливать в префикс Windows-драйвера для видеокарт, переферийных устройств, звуковых карт и подобного оборудования. Потенциально это может привести к сбою устройства, а в случае таких устройств, как мышь и клавиатура — полной неработоспособности.'''''<br />
* Wine-префикс не предоставляет существенной изоляции Windows-процессов от пространства Linux-пользователя, поэтому не стоит пытаться запускать вредоносные программы для Windows, так как потенциально они способны нанести вред Linux-системе. К примеру, запущенный в префиксе шифровальщик может зашифровать не только префикс, но и выйти за его пределы, зашифровав все каталоги и файлы, принадлежащие Linux-пользователю, так как все процессы, запущенные в префиксе, выполняются с правами пользователя.<br />
* Настоятельно не рекомендуется устанавливать всё в один префикс, оптимальнее создавать новый под каждую программу. Это особенно критично, если для работы той или иной программы требуется установить несвободный Windows-компонент. В таком случае может получиться так, что компонент, улучшающий работоспособность одной программы, будет приводить к сбоям других программ, что сильно усложнит отладку и выяснение причин сбоев. В свою очередь, использование отдельных префиксов для каждой программы, требующей установку несвободных Windows-компонентов, позволит полностью избежать подобных проблем.<br />
* Префиксы можно свободно перемещать и копировать, что удобно для создания резервных копий подготовленных под ту или иную задачу экземпляров.<br />
<br />
<br><br />
===== Создание префиксов =====<br />
<br />
Как было ранее отмечено, можно создавать собственные префиксы и не ограничиваться стандартным ''/home/$USER/.wine''. Пример создания нового префикса (выполнять от обычного пользователя):<br />
WINEPREFIX="/home/$USER/.wine_new" wineboot -i<br />
Пояснения:<br />
* ''WINEPREFIX'' — это переменная окружения, которой требуется передать путь до каталога размещения компонентов префикса. В примере был передан путь до каталога ''wine_new'' причём он не обязательно должен существовать заранее.<br />
* ''wineboot -i'' — утилита отвечает за создание префикса, подготовку его к работе, имитацию перезагрузки и выключения ОС Windows. Ключ «-i» инициирует создание префикса.<br />
{{Note|Префикс так же будет автоматически создан при попытке его обновления (wineboot -u), конфигурирования (winecfg) и прочих подобных манипуляциях.}}<br />
<br />
По умолчанию создаются 64-х битные префиксы, причём в них могут выполняться и 32-х битные программы. Но бывают случаи, когда требуется «чистый» 32-битный префикс. Его можно создать следующим образом:<br />
WINEARCH=win32 WINEPREFIX="/home/$USER/.wine32_new" wineboot -i<br />
Пояснения:<br />
* ''WINEARCH'' — с помощью этой переменной окружения можно управлять разрядностью создаваемых префиксов. При передаче значения «win32» будет создан 32-х битный префикс.<br />
{{Note|У ранее созданного префикса нельзя поменять разрядность.}}<br />
<br />
<br><br />
==== Запуск программ ====<br />
<br />
{{Note|Прямой запуск «.exe» в Альт отключен в целях безопасности. Если прямой запуск необходим, потребуется вручную настроить выполнение MIME-типа «.exe» с помощью Wine.}}<br />
<br />
Алгоритм действий для запуска той или иной Windows-программы:<br />
* Разместить исполняемый файл в корне префикса (./drive_c/программа.exe).<br />
** Запустить: {{cmd|wine /home/$USER/.wine/drive_c/программа.exe}}<br />
* Если не запускается, ознакомиться с историями успешного запуска на [https://appdb.winehq.org/ appdb.winehq.org] и на [https://www.altlinux.org/ altlinux.org].<br />
* По необходимости с помощью winetricks установить необходимые проприетарные Windows-компоненты (С++ redistributable, .NET Framework, Microsoft Media Foundation и т.д.).<br />
<br><br />
Запуск на примере [https://store.steampowered.com/ клиента Steam] с созданием отдельного префикса с названием ''.wine_steam''. Команды выполняются с правами обычного пользователя. Создание префикса:<br />
WINEPREFIX=/home/$USER/.wine_steam wineboot -i<br />
<br />
Поместить в префикс ранее загруженный установочный файл '''''SteamSetup.exe''''':<br />
mv /home/$USER/Downloads/SteamSetup.exe /home/$USER/.wine_steam/drive_c/<br />
<br />
Запустить исполняемый файл с указанием абсолютного пути:<br />
WINEPREFIX=/home/$USER/.wine_steam wine /home/$USER/.wine_steam/drive_c/SteamSetup.exe<br />
<br />
Альтернативный вариант. Wine позволяет использовать имитацию Windows-путей, где точкой отсчёта является том «C:» — корень Wine-префикса '''''./drive_c'''''. Пример:<br />
WINEPREFIX=/home/$USER/.wine_steam wine 'C:/SteamSetup.exe'<br />
{{Note|Путь в стиле DOS-Windows следует экранировать кавычками.}}<br />
<br />
Результат:<br />
[[Файл:Altlinux wine basics b 10.png|center]]<br />
<br />
После установки будет создана кнопка запуска Steam. В ней автоматически прописывается команда на запуск установленной программы из конкретного префикса, что облегчает последующий запуск. Пример команды из кнопки запуска:<br />
env WINEPREFIX="/home/$USER/.wine_steam" wine C:\\\\users\\\\Public\\\\Desktop\\\\Steam.lnk<br />
<br />
Видно, что запуск производится из нужного префикса и с Windows-ярлыка ''Steam.lnk''.<br />
Можно создавать собственные кнопки запуска, чтобы каждый раз не набивать (или копировать откуда-то) команду на запуск той или иной Windows-программы.<br />
<br><br />
Подобным образом производится запуск любых программ с исполняемым файлом ''.exe''.<br />
<br />
<br><br />
<br />
===== Запуск bat-файлов — «батников» =====<br />
<br />
Ранее для запуска необходимо было задействовать [https://wiki.winehq.org/Start start], но с выходом Wine 8.0 эта опция стала применяться автоматически. Теперь достаточно запускать в обычном режиме:<br />
WINEPREFIX=/home/$USER/.wine wine 'C:/script.bat'<br />
<br />
Альтернативный устаревший вариант:<br />
WINEPREFIX=/home/$USER/.wine wine start 'C:/script.bat'<br />
<br />
<br><br />
===== Установка программы из установочного пакета msi =====<br />
Ранее запуск таких пакетов отличался от запуска ''.exe'', но ныне, начиная с Wine 8.0, запуск производится без задействования дополнительных опций.<br />
<br />
<br><br />
<br />
Пример установки программы [https://www.nalog.gov.ru/rn77/program/5961229/ Налогоплательщик ЮЛ] (версия 4.81) с созданием префикса с названием ''wine32nalogul'' Команды выполняются с правами обычного пользователя. Для этой программы желательно использовать 32-х битный префикс, причём это становится необходимым, если планируется использовать печать с двумерным штрих-кодом PDF-417. Создание 32-х битного префикса:<br />
WINEARCH=win32 WINEPREFIX=/home/$USER/.wine32nalogul wineboot -i<br />
<br />
Поместить в префикс ранее загруженный установочный файл ''nalogul481.msi''<br />
mv /home/$USER/Downloads/nalogul481.msi /home/$USER/.wine32nalogul/drive_c/<br />
<br />
Запустить установочный пакет ''msi'' с указанием пути в стиле DOS-Windows:<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine 'C:/nalogul481.msi'<br />
<br />
Альтернативный устаревший вариант с задействованием ''msiexec'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine msiexec /i 'C:/nalogul481.msi'<br />
<br />
Ещё один вариант — с задействованием ''start'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine start 'C:/nalogul481.msi'<br />
<br />
Результат:<br />
[[Файл:Altlinux wine basics c 10.png|center]]<br />
<br />
<br><br />
===== Использование winetricks для установки Windows-компонентов ===== <br />
<br />
В предыдущем разделе был рассмотрен запуск установщика «Налогоплательщик ЮЛ», но для полноценной работы программы, в связи с её специфической реализацией, (на момент 2023 года) требуются проприетарные Windows-компоненты:<br />
* msxml3<br />
* msxml4<br />
* msxml6<br />
* corefonts<br />
Windows-компоненты удобнее всего устанавливать с помощью [https://wiki.winehq.org/Winetricks winetricks], который устанавливается вместе с прочими Wine-пакетами при установке посредством {{cmd|apt-get install wine-full}}.<br />
<br />
<br><br />
За раз можно установить несколько Windows-компонентов, перечислив их через пробел. Пример установки с помощью winetricks:<br />
WINEPREFIX=/home/$USER/.wine32nalogul winetricks -q msxml3 msxml4 msxml6 corefonts<br />
Пояснения:<br />
* ''-q'' — «тихий» режим установки. При его использовании пропускаются диалоги «мастера установки», что избавляет от рутины. В данном случае установка может занять довольно длительное время — до пары десятков минут.<br />
* Все перечисленные Windows-компоненты будут загружены из интернета в автоматическом режиме. Установочные файлы компонентов разместятся в ''home/$USER/.cache/winetricks'' После установки их можно удалить.<br />
<br />
Налогоплательщик ЮЛ относится к программам, которые не могут запуститься без задействования ''start /unix'', имитирующего файловые ассоциации Windows Explorer (файловый менеджер ОС Windows) и устраняющего проблемы с интерпретацией UNIX-путей. Команда на запуск выглядит подобным образом:<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine start /unix 'C:/Налогоплательщик ЮЛ/INPUTDOC/inputdoc.exe'<br />
Пояснения:<br />
* В связи с тем, что в пути до исполняемого файла программы есть пробел, путь необходимо экранировать кавычками — 'C:/Налогоплательщик ЮЛ/INPUTDOC/inputdoc.exe'.<br />
* Из-за необходимости использования ''start /unix'' потребуется отредактировать команду в кнопке запуска:<br />
[[Файл:Altlinux wine basics c 20.png|1000px|center]]<br />
* Из-за наличия пробела в пути, там же в настройках кнопки запуска, необходимо экранировать кавычками путь в строке «Рабочий каталог».<br />
<br />
Результат запуска «Налогоплательщик ЮЛ»:<br />
[[Файл:Altlinux wine basics c 30.png|1000px|center]]<br />
<br />
<br><br />
===== Прямое указание рабочего каталога =====<br />
<br />
Существуют программы, которым необходимо напрямую указывать [https://ru.wikipedia.org/wiki/Рабочий_каталог рабочий каталог] (working directory), иначе они не смогут найти все необходимые для запуска ресурсы, так как те находятся в каталоге уровнем выше, в то время как поиск ресурсов производится сначала в каталоге с исполняемым файлом, после в его подкаталогах рекурсивно в глубину, а затем в ''C:\windows''. Следовательно, такие программы окажутся неработоспособными при прямом запуске. В этом случае потребуется вручную указать рабочий каталог — отправную точку для рекурсивного поиска всех нужных программе ресурсов.<br />
<br />
Это можно осуществить двумя способами: создать кнопку запуска и указать в ней путь до рабочего каталога или прямо указать в команде на запуск. На примере игры STALKER Clear Sky рассмотрим второй способ.<br />
<br />
<br><br />
Вводная:<br />
* Создан префикс с названием ''.wine64clearsky''<br />
* Путь установки игры в префиксе: ''C:/Program Files (x86)/STALKER Clear Sky''<br />
* Исполняемый файл игры ''xrEngine.exe'' находится в каталоге ''./STALKER Clear Sky/'''bin'''''.<br />
* Ресурсы игры находятся в каталогах:<br />
** ''./STALKER Clear Sky/'''levels'''''<br />
** ''./STALKER Clear Sky/'''Localization'''''<br />
** ''./STALKER Clear Sky/'''patches'''''<br />
** ''./STALKER Clear Sky/'''resources'''''<br />
<br />
Отправная точка для успешного поиска ресурсов находится уровнем выше (каталог ''./STALKER Clear Sky/'', чем расположение исполняемого файла (''./STALKER Clear Sky/bin/xrEngine.exe''), тем самым при прямом выполнении игра не найдёт ресурсы:<br />
[[Файл:Altlinux wine basics clearsky.png|center]]<br />
<br />
Это решается следующим образом:<br />
WINEPREFIX=/home/$USER/.wine64clearsky wine start /d 'C:/Program Files (x86)/STALKER Clear Sky/' ./bin/xrEngine.exe<br />
<br />
Пояснения:<br />
* ''start /d'' — с опцией /d по указанному пути обозначается рабочий каталог, который станет отправной точкой в рекурсивном поиске ресурсов для запуска программы.<br />
* С тем учётом, что рабочий каталог указан, можно указать относительный путь до исполняемого файла. В данном случае ''./bin/xrEngine.exe''.<br />
<br />
Благодаря этому, программа сможет найти все необходимые для запуска ресурсы.<br />
<br />
<br><br />
===== Установка, запуск и удаление программ в графическом режиме =====<br />
<br />
''winefile'' — файловый менеджер Wine с графическим интерфейсом, схожий по функционалу с Windows Explorer (Проводник Windows). С его помощью можно осуществлять различные операции над файлами и каталогами в префиксе, включая запуск Windows-программ.<br />
<br />
Пример запуска файлового менеджера для префикса с названием ''.wine32nalogul'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine winefile<br />
<br />
[[Файл:Altlinux wine basics winefile.png|center]]<br />
<br />
Запуск Windows-программ осуществляется двойным щелчком по исполняемому файлу или ярлыку (.lnk):<br />
<br />
[[Файл:Altlinux wine basics winefile exec.png|center]]<br />
<br />
В целом логика управления во многом аналогична типичному файловому менеджеру Linux. Стоит отметить, что файлы, удалённые через файловый менеджер Wine, окажутся в обычной системной корзине (trash:///).<br />
<br />
<br><br />
Установленные в префикс программы можно удалить в графическом режиме через «Панель управления» и «Установка/удаление программ»:<br />
<br />
[[Файл:Altlinux wine basics winefile control.png|center]]<br />
<br />
В открывшемся окне из списка выбрать ранее установленную программу и нажать кнопку «Удалить»:<br />
<br />
[[Файл:Altlinux wine basics control.png|center]]<br />
<br />
Альтернативным способом открытия «Установка/удаление программ» (''uninstaller'') является прямой запуск. Пример:<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine uninstaller<br />
<br />
<br><br />
===== Принудительное завершение работы сбойных программ ===== <br />
<br />
Бывают случаи, когда работу сбойной программы довольно неудобно завершать штатными средствами Linux, особенно в случаях, когда программа приводит к зависанию завершения работы процессов префикса: ''services.exe'', ''winedevice.exe'', ''plugplay.exe'' и т.д. Принудительно завершить работу всех программ в префиксе можно следующим образом:<br />
WINEPREFIX=/home/$USER/.wine wineboot -k<br />
Альтернативный вариант с тем же эффектом:<br />
WINEPREFIX=/home/$USER/.wine wineserver -k<br />
<br />
Выполнение этих команд является эквивалентом нажатия кнопки ''Reset'', при этом будет «принудительно перезагружен» только указанный префикс, а не вся система.<br />
<br />
Более мягким вариантом, а так же удобным способом ознакомиться со всеми активными процессами префикса, является использование штатной программы ''taskmgr'' — «Диспетчер задач». Пример запуска для префикса с названием ''.wine32nalogul'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine taskmgr<br />
Демонстрация содержимого вкладок (объединены в одну картинку):<br />
[[Файл:Altlinux wine basics taskmgr.png|900px|center]]<br />
<br />
<br><br />
==== Удаление префиксов ====<br />
<br />
Самым удобным способом является удаление посредством winetricks:<br />
WINEPREFIX=/путь/до/префикса winetricks annihilate<br />
<br />
В этом случае будут удалены:<br />
* Каталог префикса вместе со всем содержимым.<br />
* Кнопки запуска и миниатюры для программ, установленных в удаляемый префикс.<br />
Тем самым не остаётся никаких остаточных файлов.<br />
<br />
Если по какой-то причине префикс был удалён вручную, останутся некоторые файлы, которые придётся зачистить так же вручную.<br />
Место хранения кнопок запуска:<br />
~/.local/share/applications/wine/<br />
<br />
Место хранения миниатюр, включая тех программ, что установлены в Wine:<br />
~/.local/share/icons/hicolor/<br />
<br />
Так же можно удалить ненужные Windows-установщики, загруженные winetricks при установке Windows-компонентов в префикс:<br />
~/.cache/winetricks/<br />
<br />
=== Возможности, предоставляемые Wine ===<br />
<br />
Wine позволяет запускать 32- и 64-битные исполняемые файлы (PE executable), имеющие расширение .exe и предназначенные для выполнения в Windows-совместимом окружении. Wine предоставляет все необходимые для запуска программ динамические библиотеки (.dll-файлы), а также поддерживает установку и работу дополнительных компонент (библиотек), требуемых программами. Такая установка может выполняться через инструмент установки сторонних дополнений winetricks или же непосредственно инсталлятором программы.<br />
<br />
В частности, поддерживаются такие интерфейсы как<br />
* GDI;<br />
* GDIPlus;<br />
* Print;<br />
* CryptoAPI (частично);<br />
* Internet Explorer (частично);<br />
* DirectX;<br />
* видео- и аудио-кодеки;<br />
* .NET (в реализации Mono);<br />
* кодирование и раскодирование изображений в форматах JPEG, PNG, GIF, TIFF, BMP;<br />
* OpenGL;<br />
* ODBC;<br />
* LDAP (частично);<br />
<br />
В частности, поддерживается установка и работа следующих сторонних дополнений:<br />
* библиотек времени выполнения (runtime) для программ, собранных в средах разработки Visual C++ версий от 2003 до 2019 включительно, а также версии 6;<br />
* Microsoft Data Access Components (MDAC 2.7, MDAC 2.8)<br />
* MS Jet 4.0<br />
* Microsoft .NET версий от 1.1 до 4.8 включительно;<br />
* .NET Core версий 2.2 и 3.0;<br />
* Microsoft Visual FoxPro версий от 6.0 до 9.0 включительно.<br />
<br />
<br><br />
==== Реестр в Wine ====<br />
<br />
Каждый Wine-префикс имеет собственный экземпляр реестра Windows. Основные особенности:<br />
* Реестр префикса состоит из нескольких файлов: ''system.reg'', ''user.reg'' и ''userdef.reg''.<br />
** Файлы располагаются в корневом каталоге префикса. Пример: ~/.wine/<br />
* Иерархия разделов реестра Wine-префикса аналогична Windows.<br />
* В реестре хранятся различные настройки среды префикса.<br />
* Дерево реестра из оригинальной ОС Windows не совместимо с реестром Wine и наоборот.<br />
** В реестр Wine-префикса можно импортировать отдельные записи из reg-файлов, предназначенных для Windows.<br />
* В Wine реализованы стандартные Windows-утилиты для работы с реестром.<br />
** [https://wiki.winehq.org/Regedit regedit] — утилита с графическим интерфейсом, идентичным оригинальной программе.<br />
** [https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/reg reg] — утилита для манипуляций с записями в реестре через терминал.<br />
** Файлы реестра Wine можно редактировать обычным текстовым редактором.<br />
* [https://wiki.winehq.org/Useful_Registry_Keys Ключи реестра Wine-префикса].<br />
<br />
Пример запуска regedit для префикса с названием ''.wine'':<br />
WINEPREFIX=/home/$USER/.wine wine regedit<br />
<br />
[[Файл:Altlinux wine basics regedit.png|центр]]<br />
<br />
<br><br />
==== Переключение транслятора ====<br />
<br />
Для работы программ, задействующих DirectX, в Wine используется специальный транслятор, который преобразует вызовы API DirectX в OpenGL или Vulkan.<br />
<br />
Трансляция в OpenGL имеет значительные накладные расходы, что выражается в потерях до 40% производительности в отдельных случаях и до 20% в среднем. Имеет высокую совместимость со старыми видеокартами.<br />
<br />
Транслятор на основе Vulkan более производительный, но требует относительно современного оборудования: видеокарты от 2016 года с поддержкой спецификации Vulkan 1.3. Потери редко превышают 20% и, благодаря более продвинутым качественным драйверам и подсистемам, производительность частенько несколько выше (до 10%), чем в Windows.<br />
<br />
Кроме отмеченных трансляторов, в Wine присутствует свободная реализация [https://learn.microsoft.com/en-us/windows/win32/gdi/windows-gdi GDI], который можно задействовать для правильной отрисовки графики в некоторых программах 90-х и начала 2000-х годов. К примеру, [https://store.steampowered.com/app/575690/PARKAN/ Parkan Хроника империи].<br />
<br />
По заявлению разработчиков, в 2022 году между трансляторами был достигнут паритет по поддержке спецификаций DirectX, поэтому предпочтительно задействовать Vulkan-транслятор. При этом стоит отметить, что OpenGL-транслятор всё-таки имеет более высокую совместимость со старыми программами (по крайней мере, на момент 2023 года).<br />
<br />
На момент 2023 года Vulkan-транслятор не используется по умолчанию и его необходимо задействовать вручную. Актуальным способом является переключение через переменную окружения ''WINE_D3D_CONFIG''.<br />
<br />
Пример:<br />
WINE_D3D_CONFIG='renderer=vulkan' WINEPREFIX=/home/$USER/.wine wine 'C:/Program Files (x86)/STALKER Clear Sky/STALKER Clear Sky.lnk'<br />
Пояснения:<br />
* Переменной окружения ''WINE_D3D_CONFIG'' необходимо передать значение 'renderer=vulkan'.<br />
* Vulkan-транслятор будет задействован для конкретной программы.<br />
<br />
{{Note|Таким же способом можно задействовать GDI — WINE_D3D_CONFIG ='renderer=gdi'}}<br />
<br />
<br><br />
==== Ассоциация файлов с родными приложениями Linux ====<br />
Нужна для возможности открытия документов из приложений в Wine через нативные программы в Линуксе.<br />
<br />
Для этого создайте файл {{path|/usr/local/bin/winenative}} со следующим содержимым:<br />
<source lang="sh">#!/bin/sh<br />
$1 "`wine winepath -u "$2"`"</source><br />
Сделайте его исполняемым: {{cmd|chmod +x /usr/local/bin/winenative}}<br />
<br />
Затем от пользователя запускаем редактор реестра: {{cmd|wine regedit}}. В '''HKEY_CLASSES_ROOT''' ищем ключ - pdffile для PDF-файлов, pngfile для PNG изображений и т.п., в нем будет ''shell > open''. В ''open'' может быть ''ddeexec'', который нужно удалить (если оставить, необходимая программа хоть и откроется, однако выскочит сообщение от Wine - Ошибка DDE.). Нам необходимо создать или изменить ключ ''command''. Значение ключа выставляем:<br />
{{cmd|"Z:\usr\local\bin\winenative" xdg-open "%1"}}<br />
Должно получиться так:<br />
<br />
[[Файл:Pdf_regedit.png]]<br />
<br />
После этого настроенный тип файла будет открываться в программе по умолчанию в Линуксе.<br />
<br />
Для настройки нестандартных для Linux файлов - например doc/docx - настройка немного отличается. Нужно полностью создать следующую цепочку:<br />
HKEY_CLASSES_ROOT\docfile\shell\open\command<br />
с аналогичным значением: {{cmd|"Z:\usr\local\bin\winenative" xdg-open "%1"}}. После этого создать ветку ''HKEY_CLASSES_ROOT\doc'' со значением ''docfile''<br />
<br />
=== Варианты Wine ===<br />
<br />
В дистрибутивах ALT Linux представлено несколько вариантов Wine:<br />
* {{pkg|wine}} -- сборка Wine с добавлением патчей проекта [https://www.wine-staging.com/ Wine-staging] и доработанного силами ALT Linux Team и компании [http://etersoft.ru/ Etersoft]. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.<br />
* {{pkg|wine-stable}} -- сборка стабильного релиза Wine c добавлением патчей проекта [https://www.wine-staging.com/ Wine-staging] и доработанного силами ALT Linux Team и компании [http://etersoft.ru/ Etersoft]. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.<br />
* {{pkg|wine-vanilla}} -- сборка оригинального Wine от [https://www.winehq.org/ WineHQ] без каких-либо изменений.<br />
<br />
У компании Etersoft есть ещё одна -- коммерческая -- версия: [http://etersoft.ru/wine WINE@Etersoft], которая также совместима с дистрибутивами ALT Linux (впрочем, как и с другими дистрибутивами Linux). WINE@Etersoft сертифицируется на предмет совместимости как с операционной системой, так и с приложениями, что позволяет получить поддержку и гарантии работоспособности.<br />
<br />
<br />
== Полезные команды ==<br />
<br />
wine cmd # Windows terminal / execute bat batch scripts, etc. (CLI)<br />
wine control # Wines equivalent of the Windows Control panel (GUI)<br />
wine eject # Eject a disc from the specified optical drive (CLI)<br />
winepath # mangle Windows <-> Unix paths (CLI)<br />
wine reg # registry editor (CLI)<br />
wine taskmgr # same as Windows task manager utility (GUI)<br />
wine uninstaller # global program installer / uninstaller (GUI)<br />
wine winefile # alternative Wine file manager (GUI)<br />
wine explorer # desktop (GUI)<br />
<br />
== Ссылки по теме ==<br />
<br />
* [[Arepo|Несколько архитектур в одной ОС (Arepo/Biarch) ]]<br />
** [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
** [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [https://etersoft.ru/products/wine Описание WINE@Etersoft ]<br />
* [https://winehq.org.ru/X8664 Установка WINE@Etersoft на 64-битные ОС]<br />
* [https://winehq.org.ru/WINE@Etersoft/Enterprise Документация по WINE@Etersoft на русском языке]<br />
*[[Q4Wine]]<br />
* Ассоциация файлов с родными приложениями Linux: [http://ubuntu-wine.ru/publ/associacija_fajlov_v_wine_s_ubuntu_prilozhenijami/1-1-0-39], [https://habrahabr.ru/post/102362/]<br />
*[[Ярлычки программ]]<br />
<br />
[[Категория:HOWTO]]<br />
{{Category navigation|title=WINE|category=WINE|sortkey={{SUBPAGENAME}}}}<br />
{{Category navigation|title=Использование ПО|category=Использование ПО|sortkey={{SUBPAGENAME}}}}<br />
[[en:Wine]]<br />
[[Категория:Использование Epm]]</div>IgorNhttps://www.altlinux.org/index.php?title=WINE&diff=78538WINE2024-02-09T05:41:06Z<p>IgorN: Для единообразия заменено на apt-get install wine-full</p>
<hr />
<div>=== О Wine ===<br />
'''Wine''' — Wine Is Not Emulator — это свободная реализация среды ОС Windows поверх Linux (*UNIX) подсистем. Исполнение Windows-программ производится напрямую без какой-либо эмуляции и с минимальными накладными расходами.<br />
<br />
* Официальный сайт: [https://www.winehq.org/ winehq.org]<br />
* Руководство пользователя: [https://wiki.winehq.org/Wine_User's_Guide Wine_User's_Guide]<br />
* Отчёты пользователей с описанием опыта запуска тех или иных Windows-программ: [https://appdb.winehq.org/ appdb.winehq.org]<br />
* Отчёты по запуску игр: [https://www.protondb.com/ protondb.com]<br />
<br />
=== Установка Wine ===<br />
Wine состоит из нескольких основных и вспомогательных пакетов:<br />
* {{pkg|wine}} — среда Wine для выполнения 64-битных программ.<br />
* {{pkg|i586-wine}} — 32-х битная среда Wine.<br />
* {{pkg|wine-common}} — основные утилиты среды Wine (wineboot, winecfg, wineconsole, wineserver и т.д.).<br />
* {{pkg|wine-programs}} — вспомогательные программы (notepad, winefile, winemine).<br />
* {{pkg|wine-gecko}} — свободная реализация Internet Explorer на основе браузерного движка [https://wiki.winehq.org/Gecko Gecko].<br />
* {{pkg|wine-mono}} — [https://wiki.winehq.org/Mono свободная реализация .NET Framework]. Охватывает версии .NET, начиная с 1.x до 4.8.x.<br />
* {{pkg|winetricks}} — [https://wiki.winehq.org/Winetricks скрипт], предоставляющий различные опции по управлению средой Wine. Чаще всего используется для упрощения установки несвободных компонентов Windows и ряда Windows-программ от сторонних разработчиков.<br />
<br />
==== На этапе установки дистрибутива ====<br />
Если во время установки дистрибутива Альт были выбраны '''Эмуляторы''' или '''Виртуализация''' и '''Запуск программ Windows''', то Wine будет установлен автоматически (после может потребоваться установка некоторых 32-битных библиотек - см. пункт [[WINE#Нюансы_по_i586-wine|Нюансы по i586-wine]]):<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable" style="margin-left:2em"<br />
![Список устанавливаемых пакетов при автоматической установке:]<br />
|-<br />
|<br />
{{pkg|wine}}<br />
{{pkg|wine-common}}<br />
{{pkg|i586-libnss-mdns}}<br />
{{pkg|i586-libnss-myhostname}}<br />
{{pkg|i586-xorg-dri-*}}<br />
{{pkg|wine-mono}}<br />
{{pkg|wine-gecko}}<br />
{{pkg|winetricks}}<br />
{{pkg|i586-wine}}<br />
{{pkg|i586-wine-cpcsp_proxy}}<br />
{{pkg|virtualbox}}<br />
|}<br />
<br />
==== Установка вручную ====<br />
Если '''Эмуляторы''' или '''Виртуализация''' и '''Запуск программ Windows''' во время установки не были выбраны, то Wine можно установить вручную (после может потребоваться установка некоторых 32-битных библиотек - см. пункт [[WINE#Нюансы_по_i586-wine|Нюансы по i586-wine]]):<br />
<br />
$ su -<br />
# apt-get update<br />
# apt-get install wine-full i586-wine<br />
<br />
{| class="mw-collapsible mw-collapsed wikitable" style="margin-left:2em"<br />
![Список устанавливаемых пакетов при ручной установке:]<br />
|-<br />
|<br />
{{pkg|cabextract}}<br />
{{pkg|libOSMesa}}<br />
{{pkg|wine}}<br />
{{pkg|wine-common}}<br />
{{pkg|wine-full}}<br />
{{pkg|wine-gecko-*}}<br />
{{pkg|wine-mono-*}}<br />
{{pkg|wine-programs}}<br />
{{pkg|winetricks}}<br />
{{pkg|i586-wine}}<br />
{{pkg|i586-*}}<br />
|}<br />
<br />
==== Установка с помощью Epm ====<br />
{{Примечание|<br />
Epm - единая команда управления пакетами, разработанная в компании Etersoft (основная статья - [[Epm]]). Позволяет устанавливать как пакеты из репозитория ALT Linux, так и чужие пакеты (предназначенные для другой ОС на базе Linux). Для установки epm в ALT Linux:<br />
$ su -<br />
# apt-get update<br />
# apt-get install eepm<br />
}}<br />
{{Attention|Установка из репозитория Десятой платформы p10 может быть неудачна, в случае возникновения ошибки выполните установку wine вручную или обновите epm из стороннего репозитория.}}<br />
su -<br />
apt-get update<br />
epm play wine<br />
<br />
С помощью скрипта [[Epm]] будут установлены все вышеперечисленные пакеты, а также выполнена установка некоторых 32-битных библиотек - см. пункт [[WINE#Нюансы_по_i586-wine|Нюансы по i586-wine]]).<br />
<br />
==== Нюансы по i586-wine ====<br />
На момент 2023 года поддержка выполнения 32-х битных программ в 64-х битной среде (Windows-on-Windows) находится на завершающем этапе разработки, но пока не используется в сборке для репозитория платформы. Поэтому всё ещё требуется отдельная установка 32-х битой среды Wine и попутного комплекта 32-х битных Linux-библиотек. Всё необходимое устанавливается при варианте установки посредством {{cmd|epm play wine}}.<br />
<br />
В случае, когда пакет {{pkg|i586-wine}} отсутствует, при запуске 32-х битной программы будет выведено предупреждение и программа не заработает:<br />
{{cmd|It looks like i586-wine is missing, you should install it. As root, please execute "apt-get install i586-wine"}}<br />
<br />
В случае, когда пакет {{pkg|i586-wine}} был установлен отдельно, могут потребоваться некоторые 32-х битные библиотеки (в основном 32-х битные графические драйвера). Это легко исправить выполнением следующей команды:<br />
<br />
epm play i586-fix<br />
<br />
Если пакет i586-wine был установлен после создания префикса, то префикс придётся удалить и пересоздать, иначе программы в нём перестанут работать и будет выведена ошибка:<br />
{{cmd|wine: could not load kernel32.dll, status c0000135}}<br />
<br />
Пример пересоздания префикса. Команды выполняются с правами обычного пользователя.<br />
Полное удаление:<br />
rm -r /home/$USER/.wine<br />
Пересоздание префикса по стандартному пути ''/home/$USER/.wine'':<br />
wineboot -i<br />
<br />
<br />
=== Основы по использованию Wine ===<br />
<br />
==== Префиксы ====<br />
Wine управляет префиксами (prefix), которые можно назвать отдельными экземплярами ОС Windows.<br />
* Стандартный префикс располагается в ''/home/$USER/.wine''.<br />
* Префикс содержит в себе файлы реестра, каталоги, набор библиотек и программ, расположенных по той же структуре, как и в оригинальной Windows.<br />
[[Файл:Altlinux wine basics a 10.png|800px|center]]<br />
** ''dosdevices'' — в каталоге располагаются символические ссылки на каталоги, которые имитируют Windows-тома (диски). Тома обозначаются латинской буквой. К примеру, системный том Windows по умолчанию обозначается «C:».<br />
** ''drive_c'' — условный том «C:», в котором располагаются компоненты Windows.<br />
[[Файл:Altlinux wine basics a 20.png|800px|center]]<br />
** ''.update-timestamp'' — [https://en.wikipedia.org/wiki/Unix_time метка времени].<br />
** ''system.reg'', ''user.reg'' и ''userdef.reg'' являются файлами [https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B5%D1%81%D1%82%D1%80_Windows реестра Windows].<br />
* По умолчанию создаются 64-х битные префиксы.<br />
* Компоненты эталонного префикса, из которого создаются все прочие создаваемые пользователем префиксы, находятся в ''/usr/lib64/wine/x86_64-windows/''.<br />
* Wine-префиксы на жаргоне называют "бутылками".<br />
<br />
<br><br />
===== Особенности и ограничения префиксов =====<br />
* Название префикса может быть любым, но для избежания затруднений следует придерживаться следующего:<br />
** Название префикса принято начинать с ''.wine''. Пример: ''.wine_nalogul''. В этом случае сразу понятно, что это Wine-префикс и что в него установлена программа Налогоплательщик ЮЛ.<br />
** Название должно содержать только латинские буквы и арабские цифры. Из символов можно применять знак точки, расположенный в самом начале названия, что означает скрытый каталог.<br />
** Название не должно содержать пробелы, иначе путь придётся экранировать кавычками, чтобы интерпретатор мог корректно его обработать. В противном случае можно легко столкнуться со следующей ошибкой: ''wine: invalid directory in WINEPREFIX: not an absolute path''<br />
* Можно создавать префиксы в любых желаемых каталогах, принадлежащих пользователю.<br />
* Ограничений по количеству префиксов нет.<br />
* '''''Категорически недопустимо создание префиксов с правами суперпользователя'''''. Это крайне небезопасно — программы в префиксе получают доступ ко всем файлам системы. Так же обычный пользователь не сможет взаимодействовать с префиксом, так как им будет владеть суперпользователь.<br />
* Wine поддерживает одновременную работу множества Windows-программ, запущенных в одном или нескольких префиксах.<br />
* Не смотря на то, что Wine позволяет запускать исполняемые файлы Windows-программ из любого места пространства пользователя, правильнее это делать, разместив исполняемый файл внутри префикса. Оптимальным вариантом будет размещение в его корневом каталоге: ''home/$USER/.wine/drive_c''. Такой подход связан с тем, что некоторые Windows-программы становятся неработоспособными, если расположены вне пространства префикса. Поэтому лучше предупредить возникновение подобных проблем и располагать исполняемые файлы внутри префикса.<br />
* Крайней нежелательно размещать префикс на разделе с файловой системой NTFS (основная файловая система OC Windows). Данная файловая система не поддерживает систему прав и атрибутов Linux, что приведёт к проблемам с запуском программ.<br />
* '''''НЕДОПУСТИМО устанавливать в префикс Windows-драйвера для видеокарт, переферийных устройств, звуковых карт и подобного оборудования. Потенциально это может привести к сбою устройства, а в случае таких устройств, как мышь и клавиатура — полной неработоспособности.'''''<br />
* Wine-префикс не предоставляет существенной изоляции Windows-процессов от пространства Linux-пользователя, поэтому не стоит пытаться запускать вредоносные программы для Windows, так как потенциально они способны нанести вред Linux-системе. К примеру, запущенный в префиксе шифровальщик может зашифровать не только префикс, но и выйти за его пределы, зашифровав все каталоги и файлы, принадлежащие Linux-пользователю, так как все процессы, запущенные в префиксе, выполняются с правами пользователя.<br />
* Настоятельно не рекомендуется устанавливать всё в один префикс, оптимальнее создавать новый под каждую программу. Это особенно критично, если для работы той или иной программы требуется установить несвободный Windows-компонент. В таком случае может получиться так, что компонент, улучшающий работоспособность одной программы, будет приводить к сбоям других программ, что сильно усложнит отладку и выяснение причин сбоев. В свою очередь, использование отдельных префиксов для каждой программы, требующей установку несвободных Windows-компонентов, позволит полностью избежать подобных проблем.<br />
* Префиксы можно свободно перемещать и копировать, что удобно для создания резервных копий подготовленных под ту или иную задачу экземпляров.<br />
<br />
<br><br />
===== Создание префиксов =====<br />
<br />
Как было ранее отмечено, можно создавать собственные префиксы и не ограничиваться стандартным ''/home/$USER/.wine''. Пример создания нового префикса (выполнять от обычного пользователя):<br />
WINEPREFIX="/home/$USER/.wine_new" wineboot -i<br />
Пояснения:<br />
* ''WINEPREFIX'' — это переменная окружения, которой требуется передать путь до каталога размещения компонентов префикса. В примере был передан путь до каталога ''wine_new'' причём он не обязательно должен существовать заранее.<br />
* ''wineboot -i'' — утилита отвечает за создание префикса, подготовку его к работе, имитацию перезагрузки и выключения ОС Windows. Ключ «-i» инициирует создание префикса. Примечание: префикс так же будет автоматически создан при попытке его обновления (wineboot -u), конфигурирования (winecfg) и прочих действий.<br />
<br />
По умолчанию создаются 64-х битные префиксы, причём в них могут выполняться и 32-х битные программы. Но бывают случаи, когда требуется «чистый» 32-битный префикс. Его можно создать следующим образом:<br />
WINEARCH=win32 WINEPREFIX="/home/$USER/.wine32_new" wineboot -i<br />
Пояснения:<br />
* ''WINEARCH'' — с помощью этой переменной окружения можно управлять разрядностью создаваемых префиксов. При передаче значения «win32» будет создан 32-х битный префикс.<br />
'''''Примечание:''' У ранее созданного префикса нельзя поменять разрядность.''<br />
<br />
<br><br />
==== Запуск программ ====<br />
<br />
'''''Примечание:''' Прямой запуск «.exe» в Альт отключен в целях безопасности. Если прямой запуск необходим, потребуется вручную настроить выполнение MIME-типа «.exe» с помощью Wine.''<br />
<br />
Алгоритм действий для запуска той или иной Windows-программы:<br />
* Разместить исполняемый файл в корне префикса (./drive_c/программа.exe).<br />
** Запустить: {{cmd|wine /home/$USER/.wine/drive_c/программа.exe}}<br />
* Если не запускается, ознакомиться с историями успешного запуска на [https://appdb.winehq.org/ appdb.winehq.org] и на [https://www.altlinux.org/ altlinux.org].<br />
* По необходимости с помощью winetricks установить необходимые проприетарные Windows-компоненты (С++ redistributable, .NET Framework, Microsoft Media Foundation и т.д.).<br />
<br><br />
Запуск на примере [https://store.steampowered.com/ клиента Steam] с созданием отдельного префикса с названием ''.wine_steam''. Команды выполняются с правами обычного пользователя. Создание префикса:<br />
WINEPREFIX=/home/$USER/.wine_steam wineboot -i<br />
<br />
Поместить в префикс ранее загруженный установочный файл '''''SteamSetup.exe''''':<br />
mv /home/$USER/Downloads/SteamSetup.exe /home/$USER/.wine_steam/drive_c/<br />
<br />
Запустить исполняемый файл с указанием абсолютного пути:<br />
WINEPREFIX=/home/$USER/.wine_steam wine /home/$USER/.wine_steam/drive_c/SteamSetup.exe<br />
<br />
Альтернативный вариант. Wine позволяет использовать имитацию Windows-путей, где точкой отсчёта является том «C:» — корень Wine-префикса '''''./drive_c'''''. Пример:<br />
WINEPREFIX=/home/$USER/.wine_steam wine 'C:/SteamSetup.exe'<br />
'''''Примечание:''' Путь в стиле DOS-Windows следует экранировать кавычками.''<br />
<br />
Результат:<br />
[[Файл:Altlinux wine basics b 10.png|center]]<br />
<br />
После установки будет создана кнопка запуска Steam. В ней автоматически прописывается команда на запуск установленной программы из конкретного префикса, что облегчает последующий запуск. Пример команды из кнопки запуска:<br />
env WINEPREFIX="/home/$USER/.wine_steam" wine C:\\\\users\\\\Public\\\\Desktop\\\\Steam.lnk<br />
<br />
Видно, что запуск производится из нужного префикса и с Windows-ярлыка ''Steam.lnk''.<br />
Можно создавать собственные кнопки запуска, чтобы каждый раз не набивать (или копировать откуда-то) команду на запуск той или иной Windows-программы.<br />
<br><br />
Подобным образом производится запуск любых программ с исполняемым файлом ''.exe''.<br />
<br />
<br><br />
<br />
===== Запуск bat-файлов — «батников» =====<br />
<br />
Ранее для запуска необходимо было задействовать [https://wiki.winehq.org/Start start], но с выходом Wine 8.0 эта опция стала применяться автоматически. Теперь достаточно запускать в обычном режиме:<br />
WINEPREFIX=/home/$USER/.wine wine 'C:/script.bat'<br />
<br />
Альтернативный устаревший вариант:<br />
WINEPREFIX=/home/$USER/.wine wine start 'C:/script.bat'<br />
<br />
<br><br />
===== Установка программы из установочного пакета msi =====<br />
Ранее запуск таких пакетов отличался от запуска ''.exe'', но ныне, начиная с Wine 8.0, запуск производится без задействования дополнительных опций.<br />
<br />
<br><br />
<br />
Пример установки программы [https://www.nalog.gov.ru/rn77/program/5961229/ Налогоплательщик ЮЛ] (версия 4.81) с созданием префикса с названием ''wine32nalogul'' Команды выполняются с правами обычного пользователя. Для этой программы желательно использовать 32-х битный префикс, причём это становится необходимым, если планируется использовать печать с двумерным штрих-кодом PDF-417. Создание 32-х битного префикса:<br />
WINEARCH=win32 WINEPREFIX=/home/$USER/.wine32nalogul wineboot -i<br />
<br />
Поместить в префикс ранее загруженный установочный файл ''nalogul481.msi''<br />
mv /home/$USER/Downloads/nalogul481.msi /home/$USER/.wine32nalogul/drive_c/<br />
<br />
Запустить установочный пакет ''msi'' с указанием пути в стиле DOS-Windows:<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine 'C:/nalogul481.msi'<br />
<br />
Альтернативный устаревший вариант с задействованием ''msiexec'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine msiexec /i 'C:/nalogul481.msi'<br />
<br />
Ещё один вариант — с задействованием ''start'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine start 'C:/nalogul481.msi'<br />
<br />
Результат:<br />
[[Файл:Altlinux wine basics c 10.png|center]]<br />
<br />
<br><br />
===== Использование winetricks для установки Windows-компонентов ===== <br />
<br />
В предыдущем разделе был рассмотрен запуск установщика «Налогоплательщик ЮЛ», но для полноценной работы программы, в связи с её специфической реализацией, (на момент 2023 года) требуются проприетарные Windows-компоненты:<br />
* msxml3<br />
* msxml4<br />
* msxml6<br />
* corefonts<br />
Windows-компоненты удобнее всего устанавливать с помощью [https://wiki.winehq.org/Winetricks winetricks], который устанавливается вместе с прочими Wine-пакетами при установке посредством {{cmd|apt-get install wine-full}}.<br />
<br />
<br><br />
За раз можно установить несколько Windows-компонентов, перечислив их через пробел. Пример установки с помощью winetricks:<br />
WINEPREFIX=/home/$USER/.wine32nalogul winetricks -q msxml3 msxml4 msxml6 corefonts<br />
Пояснения:<br />
* ''-q'' — «тихий» режим установки. При его использовании пропускаются диалоги «мастера установки», что избавляет от рутины. В данном случае установка может занять довольно длительное время — до пары десятков минут.<br />
* Все перечисленные Windows-компоненты будут загружены из интернета в автоматическом режиме. Установочные файлы компонентов разместятся в ''home/$USER/.cache/winetricks'' После установки их можно удалить.<br />
<br />
Налогоплательщик ЮЛ относится к программам, которые не могут запуститься без задействования ''start /unix'', имитирующего файловые ассоциации Windows Explorer (файловый менеджер ОС Windows) и устраняющего проблемы с интерпретацией UNIX-путей. Команда на запуск выглядит подобным образом:<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine start /unix 'C:/Налогоплательщик ЮЛ/INPUTDOC/inputdoc.exe'<br />
Пояснения:<br />
* В связи с тем, что в пути до исполняемого файла программы есть пробел, путь необходимо экранировать кавычками — 'C:/Налогоплательщик ЮЛ/INPUTDOC/inputdoc.exe'.<br />
* Из-за необходимости использования ''start /unix'' потребуется отредактировать команду в кнопке запуска:<br />
[[Файл:Altlinux wine basics c 20.png|1000px|center]]<br />
* Из-за наличия пробела в пути, там же в настройках кнопки запуска, необходимо экранировать кавычками путь в строке «Рабочий каталог».<br />
<br />
Результат запуска «Налогоплательщик ЮЛ»:<br />
[[Файл:Altlinux wine basics c 30.png|1000px|center]]<br />
<br />
<br><br />
===== Прямое указание рабочего каталога =====<br />
<br />
Существуют программы, которым необходимо напрямую указывать [https://ru.wikipedia.org/wiki/Рабочий_каталог рабочий каталог] (working directory), иначе они не смогут найти все необходимые для запуска ресурсы, так как те находятся в каталоге уровнем выше, в то время как поиск ресурсов производится сначала в каталоге с исполняемым файлом, после в его подкаталогах рекурсивно в глубину, а затем в ''C:\windows''. Следовательно, такие программы окажутся неработоспособными при прямом запуске. В этом случае потребуется вручную указать рабочий каталог — отправную точку для рекурсивного поиска всех нужных программе ресурсов.<br />
<br />
Это можно осуществить двумя способами: создать кнопку запуска и указать в ней путь до рабочего каталога или прямо указать в команде на запуск. На примере игры STALKER Clear Sky рассмотрим второй способ.<br />
<br />
<br><br />
Вводная:<br />
* Создан префикс с названием ''.wine64clearsky''<br />
* Путь установки игры в префиксе: ''C:/Program Files (x86)/STALKER Clear Sky''<br />
* Исполняемый файл игры ''xrEngine.exe'' находится в каталоге ''./STALKER Clear Sky/'''bin'''''.<br />
* Ресурсы игры находятся в каталогах:<br />
** ''./STALKER Clear Sky/'''levels'''''<br />
** ''./STALKER Clear Sky/'''Localization'''''<br />
** ''./STALKER Clear Sky/'''patches'''''<br />
** ''./STALKER Clear Sky/'''resources'''''<br />
<br />
Отправная точка для успешного поиска ресурсов находится уровнем выше (каталог ''./STALKER Clear Sky/'', чем расположение исполняемого файла (''./STALKER Clear Sky/bin/xrEngine.exe''), тем самым при прямом выполнении игра не найдёт ресурсы:<br />
[[Файл:Altlinux wine basics clearsky.png|center]]<br />
<br />
Это решается следующим образом:<br />
WINEPREFIX=/home/$USER/.wine64clearsky wine start /d 'C:/Program Files (x86)/STALKER Clear Sky/' ./bin/xrEngine.exe<br />
<br />
Пояснения:<br />
* ''start /d'' — с опцией /d по указанному пути обозначается рабочий каталог, который станет отправной точкой в рекурсивном поиске ресурсов для запуска программы.<br />
* С тем учётом, что рабочий каталог указан, можно указать относительный путь до исполняемого файла. В данном случае ''./bin/xrEngine.exe''.<br />
<br />
Благодаря этому, программа сможет найти все необходимые для запуска ресурсы.<br />
<br />
<br><br />
===== Установка, запуск и удаление программ в графическом режиме =====<br />
<br />
''winefile'' — файловый менеджер Wine с графическим интерфейсом, схожий по функционалу с Windows Explorer (Проводник Windows). С его помощью можно осуществлять различные операции над файлами и каталогами в префиксе, включая запуск Windows-программ.<br />
<br />
Пример запуска файлового менеджера для префикса с названием ''.wine32nalogul'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine winefile<br />
<br />
[[Файл:Altlinux wine basics winefile.png|center]]<br />
<br />
Запуск Windows-программ осуществляется двойным щелчком по исполняемому файлу или ярлыку (.lnk):<br />
<br />
[[Файл:Altlinux wine basics winefile exec.png|center]]<br />
<br />
В целом логика управления во многом аналогична типичному файловому менеджеру Linux. Стоит отметить, что файлы, удалённые через файловый менеджер Wine, окажутся в обычной системной корзине (trash:///).<br />
<br />
<br><br />
Установленные в префикс программы можно удалить в графическом режиме через «Панель управления» и «Установка/удаление программ»:<br />
<br />
[[Файл:Altlinux wine basics winefile control.png|center]]<br />
<br />
В открывшемся окне из списка выбрать ранее установленную программу и нажать кнопку «Удалить»:<br />
<br />
[[Файл:Altlinux wine basics control.png|center]]<br />
<br />
Альтернативным способом открытия «Установка/удаление программ» (''uninstaller'') является прямой запуск. Пример:<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine uninstaller<br />
<br />
<br><br />
===== Принудительное завершение работы сбойных программ ===== <br />
<br />
Бывают случаи, когда работу сбойной программы довольно неудобно завершать штатными средствами Linux, особенно в случаях, когда программа приводит к зависанию завершения работы процессов префикса: ''services.exe'', ''winedevice.exe'', ''plugplay.exe'' и т.д. Принудительно завершить работу всех программ в префиксе можно следующим образом:<br />
WINEPREFIX=/home/$USER/.wine wineboot -k<br />
Альтернативный вариант с тем же эффектом:<br />
WINEPREFIX=/home/$USER/.wine wineserver -k<br />
<br />
Выполнение этих команд является эквивалентом нажатия кнопки ''Reset'', при этом будет «принудительно перезагружен» только указанный префикс, а не вся система.<br />
<br />
Более мягким вариантом, а так же удобным способом ознакомиться со всеми активными процессами префикса, является использование штатной программы ''taskmgr'' — «Диспетчер задач». Пример запуска для префикса с названием ''.wine32nalogul'':<br />
WINEPREFIX=/home/$USER/.wine32nalogul wine taskmgr<br />
Демонстрация содержимого вкладок (объединены в одну картинку):<br />
[[Файл:Altlinux wine basics taskmgr.png|900px|center]]<br />
<br />
<br><br />
==== Удаление префиксов ====<br />
<br />
Самым удобным способом является удаление посредством winetricks:<br />
WINEPREFIX=/путь/до/префикса winetricks annihilate<br />
<br />
В этом случае будут удалены:<br />
* Каталог префикса вместе со всем содержимым.<br />
* Кнопки запуска и миниатюры для программ, установленных в удаляемый префикс.<br />
Тем самым не остаётся никаких остаточных файлов.<br />
<br />
Если по какой-то причине префикс был удалён вручную, останутся некоторые файлы, которые придётся зачистить так же вручную.<br />
Место хранения кнопок запуска:<br />
~/.local/share/applications/wine/<br />
<br />
Место хранения миниатюр, включая тех программ, что установлены в Wine:<br />
~/.local/share/icons/hicolor/<br />
<br />
Так же можно удалить ненужные Windows-установщики, загруженные winetricks при установке Windows-компонентов в префикс:<br />
~/.cache/winetricks/<br />
<br />
=== Возможности, предоставляемые Wine ===<br />
<br />
Wine позволяет запускать 32- и 64-битные исполняемые файлы (PE executable), имеющие расширение .exe и предназначенные для выполнения в Windows-совместимом окружении. Wine предоставляет все необходимые для запуска программ динамические библиотеки (.dll-файлы), а также поддерживает установку и работу дополнительных компонент (библиотек), требуемых программами. Такая установка может выполняться через инструмент установки сторонних дополнений winetricks или же непосредственно инсталлятором программы.<br />
<br />
В частности, поддерживаются такие интерфейсы как<br />
* GDI;<br />
* GDIPlus;<br />
* Print;<br />
* CryptoAPI (частично);<br />
* Internet Explorer (частично);<br />
* DirectX;<br />
* видео- и аудио-кодеки;<br />
* .NET (в реализации Mono);<br />
* кодирование и раскодирование изображений в форматах JPEG, PNG, GIF, TIFF, BMP;<br />
* OpenGL;<br />
* ODBC;<br />
* LDAP (частично);<br />
<br />
В частности, поддерживается установка и работа следующих сторонних дополнений:<br />
* библиотек времени выполнения (runtime) для программ, собранных в средах разработки Visual C++ версий от 2003 до 2019 включительно, а также версии 6;<br />
* Microsoft Data Access Components (MDAC 2.7, MDAC 2.8)<br />
* MS Jet 4.0<br />
* Microsoft .NET версий от 1.1 до 4.8 включительно;<br />
* .NET Core версий 2.2 и 3.0;<br />
* Microsoft Visual FoxPro версий от 6.0 до 9.0 включительно.<br />
<br />
<br><br />
==== Реестр в Wine ====<br />
<br />
Каждый Wine-префикс имеет собственный экземпляр реестра Windows. Основные особенности:<br />
* Реестр префикса состоит из нескольких файлов: ''system.reg'', ''user.reg'' и ''userdef.reg''.<br />
** Файлы располагаются в корневом каталоге префикса. Пример: ~/.wine/<br />
* Иерархия разделов реестра Wine-префикса аналогична Windows.<br />
* В реестре хранятся различные настройки среды префикса.<br />
* Дерево реестра из оригинальной ОС Windows не совместимо с реестром Wine и наоборот.<br />
** В реестр Wine-префикса можно импортировать отдельные записи из reg-файлов, предназначенных для Windows.<br />
* В Wine реализованы стандартные Windows-утилиты для работы с реестром.<br />
** [https://wiki.winehq.org/Regedit regedit] — утилита с графическим интерфейсом, идентичным оригинальной программе.<br />
** [https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/reg reg] — утилита для манипуляций с записями в реестре через терминал.<br />
** Файлы реестра Wine можно редактировать обычным текстовым редактором.<br />
* [https://wiki.winehq.org/Useful_Registry_Keys Ключи реестра Wine-префикса].<br />
<br />
Пример запуска regedit для префикса с названием ''.wine'':<br />
WINEPREFIX=/home/$USER/.wine wine regedit<br />
<br />
[[Файл:Altlinux wine basics regedit.png|центр]]<br />
<br />
<br><br />
==== Переключение транслятора ====<br />
<br />
Для работы программ, задействующих DirectX, в Wine используется специальный транслятор, который преобразует вызовы API DirectX в OpenGL или Vulkan.<br />
<br />
Трансляция в OpenGL имеет значительные накладные расходы, что выражается в потерях до 40% производительности в отдельных случаях и до 20% в среднем. Имеет высокую совместимость со старыми видеокартами.<br />
<br />
Транслятор на основе Vulkan более производительный, но требует относительно современного оборудования: видеокарты от 2016 года с поддержкой спецификации Vulkan 1.3. Потери редко превышают 20% и, благодаря более продвинутым качественным драйверам и подсистемам, производительность частенько несколько выше (до 10%), чем в Windows.<br />
<br />
Кроме отмеченных трансляторов, в Wine присутствует свободная реализация [https://learn.microsoft.com/en-us/windows/win32/gdi/windows-gdi GDI], который можно задействовать для правильной отрисовки графики в некоторых программах 90-х и начала 2000-х годов. К примеру, [https://store.steampowered.com/app/575690/PARKAN/ Parkan Хроника империи].<br />
<br />
По заявлению разработчиков, в 2022 году между трансляторами был достигнут паритет по поддержке спецификаций DirectX, поэтому предпочтительно задействовать Vulkan-транслятор. При этом стоит отметить, что OpenGL-транслятор всё-таки имеет более высокую совместимость со старыми программами (по крайней мере, на момент 2023 года).<br />
<br />
На момент 2023 года Vulkan-транслятор не используется по умолчанию и его необходимо задействовать вручную. Актуальным способом является переключение через переменную окружения ''WINE_D3D_CONFIG''.<br />
<br />
Пример:<br />
WINE_D3D_CONFIG='renderer=vulkan' WINEPREFIX=/home/$USER/.wine wine 'C:/Program Files (x86)/STALKER Clear Sky/STALKER Clear Sky.lnk'<br />
Пояснения:<br />
* Переменной окружения ''WINE_D3D_CONFIG'' необходимо передать значение 'renderer=vulkan'.<br />
* Vulkan-транслятор будет задействован для конкретной программы.<br />
<br />
'''''Примечание:''' Таким же способом можно задействовать GDI — WINE_D3D_CONFIG ='renderer=gdi' ''<br />
<br />
<br><br />
==== Ассоциация файлов с родными приложениями Linux ====<br />
Нужна для возможности открытия документов из приложений в Wine через нативные программы в Линуксе.<br />
<br />
Для этого создайте файл {{path|/usr/local/bin/winenative}} со следующим содержимым:<br />
<source lang="sh">#!/bin/sh<br />
$1 "`wine winepath -u "$2"`"</source><br />
Сделайте его исполняемым: {{cmd|chmod +x /usr/local/bin/winenative}}<br />
<br />
Затем от пользователя запускаем редактор реестра: {{cmd|wine regedit}}. В '''HKEY_CLASSES_ROOT''' ищем ключ - pdffile для PDF-файлов, pngfile для PNG изображений и т.п., в нем будет ''shell > open''. В ''open'' может быть ''ddeexec'', который нужно удалить (если оставить, необходимая программа хоть и откроется, однако выскочит сообщение от Wine - Ошибка DDE.). Нам необходимо создать или изменить ключ ''command''. Значение ключа выставляем:<br />
{{cmd|"Z:\usr\local\bin\winenative" xdg-open "%1"}}<br />
Должно получиться так:<br />
<br />
[[Файл:Pdf_regedit.png]]<br />
<br />
После этого настроенный тип файла будет открываться в программе по умолчанию в Линуксе.<br />
<br />
Для настройки нестандартных для Linux файлов - например doc/docx - настройка немного отличается. Нужно полностью создать следующую цепочку:<br />
HKEY_CLASSES_ROOT\docfile\shell\open\command<br />
с аналогичным значением: {{cmd|"Z:\usr\local\bin\winenative" xdg-open "%1"}}. После этого создать ветку ''HKEY_CLASSES_ROOT\doc'' со значением ''docfile''<br />
<br />
=== Варианты Wine ===<br />
<br />
В дистрибутивах ALT Linux представлено несколько вариантов Wine:<br />
* {{pkg|wine}} -- сборка Wine с добавлением патчей проекта [https://www.wine-staging.com/ Wine-staging] и доработанного силами ALT Linux Team и компании [http://etersoft.ru/ Etersoft]. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.<br />
* {{pkg|wine-stable}} -- сборка стабильного релиза Wine c добавлением патчей проекта [https://www.wine-staging.com/ Wine-staging] и доработанного силами ALT Linux Team и компании [http://etersoft.ru/ Etersoft]. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.<br />
* {{pkg|wine-vanilla}} -- сборка оригинального Wine от [https://www.winehq.org/ WineHQ] без каких-либо изменений.<br />
<br />
У компании Etersoft есть ещё одна -- коммерческая -- версия: [http://etersoft.ru/wine WINE@Etersoft], которая также совместима с дистрибутивами ALT Linux (впрочем, как и с другими дистрибутивами Linux). WINE@Etersoft сертифицируется на предмет совместимости как с операционной системой, так и с приложениями, что позволяет получить поддержку и гарантии работоспособности.<br />
<br />
<br />
== Полезные команды ==<br />
<br />
wine cmd # Windows terminal / execute bat batch scripts, etc. (CLI)<br />
wine control # Wines equivalent of the Windows Control panel (GUI)<br />
wine eject # Eject a disc from the specified optical drive (CLI)<br />
winepath # mangle Windows <-> Unix paths (CLI)<br />
wine reg # registry editor (CLI)<br />
wine taskmgr # same as Windows task manager utility (GUI)<br />
wine uninstaller # global program installer / uninstaller (GUI)<br />
wine winefile # alternative Wine file manager (GUI)<br />
wine explorer # desktop (GUI)<br />
<br />
== Ссылки по теме ==<br />
<br />
* [[Arepo|Несколько архитектур в одной ОС (Arepo/Biarch) ]]<br />
** [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
** [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [https://etersoft.ru/products/wine Описание WINE@Etersoft ]<br />
* [https://winehq.org.ru/X8664 Установка WINE@Etersoft на 64-битные ОС]<br />
* [https://winehq.org.ru/WINE@Etersoft/Enterprise Документация по WINE@Etersoft на русском языке]<br />
*[[Q4Wine]]<br />
* Ассоциация файлов с родными приложениями Linux: [http://ubuntu-wine.ru/publ/associacija_fajlov_v_wine_s_ubuntu_prilozhenijami/1-1-0-39], [https://habrahabr.ru/post/102362/]<br />
*[[Ярлычки программ]]<br />
<br />
[[Категория:HOWTO]]<br />
{{Category navigation|title=WINE|category=WINE|sortkey={{SUBPAGENAME}}}}<br />
{{Category navigation|title=Использование ПО|category=Использование ПО|sortkey={{SUBPAGENAME}}}}<br />
[[en:Wine]]<br />
[[Категория:Использование Epm]]</div>IgorNhttps://www.altlinux.org/index.php?title=Swap&diff=78418Swap2024-02-06T04:31:44Z<p>IgorN: Добавлено примечание, что для btrfs поддержка так же присутствует, но есть дополнительные ограничения.</p>
<hr />
<div>{{Note|Данная инструкция подходит для накопителей с файловой системой ext2/3/4 и с ограничениями для btrfs (поддержка реализована в ядре 5.0 и расширена в 6.1).}}<br />
{{Attention|Для btrfs следует ознакомиться с [https://btrfs.readthedocs.io/en/latest/Swapfile.htm дополнительными ограничениями].}}<br />
<br />
'''swap''' — это специальная системная область, предварительно выделенная на накопителе (жёстком диске) и используемая операционной системой с целью резервирования свободного пространства, которое может быть задействовано при нехватке ОЗУ.<br />
<br />
В Linux используется два варианта области подкачки:<br />
* В виде раздела на накопителе.<br />
* В виде файла.<br />
В современных условиях предпочтительнее использовать swap в виде файла.<br />
<br />
Особенности swap-файла:<br />
* Можно легко изменять размер или полностью удалить, что затруднительно для варианта в виде раздела.<br />
* В сравнении со swap-разделом есть незначительное снижение производительности.<br />
* Для использования [[Гибернация|гибернации]] требуется дополнительная подготовка (получение UUID и смещения заголовка) и пересоздание загрузочного образа ''initrd''.<br />
<br />
=== Создание swap-файла ===<br />
#Все дальнейшие операции необходимо выполнять с правами суперпользователя:<br />
#:<syntaxhighlight lang="bash"><br />
$ su -<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-create-1.png]]<br />
#Удостоверьтесь, что swap отсутствует:<br />
#:<syntaxhighlight lang="bash"><br />
# swapon --show<br />
</syntaxhighlight><br />
#:Вывод должен быть пустой.<br />
#:[[Файл:Swapfile-create-2.png]]<br />
#Начиная с ядра Linux 5.7, согласно документации ''mkswap'', для достижения "монолитности" заполнения пространства файла в файловой системе, swap-файл следует создавать с помощь утилиты ''dd'':<br />
#:<syntaxhighlight lang="bash"><br />
# dd if=/dev/zero of=/swapfile bs=4M count=1024 status=progress<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-create-4.png]]<br />
#:Пояснения:<br />
#:* ''if=/dev/zero'' — это виртуальное устройство, генерирующее нулевые байты. Из него будет браться поток нулей и записываться в файл.<br />
#:* ''of=/swapfile'' — создаваемый и наполняемый нулями swap-файл.<br />
#:* ''bs=4M'' — размер порции данных в мегабайтах.<br />
#:* ''count=1024'' — число порций данных, которые будут записаны в указанный файл. В виду того, что требуется записать 4096 МБ данных, то при размере порции 4 МБ необходимо 1024 порции.<br />
#:* ''status=progress'' — показывать ход прогресса операции.<br />
#В целях безопасности необходимо ограничить права, чтобы другие пользователи не могли взаимодействовать с файлом:<br />
#:<syntaxhighlight lang="bash"><br />
# chmod 600 /swapfile<br />
</syntaxhighlight><br />
#:Тем самым право на чтение и запись будет только у суперпользователя, а всем остальным — запрещено всё:<br />
#:<syntaxhighlight lang="bash"><br />
$ ls -l /swapfile<br />
</syntaxhighlight><br />
#:Вывод:<br />
#:<syntaxhighlight lang="bash"><br />
-rw------- 1 root root 4294963200 июл 6 2020 /swapfile<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-create-5.png]]<br />
#Вместо нулей внутри swap-файла нужно создать специальную файловую систему ''swap'':<br />
#:<syntaxhighlight lang="bash"><br />
# mkswap /swapfile<br />
</syntaxhighlight><br />
#:Вывод:<br />
#:<syntaxhighlight lang="bash"><br />
Setting up swapspace version 1, size = 4 GiB (4294963200 bytes)<br />
без метки, UUID=2dd19e70-e9aa-4226-aa04-41e1206ede28<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-create-6.png]]<br />
#Остаётся активировать подготовленный swap-файл:<br />
#:<syntaxhighlight lang="bash"><br />
# swapon /swapfile<br />
</syntaxhighlight><br />
#:После активации swap-файла мы можем проверить его наличие командой:<br />
#:<syntaxhighlight lang="bash"><br />
# swapon --show<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-create-7.png]]<br />
#С тем учётом, что созданный swap включен вручную в рамках активной сессии, он будет работать только до перезапуска сессии (перезагрузки системы). Для постоянной работы необходимо прописать автоматическое монтирование в ''/etc/fstab'':<br />
#:<syntaxhighlight lang="bash"><br />
# echo '/swapfile none swap sw 0 0' | tee -a /etc/fstab<br />
</syntaxhighlight><br />
#:Пояснения:<br />
#:* tee -a /etc/fstab — добавить запись в конец файла без перезаписывания существующих записей.<br />
#:[[Файл:Swapfile-create-8.png]]<br />
#Проверить правильность заполнения ''fstab'':<br />
#:<syntaxhighlight lang="bash"><br />
# findmnt --verify<br />
</syntaxhighlight><br />
#:В выводе не должно быть ошибок, кроме предупреждения, что файл используется напрямую без привязки (bind):<br />
#:<syntaxhighlight lang="bash"><br />
none<br />
[W] non-bind mount source /swapfile is a directory or regular file<br />
0 parse errors, 0 errors, 1 warning<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-create-9.png]]<br />
=== Удаление файла подкачки ===<br />
#Перед удалением сначала необходимо отключить использование swap:<br />
#:<syntaxhighlight lang="bash"><br />
# swapoff /swapfile<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-delete-2.png]]<br />
#После можно удалить файл:<br />
#:<syntaxhighlight lang="bash"><br />
# rm /swapfile<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-delete-3.png]]<br />
#Так же необходимо отключить автоматическое монтирование.<br />
#:Для этого от суперпользователя в текстовом редакторе открываем ''/etc/fstab''...<br />
#:<syntaxhighlight lang="bash"><br />
# mcedit /etc/fstab<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-delete-4.png]]<br />
#И удаляем строчку о монтировании swap-файла.<br />
#:[[Файл:Swapfile-delete-5.png]]<br />
#:<syntaxhighlight lang="bash"><br />
/swapfile none swap sw 0 0<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-delete-6.png]]<br />
#Сохраняем изменения клавишей {{button|F2}}, выходим {{button|F10}} и проверяем ''fstab'':<br />
#:<syntaxhighlight lang="bash"><br />
# findmnt --verify<br />
</syntaxhighlight><br />
#:В выводе не должно быть ошибок:<br />
#:<syntaxhighlight lang="bash"><br />
Success, no errors or warnings detected<br />
</syntaxhighlight><br />
#:[[Файл:Swapfile-delete-7.png]]<br />
{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78306CoreCtrl2024-02-02T01:39:21Z<p>IgorN: Заготовка для раздела "Разгон".</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора. Программа преимущественно нацелена на оборудование от компании AMD.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
* Система контроля ошибок для отправки отчётов об ошибках и предложений по улучшению напрямую разработчику: https://gitlab.com/corectrl/corectrl/-/issues<br />
* Расположение файлов журналов: {{path|/tmp}}<br />
* Расположение сохранённых профилей: {{path|~/.config/corectrl/profiles}}<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
== Использование профилей ==<br />
Официальное руководство: https://gitlab.com/corectrl/corectrl/-/wikis/How-profiles-works<br />
<br />
=== Управление вентиляторами ===<br />
{{Attention|НЕ РЕКОМЕНДУЕТСЯ использовать одновременно с прочими программами, управляющими вентиляторами. Может привести к рассогласованию или полной остановке вентиляторов.}}<br />
<br />
=== Разгон ===<br />
{{Attention|Использовать с БОЛЬШОЙ ОСТОРОЖНОСТЬЮ! Не смотря на наличие в драйвере защиты от критических значений частоты и напряжения, сохраняется ненулевой риск нанести непоправимый ущерб оборудованию. Любой причинённый ущерб только на вашей ответственности!}}<br />
<br />
Вывести лимит по мощности, используемый в драйвере:<br />
grep -s . /sys/class/drm/card*/device/hwmon/hwmon*/power1_cap*<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78305CoreCtrl2024-02-02T01:37:38Z<p>IgorN: Заготовка для раздела "Управление вентиляторами".</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора. Программа преимущественно нацелена на оборудование от компании AMD.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
* Система контроля ошибок для отправки отчётов об ошибках и предложений по улучшению напрямую разработчику: https://gitlab.com/corectrl/corectrl/-/issues<br />
* Расположение файлов журналов: {{path|/tmp}}<br />
* Расположение сохранённых профилей: {{path|~/.config/corectrl/profiles}}<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
== Использование профилей ==<br />
Официальное руководство: https://gitlab.com/corectrl/corectrl/-/wikis/How-profiles-works<br />
<br />
=== Управление вентиляторами ===<br />
{{Attention|НЕ РЕКОМЕНДУЕТСЯ использовать одновременно с прочими программами, управляющими вентиляторами. Может привести к рассогласованию или полной остановке вентиляторов.}}<br />
<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78303CoreCtrl2024-02-02T01:19:29Z<p>IgorN: Добавлена иллюстрация с обзором окна программы.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора. Программа преимущественно нацелена на оборудование от компании AMD.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
* Система контроля ошибок для отправки отчётов об ошибках и предложений по улучшению напрямую разработчику: https://gitlab.com/corectrl/corectrl/-/issues<br />
* Расположение файлов журналов: {{path|/tmp}}<br />
* Расположение сохранённых профилей: {{path|~/.config/corectrl/profiles}}<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78302CoreCtrl2024-02-02T01:16:15Z<p>IgorN: Добавлены пути до места хранения журналов и файлов профилей.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора. Программа преимущественно нацелена на оборудование от компании AMD.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
* Система контроля ошибок для отправки отчётов об ошибках и предложений по улучшению напрямую разработчику: https://gitlab.com/corectrl/corectrl/-/issues<br />
* Расположение файлов журналов: {{path|/tmp}}<br />
* Расположение сохранённых профилей: {{path|~/.config/corectrl/profiles}}<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78301CoreCtrl2024-02-02T01:11:22Z<p>IgorN: Отмечена приоритетная поддержка оборудования от AMD.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора. Программа преимущественно нацелена на оборудование от компании AMD.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
* Система контроля ошибок для отправки отчётов об ошибках и предложений по улучшению напрямую разработчику: https://gitlab.com/corectrl/corectrl/-/issues<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78300CoreCtrl2024-02-02T01:08:28Z<p>IgorN: Добавлена ссылка на официальную систему контроля ошибок.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
* Система контроля ошибок для отправки отчётов об ошибках и предложений по улучшению напрямую разработчику: https://gitlab.com/corectrl/corectrl/-/issues<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78299CoreCtrl2024-02-02T01:05:51Z<p>IgorN: Улучшена читаемость предложения.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск CoreCtrl без запроса прав суперпользователя ==<br />
Чтобы убрать запорос прав суперпользователя при каждом запуске, в Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} За счёт этого, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78298CoreCtrl2024-02-02T01:03:14Z<p>IgorN: Отмена правки 78254, сделанной Дым, вся серия правок не соответствует действительности https://packages.altlinux.org/ru/p10/srpms/corectrl/</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78297CoreCtrl2024-02-02T01:02:27Z<p>IgorN: Отмена правки 78255, сделанной Дым, вся серия правок не соответствует действительности https://packages.altlinux.org/ru/p10/srpms/corectrl/</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
===Примечание===<br />
Собрать утилиту можно из сизифа, поскольку в стабильном репозитории она пока отсутствует.<br />
<br />
Но и для этого придётся дособрать из сизифа же ещё пару пакетов — {{code|easyloggingpp}} и {{code|nholthaus-units}}.<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78296CoreCtrl2024-02-02T01:01:51Z<p>IgorN: Отмена правки 78256, сделанной Дым, вся серия правок не соответствует действительности https://packages.altlinux.org/ru/p10/srpms/corectrl/</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
===Примечание===<br />
Собрать утилиту можно из сизифа, поскольку в стабильном репозитории она пока отсутствует.<br />
<br />
Но и для этого придётся дособрать из сизифа же ещё пару пакетов — {{cmd|easyloggingpp}} и {{cmd|nholthaus-units}}.<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78295CoreCtrl2024-02-02T01:01:05Z<p>IgorN: Отмена правки 78257, сделанной Дым, вся серия правок не соответствует действительности https://packages.altlinux.org/ru/p10/srpms/corectrl/</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
===Примечание===<br />
Собрать утилиту можно из сизифа, поскольку в стабильном репозитории она пока отсутствует.<br />
<br />
Но и для этого придётся дособрать из сизифа же и установить ещё пару пакетов — {{cmd|easyloggingpp}} и {{cmd|nholthaus-units}}.<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=78294CoreCtrl2024-02-02T01:00:42Z<p>IgorN: Отмена правки 78258, сделанной Дым, вся серия правок не соответствует действительности https://packages.altlinux.org/ru/p10/srpms/corectrl/</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
===Примечание===<br />
Установить утилиту удастся лишь после сборки её из сизифа, поскольку в стабильном репозитории она пока отсутствует.<br />
<br />
Для чего придётся дособрать из сизифа же и установить ещё пару пакетов — {{cmd|easyloggingpp}} и {{cmd|nholthaus-units}}.<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=77816CoreCtrl2024-01-23T15:42:11Z<p>IgorN: Улучшена читаемость предложения.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Редактирование загрузочной записи осуществляется внесением изменений в конфигурационный файл {{path|/etc/sysconfig/grub2}}:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=Rutoken&diff=77814Rutoken2024-01-23T15:37:17Z<p>IgorN: Команда приведена к единообразию.</p>
<hr />
<div>{{Stub}}<br />
Рутокен ЭЦП 2.0 / 3.0 — токен с аппаратной реализацией российского стандарта электронной подписи, шифрования и хеширования. Обеспечивает безопасное хранение ключей электронной подписи во встроенной защищенной памяти без возможности их экспорта.<br />
<br />
Рутокен S — не имеет аппаратной реализации алгоритмов подписи. Устройство предназначено для безопасного хранения ключей шифрования и паролей, защиты персональных данных, и защиты от несанкционированного доступа. Основной ключевой носитель для российских СКЗИ (КриптоПро, ViPNet).<br />
<br />
Рутокен Lite — не имеет аппаратной реализации алгоритмов подписи.<br />
<br />
= Настройка аутентификации =<br />
С помощью следующих инструкций можно настроить аутентификацию в системе с помощью сертификата и ключа на Рутокен ЭЦП:<br />
* [[Аутентификация по ключу]]<br />
* [[alterator-auth-token]]<br />
<br />
Также с его помощью может быть реализована [[двухфакторная аутентификация]].<br />
<br />
= Значения PIN-кодов на Рутокен по умолчанию =<br />
У Рутокен:<br />
''PIN-коды Рутокен S/Lite/ЭЦП 2.0/ЭЦП 3.0, установленные по умолчанию — Пользователь: 12345678; Администратор: 87654321''<br />
<br />
У Рутокен Web:<br />
PIN на скретч-карте.<br />
<br />
<br />
=КриптоПро=<br />
Подробнее о КриптоПро: [[КриптоПро]]<br />
Для поддержки Рутокен в качестве ключевого носителя в СКЗИ «КриптоПро CSP» необходимо установить модуль поддержки (из архива КриптоПро):<br />
<source lang="text" highlight="1"># apt-get install cprocsp-rdr-rutoken* </source><br />
<br />
==Управление считывателями==<br />
Проверка видимости токена:<br />
<source lang="text" highlight="1">$ list_pcsc<br />
Aktiv Co. Rutoken S 00 00</source><br />
<br />
{{Note|Cлужба {{cmd|pcscd}} должна быть запущена. Запустить службу {{cmd|pcscd}} и добавить её в автозапуск при загрузке системы:<br />
<source lang="text" highlight="1,2"># systemctl start pcscd<br />
# systemctl enable pcscd</source><br />
<br />
Если при токен не виден может потребоваться удалить пакет pcsc-lite-openct:<br />
<source lang="text" highlight="1"># apt-get remove pcsc-lite-openct</source>}}<br />
<br />
Просмотр доступных считывателей:<br />
<br />
<source lang="text" highlight="1">$ csptest -enum -info -type PP_ENUMREADERS | iconv -f cp1251<br />
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX.<br />
CryptAcquireContext succeeded.HCRYPTPROV: 26310531<br />
GetProvParam(...PP_ENUMREADERS...) until it returns false<br />
Len Byte NickName/Name<br />
_____________________________<br />
0x012a 0x03 Aktiv Co. Rutoken S 00 00<br />
MyRutoken<br />
0x012a 0x01 FLASH<br />
FLASH<br />
0x012a 0x00 HDIMAGE<br />
HDD key storage<br />
Cycle exit when getting data. 3 items found. Level completed without problems.<br />
Total: SYS: 0,040 sec USR: 0,040 sec UTC: 0,160 sec<br />
[ErrorCode: 0x00000000]</source><br />
<br />
Инициализация считывателя {{path|Aktiv Co. Rutoken S 00 00}} (требуется, если считыватель есть в списке видимых считывателей и отсутствует в списке настроенных), в параметре -add указывается имя, которое было получено при просмотре видимых считывателей, в параметре -name — удобное для обращения к считывателю имя, например, {{path|Rutoken}} (под правами root):<br />
<br />
<source lang="text" highlight="1"># cpconfig -hardware reader -add "Aktiv Co. Rutoken S 00 00" -name "MyRutoken"<br />
Adding new reader:<br />
Nick name: Aktiv Co. Rutoken S 00 00<br />
Name device: MyRutoken<br />
Succeeded, code:0x0<br />
</source><br />
<br />
{{Note|Если получаете ошибку:<br />
<source lang="Bash">-bash: cpconfig: команда не найдена</source><br />
Выполните:<br />
<source lang="Bash">export PATH="$(/bin/ls -d /opt/cprocsp/{s,}bin/*|tr '\n' ':')$PATH"</source><br />
Для пользователя root будет действовать до перезагрузки}}<br />
<br />
==Создание контейнера==<br />
Создание контейнера на токене/смарт-карте:<br />
<source lang="text" highlight="1">$ csptest -keyset -provtype 80 -newkeyset -cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' <br />
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX.<br />
AcquireContext: OK. HCRYPTPROV: 13027379<br />
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP<br />
Container name: "Rutoken<br />
"<br />
Signature key is not available.<br />
Attempting to create a signature key...<br />
a signature key created.<br />
Exchange key is not available.<br />
Attempting to create an exchange key...<br />
an exchange key created.<br />
Keys in container:<br />
signature key<br />
exchange key<br />
Extensions:<br />
OID: 1.2.643.2.2.37.3.9<br />
PrivKey: Not specified - 28.05.2020 11:35:54 (UTC)<br />
<br />
OID: 1.2.643.2.2.37.3.10<br />
PrivKey: Not specified - 28.05.2020 11:37:29 (UTC)<br />
Total: SYS: 0,180 sec USR: 0,050 sec UTC: 107,930 sec<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
При установленном пакете {{pkg|cprocsp-rdr-gui-gtk}} будет показано графическое окно, где будет предложено перемещать указатель мыши или нажимать клавиши:<br />
<br />
[[Изображение:Cryptopro-newkeyset-ru.png|Генерация случайной последовательности]]<br />
<br />
{{note|Если такой пакет не установлен, будет предложено ввести любые символы с клавиатуры.}}<br />
<br />
После этого необходимо предъявить PIN-код пользователя.<br />
<br />
После указания PIN-кода снова будет предложено перемещать указатель мыши.<br />
{{note|Если используется модель Рутокен ЭЦП, можно будет выбрать способ создания контейнера.<br />
<br />
Создание неизвлекаемого контейнера:<br />
<br />
[[Файл:Rutoken_newcont.png|Создание неизвлекаемого контейнера]]<br />
<br />
В этом случае будет использована встроенная криптография носителя.<br />
<br />
Создание контейнера КриптоПро:<br />
<br />
[[Файл:Rutoken_newcont2.png|Создание обычного контейнера]]<br />
В этом случае будет использована криптография КриптоПро}}<br />
<br />
Проверить наличие контейнеров можно с помощью команды:<br />
<br />
<source lang="text" highlight="1">$ csptest -keyset -enum_cont -fqcn -verifyc | iconv -f cp1251<br />
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX.<br />
AcquireContext: OK. HCRYPTPROV: 22009731<br />
\\.\Aktiv Co. Rutoken S 00 00\Rutoken<br />
OK.<br />
Total: SYS: 0,030 sec USR: 0,050 sec UTC: 2,400 sec<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Просмотр подробной информации о контейнере:<br />
<source lang="text" highlight="1">$ csptestf -keyset -container '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' -info </source><br />
<br />
Удалить контейнер можно с помощью команды:<br />
<source lang="text" highlight="1">$ csptestf -keyset -deletekeyset -cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' </source><br />
<br />
==Управление сертификатами==<br />
===Создание запроса на сертификат===<br />
Создание запроса на получение сертификата средствами КриптоПро:<br />
<source lang="text" highlight="1">$ cryptcp -creatrqst -dn "список имён полей" -cont 'путь к контейнеру' <название_файла>.csr</source><br />
Например:<br />
<source lang="text" highlight="1-5">$ cryptcp -creatrqst \<br />
-dn "E=ivanov@mail.mail,CN=Иванов Иван Иванович,SN=Иванов,G=Иван Иванович,C=RU,L=Калининград,ST=39 Калининградская обл.,street=Пр-т Победы 14 кв.3" \<br />
-provtype 80 -nokeygen \<br />
-cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' \<br />
-certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.5.5.7.3.2" rutoken.req<br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
Запрос успешно создан и сохранен в файле.<br />
[ErrorCode: 0x00000000]<br />
</source><br />
Запрос на сертификат необходимо подписать в аккредитованном удостоверяющем центре.<br />
<br />
===Добавление (запись) сертификатов===<br />
<br />
Добавление сертификата, без привязки к ключам (только проверка ЭЦП):<br />
<br />
<source lang="text" highlight="1">$ certmgr -inst -file cert.cer</source><br />
<br />
Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище uMy:<br />
<source lang="text" highlight="1">$ certmgr -inst -file cert.cer -store uMy -cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken'</source> <br />
<br />
Запись сертификата клиента в контейнер:<br />
<source lang="text" highlight="1">$ cryptcp -instcert -provtype 80 -ku -askpin rutoken.cer <br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
Пожалуйста, выберите нужный контейнер (введите его номер и нажмите [Enter]).<br />
<br />
#1: Rutoken<br />
#2: 506c7567696e3036303232303139313831333030<br />
#3: test<br />
Номер:1<br />
Введите пароль для контейнера Rutoken: <br />
Сертификат был успешно установлен.<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Добавление сертификата УЦ из файла certne_ucw.cer в хранилище машины (с правами root): <br />
<source lang="text" highlight="1"># /opt/cprocsp/bin/amd64/certmgr -inst -file certne_ucw.cer -store mRoot</source><br />
<br />
Добавление корневых сертификатов из файла cert.p7b (под root): <br />
<source lang="text" highlight="1"># /opt/cprocsp/bin/amd64/certmgr -inst -all -file cert.p7b -store mRoot</source><br />
Необходимо последовательно добавить все сертификаты.<br />
===Просмотр сертификатов===<br />
Просмотр сертификатов:<br />
<source lang="text" highlight="1">$ certmgr -list</source><br />
<br />
Просмотр сертификатов в локальном хранилище uMy:<br />
<source lang="text" highlight="1">$ certmgr -list -store uMy</source><br />
Просмотр сертификатов в контейнере: <br />
<br />
<source lang="text" highlight="1">$ certmgr -list -container '\\.\Aktiv Rutoken ECP - CP 00 00\Rutoken'<br />
Certmgr 1.1 (c) "Crypto-Pro", 2007-2018.<br />
program for managing certificates, CRLs and stores<br />
<br />
=============================================================================<br />
1-------<br />
Issuer : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2<br />
Subject : E=ivanov@mail.mail, CN=Иванов Иван Иванович, SN=Иванов, G=Иван Иванович, C=RU, S=39 Калининградская обл., L=Калининград, STREET=Пр-т Победы 14 кв.3<br />
Serial : 0x120032F1A2A438324D0C0EFA2900000032F1A2<br />
SHA1 Hash : 85b37ce3e2fce0f86f7847000eafca0a9c5df274<br />
SubjKeyID : c16fc96ae4670ac21b219434caae3a9f68b54ca2<br />
Signature Algorithm : ГОСТ Р 34.11/34.10-2001<br />
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)<br />
Not valid before : 05/03/2019 10:56:32 UTC<br />
Not valid after : 05/06/2019 11:06:32 UTC<br />
PrivateKey Link : Certificate from container. No link to key<br />
CA cert URL : http://testca.cryptopro.ru/CertEnroll/test-ca-2014_CRYPTO-PRO%20Test%20Center%202.crt<br />
OCSP URL : http://testca.cryptopro.ru/ocsp/ocsp.srf<br />
CDP : http://testca.cryptopro.ru/CertEnroll/CRYPTO-PRO%20Test%20Center%202.crl<br />
Extended Key Usage : 1.3.6.1.5.5.7.3.4<br />
1.3.6.1.5.5.7.3.2<br />
1.3.6.1.4.1.311.10.3.12<br />
=============================================================================<br />
<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Просмотр корневых сертификатов:<br />
<source lang="text" highlight="1">$ certmgr -list -store uRoot</source><br />
<br />
==Создание и проверка подписи==<br />
Для создания электронной подписи файла необходимо указать сертификат и имя подписываемого файла:<br />
<source lang="text" highlight="1">$ cryptcp -sign -dn E=ivanov@mail.mail -der my_file.odt <br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
<br />
Будет использован следующий сертификат:<br />
Субъект:11223344556, 102301111222, Пр-т Победы 14 кв.3, Калининград, 39 Калининградская обл., RU, ivanov@mail.mail, Иван Иванович, Иванов, Иванов Иван Иванович<br />
Действителен с 27.02.2019 13:41:47 по 27.05.2019 13:51:47<br />
<br />
Цепочки сертификатов проверены.<br />
Папка './':<br />
my_file.odt... Подпись данных... <br />
<br />
Подписанное сообщение успешно создано.<br />
[ErrorCode: 0x00000000]</source><br />
На выходе появится файл {{path|my_file.odt.sig}}, содержащий как сам подписываемый файл, так и электронную подпись. <br />
Для проверки прикреплённой подписи выполните команду:<br />
<source lang="text" highlight="1">$ cryptcp -verify my_file.odt.sig<br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
<br />
Найдено сертификатов: 2<br />
Цепочки сертификатов проверены.<br />
Папка './':<br />
my_file.odt.sig... Проверка подписи... <br />
Автор подписи: 11223344556, 102301111222, Пр-т Победы 14 кв.3, Калининград, 39 Калининградская обл., RU, ivanov@mail.mail, Иван Иванович, Иванов, Иванов Иван Иванович<br />
Подпись проверена.<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Для извлечения файла с данными из файла электронной подписи необходимо указать имя файла, в который будут извлечены данные, в конце команды проверки подписи: <br />
<source lang="text" highlight="1">$ cryptcp -verify my_file.odt.sig new_file.odt</source><br />
Для создания откреплённой (detached) подписи необходимо заменить ключ -sign на -signf:<br />
<source lang="text" highlight="1">$ cryptcp -signf -dn E=ivanov@mail.mail -der my_file.odt </source><br />
Проверка откреплённой подписи:<br />
<source lang="text" highlight="1">$ cryptcp -vsignf my_file.odt </source><br />
<br />
<br />
= Рутокен S =<br />
{{attention|Rutoken S — не является активным ключевым носителем — в нем нет аппаратной поддержки алгоритмов, а для использования RSA в opensc < 0.12 были реализованы '''выгрузка''' '''приватного''' (!!!) ключа из Rutoken S и работа с этим ключом через openssl.}}<br />
<br />
https://github.com/OpenSC/OpenSC/wiki/Aktiv-Co.-Rutoken-S<br />
== Пакеты ==<br />
pcsc-lite-rutokens<br />
opensc<br />
<br />
== Утилита pkcs11-tool==<br />
{{Note|[http://forum.rutoken.ru/topic/2799/ С форума Рутокен]: Если Вы хотите работать через opensc-pkcs11.so, то Вы должны обязательно предварительно отформатировать токен через pkcs15-init, а затем создавать и работать с ключами только через opensc-pkcs11.so.<br />
<br />
Если Вы хотите работать через наш PKCS#11, то лучше всего форматировать через<br />
[https://dev.rutoken.ru/pages/viewpage.action?pageId7995615/ Утилиту администрирования Рутокен], а затем создавать и работать с ключами только через наш PKCS#11. Это самый поддерживаемый путь. (не для Рутокен S??)<br />
<br />
Вы можете отформатировать токен через pkcs15-init и работать с нашим PKCS#11. Но в этом случае через opensc-pkcs11.so ничего не будет доступно.}}<br />
<br />
{{Note|Rutoken S не поддерживает работу с библиотекой rtPKCS11ECP (librtpkcs11ecp.so), т.е. операции генерации и импорта ключей на Рутокен S выполнить не получится.<br />
<br />
При работе с Рутокен S необходимо указывать путь до библиотеки opensc-pkcs11:<br />
<source lang="text" highlight="1">--module /usr/lib64/pkcs11/opensc-pkcs11.so</source>}}<br />
<br />
Список поддерживаемых механизмов:<br />
<source lang="text" highlight="1">$ pkcs11-tool -v --module /usr/lib64/pkcs11/opensc-pkcs11.so --list-mechanisms<br />
Using slot 0 with a present token (0x0)<br />
Supported mechanisms:<br />
SHA-1, digest<br />
SHA256, digest<br />
SHA384, digest<br />
SHA512, digest<br />
MD5, digest<br />
RIPEMD160, digest<br />
GOSTR3411, digest</source><br />
<br />
===Проверка работы===<br />
<br />
Проверяем работу токена, он должен быть виден в списке:<br />
<source lang="text" highlight="1">$ pkcs11-tool -L --module /usr/lib64/pkcs11/opensc-pkcs11.so <br />
Available slots:<br />
Slot 0 (0x0): Aktiv Co. Rutoken S 00 00<br />
token label : User PIN (Rutoken S)<br />
token manufacturer : Aktiv Co.<br />
token model : PKCS#15<br />
token flags : login required, rng, token initialized, PIN initialized<br />
hardware version : 0.0<br />
firmware version : 0.0<br />
serial num : 398C4F0B<br />
pin min/max : 8/16<br />
</source><br />
<br />
Просмотреть имеющуюся на токене информацию можно при помощи команды (требуется пароль от токена):<br />
<source lang="text" highlight="1">$ pkcs11-tool -Ol --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "User PIN (Rutoken S)".<br />
Please enter User PIN:<br />
</source><br />
<br />
===Инициализация токена===<br />
{{Attention|При инициализации все данные с токена будут удалены!}}<br />
Для инициализации токена следует выполнить команду (необходимо ввести so-pin карты 2 раза или передать его в качестве параметра --so-pin):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-token --label RutokenS --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Please enter the new SO PIN: <br />
Please enter the new SO PIN (again): <br />
Token successfully initialized<br />
</source><br />
<br />
===Смена PIN-кода===<br />
Для смены PIN-кода необходимо выполнить команду (потребуется ввести текущий PIN-код, а затем дважды ввести новый):<br />
<source lang="text" highlight="1">$ pkcs11-tool --change-pin --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "User PIN (Rutoken S)".<br />
Please enter the current PIN: <br />
Please enter the new PIN: <br />
Please enter the new PIN again: <br />
PIN successfully changed<br />
</source><br />
<br />
===Разблокировка PIN-кода===<br />
Для того чтобы разблокировать PIN-код необходимо выполнить команду (потребуется ввести so-pin карты, а затем дважды ввести новый PIN-код):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-pin -l --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "User PIN (Rutoken S)".<br />
Please enter SO PIN: <br />
Please enter the new PIN: <br />
Please enter the new PIN again: <br />
User PIN successfully initialized<br />
</source><br />
<br />
= Рутокен ЭЦП 2.0 и 3.0 =<br />
<br />
== Центр регистрации Рутокен ==<br />
<br />
Для генерации ключей, формирования запроса на сертификат и записи сертификата на Рутокен ЭЦП можно воспользоваться ПО «Рутокен плагин»,<br />
(работает через библиотеку PKCS#11 и совместим с плагином Госуслуг) и ПО «Центр регистрации Рутокен» [https://ra.rutoken.ru ra.rutoken.ru].<br />
<br />
Веб-сервис управления хранилищем сертификатов и ключей «Центр регистрации Рутокен» позволяет:<br />
* генерировать ключи;<br />
* создавать запросы на сертификаты;<br />
* импортировать сертификаты и связывать их с ключами;<br />
* подписывать документы электронной подписью;<br />
* менять PIN-код на устройстве.<br />
<br />
=== Установка «Рутокен плагин» ===<br />
{{Note|Cлужба {{cmd|pcscd}} должна быть запущена. Запустить службу {{cmd|pcscd}} и добавить её в автозапуск:<br />
<source lang="text" highlight="1-2"><br />
$ su -<br />
# systemctl enable --now pcscd<br />
</source>}}<br />
<br />
'''[http://www.rutoken.ru/products/all/rutoken-plugin/ Рутокен Плагин]''' представляет собой решение для электронной подписи, шифрования и двухфакторной аутентификации для Web- и SaaS-сервисов. <br />
Плагин необходим для связи USB-устройств c браузером, он позволяет опознавать и работать с ними. Для того чтобы установить плагин, необходимо загрузить соответствующий установочный файл и запустить его<br />
<br />
Чтобы установить «Рутокен плагин» необходимо:<br />
#Загрузить «Рутокен плагин» со страницы [https://www.rutoken.ru/support/download/rutoken-plugin/ по ссылке] (выбрать пакет формата «rpm»):<br />
#:[[Изображение:Rutoken-plugin-download.png|Загрузка «Рутокен плагин»|600px]]<br />
#Установить «Рутокен плагин». Для этого в контекстном меню скаченного файла выбрать пункт «Открыть в Установка RPM». В открывшемся окне нажать кнопку «Установить»: <br />
#:[[Изображение:Rutoken-plugin-install.png|Установка пакетов RPM]]<br />
#:Ввести пароль администратора системы и нажать кнопку «ОК»:<br />
#:[[Изображение:Rutoken-plugin-install1.png|Ввод пароля администратора системы]]<br />
#:В открывшемся окне нажать кнопку «Установить»:<br />
#:[[Изображение:Rutoken-plugin-install2.png|Установка пакетов RPM]]<br><br><br />
#:Или установить «Рутокен плагин», выполнив из папки с загруженным пакетом команду (под правами root):<br />
#:<source lang="text" highlight="1"># apt-get install libnpRutokenPlugin*</source><br />
#Перезапустить браузер.<br />
#Убедиться, что плагин установлен и включен. Сделать это можно на странице {{path|about:addons}} (или {{path|about:plugins}} в более ранних версиях Mozilla Firefox):<br />
#:[[Изображение:Rutoken-plugin-on.png|Рутокен плагин|600px]]<br />
Проверить работу плагина можно на площадке: http://demobank.rutoken.ru/<br />
<br />
=== Генерация пары ключей и формирование запроса на сертификат ===<br />
<br />
Для генерации пары ключей и формированию запроса на сертификат с помощью ПО «Центр регистрации Рутокен» следует:<br />
#Зайти на сайт «Центр регистрации Рутокен» https://ra.rutoken.ru:<br />
#:[[Изображение:Ra-rutoken-devices.png|Центр регистрации Рутокен]]<br />
#Подключить Рутокен ЭЦП к компьютеру, выбрать токен, ввести PIN-код пользователя:<br />
#:[[Изображение:Ra-rutoken-pin.png|Запрос PIN-кода]]<br />
#Нажать кнопку «Создать ключ»:<br />
#:[[Изображение:Ra-rutoken.png|Интерфейс «Центра регистрации Рутокен»]]<br />
#Ввести идентификатор и маркер ключа (опционально), выбрать тип ключа и алгоритм шифрования, затем нажать кнопку «Сгенерировать ключи»:<br />
#:[[Изображение:Rutoken-key-add.png|Создание ключей]]<br />
#:Появится сообщение, о том, что ключи созданы:<br />
#:[[Изображение:Rutoken-key.png|Ключи созданы]]<br />
#Нажать кнопку «Создать заявку на сертификат».<br />
#На странице создания запроса заполнить поля запроса, выбрать назначение сертификата, нажать кнопку «Создать запрос» (показан пример заполнения полей для физ.лица):<br />
#:[[Изображение:Rutoken-cert-new.png|Создание запроса на сертификат]]<br />
#:В раскрывающемся списке можно выбрать шаблон запроса. Шаблоны содержат разное количество полей в блоке информации о пользователе и разные расширения сертификата.<br />
#Откроется окно содержащее текст запроса. Можно сохранить его на диске, нажав кнопку «Сохранить на диске», или скопировать в буфер обмена, нажав кнопку «Скопировать в буфер обмена»:<br />
#:[[Изображение:Rutoken-cert-request.png|Запрос создан и подписан]]<br />
#Отправить запрос в удостоверяющий центр.<br />
#После получения сертификата, на странице «Центр регистрации Рутокен» https://ra.rutoken.ru нажать кнопку «Добавить к ключам сертификат» или выбрать пару ключей и нажать кнопку «Добавить сертификат»<br />
#:[[Изображение:Rutoken-cert-add.png|Добавление сертификата]]<br />
#В открывшемся окне загрузить файл с сертификатом, нажав кнопку «Выбрать», или вставить сертификат из буфера обмена, нажав кнопку «Вставить из буфера обмена», и нажать кнопку «Связать»:<br />
#:[[Изображение:Rutoken-cert-add2.png|Добавление сертификата пользователя]]<br />
#:[[Изображение:Rutoken-cert-add22.png|Добавление сертификата пользователя]]<br />
#Сертификат отобразится в списке:<br />
#:[[Изображение:Rutoken-cert-add4.png|Контейнер с сертификатом]]<br />
{{Note|Данные сертификата должны быть в формате PEM или Base64. Если вы получили сертификат в другом формате, его можно конвертировать в нужный формат, выполнив команду:<br />
$ openssl x509 -inform der -in cert.cer -out cert.pem<br />
}}<br />
<br />
== Утилита pkcs11-tool==<br />
{{Note|Cлужба {{cmd|pcscd}} должна быть запущена. Запустить службу {{cmd|pcscd}} и добавить её в автозапуск:<br />
<source lang="text" highlight="1-3"><br />
$ su -<br />
# systemctl enable --now pcscd<br />
</source>}}<br />
<br />
Должны быть установлены пакеты:<br />
<source lang="text" highlight="1"># apt-get install opensc pcsc-lite pcsc-lite-rutokens</source><br />
В состав opensc входит универсальная утилита pkcs11-tool, которой можно «подложить», например, библиотеку PKCS#11 для работы с Рутокен ЭЦП 2.0|3.0 и с ее помощью «управлять» Рутокенами.<br />
=== Библиотека для работы с Рутокен ЭЦП 2.0/3.0===<br />
Для работы должна быть установлена библиотека librtpkcs11ecp:<br />
<source lang="text" highlight="1"># apt-get install librtpkcs11ecp</source><br />
{{Note|При работе с Rutoken ЭЦП 2.0/3.0 необходимо указывать путь до библиотеки librtpkcs11ecp:<br />
<source lang="text" highlight="1">--module /usr/lib64/pkcs11/librtpkcs11ecp.so</source>}}<br />
<br />
=== Проверка работы Рутокен ЭЦП в системе ===<br />
Проверяем работу токена, он должен быть виден в списке:<br />
<source lang="text" highlight="1">$ pkcs11-tool -L --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Available slots:<br />
Slot 0 (0x0): Aktiv Rutoken ECP 00 00<br />
token label : Rutoken ECP <no label><br />
token manufacturer : Aktiv Co.<br />
token model : Rutoken ECP<br />
token flags : login required, rng, SO PIN to be changed, token initialized, PIN initialized, user PIN to be changed<br />
hardware version : 20.5<br />
firmware version : 23.2<br />
serial num : 373b83cf<br />
pin min/max : 6/32<br />
Slot 1 (0x1): <br />
(empty)<br />
Slot 2 (0x2): <br />
(empty)<br />
</source><br />
<br />
Список поддерживаемых механизмов:<br />
<source lang="text" highlight="1">$ pkcs11-tool -v --module /usr/lib64/pkcs11/librtpkcs11ecp.so --list-mechanisms<br />
Using slot 0 with a present token (0x0)<br />
Supported mechanisms:<br />
RSA-PKCS-KEY-PAIR-GEN, keySize={512,2048}, hw, generate_key_pair<br />
RSA-PKCS, keySize={512,2048}, hw, encrypt, decrypt, sign, verify<br />
RSA-PKCS-OAEP, keySize={512,2048}, hw, encrypt, decrypt<br />
MD5, digest<br />
SHA-1, digest<br />
GOSTR3410-KEY-PAIR-GEN, hw, generate_key_pair<br />
GOSTR3410, hw, sign, verify<br />
mechtype-0x1204, hw, derive<br />
GOSTR3411, hw, digest<br />
GOSTR3410-WITH-GOSTR3411, hw, digest, sign<br />
mechtype-0x1224, hw, wrap, unwrap<br />
mechtype-0x1221, hw, encrypt, decrypt<br />
mechtype-0x1222, hw, encrypt, decrypt<br />
mechtype-0x1220, hw, generate<br />
mechtype-0x1223, hw, sign, verify<br />
mechtype-0x1211, sign, verify</source><br />
<br />
=== Проверка наличия сертификатов и ключевых пар ===<br />
<br />
Просмотреть имеющуюся на токене информацию можно при помощи команды (требуется пароль от токена):<br />
<source lang="text" highlight="1">$ pkcs11-tool -Ol --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "Rutoken ECP <no label>".<br />
WARNING: user PIN to be changed<br />
Please enter User PIN: <br />
Public Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
VALUE: 84f16c48511700660fa03ce9d32612ebdf5a69b87372cf3b07f344e4819409f0<br />
aeacbd4e922869bed61ef08e20d15fe956ac81c27e197c8dfcc4b5be2763b47d<br />
label: <br />
ID: 506c7567696e3132303232303139313630363239<br />
Usage: verify<br />
Private Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
label: Иванова Ольга Петровна<br />
ID: 506c7567696e3132303232303139313630363239<br />
Usage: sign, derive<br />
Certificate Object; type = X.509 cert<br />
label: Rutoken Plugin<br />
subject: DN: C=RU, ST=\xD0\x9C\xD0\xBE\xD1\x81\xD0\xBA\xD0\xB2\xD0\xB0, L=\xD1\x80-\xD0\xBD \xD0\x9F\xD1\x80\xD0\xB8\xD0\xBE\xD0\xB7\xD0\xB5\xD1\x80\xD1\x81\xD0\xBA\xD0\xB8\xD0\xB9, \xD0\xB3. \xD0\x9B\xD1\x83\xD0\xB3\xD0\xB0, CN=\xD0\x98\xD0\xB2\xD0\xB0\xD0\xBD\xD0\xBE\xD0\xB2\xD0\xB0 \xD0\x9E\xD0\xBB\xD1\x8C\xD0\xB3\xD0\xB0 \xD0\x9F\xD0\xB5\xD1\x82\xD1\x80\xD0\xBE\xD0\xB2\xD0\xBD\xD0\xB0/1.2.643.3.131.1.1=5001007322229/street=\xD1\x83\xD0\xBB. \xD0\x93\xD0\xB0\xD0\xB3\xD0\xB0\xD1\x80\xD0\xB8\xD0\xBD\xD0\xB0, \xD0\xB4. 5/emailAddress=ivanova@mail.ru<br />
ID: 506c7567696e3132303232303139313630363239<br />
</source><br />
В результате в окне терминала отобразится информация обо всех сертификатах и ключевых парах, хранящихся на Рутокене.<br />
<br />
Чтобы открыть сертификат или ключевую пару скопируйте ID необходимого объекта и введите команду:<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so -r -y cert --id 506c7567696e3132303232303139313630363239 | openssl x509 -inform der -text</source><br />
В результате в окне Терминала отобразится полная информация об указанном объекте.<br />
<br />
Чтобы скопировать сертификат в файл введите команду:<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so -r -y cert --id 506c7567696e3132303232303139313630363239 > ./имя_файла</source><br />
<br />
===Изменение PIN-кода===<br />
<br />
Для изменения PIN-кода введите команду:<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --login --pin 12345678 --change-pin --new-pin 2780712<br />
Using slot 0 with a present token (0x0)<br />
PIN successfully changed<br />
</source><br />
где<br />
pin — текущий PIN-код устройства;<br />
new-pin — новый PIN-код устройства.<br />
<br />
===Разблокировка PIN-кода===<br />
Для того чтобы разблокировать PIN-код необходимо выполнить команду (потребуется ввести so-pin карты, а затем дважды ввести новый PIN-код):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-pin -l --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Using slot 0 with a present token (0x1)<br />
Please enter SO PIN: <br />
Please enter the new PIN: <br />
Please enter the new PIN again: <br />
User PIN successfully initialized<br />
</source><br />
<br />
===Инициализация токена===<br />
{{Attention|При инициализации все данные с токена будут удалены!}}<br />
Для инициализации токена следует выполнить команду (необходимо ввести so-pin карты 2 раза или передать его в качестве параметра --so-pin):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-token --label RuTokenECP --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Using slot 0 with a present token (0x1)<br />
Please enter the new SO PIN: <br />
Please enter the new SO PIN (again): <br />
Token successfully initialized<br />
</source><br />
<br />
===Удаление объекта===<br />
Для удаления объекта необходимо указать его тип и идентификатор (id) или название (label). Открытый и закрытый ключ удаляются отдельно.<br />
<source lang="text" highlight="1">$ pkcs11-tool -b -y privkey --login --id 1024 --module /usr/lib64/pkcs11/librtpkcs11ecp.so</source><br />
<br />
Типы объектов:<br />
*privkey – закрытый ключ;<br />
*pubkey – открытый ключ;<br />
*cert – сертификат.<br />
<br />
===Создание ключевой пары===<br />
<br />
{{Note| Для генерации ключевой пары ГОСТ и RSA на Рутокене также можно использовать [[Rutoken#Генерация_пары_ключей_и_формирование_запроса_на_сертификат|веб-сервис «Центр регистрации Рутокен»]] (https://ra.rutoken.ru/)}}<br />
<br />
Создание ключевой пары по алгоритму ГОСТ-2001 (PIN-код пользователя указывается в опции --pin, или запрашивается, если опцию не задать):<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --login --pin 12345678 --keypairgen --key-type GOSTR3410:A --id 0101 --label "my key"<br />
Using slot 0 with a present token (0x1)<br />
Key pair generated:<br />
Private Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
label: my key<br />
ID: 0101<br />
Usage: sign, unwrap<br />
Public Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
VALUE: a973f28ea2462781249fff1060d37276f23030e9766b54b8a14f0daa6fba6a7d<br />
62f2481e00a3df35bdd6c75ed82e8e95f1a78e9db549c8ee55008cfd92d7abb2<br />
label: my key<br />
ID: 0101<br />
Usage: verify, wrap<br />
</source><br />
<br />
Создание ключевой пары по алгоритму ГОСТ-2012 (256 бит, Paramset A):<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --login --pin 12345678 --keypairgen --key-type GOSTR3410-2012-256:A --id 0001 --label "gost3410-2012"<br />
Using slot 0 with a present token (0x0)<br />
Key pair generated:<br />
Private Key Object; GOSTR3410-2012-256<br />
PARAMS OID: 06092a8503070102010101<br />
label: gost3410-2012<br />
ID: 0001<br />
Usage: sign<br />
Access: sensitive, always sensitive, never extractable, local<br />
Public Key Object; GOSTR3410-2012-256<br />
PARAMS OID: 06092a8503070102010101<br />
VALUE: ed69495c36782333e5a3f2c6cb98fb29f73cb1c1a3d1801c3dc450e0cb148c83<br />
0ebd7ffc5e2b4984022de050606403e27ceee825733f7058faed2d213e4ae15a<br />
label: gost3410-2012<br />
ID: 0001<br />
Usage: verify<br />
Access: local<br />
</source><br />
<br />
Создание ключевой пары RSA 2048 (запрашивается PIN-код пользователя):<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --keypairgen --key-type rsa:2048 --login --id 2222 --label myrsakey<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "Rutoken ECP <no label>".<br />
Please enter User PIN: <br />
Key pair generated:<br />
Private Key Object; RSA <br />
label: myrsakey<br />
ID: 2222<br />
Usage: decrypt, sign, unwrap<br />
Public Key Object; RSA 2048 bits<br />
label: myrsakey<br />
ID: 2222<br />
Usage: encrypt, verify, wrap<br />
</source><br />
{{Note|Рекомендуемая длина ключа RSA — не ниже 2048 бит.}}<br />
{{Note|Если у вас уже имеется выписанная на токен ключевая пара RSA с привязанным к ней сертификатом, то вы можете использовать их для аутентификации.}}<br />
<br />
== Ссылки ==<br />
* http://developer.rutoken.ru/pages/viewpage.action?pageId=3440675<br />
<br />
= Rutoken Web/ЭЦП =<br />
https://github.com/OpenSC/OpenSC/wiki/Aktiv-Co.-Rutoken-ECP<br />
== ssh ==<br />
ssh-add -s opensc-pkcs11.so<br />
[[Категория:Криптография]]<br />
{{Category navigation|title=Криптография|category=Криптография|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=77643CoreCtrl2024-01-21T18:05:39Z<p>IgorN: Добавлена категория Программы.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Открыть для редактирования конфигурационный файл GRUB:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]<br />
<br />
<br />
[[Category:Программы]]</div>IgorNhttps://www.altlinux.org/index.php?title=Steam_Proton&diff=77642Steam Proton2024-01-21T18:04:28Z<p>IgorN: Добавлена категория Игры.</p>
<hr />
<div>== Описание ==<br />
<br />
'''Proton''' (SteamPlay) — слой совместимости для запуска Windows-программ, ориентированный на запуск компьютерных игр. Предлагается в качестве опции-инструмента в [[Steam|клиенте Steam]] для бесшовного запуска игр из библиотеки пользователя. В качестве составного произведения распространяется под лицензией 3-clause BSD.<br />
<br />
* Является ответвлением [[WINE|Wine]], развиваемым компанией Valve. Основные отличия от Wine:<br />
** В качестве транслятора вызовов Direct3D (DirectX) в Vulkan задействует [https://github.com/doitsujin/dxvk DXVK] и [https://github.com/HansKristian-Work/vkd3d-proton vkd3d-proton].<br />
*** На момент 2024 года требуется видеокарта с аппаратной поддержкой Vulkan 1.3 и актуальные драйвера, поддерживающие новейшие Vulkan-расширения и версии протокола Wayland. На старом оборудовании (видеокарты десятилетней давности и старее) и устаревшей пакетной базе (платформа 9 и старее) работоспособность затруднена или отсутствует.<br />
** Реализована Python-обёртка и набор библиотек для интеграции в клиент Steam.<br />
** Используются дополнительные патчи, включая расширенную поддержку анти-читов, для достижения работоспособности отдельных игр и игровых устройств.<br />
* Первый выпуск состоялся в 2018 году. Историческая справка: https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561<br />
* Официальный репозиторий: https://github.com/ValveSoftware/Proton<br />
* Официальное руководство пользователя: https://github.com/ValveSoftware/Proton#readme<br />
* Справка по применению опций совместимости: https://github.com/ValveSoftware/Proton#runtime-config-options<br />
* Каталог отчётов пользователей с рецептами запуска различных игр: https://www.protondb.com/<br />
** Полная работоспособность достигнута для многих тысяч игр, но всё ещё остаётся небольшое число тех, что работают с некоторыми проблемами или требуют дополнительных манипуляций. Так же есть незначительное количество полностью неработоспособных, большая часть из которых не работает из-за намеренной блокировки запуска анти-читами.<br />
<br />
<br />
== Первоначальная настройка ==<br />
<br />
Производится через клиент Steam. Для этого перейти в ''Steam / Настройки / Совместимость'' и отметить два пункта:<br />
* ''Включить Steam Play для поддерживаемых продуктов''.<br />
* ''Включить Steam Play для всех других продуктов''.<br />
<br />
[[Файл:Altlinux steam proton.png|700px|центр]]<br />
<br />
Для применения изменений необходимо перезапустить клиент Steam. После перезапуска появится возможность устанавливать Windows-игры и запускать их. Proton будет автоматически загружен при попытке запуска любой Windows-игры из библиотеки.<br />
<br />
[[Файл:Altlinux steam proton кнопка установки игры.png|600px|центр]]<br />
<br />
<br />
== Использование версий ==<br />
<br />
Пользователям предлагается следующий набор версий-сборок:<br />
** ''Proton <номер версии>'' — стабильные версии, использующие в качестве основы стабильную версию Wine с переносом отдельных изменений из ветки разработки. В клиенте Steam по умолчанию предлагается крайняя стабильная версия.<br />
** ''Proton Experimental'' — версия со свежайшими изменениями из ветки разработки.<br />
** ''Proton Hotfix'' — версия с экстренными, экспериментальными и адресными исправлениями. Используется в исключительных случаях.<br />
<br />
Версию Proton можно переключить глобально или для каждой игры отдельно. Глобальный переключатель:<br />
[[Файл:Altlinux steam proton глобальный переключатель.png|700px|центр]]<br />
<br />
Пример для отдельной игры. Чтобы появился список для выбора версий, необходимо отметить пункт ''"Принудительно использовать выбранный инструмент совместимости Steam Play"'':<br />
[[Файл:Altlinux steam proton локальный переключатель.png|700px|центр]]<br />
<br />
Кроме официальных сборок, существуют варианты от сообщества. Среди них можно выделить следующие:<br />
** [https://github.com/GloriousEggroll/proton-ge-custom proton-ge-custom] — [[#Использование сборок Proton от сообщества через Steam|после небольшой подготовки]] можно использовать из клиента Steam так же, как обычный Proton. Сборка формируется на основе Proton Experimental с добавлением различных патчей от сообщества и поддерживает дополнительные возможности.<br />
** [[PortProton]] — отдельная обёртка-приложение, независящая от клиента Steam. Позволяет запускать программы вне библиотеки Steam без специфичных манипуляций.<br />
<br />
<br />
== Особенности структуры каталогов Steam Proton ==<br />
<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
{{Note|Пути указаны относительно каталога steamapps, расположенного по умолчанию.}}<br />
<br />
* Версии Proton загружаются в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог игры со всем содержимым отделён от префикса и располагается в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог префикса располагается в {{path|/home/$USER/.local/share/Steam/steamapps/compatdata/}}.<br />
* Для каждой игры используется отдельный префикс.<br />
* Префикс создаётся при запуске игры. То есть для появления префикса в ./compatdata игра должна быть запущена хотя бы раз.<br />
* В префиксе по умолчанию создаётся стандартный Windows-пользователь с именем '''steamuser''': {{path|./Steam/steamapps/compatdata/1608450/pfx/drive_c/users/'''steamuser'''/}}.<br />
** В этом каталоге расположены стандартные каталоги Windows-пользователя, включая AppData (Application Data).<br />
** Как правило, здесь хранятся игровые сохранения, файлы конфигурации и подобное.<br />
* Моды из Мастерской (Steam workshop) размещаются в подкаталогах {{path|/home/$USER/.local/share/Steam/steamapps/workshop/}}.<br />
** Некоторые игры могут "потерять" загруженные моды, если каталог ''steamapps'' располагается не по умолчанию (на другом разделе).<br />
<br />
<br />
<br />
== Использование Proton напрямую без задействования клиента Steam ==<br />
<br />
В Proton реализован механизм прямого запуска тех или иных программ, размещённых в Proton-префиксе, без задействования клиента Steam. Использование напрямую позволяет запускать программы внутри конкретного Proton-префикса, включая штатные Wine-программы. В контексте игр это даёт удобную возможность установить русификатор, моды и подобное, а так же запускать различные инструменты: программу конфигурации, игровой редактор и подобное.<br />
<br />
=== Пример запуска установочного файла OpenGL-обёртки для игры Disciples 2 ===<br />
<br />
Расположение префикса игры по умолчанию:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/}}<br />
<br />
Установочный файл OpenGL-обёртки (DisciplesWrapperV1.90.exe) был размещён в корне префикса:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''}}<br />
<br />
Команда на запуск установочного файла:<br />
'''STEAM_COMPAT_CLIENT_INSTALL_PATH'''=/home/$USER/.local/share/Steam/ '''STEAM_COMPAT_DATA_PATH'''=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 ''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/'''proton''''' '''run''' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''<br />
<br />
Из-за длины путей выглядит громоздко и сложно, но на деле команда проста:<br />
* '''STEAM_COMPAT_CLIENT_INSTALL_PATH''' — передать этой переменной окружения путь до корневого каталога клиента Steam. В данном случае это ''/home/$USER/.local/share/Steam/''<br />
* '''STEAM_COMPAT_DATA_PATH''' — передать путь до Proton-префикса, который создаётся при первом запуске игры. Путь из примера: ''/home/$USER/.steam/steam/steamapps/compatdata/1640/'', где имя каталога с префиксом соответствует ID игры в Steam — 1640.<br />
* '''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton''' — путь до python-скрипта ''proton'', с помощью которого производится задействование Proton. Путь будет отличаться в зависимости от установленной версии Proton. В данном случае используется Proton 8.0. Так же стоит отметить, что в имени каталога Proton присутствует пробел, его нужно экранировать обратной косой чертой (\) или экранировать кавычками путь целиком.<br />
* '''''run'' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/DisciplesWrapperV1.90.exe''' — команда на запуск указанного исполняемого файла (DisciplesWrapperV1.90.exe) с помощью Proton.<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton окно установки обёртки.png|центр]]<br />
<br />
Важно отметить, что подобные установщики ожидают обнаружить файлы игры в границах префикса, но в структуре каталогов Steam каталог с игрой располагается вне префикса. В связи с этим, в диалоге выбора пути потребуется указать путь через структуру каталогов Linux.<br />
В некоторых случаях это вызывает проблемы (установщик может отказаться продолжать работу, выведя ошибку). Надёжнее создать в префиксе символическую ссылку на каталог с файлами игры, что позволит установщику получить привычный DOS-путь к файлам игры. Пример расположения точки входа:<br />
<br><br />
{{path|"./drive_c/Program Files (x86)/Steam/steamapps/common/Символическая_ссылка_на_каталог_игры"}}<br />
<br />
Пример создания символической ссылки (пробелы и скобки в имени каталогов экранированы обратной косой чертой):<br />
ln -s /home/$USER/.local/share/Steam/steamapps/common/Disciples\ II\ Galleans\ Return /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/Program\ Files\ \(x86\)/Steam/steamapps/common/Disciples\ II\ Galleans\ Return<br />
<br />
<br />
=== Запуск стандартных Wine-программ в Proton-префиксе ===<br />
<br />
В Proton-префиксе присутствует полный набор программ из стандартного Wine-префикса. Их можно задействовать так же, как это делается для Wine-префикса. Пример запуска '''winecfg''' всё в том же префиксе игры Disciples 2:<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''winecfg'''<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton winecfg.png|центр]]<br />
<br />
Пример запуска «Установка/удаление программ» (uninstaller):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''uninstaller'''<br />
<br />
[[Файл:Altlinux steam proton uninstaller.png|центр]]<br />
<br />
Пример запуска редактора реестра (regedit):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''regedit'''<br />
<br />
[[Файл:Altlinux steam proton regedit.png|центр]]<br />
<br />
Пример запуска Диспетчера задач (taskmgr):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''taskmgr'''<br />
<br />
[[Файл:Altlinux steam proton taskmgr.png|центр]]<br />
<br />
<br />
=== Пример запуска сторонних игр в Proton-префиксе ===<br />
<br />
Да, это работает. Демонстрация на примере запуска Konung 2.<br />
Установка из ''setup_konung2_russian_2.0.0.3.exe'':<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/'''setup_konung2_russian_2.0.0.3.exe'''<br />
<br />
[[Файл:Altlinux steam proton установка konung 2.png|600px|центр]]<br />
<br />
По запуску есть особенность. Если запускать исполняемый файл напрямую, то игра не запустится, но если её стартовать с файла-ярлыка (.lnk), запуск проходит успешно. lnk-файлы хранятся в каталоге {{path|./drive_c/ProgramData/Microsoft/Windows/Start Menu/Programs/}}.<br />
Запуск с lnk-файла (пробелы и скобки экранированы обратной косой чертой):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/Konung\ 2\ -\ Blood\ of\ Titans\ \[GOG\.com\]/'''Konung\ 2\ -\ Blood\ of\ Titans.lnk'''<br />
<br />
<br />
[[Файл:Altlinux steam proton konung 2 меню.png|700px|центр]]<br />
<br />
<br />
== Использование сборок Proton от сообщества через Steam ==<br />
<br />
=== Пример использования сборки от [https://github.com/GloriousEggroll/proton-ge-custom%20proton-ge-custom GloriousEggroll] ===<br />
{{note|Сборка требует свежайших драйверов! Видеокарты на финальном отрезке поддержки, использующие драйвера, получающие только исправления, с большой вероятностью, не смогут работать с этой сборкой.}}<br />
<br><br />
Из официального репозитория загрузить крайнюю выпущенную версию: https://github.com/GloriousEggroll/proton-ge-custom/releases Сборка поставляется в обычном tar-архиве.<br />
<br><br />
<br><br />
В данном примере был загружен архив '''GE-Proton8-25.tar.gz''':<br />
<br />
[[Файл:Altlinux steam proton tar архив сборки GE.png|600px|центр]]<br />
<br />
Чтобы клиент Steam мог взаимодействовать со сборкой, её необходимо распаковать и поместить каталог ''GE-Proton<номер версии>'' со всем содержимым в {{path|/home/$USER/.local/share/Steam/compatibilitytools.d/}}. Если каталог ''compatibilitytools.d'' отсутствует, его следует создать.<br />
<br><br />
<br><br />
После перезапуска клиента Steam сборка станет доступной для выбора:<br />
[[Файл:Altlinux steam proton выбор GE в меню.png|600px|центр]]<br />
<br />
<br />
[[Category:WINE]]<br />
[[Category:Игры]]</div>IgorNhttps://www.altlinux.org/index.php?title=PortProton&diff=77641PortProton2024-01-21T18:03:45Z<p>IgorN: Добавлена категория Игры.</p>
<hr />
<div>{{epm|portproton}}<br />
== Описание ==<br />
<br />
PortProton — это проект, разработанный командой linux-gaming.ru для того, чтобы сделать легким и удобным запуск Windows-игр на Linux как для начинающих, так и для продвинутых пользователей. Проект стремится сделать запуск игр (и другого программного обеспечения) максимально простым, но в то же время предоставляет гибкие настройки для продвинутых пользователей.<br />
<br />
<br><br />
Официальная страница проекта: https://linux-gaming.ru/2022/11/24/portproton/<br />
<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install portproton<br />
apt-get install i586-{libvulkan1,libd3d,libGL,libgio,libnm,libnsl1,libnss,glibc-nss,glibc-pthread,libunwind,xorg-dri-swrast}<br />
exit<br />
<br />
<br><br />
Вариант установки с помощью [https://www.altlinux.org/Epm eepm]:<br />
su -<br />
epm full-upgrade<br />
epm play portproton<br />
exit<br />
<br />
<br />
== Списки поддерживаемых программ запуска ==<br />
<br />
{{Note|Списки обновляются от версии к версии.}}<br />
<br />
Список программ запуска игровых площадок и онлайн-игр:<br />
* Lesta Game Center<br />
* vkPlay Game Center<br />
* Battle.net Launcher<br />
* Epic Games Launcher<br />
* GoG Galaxy, Ubisoft<br />
* EVE Online<br />
* Rockstar Games Launcher<br />
* League of Legends<br />
* Gameforge Client<br />
* World of Sea Battle<br />
* Caliber<br />
* Crossaut<br />
* Warframe<br />
* Panzar<br />
* Stalcraft<br />
* Contract Wars<br />
* Stalker Online<br />
* Metal War Online<br />
* Ankama Launcher<br />
* Indiegala Client<br />
* Plarium Play<br />
* Wargaming Game Center<br />
* OSU!<br />
* ITCH.IO<br />
* Steam (Windows)<br />
* Path of Exile<br />
<br />
<br><br />
<br><br />
<br />
Список программ запуска эмуляторов:<br />
* Dolphin 5.0<br />
* MAME<br />
* ScuumVM<br />
* RetroArch<br />
* PPSSPP Windows<br />
* Citra<br />
* Cemu<br />
* DuStation<br />
* ePSXe<br />
* Project64<br />
* VBA-M<br />
* Yabause<br />
* Xenia<br />
* FCEUX<br />
* xemu<br />
* Demul<br />
* Rpcs3<br />
<br />
<br />
== Конфигурирование ==<br />
Рекомендуемые параметры запуска для конкретной игры/программы расположены в {{path|~/PortWINE/PortProton/data/scripts/portwine_db/<имя игры>}}.<br />
<br><br />
После первого запуска exe-файла в этом же каталоге создается ppdb-файл. В ppdb-файле содержится описание последних изменений настроек portproton для игры/программы.<br />
<br />
<br />
== Прочее ==<br />
Дополнительно см. на [[Игры#Порт-протон|странице]] про игры.<br />
<br />
<br />
[[Category:WINE]]<br />
[[Category:Игры]]</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77640Steam2024-01-21T18:03:16Z<p>IgorN: Добавлена категория Игры.</p>
<hr />
<div>== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
su -<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
exit<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
su -lc "epm play i586-fix"<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton|Steam Proton]].<br />
<br />
<br />
== Использование консоли Steam ==<br />
Консоль Steam позволяет производить отладку, автоматизацию различных действий и ряд манипуляций, недоступных через интерфейс.<br />
<br />
Для включения режима доступности консоли выполнить с правами обычного пользователя:<br />
xdg-open steam://open/console<br />
<br />
Или при запущенном клиенте открыть страницу в браузере:<br />
steam://open/console<br />
<br />
Результат:<br />
[[Файл:Altlinux steam console.png|700px|центр]]<br />
<br />
Поиск команд:<br />
find "шаблон для поиска"<br />
<br />
<br />
== Решение проблем ==<br />
=== Ошибка при установке Steam на Sisyphus ===<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
<br />
=== Бесконечная загрузка после входа ===<br />
<br />
Проблема может возникать с некоторыми российскими провайдерами. Описание проблемы в системе контроля ошибок:<br />
https://github.com/ValveSoftware/steam-for-linux/issues/10297<br />
<br />
Решается изменением значения MTU на ''1250'':<br />
ip link set dev <имя сетевого интефейса> mtu 1250<br />
или<br />
nmcli device modify <имя сетевого интефейса> mtu 1250<br />
<br />
Вариант решения через правило для iptables:<br />
iptables -I FORWARD -o <имя сетевого интефейса> -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
<br />
<br />
[[Категория:Программы]]<br />
[[Category:Игры]]<br />
[[Category:Epm]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=CoreCtrl&diff=77639CoreCtrl2024-01-21T17:53:15Z<p>IgorN: О CoreCtrl.</p>
<hr />
<div>{{Stub}}<br />
== Описание ==<br />
<br />
Программа для мониторинга, управления вентиляторами и профилями разгона видеокарты и процессора.<br />
* Официальный репозиторий: https://gitlab.com/corectrl/corectrl<br />
* Официальное руководство пользователя: https://gitlab.com/corectrl/corectrl/-/wikis/home<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install corectrl<br />
exit<br />
<br />
== Запуск без запроса прав суперпользователя ==<br />
В Альт реализовано соответствующее правило для polkit: {{path|/etc/polkit-1/rules.d/90-corectrl.rules}} Благодаря этому, для того, чтобы CoreCtrl не запрашивала права суперпользователя, достаточно наличия пользователя в группе ''corectrl''. Если пользователь не в группе, то его можно добавить следующим образом:<br />
su -<br />
usermod -a -G corectrl ''имя_пользователя''<br />
exit<br />
<br />
После перезапуска сессии CoreCtrl не будет запрашивать права суперпользователя.<br />
<br />
== Автозапуск ==<br />
Для запуска программы при старте сессии достаточно от имени обычного пользователя скопировать desktop-файл в {{path|~./config/autostart/}} Пример:<br />
cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/<br />
<br />
== Включение расширенных настроек ==<br />
=== AMD ===<br />
Включение расширенных настроек позволяет управлять дополнительными опциями, предоставляемыми ядерным драйвером ''amdgpu''. К примеру, можно управлять значениями частоты и напряжения для каждого P-state видеокарты. Для включения необходимо передать параметр ядру:<br />
amdgpu.ppfeaturemask=0xffffffff<br />
<br />
Это можно осуществить через загрузочную запись [[Grub|GRUB]]. Открыть для редактирования конфигурационный файл GRUB:<br />
su -<br />
mc -e /etc/sysconfig/grub2<br />
<br />
Найти строку ''GRUB_CMDLINE_LINUX_DEFAULT'' и добавить запись ''amdgpu.ppfeaturemask=0xffffffff''. Пример строки с внесённой записью:<br />
[[Файл:Altlinux corectrl grub.png|700px|центр]]<br />
<br />
Сохранить изменения и выполнить с правами суперпользователя:<br />
update-grub<br />
<br />
Перезагрузиться.<br />
<br />
Теперь в CoreCtrl должны быть доступны дополнительные опции:<br />
[[Файл:Altlinux corectrl расширенные настройки.png|700px|центр]]</div>IgorNhttps://www.altlinux.org/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Altlinux_corectrl_%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8.png&diff=77638Файл:Altlinux corectrl расширенные настройки.png2024-01-21T17:49:02Z<p>IgorN: </p>
<hr />
<div>Вид на дополнительные опции.</div>IgorNhttps://www.altlinux.org/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Altlinux_corectrl_grub.png&diff=77637Файл:Altlinux corectrl grub.png2024-01-21T17:43:38Z<p>IgorN: </p>
<hr />
<div>Вид на заполненную строку GRUB_CMDLINE_LINUX_DEFAULT.</div>IgorNhttps://www.altlinux.org/index.php?title=Rutoken&diff=77636Rutoken2024-01-21T16:29:14Z<p>IgorN: Для Рутокен ЭЦП 2.0 и 3.0 и pkcs11-tool дополнительно добавлено примечание о запуске службы pcscd. Это важное уточнение для людей, которые не будут читать статью, начиная с КриптоПро, а сразу перейдут к целевому разделу.</p>
<hr />
<div>{{Stub}}<br />
Рутокен ЭЦП 2.0 / 3.0 — токен с аппаратной реализацией российского стандарта электронной подписи, шифрования и хеширования. Обеспечивает безопасное хранение ключей электронной подписи во встроенной защищенной памяти без возможности их экспорта.<br />
<br />
Рутокен S — не имеет аппаратной реализации алгоритмов подписи. Устройство предназначено для безопасного хранения ключей шифрования и паролей, защиты персональных данных, и защиты от несанкционированного доступа. Основной ключевой носитель для российских СКЗИ (КриптоПро, ViPNet).<br />
<br />
Рутокен Lite — не имеет аппаратной реализации алгоритмов подписи.<br />
<br />
= Настройка аутентификации =<br />
С помощью следующих инструкций можно настроить аутентификацию в системе с помощью сертификата и ключа на Рутокен ЭЦП:<br />
* [[Аутентификация по ключу]]<br />
* [[alterator-auth-token]]<br />
<br />
Также с его помощью может быть реализована [[двухфакторная аутентификация]].<br />
<br />
= Значения PIN-кодов на Рутокен по умолчанию =<br />
У Рутокен:<br />
''PIN-коды Рутокен S/Lite/ЭЦП 2.0/ЭЦП 3.0, установленные по умолчанию — Пользователь: 12345678; Администратор: 87654321''<br />
<br />
У Рутокен Web:<br />
PIN на скретч-карте.<br />
<br />
<br />
=КриптоПро=<br />
Подробнее о КриптоПро: [[КриптоПро]]<br />
Для поддержки Рутокен в качестве ключевого носителя в СКЗИ «КриптоПро CSP» необходимо установить модуль поддержки (из архива КриптоПро):<br />
<source lang="text" highlight="1"># apt-get install cprocsp-rdr-rutoken* </source><br />
<br />
==Управление считывателями==<br />
Проверка видимости токена:<br />
<source lang="text" highlight="1">$ list_pcsc<br />
Aktiv Co. Rutoken S 00 00</source><br />
<br />
{{Note|Cлужба {{cmd|pcscd}} должна быть запущена. Запустить службу {{cmd|pcscd}} и добавить её в автозапуск при загрузке системы:<br />
<source lang="text" highlight="1,2"># systemctl start pcscd<br />
# systemctl enable pcscd</source><br />
<br />
Если при токен не виден может потребоваться удалить пакет pcsc-lite-openct:<br />
<source lang="text" highlight="1"># apt-get remove pcsc-lite-openct</source>}}<br />
<br />
Просмотр доступных считывателей:<br />
<br />
<source lang="text" highlight="1">$ csptest -enum -info -type PP_ENUMREADERS | iconv -f cp1251<br />
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX.<br />
CryptAcquireContext succeeded.HCRYPTPROV: 26310531<br />
GetProvParam(...PP_ENUMREADERS...) until it returns false<br />
Len Byte NickName/Name<br />
_____________________________<br />
0x012a 0x03 Aktiv Co. Rutoken S 00 00<br />
MyRutoken<br />
0x012a 0x01 FLASH<br />
FLASH<br />
0x012a 0x00 HDIMAGE<br />
HDD key storage<br />
Cycle exit when getting data. 3 items found. Level completed without problems.<br />
Total: SYS: 0,040 sec USR: 0,040 sec UTC: 0,160 sec<br />
[ErrorCode: 0x00000000]</source><br />
<br />
Инициализация считывателя {{path|Aktiv Co. Rutoken S 00 00}} (требуется, если считыватель есть в списке видимых считывателей и отсутствует в списке настроенных), в параметре -add указывается имя, которое было получено при просмотре видимых считывателей, в параметре -name — удобное для обращения к считывателю имя, например, {{path|Rutoken}} (под правами root):<br />
<br />
<source lang="text" highlight="1"># cpconfig -hardware reader -add "Aktiv Co. Rutoken S 00 00" -name "MyRutoken"<br />
Adding new reader:<br />
Nick name: Aktiv Co. Rutoken S 00 00<br />
Name device: MyRutoken<br />
Succeeded, code:0x0<br />
</source><br />
<br />
{{Note|Если получаете ошибку:<br />
<source lang="Bash">-bash: cpconfig: команда не найдена</source><br />
Выполните:<br />
<source lang="Bash">export PATH="$(/bin/ls -d /opt/cprocsp/{s,}bin/*|tr '\n' ':')$PATH"</source><br />
Для пользователя root будет действовать до перезагрузки}}<br />
<br />
==Создание контейнера==<br />
Создание контейнера на токене/смарт-карте:<br />
<source lang="text" highlight="1">$ csptest -keyset -provtype 80 -newkeyset -cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' <br />
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX.<br />
AcquireContext: OK. HCRYPTPROV: 13027379<br />
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP<br />
Container name: "Rutoken<br />
"<br />
Signature key is not available.<br />
Attempting to create a signature key...<br />
a signature key created.<br />
Exchange key is not available.<br />
Attempting to create an exchange key...<br />
an exchange key created.<br />
Keys in container:<br />
signature key<br />
exchange key<br />
Extensions:<br />
OID: 1.2.643.2.2.37.3.9<br />
PrivKey: Not specified - 28.05.2020 11:35:54 (UTC)<br />
<br />
OID: 1.2.643.2.2.37.3.10<br />
PrivKey: Not specified - 28.05.2020 11:37:29 (UTC)<br />
Total: SYS: 0,180 sec USR: 0,050 sec UTC: 107,930 sec<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
При установленном пакете {{pkg|cprocsp-rdr-gui-gtk}} будет показано графическое окно, где будет предложено перемещать указатель мыши или нажимать клавиши:<br />
<br />
[[Изображение:Cryptopro-newkeyset-ru.png|Генерация случайной последовательности]]<br />
<br />
{{note|Если такой пакет не установлен, будет предложено ввести любые символы с клавиатуры.}}<br />
<br />
После этого необходимо предъявить PIN-код пользователя.<br />
<br />
После указания PIN-кода снова будет предложено перемещать указатель мыши.<br />
{{note|Если используется модель Рутокен ЭЦП, можно будет выбрать способ создания контейнера.<br />
<br />
Создание неизвлекаемого контейнера:<br />
<br />
[[Файл:Rutoken_newcont.png|Создание неизвлекаемого контейнера]]<br />
<br />
В этом случае будет использована встроенная криптография носителя.<br />
<br />
Создание контейнера КриптоПро:<br />
<br />
[[Файл:Rutoken_newcont2.png|Создание обычного контейнера]]<br />
В этом случае будет использована криптография КриптоПро}}<br />
<br />
Проверить наличие контейнеров можно с помощью команды:<br />
<br />
<source lang="text" highlight="1">$ csptest -keyset -enum_cont -fqcn -verifyc | iconv -f cp1251<br />
CSP (Type:80) v5.0.10001 KC1 Release Ver:5.0.11319 OS:Linux CPU:AMD64 FastCode:READY:AVX.<br />
AcquireContext: OK. HCRYPTPROV: 22009731<br />
\\.\Aktiv Co. Rutoken S 00 00\Rutoken<br />
OK.<br />
Total: SYS: 0,030 sec USR: 0,050 sec UTC: 2,400 sec<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Просмотр подробной информации о контейнере:<br />
<source lang="text" highlight="1">$ csptestf -keyset -container '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' -info </source><br />
<br />
Удалить контейнер можно с помощью команды:<br />
<source lang="text" highlight="1">$ csptestf -keyset -deletekeyset -cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' </source><br />
<br />
==Управление сертификатами==<br />
===Создание запроса на сертификат===<br />
Создание запроса на получение сертификата средствами КриптоПро:<br />
<source lang="text" highlight="1">$ cryptcp -creatrqst -dn "список имён полей" -cont 'путь к контейнеру' <название_файла>.csr</source><br />
Например:<br />
<source lang="text" highlight="1-5">$ cryptcp -creatrqst \<br />
-dn "E=ivanov@mail.mail,CN=Иванов Иван Иванович,SN=Иванов,G=Иван Иванович,C=RU,L=Калининград,ST=39 Калининградская обл.,street=Пр-т Победы 14 кв.3" \<br />
-provtype 80 -nokeygen \<br />
-cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken' \<br />
-certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.5.5.7.3.2" rutoken.req<br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
Запрос успешно создан и сохранен в файле.<br />
[ErrorCode: 0x00000000]<br />
</source><br />
Запрос на сертификат необходимо подписать в аккредитованном удостоверяющем центре.<br />
<br />
===Добавление (запись) сертификатов===<br />
<br />
Добавление сертификата, без привязки к ключам (только проверка ЭЦП):<br />
<br />
<source lang="text" highlight="1">$ certmgr -inst -file cert.cer</source><br />
<br />
Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище uMy:<br />
<source lang="text" highlight="1">$ certmgr -inst -file cert.cer -store uMy -cont '\\.\Aktiv Co. Rutoken S 00 00\Rutoken'</source> <br />
<br />
Запись сертификата клиента в контейнер:<br />
<source lang="text" highlight="1">$ cryptcp -instcert -provtype 80 -ku -askpin rutoken.cer <br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
Пожалуйста, выберите нужный контейнер (введите его номер и нажмите [Enter]).<br />
<br />
#1: Rutoken<br />
#2: 506c7567696e3036303232303139313831333030<br />
#3: test<br />
Номер:1<br />
Введите пароль для контейнера Rutoken: <br />
Сертификат был успешно установлен.<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Добавление сертификата УЦ из файла certne_ucw.cer в хранилище машины (с правами root): <br />
<source lang="text" highlight="1"># /opt/cprocsp/bin/amd64/certmgr -inst -file certne_ucw.cer -store mRoot</source><br />
<br />
Добавление корневых сертификатов из файла cert.p7b (под root): <br />
<source lang="text" highlight="1"># /opt/cprocsp/bin/amd64/certmgr -inst -all -file cert.p7b -store mRoot</source><br />
Необходимо последовательно добавить все сертификаты.<br />
===Просмотр сертификатов===<br />
Просмотр сертификатов:<br />
<source lang="text" highlight="1">$ certmgr -list</source><br />
<br />
Просмотр сертификатов в локальном хранилище uMy:<br />
<source lang="text" highlight="1">$ certmgr -list -store uMy</source><br />
Просмотр сертификатов в контейнере: <br />
<br />
<source lang="text" highlight="1">$ certmgr -list -container '\\.\Aktiv Rutoken ECP - CP 00 00\Rutoken'<br />
Certmgr 1.1 (c) "Crypto-Pro", 2007-2018.<br />
program for managing certificates, CRLs and stores<br />
<br />
=============================================================================<br />
1-------<br />
Issuer : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2<br />
Subject : E=ivanov@mail.mail, CN=Иванов Иван Иванович, SN=Иванов, G=Иван Иванович, C=RU, S=39 Калининградская обл., L=Калининград, STREET=Пр-т Победы 14 кв.3<br />
Serial : 0x120032F1A2A438324D0C0EFA2900000032F1A2<br />
SHA1 Hash : 85b37ce3e2fce0f86f7847000eafca0a9c5df274<br />
SubjKeyID : c16fc96ae4670ac21b219434caae3a9f68b54ca2<br />
Signature Algorithm : ГОСТ Р 34.11/34.10-2001<br />
PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)<br />
Not valid before : 05/03/2019 10:56:32 UTC<br />
Not valid after : 05/06/2019 11:06:32 UTC<br />
PrivateKey Link : Certificate from container. No link to key<br />
CA cert URL : http://testca.cryptopro.ru/CertEnroll/test-ca-2014_CRYPTO-PRO%20Test%20Center%202.crt<br />
OCSP URL : http://testca.cryptopro.ru/ocsp/ocsp.srf<br />
CDP : http://testca.cryptopro.ru/CertEnroll/CRYPTO-PRO%20Test%20Center%202.crl<br />
Extended Key Usage : 1.3.6.1.5.5.7.3.4<br />
1.3.6.1.5.5.7.3.2<br />
1.3.6.1.4.1.311.10.3.12<br />
=============================================================================<br />
<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Просмотр корневых сертификатов:<br />
<source lang="text" highlight="1">$ certmgr -list -store uRoot</source><br />
<br />
==Создание и проверка подписи==<br />
Для создания электронной подписи файла необходимо указать сертификат и имя подписываемого файла:<br />
<source lang="text" highlight="1">$ cryptcp -sign -dn E=ivanov@mail.mail -der my_file.odt <br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
<br />
Будет использован следующий сертификат:<br />
Субъект:11223344556, 102301111222, Пр-т Победы 14 кв.3, Калининград, 39 Калининградская обл., RU, ivanov@mail.mail, Иван Иванович, Иванов, Иванов Иван Иванович<br />
Действителен с 27.02.2019 13:41:47 по 27.05.2019 13:51:47<br />
<br />
Цепочки сертификатов проверены.<br />
Папка './':<br />
my_file.odt... Подпись данных... <br />
<br />
Подписанное сообщение успешно создано.<br />
[ErrorCode: 0x00000000]</source><br />
На выходе появится файл {{path|my_file.odt.sig}}, содержащий как сам подписываемый файл, так и электронную подпись. <br />
Для проверки прикреплённой подписи выполните команду:<br />
<source lang="text" highlight="1">$ cryptcp -verify my_file.odt.sig<br />
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.<br />
Утилита командной строки для подписи и шифрования файлов.<br />
<br />
Найдено сертификатов: 2<br />
Цепочки сертификатов проверены.<br />
Папка './':<br />
my_file.odt.sig... Проверка подписи... <br />
Автор подписи: 11223344556, 102301111222, Пр-т Победы 14 кв.3, Калининград, 39 Калининградская обл., RU, ivanov@mail.mail, Иван Иванович, Иванов, Иванов Иван Иванович<br />
Подпись проверена.<br />
[ErrorCode: 0x00000000]<br />
</source><br />
<br />
Для извлечения файла с данными из файла электронной подписи необходимо указать имя файла, в который будут извлечены данные, в конце команды проверки подписи: <br />
<source lang="text" highlight="1">$ cryptcp -verify my_file.odt.sig new_file.odt</source><br />
Для создания откреплённой (detached) подписи необходимо заменить ключ -sign на -signf:<br />
<source lang="text" highlight="1">$ cryptcp -signf -dn E=ivanov@mail.mail -der my_file.odt </source><br />
Проверка откреплённой подписи:<br />
<source lang="text" highlight="1">$ cryptcp -vsignf my_file.odt </source><br />
<br />
<br />
= Рутокен S =<br />
{{attention|Rutoken S — не является активным ключевым носителем — в нем нет аппаратной поддержки алгоритмов, а для использования RSA в opensc < 0.12 были реализованы '''выгрузка''' '''приватного''' (!!!) ключа из Rutoken S и работа с этим ключом через openssl.}}<br />
<br />
https://github.com/OpenSC/OpenSC/wiki/Aktiv-Co.-Rutoken-S<br />
== Пакеты ==<br />
pcsc-lite-rutokens<br />
opensc<br />
<br />
== Утилита pkcs11-tool==<br />
{{Note|[http://forum.rutoken.ru/topic/2799/ С форума Рутокен]: Если Вы хотите работать через opensc-pkcs11.so, то Вы должны обязательно предварительно отформатировать токен через pkcs15-init, а затем создавать и работать с ключами только через opensc-pkcs11.so.<br />
<br />
Если Вы хотите работать через наш PKCS#11, то лучше всего форматировать через<br />
[https://dev.rutoken.ru/pages/viewpage.action?pageId7995615/ Утилиту администрирования Рутокен], а затем создавать и работать с ключами только через наш PKCS#11. Это самый поддерживаемый путь. (не для Рутокен S??)<br />
<br />
Вы можете отформатировать токен через pkcs15-init и работать с нашим PKCS#11. Но в этом случае через opensc-pkcs11.so ничего не будет доступно.}}<br />
<br />
{{Note|Rutoken S не поддерживает работу с библиотекой rtPKCS11ECP (librtpkcs11ecp.so), т.е. операции генерации и импорта ключей на Рутокен S выполнить не получится.<br />
<br />
При работе с Рутокен S необходимо указывать путь до библиотеки opensc-pkcs11:<br />
<source lang="text" highlight="1">--module /usr/lib64/pkcs11/opensc-pkcs11.so</source>}}<br />
<br />
Список поддерживаемых механизмов:<br />
<source lang="text" highlight="1">$ pkcs11-tool -v --module /usr/lib64/pkcs11/opensc-pkcs11.so --list-mechanisms<br />
Using slot 0 with a present token (0x0)<br />
Supported mechanisms:<br />
SHA-1, digest<br />
SHA256, digest<br />
SHA384, digest<br />
SHA512, digest<br />
MD5, digest<br />
RIPEMD160, digest<br />
GOSTR3411, digest</source><br />
<br />
===Проверка работы===<br />
<br />
Проверяем работу токена, он должен быть виден в списке:<br />
<source lang="text" highlight="1">$ pkcs11-tool -L --module /usr/lib64/pkcs11/opensc-pkcs11.so <br />
Available slots:<br />
Slot 0 (0x0): Aktiv Co. Rutoken S 00 00<br />
token label : User PIN (Rutoken S)<br />
token manufacturer : Aktiv Co.<br />
token model : PKCS#15<br />
token flags : login required, rng, token initialized, PIN initialized<br />
hardware version : 0.0<br />
firmware version : 0.0<br />
serial num : 398C4F0B<br />
pin min/max : 8/16<br />
</source><br />
<br />
Просмотреть имеющуюся на токене информацию можно при помощи команды (требуется пароль от токена):<br />
<source lang="text" highlight="1">$ pkcs11-tool -Ol --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "User PIN (Rutoken S)".<br />
Please enter User PIN:<br />
</source><br />
<br />
===Инициализация токена===<br />
{{Attention|При инициализации все данные с токена будут удалены!}}<br />
Для инициализации токена следует выполнить команду (необходимо ввести so-pin карты 2 раза или передать его в качестве параметра --so-pin):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-token --label RutokenS --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Please enter the new SO PIN: <br />
Please enter the new SO PIN (again): <br />
Token successfully initialized<br />
</source><br />
<br />
===Смена PIN-кода===<br />
Для смены PIN-кода необходимо выполнить команду (потребуется ввести текущий PIN-код, а затем дважды ввести новый):<br />
<source lang="text" highlight="1">$ pkcs11-tool --change-pin --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "User PIN (Rutoken S)".<br />
Please enter the current PIN: <br />
Please enter the new PIN: <br />
Please enter the new PIN again: <br />
PIN successfully changed<br />
</source><br />
<br />
===Разблокировка PIN-кода===<br />
Для того чтобы разблокировать PIN-код необходимо выполнить команду (потребуется ввести so-pin карты, а затем дважды ввести новый PIN-код):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-pin -l --module /usr/lib64/pkcs11/opensc-pkcs11.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "User PIN (Rutoken S)".<br />
Please enter SO PIN: <br />
Please enter the new PIN: <br />
Please enter the new PIN again: <br />
User PIN successfully initialized<br />
</source><br />
<br />
= Рутокен ЭЦП 2.0 и 3.0 =<br />
<br />
== Центр регистрации Рутокен ==<br />
<br />
Для генерации ключей, формирования запроса на сертификат и записи сертификата на Рутокен ЭЦП можно воспользоваться ПО «Рутокен плагин»,<br />
(работает через библиотеку PKCS#11 и совместим с плагином Госуслуг) и ПО «Центр регистрации Рутокен» [https://ra.rutoken.ru ra.rutoken.ru].<br />
<br />
Веб-сервис управления хранилищем сертификатов и ключей «Центр регистрации Рутокен» позволяет:<br />
* генерировать ключи;<br />
* создавать запросы на сертификаты;<br />
* импортировать сертификаты и связывать их с ключами;<br />
* подписывать документы электронной подписью;<br />
* менять PIN-код на устройстве.<br />
<br />
=== Установка «Рутокен плагин» ===<br />
{{Note|Cлужба {{cmd|pcscd}} должна быть запущена. Запустить службу {{cmd|pcscd}} и добавить её в автозапуск:<br />
<source lang="text" highlight="1-3"><br />
su -<br />
systemctl start pcscd<br />
systemctl enable pcscd<br />
</source>}}<br />
<br />
'''[http://www.rutoken.ru/products/all/rutoken-plugin/ Рутокен Плагин]''' представляет собой решение для электронной подписи, шифрования и двухфакторной аутентификации для Web- и SaaS-сервисов. <br />
Плагин необходим для связи USB-устройств c браузером, он позволяет опознавать и работать с ними. Для того чтобы установить плагин, необходимо загрузить соответствующий установочный файл и запустить его<br />
<br />
Чтобы установить «Рутокен плагин» необходимо:<br />
#Загрузить «Рутокен плагин» со страницы [https://www.rutoken.ru/support/download/rutoken-plugin/ по ссылке] (выбрать пакет формата «rpm»):<br />
#:[[Изображение:Rutoken-plugin-download.png|Загрузка «Рутокен плагин»|600px]]<br />
#Установить «Рутокен плагин». Для этого в контекстном меню скаченного файла выбрать пункт «Открыть в Установка RPM». В открывшемся окне нажать кнопку «Установить»: <br />
#:[[Изображение:Rutoken-plugin-install.png|Установка пакетов RPM]]<br />
#:Ввести пароль администратора системы и нажать кнопку «ОК»:<br />
#:[[Изображение:Rutoken-plugin-install1.png|Ввод пароля администратора системы]]<br />
#:В открывшемся окне нажать кнопку «Установить»:<br />
#:[[Изображение:Rutoken-plugin-install2.png|Установка пакетов RPM]]<br><br><br />
#:Или установить «Рутокен плагин», выполнив из папки с загруженным пакетом команду (под правами root):<br />
#:<source lang="text" highlight="1"># apt-get install libnpRutokenPlugin*</source><br />
#Перезапустить браузер.<br />
#Убедиться, что плагин установлен и включен. Сделать это можно на странице {{path|about:addons}} (или {{path|about:plugins}} в более ранних версиях Mozilla Firefox):<br />
#:[[Изображение:Rutoken-plugin-on.png|Рутокен плагин|600px]]<br />
Проверить работу плагина можно на площадке: http://demobank.rutoken.ru/<br />
<br />
=== Генерация пары ключей и формирование запроса на сертификат ===<br />
<br />
Для генерации пары ключей и формированию запроса на сертификат с помощью ПО «Центр регистрации Рутокен» следует:<br />
#Зайти на сайт «Центр регистрации Рутокен» https://ra.rutoken.ru:<br />
#:[[Изображение:Ra-rutoken-devices.png|Центр регистрации Рутокен]]<br />
#Подключить Рутокен ЭЦП к компьютеру, выбрать токен, ввести PIN-код пользователя:<br />
#:[[Изображение:Ra-rutoken-pin.png|Запрос PIN-кода]]<br />
#Нажать кнопку «Создать ключ»:<br />
#:[[Изображение:Ra-rutoken.png|Интерфейс «Центра регистрации Рутокен»]]<br />
#Ввести идентификатор и маркер ключа (опционально), выбрать тип ключа и алгоритм шифрования, затем нажать кнопку «Сгенерировать ключи»:<br />
#:[[Изображение:Rutoken-key-add.png|Создание ключей]]<br />
#:Появится сообщение, о том, что ключи созданы:<br />
#:[[Изображение:Rutoken-key.png|Ключи созданы]]<br />
#Нажать кнопку «Создать заявку на сертификат».<br />
#На странице создания запроса заполнить поля запроса, выбрать назначение сертификата, нажать кнопку «Создать запрос» (показан пример заполнения полей для физ.лица):<br />
#:[[Изображение:Rutoken-cert-new.png|Создание запроса на сертификат]]<br />
#:В раскрывающемся списке можно выбрать шаблон запроса. Шаблоны содержат разное количество полей в блоке информации о пользователе и разные расширения сертификата.<br />
#Откроется окно содержащее текст запроса. Можно сохранить его на диске, нажав кнопку «Сохранить на диске», или скопировать в буфер обмена, нажав кнопку «Скопировать в буфер обмена»:<br />
#:[[Изображение:Rutoken-cert-request.png|Запрос создан и подписан]]<br />
#Отправить запрос в удостоверяющий центр.<br />
#После получения сертификата, на странице «Центр регистрации Рутокен» https://ra.rutoken.ru нажать кнопку «Добавить к ключам сертификат» или выбрать пару ключей и нажать кнопку «Добавить сертификат»<br />
#:[[Изображение:Rutoken-cert-add.png|Добавление сертификата]]<br />
#В открывшемся окне загрузить файл с сертификатом, нажав кнопку «Выбрать», или вставить сертификат из буфера обмена, нажав кнопку «Вставить из буфера обмена», и нажать кнопку «Связать»:<br />
#:[[Изображение:Rutoken-cert-add2.png|Добавление сертификата пользователя]]<br />
#:[[Изображение:Rutoken-cert-add22.png|Добавление сертификата пользователя]]<br />
#Сертификат отобразится в списке:<br />
#:[[Изображение:Rutoken-cert-add4.png|Контейнер с сертификатом]]<br />
{{Note|Данные сертификата должны быть в формате PEM или Base64. Если вы получили сертификат в другом формате, его можно конвертировать в нужный формат, выполнив команду:<br />
$ openssl x509 -inform der -in cert.cer -out cert.pem<br />
}}<br />
<br />
== Утилита pkcs11-tool==<br />
{{Note|Cлужба {{cmd|pcscd}} должна быть запущена. Запустить службу {{cmd|pcscd}} и добавить её в автозапуск:<br />
<source lang="text" highlight="1-3"><br />
su -<br />
systemctl start pcscd<br />
systemctl enable pcscd<br />
</source>}}<br />
<br />
Должны быть установлены пакеты:<br />
<source lang="text" highlight="1"># apt-get install opensc pcsc-lite pcsc-lite-rutokens</source><br />
В состав opensc входит универсальная утилита pkcs11-tool, которой можно «подложить», например, библиотеку PKCS#11 для работы с Рутокен ЭЦП 2.0|3.0 и с ее помощью «управлять» Рутокенами.<br />
=== Библиотека для работы с Рутокен ЭЦП 2.0/3.0===<br />
Для работы должна быть установлена библиотека librtpkcs11ecp:<br />
<source lang="text" highlight="1"># apt-get install librtpkcs11ecp</source><br />
{{Note|При работе с Rutoken ЭЦП 2.0/3.0 необходимо указывать путь до библиотеки librtpkcs11ecp:<br />
<source lang="text" highlight="1">--module /usr/lib64/pkcs11/librtpkcs11ecp.so</source>}}<br />
<br />
=== Проверка работы Рутокен ЭЦП в системе ===<br />
Проверяем работу токена, он должен быть виден в списке:<br />
<source lang="text" highlight="1">$ pkcs11-tool -L --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Available slots:<br />
Slot 0 (0x0): Aktiv Rutoken ECP 00 00<br />
token label : Rutoken ECP <no label><br />
token manufacturer : Aktiv Co.<br />
token model : Rutoken ECP<br />
token flags : login required, rng, SO PIN to be changed, token initialized, PIN initialized, user PIN to be changed<br />
hardware version : 20.5<br />
firmware version : 23.2<br />
serial num : 373b83cf<br />
pin min/max : 6/32<br />
Slot 1 (0x1): <br />
(empty)<br />
Slot 2 (0x2): <br />
(empty)<br />
</source><br />
<br />
Список поддерживаемых механизмов:<br />
<source lang="text" highlight="1">$ pkcs11-tool -v --module /usr/lib64/pkcs11/librtpkcs11ecp.so --list-mechanisms<br />
Using slot 0 with a present token (0x0)<br />
Supported mechanisms:<br />
RSA-PKCS-KEY-PAIR-GEN, keySize={512,2048}, hw, generate_key_pair<br />
RSA-PKCS, keySize={512,2048}, hw, encrypt, decrypt, sign, verify<br />
RSA-PKCS-OAEP, keySize={512,2048}, hw, encrypt, decrypt<br />
MD5, digest<br />
SHA-1, digest<br />
GOSTR3410-KEY-PAIR-GEN, hw, generate_key_pair<br />
GOSTR3410, hw, sign, verify<br />
mechtype-0x1204, hw, derive<br />
GOSTR3411, hw, digest<br />
GOSTR3410-WITH-GOSTR3411, hw, digest, sign<br />
mechtype-0x1224, hw, wrap, unwrap<br />
mechtype-0x1221, hw, encrypt, decrypt<br />
mechtype-0x1222, hw, encrypt, decrypt<br />
mechtype-0x1220, hw, generate<br />
mechtype-0x1223, hw, sign, verify<br />
mechtype-0x1211, sign, verify</source><br />
<br />
=== Проверка наличия сертификатов и ключевых пар ===<br />
<br />
Просмотреть имеющуюся на токене информацию можно при помощи команды (требуется пароль от токена):<br />
<source lang="text" highlight="1">$ pkcs11-tool -Ol --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "Rutoken ECP <no label>".<br />
WARNING: user PIN to be changed<br />
Please enter User PIN: <br />
Public Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
VALUE: 84f16c48511700660fa03ce9d32612ebdf5a69b87372cf3b07f344e4819409f0<br />
aeacbd4e922869bed61ef08e20d15fe956ac81c27e197c8dfcc4b5be2763b47d<br />
label: <br />
ID: 506c7567696e3132303232303139313630363239<br />
Usage: verify<br />
Private Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
label: Иванова Ольга Петровна<br />
ID: 506c7567696e3132303232303139313630363239<br />
Usage: sign, derive<br />
Certificate Object; type = X.509 cert<br />
label: Rutoken Plugin<br />
subject: DN: C=RU, ST=\xD0\x9C\xD0\xBE\xD1\x81\xD0\xBA\xD0\xB2\xD0\xB0, L=\xD1\x80-\xD0\xBD \xD0\x9F\xD1\x80\xD0\xB8\xD0\xBE\xD0\xB7\xD0\xB5\xD1\x80\xD1\x81\xD0\xBA\xD0\xB8\xD0\xB9, \xD0\xB3. \xD0\x9B\xD1\x83\xD0\xB3\xD0\xB0, CN=\xD0\x98\xD0\xB2\xD0\xB0\xD0\xBD\xD0\xBE\xD0\xB2\xD0\xB0 \xD0\x9E\xD0\xBB\xD1\x8C\xD0\xB3\xD0\xB0 \xD0\x9F\xD0\xB5\xD1\x82\xD1\x80\xD0\xBE\xD0\xB2\xD0\xBD\xD0\xB0/1.2.643.3.131.1.1=5001007322229/street=\xD1\x83\xD0\xBB. \xD0\x93\xD0\xB0\xD0\xB3\xD0\xB0\xD1\x80\xD0\xB8\xD0\xBD\xD0\xB0, \xD0\xB4. 5/emailAddress=ivanova@mail.ru<br />
ID: 506c7567696e3132303232303139313630363239<br />
</source><br />
В результате в окне терминала отобразится информация обо всех сертификатах и ключевых парах, хранящихся на Рутокене.<br />
<br />
Чтобы открыть сертификат или ключевую пару скопируйте ID необходимого объекта и введите команду:<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so -r -y cert --id 506c7567696e3132303232303139313630363239 | openssl x509 -inform der -text</source><br />
В результате в окне Терминала отобразится полная информация об указанном объекте.<br />
<br />
Чтобы скопировать сертификат в файл введите команду:<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so -r -y cert --id 506c7567696e3132303232303139313630363239 > ./имя_файла</source><br />
<br />
===Изменение PIN-кода===<br />
<br />
Для изменения PIN-кода введите команду:<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --login --pin 12345678 --change-pin --new-pin 2780712<br />
Using slot 0 with a present token (0x0)<br />
PIN successfully changed<br />
</source><br />
где<br />
pin — текущий PIN-код устройства;<br />
new-pin — новый PIN-код устройства.<br />
<br />
===Разблокировка PIN-кода===<br />
Для того чтобы разблокировать PIN-код необходимо выполнить команду (потребуется ввести so-pin карты, а затем дважды ввести новый PIN-код):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-pin -l --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Using slot 0 with a present token (0x1)<br />
Please enter SO PIN: <br />
Please enter the new PIN: <br />
Please enter the new PIN again: <br />
User PIN successfully initialized<br />
</source><br />
<br />
===Инициализация токена===<br />
{{Attention|При инициализации все данные с токена будут удалены!}}<br />
Для инициализации токена следует выполнить команду (необходимо ввести so-pin карты 2 раза или передать его в качестве параметра --so-pin):<br />
<source lang="text" highlight="1">$ pkcs11-tool --init-token --label RuTokenECP --module /usr/lib64/pkcs11/librtpkcs11ecp.so<br />
Using slot 0 with a present token (0x1)<br />
Please enter the new SO PIN: <br />
Please enter the new SO PIN (again): <br />
Token successfully initialized<br />
</source><br />
<br />
===Удаление объекта===<br />
Для удаления объекта необходимо указать его тип и идентификатор (id) или название (label). Открытый и закрытый ключ удаляются отдельно.<br />
<source lang="text" highlight="1">$ pkcs11-tool -b -y privkey --login --id 1024 --module /usr/lib64/pkcs11/librtpkcs11ecp.so</source><br />
<br />
Типы объектов:<br />
*privkey – закрытый ключ;<br />
*pubkey – открытый ключ;<br />
*cert – сертификат.<br />
<br />
===Создание ключевой пары===<br />
<br />
{{Note| Для генерации ключевой пары ГОСТ и RSA на Рутокене также можно использовать [[Rutoken#Генерация_пары_ключей_и_формирование_запроса_на_сертификат|веб-сервис «Центр регистрации Рутокен»]] (https://ra.rutoken.ru/)}}<br />
<br />
Создание ключевой пары по алгоритму ГОСТ-2001 (PIN-код пользователя указывается в опции --pin, или запрашивается, если опцию не задать):<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --login --pin 12345678 --keypairgen --key-type GOSTR3410:A --id 0101 --label "my key"<br />
Using slot 0 with a present token (0x1)<br />
Key pair generated:<br />
Private Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
label: my key<br />
ID: 0101<br />
Usage: sign, unwrap<br />
Public Key Object; GOSTR3410 <br />
PARAMS OID: 06072a850302022301<br />
VALUE: a973f28ea2462781249fff1060d37276f23030e9766b54b8a14f0daa6fba6a7d<br />
62f2481e00a3df35bdd6c75ed82e8e95f1a78e9db549c8ee55008cfd92d7abb2<br />
label: my key<br />
ID: 0101<br />
Usage: verify, wrap<br />
</source><br />
<br />
Создание ключевой пары по алгоритму ГОСТ-2012 (256 бит, Paramset A):<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --login --pin 12345678 --keypairgen --key-type GOSTR3410-2012-256:A --id 0001 --label "gost3410-2012"<br />
Using slot 0 with a present token (0x0)<br />
Key pair generated:<br />
Private Key Object; GOSTR3410-2012-256<br />
PARAMS OID: 06092a8503070102010101<br />
label: gost3410-2012<br />
ID: 0001<br />
Usage: sign<br />
Access: sensitive, always sensitive, never extractable, local<br />
Public Key Object; GOSTR3410-2012-256<br />
PARAMS OID: 06092a8503070102010101<br />
VALUE: ed69495c36782333e5a3f2c6cb98fb29f73cb1c1a3d1801c3dc450e0cb148c83<br />
0ebd7ffc5e2b4984022de050606403e27ceee825733f7058faed2d213e4ae15a<br />
label: gost3410-2012<br />
ID: 0001<br />
Usage: verify<br />
Access: local<br />
</source><br />
<br />
Создание ключевой пары RSA 2048 (запрашивается PIN-код пользователя):<br />
<source lang="text" highlight="1">$ pkcs11-tool --module /usr/lib64/pkcs11/librtpkcs11ecp.so --keypairgen --key-type rsa:2048 --login --id 2222 --label myrsakey<br />
Using slot 0 with a present token (0x0)<br />
Logging in to "Rutoken ECP <no label>".<br />
Please enter User PIN: <br />
Key pair generated:<br />
Private Key Object; RSA <br />
label: myrsakey<br />
ID: 2222<br />
Usage: decrypt, sign, unwrap<br />
Public Key Object; RSA 2048 bits<br />
label: myrsakey<br />
ID: 2222<br />
Usage: encrypt, verify, wrap<br />
</source><br />
{{Note|Рекомендуемая длина ключа RSA — не ниже 2048 бит.}}<br />
{{Note|Если у вас уже имеется выписанная на токен ключевая пара RSA с привязанным к ней сертификатом, то вы можете использовать их для аутентификации.}}<br />
<br />
== Ссылки ==<br />
* http://developer.rutoken.ru/pages/viewpage.action?pageId=3440675<br />
<br />
= Rutoken Web/ЭЦП =<br />
https://github.com/OpenSC/OpenSC/wiki/Aktiv-Co.-Rutoken-ECP<br />
== ssh ==<br />
ssh-add -s opensc-pkcs11.so<br />
[[Категория:Криптография]]<br />
{{Category navigation|title=Криптография|category=Криптография|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77635Steam2024-01-21T16:07:45Z<p>IgorN: Добавлена категория Epm.</p>
<hr />
<div>== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
su -<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
exit<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
su -lc "epm play i586-fix"<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton|Steam Proton]].<br />
<br />
<br />
== Использование консоли Steam ==<br />
Консоль Steam позволяет производить отладку, автоматизацию различных действий и ряд манипуляций, недоступных через интерфейс.<br />
<br />
Для включения режима доступности консоли выполнить с правами обычного пользователя:<br />
xdg-open steam://open/console<br />
<br />
Или при запущенном клиенте открыть страницу в браузере:<br />
steam://open/console<br />
<br />
Результат:<br />
[[Файл:Altlinux steam console.png|700px|центр]]<br />
<br />
Поиск команд:<br />
find "шаблон для поиска"<br />
<br />
<br />
== Решение проблем ==<br />
=== Ошибка при установке Steam на Sisyphus ===<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
<br />
=== Бесконечная загрузка после входа ===<br />
<br />
Проблема может возникать с некоторыми российскими провайдерами. Описание проблемы в системе контроля ошибок:<br />
https://github.com/ValveSoftware/steam-for-linux/issues/10297<br />
<br />
Решается изменением значения MTU на ''1250'':<br />
ip link set dev <имя сетевого интефейса> mtu 1250<br />
или<br />
nmcli device modify <имя сетевого интефейса> mtu 1250<br />
<br />
Вариант решения через правило для iptables:<br />
iptables -I FORWARD -o <имя сетевого интефейса> -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
<br />
<br />
[[Категория:Программы]]<br />
[[Category:Epm]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=PortProton&diff=77634PortProton2024-01-21T16:05:30Z<p>IgorN: Добавлена категория WINE.</p>
<hr />
<div>{{epm|portproton}}<br />
== Описание ==<br />
<br />
PortProton — это проект, разработанный командой linux-gaming.ru для того, чтобы сделать легким и удобным запуск Windows-игр на Linux как для начинающих, так и для продвинутых пользователей. Проект стремится сделать запуск игр (и другого программного обеспечения) максимально простым, но в то же время предоставляет гибкие настройки для продвинутых пользователей.<br />
<br />
<br><br />
Официальная страница проекта: https://linux-gaming.ru/2022/11/24/portproton/<br />
<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install portproton<br />
apt-get install i586-{libvulkan1,libd3d,libGL,libgio,libnm,libnsl1,libnss,glibc-nss,glibc-pthread,libunwind,xorg-dri-swrast}<br />
exit<br />
<br />
<br><br />
Вариант установки с помощью [https://www.altlinux.org/Epm eepm]:<br />
su -<br />
epm full-upgrade<br />
epm play portproton<br />
exit<br />
<br />
<br />
== Списки поддерживаемых программ запуска ==<br />
<br />
{{Note|Списки обновляются от версии к версии.}}<br />
<br />
Список программ запуска игровых площадок и онлайн-игр:<br />
* Lesta Game Center<br />
* vkPlay Game Center<br />
* Battle.net Launcher<br />
* Epic Games Launcher<br />
* GoG Galaxy, Ubisoft<br />
* EVE Online<br />
* Rockstar Games Launcher<br />
* League of Legends<br />
* Gameforge Client<br />
* World of Sea Battle<br />
* Caliber<br />
* Crossaut<br />
* Warframe<br />
* Panzar<br />
* Stalcraft<br />
* Contract Wars<br />
* Stalker Online<br />
* Metal War Online<br />
* Ankama Launcher<br />
* Indiegala Client<br />
* Plarium Play<br />
* Wargaming Game Center<br />
* OSU!<br />
* ITCH.IO<br />
* Steam (Windows)<br />
* Path of Exile<br />
<br />
<br><br />
<br><br />
<br />
Список программ запуска эмуляторов:<br />
* Dolphin 5.0<br />
* MAME<br />
* ScuumVM<br />
* RetroArch<br />
* PPSSPP Windows<br />
* Citra<br />
* Cemu<br />
* DuStation<br />
* ePSXe<br />
* Project64<br />
* VBA-M<br />
* Yabause<br />
* Xenia<br />
* FCEUX<br />
* xemu<br />
* Demul<br />
* Rpcs3<br />
<br />
<br />
== Конфигурирование ==<br />
Рекомендуемые параметры запуска для конкретной игры/программы расположены в {{path|~/PortWINE/PortProton/data/scripts/portwine_db/<имя игры>}}.<br />
<br><br />
После первого запуска exe-файла в этом же каталоге создается ppdb-файл. В ppdb-файле содержится описание последних изменений настроек portproton для игры/программы.<br />
<br />
<br />
== Прочее ==<br />
Дополнительно см. на [[Игры#Порт-протон|странице]] про игры.<br />
<br />
<br />
[[Category:WINE]]</div>IgorNhttps://www.altlinux.org/index.php?title=Steam_Proton&diff=77633Steam Proton2024-01-21T16:04:48Z<p>IgorN: Добавлена категория WINE.</p>
<hr />
<div>== Описание ==<br />
<br />
'''Proton''' (SteamPlay) — слой совместимости для запуска Windows-программ, ориентированный на запуск компьютерных игр. Предлагается в качестве опции-инструмента в [[Steam|клиенте Steam]] для бесшовного запуска игр из библиотеки пользователя. В качестве составного произведения распространяется под лицензией 3-clause BSD.<br />
<br />
* Является ответвлением [[WINE|Wine]], развиваемым компанией Valve. Основные отличия от Wine:<br />
** В качестве транслятора вызовов Direct3D (DirectX) в Vulkan задействует [https://github.com/doitsujin/dxvk DXVK] и [https://github.com/HansKristian-Work/vkd3d-proton vkd3d-proton].<br />
*** На момент 2024 года требуется видеокарта с аппаратной поддержкой Vulkan 1.3 и актуальные драйвера, поддерживающие новейшие Vulkan-расширения и версии протокола Wayland. На старом оборудовании (видеокарты десятилетней давности и старее) и устаревшей пакетной базе (платформа 9 и старее) работоспособность затруднена или отсутствует.<br />
** Реализована Python-обёртка и набор библиотек для интеграции в клиент Steam.<br />
** Используются дополнительные патчи, включая расширенную поддержку анти-читов, для достижения работоспособности отдельных игр и игровых устройств.<br />
* Первый выпуск состоялся в 2018 году. Историческая справка: https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561<br />
* Официальный репозиторий: https://github.com/ValveSoftware/Proton<br />
* Официальное руководство пользователя: https://github.com/ValveSoftware/Proton#readme<br />
* Справка по применению опций совместимости: https://github.com/ValveSoftware/Proton#runtime-config-options<br />
* Каталог отчётов пользователей с рецептами запуска различных игр: https://www.protondb.com/<br />
** Полная работоспособность достигнута для многих тысяч игр, но всё ещё остаётся небольшое число тех, что работают с некоторыми проблемами или требуют дополнительных манипуляций. Так же есть незначительное количество полностью неработоспособных, большая часть из которых не работает из-за намеренной блокировки запуска анти-читами.<br />
<br />
<br />
== Первоначальная настройка ==<br />
<br />
Производится через клиент Steam. Для этого перейти в ''Steam / Настройки / Совместимость'' и отметить два пункта:<br />
* ''Включить Steam Play для поддерживаемых продуктов''.<br />
* ''Включить Steam Play для всех других продуктов''.<br />
<br />
[[Файл:Altlinux steam proton.png|700px|центр]]<br />
<br />
Для применения изменений необходимо перезапустить клиент Steam. После перезапуска появится возможность устанавливать Windows-игры и запускать их. Proton будет автоматически загружен при попытке запуска любой Windows-игры из библиотеки.<br />
<br />
[[Файл:Altlinux steam proton кнопка установки игры.png|600px|центр]]<br />
<br />
<br />
== Использование версий ==<br />
<br />
Пользователям предлагается следующий набор версий-сборок:<br />
** ''Proton <номер версии>'' — стабильные версии, использующие в качестве основы стабильную версию Wine с переносом отдельных изменений из ветки разработки. В клиенте Steam по умолчанию предлагается крайняя стабильная версия.<br />
** ''Proton Experimental'' — версия со свежайшими изменениями из ветки разработки.<br />
** ''Proton Hotfix'' — версия с экстренными, экспериментальными и адресными исправлениями. Используется в исключительных случаях.<br />
<br />
Версию Proton можно переключить глобально или для каждой игры отдельно. Глобальный переключатель:<br />
[[Файл:Altlinux steam proton глобальный переключатель.png|700px|центр]]<br />
<br />
Пример для отдельной игры. Чтобы появился список для выбора версий, необходимо отметить пункт ''"Принудительно использовать выбранный инструмент совместимости Steam Play"'':<br />
[[Файл:Altlinux steam proton локальный переключатель.png|700px|центр]]<br />
<br />
Кроме официальных сборок, существуют варианты от сообщества. Среди них можно выделить следующие:<br />
** [https://github.com/GloriousEggroll/proton-ge-custom proton-ge-custom] — [[#Использование сборок Proton от сообщества через Steam|после небольшой подготовки]] можно использовать из клиента Steam так же, как обычный Proton. Сборка формируется на основе Proton Experimental с добавлением различных патчей от сообщества и поддерживает дополнительные возможности.<br />
** [[PortProton]] — отдельная обёртка-приложение, независящая от клиента Steam. Позволяет запускать программы вне библиотеки Steam без специфичных манипуляций.<br />
<br />
<br />
== Особенности структуры каталогов Steam Proton ==<br />
<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
{{Note|Пути указаны относительно каталога steamapps, расположенного по умолчанию.}}<br />
<br />
* Версии Proton загружаются в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог игры со всем содержимым отделён от префикса и располагается в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог префикса располагается в {{path|/home/$USER/.local/share/Steam/steamapps/compatdata/}}.<br />
* Для каждой игры используется отдельный префикс.<br />
* Префикс создаётся при запуске игры. То есть для появления префикса в ./compatdata игра должна быть запущена хотя бы раз.<br />
* В префиксе по умолчанию создаётся стандартный Windows-пользователь с именем '''steamuser''': {{path|./Steam/steamapps/compatdata/1608450/pfx/drive_c/users/'''steamuser'''/}}.<br />
** В этом каталоге расположены стандартные каталоги Windows-пользователя, включая AppData (Application Data).<br />
** Как правило, здесь хранятся игровые сохранения, файлы конфигурации и подобное.<br />
* Моды из Мастерской (Steam workshop) размещаются в подкаталогах {{path|/home/$USER/.local/share/Steam/steamapps/workshop/}}.<br />
** Некоторые игры могут "потерять" загруженные моды, если каталог ''steamapps'' располагается не по умолчанию (на другом разделе).<br />
<br />
<br />
<br />
== Использование Proton напрямую без задействования клиента Steam ==<br />
<br />
В Proton реализован механизм прямого запуска тех или иных программ, размещённых в Proton-префиксе, без задействования клиента Steam. Использование напрямую позволяет запускать программы внутри конкретного Proton-префикса, включая штатные Wine-программы. В контексте игр это даёт удобную возможность установить русификатор, моды и подобное, а так же запускать различные инструменты: программу конфигурации, игровой редактор и подобное.<br />
<br />
=== Пример запуска установочного файла OpenGL-обёртки для игры Disciples 2 ===<br />
<br />
Расположение префикса игры по умолчанию:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/}}<br />
<br />
Установочный файл OpenGL-обёртки (DisciplesWrapperV1.90.exe) был размещён в корне префикса:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''}}<br />
<br />
Команда на запуск установочного файла:<br />
'''STEAM_COMPAT_CLIENT_INSTALL_PATH'''=/home/$USER/.local/share/Steam/ '''STEAM_COMPAT_DATA_PATH'''=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 ''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/'''proton''''' '''run''' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''<br />
<br />
Из-за длины путей выглядит громоздко и сложно, но на деле команда проста:<br />
* '''STEAM_COMPAT_CLIENT_INSTALL_PATH''' — передать этой переменной окружения путь до корневого каталога клиента Steam. В данном случае это ''/home/$USER/.local/share/Steam/''<br />
* '''STEAM_COMPAT_DATA_PATH''' — передать путь до Proton-префикса, который создаётся при первом запуске игры. Путь из примера: ''/home/$USER/.steam/steam/steamapps/compatdata/1640/'', где имя каталога с префиксом соответствует ID игры в Steam — 1640.<br />
* '''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton''' — путь до python-скрипта ''proton'', с помощью которого производится задействование Proton. Путь будет отличаться в зависимости от установленной версии Proton. В данном случае используется Proton 8.0. Так же стоит отметить, что в имени каталога Proton присутствует пробел, его нужно экранировать обратной косой чертой (\) или экранировать кавычками путь целиком.<br />
* '''''run'' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/DisciplesWrapperV1.90.exe''' — команда на запуск указанного исполняемого файла (DisciplesWrapperV1.90.exe) с помощью Proton.<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton окно установки обёртки.png|центр]]<br />
<br />
Важно отметить, что подобные установщики ожидают обнаружить файлы игры в границах префикса, но в структуре каталогов Steam каталог с игрой располагается вне префикса. В связи с этим, в диалоге выбора пути потребуется указать путь через структуру каталогов Linux.<br />
В некоторых случаях это вызывает проблемы (установщик может отказаться продолжать работу, выведя ошибку). Надёжнее создать в префиксе символическую ссылку на каталог с файлами игры, что позволит установщику получить привычный DOS-путь к файлам игры. Пример расположения точки входа:<br />
<br><br />
{{path|"./drive_c/Program Files (x86)/Steam/steamapps/common/Символическая_ссылка_на_каталог_игры"}}<br />
<br />
Пример создания символической ссылки (пробелы и скобки в имени каталогов экранированы обратной косой чертой):<br />
ln -s /home/$USER/.local/share/Steam/steamapps/common/Disciples\ II\ Galleans\ Return /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/Program\ Files\ \(x86\)/Steam/steamapps/common/Disciples\ II\ Galleans\ Return<br />
<br />
<br />
=== Запуск стандартных Wine-программ в Proton-префиксе ===<br />
<br />
В Proton-префиксе присутствует полный набор программ из стандартного Wine-префикса. Их можно задействовать так же, как это делается для Wine-префикса. Пример запуска '''winecfg''' всё в том же префиксе игры Disciples 2:<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''winecfg'''<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton winecfg.png|центр]]<br />
<br />
Пример запуска «Установка/удаление программ» (uninstaller):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''uninstaller'''<br />
<br />
[[Файл:Altlinux steam proton uninstaller.png|центр]]<br />
<br />
Пример запуска редактора реестра (regedit):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''regedit'''<br />
<br />
[[Файл:Altlinux steam proton regedit.png|центр]]<br />
<br />
Пример запуска Диспетчера задач (taskmgr):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''taskmgr'''<br />
<br />
[[Файл:Altlinux steam proton taskmgr.png|центр]]<br />
<br />
<br />
=== Пример запуска сторонних игр в Proton-префиксе ===<br />
<br />
Да, это работает. Демонстрация на примере запуска Konung 2.<br />
Установка из ''setup_konung2_russian_2.0.0.3.exe'':<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/'''setup_konung2_russian_2.0.0.3.exe'''<br />
<br />
[[Файл:Altlinux steam proton установка konung 2.png|600px|центр]]<br />
<br />
По запуску есть особенность. Если запускать исполняемый файл напрямую, то игра не запустится, но если её стартовать с файла-ярлыка (.lnk), запуск проходит успешно. lnk-файлы хранятся в каталоге {{path|./drive_c/ProgramData/Microsoft/Windows/Start Menu/Programs/}}.<br />
Запуск с lnk-файла (пробелы и скобки экранированы обратной косой чертой):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/Konung\ 2\ -\ Blood\ of\ Titans\ \[GOG\.com\]/'''Konung\ 2\ -\ Blood\ of\ Titans.lnk'''<br />
<br />
<br />
[[Файл:Altlinux steam proton konung 2 меню.png|700px|центр]]<br />
<br />
<br />
== Использование сборок Proton от сообщества через Steam ==<br />
<br />
=== Пример использования сборки от [https://github.com/GloriousEggroll/proton-ge-custom%20proton-ge-custom GloriousEggroll] ===<br />
{{note|Сборка требует свежайших драйверов! Видеокарты на финальном отрезке поддержки, использующие драйвера, получающие только исправления, с большой вероятностью, не смогут работать с этой сборкой.}}<br />
<br><br />
Из официального репозитория загрузить крайнюю выпущенную версию: https://github.com/GloriousEggroll/proton-ge-custom/releases Сборка поставляется в обычном tar-архиве.<br />
<br><br />
<br><br />
В данном примере был загружен архив '''GE-Proton8-25.tar.gz''':<br />
<br />
[[Файл:Altlinux steam proton tar архив сборки GE.png|600px|центр]]<br />
<br />
Чтобы клиент Steam мог взаимодействовать со сборкой, её необходимо распаковать и поместить каталог ''GE-Proton<номер версии>'' со всем содержимым в {{path|/home/$USER/.local/share/Steam/compatibilitytools.d/}}. Если каталог ''compatibilitytools.d'' отсутствует, его следует создать.<br />
<br><br />
<br><br />
После перезапуска клиента Steam сборка станет доступной для выбора:<br />
[[Файл:Altlinux steam proton выбор GE в меню.png|600px|центр]]<br />
<br />
<br />
[[Category:WINE]]</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77631Steam2024-01-21T15:50:51Z<p>IgorN: Об использовании консоли Steam.</p>
<hr />
<div>== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
su -<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
exit<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
su -lc "epm play i586-fix"<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton|Steam Proton]].<br />
<br />
<br />
== Использование консоли Steam ==<br />
Консоль Steam позволяет производить отладку, автоматизацию различных действий и ряд манипуляций, недоступных через интерфейс.<br />
<br />
Для включения режима доступности консоли выполнить с правами обычного пользователя:<br />
xdg-open steam://open/console<br />
<br />
Или при запущенном клиенте открыть страницу в браузере:<br />
steam://open/console<br />
<br />
Результат:<br />
[[Файл:Altlinux steam console.png|700px|центр]]<br />
<br />
Поиск команд:<br />
find "шаблон для поиска"<br />
<br />
<br />
== Решение проблем ==<br />
=== Ошибка при установке Steam на Sisyphus ===<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
<br />
=== Бесконечная загрузка после входа ===<br />
<br />
Проблема может возникать с некоторыми российскими провайдерами. Описание проблемы в системе контроля ошибок:<br />
https://github.com/ValveSoftware/steam-for-linux/issues/10297<br />
<br />
Решается изменением значения MTU на ''1250'':<br />
ip link set dev <имя сетевого интефейса> mtu 1250<br />
или<br />
nmcli device modify <имя сетевого интефейса> mtu 1250<br />
<br />
Вариант решения через правило для iptables:<br />
iptables -I FORWARD -o <имя сетевого интефейса> -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Altlinux_steam_console.png&diff=77630Файл:Altlinux steam console.png2024-01-21T15:44:53Z<p>IgorN: </p>
<hr />
<div>Вид на консоль Steam.</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77629Steam2024-01-21T15:36:39Z<p>IgorN: Убрана отметка "В разработке". Информации достаточно для базового использования.</p>
<hr />
<div>== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
su -<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
exit<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
su -lc "epm play i586-fix"<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
<br />
== Решение проблем ==<br />
=== Ошибка при установке Steam на Sisyphus ===<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
<br />
=== Бесконечная загрузка после входа ===<br />
<br />
Проблема может возникать с некоторыми российскими провайдерами. Описание проблемы в системе контроля ошибок:<br />
https://github.com/ValveSoftware/steam-for-linux/issues/10297<br />
<br />
Решается изменением значения MTU на ''1250'':<br />
ip link set dev <имя сетевого интефейса> mtu 1250<br />
или<br />
nmcli device modify <имя сетевого интефейса> mtu 1250<br />
<br />
Вариант решения через правило для iptables:<br />
iptables -I FORWARD -o <имя сетевого интефейса> -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77628Steam2024-01-21T14:53:47Z<p>IgorN: Описание решения бесконечной загрузки после входа в клиент. Решение обнаружено и опробовано https://t.me/ex8or</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
su -<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
exit<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
su -lc "epm play i586-fix"<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
<br />
== Решение проблем ==<br />
=== Ошибка при установке Steam на Sisyphus ===<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
<br />
=== Бесконечная загрузка после входа ===<br />
<br />
Проблема может возникать с некоторыми российскими провайдерами. Описание проблемы в системе контроля ошибок:<br />
https://github.com/ValveSoftware/steam-for-linux/issues/10297<br />
<br />
Решается изменением значения MTU на ''1250'':<br />
ip link set dev <имя сетевого интефейса> mtu 1250<br />
или<br />
nmcli device modify <имя сетевого интефейса> mtu 1250<br />
<br />
Вариант решения через правило для iptables:<br />
iptables -I FORWARD -o <имя сетевого интефейса> -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam_Proton&diff=77367Steam Proton2024-01-07T00:14:29Z<p>IgorN: Добавлено про использование сборки GloriousEggroll.</p>
<hr />
<div>== Описание ==<br />
<br />
'''Proton''' (SteamPlay) — слой совместимости для запуска Windows-программ, ориентированный на запуск компьютерных игр. Предлагается в качестве опции-инструмента в [[Steam|клиенте Steam]] для бесшовного запуска игр из библиотеки пользователя. В качестве составного произведения распространяется под лицензией 3-clause BSD.<br />
<br />
* Является ответвлением [[WINE|Wine]], развиваемым компанией Valve. Основные отличия от Wine:<br />
** В качестве транслятора вызовов Direct3D (DirectX) в Vulkan задействует [https://github.com/doitsujin/dxvk DXVK] и [https://github.com/HansKristian-Work/vkd3d-proton vkd3d-proton].<br />
*** На момент 2024 года требуется видеокарта с аппаратной поддержкой Vulkan 1.3 и актуальные драйвера, поддерживающие новейшие Vulkan-расширения и версии протокола Wayland. На старом оборудовании (видеокарты десятилетней давности и старее) и устаревшей пакетной базе (платформа 9 и старее) работоспособность затруднена или отсутствует.<br />
** Реализована Python-обёртка и набор библиотек для интеграции в клиент Steam.<br />
** Используются дополнительные патчи, включая расширенную поддержку анти-читов, для достижения работоспособности отдельных игр и игровых устройств.<br />
* Первый выпуск состоялся в 2018 году. Историческая справка: https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561<br />
* Официальный репозиторий: https://github.com/ValveSoftware/Proton<br />
* Официальное руководство пользователя: https://github.com/ValveSoftware/Proton#readme<br />
* Справка по применению опций совместимости: https://github.com/ValveSoftware/Proton#runtime-config-options<br />
* Каталог отчётов пользователей с рецептами запуска различных игр: https://www.protondb.com/<br />
** Полная работоспособность достигнута для многих тысяч игр, но всё ещё остаётся небольшое число тех, что работают с некоторыми проблемами или требуют дополнительных манипуляций. Так же есть незначительное количество полностью неработоспособных, большая часть из которых не работает из-за намеренной блокировки запуска анти-читами.<br />
<br />
<br />
== Первоначальная настройка ==<br />
<br />
Производится через клиент Steam. Для этого перейти в ''Steam / Настройки / Совместимость'' и отметить два пункта:<br />
* ''Включить Steam Play для поддерживаемых продуктов''.<br />
* ''Включить Steam Play для всех других продуктов''.<br />
<br />
[[Файл:Altlinux steam proton.png|700px|центр]]<br />
<br />
Для применения изменений необходимо перезапустить клиент Steam. После перезапуска появится возможность устанавливать Windows-игры и запускать их. Proton будет автоматически загружен при попытке запуска любой Windows-игры из библиотеки.<br />
<br />
[[Файл:Altlinux steam proton кнопка установки игры.png|600px|центр]]<br />
<br />
<br />
== Использование версий ==<br />
<br />
Пользователям предлагается следующий набор версий-сборок:<br />
** ''Proton <номер версии>'' — стабильные версии, использующие в качестве основы стабильную версию Wine с переносом отдельных изменений из ветки разработки. В клиенте Steam по умолчанию предлагается крайняя стабильная версия.<br />
** ''Proton Experimental'' — версия со свежайшими изменениями из ветки разработки.<br />
** ''Proton Hotfix'' — версия с экстренными, экспериментальными и адресными исправлениями. Используется в исключительных случаях.<br />
<br />
Версию Proton можно переключить глобально или для каждой игры отдельно. Глобальный переключатель:<br />
[[Файл:Altlinux steam proton глобальный переключатель.png|700px|центр]]<br />
<br />
Пример для отдельной игры. Чтобы появился список для выбора версий, необходимо отметить пункт ''"Принудительно использовать выбранный инструмент совместимости Steam Play"'':<br />
[[Файл:Altlinux steam proton локальный переключатель.png|700px|центр]]<br />
<br />
Кроме официальных сборок, существуют варианты от сообщества. Среди них можно выделить следующие:<br />
** [https://github.com/GloriousEggroll/proton-ge-custom proton-ge-custom] — [[#Использование сборок Proton от сообщества через Steam|после небольшой подготовки]] можно использовать из клиента Steam так же, как обычный Proton. Сборка формируется на основе Proton Experimental с добавлением различных патчей от сообщества и поддерживает дополнительные возможности.<br />
** [[PortProton]] — отдельная обёртка-приложение, независящая от клиента Steam. Позволяет запускать программы вне библиотеки Steam без специфичных манипуляций.<br />
<br />
<br />
== Особенности структуры каталогов Steam Proton ==<br />
<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
{{Note|Пути указаны относительно каталога steamapps, расположенного по умолчанию.}}<br />
<br />
* Версии Proton загружаются в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог игры со всем содержимым отделён от префикса и располагается в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог префикса располагается в {{path|/home/$USER/.local/share/Steam/steamapps/compatdata/}}.<br />
* Для каждой игры используется отдельный префикс.<br />
* Префикс создаётся при запуске игры. То есть для появления префикса в ./compatdata игра должна быть запущена хотя бы раз.<br />
* В префиксе по умолчанию создаётся стандартный Windows-пользователь с именем '''steamuser''': {{path|./Steam/steamapps/compatdata/1608450/pfx/drive_c/users/'''steamuser'''/}}.<br />
** В этом каталоге расположены стандартные каталоги Windows-пользователя, включая AppData (Application Data).<br />
** Как правило, здесь хранятся игровые сохранения, файлы конфигурации и подобное.<br />
* Моды из Мастерской (Steam workshop) размещаются в подкаталогах {{path|/home/$USER/.local/share/Steam/steamapps/workshop/}}.<br />
** Некоторые игры могут "потерять" загруженные моды, если каталог ''steamapps'' располагается не по умолчанию (на другом разделе).<br />
<br />
<br />
<br />
== Использование Proton напрямую без задействования клиента Steam ==<br />
<br />
В Proton реализован механизм прямого запуска тех или иных программ, размещённых в Proton-префиксе, без задействования клиента Steam. Использование напрямую позволяет запускать программы внутри конкретного Proton-префикса, включая штатные Wine-программы. В контексте игр это даёт удобную возможность установить русификатор, моды и подобное, а так же запускать различные инструменты: программу конфигурации, игровой редактор и подобное.<br />
<br />
=== Пример запуска установочного файла OpenGL-обёртки для игры Disciples 2 ===<br />
<br />
Расположение префикса игры по умолчанию:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/}}<br />
<br />
Установочный файл OpenGL-обёртки (DisciplesWrapperV1.90.exe) был размещён в корне префикса:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''}}<br />
<br />
Команда на запуск установочного файла:<br />
'''STEAM_COMPAT_CLIENT_INSTALL_PATH'''=/home/$USER/.local/share/Steam/ '''STEAM_COMPAT_DATA_PATH'''=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 ''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/'''proton''''' '''run''' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''<br />
<br />
Из-за длины путей выглядит громоздко и сложно, но на деле команда проста:<br />
* '''STEAM_COMPAT_CLIENT_INSTALL_PATH''' — передать этой переменной окружения путь до корневого каталога клиента Steam. В данном случае это ''/home/$USER/.local/share/Steam/''<br />
* '''STEAM_COMPAT_DATA_PATH''' — передать путь до Proton-префикса, который создаётся при первом запуске игры. Путь из примера: ''/home/$USER/.steam/steam/steamapps/compatdata/1640/'', где имя каталога с префиксом соответствует ID игры в Steam — 1640.<br />
* '''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton''' — путь до python-скрипта ''proton'', с помощью которого производится задействование Proton. Путь будет отличаться в зависимости от установленной версии Proton. В данном случае используется Proton 8.0. Так же стоит отметить, что в имени каталога Proton присутствует пробел, его нужно экранировать обратной косой чертой (\) или экранировать кавычками путь целиком.<br />
* '''''run'' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/DisciplesWrapperV1.90.exe''' — команда на запуск указанного исполняемого файла (DisciplesWrapperV1.90.exe) с помощью Proton.<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton окно установки обёртки.png|центр]]<br />
<br />
Важно отметить, что подобные установщики ожидают обнаружить файлы игры в границах префикса, но в структуре каталогов Steam каталог с игрой располагается вне префикса. В связи с этим, в диалоге выбора пути потребуется указать путь через структуру каталогов Linux.<br />
В некоторых случаях это вызывает проблемы (установщик может отказаться продолжать работу, выведя ошибку). Надёжнее создать в префиксе символическую ссылку на каталог с файлами игры, что позволит установщику получить привычный DOS-путь к файлам игры. Пример расположения точки входа:<br />
<br><br />
{{path|"./drive_c/Program Files (x86)/Steam/steamapps/common/Символическая_ссылка_на_каталог_игры"}}<br />
<br />
Пример создания символической ссылки (пробелы и скобки в имени каталогов экранированы обратной косой чертой):<br />
ln -s /home/$USER/.local/share/Steam/steamapps/common/Disciples\ II\ Galleans\ Return /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/Program\ Files\ \(x86\)/Steam/steamapps/common/Disciples\ II\ Galleans\ Return<br />
<br />
<br />
=== Запуск стандартных Wine-программ в Proton-префиксе ===<br />
<br />
В Proton-префиксе присутствует полный набор программ из стандартного Wine-префикса. Их можно задействовать так же, как это делается для Wine-префикса. Пример запуска '''winecfg''' всё в том же префиксе игры Disciples 2:<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''winecfg'''<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton winecfg.png|центр]]<br />
<br />
Пример запуска «Установка/удаление программ» (uninstaller):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''uninstaller'''<br />
<br />
[[Файл:Altlinux steam proton uninstaller.png|центр]]<br />
<br />
Пример запуска редактора реестра (regedit):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''regedit'''<br />
<br />
[[Файл:Altlinux steam proton regedit.png|центр]]<br />
<br />
Пример запуска Диспетчера задач (taskmgr):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''taskmgr'''<br />
<br />
[[Файл:Altlinux steam proton taskmgr.png|центр]]<br />
<br />
<br />
=== Пример запуска сторонних игр в Proton-префиксе ===<br />
<br />
Да, это работает. Демонстрация на примере запуска Konung 2.<br />
Установка из ''setup_konung2_russian_2.0.0.3.exe'':<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/'''setup_konung2_russian_2.0.0.3.exe'''<br />
<br />
[[Файл:Altlinux steam proton установка konung 2.png|600px|центр]]<br />
<br />
По запуску есть особенность. Если запускать исполняемый файл напрямую, то игра не запустится, но если её стартовать с файла-ярлыка (.lnk), запуск проходит успешно. lnk-файлы хранятся в каталоге {{path|./drive_c/ProgramData/Microsoft/Windows/Start Menu/Programs/}}.<br />
Запуск с lnk-файла (пробелы и скобки экранированы обратной косой чертой):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/Konung\ 2\ -\ Blood\ of\ Titans\ \[GOG\.com\]/'''Konung\ 2\ -\ Blood\ of\ Titans.lnk'''<br />
<br />
<br />
[[Файл:Altlinux steam proton konung 2 меню.png|700px|центр]]<br />
<br />
<br />
== Использование сборок Proton от сообщества через Steam ==<br />
<br />
=== Пример использования сборки от [https://github.com/GloriousEggroll/proton-ge-custom%20proton-ge-custom GloriousEggroll] ===<br />
{{note|Сборка требует свежайших драйверов! Видеокарты на финальном отрезке поддержки, использующие драйвера, получающие только исправления, с большой вероятностью, не смогут работать с этой сборкой.}}<br />
<br><br />
Из официального репозитория загрузить крайнюю выпущенную версию: https://github.com/GloriousEggroll/proton-ge-custom/releases Сборка поставляется в обычном tar-архиве.<br />
<br><br />
<br><br />
В данном примере был загружен архив '''GE-Proton8-25.tar.gz''':<br />
<br />
[[Файл:Altlinux steam proton tar архив сборки GE.png|600px|центр]]<br />
<br />
Чтобы клиент Steam мог взаимодействовать со сборкой, её необходимо распаковать и поместить каталог ''GE-Proton<номер версии>'' со всем содержимым в {{path|/home/$USER/.local/share/Steam/compatibilitytools.d/}}. Если каталог ''compatibilitytools.d'' отсутствует, его следует создать.<br />
<br><br />
<br><br />
После перезапуска клиента Steam сборка станет доступной для выбора:<br />
[[Файл:Altlinux steam proton выбор GE в меню.png|600px|центр]]</div>IgorNhttps://www.altlinux.org/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Altlinux_steam_proton_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80_GE_%D0%B2_%D0%BC%D0%B5%D0%BD%D1%8E.png&diff=77366Файл:Altlinux steam proton выбор GE в меню.png2024-01-06T23:53:51Z<p>IgorN: </p>
<hr />
<div>Демонстрация появления сборки GE в списке клиента Steam.</div>IgorNhttps://www.altlinux.org/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Altlinux_steam_proton_tar_%D0%B0%D1%80%D1%85%D0%B8%D0%B2_%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B8_GE.png&diff=77365Файл:Altlinux steam proton tar архив сборки GE.png2024-01-06T23:43:18Z<p>IgorN: </p>
<hr />
<div>Интерфейс репозитория, в котором отмечен архив для загрузки.</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77361Steam2024-01-06T20:00:19Z<p>IgorN: </p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
su -<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
exit<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
su -lc "epm play i586-fix"<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
<br />
== Ошибка при установке Steam на Sisyphus ==<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77359Steam2024-01-06T19:44:18Z<p>IgorN: Добавлена установка зависимостей с помощью epm.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Альтернативным и упрощённым вариантом доустановки зависимостей является использование [[eepm]]:<br />
epm play i586-fix<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
<br />
== Ошибка при установке Steam на Sisyphus ==<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77358Steam2024-01-06T19:18:16Z<p>IgorN: Подправлено форматирование.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
<br />
== Ошибка при установке Steam на Sisyphus ==<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка:<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
== Ссылки ==<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77357Steam2024-01-06T19:16:39Z<p>IgorN: Раздел потерял актуальность.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
<br />
=Ошибка при установке Steam на Sisyphus=<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
= Ссылки =<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77356Steam2024-01-06T19:13:29Z<p>IgorN: Абзац удалён в связи с потерей актуальности и появлением отдельной страницы о Steam Proton.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
<br />
== Steam Proton ==<br />
<br />
См. статью [[Steam_Proton]].<br />
<br />
==Известные проблемы при запуске игр с помощью Steam-Proton==<br />
<br />
*Steam-Proton использует экспериментальную технологию dxvk, которая, как правило, требует самых свежих драйверов для видеокарт, поэтому запуск современных игр, особенно AAA класса на p8 может быть затруднен.<br />
*При установке игр рекомендуется использовать папку для игр и библиотек по умолчанию из-за достаточно специфических настроек префиксов<br />
*Если запускается множество dbus-launch, может быть не запущен пользовательский dbus или [https://stackoverflow.com/a/41244272 не выставлена] переменная DBUS_SESSION_BUS_ADDRESS:<br />
export $(dbus-launch)<br />
<br />
<br />
=Ошибка при установке Steam на Sisyphus=<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
= Ссылки =<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77355Steam2024-01-06T19:11:12Z<p>IgorN: Улучшен вид списка зависимостей.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
* Пакеты для видеокарт AMD:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
Иначе Steam не запустится и выведет в терминал сообщение об ошибках:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
<br />
=Steam-Proton=<br />
<br />
С октября 2018 года клиент Steam имеет встроенное решение для запуска Windows - игр на операционный системах Linux на базе Wine + DXVK для трансляции DX10 и DX11. Данное решение является тестовым и запускает далеко не все игры из библиотеки игр Steam, однако список поддерживаемых игр и совместимость постоянно увеличивается. Для активации данного режима необходимо использовать пункт "Steam-play for all titles" в разделе Steam-Play настроек игрового клиента. Там же можно выбрать версию Steam-Proton, на выбор предалагается как стабильные, так и тестовые версии. Постоянно обновляемый список поддерживаемых игр можно найти [https://www.protondb.com '''здесь''']<br />
<br />
==Известные проблемы при запуске игр с помощью Steam-Proton==<br />
<br />
*Steam-Proton использует экспериментальную технологию dxvk, которая, как правило, требует самых свежих драйверов для видеокарт, поэтому запуск современных игр, особенно AAA класса на p8 может быть затруднен.<br />
*При установке игр рекомендуется использовать папку для игр и библиотек по умолчанию из-за достаточно специфических настроек префиксов<br />
*Если запускается множество dbus-launch, может быть не запущен пользовательский dbus или [https://stackoverflow.com/a/41244272 не выставлена] переменная DBUS_SESSION_BUS_ADDRESS:<br />
export $(dbus-launch)<br />
<br />
<br />
=Ошибка при установке Steam на Sisyphus=<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
= Ссылки =<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam_Proton&diff=77354Steam Proton2024-01-06T19:09:52Z<p>IgorN: Добавлено про необходимость наличия поддержки Vulkan 1.3.</p>
<hr />
<div>== Описание ==<br />
<br />
'''Proton''' (SteamPlay) — слой совместимости для запуска Windows-программ, ориентированный на запуск компьютерных игр. Предлагается в качестве опции-инструмента в [[Steam|клиенте Steam]] для бесшовного запуска игр из библиотеки пользователя. В качестве составного произведения распространяется под лицензией 3-clause BSD.<br />
<br />
* Является ответвлением [[WINE|Wine]], развиваемым компанией Valve. Основные отличия от Wine:<br />
** В качестве транслятора вызовов Direct3D (DirectX) в Vulkan задействует [https://github.com/doitsujin/dxvk DXVK] и [https://github.com/HansKristian-Work/vkd3d-proton vkd3d-proton].<br />
*** На момент 2024 года требуется видеокарта с аппаратной поддержкой Vulkan 1.3 и актуальные драйвера, поддерживающие новейшие Vulkan-расширения и версии протокола Wayland. На старом оборудовании (видеокарты десятилетней давности и старее) и устаревшей пакетной базе (платформа 9 и старее) работоспособность затруднена или отсутствует.<br />
** Реализована Python-обёртка и набор библиотек для интеграции в клиент Steam.<br />
** Используются дополнительные патчи, включая расширенную поддержку анти-читов, для достижения работоспособности отдельных игр и игровых устройств.<br />
* Первый выпуск состоялся в 2018 году. Историческая справка: https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561<br />
* Официальный репозиторий: https://github.com/ValveSoftware/Proton<br />
* Официальное руководство пользователя: https://github.com/ValveSoftware/Proton#readme<br />
* Справка по применению опций совместимости: https://github.com/ValveSoftware/Proton#runtime-config-options<br />
* Каталог отчётов пользователей с рецептами запуска различных игр: https://www.protondb.com/<br />
** Полная работоспособность достигнута для многих тысяч игр, но всё ещё остаётся небольшое число тех, что работают с некоторыми проблемами или требуют дополнительных манипуляций. Так же есть незначительное количество полностью неработоспособных, большая часть из которых не работает из-за намеренной блокировки запуска анти-читами.<br />
<br />
<br />
== Первоначальная настройка ==<br />
<br />
Производится через клиент Steam. Для этого перейти в ''Steam / Настройки / Совместимость'' и отметить два пункта:<br />
* ''Включить Steam Play для поддерживаемых продуктов''.<br />
* ''Включить Steam Play для всех других продуктов''.<br />
<br />
[[Файл:Altlinux steam proton.png|700px|центр]]<br />
<br />
Для применения изменений необходимо перезапустить клиент Steam. После перезапуска появится возможность устанавливать Windows-игры и запускать их. Proton будет автоматически загружен при попытке запуска любой Windows-игры из библиотеки.<br />
<br />
[[Файл:Altlinux steam proton кнопка установки игры.png|600px|центр]]<br />
<br />
<br />
== Использование версий ==<br />
<br />
Пользователям предлагается следующий набор версий-сборок:<br />
** ''Proton <номер версии>'' — стабильные версии, использующие в качестве основы стабильную версию Wine с переносом отдельных изменений из ветки разработки. В клиенте Steam по умолчанию предлагается крайняя стабильная версия.<br />
** ''Proton Experimental'' — версия со свежайшими изменениями из ветки разработки.<br />
** ''Proton Hotfix'' — версия с экстренными, экспериментальными и адресными исправлениями. Используется в исключительных случаях.<br />
<br />
Версию Proton можно переключить глобально или для каждой игры отдельно. Глобальный переключатель:<br />
[[Файл:Altlinux steam proton глобальный переключатель.png|700px|центр]]<br />
<br />
Пример для отдельной игры. Чтобы появился список для выбора версий, необходимо отметить пункт ''"Принудительно использовать выбранный инструмент совместимости Steam Play"'':<br />
[[Файл:Altlinux steam proton локальный переключатель.png|700px|центр]]<br />
<br />
Кроме официальных сборок, существуют варианты от сообщества. Среди них можно выделить следующие:<br />
** [https://github.com/GloriousEggroll/proton-ge-custom proton-ge-custom] — можно использовать из клиента Steam так же, как обычный Proton.<br />
** [[PortProton]] — отдельная обёртка-приложение, независящая от клиента Steam. Позволяет запускать программы вне библиотеки Steam без специфичных манипуляций.<br />
<br />
<br />
== Особенности структуры каталогов Steam Proton ==<br />
<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
{{Note|Пути указаны относительно каталога steamapps, расположенного по умолчанию.}}<br />
<br />
* Версии Proton загружаются в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог игры со всем содержимым отделён от префикса и располагается в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог префикса располагается в {{path|/home/$USER/.local/share/Steam/steamapps/compatdata/}}.<br />
* Для каждой игры используется отдельный префикс.<br />
* Префикс создаётся при запуске игры. То есть для появления префикса в ./compatdata игра должна быть запущена хотя бы раз.<br />
* В префиксе по умолчанию создаётся стандартный Windows-пользователь с именем '''steamuser''': {{path|./Steam/steamapps/compatdata/1608450/pfx/drive_c/users/'''steamuser'''/}}.<br />
** В этом каталоге расположены стандартные каталоги Windows-пользователя, включая AppData (Application Data).<br />
** Как правило, здесь хранятся игровые сохранения, файлы конфигурации и подобное.<br />
* Моды из Мастерской (Steam workshop) размещаются в подкаталогах {{path|/home/$USER/.local/share/Steam/steamapps/workshop/}}.<br />
** Некоторые игры могут "потерять" загруженные моды, если каталог ''steamapps'' располагается не по умолчанию (на другом разделе).<br />
<br />
<br />
<br />
== Использование Proton напрямую без задействования клиента Steam ==<br />
<br />
В Proton реализован механизм прямого запуска тех или иных программ, размещённых в Proton-префиксе, без задействования клиента Steam. Использование напрямую позволяет запускать программы внутри конкретного Proton-префикса, включая штатные Wine-программы. В контексте игр это даёт удобную возможность установить русификатор, моды и подобное, а так же запускать различные инструменты: программу конфигурации, игровой редактор и подобное.<br />
<br />
=== Пример запуска установочного файла OpenGL-обёртки для игры Disciples 2 ===<br />
<br />
Расположение префикса игры по умолчанию:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/}}<br />
<br />
Установочный файл OpenGL-обёртки (DisciplesWrapperV1.90.exe) был размещён в корне префикса:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''}}<br />
<br />
Команда на запуск установочного файла:<br />
'''STEAM_COMPAT_CLIENT_INSTALL_PATH'''=/home/$USER/.local/share/Steam/ '''STEAM_COMPAT_DATA_PATH'''=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 ''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/'''proton''''' '''run''' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''<br />
<br />
Из-за длины путей выглядит громоздко и сложно, но на деле команда проста:<br />
* '''STEAM_COMPAT_CLIENT_INSTALL_PATH''' — передать этой переменной окружения путь до корневого каталога клиента Steam. В данном случае это ''/home/$USER/.local/share/Steam/''<br />
* '''STEAM_COMPAT_DATA_PATH''' — передать путь до Proton-префикса, который создаётся при первом запуске игры. Путь из примера: ''/home/$USER/.steam/steam/steamapps/compatdata/1640/'', где имя каталога с префиксом соответствует ID игры в Steam — 1640.<br />
* '''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton''' — путь до python-скрипта ''proton'', с помощью которого производится задействование Proton. Путь будет отличаться в зависимости от установленной версии Proton. В данном случае используется Proton 8.0. Так же стоит отметить, что в имени каталога Proton присутствует пробел, его нужно экранировать обратной косой чертой (\) или экранировать кавычками путь целиком.<br />
* '''''run'' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/DisciplesWrapperV1.90.exe''' — команда на запуск указанного исполняемого файла (DisciplesWrapperV1.90.exe) с помощью Proton.<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton окно установки обёртки.png|центр]]<br />
<br />
Важно отметить, что подобные установщики ожидают обнаружить файлы игры в границах префикса, но в структуре каталогов Steam каталог с игрой располагается вне префикса. В связи с этим, в диалоге выбора пути потребуется указать путь через структуру каталогов Linux.<br />
В некоторых случаях это вызывает проблемы (установщик может отказаться продолжать работу, выведя ошибку). Надёжнее создать в префиксе символическую ссылку на каталог с файлами игры, что позволит установщику получить привычный DOS-путь к файлам игры. Пример расположения точки входа:<br />
<br><br />
{{path|"./drive_c/Program Files (x86)/Steam/steamapps/common/Символическая_ссылка_на_каталог_игры"}}<br />
<br />
Пример создания символической ссылки (пробелы и скобки в имени каталогов экранированы обратной косой чертой):<br />
ln -s /home/$USER/.local/share/Steam/steamapps/common/Disciples\ II\ Galleans\ Return /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/Program\ Files\ \(x86\)/Steam/steamapps/common/Disciples\ II\ Galleans\ Return<br />
<br />
<br />
=== Запуск стандартных Wine-программ в Proton-префиксе ===<br />
<br />
В Proton-префиксе присутствует полный набор программ из стандартного Wine-префикса. Их можно задействовать так же, как это делается для Wine-префикса. Пример запуска '''winecfg''' всё в том же префиксе игры Disciples 2:<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''winecfg'''<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton winecfg.png|центр]]<br />
<br />
Пример запуска «Установка/удаление программ» (uninstaller):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''uninstaller'''<br />
<br />
[[Файл:Altlinux steam proton uninstaller.png|центр]]<br />
<br />
Пример запуска редактора реестра (regedit):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''regedit'''<br />
<br />
[[Файл:Altlinux steam proton regedit.png|центр]]<br />
<br />
Пример запуска Диспетчера задач (taskmgr):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''taskmgr'''<br />
<br />
[[Файл:Altlinux steam proton taskmgr.png|центр]]<br />
<br />
<br />
=== Пример запуска сторонних игр в Proton-префиксе ===<br />
<br />
Да, это работает. Демонстрация на примере запуска Konung 2.<br />
Установка из ''setup_konung2_russian_2.0.0.3.exe'':<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/'''setup_konung2_russian_2.0.0.3.exe'''<br />
<br />
[[Файл:Altlinux steam proton установка konung 2.png|600px|центр]]<br />
<br />
По запуску есть особенность. Если запускать исполняемый файл напрямую, то игра не запустится, но если её стартовать с файла-ярлыка (.lnk), запуск проходит успешно. lnk-файлы хранятся в каталоге {{path|./drive_c/ProgramData/Microsoft/Windows/Start Menu/Programs/}}.<br />
Запуск с lnk-файла (пробелы и скобки экранированы обратной косой чертой):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/Konung\ 2\ -\ Blood\ of\ Titans\ \[GOG\.com\]/'''Konung\ 2\ -\ Blood\ of\ Titans.lnk'''<br />
<br />
<br />
[[Файл:Altlinux steam proton konung 2 меню.png|700px|центр]]</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77353Steam2024-01-06T18:48:35Z<p>IgorN: Удаление библиотек потеряло актуальность.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
<br />
<br />
== Решение проблемы запуска при использовании свободного драйвера Radeon ==<br />
<br />
При запуске steam выдаёт в терминал:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Также нужно установить 32-битные библиотеки:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
=Steam-Proton=<br />
<br />
С октября 2018 года клиент Steam имеет встроенное решение для запуска Windows - игр на операционный системах Linux на базе Wine + DXVK для трансляции DX10 и DX11. Данное решение является тестовым и запускает далеко не все игры из библиотеки игр Steam, однако список поддерживаемых игр и совместимость постоянно увеличивается. Для активации данного режима необходимо использовать пункт "Steam-play for all titles" в разделе Steam-Play настроек игрового клиента. Там же можно выбрать версию Steam-Proton, на выбор предалагается как стабильные, так и тестовые версии. Постоянно обновляемый список поддерживаемых игр можно найти [https://www.protondb.com '''здесь''']<br />
<br />
==Известные проблемы при запуске игр с помощью Steam-Proton==<br />
<br />
*Steam-Proton использует экспериментальную технологию dxvk, которая, как правило, требует самых свежих драйверов для видеокарт, поэтому запуск современных игр, особенно AAA класса на p8 может быть затруднен.<br />
*При установке игр рекомендуется использовать папку для игр и библиотек по умолчанию из-за достаточно специфических настроек префиксов<br />
*Если запускается множество dbus-launch, может быть не запущен пользовательский dbus или [https://stackoverflow.com/a/41244272 не выставлена] переменная DBUS_SESSION_BUS_ADDRESS:<br />
export $(dbus-launch)<br />
<br />
<br />
=Ошибка при установке Steam на Sisyphus=<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
= Ссылки =<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam&diff=77352Steam2024-01-06T18:47:48Z<p>IgorN: Актуализация.</p>
<hr />
<div>{{Stub}}<br />
<br />
== Установка Steam на ALT Linux ==<br />
<br />
На момент 2024 года для Steam отсутствует 64-битная сборка, поэтому сохраняется необходимость устанавливать [[biarch|32-битный Steam на 64-битную систему]]:<br />
<br />
su -<br />
apt-get update<br />
apt-get install i586-steam<br />
exit<br />
<br />
=== Дополнительные зависимости ===<br />
Требуется наличие 32-х битных пакетов драйверов:<br />
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]<br />
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]<br />
<br />
<br />
== Решение проблемы запуска при использовании свободного драйвера Radeon ==<br />
<br />
При запуске steam выдаёт в терминал:<br />
libGL error: unable to load driver: radeonsi_dri.so<br />
libGL error: driver pointer missing<br />
libGL error: failed to load driver: radeonsi<br />
libGL error: unable to load driver: swrast_dri.so<br />
libGL error: failed to load driver: swrast<br />
<br />
Нужно удалить несовместимые библиотеки:<br />
<br />
rm -f .steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6 <br />
~/.steam/steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libgcc_s.so.1 <br />
~/.steam/steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libgcc_s.so.1 <br />
~/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libstdc++.so.6 <br />
~/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libxcb.so.1 <br />
<br />
Также нужно установить 32-битные библиотеки:<br />
apt-get install i586-xorg-drv-radeon i586-xorg-dri-radeon i586-xorg-dri-swrast i586-libGL i586-libEGL i586-libxatracker i586-libgbm i586-libGLES i586-libGLX i586-libglvnd i586-libnsl1<br />
<br />
=Steam-Proton=<br />
<br />
С октября 2018 года клиент Steam имеет встроенное решение для запуска Windows - игр на операционный системах Linux на базе Wine + DXVK для трансляции DX10 и DX11. Данное решение является тестовым и запускает далеко не все игры из библиотеки игр Steam, однако список поддерживаемых игр и совместимость постоянно увеличивается. Для активации данного режима необходимо использовать пункт "Steam-play for all titles" в разделе Steam-Play настроек игрового клиента. Там же можно выбрать версию Steam-Proton, на выбор предалагается как стабильные, так и тестовые версии. Постоянно обновляемый список поддерживаемых игр можно найти [https://www.protondb.com '''здесь''']<br />
<br />
==Известные проблемы при запуске игр с помощью Steam-Proton==<br />
<br />
*Steam-Proton использует экспериментальную технологию dxvk, которая, как правило, требует самых свежих драйверов для видеокарт, поэтому запуск современных игр, особенно AAA класса на p8 может быть затруднен.<br />
*При установке игр рекомендуется использовать папку для игр и библиотек по умолчанию из-за достаточно специфических настроек префиксов<br />
*Если запускается множество dbus-launch, может быть не запущен пользовательский dbus или [https://stackoverflow.com/a/41244272 не выставлена] переменная DBUS_SESSION_BUS_ADDRESS:<br />
export $(dbus-launch)<br />
<br />
<br />
=Ошибка при установке Steam на Sisyphus=<br />
<br />
Иногда при установке клиента Steam на Sisyphus с точечно-несизифными пакетами возникает следующая ошибка<br />
<br />
Следующие пакеты имеют неудовлетворенные зависимости:<br />
i586-steam.32bit: Требует: i586-libnss<br />
E: Извините, `битые' пакеты<br />
Ошибка исправляется [[downgrade|так]]: создаем файл /etc/apt/preferences и добавляем в него:<br />
Package: *<br />
Pin: release l=Sisyphus<br />
Pin-Priority: 1001 <br />
<br />
Обновляемся<br />
# apt-get update<br />
# apt-get dist-upgrade<br />
<br />
Повторяем установку; созданный файл удаляем или отодвигаем в сторону по вкусу.<br />
<br />
= Ссылки =<br />
<br />
* [http://forum.altlinux.org/index.php/topic,29957.html Проблема с запуском Steam]<br />
* [http://forum.altlinux.org/index.php/topic,32895.html Проблема с запуском Steam (часть 2)]<br />
* [https://forum.altlinux.org/index.php/topic=41439.html Не запускается steam из репозиториев]<br />
* [http://forum.altlinux.org/index.php/topic,33548.html Bumblebee, steam и libGL.so]<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1669192#p1669192 Решение error: /usr/lib32/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds]<br />
* [[Nvidia optimus, настройка и запуск bumblebee#Primus]]<br />
* [https://github.com/ValveSoftware/steam-runtime/issues/34 Проблема запуска steam при использовании свободного драйвера Radeon]<br />
[[Категория:Программы]]<br />
{{Category navigation|title=Программы|category=Программы|sortkey={{SUBPAGENAME}}}}</div>IgorNhttps://www.altlinux.org/index.php?title=Steam_Proton&diff=77351Steam Proton2024-01-06T18:27:05Z<p>IgorN: Добавлен путь расположения файлов дистрибутива Proton.</p>
<hr />
<div>== Описание ==<br />
<br />
'''Proton''' (SteamPlay) — слой совместимости для запуска Windows-программ, ориентированный на запуск компьютерных игр. Предлагается в качестве опции-инструмента в [[Steam|клиенте Steam]] для бесшовного запуска игр из библиотеки пользователя. В качестве составного произведения распространяется под лицензией 3-clause BSD.<br />
<br />
* Является ответвлением [[WINE|Wine]], развиваемым компанией Valve. Основные отличия от Wine:<br />
** В качестве транслятора вызовов Direct3D (DirectX) в Vulkan задействует [https://github.com/doitsujin/dxvk DXVK] и [https://github.com/HansKristian-Work/vkd3d-proton vkd3d-proton].<br />
** Реализована python-обёртка и набор библиотек для интеграции в клиент Steam.<br />
** Используются дополнительные патчи, включая расширенную поддержку анти-читов, для достижения работоспособности отдельных игр и игровых устройств.<br />
* Первый выпуск состоялся в 2018 году. Историческая справка: https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561<br />
* Официальный репозиторий: https://github.com/ValveSoftware/Proton<br />
* Официальное руководство пользователя: https://github.com/ValveSoftware/Proton#readme<br />
* Справка по применению опций совместимости: https://github.com/ValveSoftware/Proton#runtime-config-options<br />
* Каталог отчётов пользователей с рецептами запуска различных игр: https://www.protondb.com/<br />
** Полная работоспособность достигнута для многих тысяч игр, но всё ещё остаётся небольшое число тех, что работают с некоторыми проблемами или требуют дополнительных манипуляций. Так же есть незначительное количество полностью неработоспособных, большая часть из которых не работает из-за намеренной блокировки запуска анти-читами.<br />
<br />
<br />
== Первоначальная настройка ==<br />
<br />
Производится через клиент Steam. Для этого перейти в ''Steam / Настройки / Совместимость'' и отметить два пункта:<br />
* ''Включить Steam Play для поддерживаемых продуктов''.<br />
* ''Включить Steam Play для всех других продуктов''.<br />
<br />
[[Файл:Altlinux steam proton.png|700px|центр]]<br />
<br />
Для применения изменений необходимо перезапустить клиент Steam. После перезапуска появится возможность устанавливать Windows-игры и запускать их. Proton будет автоматически загружен при попытке запуска любой Windows-игры из библиотеки.<br />
<br />
[[Файл:Altlinux steam proton кнопка установки игры.png|600px|центр]]<br />
<br />
<br />
== Использование версий ==<br />
<br />
Пользователям предлагается следующий набор версий-сборок:<br />
** ''Proton <номер версии>'' — стабильные версии, использующие в качестве основы стабильную версию Wine с переносом отдельных изменений из ветки разработки. В клиенте Steam по умолчанию предлагается крайняя стабильная версия.<br />
** ''Proton Experimental'' — версия со свежайшими изменениями из ветки разработки.<br />
** ''Proton Hotfix'' — версия с экстренными, экспериментальными и адресными исправлениями. Используется в исключительных случаях.<br />
<br />
Версию Proton можно переключить глобально или для каждой игры отдельно. Глобальный переключатель:<br />
[[Файл:Altlinux steam proton глобальный переключатель.png|700px|центр]]<br />
<br />
Пример для отдельной игры. Чтобы появился список для выбора версий, необходимо отметить пункт ''"Принудительно использовать выбранный инструмент совместимости Steam Play"'':<br />
[[Файл:Altlinux steam proton локальный переключатель.png|700px|центр]]<br />
<br />
Кроме официальных сборок, существуют варианты от сообщества. Среди них можно выделить следующие:<br />
** [https://github.com/GloriousEggroll/proton-ge-custom proton-ge-custom] — можно использовать из клиента Steam так же, как обычный Proton.<br />
** [[PortProton]] — отдельная обёртка-приложение, независящая от клиента Steam. Позволяет запускать программы вне библиотеки Steam без специфичных манипуляций.<br />
<br />
<br />
== Особенности структуры каталогов Steam Proton ==<br />
<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
{{Note|Пути указаны относительно каталога steamapps, расположенного по умолчанию.}}<br />
<br />
* Версии Proton загружаются в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог игры со всем содержимым отделён от префикса и располагается в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог префикса располагается в {{path|/home/$USER/.local/share/Steam/steamapps/compatdata/}}.<br />
* Для каждой игры используется отдельный префикс.<br />
* Префикс создаётся при запуске игры. То есть для появления префикса в ./compatdata игра должна быть запущена хотя бы раз.<br />
* В префиксе по умолчанию создаётся стандартный Windows-пользователь с именем '''steamuser''': {{path|./Steam/steamapps/compatdata/1608450/pfx/drive_c/users/'''steamuser'''/}}.<br />
** В этом каталоге расположены стандартные каталоги Windows-пользователя, включая AppData (Application Data).<br />
** Как правило, здесь хранятся игровые сохранения, файлы конфигурации и подобное.<br />
* Моды из Мастерской (Steam workshop) размещаются в подкаталогах {{path|/home/$USER/.local/share/Steam/steamapps/workshop/}}.<br />
** Некоторые игры могут "потерять" загруженные моды, если каталог ''steamapps'' располагается не по умолчанию (на другом разделе).<br />
<br />
<br />
<br />
== Использование Proton напрямую без задействования клиента Steam ==<br />
<br />
В Proton реализован механизм прямого запуска тех или иных программ, размещённых в Proton-префиксе, без задействования клиента Steam. Использование напрямую позволяет запускать программы внутри конкретного Proton-префикса, включая штатные Wine-программы. В контексте игр это даёт удобную возможность установить русификатор, моды и подобное, а так же запускать различные инструменты: программу конфигурации, игровой редактор и подобное.<br />
<br />
=== Пример запуска установочного файла OpenGL-обёртки для игры Disciples 2 ===<br />
<br />
Расположение префикса игры по умолчанию:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/}}<br />
<br />
Установочный файл OpenGL-обёртки (DisciplesWrapperV1.90.exe) был размещён в корне префикса:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''}}<br />
<br />
Команда на запуск установочного файла:<br />
'''STEAM_COMPAT_CLIENT_INSTALL_PATH'''=/home/$USER/.local/share/Steam/ '''STEAM_COMPAT_DATA_PATH'''=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 ''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/'''proton''''' '''run''' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''<br />
<br />
Из-за длины путей выглядит громоздко и сложно, но на деле команда проста:<br />
* '''STEAM_COMPAT_CLIENT_INSTALL_PATH''' — передать этой переменной окружения путь до корневого каталога клиента Steam. В данном случае это ''/home/$USER/.local/share/Steam/''<br />
* '''STEAM_COMPAT_DATA_PATH''' — передать путь до Proton-префикса, который создаётся при первом запуске игры. Путь из примера: ''/home/$USER/.steam/steam/steamapps/compatdata/1640/'', где имя каталога с префиксом соответствует ID игры в Steam — 1640.<br />
* '''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton''' — путь до python-скрипта ''proton'', с помощью которого производится задействование Proton. Путь будет отличаться в зависимости от установленной версии Proton. В данном случае используется Proton 8.0. Так же стоит отметить, что в имени каталога Proton присутствует пробел, его нужно экранировать обратной косой чертой (\) или экранировать кавычками путь целиком.<br />
* '''''run'' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/DisciplesWrapperV1.90.exe''' — команда на запуск указанного исполняемого файла (DisciplesWrapperV1.90.exe) с помощью Proton.<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton окно установки обёртки.png|центр]]<br />
<br />
Важно отметить, что подобные установщики ожидают обнаружить файлы игры в границах префикса, но в структуре каталогов Steam каталог с игрой располагается вне префикса. В связи с этим, в диалоге выбора пути потребуется указать путь через структуру каталогов Linux.<br />
В некоторых случаях это вызывает проблемы (установщик может отказаться продолжать работу, выведя ошибку). Надёжнее создать в префиксе символическую ссылку на каталог с файлами игры, что позволит установщику получить привычный DOS-путь к файлам игры. Пример расположения точки входа:<br />
<br><br />
{{path|"./drive_c/Program Files (x86)/Steam/steamapps/common/Символическая_ссылка_на_каталог_игры"}}<br />
<br />
Пример создания символической ссылки (пробелы и скобки в имени каталогов экранированы обратной косой чертой):<br />
ln -s /home/$USER/.local/share/Steam/steamapps/common/Disciples\ II\ Galleans\ Return /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/Program\ Files\ \(x86\)/Steam/steamapps/common/Disciples\ II\ Galleans\ Return<br />
<br />
<br />
=== Запуск стандартных Wine-программ в Proton-префиксе ===<br />
<br />
В Proton-префиксе присутствует полный набор программ из стандартного Wine-префикса. Их можно задействовать так же, как это делается для Wine-префикса. Пример запуска '''winecfg''' всё в том же префиксе игры Disciples 2:<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''winecfg'''<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton winecfg.png|центр]]<br />
<br />
Пример запуска «Установка/удаление программ» (uninstaller):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''uninstaller'''<br />
<br />
[[Файл:Altlinux steam proton uninstaller.png|центр]]<br />
<br />
Пример запуска редактора реестра (regedit):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''regedit'''<br />
<br />
[[Файл:Altlinux steam proton regedit.png|центр]]<br />
<br />
Пример запуска Диспетчера задач (taskmgr):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''taskmgr'''<br />
<br />
[[Файл:Altlinux steam proton taskmgr.png|центр]]<br />
<br />
<br />
=== Пример запуска сторонних игр в Proton-префиксе ===<br />
<br />
Да, это работает. Демонстрация на примере запуска Konung 2.<br />
Установка из ''setup_konung2_russian_2.0.0.3.exe'':<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/'''setup_konung2_russian_2.0.0.3.exe'''<br />
<br />
[[Файл:Altlinux steam proton установка konung 2.png|600px|центр]]<br />
<br />
По запуску есть особенность. Если запускать исполняемый файл напрямую, то игра не запустится, но если её стартовать с файла-ярлыка (.lnk), запуск проходит успешно. lnk-файлы хранятся в каталоге {{path|./drive_c/ProgramData/Microsoft/Windows/Start Menu/Programs/}}.<br />
Запуск с lnk-файла (пробелы и скобки экранированы обратной косой чертой):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/Konung\ 2\ -\ Blood\ of\ Titans\ \[GOG\.com\]/'''Konung\ 2\ -\ Blood\ of\ Titans.lnk'''<br />
<br />
<br />
[[Файл:Altlinux steam proton konung 2 меню.png|700px|центр]]</div>IgorNhttps://www.altlinux.org/index.php?title=PortProton&diff=77349PortProton2024-01-06T11:59:14Z<p>IgorN: Улучшена структура текста. Добавлены списки. Улучшена читаемость.</p>
<hr />
<div>== Описание ==<br />
<br />
PortProton — это проект, разработанный командой linux-gaming.ru для того, чтобы сделать легким и удобным запуск Windows-игр на Linux как для начинающих, так и для продвинутых пользователей. Проект стремится сделать запуск игр (и другого программного обеспечения) максимально простым, но в то же время предоставляет гибкие настройки для продвинутых пользователей.<br />
<br />
<br><br />
Официальная страница проекта: https://linux-gaming.ru/2022/11/24/portproton/<br />
<br />
<br />
== Установка ==<br />
su -<br />
apt-get update && apt-get dist-upgrade<br />
apt-get install portproton<br />
apt-get install i586-{libvulkan1,libd3d,libGL,libgio,libnm,libnsl1,libnss,glibc-nss,glibc-pthread,libunwind,xorg-dri-swrast}<br />
exit<br />
<br />
<br><br />
Вариант установки с помощью [https://www.altlinux.org/Epm eepm]:<br />
su -<br />
epm full-upgrade<br />
epm play portproton<br />
exit<br />
<br />
<br />
== Списки поддерживаемых программ запуска ==<br />
<br />
{{Note|Списки обновляются от версии к версии.}}<br />
<br />
Список программ запуска игровых площадок и онлайн-игр:<br />
* Lesta Game Center<br />
* vkPlay Game Center<br />
* Battle.net Launcher<br />
* Epic Games Launcher<br />
* GoG Galaxy, Ubisoft<br />
* EVE Online<br />
* Rockstar Games Launcher<br />
* League of Legends<br />
* Gameforge Client<br />
* World of Sea Battle<br />
* Caliber<br />
* Crossaut<br />
* Warframe<br />
* Panzar<br />
* Stalcraft<br />
* Contract Wars<br />
* Stalker Online<br />
* Metal War Online<br />
* Ankama Launcher<br />
* Indiegala Client<br />
* Plarium Play<br />
* Wargaming Game Center<br />
* OSU!<br />
* ITCH.IO<br />
* Steam (Windows)<br />
* Path of Exile<br />
<br />
<br><br />
<br><br />
<br />
Список программ запуска эмуляторов:<br />
* Dolphin 5.0<br />
* MAME<br />
* ScuumVM<br />
* RetroArch<br />
* PPSSPP Windows<br />
* Citra<br />
* Cemu<br />
* DuStation<br />
* ePSXe<br />
* Project64<br />
* VBA-M<br />
* Yabause<br />
* Xenia<br />
* FCEUX<br />
* xemu<br />
* Demul<br />
* Rpcs3<br />
<br />
<br />
== Конфигурирование ==<br />
Рекомендуемые параметры запуска для конкретной игры/программы расположены в {{path|~/PortWINE/PortProton/data/scripts/portwine_db/<имя игры>}}.<br />
<br><br />
После первого запуска exe-файла в этом же каталоге создается ppdb-файл. В ppdb-файле содержится описание последних изменений настроек portproton для игры/программы.<br />
<br />
<br />
== Прочее ==<br />
Дополнительно см. на [[Игры#Порт-протон|странице]] про игры.</div>IgorNhttps://www.altlinux.org/index.php?title=Steam_Proton&diff=77347Steam Proton2024-01-06T11:10:27Z<p>IgorN: Добавлен раздел по структуре каталогов и правки опечаток по тексту.</p>
<hr />
<div>== Описание ==<br />
<br />
'''Proton''' (SteamPlay) — слой совместимости для запуска Windows-программ, ориентированный на запуск компьютерных игр. Предлагается в качестве опции-инструмента в [[Steam|клиенте Steam]] для бесшовного запуска игр из библиотеки пользователя. В качестве составного произведения распространяется под лицензией 3-clause BSD.<br />
<br />
* Является ответвлением [[WINE|Wine]], развиваемым компанией Valve. Основные отличия от Wine:<br />
** В качестве транслятора вызовов Direct3D (DirectX) в Vulkan задействует [https://github.com/doitsujin/dxvk DXVK] и [https://github.com/HansKristian-Work/vkd3d-proton vkd3d-proton].<br />
** Реализована python-обёртка и набор библиотек для интеграции в клиент Steam.<br />
** Используются дополнительные патчи, включая расширенную поддержку анти-читов, для достижения работоспособности отдельных игр и игровых устройств.<br />
* Первый выпуск состоялся в 2018 году. Историческая справка: https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561<br />
* Официальный репозиторий: https://github.com/ValveSoftware/Proton<br />
* Официальное руководство пользователя: https://github.com/ValveSoftware/Proton#readme<br />
* Справка по применению опций совместимости: https://github.com/ValveSoftware/Proton#runtime-config-options<br />
* Каталог отчётов пользователей с рецептами запуска различных игр: https://www.protondb.com/<br />
** Полная работоспособность достигнута для многих тысяч игр, но всё ещё остаётся небольшое число тех, что работают с некоторыми проблемами или требуют дополнительных манипуляций. Так же есть незначительное количество полностью неработоспособных, большая часть из которых не работает из-за намеренной блокировки запуска анти-читами.<br />
<br />
<br />
== Первоначальная настройка ==<br />
<br />
Производится через клиент Steam. Для этого перейти в ''Steam / Настройки / Совместимость'' и отметить два пункта:<br />
* ''Включить Steam Play для поддерживаемых продуктов''.<br />
* ''Включить Steam Play для всех других продуктов''.<br />
<br />
[[Файл:Altlinux steam proton.png|700px|центр]]<br />
<br />
Для применения изменений необходимо перезапустить клиент Steam. После перезапуска появится возможность устанавливать Windows-игры и запускать их. Proton будет автоматически загружен при попытке запуска любой Windows-игры из библиотеки.<br />
<br />
[[Файл:Altlinux steam proton кнопка установки игры.png|600px|центр]]<br />
<br />
<br />
== Использование версий ==<br />
<br />
Пользователям предлагается следующий набор версий-сборок:<br />
** ''Proton <номер версии>'' — стабильные версии, использующие в качестве основы стабильную версию Wine с переносом отдельных изменений из ветки разработки. В клиенте Steam по умолчанию предлагается крайняя стабильная версия.<br />
** ''Proton Experimental'' — версия со свежайшими изменениями из ветки разработки.<br />
** ''Proton Hotfix'' — версия с экстренными, экспериментальными и адресными исправлениями. Используется в исключительных случаях.<br />
<br />
Версию Proton можно переключить глобально или для каждой игры отдельно. Глобальный переключатель:<br />
[[Файл:Altlinux steam proton глобальный переключатель.png|700px|центр]]<br />
<br />
Пример для отдельной игры. Чтобы появился список для выбора версий, необходимо отметить пункт ''"Принудительно использовать выбранный инструмент совместимости Steam Play"'':<br />
[[Файл:Altlinux steam proton локальный переключатель.png|700px|центр]]<br />
<br />
Кроме официальных сборок, существуют варианты от сообщества. Среди них можно выделить следующие:<br />
** [https://github.com/GloriousEggroll/proton-ge-custom proton-ge-custom] — можно использовать из клиента Steam так же, как обычный Proton.<br />
** [[PortProton]] — отдельная обёртка-приложение, независящая от клиента Steam. Позволяет запускать программы вне библиотеки Steam без специфичных манипуляций.<br />
<br />
<br />
== Особенности структуры каталогов Steam Proton ==<br />
<br />
{{Note|Для понимания материала крайне желательно иметь представление об [[WINE|основах использования Wine]].}}<br />
<br />
{{Note|Пути указаны относительно каталога steamapps, расположенного по умолчанию.}}<br />
<br />
* Каталог игры со всем содержимым отделён от префикса и располагается в {{path|/home/$USER/.local/share/Steam/steamapps/common/}}.<br />
* Каталог префикса располагается в {{path|/home/$USER/.local/share/Steam/steamapps/compatdata/}}.<br />
* Для каждой игры используется отдельный префикс.<br />
* Префикс создаётся при запуске игры. То есть для появления префикса в ./compatdata игра должна быть запущена хотя бы раз.<br />
* В префиксе по умолчанию создаётся стандартный Windows-пользователь с именем '''steamuser''': {{path|./Steam/steamapps/compatdata/1608450/pfx/drive_c/users/'''steamuser'''/}}.<br />
** В этом каталоге расположены стандартные каталоги Windows-пользователя, включая AppData (Application Data).<br />
** Как правило, здесь хранятся игровые сохранения, файлы конфигурации и подобное.<br />
* Моды из Мастерской (Steam workshop) размещаются в подкаталогах {{path|/home/$USER/.local/share/Steam/steamapps/workshop/}}.<br />
** Некоторые игры могут "потерять" загруженные моды, если каталог ''steamapps'' располагается не по умолчанию (на другом разделе).<br />
<br />
<br />
<br />
== Использование Proton напрямую без задействования клиента Steam ==<br />
<br />
В Proton реализован механизм прямого запуска тех или иных программ, размещённых в Proton-префиксе, без задействования клиента Steam. Использование напрямую позволяет запускать программы внутри конкретного Proton-префикса, включая штатные Wine-программы. В контексте игр это даёт удобную возможность установить русификатор, моды и подобное, а так же запускать различные инструменты: программу конфигурации, игровой редактор и подобное.<br />
<br />
=== Пример запуска установочного файла OpenGL-обёртки для игры Disciples 2 ===<br />
<br />
Расположение префикса игры по умолчанию:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/}}<br />
<br />
Установочный файл OpenGL-обёртки (DisciplesWrapperV1.90.exe) был размещён в корне префикса:<br />
<br><br />
{{path|/home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''}}<br />
<br />
Команда на запуск установочного файла:<br />
'''STEAM_COMPAT_CLIENT_INSTALL_PATH'''=/home/$USER/.local/share/Steam/ '''STEAM_COMPAT_DATA_PATH'''=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 ''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/'''proton''''' '''run''' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/''DisciplesWrapperV1.90.exe''<br />
<br />
Из-за длины путей выглядит громоздко и сложно, но на деле команда проста:<br />
* '''STEAM_COMPAT_CLIENT_INSTALL_PATH''' — передать этой переменной окружения путь до корневого каталога клиента Steam. В данном случае это ''/home/$USER/.local/share/Steam/''<br />
* '''STEAM_COMPAT_DATA_PATH''' — передать путь до Proton-префикса, который создаётся при первом запуске игры. Путь из примера: ''/home/$USER/.steam/steam/steamapps/compatdata/1640/'', где имя каталога с префиксом соответствует ID игры в Steam — 1640.<br />
* '''/home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton''' — путь до python-скрипта ''proton'', с помощью которого производится задействование Proton. Путь будет отличаться в зависимости от установленной версии Proton. В данном случае используется Proton 8.0. Так же стоит отметить, что в имени каталога Proton присутствует пробел, его нужно экранировать обратной косой чертой (\) или экранировать кавычками путь целиком.<br />
* '''''run'' /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/DisciplesWrapperV1.90.exe''' — команда на запуск указанного исполняемого файла (DisciplesWrapperV1.90.exe) с помощью Proton.<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton окно установки обёртки.png|центр]]<br />
<br />
Важно отметить, что подобные установщики ожидают обнаружить файлы игры в границах префикса, но в структуре каталогов Steam каталог с игрой располагается вне префикса. В связи с этим, в диалоге выбора пути потребуется указать путь через структуру каталогов Linux.<br />
В некоторых случаях это вызывает проблемы (установщик может отказаться продолжать работу, выведя ошибку). Надёжнее создать в префиксе символическую ссылку на каталог с файлами игры, что позволит установщику получить привычный DOS-путь к файлам игры. Пример расположения точки входа:<br />
<br><br />
{{path|"./drive_c/Program Files (x86)/Steam/steamapps/common/Символическая_ссылка_на_каталог_игры"}}<br />
<br />
Пример создания символической ссылки (пробелы и скобки в имени каталогов экранированы обратной косой чертой):<br />
ln -s /home/$USER/.local/share/Steam/steamapps/common/Disciples\ II\ Galleans\ Return /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/Program\ Files\ \(x86\)/Steam/steamapps/common/Disciples\ II\ Galleans\ Return<br />
<br />
<br />
=== Запуск стандартных Wine-программ в Proton-префиксе ===<br />
<br />
В Proton-префиксе присутствует полный набор программ из стандартного Wine-префикса. Их можно задействовать так же, как это делается для Wine-префикса. Пример запуска '''winecfg''' всё в том же префиксе игры Disciples 2:<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''winecfg'''<br />
<br />
Результат:<br />
[[Файл:Altlinux steam proton winecfg.png|центр]]<br />
<br />
Пример запуска «Установка/удаление программ» (uninstaller):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''uninstaller'''<br />
<br />
[[Файл:Altlinux steam proton uninstaller.png|центр]]<br />
<br />
Пример запуска редактора реестра (regedit):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''regedit'''<br />
<br />
[[Файл:Altlinux steam proton regedit.png|центр]]<br />
<br />
Пример запуска Диспетчера задач (taskmgr):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run '''taskmgr'''<br />
<br />
[[Файл:Altlinux steam proton taskmgr.png|центр]]<br />
<br />
<br />
=== Пример запуска сторонних игр в Proton-префиксе ===<br />
<br />
Да, это работает. Демонстрация на примере запуска Konung 2.<br />
Установка из ''setup_konung2_russian_2.0.0.3.exe'':<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/'''setup_konung2_russian_2.0.0.3.exe'''<br />
<br />
[[Файл:Altlinux steam proton установка konung 2.png|600px|центр]]<br />
<br />
По запуску есть особенность. Если запускать исполняемый файл напрямую, то игра не запустится, но если её стартовать с файла-ярлыка (.lnk), запуск проходит успешно. lnk-файлы хранятся в каталоге {{path|./drive_c/ProgramData/Microsoft/Windows/Start Menu/Programs/}}.<br />
Запуск с lnk-файла (пробелы и скобки экранированы обратной косой чертой):<br />
STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/$USER/.local/share/Steam/ STEAM_COMPAT_DATA_PATH=/home/$USER/.local/share/Steam/steamapps/compatdata/1640 /home/$USER/.local/share/Steam/steamapps/common/Proton\ 8.0/proton run /home/$USER/.local/share/Steam/steamapps/compatdata/1640/pfx/drive_c/ProgramData/Microsoft/Windows/Start\ Menu/Programs/Konung\ 2\ -\ Blood\ of\ Titans\ \[GOG\.com\]/'''Konung\ 2\ -\ Blood\ of\ Titans.lnk'''<br />
<br />
<br />
[[Файл:Altlinux steam proton konung 2 меню.png|700px|центр]]</div>IgorN