2025-07-16 16:08:55 +03:00

68 lines
1.2 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
glib,
intltool,
libfm,
libX11,
pango,
pkg-config,
wrapGAppsHook3,
adwaita-icon-theme,
withGtk3 ? true,
gtk2,
gtk3,
gettext,
nix-update-script,
}:
let
libfm' = libfm.override { inherit withGtk3; };
gtk = if withGtk3 then gtk3 else gtk2;
inherit (lib) optional;
in
stdenv.mkDerivation (finalAttrs: {
pname = "pcmanfm";
version = "1.4.0";
src = fetchFromGitHub {
owner = "lxde";
repo = "pcmanfm";
tag = "${finalAttrs.version}";
hash = "sha256-4kJDCnld//Vbe2KbrLoYZJ/dutagY/GImoOnbpQIdDY=";
};
nativeBuildInputs = [
pkg-config
wrapGAppsHook3
intltool
autoreconfHook
];
buildInputs = [
glib
gtk
libfm'
libX11
pango
adwaita-icon-theme
];
env.ACLOCAL = "aclocal -I ${gettext}/share/gettext/m4";
configureFlags = optional withGtk3 "--with-gtk=3";
passthru.updateScript = nix-update-script { };
meta = {
homepage = "https://blog.lxde.org/category/pcmanfm/";
license = lib.licenses.gpl2Plus;
description = "File manager with GTK interface";
maintainers = [ lib.maintainers.ttuegel ];
platforms = lib.platforms.linux;
mainProgram = "pcmanfm";
};
})