Elisa: Difference between revisions

From KDE Community Wiki
(add link to visual design mockup)
m (→‎Windows: update binary factory link)
(24 intermediate revisions by 8 users not shown)
Line 12: Line 12:


== Goals ==
== Goals ==
Elisa is still in heavy development and aims to implement the following goals:
Elisa is still in heavy development and aims to implement the following goals:
* being easy to setup (ideally, one would not setup anything before being able to use it) ;
* being fully usable offline (or in privacy mode) ;
* being open to leverage online services but not a development priority (the experience should not be degraded when you are offline) ;
* being focused on satisfying users' goals ;
* being focused on music player (managing your music collection is not a development priority). This means that it is not a direct fulfillment for people needing that. This seems that a dedicated application would be more appropriate ;
* being as much as possible bug free (meaning stability has higher priority than feature development) ;
* targets Linux Plasma Workspace, other Linux desktop environments, Android and Windows ;
* being able to leverage UPnP DLNA.


== Current Interface ==
* Easy to setup (ideally, one would not setup anything before being able to use it);
* Fully usable offline (or in privacy mode);
* Open to leverage online services but not a development priority (the experience should not be degraded when you are offline);
* Focused on satisfying users' goals;
* Focused on music player (managing your music collection is not a development priority). This means that it is not a direct fulfilment for people needing that. This seems that a dedicated application would be more appropriate;
* As bug-free as possible  (meaning stability has higher priority than feature development);
* Targets Linux Plasma Workspace, other Linux desktop environments, Android and Windows;
* Able to leverage UPnP DLNA.
 
 
== Release Plans ==
Elisa uses the KDE Applications Release Service. See [[Schedules]] for more information.
 
 
== User Interface ==
 
The following snapshots show the current user interface. Elisa is loosely following design mockups made by KDE's Visual Design Group, which can be found [https://community.kde.org/KDE_Visual_Design_Group/Music_Player here].
 
 
== Try It ==
[[File:Elisa_albums_view.png|400px|thumb|right|Albums View]]
 
[[File:Elisa_artists_view.png|400px|thumb|right|Artists View]]
 
<!--[[File:Elisa_artists_view.png|400px|thumb|right|Albums from an Artist View]]-->
 
