diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 8f447405c2ad..cbb7ef09dfbc 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2737,6 +2737,12 @@ githubId = 18535642; name = "Emily"; }; + enderger = { + email = "endergeryt@gmail.com"; + github = "enderger"; + githubId = 36283171; + name = "Daniel"; + }; endocrimes = { email = "dani@builds.terrible.systems"; github = "endocrimes"; diff --git a/pkgs/applications/video/lbry/default.nix b/pkgs/applications/video/lbry/default.nix new file mode 100644 index 000000000000..479616ee3ef5 --- /dev/null +++ b/pkgs/applications/video/lbry/default.nix @@ -0,0 +1,49 @@ +{ lib, fetchurl, appimageTools}: + +let + pname = "lbry-desktop"; + version = "0.50.2"; +in appimageTools.wrapAppImage rec { + name = "${pname}-${version}"; + + # Fetch from GitHub Releases and extract + src = appimageTools.extract { + inherit name; + src = fetchurl { + url = "https://github.com/lbryio/lbry-desktop/releases/download/v${version}/LBRY_${version}.AppImage"; + # Gotten from latest-linux.yml + sha512 = "br6HvVRz+ybmAhmQh3vOC5wgLmOCVrGHDn59ueWk6rFoKOCbm8WdmdadOZvHeN1ld2nlvPzEy+KXMOEfF1LeQg=="; + }; + }; + + # At runtime, Lbry likes to have access to Ffmpeg + extraPkgs = pkgs: with pkgs; [ + ffmpeg + ]; + + # General fixup + extraInstallCommands = '' + # Firstly, rename the executable to lbry for convinence + mv $out/bin/${name} $out/bin/lbry + + # Now, install assets such as the desktop file and icons + install -m 444 -D ${src}/lbry.desktop -t $out/share/applications + substituteInPlace $out/share/applications/lbry.desktop \ + --replace 'AppRun' '$out/bin/lbry' + cp -r ${src}/usr/share/icons $out/share + ''; + + meta = with lib; { + description = "A browser and wallet for LBRY, the decentralized, user-controlled content marketplace"; + longDescription = '' + The LBRY app is a graphical browser for the decentralized content marketplace provided by the LBRY protocol. + It is essentially the lbry daemon bundled with a UI using Electron. + ''; + license = licenses.mit; + homepage = "https://lbry.com/"; + downloadPage = "https://lbry.com/get/"; + changelog = "https://github.com/lbryio/lbry-desktop/blob/master/CHANGELOG.md"; + maintainers = with maintainers; [ enderger ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6dd393492c8d..10a4c799ebef 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24054,6 +24054,8 @@ in lbdb = callPackage ../tools/misc/lbdb { abook = null; gnupg = null; goobook = null; khard = null; mu = null; }; + lbry = callPackage ../applications/video/lbry { }; + lbzip2 = callPackage ../tools/compression/lbzip2 { }; lci = callPackage ../applications/science/logic/lci {};