mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-11 16:23:26 +00:00
ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
89 lines
2.6 KiB
Nix
89 lines
2.6 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchzip
|
|
, fetchpatch
|
|
, makeWrapper
|
|
, makeDesktopItem
|
|
, copyDesktopItems
|
|
, tk
|
|
, groff
|
|
, rman
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "tkman";
|
|
version = "2.2";
|
|
|
|
src = fetchzip {
|
|
url = "mirror://sourceforge/tkman/tkman-${finalAttrs.version}.tar.gz";
|
|
hash = "sha256-S4ffz+7zmVy9+isz/8q+FV4wF5Rw2iL1ftY8RsJjRLs=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
makeWrapper
|
|
copyDesktopItems
|
|
];
|
|
|
|
patches = [(fetchpatch {
|
|
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/app-text/tkman/files/tkman-CVE-2008-5137.diff";
|
|
hash = "sha256-l97SY2/YnMgzHYKnVYCVJKV7oGLN1hXNpeHFlLVzTMA=";
|
|
})];
|
|
|
|
makeFlags = [
|
|
"BINDIR=$(out)/bin"
|
|
"WISH=${tk}/bin/wish"
|
|
"rman=${rman}/bin/rman"
|
|
# TODO package glimpse https://github.com/gvelez17/glimpse
|
|
"glimpse=\"\""
|
|
];
|
|
|
|
preBuild = ''
|
|
makeFlagsArray+=(
|
|
'manformat="${groff}/bin/groff -te -Tlatin1 -mandoc $$manx(longtmp) -"'
|
|
)
|
|
'';
|
|
|
|
preInstall = ''
|
|
mkdir -p $out/bin
|
|
'';
|
|
|
|
postInstall = ''
|
|
wrapProgram $out/bin/tkman \
|
|
--run 'export MANPATH="$(manpath)"'
|
|
rm $out/bin/retkman # doesn't work
|
|
install -Dm644 contrib/TkMan.gif $out/share/icons/hicolor/64x64/apps/tkman.gif
|
|
'';
|
|
|
|
desktopItems = [(makeDesktopItem {
|
|
name = "tkman";
|
|
desktopName = "TkMan";
|
|
comment = "Graphical man page and info viewer";
|
|
exec = "tkman %f";
|
|
icon = "tkman";
|
|
terminal = false;
|
|
type = "Application";
|
|
categories = [ "Utility" ];
|
|
})];
|
|
|
|
meta = with lib; {
|
|
description = "Graphical, hypertext manual page and Texinfo browser for UNIX";
|
|
mainProgram = "tkman";
|
|
longDescription = ''
|
|
TkMan is a graphical, hypertext manual page and Texinfo browser for UNIX.
|
|
TkMan boasts hypertext links, unmatched online text formatting and display
|
|
quality, (optional) outline view of man pages, high quality display and
|
|
superior navigational interface to Texinfo documents, a novel information
|
|
visualization mechanism called Notemarks, full text search among man pages
|
|
and Texinfo, incremental and regular expression search within pages,
|
|
regular expression search within Texinfo that shows all matches (not just
|
|
the next), robustly attached yellow highlight annotations, a shortcut/hot
|
|
list, lists of all pages in user configurable volumes, a comprehensive
|
|
Preferences panel, and man page versioning support, among many other features.
|
|
'';
|
|
homepage = "https://tkman.sourceforge.net/index.html";
|
|
license = licenses.artistic1;
|
|
platforms = platforms.unix;
|
|
maintainers = with maintainers; [ fgaz ];
|
|
};
|
|
})
|