5 заметок с тегом

Linux

Proton — долгожданная фича от Valve

Помните времена, когда приходилось настраивать Wine (a.k.a. винишко), чтобы поиграть в свои любимые игрища, будучи на Линуксе? Я в своем блоге даже пару раз писал об этом. Так вот, это в прошлом.
Valve готовит Proton — технология, которая позволит играть в Windows-игры на Линуксе прямо через Стим. То есть, больше никаких эмуляторов, виртуальных машин и т. п. Все, как говорится, из-коробки.

Наша цель состоит в том, чтобы у пользователей Steam, использующих Linux, была возможность получить доступ ко множеству игр задним числом.
Valve, линк

Учитывая факт, что Valve активно поддерживает разработку Wine, Proton будет иметь преимущества по сравнению с обычным запуском через винишко, в том числе:

  • Поддержка DirectX 11 и 12, основанная на Vulkan — улучшит совместимость, уменьшит лаги;
  • Улучшена поддержка полного экрана: игры будут растягиваться до родного разрешения монитора, а не менять его;
  • Будут определяться все игровые контроллеры;
  • Увеличена производительность многопоточных игр по сравнению с ванильным винишком.

На данный момент технология поддерживает не все игры. Вот их список на данный момент:

  • Beat Saber
  • Bejeweled 2 Deluxe
  • Doki Doki Literature Club! (да! самая главная игра поддерживается!)
  • DOOM
  • DOOM II: Hell on Earth
  • DOOM VFR
  • Fallout Shelter
  • FATE
  • FINAL FANTASY VI
  • Geometry Dash
  • Google Earth VR
  • Into The Breach
  • Magic: The Gathering — Duels of the Planeswalkers 2012
  • Magic: The Gathering — Duels of the Planeswalkers 2013
  • Mount & Blade
  • Mount & Blade: With Fire & Sword
  • NieR: Automata
  • PAYDAY: The Heist
  • QUAKE
  • S.T.A.L.K.E.R.: Shadow of Chernobyl
  • Star Wars: Battlefront 2
  • Tekken 7
  • The Last Remnant
  • Tropico 4
  • Ultimate Doom
  • Warhammer® 40,000: Dawn of War® — Dark Crusade
  • Warhammer® 40,000: Dawn of War® — Soulstorm

Тем не менее, уже сейчас вы можете испытать новую технологию на одной из этих игр. Для этого нужно включить бета-версию в настройках аккаунта:

После этого Стим перезагрузится и можно будет скачать игру из списка:

Что ж, ждем дальнейшего развития этой технологии, чтобы играть во все игры.

2018   Linux   игры   обзор   технологии

RAMDisk — или когда накупил оперативки, а на SSD не хватило

Сегодня речь пойдет о так называемом RAMDisk, или использовании оперативной памяти компьютера как дискового хранилища.

Благодаря своему главному преимуществу, огромной скорости, оперативная память используется для хранения данных запущенных программ и операционной системы. Однако, остающуюся память можно использовать также для хранения файлов, и будет даже быстрее, чем на SSD.

Уже заинтригованы? Без лишних слов перейдем к созданию своего рамдиска. Работать, как обычно, будем из-под Linux, здесь рамдиск можно сделать двумя командами, для винды есть какие-то васянопрограммы, гуглите сами.

sudo mkdir -p /mnt/ramdisk
sudo mount  -t tmpfs -o size=1024m tmpfs /mnt/ramdisk

Первая команда создает папку для монтирования диска, вторая подключает туда наш рамдиск с файловой системой tmpfs и объемом 1 гигабайт (1024Мб). Для еще более удобного подключения рамдиска я написал Shell-скрипт.

#!/usr/bin/env

echo "RAMDisk creation script";
read -p "Enter maximum capacity of RAMDisk. For example, 1024m. : " rdsize;

sudo mkdir -p /mnt/ramdisk
sudo mount  -t tmpfs -o size=$rdsize tmpfs /mnt/ramdisk

Здесь вас спросят, какого объема вы хотели бы себе диск, потом это значение подставляется в команду, которую мы рассмотрели выше.

После монтирования рамдиска, лично у меня он нигде не отобразился, однако к нему можно получить доступ, перейдя к папке /mnt/ramdisk.

Для того, чтобы каждый раз вручную не включать рамдиск, можно добавить запись в /etc/fstab:

tmpfs       /mnt/ramdisk tmpfs   nodev,nosuid,noexec,nodiratime,size=1024M   0 0

