wabaroK - amaroK web interface

Amarok 1.x Scripts

Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

2
Become a Fan
5.0

Description:
wabaroK - amaroK script
Version 0.1.3 04/12/2005

Description:
This script offer a web interface to browse amaroK collection.
Features:
- list artists/albums/songs
- list albums of an artist
- list songs of an album (with cover and length)
- stream mp3 files over network
- does NOT need apache nor MySql
- GUI for configuration
- change look via css

Install:
To install, follow the standard amaroK scripts procedure.
See details instuctions in documentation (on the web)

The configuration is done via many kdialog.
You can change (default) :
- Listening port: the port of the webserver (1234)
- Number of columns: for lists display (3)
- cover width/height: for single album display (200 pixels)
- Theme: css file name (default)

Similar scripts:
http://kde-apps.org/content/show.php?content=25398 (not amaroK script)
http://kde-apps.org/content/show.php?content=28867 (static html)

Author: JJL - BuggerOne (at) gmail (dot) com
Web: http://kubuntu.free.fr/wabarok/
License: GNU GPL
Last changelog:

0051204 v0.1.3 : fix Content-Type for ogg files
read Collection path from ~/[kdeprefix]/share/config/amarokrc
fix security issue : can read any file on the system
now can only read files in collection folders
(thanks to ntome for reporting)
20051130 v0.1.2 : adapt requests to MySQL syntax (thanks to Dave Cohen)
20051128 v0.1.1 : possible bug in dcop treatment
20051127 v0.1 : first public release


Ratings & Comments

30 Comments

pernambuco

Traceback (most recent call last): File "/home/pepe/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 23, in <module> class HTTPHandler (SimpleHTTPRequestHandler): File "/home/pepe/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 28, in HTTPHandler dico_artists = dcop.getArtists() File "/home/pepe/.kde/share/apps/amarok/scripts/wabaroK/amaroKdcop.py", line 18, in getArtists return dict(self.execSql("select id||'##'||name from artist")) ValueError: dictionary update sequence element #0 has length 1; 2 is required

cruiseoveride

Traceback (most recent call last): File "/home/vikky/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 23, in ? class HTTPHandler (SimpleHTTPRequestHandler): File "/home/vikky/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 28, in HTTPHandler dico_artists = dcop.getArtists() File "/home/vikky/.kde/share/apps/amarok/scripts/wabaroK/amaroKdcop.py", line 18, in getArtists return dict(self.execSql("select id||'##'||name from artist")) ValueError: dictionary update sequence element #0 has length 1; 2 is required

outeris
jjl

Hi, I have answered in the forum.

Diogy

Hi there, This script rocks!!! All of my friends were shocked when they saw the website. However, I noticed that whenever I view an album that has a similar name on another artist (for example: both Backstreet Boys and Earth, Wind & Fire have an album named "Millenium"), only one of them will viewed on the website. Either both will show backstreet boys' album cover or EWF's cover. Thanks a lot, anyway. :)

jetpeach

man this is soo slick, it just needs a little polish and it will the sweetest thing to hit amarok ever. basically, I'm excited about when I can keep only mp3s on my main computer and have a nice pretty web interface that I can stream them from for everywhere else... Obviously, things that need work are playlists and general interface stuff, I hope you keep up the great work.

karlheinz

The script seems to work again under amarok-1.4beta2. But I would like to make a feature request for the next version: Would you consider to extended the functionality such that it works also like the amarok jukebox script here on kde-apps.org. I mean instead of streaming the selected mp3 just beeing a remote by making player/playlist dcop calls to amarok. Thanks, Val.

karlheinz

