45 lines
1.3 KiB
Nix
45 lines
1.3 KiB
Nix
|
{ lib
|
||
|
, fetchurl
|
||
|
, makeWrapper
|
||
|
, appimageTools
|
||
|
, libappindicator-gtk3
|
||
|
, pkgs
|
||
|
}:
|
||
|
let
|
||
|
pname = "filen-desktop";
|
||
|
version = "latest";
|
||
|
|
||
|
src = pkgs.fetchurl {
|
||
|
url =
|
||
|
"https://cdn.filen.io/@filen/desktop/release/latest/Filen_linux_x86_64.AppImage";
|
||
|
sha256 = "sha256-keaD5PUjkoFrFTCuap4DvmYq5X3Tjnq+njtiLgAZ9W8=";
|
||
|
};
|
||
|
|
||
|
appimageContents = appimageTools.extractType2 { inherit pname version src; };
|
||
|
name = "filendesktop";
|
||
|
# Needed for the tray to function
|
||
|
libPath = lib.makeLibraryPath [ libappindicator-gtk3 ];
|
||
|
in
|
||
|
appimageTools.wrapType2 rec {
|
||
|
inherit pname version src name;
|
||
|
|
||
|
extraInstallCommands = ''
|
||
|
source "${pkgs.makeWrapper}/nix-support/setup-hook"
|
||
|
wrapProgram $out/bin/${pname} \
|
||
|
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-features=WaylandWindowDecorations}}" \
|
||
|
--prefix LD_LIBRARY_PATH : ${libPath}
|
||
|
|
||
|
install -m 444 -D ${appimageContents}/@${name}.desktop $out/share/applications/${pname}.desktop
|
||
|
substituteInPlace $out/share/applications/${pname}.desktop \
|
||
|
--replace 'Exec=AppRun' 'Exec=filen-desktop'
|
||
|
cp -r ${appimageContents}/usr/share/icons $out/share
|
||
|
'';
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "Desktop client for Filen.io";
|
||
|
homepage = "https://filen.io/";
|
||
|
license = licenses.agpl3Plus;
|
||
|
platforms = [ "x86_64-linux" ];
|
||
|
};
|
||
|
}
|