[[https://community.kde.org/File:Elisa_tracks_view.png|400px|thumb|left|Tracks View]]
 
[[File:Elisa_now_playing_view.png|400px|thumb|left|"Now Playing" view]]
 
[[File:Elisa_search_view.png|400px|thumb|left|Search view]]
 
[[File:Elisa_album_view.png|400px|thumb|left|One Album View]]
 
 
Elisa is available on Linux in many different ways, and there's a build for Windows as well!
It's also possible to compile Elisa from source for Linux, Windows and Android.
 
=== Flatpak ===
Flathub setup:
 
    flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
 
Flatpak install:
 
    flatpak install flathub org.kde.elisa
 
=== Ubuntu 19.10 Eoan Ermine/20.04 Focal Fossa ===
Elisa is available in the repositories starting from Ubuntu 19.10. You can install it by running:


The following snapshots show the current interface. They are only indicative and everything is open for improvements.
    sudo apt install elisa


[[File:Screenshot_20180128_093724.png|400px|thumb|left|Elisa Albums View]]
=== Debian Bullseye Testing/Sid Unstable ===
Elisa is available in the repositories starting from current Debian Testing. You can install it by running:


[[File:Screenshot_20180128_093738.png|400px|thumb|right|Elisa Artists View]]
    sudo apt install elisa
<!--Extra space for alignment-->


[[File:Screenshot_20180128_094158.png|400px|thumb|left|Elisa Albums from an Artist View]]


[[File:Screenshot_20180128_093746.png|400px|thumb|right|Elisa Tracks View]]
=== KDE neon ===
Elisa is available in the repositories by default. You can install it by running:


[[File:Screenshot_20180128_094136.png|400px|thumb|left|Elisa Playlist]]
    pkcon install elisa


[[File:Screenshot_20180128_095041.png|400px|thumb|right|Search "trip" in Elisa Albums View]]
=== openSUSE ===
openSUSE ships Elisa for both Leap and Tumbleweed.  You can install it by running:


[[File:Screenshot_20180128_094315.png|400px|thumb|left|Elisa One Album View]]
    sudo zypper install elisa


[[File:Screenshot_20180128_095730.png|400px|thumb|right|Elisa All Albums View filtered by rating]]
Elisa is also available through community repositories in differing versions. See https://software.opensuse.org/package/elisa .


Elisa is loosely following design mockups made by the Visual Design Group of KDE. The mockups can be found [https://community.kde.org/KDE_Visual_Design_Group/Music_Player here].
<!--Fedora
Gotta verify if it's available through the repos-->
=== Solus ===
Solus ships Elisa by default in their [https://getsol.us/download Plasma edition].


== Try It ==
You can install it by running:
 
    sudo eopkg install elisa


Some packages are already available. There is an AUR for Elisa and it is packaged for KDE neon Developer Unstable.
=== Arch Linux ===
Elisa can be found both as a package available through Arch Linux' default repository and through the AUR.


You can obtain Windows builds from https://binary-factory.kde.org/job/elisa-master-win32/
You can install it from the repositories by running:


== Get Involved ==
    sudo pacman -S elisa


The Elisa team is open to any contributions and feedback.
And for the AUR, with the recommended yay AUR helper:


Bugs can be reported to [https://bugs.kde.org/ bugs.kde.org].
    yay -S elisa-git


Development can be followed on [https://phabricator.kde.org/project/view/193/ Phabricator].
=== Windows ===
Code contributions may also be submitted via Phabricator. Please follow the instructions of the [https://community.kde.org/Infrastructure/Phabricator Phabricator User Guide].
Elisa is available for free through the Microsoft Store: https://www.microsoft.com/en-us/p/elisa/9pb5md7zh8tl


There is also a [https://mail.kde.org/mailman/listinfo/elisa Elisa mailing list] available for coordination.
It's also possible to download an .exe file for Elisa directly from KDE's binary factory: https://binary-factory.kde.org/job/Elisa_Release_win64/
<!--The following newlines serve to align the text with the images-->


== Compilation from source ==
== Compilation from source ==
=== on Linux ===
=== on Linux ===
The way Elisa application is built is completely standard for an application based on Qt5, KDE Frameworks 5 and cmake:
The way Elisa application is built is completely standard for an application based on Qt5, KDE Frameworks 5 and cmake.


; [[Guidelines and HOWTOs/Build_from_source| Build from source]]
; [[Get Involved/development#Applications]]
 
Elisa has a few dependencies mainly from Qt5 and KF5 with the minimum required versions being Qt 5.11 and KDE Frameworks 5.60. Currently the list is:


Elisa has a few dependencies mainly from Qt5 and KF5. Currently the list is:
-- REQUIRED:
-- REQUIRED:


Line 80: Line 132:
  * Qt5Widgets
  * Qt5Widgets
  * Qt5QuickTest
  * Qt5QuickTest
  * Qt5 (required version >= 5.9.0)
  * Qt5Concurrent
  * ECM (required version >= 5.32.0)
* Qt5 (required version >= 5.11.0)
* Qt5QuickControls2 (required version >= 5.11.0), Qt5 Quick Controls version 2 is needed at runtime to provide the interface.
* KF5Kirigami2 (required version >= 5.60.0), KF5 Kirigami 2 is needed to provide the mobile UI components.
* Gettext
* KF5I18n (required version >= 5.60.0), KF5 text internationalization library.
* KF5CoreAddons (required version >= 5.60.0), Qt addon library with a collection of non-GUI utilities.
* KF5Config (required version >= 5.60.0), Persistent platform-independent application settings.
  * ECM (required version >= 1.6.0)
  * Qt5Core
  * Qt5Core
* Gettext
* PythonInterp
* KF5I18n (required version >= 5.32.0), KF5 text internationalization library.
* KF5CoreAddons (required version >= 5.32.0), Qt addon library with a collection of non-GUI utilities.
* KF5FileMetaData (required version >= 5.32.0), Provides a simple library for extracting metadata.
* KF5Config (required version >= 5.32.0), Persistent platform-independent application settings.


-- RECOMMENDED:
-- RECOMMENDED:


  * KF5Declarative (required version >= 5.32.0), Integration of QML and KDE work spaces.
  * KF5Declarative (required version >= 5.60.0), Integration of QML and KDE work spaces.
  * KF5Baloo (required version >= 5.32.0), Baloo provides file searching and indexing.
  * KF5Baloo (required version >= 5.60.0), Baloo provides file searching and indexing.
  * KF5XmlGui (required version >= 5.32.0), Framework for managing menu and toolbar actions.
* KF5FileMetaData (required version >= 5.60.0), Provides a simple library for extracting metadata.
  * KF5ConfigWidgets (required version >= 5.32.0), Widgets for configuration dialogs.
  * KF5XmlGui (required version >= 5.60.0), Framework for managing menu and toolbar actions.
  * KF5KCMUtils (required version >= 5.32.0), KF5 Utilities for KDE System Settings modules library.
  * KF5ConfigWidgets (required version >= 5.60.0), Widgets for configuration dialogs.
  * KF5Package (required version >= 5.32.0), KF5 package management library needed to get the configuration dialogs.
  * KF5KCMUtils (required version >= 5.60.0), KF5 Utilities for KDE System Settings modules library.
  * KF5Package (required version >= 5.60.0), KF5 package management library needed to get the configuration dialogs.
* KF5KIO (required version >= 5.60.0), File management libraries used for file browsing.
* LIBVLC, libvlc allows to play music in Elisa, <https://www.videolan.org/vlc/libvlc.html>


-- OPTIONAL:
-- OPTIONAL:


  * Qt5DBus (required version >= 5.9.0), Qt5 DBus is needed to provide MPris2 interface to allow remote control by the desktop workspace.
  * Qt5DBus (required version >= 5.11.0), Qt5 DBus is needed to provide MPris2 interface to allow remote control by the desktop workspace.
  * KF5DocTools (required version >= 5.39.0), Create documentation from DocBook library.
  * KF5DocTools (required version >= 5.60.0), Create documentation from DocBook library.
  * KF5Crash (required version >= 5.32.0), Graceful handling of application crashes.
  * KF5Crash (required version >= 5.60.0), Graceful handling of application crashes.
  * KF5DBusAddons (required version >= 5.32.0), Convenience classes for D-Bus.
  * KF5DBusAddons (required version >= 5.60.0), Convenience classes for D-Bus.
  * UPNPQT, UPNP layer build with Qt 5., <https://gitlab.com/homeautomationqt/upnp-player-qt>
  * PkgConfig


-- RUNTIME:
-- RUNTIME:


  * Qt5QuickWidgets (required version >= 5.9.0), Qt5 Quick Widgets is needed at runtime to provide the interface.
  * Qt5QuickWidgets (required version >= 5.11.0), Qt5 Quick Widgets is needed at runtime to provide the interface.
  * Qt5QuickControls2 (required version >= 5.9.0), Qt5 Quick Controls version 2 is needed at runtime to provide the interface.
  * Qt.labs.platform, Qt.labs module with some qml components wrapping platform APIs
* qml-module-qtqml-models2 (required version >= 5.11.0), qml Qt module
* qml-module-org-kde-kcm (required version >= 5.60.0), qml module from KF5 KDeclarative framework
* qml-module-qtquick-controls (required version >= 5.11.0), qml Qt module
* qml-module-qtquick-dialogs (required version >= 5.11.0), qml Qt module
* qml-module-qtquick-layouts (required version >= 5.11.0), qml Qt module
* qml-module-qtquick2 (required version >= 5.11.0), qml Qt module


For example on Debian and derivatives you may use:
For example on Debian and derivatives you may use:


  apt-get install qtbase5-dev qtmultimedia5-dev qtdeclarative5-dev libqt5svg5-dev libkf5i18n-dev libkf5filemetadata-dev baloo-kf5-dev libkf5config-dev libkf5kcmutils-dev libkf5declarative-dev libkf5coreaddons-dev libkf5doctools-dev libkf5xmlgui-dev libkf5crash-dev libkf5dbusaddons-dev extra-cmake-modules gettext  
  sudo apt install qtbase5-dev qtmultimedia5-dev qtdeclarative5-dev libqt5svg5-dev libkf5i18n-dev libkf5filemetadata-dev baloo-kf5-dev libkf5config-dev libkf5kcmutils-dev libkf5declarative-dev libkf5coreaddons-dev libkf5doctools-dev libkf5xmlgui-dev libkf5crash-dev libkf5dbusaddons-dev extra-cmake-modules gettext qml-module-qt-labs-platform qml-module-qtqml-models2 qml-module-org-kde-kcm qml-module-qtquick-controls qml-module-qtquick-dialogs qml-module-qtquick-layouts qml-module-qtquick2


The next state is to get Elisa sources and build them:
The next state is to get Elisa sources and build them:
Line 126: Line 188:
You can execute it with the following command:
You can execute it with the following command:


  ./elisa/build/src/elisa
  ./elisa/build/bin/elisa


You may also now install Elisa system wide, but beware that the following cannot always be undone (read the build instructions for more information). If you wish to do anyways, run
You may also now install Elisa system-wide, but beware that the following cannot always be undone (read the build instructions for more information). If you wish to do anyway, run


  sudo make install
  sudo make install
=== on Android ===
It is now possible to build a very simple application based on Elisa on Android.
cmake .. -G Ninja -DCMAKE_SYSTEM_VERSION=19 -DCMAKE_INSTALL_PREFIX=<workspace>/androidRoot -DCMAKE_ANDROID_NDK=<workspace>/Android/Sdk/ndk-bundle -DCMAKE_TOOLCHAIN_FILE=<workspace>/androidRoot/share/ECM/toolchain/Android.cmake -DECM_ADDITIONAL_FIND_ROOT_PATH="<workspace>/Qt/5.11.1/android_armv7;<workspace>/androidRoot;<workspace>/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm/usr/lib" -DKF5_HOST_TOOLING=/usr/lib/x86_64-linux-gnu/cmake -DQTANDROID_EXPORTED_TARGET=elisa -DANDROID_APK_DIR=../data


=== on Windows ===
=== on Windows ===
Windows is built using the Craft build system. Please follow instruction  
Windows is built using the Craft build system. Please follow instruction  


Line 144: Line 210:
in the Windows PowerShell to download and compile all required dependencies and Elisa itself.
in the Windows PowerShell to download and compile all required dependencies and Elisa itself.


== Design Open Questions ==


== Get Involved ==
The Elisa team is open to any contributions and feedback!
Bugs can be reported to [https://bugs.kde.org/ bugs.kde.org].
Development can be followed on [https://phabricator.kde.org/tag/elisa/ Elisa tasks board].
Code contributions have to be submitted via [https://invent.kde.org/multimedia/elisa GitLab]. You can follow [https://community.kde.org/Infrastructure/GitLab generic user instructions for GitLab and a merge request workflow].
We are in a transition from Phabricator to GitLab. During this transition, merge requests have to be sent via GitLab while tasks are still handled by Phabricator.
There is also an [https://mail.kde.org/mailman/listinfo/elisa Elisa mailing list] available for coordination.
== Open Design Questions ==
The design of Elisa currently leaves open questions about the direction. At least the following points need an identified solution that could be implemented:
The design of Elisa currently leaves open questions about the direction. At least the following points need an identified solution that could be implemented:


* Implement User Centered Design to help guide the development (definition of persona, ...) ;
* Implement User Centered Design to help guide the development (definition of persona, ...) ;
* trying to combine an interface to be used with the mouse and with the touchscreen commonly found on laptops ;
* trying to combine an interface to be used with the mouse and with the touchscreen commonly found on laptops ;
* how to decide what is done by single click, double click or single long click.
 


== Description of the Application Architecture ==
== Description of the Application Architecture ==
Currently, music is retrieved from Baloo and put in an SQLite memory database. A local file indexer can be used in addition or when Baloo is not available.


Currently music is retrieved from Baloo and put in an SQLite memory database. A local file indexer can be used in addition or when Baloo is not available.
The user interface is done in QML with QtQuick Controls 2.
 
The user interface is done in Qml with Qt Quick Controls 1 and 2. A port to Qt Quick Controls 2 only is slated for the future.


The UPnP support is probably broken right now.
UPnP support is broken right now.

Revision as of 06:50, 14 April 2021

Elisa

Elisa is a music player developed by the KDE community that strives to be simple and nice to use. We also recognize that we need a flexible product to account for the different workflows and use-cases of our users. We focus on a very good integration with the Plasma desktop of the KDE community without compromising the support for other platforms (other Linux desktop environments, Windows and Android). We are creating a reliable product that is a joy to use and respects our users privacy. As such, we will prefer to support online services where users are in control of their data.

Goals

Elisa is still in heavy development and aims to implement the following goals:

  • Easy to setup (ideally, one would not setup anything before being able to use it);
  • Fully usable offline (or in privacy mode);
  • Open to leverage online services but not a development priority (the experience should not be degraded when you are offline);
  • Focused on satisfying users' goals;
  • Focused on music player (managing your music collection is not a development priority). This means that it is not a direct fulfilment for people needing that. This seems that a dedicated application would be more appropriate;
  • As bug-free as possible (meaning stability has higher priority than feature development);
  • Targets Linux Plasma Workspace, other Linux desktop environments, Android and Windows;
  • Able to leverage UPnP DLNA.


Release Plans

Elisa uses the KDE Applications Release Service. See Schedules for more information.


User Interface

The following snapshots show the current user interface. Elisa is loosely following design mockups made by KDE's Visual Design Group, which can be found here.


Try It

Albums View
Artists View


[View]

"Now Playing" view
Search view
One Album View


Elisa is available on Linux in many different ways, and there's a build for Windows as well! It's also possible to compile Elisa from source for Linux, Windows and Android.

Flatpak

Flathub setup:

   flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Flatpak install:

   flatpak install flathub org.kde.elisa

Ubuntu 19.10 Eoan Ermine/20.04 Focal Fossa

Elisa is available in the repositories starting from Ubuntu 19.10. You can install it by running:

   sudo apt install elisa

Debian Bullseye Testing/Sid Unstable

Elisa is available in the repositories starting from current Debian Testing. You can install it by running:

   sudo apt install elisa


KDE neon

Elisa is available in the repositories by default. You can install it by running:

   pkcon install elisa

openSUSE

openSUSE ships Elisa for both Leap and Tumbleweed. You can install it by running:

   sudo zypper install elisa

Elisa is also available through community repositories in differing versions. See https://software.opensuse.org/package/elisa .

Solus

Solus ships Elisa by default in their Plasma edition.

You can install it by running:

   sudo eopkg install elisa

Arch Linux

Elisa can be found both as a package available through Arch Linux' default repository and through the AUR.

You can install it from the repositories by running:

   sudo pacman -S elisa

And for the AUR, with the recommended yay AUR helper:

   yay -S elisa-git

Windows

Elisa is available for free through the Microsoft Store: https://www.microsoft.com/en-us/p/elisa/9pb5md7zh8tl

It's also possible to download an .exe file for Elisa directly from KDE's binary factory: https://binary-factory.kde.org/job/Elisa_Release_win64/

Compilation from source

on Linux

The way Elisa application is built is completely standard for an application based on Qt5, KDE Frameworks 5 and cmake.

Get Involved/development#Applications

Elisa has a few dependencies mainly from Qt5 and KF5 with the minimum required versions being Qt 5.11 and KDE Frameworks 5.60. Currently the list is:

-- REQUIRED:

* Qt5Network
* Qt5Qml
* Qt5Quick
* Qt5Test
* Qt5Sql
* Qt5Multimedia
* Qt5Svg
* Qt5Gui
* Qt5Widgets
* Qt5QuickTest
* Qt5Concurrent
* Qt5 (required version >= 5.11.0)
* Qt5QuickControls2 (required version >= 5.11.0), Qt5 Quick Controls version 2 is needed at runtime to provide the interface.
* KF5Kirigami2 (required version >= 5.60.0), KF5 Kirigami 2 is needed to provide the mobile UI components.
* Gettext
* KF5I18n (required version >= 5.60.0), KF5 text internationalization library.
* KF5CoreAddons (required version >= 5.60.0), Qt addon library with a collection of non-GUI utilities.
* KF5Config (required version >= 5.60.0), Persistent platform-independent application settings.
* ECM (required version >= 1.6.0)
* Qt5Core

-- RECOMMENDED:

* KF5Declarative (required version >= 5.60.0), Integration of QML and KDE work spaces.
* KF5Baloo (required version >= 5.60.0), Baloo provides file searching and indexing.
* KF5FileMetaData (required version >= 5.60.0), Provides a simple library for extracting metadata.
* KF5XmlGui (required version >= 5.60.0), Framework for managing menu and toolbar actions.
* KF5ConfigWidgets (required version >= 5.60.0), Widgets for configuration dialogs.
* KF5KCMUtils (required version >= 5.60.0), KF5 Utilities for KDE System Settings modules library.
* KF5Package (required version >= 5.60.0), KF5 package management library needed to get the configuration dialogs.
* KF5KIO (required version >= 5.60.0), File management libraries used for file browsing.
* LIBVLC, libvlc allows to play music in Elisa, <https://www.videolan.org/vlc/libvlc.html>

-- OPTIONAL:

* Qt5DBus (required version >= 5.11.0), Qt5 DBus is needed to provide MPris2 interface to allow remote control by the desktop workspace.
* KF5DocTools (required version >= 5.60.0), Create documentation from DocBook library.
* KF5Crash (required version >= 5.60.0), Graceful handling of application crashes.
* KF5DBusAddons (required version >= 5.60.0), Convenience classes for D-Bus.
* PkgConfig

-- RUNTIME:

* Qt5QuickWidgets (required version >= 5.11.0), Qt5 Quick Widgets is needed at runtime to provide the interface.
* Qt.labs.platform, Qt.labs module with some qml components wrapping platform APIs
* qml-module-qtqml-models2 (required version >= 5.11.0), qml Qt module
* qml-module-org-kde-kcm (required version >= 5.60.0), qml module from KF5 KDeclarative framework
* qml-module-qtquick-controls (required version >= 5.11.0), qml Qt module
* qml-module-qtquick-dialogs (required version >= 5.11.0), qml Qt module
* qml-module-qtquick-layouts (required version >= 5.11.0), qml Qt module
* qml-module-qtquick2 (required version >= 5.11.0), qml Qt module

For example on Debian and derivatives you may use:

sudo apt install qtbase5-dev qtmultimedia5-dev qtdeclarative5-dev libqt5svg5-dev libkf5i18n-dev libkf5filemetadata-dev baloo-kf5-dev libkf5config-dev libkf5kcmutils-dev libkf5declarative-dev libkf5coreaddons-dev libkf5doctools-dev libkf5xmlgui-dev libkf5crash-dev libkf5dbusaddons-dev extra-cmake-modules gettext qml-module-qt-labs-platform qml-module-qtqml-models2 qml-module-org-kde-kcm qml-module-qtquick-controls qml-module-qtquick-dialogs qml-module-qtquick-layouts qml-module-qtquick2 

The next state is to get Elisa sources and build them:

git clone https://anongit.kde.org/elisa.git
cd elisa
mkdir build
cd build
cmake ..
make

You can execute it with the following command:

./elisa/build/bin/elisa

You may also now install Elisa system-wide, but beware that the following cannot always be undone (read the build instructions for more information). If you wish to do anyway, run

sudo make install

on Android

It is now possible to build a very simple application based on Elisa on Android.

cmake .. -G Ninja -DCMAKE_SYSTEM_VERSION=19 -DCMAKE_INSTALL_PREFIX=<workspace>/androidRoot -DCMAKE_ANDROID_NDK=<workspace>/Android/Sdk/ndk-bundle -DCMAKE_TOOLCHAIN_FILE=<workspace>/androidRoot/share/ECM/toolchain/Android.cmake -DECM_ADDITIONAL_FIND_ROOT_PATH="<workspace>/Qt/5.11.1/android_armv7;<workspace>/androidRoot;<workspace>/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm/usr/lib" -DKF5_HOST_TOOLING=/usr/lib/x86_64-linux-gnu/cmake -DQTANDROID_EXPORTED_TARGET=elisa -DANDROID_APK_DIR=../data

on Windows

Windows is built using the Craft build system. Please follow instruction

Setting up of Craft

and enter

craft elisa

in the Windows PowerShell to download and compile all required dependencies and Elisa itself.


Get Involved

The Elisa team is open to any contributions and feedback!

Bugs can be reported to bugs.kde.org.

Development can be followed on Elisa tasks board. Code contributions have to be submitted via GitLab. You can follow generic user instructions for GitLab and a merge request workflow.

We are in a transition from Phabricator to GitLab. During this transition, merge requests have to be sent via GitLab while tasks are still handled by Phabricator.

There is also an Elisa mailing list available for coordination.


Open Design Questions

The design of Elisa currently leaves open questions about the direction. At least the following points need an identified solution that could be implemented:

  • Implement User Centered Design to help guide the development (definition of persona, ...) ;
  • trying to combine an interface to be used with the mouse and with the touchscreen commonly found on laptops ;


Description of the Application Architecture

Currently, music is retrieved from Baloo and put in an SQLite memory database. A local file indexer can be used in addition or when Baloo is not available.

The user interface is done in QML with QtQuick Controls 2.

UPnP support is broken right now.