summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMichiel Leenaars <ml.software@leenaa.rs>2018-08-24 12:22:05 +0200
committerMichiel Leenaars <ml.software@leenaa.rs>2018-08-24 23:01:15 +0200
commit4768d2e13a4572826e169c331b2a96ae92d02dae (patch)
tree5ce30c1364b972cbfeffc62594578ef174536b04 /pkgs
parent1bc48e63fd5bbf15aaef1813f31c1d237ae200f3 (diff)
downloadnixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.tar
nixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.tar.gz
nixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.tar.bz2
nixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.tar.lz
nixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.tar.xz
nixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.tar.zst
nixlib-4768d2e13a4572826e169c331b2a96ae92d02dae.zip
todoman: init at 3.4.0
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/office/todoman/default.nix56
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/applications/office/todoman/default.nix b/pkgs/applications/office/todoman/default.nix
new file mode 100644
index 000000000000..65fa7e061fee
--- /dev/null
+++ b/pkgs/applications/office/todoman/default.nix
@@ -0,0 +1,56 @@
+{ stdenv, python3, glibcLocales }:
+
+let
+  inherit (python3.pkgs) buildPythonApplication fetchPypi;
+in
+buildPythonApplication rec {
+  pname = "todoman";
+  version = "3.4.0";
+  name = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "09441fdrwz2irsbrxnpwys51372z6rn6gnxn87p95r3fv9gmh0fw";
+  };
+
+    LOCALE_ARCHIVE = stdenv.lib.optionalString stdenv.isLinux
+      "${glibcLocales}/lib/locale/locale-archive";
+    LANG = "en_US.UTF-8";
+    LC_TYPE = "en_US.UTF-8";
+
+  buildInputs = [ glibcLocales ];
+  propagatedBuildInputs = with python3.pkgs;
+    [ atomicwrites click click-log configobj humanize icalendar parsedatetime
+      python-dateutil pyxdg tabulate urwid ];
+
+  checkInputs = with python3.pkgs;
+    [ flake8 flake8-import-order freezegun hypothesis pytest pytestrunner pytestcov ];
+
+  makeWrapperArgs = [ "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
+                      "--set CHARSET en_us.UTF-8" ];
+
+  preCheck = ''
+    # Remove one failing test that only checks whether the command line works
+    rm tests/test_main.py
+  '';
+
+  meta = {
+    homepage = https://github.com/pimutils/todoman;
+    description = "Standards-based task manager based on iCalendar";
+    longDescription = ''
+      Todoman is a simple, standards-based, cli todo (aka: task) manager. Todos
+      are stored into icalendar files, which means you can sync them via CalDAV
+      using, for example, vdirsyncer.
+
+      Todos are read from individual ics files from the configured directory.
+      This matches the vdir specification.  There’s support for the most common TODO
+      features for now (summary, description, location, due date and priority) for
+      now.  Runs on any Unix-like OS. It’s been tested on GNU/Linux, BSD and macOS.
+      Unsupported fields may not be shown but are never deleted or altered.
+
+      Todoman is part of the pimutils project
+    '';
+    license = stdenv.lib.licenses.isc;
+    maintainers = with stdenv.lib.maintainers; [ leenaars ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 34d5ae13dc77..cd92d952c23a 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -18784,6 +18784,8 @@ with pkgs;
 
   todo-txt-cli = callPackage ../applications/office/todo.txt-cli { };
 
+  todoman = callPackage ../applications/office/todoman { };
+
   toggldesktop = libsForQt5.callPackage ../applications/misc/toggldesktop { };
 
   tomahawk = callPackage ../applications/audio/tomahawk {