Разделы сайта

Для посетителей

Голосование

Нужен форум?

Да wink
Нет winked

Облако тегов

Поиск по сайту

Новости

Статьи

Софт

Cdemu 1.0.0 на Gentoo (эмулятор дисков аля Daemon Tools)  

  • Написал: driver 25 мая 2008
sb0y@sb0y ~ $ sudo emerge --search cdemu

Searching...

[ Results for search key : cdemu ]

[ Applications found : 1 ]

* app-cdr/cdemu

Latest version available: 0.8

Latest version installed: [ Not Installed ]

Size of files: 30 kB

Homepage: http://cdemu.org/

Description: mount bin/cue cd images

License: GPL-2


В этой статье, я пошагово расскажу как заставить работать Cdemu не прибегая к помощи дистрибутива.

Все манипуляции проводились на свежеустановленной Gentoo 2007 со стабильной архитектурой amd64, использовалась версия Gnome - 2.22.1.

Программы будем скачивать через SVN, поэтому нам конечно понадобится subversion:

# emerge subversion


Собственно качаем необходимое:

$ mkdir cdemu

$ cd cdemu

$ svn co https://cdemu.svn.sourceforge.net/svnroot/cdemu/trunk

$ cd trunk



Первое что стоит собрать, это конечно модуль ядра. Куда без него?

$ cd vhba-module

$ make

# make install

# modprobe vhba


Не забываем ставить модуль на загрузку:

# echo "vhba" > > /etc/modules.autoload.d/kernel-2.6


Ещё один тонкий момент — по скольку наш cdemu будет использовать шину системной коммуникации dbus, нужно настроить права доступа udev к модулю, чтобы простые смертные могли пользоваться им:

# echo 'KERNEL=="vhba_ctl", NAME="%k", MODE="0660", OWNER="root", GROUP="plugdev"' > > /etc/udev/rules.d/10-local-rules.rules


У многих компонентов Cdemu есть в зависимостях библиотека libmirrage. Которой естественно нет в портах.

$ cd ../libmirage

Для дальнейшей сборки нам понадобится программа gtkdocize, которая входит в порт gtk-doc и libsndfile, который входит в одноимённый порт:

# emerge gtk-doc libsndfile

$ ./autogen.sh

$ ./configure --prefix=/usr

$ make

# make install


Следующий уровень :) Image Analyzer

$ cd ../image-analyzer


Теперь нам понадобится программа gtkextrta, которую можно найти в порте gtk+extra.

# emerge gtk+extra

$ ./autogen.sh

$ ./configure --prefix=/usr

$ make

# make install

Мы подошли очень близко к финалу — собираем демон Cdemu.

$ cd ../cdemu-daemon

В очередной раз встаёт необходимость дёргать портежи. На этот раз нас нужна программа sysfsutils

# emerge sysfsutils

$ ./autogen.sh

$ ./configure --prefix=/usr --with-dbus-config-dir=/etc/dbus-1/system.d --sysconfdir=/etc

$ make

# make install


Для удобства написал простейший демон, который поднимает демон Cdemu «по-гентовому»:

# cat /etc/init.d/cdemud




#!/sbin/runscript

start() {

ebegin "Starting cdemu daemon"

start-stop-daemon --start --quiet --exec /usr/bin/cdemud &

eend $?

}

stop() {

ebegin "Stopping cdemu daemon"

start-stop-daemon --stop --exec --quiet /usr/bin/cdemud

eend $?

}


highlight: cpp


Сделаем демон запускаемым и поставим его на загрузку:

# chmod +x /etc/init.d/cdemud

# rc-update add cdemud default


Теперь соберём cdemu-client, который будет общаться с демоном, отдавая ему ценные указания.

$ cd ../cdemu-client

$ ./autogen.sh

$ ./configure --prefix=/usr

$ make

# make install


Последняя программа опциональна, так как использовать её могут только счастливые пользователи Gnome (?). Речь идёт о графическом интерфейсе для Cdemu, конкретней говоря аплете для среды Gnome.

$ cd ../gcdemu

$ ./autogen.sh

$ make

# make install


Перезагружаемся:

# reboot




Использовние:

$ cdemu 0 ~/HITMAN47.mds


Через gcdemu:

Добавьте на вашу "приборную доску" новый апплет gcdemu и увидите такой значёк:



Кликаем на него, выбираем виртуальный привод, получаем за это пряник в виде диолога типа "Browse File System", где и находим образ, который хотим монтировать.



В принципе по этой статье можно вполне реально писать ebuild и отправлять его гентушникам. Если будем время и до меня этого никто не сделает, в будущем — так и сделаю.

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.