An universal linux port of deezer, supporting both Flatpak and AppImage

Overview

Deezer for linux

This repo is an UNOFFICIAL linux port of the official windows-only Deezer app. Being based on the windows app, it allows downloading your songs to listen to them offline!

It packages the app in a number of formats:

  • Flatpak
  • Snap (not tested yet)
  • AppImage (can't automatically login without desktop integration)
  • rpm (Fedora, Red Hat, CentOS, openSUSE, ...)
  • deb (Debian, Ubuntu, Pop!_OS, elementary OS, ...)
  • tar.gz/zip/7z to install anywhere else

It was done thanks to the hard work of SibrenVasse, who packaged the app for the AUR.

Please note that it is still in alpha stage, and you will probably need to install some things in order to generate the packages from source (nodejs and npm at least).

Flatpak

The main point of the project is the flatpak image.

You can install it thanks to the flatpakref file.

To build it from source, you can one of the following commands:

# To build it and install it
make install_flatpak

# To just build it, but do nothing with it
make build_flatpak

# To build it and install it in the local repo (which you can import later)
make export_flatpak

And when it is installed, you can run it with flatpak run dev.aunetx.deezer, or from the desktop icon.

AppImage

This project also generates an AppImage file, which can be used as a stand-alone application.

To use it, you must build it from source for the moment: the package size is randomly big, which prevents me from making a public release.

To generate it from source, call:

make build_appimage

And the image should be in the artifacts/x64 folder.

Because of the way AppImage work, excepted if you use appimaged, you will not be able to login from the browser: the you are not redirected to the application. To make it work, you must open a first instance of the app, and copy the link shown in https://www.deezer.com/desktop/login/electron/callback. In a terminal (where the `.AppImage file is), call:

deezer-desktop-*.AppImage deezer://autolog/...

And you should be automatically logged in.

rpm / deb / tar.gz / 7z / zip / snap

To generate the rpm/deb/tar.gz/7z/zip/snap packages, you can call make build_pkgs, everything should be generated in artifacts/x64.

Please note that generating all at once will take a very long time, and it oddly results in big package sizes for the moment.

The tar.gz is not a pacman package by the way, but just an archive containing the executable (like for 7z and zip). I can't get to generate pacman packages for the moment (throws an error, will investigate later).

To only generate rpm or deb, call:

make build_rpm
# or
make build_deb

Wthout package manager

This will be soon supported, but you can install it by hand with one of the generated 7z/zip/tar.gz archive

IMPORTANT NOTICE

This work is UNOFFICIAL, and Deezer does not officially support linux yet.

Installing/using this is consequently outside of the scope of the Deezer EULA, and I am not responsible for your usage of this.

I will try to talk to Deezer to ask them if I can upload this on Flathub, but even if they say yes (which is nearly impossible), this work is still unofficial.

Comments
  • Deezer app is modifying MIME html to be associated with it

    Deezer app is modifying MIME html to be associated with it

    Hello,

    Deezer when it is launched is modifying the file ~/.config/mimeapps.list as follows:

    [Default Applications]
    text/tab-separated-values=rstudio.desktop
    text/plain=rstudio.desktop
    text/html=deezer-desktop.desktop
    x-scheme-handler/http=firefox.desktop
    x-scheme-handler/https=firefox.desktop
    application/xhtml+xml=firefox.desktop
    x-scheme-handler/dzr=deezer-desktop.desktop
    x-scheme-handler/deezer=deezer-desktop.desktop
    

    the culprit is this line text/html=deezer-desktop.desktop. Then any HTML files I open goes into deezer and of course does not display.

    If I manually replaced by text/html=firefox.desktop HTML files are again opened by FF.

    Put if I close deezer and later opened it, the mime text/html is again associated to Deezer.

    Do you know why this is happening?

    Thanks!

    Ubuntu 21.10 with Wayland GNOME 40.4.0 deezer 5.30.170 install via .deb and apt

    bug 
    opened by ginolhac 7
  • Limited to 320Kb/s an cannot favorite albums

    Limited to 320Kb/s an cannot favorite albums

    This seems to be an issue while on Fedora. It worked fine on Ubuntu, but flatpak, appimage, and .rpm files do not fix the issue. Not sure how much of this involves something you can fix. Just thought I'd mention it and thank you for the work.

    opened by picklepopper1 6
  • Outdated version

    Outdated version

    The latest version of the Windows application on the Deezer website is 5.30.330, whereas the latest version here is 5.30.220:

    image

    Though I can't say for certain, it seems that the application being out of date has finally caught up with it, because logging into the desktop application simply doesn't work as of today, whereas logging into the website works just fine:

    https://user-images.githubusercontent.com/40576902/192224268-b02a4728-32f9-449b-807e-f99310d70759.mp4

    opened by elsandosgrande 5
  • Fix #21 app must stay in background by default

    Fix #21 app must stay in background by default

    Hello ! 🙂

    This PR is to fix #21 After closing the app, it is not stayed in background and, obviously, the systray disappeared. I noticed that the quit.patch was not applied like the other patches. With this change, it is finally applied. I think this is caused by the fix-isDev-usage.patch. It is applied in first, shifts the lines and the patch provided by quit.patch is not found.

    So, with this PR, it works fine. But, it's possible that the bug will come back after merging the PR #20 for example... Is there another way to apply patches?

    opened by adynemo 5
  • Can't put the app in favorite

    Can't put the app in favorite

    image The icon in the app bar does not offer "Add to favorites" option, so I can't launch it from there, I have to search for it in all applications. e.g. for a standard file icon: image

    opened by florentdestremau 5
  • Build deb file

    Build deb file

    Running installation commands like described returns an error.

    $ make install_deps
    
    added 17 packages, and audited 18 packages in 3s
    
    1 package is looking for funding
      run `npm fund` for details
    
    found 0 vulnerabilities
    
    added 1 package, and audited 19 packages in 823ms
    
    2 packages are looking for funding
      run `npm fund` for details
    
    found 0 vulnerabilities
    Download installer
    2022-08-03 19:45:22 URL:https://e-cdn-content.dzcdn.net/builds/deezer-desktop/8cF2rAuKxLcU1oMDmCYm8Uiqe19Ql0HTySLssdzLkQ9ZWHuDTp2JBtQOvdrFzWPA/win32/x86/5.30.220/DeezerDesktopSetup_5.30.220.exe [77848448/77848448] -> "source/deezer-setup-5.30.220.exe" [1]
    Extract app archive from installer
    /bin/sh: 1: 7z: not found
    make: *** [Makefile:19: prepare] Error 127
    

    Then when I try to run make build_deb returns an error "Command 'build-deb' not found." I'm on Ubuntu 20.04 LTS.

    opened by samuelv8 4
  • Lot of debug outputs

    Lot of debug outputs

    Hey!

    I am running the Flatpak version and the app is quite verbose with many log lines like 23:24:01.470 (main/debug) › Added response headers for https://e-cdnt-proxy-4.dzcdn.net. This is logged in the ~/.xsession-errors file in my case. Is it possible to disable debug logs?

    opened by vincentbernat 4
  • Flatpak xdg-open not working

    Flatpak xdg-open not working

    Hello,

    I'm using Deepin Linux 20.6 and installed Deezer from Flatpak, but I can't login at app.

    When I click at login, it opens my browser at Deezer login page but after I successfully provides my credentials the xdg-open action seems to do nothing.

    I had to run it through terminal using the following command for it to login successfully (similar to AppImage):

    flatpak run dev.aunetx.deezer deezer://autolog/...
    
    opened by eduardomozart 3
  • Option to disable systray?

    Option to disable systray?

    As a suggestion, I would find it very nice to have the option to disable minimize-to-systray or even better to disable the systray functionality completely. Especially on GNOME, where there is no systray by default, it is annoying to have deezer running in the background. Or is there maybe some workaround to disable it?

    In any case: Thank you for your work on this! :)

    enhancement 
    opened by pschloenzke 3
  • After closing the main window, Deezer does not stay in the tray

    After closing the main window, Deezer does not stay in the tray

    After installing v5.30.220-1, the main window when closed quits the whole app (it does not stay in the tray). The tray icon is present and works if the app is open. In v5.30.210-1 after closing the main window Deezer stayed in the tray and played music.

    I didn't find a way how to change the behavior back as it was in v5.30.210-1 in settings or by a command line parameter.

    Workaround: revert to v5.30.210-1.

    Operating System: Kubuntu 21.10 KDE Plasma Version: 5.24.4 KDE Frameworks Version: 5.92.0 Qt Version: 5.15.2 Kernel Version: 5.17.0-5.1-liquorix-amd64 (64-bit) Graphics Platform: X11

    opened by gree7 2
  • "Flow: play how you feel" not working

    Deezer has a new feature "Flow: play how you feel": image which is not working. The icons are shown as generic albums and the play button does nothing: image

    opened by gree7 2
  • Deezer Cache Location?

    Deezer Cache Location?

    Hello! Thanks so much for creating this project. Without it, I don't think I could have switched to Deezer from Spotify.

    I've been having trouble with the "Flow" playlist. Sometimes it plays the same songs repeatedly. Some times it doesn't work at all. Deezer forums and support have indicated this might be a cache issue, but when using the Flatpak Deezer, I can't locate the cache at all. Visiting Profile -> Account Settings -> More -> App Preferences, it indicates that Deezer is not using any cache:

    image

    I'm not sure if there isn't a cache, or if the Flatpak just can't see it. Either way, that seems like it could be causing my potential problems. Where on the disk is the cache supposed to be stored?

    opened by quicksketch 2
  • Loosing ability to play or skip next track after a short while.

    Loosing ability to play or skip next track after a short while.

    I am finding that after a few tracks in a playlist or album the app will stop playing any further tracks or allow me to skip forward (or back). I can still play the same song again. This in particular happens after the application is left in the background (window closed), but also happens with the window open too. If I click on a different track to play, the name gets updated in the bottom bar, but still only allows the previous song the app is stuck on to play. Happens with both the latest (v5.30.220-2) flatpak and deb, I am using Mint 20.03, fully updated. Issue is repeatable on a clean install of the same version of Mint on a separate machine. Let me know if you need further info :)

    opened by NGRhodes 0
  • Media Keys not working (Ubuntu, .deb file)

    Media Keys not working (Ubuntu, .deb file)

    Hey !

    Just started using this app today, you're a godsend for building it ! The fact that Deezer still doesn't have official Linux support is really sad...

    App is working really well, didn't try the offline features yet, but I can already tell you that media keys (Razer Blackwidow Elite) do not work (they work when using Deezer in the browser), neither do the controls from the app tray. Although the controls in the notification center do (I'm using them for the moment to play/pause and switch tracks)

    I'm using the latest release installed from a .deb file (deezer-desktop_5.30.220_amd64.deb) on Ubuntu 20.04.4.

    Let me know if you need anything to debug :)

    opened by 3rgo 2
  • Album in track metadata is empty

    Album in track metadata is empty

    I try to get metadata with playerctl, there is song title and artist, but album stays empty.

    playerctl metadata
    chromium xesam:album               
    chromium xesam:artist              Some Artist
    chromium xesam:title               Some Title
    

    As I have seen it is processed here in renderer.js:

                      track = {
                        title:
                          song.SNG_TITLE ||
                          song.LIVESTREAM_TITLE ||
                          song.EPISODE_TITLE ||
                          "",
                        artist:
                          song.ART_NAME ||
                          song.LIVESTREAM_TITLE ||
                          song.SHOW_NAME ||
                          "",
                        album: song.ALB_TITLE,
                        coverUrl: defaultCover,
                      },
    

    Any idea how to solve? Note that I have compiled from source, but I don't have experience in js or node.

    bug 
    opened by joerg65 4
  • New features for Systray Icons

    New features for Systray Icons

    In the flatpak.ref the Systray Icon is only shown after suspend. Additionally it would be nice to give the systray a deezer logo. And lastly it would be nice to have options inside the app to change settings on systray-behaviour (if that is possible from your side?)

    opened by muffinmaster1024 1
