пятница, 30 октября 2009 г.

Linux, конвертирование из ape в ogg

Скачал музыку, она оказалась в ape-формате. Более того, одним файлом с cue в комплекте. Ужас.
Итак, надо разбить на отдельные файлы и сконвертировать... ну, например, в ogg

Для счастья нам понадобятся:
mac, lame, mp3splt, oggenc (входит в vorbis-tools), cuetools, shntool
Это я до кучи всё что можно написал, хотя тот же lame как бы не нужен тут, я думаю =)

Самое интересное mac. В репозиториях дебиана я такой пакет не нашёл. Однако, нашёл ссылку на сторонний:

wget http://members.iinet.net.au/~aidanjm/mac-3.99-u4_b3-1_i386.deb
sudo dpkg -i mac-3.99-u4_b3-1_i386.deb

Ставим и радуемся =)

Далее надо:

а) сконвертировать ape во flac, разбитый на отдельные файлы. Это можно сделать командой:

cuebreakpoints *.cue | shnsplit -a track -o flac *.ape

б) сконвертировать *.flac в *.ogg, что удобно было бы сделать через простенький скрипт:

#!/bin/sh
find -iname '*.flac' | while read fname; do
oggenc -b 256 -o $fname.ogg $fname;
done

...где "-b 256" это битрейт; Ну, тут смотрите man и сами разбирайтесь что к чему =)

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

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Linux, поиск и переименование файлов

Вообще, вот ответ, который мне в своё время подсказали. Но код недавно снова понадобился для другого скрипта. Так что дабы не забыть и 100 раз не искать по инету - напишу ссылку сюда. Ну и, до кучи, на "правах рекламы", сам код:

find -iname '*.jpg' | while read i; do mv "$i" "$(dirname "$i")/cover.jpg"; done

Суть проста: находит все файлы '*.jpg' в каталоге и даже его подкаталогах (если не ошибаюсь) и переименовывает их в 'cover.jpg'.
(Только вот где папка поиска? - она же должна быть сразу после слова find? Надо разобраться)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Авторские права на код принадлежат diesel.

воскресенье, 25 октября 2009 г.

Linux, dictd-словари для Gnome

Я уже писал, как добавить En-Ru словарь в Гнома. Делалось это очень просто, через aptitude.

Однако, можно добавлять и руками, главное найти в интернете подходящие словари. Благодаря /dev/random с ЛинуксФорума я нашёл это рыбное место ^_^

Итак, словари можно скачать здесь (каждый словарь - 2 файла):
http://dict.xdsl.by/dicts/

Дальше нужно скопировать их в папку:
/usr/share/dictd/

Наконец, отредактировать файл:
/var/lib/dictd/db.list

Добавив туда примерно такой кусок кода:

database ozhegov
{
data /usr/share/dictd/ozhegov.dict.dz
index /usr/share/dictd/ozhegov.index
}

Всё, готово, можно перезапускать /etc/init.d/dictd

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

За ссылку на список словарей спасибо /dev/random.

воскресенье, 23 августа 2009 г.

Linux, Восстанавливаем загрузчик

Итак, допустим вы поставили Windows. Она перезаписала вам ваш линуксовый загрузчик (GRUB\LILO) и Линукс не грузится. Что делать?

Можно, конечно, переустановить Линукс - хороший путь для новичков. Понятный :-D
А можно просто переустановить загрузчик, что гораздо правильнее.

(замечу, что самый правильный путь - вообще не давать Windows устанавливать свой загрузчик; как это сделать подскажет Google)

На самом деле всё просто. Достаточно иметь LiveCD любого Linux'а и дорваться в нём до консоли из-под рута. После чего сделать следующие шаги:

а) Проверить где там живёт Линукс командой:
df -h

предположим, что он монтируется в /media/linux с раздела /dev/sda5

* если нигде не живёт - примонитровать руками :)

б) Примонтировать в каталог с Линуксом ваши устройства:
mount -o bind /dev/ /media/linux/dev/

в) Сделать chroot на эту папку:
chroot /media/linux/

г) Собственно, запустить процедуру восстановления

Для GRUB'a:
grub-install /dev/hda
(возможно sda?)