В общем-то теперь мы можем пользоваться рамдиском как будто это обычный жесткий диск, например. Только имейте в виду, что все данные с него удаляются безвозвратно при каждой перезагрузке ПК.

Тем не менее, даже так есть много применений рамдиска. Вот несколько из них:

Папка Загрузки

Если вы скачиваете много файлов из Сети, а потом вас бесит, что в Загрузках полно файлов и ничего невозможно найти, назначьте эту папку на рамдиск. Файлы будут быстрее скачиваться, а тот факт, что они удаляются при перезагрузке станет мотивацией быстрее отсортировать скачанное. Также туда удобно скачивать новые эпизоды онгоингов :)

Временная папка
Иногда нужно возиться с кучей файлов, например, при сборке из исходников или чего-то еще. В рамдиске все это можно делать быстрее и не думать о том, что за собой надо будет убирать.

Виртуализация
Если у вас ОЧЕНЬ МНОГО памяти, можно разместить там диск виртуальной машины.

Приватность
Тут все очевидно, после удаления из рамдиска, файлы не оставляют совершенно никаких следов. Идеально для работы с криптоконтейнерами или гостевыми профилями.

Рабочая папка для программ
Из рамдиска хорошо работают программы, которым важна скорость реакции диска, в том числе видеоигры, но здесь, опять же, надо ОЧЕНЬ МНОГО памяти.

Напоследок проведем тест скорости для любителей цифр. Используем команду dd, чтобы записать один гигабайт нулей.

dd if=/dev/zero of=/mnt/ramdisk/testspeed.img bs=1G count=1 conv=fdatasync

Вывод команды:

1073741824 байт (1,1 GB, 1,0 GiB) скопирован, 1,10704 s, 970 MB/s

Т. е. скорость RAMDisk примерно равна 1Гб/c, что в два раза больше, чем у SSD.

Пишите в комменты свой опыт и способы применения RAMDisk.

Запуск osu! на Linux. Рабочий способ.

Полтора года назад я уже писал о том, как запустить osu! на Линуксе. С тех пор эта статья была самой популярной в блоге, судя по статистике. Однако, с тех пор времен изменилось, я набрался опыта, перешел на Debian 9 и т. д... Так что, встречайте — новый гайд по запуску здесь и сейчас!

Данный способ актуален для Ubuntu и производных дистрибутивов. Основан на статье на Github.

Итак, приступим.
В первую очередь нам необходимо загрузить винишко третьей версии. Для этого добавим официальный репозиторий:

----------------- Для Ubuntu ----------------- 
sudo dpkg --add-architecture i386   
wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key
sudo apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/
----------------- Для Linux Mint 17.x  ----------------- 
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ trusty main'
----------------- Для Linux Mint 18.x  ----------------- 
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ xenial main'
sudo apt-get update
sudo apt-get install --install-recommends winehq-stable

Устанавливаем скрипт winetricks. Он поможет с легкостью установить полезные компоненты Windows.

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
sudo mv -v winetricks /usr/local/bin

Создадим префикс и установим дополнения через winetricks, включающие в себя .NET, шрифты и прочие нужные штуки.

WINEPREFIX=~/osu-linux WINEARCH=win32 winetricks corefonts dotnet40 gdiplus d3dx9_36 cjkfonts

Префикс — это такая папка, куда будут скачиваться дополнения и, вообще, программы. Как виртуальный диск. В данном случае префиксом является ~/osu-linux. Это значит, что в Вашей домашней папке будет создана папка osu-linux. Вы можете выбрать и другую папку, если нужно. Если что-то пойдет не так, и вы захотите начать сначала, префикс лучше заменить. Папку при этом можно будет удалить.

Запустим конфигуратор:

WINEPREFIX=~/osu-linux WINEARCH=win32 winecfg

Там, на вкладке Графика, нужно проверить, чтобы стояли галочки на «Разрешить менеджеру окон декорировать окна» и «... управлять окнами Wine»

В целях уменьшения задержки будем использовать аудиодрайвер ALSA:

WINEPREFIX=~/osu-linux WINEARCH=win32 winetricks sound=alsa

Твик для еще большего уменьшения задержки аудио. Следующая команда создает файл редактора реестра и заполняет его параметрами. Копируйте целиком, а не построчно.

cat > dsound.reg << "EOF"
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Wine\DirectSound]
"HelBuflen"="512"
"SndQueueMax"="3"
EOF

Выполнить файл настроек реестра:

WINEPREFIX=~/osu-linux WINEARCH=win32 wine regedit dsound.reg

