Hi. The number of packages in Debian is growing nearly daily and the sheer amount of available choices has become a pain long time ago. However, this has been even more of a problem for people around the accessibility area then for anyone else since we are usually limited to just a special subset of packages. For instance, in the past, all X11 packages were basically unusable for blind users. These days, this has improved a bit with the efforts around the GTK2 toolkit, but it still remains largely valid. A solution for this is around the corner though, and I wanted to make you aware of it, so that you can give it a spin and maybe even benefit From it already. It is called debtags, simply "apt-get install debtags". The most useful tags are interface::commandline, interface::text-mode and interface::x11. There are other things like uitoolkit::gtk, uitoolkit::qt or uitoolkit::ncurses too. I am just giving a simple example, debtags is documented and you should rather dive into it for yourself if you find this thing helpful. Say we want to find tools for working with audio but we only want to see those which somehow support a text-mode interface of some sorts: $ debtags grep 'works-with::audio && ( interface::commandline || interface::text-mode || uitoolkit::ncurses )' mp32ogg: application, file-formats, format::mp3, format::ogg, format::vorbis, interface::commandline, made-of::lang-perl, use::converting, works-with::audio toolame: application, file-formats, format::mp3, interface::commandline, use::converting, works-with::audio mpeg3-utils: application, file-formats, format::mp3, interface::commandline, use::converting, works-with::audio, works-with::video vorbis-tools: application, file-formats, format::ogg, interface::commandline, use::converting, use::playing, works-with::audio sndfile-programs: application, file-formats, format::wav, interface::commandline, sound::player, use::converting, works-with::audio normalize-audio: application, file-formats, format::wav, interface::commandline, use::converting, works-with::audio flac, sox: application, file-formats, interface::commandline, use::converting, works-with::audio enscribe: application, file-formats, interface::commandline, use::converting, works-with::audio, works-with::rasterimage ices2: application, filetransfer::http, format::mp3, format::ogg, format::vorbis, format::wav, interface::commandline, interface::shell, made-of::lang-c, net, netcomm, protocol::http, role::sw-client, sound::compression, sound::recorder, use::transmission, works-with::audio, works-with::video pyxmms-remote: application, format::mp3, format::ogg, interface::commandline, made-of::lang-python, role::sw-client, sound::player, suite::xmms, works-with::audio yaret: cd, hardware::storage, hardware::storage-cd, interface::commandline, made-of::lang-perl, works-with::audio vlc: culture::turkish, format::mp3, format::ogg, interface::commandline, protocol::ipv6, role::aux-shlib, role::sw-application, sound::player, uitoolkit::ncurses, use::playing, works-with::audio, works-with::video icecast2: filetransfer::http, format::html, format::mp3, format::ogg, interface::commandline, interface::daemon, interface::web, made-of::lang-c, network::service, protocol::http, role::sw-server, sound::mixer, use::transmission, web::application, web::server, works-with::audio somaplayer: format::iso9660, format::mp3, format::ogg, format::wav, interface::commandline, interface::x11, role::sw-client, role::sw-server, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application cdda2wav: format::iso9660, hardware::storage, hardware::storage-cd, interface::commandline, works-with::audio jack: format::mp3, format::ogg, format::vorbis, hardware::storage, hardware::storage-cd, interface::commandline, made-of::lang-python, role::aux-shlib, works-with::audio fapg: format::mp3, format::ogg, format::wav, interface::commandline, made-of::lang-c, use::organizing, works-with::audio cplay: format::mp3, format::ogg, format::wav, interface::text-mode, made-of::lang-python, sound::player, works-with::audio mp3c: format::mp3, format::ogg, hardware::storage, hardware::storage-cd, interface::commandline, interface::text-mode, uitoolkit::ncurses, works-with::audio randomplay: format::mp3, format::ogg, interface::commandline, made-of::lang-perl, sound::player, use::playing, works-with::audio streamripper: format::mp3, format::ogg, interface::commandline, role::sw-client, sound::recorder, works-with::audio madplay, mpg321: format::mp3, interface::commandline, sound::player, use::playing, works-with::audio checkmp3, mp3check: format::mp3, interface::commandline, use::checking, works-with::audio id3tool, id3v2: format::mp3, interface::commandline, use::editing, use::organizing, works-with::audio id3, id3ren, mp3rename: format::mp3, interface::commandline, use::organizing, works-with::audio mp3blaster: format::mp3, interface::text-mode, sound::mixer, sound::player, uitoolkit::ncurses, works-with::audio mp3info: format::mp3, interface::text-mode, uitoolkit::ncurses, use::checking, works-with::audio id3ed: format::mp3, interface::text-mode, uitoolkit::ncurses, use::organizing, works-with::audio vorbisgain: format::ogg, interface::commandline, works-with::audio dcd: hardware::storage, hardware::storage-cd, implemented-in::c++, interface::commandline, sound::player, use::playing, works-with::audio cdcd: hardware::storage, hardware::storage-cd, interface::commandline, interface::text-mode, sound::player, uitoolkit::ncurses, use::playing, works-with::audio sound-recorder: hardware::storage, hardware::storage-cd, interface::commandline, sound::recorder, works-with::audio xmcd: hardware::storage, hardware::storage-cd, interface::text-mode, interface::x11, sound::player, uitoolkit::motif, uitoolkit::ncurses, use::playing, works-with::audio, x11::application workbone: hardware::storage, hardware::storage-cd, interface::text-mode, sound::player, uitoolkit::ncurses, use::playing, works-with::audio mcdp: hardware::storage, hardware::storage-cd, interface::text-mode, sound::player, use::playing, works-with::audio jackd: interface::commandline, interface::daemon, role::sw-client, role::sw-server, sound::player, use::playing, works-with::audio mikmod: interface::commandline, interface::text-mode, made-of::lang-c, sound::player, uitoolkit::ncurses, works-with::audio ffmpeg: interface::commandline, interface::x11, role::aux-shlib, role::sw-server, uitoolkit::sdl, use::playing, works-with::audio, works-with::video, x11::application timidity: interface::commandline, interface::x11, role::sw-application, sound::midi, sound::player, uitoolkit::athena, uitoolkit::ncurses, use::playing, works-with::audio, x11::application icecream: interface::commandline, made-of::lang-perl, role::sw-client, use::downloading, works-with::audio grandfatherclock: interface::commandline, made-of::lang-perl, use::timekeeping, works-with::audio eyed3: interface::commandline, made-of::lang-python, use::organizing, works-with::audio bplay: interface::commandline, sound::player, sound::recorder, works-with::audio music123: interface::commandline, sound::player, use::playing, works-with::audio xmms-shell: interface::commandline, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio mpegdemux: interface::commandline, works-with::audio, works-with::video playmidi: interface::text-mode, interface::x11, made-of::lang-c, sound::midi, sound::player, uitoolkit::athena, uitoolkit::ncurses, works-with::audio, x11::application xine-ui: interface::text-mode, interface::x11, role::sw-application, role::sw-client, sound::player, uitoolkit::ncurses, use::playing, works-with::audio, works-with::video, x11::application zinf-extras: interface::text-mode, role::aux-data, sound::player, uitoolkit::ncurses, works-with::audio ncmpc: interface::text-mode, role::sw-client, sound::player, uitoolkit::ncurses, use::playing, works-with::audio gom: interface::text-mode, sound::mixer, uitoolkit::ncurses, works-with::audio moc: interface::text-mode, sound::player, uitoolkit::ncurses, use::playing, works-with::audio timidity-interfaces-extra: interface::x11, role::aux-shlib, role::sw-application, sound::midi, sound::player, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::tk, use::playing, works-with::audio As you can see, queries can be arbitrarily complex, and the example results are actually quite useful. Filtering on UI toolkit is something I wanted to be able to do within Debian since years! Thanks to all the guys having worked on debtags! It definitely needs some work still, for instance, I am missing a interface::emacs or uitoolkit::emacs tag which could be used for packages like ilisp, ecasound-el or supercollider (just to name three examples). I also noticed there is only one uitoolkit::gtk and it seems to be used by GTK1 applications as well. For the sake of being helpful to people relying on accessibility tech it`d probably be better to have a uitoolkit::gtk1 and uitoolkit::gtk2 tag or even better, invent a completely new tag for packages which have been tested and work mostly with AT-SPI clients like gnopernicus or gok. If you find other things you'd consider useful, maybe we can start a small thread here and try to reach a conclusion which we then could forward to the debtags maintainers? Anyway, have fun with this wonderful new tool! -- CYa, Mario
Attachment:
pgpMrTruBLH9t.pgp
Description: PGP signature