Записи с тэгом ‘HOWTO’

Играем в приставочные игры под Linux

Лет десять назад (а может и больше), я с друзьями почти каждый день ходил к одному нашему однокласснику, у которого была игровая приставка Super Nintendo. Мы проводили часы пытаясь освоить многочисленные варианты combo-ударов в лучшем файтинге всех времён (по версии Cornelius Magazine)Killer Instinct.

Оказывается, ощутить “инстинкт убийцы” можно и без помощи игровой консоли. Для этого нужно воспользоваться одной из приведённых ниже команд:

  • sudo ps -eo pid h | xargs kill -kill (не рекомендуется)
  • sudo aptitude install snes9x-x (рекомендуется)

Я воспользовался вторым вариантом и получил в своё распоряжение эмулятор игровой консоли Super Nintendo. Осталось только найти образ нужной игрушки (ROM). Для этого можно погуглить словом “rom”+название_игры. В случае с Killer Instinct нужный образ нашёлся очень быстро. Это оказался файл с расширением .smc размером ~4Mb.

Запускается игра так:

snes9x /path/to/rom

Gamepad

Чтобы полностью погрузится в приставочную атмосферу и я решил воспользовался USB Gamepad’ом фирмы Genius. Чтобы заставить его работать, я установил следущие пакеты:

sudo aptitude install joystick xserver-xorg-input-joystick

Теперь при подключении геймпада должно появиться устройство /dev/input/js0

Тут у меня возникла проблема: работали только кнопки, перемещение не работало. Поэтому я сделал следующее:

jscal /dev/input/js0

Эта программа попросила переместить джойстик в определённые положения по осям X/Y и таким образом откалибровала его (где при этом сохраняются настройки, я не понял). После этого перемещение заработало.

Чтобы играть с джойстиком, запускать игру нужно так:

snes9x -joydev1 /dev/input/js0 /path/to/rom

Второй джойстик можно подцепить через опцию -joydev2


Скриншот Killer Instinct

А вот и скриншот

Темы оформления GTK

На днях решил в очередной раз поменять тему оформления GTK на своём рабочем столе. Для этого отправился на www.gnome-look.org и www.xfce-look.org. Но там не нашёл ничего подходящего и решил попробовать сваять что-нибудь самостоятельно, используя одну из готовых тем. Ну и заодно разобраться более подробно, как вообще работает механизм тем оформления GTK, о чём сейчас вкратце расскажу.

В файле gtkrc (~/.themes/yourtheme/gtk-2.0/gtkrc) определяются стили, которые будут использоваться для отображения того или иного элемента. Описание стиля выглядит так:

style "name-of-style" [= "name-of-parent-style] {
 PROPERTY1 = VAL1
    PROPERTY2 = VAL2
    engine "name-of-engine" {
     ENGINE_PROPERTY1 = VAL3
     ENGINE_PROPERTY2 = VAL4
 }
}

Каждый стиль имеет имя ("name-of-style") и набор свойств (PROPERTY1,PROPERTY2). Свойства включают в себя определения цветов (напр. bg[SELECTED] = "#a3b8cc") и параметры элементов интерфеса (напр. GtkScrollbar::min_slider_length = 30). Также нужно, обратить внимание на свойства xthickness и ythickness, которые, если я правильно понимаю, аналогичны свойству padding в HTML.

Стиль может быть наследовать свойства другого стиля ("name-of-parent-style"). Кроме того, можно задать, какой движок GTK (см. ниже) нужно использован для этого стиля (engine "name-of-engine") и определить параметры этого движка (ENGINE_PROPERTY1, ENGINE_PROPERTY2)

Как правило, в сначала описывается стиль "theme-default", в котором определяются все основные параметры и движок, а оставшиеся стили наследуются от него.

Также необходимо указать к какому элементу какой стиль надо применить:

...
class "GtkWidget"      style "theme-default"
class "GtkButton"      style "theme-button"
class "GtkScale"       style "theme-range"
...

Движок темы (engine) определяет внешнид вид элементов интерфейса (widget), таких как кнопки, скроллбары, тулбары и т.д. Например в Ubuntu по умолчанию используется движок Ubuntulooks, а раньше использовался Clearlooks. Я использую движок под названием Murrine. Для этого движка существует утилита-конфигуратор под названием (угадайте с одного раза) Murrine Configurator. Это программка позволяет менять параметры движка в уже установленных темах (основанных на Murrine).

При создании темы очень полезна будет программка The Widget Factory – она представляет из себя окно, в котором собраны все (или почти все) GTK виджеты и позволяет менять тему офомление только внутри этого окна (то есть не затрагивая остальные программы).

Исчерпывающую информацию по созданию тем GTK можно найти здесь.

Напоследок маленькая плюшка для тех, кто использует Xfce. Добавьте в файл gtkrc следующий текст:

style "xfdesktop-icon-view" {
    XfdesktopIconView::label-alpha = 25

    base[NORMAL] = "#000000"
    base[SELECTED] = "#ffffff"
    base[ACTIVE] = "#ffffff"

    fg[NORMAL] = "#ffffff"
    fg[SELECTED] = "#ffffff"
    fg[ACTIVE] = "#ffffff"
}
widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"

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

← Обратно к настоящему