С этого момента мы отклонимся от пути, предлагаемого в англоязычной статье — у меня так и не получилось установить osu! с помощью установщика. По сему, будем использовать предустановленную. Единственная проблема, если у вас только Линукс, вы нигде ее не возьмете, поэтому, я сам установил ее на виртуальную машину и запаковал после установки. Наслаждайтесь. Если не доверяете, можете установить самостоятельно.

Распаковываем архив. Далее предполагается, что папка osu! у Вас в Домашней папке.

В принципе, уже можно посмотреть на результат:

WINEPREFIX=~/osu-linux WINEARCH=win32 wine ~/osu\!/osu\!.exe

Должно работать без лагов.

Создадим лаунчер, чтобы каждый раз не писать эту команду. В качестве иконки можно взять лого с официального сайта. Скачайте, переименуйте в icon.png и положите в папку с osu!. Далее создадим файл osu.desktop либо в /usr/share/applications, либо в ~/.local/share/applications. В последнем случае лаунчер будет доступен только для текущего пользователя. Пропишем следующее содержимое в него:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Name=osu!
GenericName=osu!
Exec=WINEPREFIX=~/osu-linux WINEARCH=win32 wine ~/osu\!/osu\!.exe
Terminal=false
Icon=/home/iriscot/osu\!/icon.png            # путь к иконке лучше сделать абсолютным
Type=Application
Categories=Game;
Comment=click the circles!
Comment[ru_RU]=играть в кружочки

В пути к иконке поставьте свое имя пользователя, а в поле Exec поменяйте путь и префикс, если вы использовали другие данные. Теперь вы сможете найти игру в списке приложений.

В общем-то все, можно наслаждаться кружочками и линуксом одновременно. Более подробные инструкции, лайфхаки с планшетом и прочее есть в статье на гитхабе, если надо, могу перевести.
Пишите в комменты о своих успехах запуска.

2018   Linux   osu   игры

Пособие по кошерной настройке Debian

cover

Прошли те времена, когда Linux был системой для законченных гиков. Теперь он вполне может быть использован наравне с Windows.
В этой статье мы рассмотрим настройку системы для комфортного использования на примере самого свежего на данный момент Debian 9.

Установка

Я не буду описывать процесс установки чистой системы. Подобного материала и так достаточно в интернетах, да и графический установщик сам всё подскажет. Так что предположим, что у вас уже установлена Debian 9.

Настройка sudo

Чтобы мы могли выполнять команды от имени root через sudo, добавим себя в sudoers:

su
*вводите Ваш пароль от root*
sudo adduser ваш_логин sudo

Видеодрайвер

Первым делом на любой системе нужно поставить драйверы на видео. Здесь все делается даже попроще, чем на Виндоусе.
Сначала нужно добавить репозиторий с проприетарными пакетами. Открываем в редакторе список источников:

sudo nano /etc/apt/sources.list

И дописываем туда строку

deb http://httpredir.debian.org/debian/ stretch main contrib non-free

Жмем Ctrl+X, y и затем Enter. Далее не буду описывать подробно работу с nano.

Не забываем обновлять базу пакетов после редактирования репозиториев.

sudo apt-get update

Теперь ставим сами дрова.
Nvidia

sudo apt install linux-headers-$(uname -r|sed 's/[^-]*-[^-]*-//') nvidia-driver

ATI

sudo apt-get install firmware-linux-nonfree libgl1-mesa-dri xserver-xorg-video-ati

Перезапускаем систему.

Браузеры

Debian поставляется с предустановленным Firefox ESR. В принципе, можно уже открыть там эту статью, но всё же он устаревший. Установим самую новую версию.

Скачиваем и распаковываем пакет.

wget -O firefox-stable.tar.bz2 ""
tar -C ~/.local/ -xvf firefox-beta.tar.bz2

Теперь интегрируем его в систему. Открываем в nano файл ~/.local/share/applications/firefox-beta.desktop и вставляем туда следующее:

[Desktop Entry]
Type=Application
Name=Firefox
Exec=/home/guyru/.local/firefox/firefox %u
X-MultipleArgs=false
Icon=firefox-esr
Categories=Network;WebBrowser;
Terminal=false
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;

Chromium ставится проще:

sudo apt-get install chromium

Скриншоты

По дефолту уже установлен gnome-screenshot, но как по мне он не очень удобен и функционален. Установим Shutter:

sudo apt-get install shutter

