diff options
Diffstat (limited to 'nixpkgs/pkgs/by-name/cl/clamtk/package.nix')
-rw-r--r-- | nixpkgs/pkgs/by-name/cl/clamtk/package.nix | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/cl/clamtk/package.nix b/nixpkgs/pkgs/by-name/cl/clamtk/package.nix new file mode 100644 index 000000000000..b34850c92599 --- /dev/null +++ b/nixpkgs/pkgs/by-name/cl/clamtk/package.nix @@ -0,0 +1,77 @@ +{ lib +, perlPackages +, fetchFromGitHub +, wrapGAppsHook +, gobject-introspection +, perl +, clamav +}: + +perlPackages.buildPerlPackage rec { + pname = "clamtk"; + version = "6.18"; + + src = fetchFromGitHub { + owner = "dave-theunsub"; + repo = "clamtk"; + rev = "v${version}"; + hash = "sha256-ClBsBXbGj67zgrkA9EjgK7s3OmXOJA+xV5xLGOcMsbI="; + }; + + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; + buildInputs = [ perl clamav ]; + propagatedBuildInputs = with perlPackages; [ Glib LWP LWPProtocolHttps TextCSV JSON LocaleGettext Gtk3 ]; + + preConfigure = "touch Makefile.PL"; + # no tests implemented + doCheck = false; + outputs = [ "out" "man" ]; + + postPatch = '' + # Set correct nix paths in perl scripts + substituteInPlace lib/App.pm \ + --replace /usr/bin/freshclam ${lib.getBin clamav}/bin/freshclam \ + --replace /usr/bin/sigtool ${lib.getBin clamav}/bin/sigtool \ + --replace /usr/bin/clamscan ${lib.getBin clamav}/bin/clamscan \ + --replace /usr/bin/clamdscan ${lib.getBin clamav}/bin/clamdscan \ + --replace /usr/share/pixmaps $out/share/pixmaps + + # We want to catch the crontab wrapper on NixOS and the + # System crontab on non-NixOS so we don't give a full path. + substituteInPlace lib/Schedule.pm \ + --replace "( -e '/usr/bin/crontab' )" "(1)" \ + --replace /usr/bin/crontab crontab + ''; + + installPhase = '' + runHook preInstall + + install -Dm755 clamtk -t $out/bin + install -Dm444 lib/*.pm -t $out/lib/perl5/site_perl/ClamTk + install -Dm444 clamtk.desktop -t $out/share/applications + install -Dm444 images/* -t $out/share/pixmaps + install -Dm444 clamtk.1.gz -t $out/share/man/man1 + install -Dm444 {CHANGES,LICENSE,*.md} -t $out/share/doc/clamtk + + runHook postInstall + ''; + + preFixup = '' + gappsWrapperArgs+=( + --prefix PERL5LIB : $PERL5LIB + --set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" + ) + ''; + + meta = with lib; { + description = '' + Easy to use, lightweight front-end for ClamAV (Clam Antivirus). + ''; + mainProgram = "clamtk"; + license = licenses.gpl1Plus; + homepage = "https://github.com/dave-theunsub/clamtk"; + platforms = platforms.linux; + maintainers = with maintainers; [ chewblacka ShamrockLee ]; + }; + +} |