Для LILO (а вот это не знаю - вычитал в инете, не пробовал сам):
/sbin/lilo

Готово =)

Всякие вариации этой процедуры можно прочесть тут.

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

суббота, 22 августа 2009 г.

Linux, Настройка DirectX под wine

Скажу сразу - у меня так и не заработало :(
Как сказал yaleks с linuxforum: "D3D нормально работает только с драйверами nVidia". Не знаю - прав он или нет, но у меня на встроенной Intel GMA 950 явные проблемы с Direct3D.

Хочу похвалиться - моё руководство, наверное, одно из полных в интернете =D
Ну, это я для виду, конечно. На самом деле тут фактически текст любого стандартного руководства установки DirectX в wine, но с парой моих замечаний.
Руководств в интернете много, в том числе и на blogspot.com, так что не буду цитировать что откуда взял - надеюсь они GNU GPL ^_^

Итак, поехали.

Способ 1, Простой
Подсказал yaleks с linuxforum. Заключается он в общем-то в двух командах:

wget http://www.kegel.com/wine/winetricks
sh winetricks d3dx9

Первая - скачивает на ваш компьютер свежую версию файла winetricks. Вторая запускает его с параметром установки DirectX. Можно запустить без параметра - тогда вам будет список приложений на выбор. Кроме d3dx9 советую ещё выбрать Gecko.

* для работы скрипта нужны такие утилиты как unzip и ещё парочка - при запуске скрипта он вам напишет об отсутствующих

Вот и всё - теперь осталось подождать, пока скрипт скачает свежий DirectX и установит его. А дальше проверяйте на работоспособность в играх :)

Способ 2, Ручками, ручками, ручками...
Ну тут всё понятно. Когда автоматика подводит - переходим в ручной режим управления :)
Все команды выполняются от имени пользователя, который будет работать с wine. Никаких sudo и прочих консолей из под root'a.

а) Для надёжности часто рекомендуют удалить все ваши текущие настройки wine. Что ж - давайте сделаем это:
rm -dr ~/.wine

б) Запустите из консоли WineConfigurator:
winecfg
Закройте его :)

* если у вас проблемы со шрифтами не забудьте скопировать их из "/windows/fonts" вашей Windows в папку "~/.wine/drive_c/windows/fonts", а лучше в "/usr/share/wine/fonts"

в) Заходим в "~/.wine/drive_c/windows/system32"
Туда, во-первых, копируем из папки Windows два файла:
mscoree.dll и streamci.dll
Во-вторых, удаляем оттуда такие файлы:
d3d8.dll d3d9.dll ddraw.dll dsound.dll dsound.vxd quartz.dll dxdiagn.dll

г) Снова запустите из консоли WineConfigurator:
winecfg
Откройте вкладку "Библиотеки" (Librares). В списке найдите (впишите) файл d3d8 и нажмите "Добавить". После чего выделите файл в списке и нажмите редактировать. В открывшемся окне выберите "Сторонняя (Windows)" (native).

После чего вы должны проделать это с этими библиотеками:
d3d9, d3dim, d3drm, d3dx8, d3dxof, dciman32, ddrawex, devenum, dinput, dinput8, dmband, dmcompos, dmime, dmloader, dmscript, dmstyle, dmsynth, dmusic, dplay, dplayx, dpnaddr, dpnet, dpnhpast, dswave, dxdiagn, mscoree, quartz и streamci

Страшно? :)
Тогда можно попробовать обойтись без этой ручной работы. Закройте конфигуратор. Откройте файл:
~/.wine/user.reg
И в конец файла добавьте такой кусок:

[Software\\Wine\\DllOverrides] 1196330736
"d3d8"="native"
"d3d9"="native"
"d3dim"="native"
"d3dx8"="native"
"d3dxof"="native"
"dciman32"="native"
"ddrawex"="native"
"devenum"="native"
"dinput"="native"
"dinput8"="native"
"dmband"="native"
"dmcompos"="native"
"dmime"="native"
"dmloader"="native"
"dmscript"="native"
"dmstyle"="native"
"dmsynth"="native"
"dmusic"="native"
"dplay"="native"
"dplayx"="native"
"dpnaddr"="native"
"dpnet"="native"
"dpnhpast"="native"
"dswave"="native"
"dxdiagn"="native"
"mscoree"="native"
"quartz"="native"
"streamci"="native"