И назначим сочетание для захвата выделяемой области.
Параметры системы -> Клавиатура -> Комбинации клавиш -> Добавить пользовательскую комбинацию
В открывшемся окне пишем команду для захвата выделенной области. Можете поэксперементировать с параметрами, введите в консоли shutter -help и смотрите все параметры.

Чуть ниже, в разделе «Привязка клавиш» жмем на «не задано» и на клавиатуре нажимаем сочетание, которое хотим назначить. Например, Win+Shift+S, как на десяточке.
Кстати, клавиша Win в Линуксе называется Super.

Рисовач, графический планшет

С программой для рисования все предельно просто: существует годный редактор Krita. Он бесплатен, доступен для Windows и даже получше популярного SAI.

sudo apt-get install krita

С графическим планшетом чуть посложнее. Возможно, он у вас уже работает как надо. Если нет, то установим для него пакет DIGImend.
Мы будем компилировать сырцы, поэтому ставим все необходимое для этого:

sudo apt-get install -y dkms linux-headers-$(uname -r) build-essential git

Затем скачиваем исходники и компилируем:

mkdir build
cd build
git clone https://github.com/DIGImend/digimend-kernel-drivers
cd digimend-kernel-drivers
make
sudo make install
cd

Перезапускаем драйверы:

sudo modprobe -r hid-kye
sudo modprobe -r hid-uclogic
sudo modprobe -r hid-huion

Далее перезапускаем комп или переподключаем планшет.

Мультимедиа

Для прослушивания музыки есть годный плеер Clementine (пакет clementine). Он также поддерживает интеграцию со многими хранилищами и музыкальными сервисами.
А для просмотра видео вполне подойдет привычный VLC (пакет vlc).

Игрища

Да, на Линуксе даже есть игры, и не только Сапер.
Устанавливаем Steam:

dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install steam

После этого нам уже будут доступны многие игры, даже Dota 2, если вы относитесь к классу ракообразных.

Частные случаи
При запуске Sven Co-op ничего не происходит
Нужно удалить из его корневой папки следующие файлы:

  • libgcc_.1
  • libstdc++.so.6

При запуске игр на движке Half-Life вылетает окно с просьбой установить локаль
Так возьмем и установим эту локаль!

sudo nano /etc/locale.gen

Находим #en_US.UTF-8 и убираем # перед строкой. Сохраняем.
Перегенерируем локали:

sudo locale-gen

Запускаем любые игры!

На Linux можно запускать почти любые программы, работающие на Виндовс. Для этого нам понадобится винишко. В одной из статей я использовал этот метод для запуска осу.
Устанавливаем пакет wine и winetricks к нему

sudo apt-get install wine winetricks

Сам по себе винишко не имеет графического интерфейса, поэтому отдельно установим ИграйНаЛинуксе. В разделе Download выбираем Debian и скачиваем .deb пакет. Два раза кликаем по нему и устанавливаем.

Теперь пусть кто-нибудь скажет, что linux has no games!

В заключение можно сказать, что Linux можно смело использовать в качестве основной системы и нет никаких причин использовать шпионящий Windows.

2018   Linux   лайфхак   обзор

Запуск osu! на Linux

Эта статья — архивная
Если вы хотите установить осу на линукс, смотрите подробный гайд в новой статье.
____

Уже почти месяц я использую Debian 8.7. Он полностью меня устраивает, за исключением того лишь, что нельзя поиграть в осу. Однако, эта проблема решаема и сейчас мы подготовим осу к запуску на линуксе. Я буду выполнять все команды на вышеуказанной системе, но это должно работать и на других дистрибутивах. Итак...

Устанавливаем Wine и winetricks к нему

sudo apt-get install wine winetricks

Делаем префикс

WINEPREFIX=${WINEPREFIX} WINEARCH=win32 wine echo lol 1>/dev/null 2>/dev/null

Через winetricks ставим Windows-библиотеки и шрифты, чтобы все работало как надо. Все скачивается само, иногда только надо прокликивать ОК.

WINEPREFIX=${WINEPREFIX} WINEARCH=win32 winetricks corefonts dotnet20 dotnet40 gdiplus d3dx9_36

Наконец мы можем запустить osu!

wine /home/iriscot/osu/osu\!.exe

После «wine» пишем путь к osu!.exe, восклицательный знак надо экранировать бэкслэшем.

Хоть данный способ и запускает осу, но при открытии списка карт начинаются лаги, по крайней мере у меня, а в консоли лезут ошибки от драйвера аудио. Если смогу пофиксить это — обновлю пост.

2017   Linux   osu   игры   хак