nixpkgs/pkgs/by-name/an/anytype/package.nix
2024-05-01 05:42:13 +00:00

41 lines
1.5 KiB
Nix

{ lib, fetchurl, appimageTools, makeWrapper }:
let
pname = "anytype";
version = "0.40.8";
name = "Anytype-${version}";
src = fetchurl {
url = "https://github.com/anyproto/anytype-ts/releases/download/v${version}/${name}.AppImage";
name = "Anytype-${version}.AppImage";
hash = "sha256-Rvl52nKrOWQfT2qgssEpFjQCjva54zPvm6aEXmO0NTc=";
};
appimageContents = appimageTools.extractType2 { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
++ [ pkgs.libsecret ];
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
source "${makeWrapper}/nix-support/setup-hook"
wrapProgram $out/bin/${pname} \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
install -m 444 -D ${appimageContents}/anytype.desktop -t $out/share/applications
substituteInPlace $out/share/applications/anytype.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
for size in 16 32 64 128 256 512 1024; do
install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/''${size}x''${size}/apps/anytype.png \
$out/share/icons/hicolor/''${size}x''${size}/apps/anytype.png
done
'';
meta = with lib; {
description = "P2P note-taking tool";
homepage = "https://anytype.io/";
license = licenses.unfree;
maintainers = with maintainers; [ running-grass ];
platforms = [ "x86_64-linux" ];
};
}