д) Снова запустите из консоли WineConfigurator (если добавляли список через файл user.reg):
winecfg

Запустите установщик DirectX. Внимание! Он должен лишь распаковать файлы DirectX в нужную папку для последующей установки. Т.е. файл "directx_***200*_redist.exe".

Теперь в конфигураторе wine на вкладке "Приложения" выберите файл DXSETUP.exe из папки, в которую вы распаковали. И укажите внизу в качестве системы Windows2000.

е) Далее, собственно, надо запустить установщик DirectX из консоли:
wine DXSETUP.exe

Но! Тут у многих возникает ошибка - вы нажимаете Установить, Далее и установщик пишет что-то типа "Не могу найти файл mscorees.dll, переустановите framework". Файла такого, к слову, в Windows не существует вовсе.
Решается это проблема запуском файла DXSETUP.exe из консоли вот таким образом:
WINEDLLOVERRIDES=mscoree="" wine dxsetup.exe

Так что если у кого появилась ошибка - переустановите ещё раз.

ж) Снова запустите из консоли WineConfigurator:
winecfg

Снова перейдите на вкладку библиотеки и выставьте вот этим пяти файлам статус "Встроенная (Wine)" (builtin):
d3d8, d3d9, ddrawex, dinput, dinput8

з) Собственно всё. Если всё встало правильно - у вас должен появиться файл
~/.wine/drive_c/windows/system32/dxdiag.exe
Запустите его из консоли. И попробуйте пройти тесты на DirectDraw и Direct3D.

Ещё диагностика DirectX у многих пишет нет файла "ddrawex.dll". Скачать его можно отсюда: www.dlldump.com
Поместить нужно сюда:
~/.wine/drive_c/windows/system32/

Разные советы:
а) Запускать игры лучше всего с "диска С:". Т.е. из вашей папки "~/.wine/drive_c".
Поэтому если вы хотите запустить уже установленную игру на ваш NTFS-диск, надо примонтировать каталог игр на NTFS-диске в папку wine, такой командой:
mount -o bind /games/on/ntfs/disk ~/.wine/drive_c/Games

б) DaemonTools'a в Линуксе наверное нет (без понятия), но если вам надо виртуальный CD - зайдите в winecfg, там в раздел Дисков и создайте новый диск. В расширенных свойствах укажите тип CD-ROM и выберите любую папку, например "/media/virtual-cd". После чего останется примонтировать в неё ваш iso-образ с игрой:
mount -t iso9660 /your/cd/image.iso /media/virtual-cd -o loop


Если что-то так и не получилось или что-то не работает - не пишите мне в комментариях. Обратитесь на linuxforum.ru - вам там наверняка помогут ;)

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

За совет по быстрой установке спасибо yaleks.

пятница, 14 августа 2009 г.

Linux, Настройка словаря в Gnome

Так, чтобы не забыть.

Чтобы настроить в Гноме словарь, надо поставить "dictd", а потом "mueller7-dict" (en->ru).

После чего создать словарь, в котором в качестве адреса указать 127.0.0.1 (порт можно любой, наверное).

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.

Linux, Добавляем индикатор-флажок раскладки клавиатуры в Gnome

Как добавить индикатор раскладки в Gnome? Очень просто!

Сам индикатор путём: правой кнопки на панели задач, там "Добавить на панель", выбрать "Индикатор раскладки".

А вот чтобы было флажками - надо в папку "~/.icons/flags" положить картинки: ru.svg & us.svg (ну или какие у вас там раскладки).

Картинки, к примеру, можно взять в Википедии:
Flag_of_Russia.svg
Flag_of_the_United_States.svg

Наконец, выполнить команду:
gconftool-2 --type bool --set \
/desktop/gnome/peripherals/keyboard/indicator/showFlags true

Решение нашёл тут.

Если вам помогла эта статья - оставьте комментарий! Они доступны даже не зарегистрированным пользователям.