nixpkgs-suyu/pkgs/tools/misc/clipster/default.nix
Bart Brouns 66589e4dc7 clipster: fixup
the previous version is broken, when you run the daemon, it says:

```
Traceback (most recent call last):
  File "/nix/store/bzxnrc2lzcd8d8zbfx65vxypijjkhya6-clipster-1.4.1/bin/.clipster-wrapped", line 21, in <module>
    require_version("Gtk", "3.0")
  File "/nix/store/s5a6d9v9m939kw6ih9mq9v2bcnbi7cdv-python3-3.6.4-env/lib/python3.6/site-packages/gi/__init__.py", line 130, in require_version
    raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace Gtk not available
```
2018-01-10 21:08:58 +01:00

50 lines
2.1 KiB
Nix

{fetchFromGitHub , stdenv, python3, gtk3, libwnck3,
gobjectIntrospection, wrapGAppsHook }:
stdenv.mkDerivation rec {
name = "clipster-${version}";
version = "1.4.1";
src = fetchFromGitHub {
owner = "mrichar1";
repo = "clipster";
rev = "${version}";
sha256 = "16gdrm985qwbrsmsqjfyh33glcmx678abl2jpq49djk2qrbhm49k";
};
pythonEnv = python3.withPackages(ps: with ps; [ pygobject3 ]);
buildInputs = [ pythonEnv gtk3 libwnck3 gobjectIntrospection wrapGAppsHook ];
installPhase = ''
sed -i 's/python/python3/g' clipster
mkdir -p $out/bin/
cp clipster $out/bin/
'';
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;
maintainers = [ maintainers.magnetophon ];
};
}