GithubHelp home page GithubHelp logo

rogeriocaroco / lastfm-desktop Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lastfm/lastfm-desktop

1.0 2.0 0.0 46.34 MB

The official Last.fm desktop application suite

Home Page: http://www.last.fm

License: GNU General Public License v3.0

lastfm-desktop's Introduction

Join us for chats on IRC!

Server: irc.last.fm Channel: #last.desktop

Build Dependencies

  • Qt >= 4.8
  • liblastfm >= 1.0.7

You will also need depending on your chosen platform:-

Mac OS X

Homebrew

We recommend that you use Homebrew to install most of the dependancies:

brew tap lastfm/lastfmdesktop
brew install qt kde-phonon
brew install --HEAD vlc
brew install phonon-vlc

We install kde-phonon becuase the Phonon distributed with Qt is quite old.

Installing phonon-vlc will remove the QuickTime phonon plugin and replace it with the VLC phonon plugin so that when we build the app we use .

Other dependancies

You'll also need the Growl and libsparkle frameworks.

Get the latest Growl SDk from here http://code.google.com/p/growl/downloads/list

Get the latest Sparkle from here http://sparkle.andymatuschak.org/

Unzip both and put their frameworks in /Library/Frameworks/ so the build will find them.

Windows

We used to build using Cygwin, but now we prefer not to.

You should get Windows version of the tool chain. Here are some recommendations.

Qt

Install Qt binaries from either the Qt SDK or standalone binary package. You should be able to find everything here http://qt.nokia.com/downloads

You will also need the latest Windows SDK. We build using Visual Studio 2008.

Phonon

We build the latest version of Phonon. This step is optional, if you're happy with the outdated one that ships with Qt.

You can clone Phonon from here git://anongit.kde.org/phonon

Follow their instructions to build it using cmake, etc. I found that CMake needed a little help wiht cmake-gui.

Create a pkg-config file for Phonon like this:

Name: Phonon
Description: Multimedia Library
Version: 4.6.0
Libs: -LC:/dev/Install/Phonon/lib C:/dev/Install/Phonon/lib/phonon.lib
Cflags: -IC:/dev/Install/Phonon/include

VLC

We use the VLC backend for phonon. This step is optional, if you are happy with the directx plugin that ships with Qt.

Download Latest VLC from http://www.videolan.org/vlc/download-windows.html

VLC is compiled with MinGW so we need to generate a .lib so that we can link to it with MSVC.

To do this you should follow the instructions here http://wiki.videolan.org/GenerateLibFromDll

  • Copy the pkg-config files from 'INSTALL_DIR\VideoLAN\VLC\sdk\lib\pkgconfig' to your pkg-config search directory.

I found I also had to copy libvlc.dll and libvlccore.dll into lastfm-desktop/_bin

Phonon-VLC

This is the Qt plugin that gets Phonon to use libvlc. Again, this is an optional.

You can clone phonon-vlc from here git://anongit.kde.org/phonon-vlc

Follow there instructions for building it. I found that CMake needed a little help wiht cmake-gui.

You should copy the resulting phonon_vlc.dll into lastfm-desktop/_bin/plugins/phonon_backend

Winsparkle

This is the library we use to check for app updates. You should download the latest dll and headers form here http://winsparkle.org

This step should be optional really as most people will not want to add the update checking.

I found that I also needed to copy the dll into the lastfm-desktop/_bin folder. Create a pkg-config file for WinSparkle like this:

Name: sparkle
Description: Multimedia Library
Version: 0.3
Libs: -LC:/dev/Install/WinSparkle/Release -lWinSparkle
Cflags: -IC:/dev/Install/WinSparkle/include

Linux

On Debian or Ubuntu, you can download all the build dependencies by running:

sudo apt-get install libavformat-dev libgpod-nogtk-dev liblastfm-dev \
                     libphonon-dev libqt4-dev libqtwebkit-dev pkg-config \
                     zlib1g-dev

You should also install the libqt4-sql-sqlite plugin if you want to use the software to scrobble your iPod.

Build Instructions

qmake -r
make -j4

make install currently does not work on Windows or OSX.

Windows note: use nmake on Windows

Linux note: Linux users can set the install prefix like so qmake PREFIX=/usr/local

OSX note: if you installed Qt through homebrew it will default to a release build.

Run Instructions

Apps are styled using stylesheets which are found in the source directory of the app. By default the executable path is checked for the css file on Windows and on OSX the bundle Resource directory is checked otherwise you'll need to tell the app where the stylesheet is, like this:

./Last.fm.exe -stylesheet path/to/Last.fm.css

On Linux, if you have not run make install, you can run the app like this from the root of the source directory:

_bin/lastfm-scrobbler -stylesheet app/client/Last.fm\ Scrobbler.css

Build Support

We support developers trying to build the source on any platform.

Seeing as we don't provide many varieties of binary package on Linux, we also support non-developers building from source there. However within reason! Please check around the net a little first. Ask your friends. Demand help from people standing at bus-stops.

Maybe check the official forum: http://www.last.fm/forum/34905

Bugs

If you find a bug in the software, please let us know about it.

Michael Coffey[email protected] Desktop App Lead Developer, Last.fm

lastfm-desktop's People

Contributors

eartle avatar mxcl avatar jonocole avatar dougma avatar vianasw avatar jstamp avatar milkaxor avatar rj avatar erkan-yilmaz avatar jberkel avatar mkeating avatar evilrix avatar timmmm avatar tdebaets avatar

Stargazers

Rogério P. V. Caroço avatar

Watchers

James Cloos avatar Rogério P. V. Caroço avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.