Seems not to work with amarok 1.4. Are you still working on it? (Would use it happily if I wouldn't have killed my simpad web pad :( ). Thanks for the effort, Val.

jjl

Hi, Yes it is not dead :) In fact 0.1.3 does not work with MySQL. I've released a beta version to correct the problem (see on http://kubuntu.free.fr/wabarok/index.php?p=down ) About amaroK 1.4, I think that I'll wait for ubuntu dapper to be released. So that I will just have to install packages (yes I'm lazy ;) )

guillaumeh

Hi, wabaroK is great, but i have a suggestion : In my collection i have some artists who have songs tagged to no album. Is it possible that your web interface displays them directly under the artist section ? bye

jjl

Hi, thanks for your comments. Well I'm not sure to understand what you'd like. I also have artists without album and they are listed in artists. But the songs are not listed in the 'Albums of artist' (2nd screenshot). Is it your wish ?

centic

I think this means that songs by an artist without an album assigned are not shown in the artis-view. So if you look for a song from Nick Cave, you just see the Albums of Nick Cave, but not a single song that is not assigned to an album in the collection that is from him. I hope that makes it a bit clearer... Dominik.

Mucki

I quite like this script, but does it run in a single thread? I am not able to listen to a stream and then continue browsing. Also it's not ideal for multiple users this way.

jjl

Hi, Thanks for your feedback. Yes the requests are treated by only one thread. I think this will change for next version. I hope to release it by the end of january.

ObsidianX

Where ever did you get the inspiration for this project?

jjl

Well, I wanted to "HTMLize" my collection, so I've search for scripts to do that. I've found 2 (yours and another) but they didn't fullfil my needs (I prefer a dynamic version but I don't want to run apache/mysql nor migrate my db) So I developed mine. (full story in french on my blog http://kubuntu.free.fr/wordpress/index.php?p=39) I've added links to thoses scripts in the description.

bugmenot

I notice that anybody accessing this interface has full filesystem read access (same access as user running this script) To convince you, just type wget 'http://localhost:1234/mp3?url=/etc/fstab' -O - in a console, and you will get the file /etc/fstab if the user has read access to this file (if you ask for a directory, the script simply crashes). good bye privacy ! (and maybe security)

jjl

Thanks for your report. I've missed this issue wich is really bad :( Now it is corrected (0.1.3), the script can only display files within collection directories (from amaroK configuration)

bugmenot

cool :) (and my nickname isn't "bugmenot" :) (it comes from the site bugmenot.com that let me add a comment without having to register here), my nickname is "ntome" :) ) now a suggestion :), maybe you could reencod files (with lame for example) so they would be smaller in order to transfer over internet

gryphen

where are the installation instructions? sorry, but developers need to start realizing that not everyone who comes to KDE-APPS is a programmer or Linux/BSD guru.

jjl

Well, as every other scripts in this category, you can install it with the amaroK menu : Tools/Scripts You can also look at this script web page (Link at the top), I've made a documentation with Install instructions and screenshots. http://kubuntu.free.fr/wabarok/index.php?p=doc

gryphen

being irritable. The link to the graphic is awesome, I just didn't know it was there. And an awesome job putting this together.

kriko

I cannot start this script: Traceback (most recent call last): File "/home/kriko/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 23, in ? class HTTPHandler (SimpleHTTPRequestHandler): File "/home/kriko/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 28, in HTTPHandler dico_artists = dcop.getArtists() File "/home/kriko/.kde/share/apps/amarok/scripts/wabaroK/amaroKdcop.py", line 13, in getArtists return dict(self.execSql("select id||'##'||name from artist")) ValueError: dictionary update sequence element #0 has length 1; 2 is required What is wrong?

jjl

Hum I reproduced that if dcop send me a line without \n. That should not append. If it is, this should be corrected with 0.1.1. If not you can set debug=1 in file ~/.kde/share/apps/amarok/scripts/wabaroK/amaroKdcop.py and send me the output and the file ~/.kde/share/apps/amarok/scripts-data/wabaout.log (maybe by mail because this will be quite huge) Thank you

kriko

Hi! I upgraded to newer version, but still I cant start the script. Traceback (most recent call last): File "/home/kriko/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 23, in ? class HTTPHandler (SimpleHTTPRequestHandler): File "/home/kriko/.kde/share/apps/amarok/scripts/wabaroK/wabaroK.py", line 28, in HTTPHandler dico_artists = dcop.getArtists() File "/home/kriko/.kde/share/apps/amarok/scripts/wabaroK/amaroKdcop.py", line 13, in getArtists return dict(self.execSql("select id||'##'||name from artist")) ValueError: dictionary update sequence element #0 has length 1; 2 is required I set debug to 1, but there is no .log output.

Pling
0 Affiliates
Details
license
version 0.1.3
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 0

Other Amarok 1.x Scripts:

Gnome Play Video in Totem
mwheatland
last update date: 19 years ago

Score 5.0

editLyrics-gnome
ZeeD
last update date: 19 years ago

Score 5.0

amarok Alarm
aroth
last update date: 16 years ago

Score 5.0

amaroK Web Collection V xmms
pti-jean
last update date: 16 years ago

Score 5.0

SongLogger
lucatnt
last update date: 17 years ago

Score 5.0

amaroK Web Collection
pti-jean
last update date: 16 years ago

Score 5.0



System Tags