Releases(v5.30.350-1)
Owner
Aurélien Hamy
A fish swimming in acid.
Aurélien Hamy
A program that analyzes data from inertia measurement units installeed in aircraft and generates g-exceedance curves

A program that analyzes data from inertia measurement units installeed in aircraft and generates g-exceedance curves

Pooya 1 Nov 23, 2021
A complex language with high level programming and moderate syntax.

zsq a complex language with high level programming and moderate syntax.

an aspirin 6 Jun 25, 2022
HungryBall to prosta gra, w której gracz wciela się w piłkę.

README POLSKI Opis gry HungryBall to prosta gra, w której gracz wciela się w piłkę. Sterowanie odbywa się za pomocą przycisków w, a, s i d lub opcjona

Karol 1 Nov 24, 2021
Source-o-grapher is a tool built with the aim to investigate software resilience aspects of Open Source Software (OSS) projects.

Source-o-grapher is a tool built with the aim to investigate software resilience aspects of Open Source Software (OSS) projects.

Aristotle University 5 Jun 28, 2022
Python calculator made with tkinter package

Python-Calculator Python calculator made with tkinter package. works both on Visual Studio Code Or Any Other Ide Or You Just Copy paste The Same Thing

Pro_Gamer_711 1 Nov 11, 2021
Simple and easy to use python API for the COVID registration booking system of the math department @ unipd (torre archimede)

