1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
{ lib, stdenv, fetchurl, file, which, intltool, gobject-introspection,
findutils, xdg_utils, dconf, gtk3, python3Packages,
wrapGAppsHook
}:
python3Packages.buildPythonApplication rec {
pname = "catfish";
version = "1.4.13";
src = fetchurl {
url = "https://archive.xfce.org/src/apps/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "0fg89946z6n8njxn4mv29jksw8yavg8vypsljn9031pjwl3fmh2q";
};
nativeBuildInputs = [
python3Packages.distutils_extra
file
which
intltool
gobject-introspection # for setup hook populating GI_TYPELIB_PATH
wrapGAppsHook
];
buildInputs = [
gtk3
dconf
python3Packages.pyxdg
python3Packages.ptyprocess
python3Packages.pycairo
gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
];
propagatedBuildInputs = [
python3Packages.dbus-python
python3Packages.pygobject3
python3Packages.pexpect
xdg_utils
findutils
];
# Explicitly set the prefix dir in "setup.py" because setuptools is
# not using "$out" as the prefix when installing catfish data. In
# particular the variable "__catfish_data_directory__" in
# "catfishconfig.py" is being set to a subdirectory in the python
# path in the store.
postPatch = ''
sed -i "/^ if self.root/i\\ self.prefix = \"$out\"" setup.py
'';
# Disable check because there is no test in the source distribution
doCheck = false;
meta = with lib; {
homepage = "https://docs.xfce.org/apps/catfish/start";
description = "Handy file search tool";
longDescription = ''
Catfish is a handy file searching tool. The interface is
intentionally lightweight and simple, using only GTK 3.
You can configure it to your needs by using several command line
options.
'';
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.romildo ];
};
}
|