Ubuntu кунг-фу - http://www.ubuntukungfu.org/
Ubuntu tips - http://www.ubuntutips.net/
101 Linux Hacks book - http://www.thegeekstuff.com/2009/02/linux-101-hacks-download-free-ebook/
Thursday, February 12, 2009
Wednesday, February 4, 2009
Как послать баг-репорт во freedesktop.org
Мне захотелось добавить поддержку своего плеера в hal, чтобы он опознавался как плеер, а не как простое usb-хранилище. Для этого надо исправить файл 10-usb-music-players.fdi в /usr/share/hal/fdi/information/10freedesktop/.
Вот, например, поддержка плееров Samsung:
Чтобы это изменение попало в Linux community, надо послать патч разработчикам модуля hal-info из freedesktop.org. Разработчики freedesktop.org ценят своё время и принимают только патчи, присланные по отношению к их текущему git-репозиторию.
Устанавливаем git (apt-get install git) и cинхронизируемся с анонимным репозиторием -- моя локальная копия будет в ~/src/freedesktop.org.
Git скачивает копию модуля hal-info. Вносим изменения в файл src/freedesktop.org/hal-info/fdi/information/10freedesktop/10-usb-music-players.fdi, просим git сделать патч.
Вот этот патч уже можно послать разработчикам.
Идём на bugs.freedesktop.org, регистриуемся в багзилле и создаем новый баг. В новом баге все поля заполняются очевидно.
В описании бага пишем, что мы просим разработчиков включить в базу данных hal новый музыкальный usb плеер. Чтобы доказать, что мы всё правильно внесли в fdi-файл, копируем в баг-репорт строчки вывода lshal и lsusb при подключенном плеере.
Тут копируем весь блок информации про плеер.
И наконец, загружаем наш патч. Поскольку патч в формате git, разработчикам очень просто интегрировать его в репозиторий.
Точно так же можно написать и послать патч к любому другому компоненту freedesktop.org.
Вот, например, поддержка плееров Samsung:
<!-- Samsung YP-MT6V, YP-F1,YP-U1, YP-U2Z, YP-U4 -->
<match key="@storage.originating_device:usb.product_id" int_outof="0x5026;0x502b;0x503b;0x5050;0x5092">
<addset key="portable_audio_player.access_method.protocols" type="strlist">storage</addset>
<append key="portable_audio_player.output_formats" type="strlist">audio/x-ms-wma</append>
<append key="portable_audio_player.output_formats" type="strlist">application/ogg</append>
<append key="portable_audio_player.output_formats" type="strlist">audio/x-wav</append>
<append key="portable_audio_player.input_formats" type="strlist">audio/x-wav</append>
</match>
Чтобы это изменение попало в Linux community, надо послать патч разработчикам модуля hal-info из freedesktop.org. Разработчики freedesktop.org ценят своё время и принимают только патчи, присланные по отношению к их текущему git-репозиторию.
Устанавливаем git (apt-get install git) и cинхронизируемся с анонимным репозиторием -- моя локальная копия будет в ~/src/freedesktop.org.
$ cd src/freedesktop.org
$ git clone git://anongit.freedesktop.org/hal-info
Git скачивает копию модуля hal-info. Вносим изменения в файл src/freedesktop.org/hal-info/fdi/information/10freedesktop/10-usb-music-players.fdi, просим git сделать патч.
$ git diff ./10-usb-music-players.fdi
diff --git a/fdi/information/10freedesktop/10-usb-music-players.fdi b/fdi/information/10freedesktop/10-usb-music-players.fdi
index 29f8234..a11aa87 100644
--- a/fdi/information/10freedesktop/10-usb-music-players.fdi
+++ b/fdi/information/10freedesktop/10-usb-music-players.fdi
@@ -228,8 +228,8 @@
<append key="portable_audio_player.output_formats" type="strlist">application/ogg</append>
<append key="portable_audio_player.input_formats" type="strlist">audio/mpeg</append>
</match>
- <!-- Samsung YP-MT6V, YP-F1,YP-U1, YP-U2Z -->
- <match key="@storage.originating_device:usb.product_id" int_outof="0x5026;0x502b;0x503b;0x5050">
+ <!-- Samsung YP-MT6V, YP-F1,YP-U1, YP-U2Z, YP-U4 -->
+ <match key="@storage.originating_device:usb.product_id" int_outof="0x5026;0x502b;0x503b;0x5050;0x5092">
<addset key="portable_audio_player.access_method.protocols" type="strlist">storage</addset>
<append key="portable_audio_player.output_formats" type="strlist">audio/x-ms-wma</append>
<append key="portable_audio_player.output_formats" type="strlist">application/ogg</append>
Вот этот патч уже можно послать разработчикам.
Идём на bugs.freedesktop.org, регистриуемся в багзилле и создаем новый баг. В новом баге все поля заполняются очевидно.
Заголовок: Add new usb music player Samsung U4 to the hal db,
product: hal,
component: hal-info,
Hardware: other
OS verson: all (потому что freedesktop кросс-платформенный).
Priority: lowest
Severity:trivial
В описании бага пишем, что мы просим разработчиков включить в базу данных hal новый музыкальный usb плеер. Чтобы доказать, что мы всё правильно внесли в fdi-файл, копируем в баг-репорт строчки вывода lshal и lsusb при подключенном плеере.
$ lsusb | grep Samsung
Bus 002 Device 004: ID 04e8:5092 Samsung Electronics Co., Ltd
$ lshal | less
Тут копируем весь блок информации про плеер.
И наконец, загружаем наш патч. Поскольку патч в формате git, разработчикам очень просто интегрировать его в репозиторий.
Точно так же можно написать и послать патч к любому другому компоненту freedesktop.org.
Subscribe to:
Posts (Atom)