Simple and easy to use python API for the COVID registration booking system of the math department @ unipd (torre archimede). This API creates an interface with the official browser, with more useful

Guglielmo Camporese 4 Dec 24, 2021
jonny is a stack based programming language

jonny-lang jonny is a stack based programming language also compiling jonny files currently doesnt work on windows you can probably compile jonny file

1 Nov 24, 2021
PwnDatas-DB-Project(PDDP)

PwnDatas-DB-Project PwnDatas-DB-Project(PDDP) 安裝依賴: pip3 install pymediawiki 使用: cd /opt git https://github.com/JustYoomoon/PwnDatas-DB-Project.git c

21 Jul 16, 2021
Decipher using Markov Chain Monte Carlo

Decipher using Markov Chain Monte Carlo

Science étonnante 43 Dec 24, 2022
UFDR2DIR - A script to convert a Cellebrite UFDR to the original file structure

UFDR2DIR A script to convert a Cellebrite UFDR to it's original file and directo

DFIRScience 25 Oct 24, 2022
Generate Openbox Menus from a easy to write configuration file.

openbox-menu-generator Generate Openbox Menus from a easy to write configuration file. Example Configuration: ('#' indicate comments but not implement

3 Jul 14, 2022
A Python application that simulates the rolling of a dice, randomly picking one of the 6 faces and then displaying it.

dice-roller-app This is an application developed in Python that shuffles between the 6 faces of a dice, using buttons to shuffle and close the applica

Paddy Costelloe 0 Jul 20, 2021
Sequence clustering and database creation using mmseqs, from local fasta files

Sequence clustering and database creation using mmseqs, from local fasta files

Ana Julia Velez Rueda 3 Oct 27, 2022
A Python tool to check ASS subtitles for common mistakes and errors.

A Python tool to check ASS subtitles for common mistakes and errors.

1 Dec 18, 2021
El_Binario - A converter for Binary, Decimal, Hexadecimal and Octal numbers

El_Binario El_Binario es un conversor de números Binarios, Decimales, Hexadecima

2 Jan 28, 2022
An end-to-end Python-based Infrastructure as Code framework for network automation and orchestration.

Nectl An end-to-end Python-based Infrastructure as Code framework for network automation and orchestration. Features Data modelling and validation. Da

Adam Kirchberger 15 Oct 14, 2022
This is an implementation of NeuronJ work with python.

NeuronJ This is an implementation of NeuronJ work with python. NeuronJ is a plug-in for ImageJ that allows you to create and edit neurons masks. Image

Mohammad Mahdi Samei 3 Aug 28, 2022
FollowSpot is a comprehensive audition tracking fullstack web application for entertainment industry professionals.

FollowSpot is a comprehensive audition tracking fullstack web application for entertainment industry professionals. This app allows users to store information/media for all of their auditions while a

Jen Brissman 9 Jul 12, 2022
Beginner Projects A couple of beginner projects here

Beginner Projects A couple of beginner projects here, listed from easiest to hardest :) selector.py: simply a random selector to tell me who to faceti

Kylie 272 Jan 07, 2023
Given an array of integers, calculate the ratios of its elements that are positive, negative, and zero.

Given an array of integers, calculate the ratios of its elements that are positive, negative, and zero. Print the decimal value of each fraction on a new line with places after the decimal.

Shruti Dhave 2 Nov 29, 2021