2017-01-10 21:10:44 +01:00
|
|
|
{fetchFromGitHub , stdenv, makeWrapper, python3, gtk3, libwnck3 }:
|
2016-11-09 21:26:25 +01:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2017-06-16 15:01:49 +02:00
|
|
|
name = "clipster-${version}";
|
2017-12-31 17:20:53 +01:00
|
|
|
version = "1.4.1";
|
2016-11-09 21:26:25 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "mrichar1";
|
|
|
|
repo = "clipster";
|
2017-06-16 15:01:49 +02:00
|
|
|
rev = "${version}";
|
2017-12-31 17:20:53 +01:00
|
|
|
sha256 = "16gdrm985qwbrsmsqjfyh33glcmx678abl2jpq49djk2qrbhm49k";
|
2016-11-09 21:26:25 +01:00
|
|
|
};
|
|
|
|
|
2017-01-10 21:10:44 +01:00
|
|
|
pythonEnv = python3.withPackages(ps: with ps; [ pygobject3 ]);
|
2016-11-09 21:26:25 +01:00
|
|
|
|
2017-03-22 20:29:40 +01:00
|
|
|
buildInputs = [ pythonEnv gtk3 libwnck3 ];
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
2016-11-09 21:26:25 +01:00
|
|
|
|
|
|
|
installPhase = ''
|
2017-01-10 21:10:44 +01:00
|
|
|
sed -i 's/python/python3/g' clipster
|
2016-11-09 21:26:25 +01:00
|
|
|
mkdir -p $out/bin/
|
|
|
|
cp clipster $out/bin/
|
|
|
|
wrapProgram "$out/bin/clipster" \
|
|
|
|
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH"
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
|
|
description = "lightweight python clipboard manager";
|
|
|
|
longDescription = ''
|
|
|
|
Clipster was designed to try to add a good selection of useful features, while avoiding bad design decisions or becoming excessively large.
|
|
|
|
Its feature list includes:
|
|
|
|
- Event driven, rather than polling. More efficient, helps with power management.
|
|
|
|
- Control over when it write to disk, for similar reasons.
|
|
|
|
- Command-line options/config for everything.
|
|
|
|
- No global keybindings - that's the job of a Window Manager
|
|
|
|
- Sensible handling of unusual clipboard events. Some apps (Chrome, Emacs) trigger a clipboard 'update event' for every character you select, rather than just one event when you stop selecting.
|
|
|
|
- Preserves the last item in clipboard after an application closes. (Many apps clear the clipboard on exit).
|
|
|
|
- Minimal dependencies, no complicated build/install requirements.
|
|
|
|
- utf-8 support
|
|
|
|
- Proper handling of embedded newlines and control codes.
|
|
|
|
- Smart matching of urls, emails, regexes. (extract_*)
|
|
|
|
- Option to synchronise the SELECTION and CLIPBOARD clipboards. (sync_selections)
|
|
|
|
- Option to track one or both clipboards. (active_selections)
|
|
|
|
- Option to ignore clipboard updates form certain applications. (filter_classes)
|
|
|
|
- Ability to delete items in clipboard history.
|
|
|
|
'';
|
|
|
|
license = licenses.agpl3;
|
|
|
|
homepage = https://github.com/mrichar1/clipster;
|
|
|
|
platforms = platforms.linux;
|
2017-04-01 17:16:51 +02:00
|
|
|
maintainers = [ maintainers.magnetophon ];
|
2016-11-09 21:26:25 +01:00
|
|
|
};
|
|
|
|
}
|