biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / applications / video / lbry / default.nix
blobfe4100ebef57e42420bbebabd8b359564676e82e
1 { lib, fetchurl, appimageTools}:
3 appimageTools.wrapAppImage rec {
4   pname = "lbry-desktop";
5   version = "0.53.9";
7   # Fetch from GitHub Releases and extract
8   src = appimageTools.extract {
9     inherit pname version;
10     src = fetchurl {
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=";
14     };
15   };
17   # At runtime, Lbry likes to have access to Ffmpeg
18   extraPkgs = pkgs: [ pkgs.ffmpeg ];
20   # General fixup
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
30   '';
32   meta = with lib; {
33     description = "Browser and wallet for LBRY, the decentralized, user-controlled content marketplace";
34     longDescription = ''
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.
37     '';
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" ];
44     mainProgram = "lbry";
45   };