1 { lib, fetchurl, appimageTools}:
3 appimageTools.wrapAppImage rec {
4 pname = "lbry-desktop";
7 # Fetch from GitHub Releases and extract
8 src = appimageTools.extract {
11 url = "https://github.com/lbryio/lbry-desktop/releases/download/v${version}/LBRY_${version}.AppImage";
12 # Gotten from latest-linux.yml
13 hash = "sha256-FkqIazE4eIEobYRBstXfPWh6MTCaNcCLk14yDGC4rRk=";
17 # At runtime, Lbry likes to have access to Ffmpeg
18 extraPkgs = pkgs: [ pkgs.ffmpeg ];
21 extraInstallCommands = ''
22 # Firstly, rename the executable to lbry for convinence
23 mv $out/bin/${pname} $out/bin/lbry
25 # Now, install assets such as the desktop file and icons
26 install -m 444 -D ${src}/lbry.desktop -t $out/share/applications
27 substituteInPlace $out/share/applications/lbry.desktop \
28 --replace 'Exec=AppRun' 'Exec=lbry'
29 cp -r ${src}/usr/share/icons $out/share
33 description = "Browser and wallet for LBRY, the decentralized, user-controlled content marketplace";
35 The LBRY app is a graphical browser for the decentralized content marketplace provided by the LBRY protocol.
36 It is essentially the lbry daemon bundled with a UI using Electron.
38 license = licenses.mit;
39 homepage = "https://lbry.com/";
40 downloadPage = "https://lbry.com/get/";
41 changelog = "https://github.com/lbryio/lbry-desktop/blob/master/CHANGELOG.md";
42 maintainers = with maintainers; [ enderger ];
43 platforms = [ "x86_64-linux" ];