about summary refs log tree commit diff
path: root/pkgs/top-level/emacs-packages.nix
diff options
context:
space:
mode:
authorArseniy Seroka <jagajaga@users.noreply.github.com>2015-11-13 17:38:57 +0300
committerArseniy Seroka <jagajaga@users.noreply.github.com>2015-11-13 17:38:57 +0300
commit6a192b4e986993dbae88fa0cffcd4074e5d563a6 (patch)
tree154808b6f4c06cc7503bf93d31e39ed93168f6fa /pkgs/top-level/emacs-packages.nix
parent653143b4b14ed766bf1f0ec672f49c01147e1da4 (diff)
parent58a8485090aee5a9102a1b17916e9782e29edf50 (diff)
downloadnixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.tar
nixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.tar.gz
nixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.tar.bz2
nixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.tar.lz
nixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.tar.xz
nixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.tar.zst
nixlib-6a192b4e986993dbae88fa0cffcd4074e5d563a6.zip
Merge pull request #10997 from oxij/emacs-packages-metas
emacs-packages: fix metas, add descriptions, split git-rebase from magit
Diffstat (limited to 'pkgs/top-level/emacs-packages.nix')
-rw-r--r--pkgs/top-level/emacs-packages.nix325
1 files changed, 258 insertions, 67 deletions
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index 4d052677a4cf..6487b80acffe 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -264,7 +264,10 @@ let self = _self // overrides;
       sha256 = "14pjsb026mgjf6l3dggy255knr7c1vfmgb6kgafmkzvr96aglcdc";
     };
     files = [ "autotetris-mode.el" ];
-    meta =  { license = unlicense; };
+    meta = {
+      description = "For those who are too busy to play Emacs tetris";
+      license = unlicense;
+    };
   };
 
   avy = melpaBuild rec {
@@ -276,7 +279,10 @@ let self = _self // overrides;
       rev    = version;
       sha256 = "15xfgmsy4sqs3cmk7dwmj21g3r9dqb3fra7n7ly306bwgzh4vm8k";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Advanced cursor movement for Emacs that uses decision-trees for navigation";
+      license = gpl3Plus;
+    };
   };
 
   bind-key = melpaBuild {
@@ -416,7 +422,7 @@ let self = _self // overrides;
       sha256 = "1njv5adcm96kdch0jb941l8pm51yfdx7mlz83y0pq6jlzjs9mwaa";
     };
     meta = {
-      description = "A modern list library for Emacs";
+      description = "A modern list library for Emacs (think Haskell's Prelude in elisp)";
       license = gpl3Plus;
     };
   };
@@ -523,7 +529,6 @@ let self = _self // overrides;
       rev    = "v${version}";
       sha256 = "1dsa3r39ip20ddbw0m9vq8z3r4ahrxvb37adyqi4mbdgyr6fq6sw";
     };
-
     meta = {
       description = "Minor mode for defining and querying search engines through Emacs";
       license = gpl3Plus;
@@ -539,7 +544,14 @@ let self = _self // overrides;
       rev    = "63c78c08e345455f3d4daa844fdc551a2c18024e";
       sha256 = "04a2aq8dj2cmy77vw142wcmnjvqdbdsp6z0psrzz2qw0b0am03li";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Emacs Package Library";
+      longDescription = ''
+        The purpose of this library is to wrap all the quirks and hassle of
+        package.el into a sane API.
+      '';
+      license = gpl3Plus;
+    };
   };
 
   evil-god-state = melpaBuild rec {
@@ -552,7 +564,10 @@ let self = _self // overrides;
       sha256 = "16v6dpw1hibrkf9hga88gv5axvp1pajd67brnh5h4wpdy9qvwgyy";
     };
     packageRequires = [ evil god-mode ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "An evil-mode state for using Emacs god-mode";
+      license = gpl3Plus;
+    };
   };
 
   evil-indent-textobject = melpaBuild rec {
@@ -627,7 +642,10 @@ let self = _self // overrides;
       rev    = "e4af0e9b44738e7474c89ed895200b42e6541515";
       sha256 = "0lxikiqf1jik88lf889q4f4f8kdgg3npciz298x605nhbfd5snbd";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Slurp environment variables from shell to Emacs";
+      license = gpl3Plus;
+    };
   };
 
   expand-region = melpaBuild rec {
@@ -691,7 +709,10 @@ let self = _self // overrides;
       sha256 = "1ydk1wa7h7z9qw7prfvszxrmy2dyzsdij3xdy10rq197xnrw94wz";
     };
     packageRequires = [ dash let-alist pkg-info ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "On-the-fly syntax checking, intended as replacement for the older Flymake which is part of Emacs";
+      license = gpl3Plus;
+    };
   };
 
   flycheck-haskell = melpaBuild rec {
@@ -704,7 +725,10 @@ let self = _self // overrides;
       sha256 = "0143lcn6g46g7skm4r6lqq09s8mr3268rikbzlh65qg80rpg9frj";
     };
     packageRequires = [ dash flycheck haskell-mode let-alist pkg-info ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Improved Haskell support for Flycheck";
+      license = gpl3Plus;
+    };
   };
 
   flycheck-pos-tip = melpaBuild rec {
@@ -717,7 +741,10 @@ let self = _self // overrides;
       sha256 = "0b4x24aq0jh4j4bjv0fqyaz6hzh3gqf57k9763jj9rl32cc3dpnp";
     };
     packageRequires = [ flycheck popup ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Flycheck errors display in tooltip";
+      license = gpl3Plus;
+    };
   };
 
   ghc-mod = melpaBuild rec {
@@ -727,7 +754,10 @@ let self = _self // overrides;
     packageRequires = [ haskell-mode ];
     propagatedUserEnvPkgs = [ external.ghc-mod ];
     fileSpecs = [ "elisp/*.el" ];
-    meta = { license = bsd3; };
+    meta = {
+      description = "An extension of haskell-mode that provides completion of symbols and documentation browsing";
+      license = bsd3;
+    };
   };
 
   rtags = melpaBuild rec {
@@ -749,11 +779,12 @@ let self = _self // overrides;
       sha256 = "0psmr7749nzxln4b500sl3vrf24x3qijp12ir0i5z4x25k72hrlh";
     };
     meta = {
-      description = "Automatically commit to git after each save";
+      description = "Automatically commit to Git after each save";
       license = gpl3Plus;
     };
   };
 
+  # Deprecated in favor of git-commit
   git-commit-mode = melpaBuild rec {
     pname = "git-commit-mode";
     version = "1.0.0";
@@ -764,7 +795,7 @@ let self = _self // overrides;
       sha256 = "12a1xs3w2dp1a55qhc01dwjkavklgfqnn3yw85dhi4jdz8r8j7m0";
     };
     files = [ "git-commit-mode.el" ];
-    meta = { license = gpl3Plus; };
+    meta = git-commit.meta;
   };
 
   git-gutter = melpaBuild rec {
@@ -777,9 +808,15 @@ let self = _self // overrides;
       sha256 = "1xwdyjh13lp06yy9477013nj6idpsjr4ifg7hmyk5ai80axkgly7";
     };
     files = [ "git-gutter.el" ];
-    meta.license = gpl3Plus;
+    meta = {
+      description = "Show diff status of lines in a buffer relative to Git, mercurial, svn or bazaar repo's HEAD";
+      license = gpl3Plus;
+    };
   };
 
+  #TODO git-gutter-fringe
+
+  # Deprecated in favor of git-rebase
   git-rebase-mode = melpaBuild rec {
     pname = "git-rebase-mode";
     version = "1.0.0";
@@ -790,7 +827,7 @@ let self = _self // overrides;
       sha256 = "12a1xs3w2dp1a55qhc01dwjkavklgfqnn3yw85dhi4jdz8r8j7m0";
     };
     files = [ "git-rebase-mode.el" ];
-    meta = { license = gpl3Plus; };
+    meta = git-rebase.meta;
   };
 
   git-timemachine = melpaBuild rec {
@@ -803,7 +840,7 @@ let self = _self // overrides;
       sha256 = "1lm6rgbzbxnwfn48xr6bg05lb716grfr4nqm8lvjm64nabh5y9bh";
     };
     meta = {
-      description = "Step through historic revisions of git controlled files";
+      description = "Step through historic revisions of Git controlled files";
       license = gpl3Plus;
     };
   };
@@ -818,7 +855,10 @@ let self = _self // overrides;
       sha256 = "12a1xs3w2dp1a55qhc01dwjkavklgfqnn3yw85dhi4jdz8r8j7m0";
     };
     files = [ "gitattributes-mode.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Emacs major-mode for editing gitattributes files";
+      license = gpl3Plus;
+    };
   };
 
   gitconfig-mode = melpaBuild rec {
@@ -831,7 +871,10 @@ let self = _self // overrides;
       sha256 = "12a1xs3w2dp1a55qhc01dwjkavklgfqnn3yw85dhi4jdz8r8j7m0";
     };
     files = [ "gitconfig-mode.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Emacs major-mode for editing gitconfig files";
+      license = gpl3Plus;
+    };
   };
 
   gitignore-mode = melpaBuild rec {
@@ -844,7 +887,10 @@ let self = _self // overrides;
       sha256 = "12a1xs3w2dp1a55qhc01dwjkavklgfqnn3yw85dhi4jdz8r8j7m0";
     };
     files = [ "gitignore-mode.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Emacs major-mode for editing gitignore files";
+      license = gpl3Plus;
+    };
   };
 
   gntp = melpaBuild rec {
@@ -856,7 +902,10 @@ let self = _self // overrides;
       rev   = "v${version}";
       sha256 = "1nvyjjjydrimpxy4cpg90si7sr8lmldbhlcm2mx8npklp9pn5y3a";
     };
-    meta = { license = gpl2Plus; };
+    meta = {
+      description = "GNTP protocol implementation for Emacs";
+      license = gpl2Plus;
+    };
   };
 
   gnus = melpaBuild rec {
@@ -871,7 +920,10 @@ let self = _self // overrides;
     preBuild = ''
       (cd lisp && make gnus-load.el)
     '';
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "News and mail reader for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   god-mode = melpaBuild rec {
@@ -883,7 +935,10 @@ let self = _self // overrides;
       rev    = "6b7ae259a58ca1d7776aa4eca9f1092e4c0033e6";
       sha256 = "1amr98nq82g2d3f3f5wlqm9g38j64avygnsi9rrlbfqz4f71vq7x";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "A global minor mode for entering Emacs commands without modifier keys";
+      license = gpl3Plus;
+    };
   };
 
   goto-chg = melpaBuild rec {
@@ -895,7 +950,10 @@ let self = _self // overrides;
       sha256 = "0185vrzfdz6iwhmc22rjy0n7ppfppp2ddc8xl0vvbda79q6w3bp8";
     };
     files = [ "lib/goto-chg.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Goto last change in current buffer using Emacs undo information";
+      license = gpl3Plus;
+    };
   };
 
   haskell-mode = melpaBuild rec {
@@ -907,7 +965,10 @@ let self = _self // overrides;
       rev    = "v${version}";
       sha256 = "1mxr2cflgafcr8wkvgbq8l3wmc9qhhb7bn9zl1bkf10zspw9m58z";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Haskell language support for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   helm-swoop = melpaBuild rec {
@@ -920,7 +981,10 @@ let self = _self // overrides;
       sha256 = "0nq33ldhbvfbm6jnsxqdf3vwaqrsr2gprkzll081gcyl2s1x0l2m";
     };
     packageRequires = [ helm ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "An Emacs mode which constructs an editable grep for a buffer";
+      license = gpl3Plus;
+    };
   };
 
   helm = melpaBuild rec {
@@ -933,7 +997,10 @@ let self = _self // overrides;
       sha256 = "0n2kr6pyzcsi8pq6faxz2y8kicz1gmvj98fzzlq3a107dqqp25ay";
     };
     packageRequires = [ async ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "An incremental completion and selection narrowing framework for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   hi2 = melpaBuild rec {
@@ -945,7 +1012,10 @@ let self = _self // overrides;
       rev    = version;
       sha256 = "1s08sgbh5v59lqskd0s1dscs6dy7z5mkqqkabs3gd35agbfvbmlf";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Minor haskell-indentation mode for haskell-mode, 2nd try";
+      license = gpl3Plus;
+    };
   };
 
   highlight-indentation = melpaBuild rec {
@@ -981,7 +1051,10 @@ let self = _self // overrides;
       rev    = version;
       sha256 = "08iw95lyizcyf6cjl37fm8wvay0vsk9758pk9gq9f2xiafcchl7f";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Tie related Emacs commands into a family of short bindings with a common prefix";
+      license = gpl3Plus;
+    };
   };
 
   ibuffer-vc = melpaBuild rec {
@@ -993,7 +1066,10 @@ let self = _self // overrides;
       rev    = version;
       sha256 = "0bqdi5w120256g74k0j4jj81x804x1gcg4dxa74w3mb6fl5xlvs8";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Version control aware Emacs ibuffer mode";
+      license = gpl3Plus;
+    };
   };
 
   ido-ubiquitous = melpaBuild rec {
@@ -1006,7 +1082,7 @@ let self = _self // overrides;
       sha256 = "0wdjz3cqzrxhrk68g5gyvc9j2rb6f4yw00xbjgw9ldwlhmkwy5ja";
     };
     meta = {
-      description = "Does what you expected ido-everywhere to do in Emacs";
+      description = "Does what you expected ido-everywhere should do in Emacs";
       license = gpl3Plus;
     };
   };
@@ -1021,7 +1097,10 @@ let self = _self // overrides;
       sha256 = "0iwgbaq2797k1f7ql86i2pjfa67cha4s2v0mgmrd0qcgqkxsdq92";
     };
     packageRequires = [ prop-menu ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Idris language support for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   lcs = melpaBuild rec {
@@ -1034,7 +1113,10 @@ let self = _self // overrides;
       sha256 = "08dsv1dzgb9jx076ia7xbpyjpaxn1w87h6rzlb349spaydq7ih24";
     };
     fileSpecs = [ "lisp/lcs*.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Longest Common Sequence (LCS) library for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   let-alist = melpaBuild rec {
@@ -1048,7 +1130,10 @@ let self = _self // overrides;
     buildPhase = ''
       cp $src ${pname}-${version}.el
     '';
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Easily let-bind values of an assoc-list by their names";
+      license = gpl3Plus;
+    };
   };
 
   log4e = melpaBuild rec {
@@ -1060,7 +1145,10 @@ let self = _self // overrides;
       rev   = "v${version}";
       sha256 = "1l28n7a0v2zkknc70i1wn6qb5i21dkhfizzk8wcj28v44cgzk022";
     };
-    meta = { license = gpl2Plus; };
+    meta = {
+      description = "Logging for elisp";
+      license = gpl2Plus;
+    };
   };
 
   lui = melpaBuild rec {
@@ -1074,7 +1162,10 @@ let self = _self // overrides;
     };
     packageRequires = [ tracking ];
     fileSpecs = [ "lisp/lui*.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "User interface library for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   magit = melpaBuild rec {
@@ -1106,12 +1197,14 @@ let self = _self // overrides;
                   "lisp/magit-blame.el"
                   "lisp/magit-ediff.el"
                   "lisp/magit-extras.el"
-                  "lisp/git-rebase.el"
                   "Documentation/magit.texi"
                   "Documentation/AUTHORS.md"
                   "COPYING"
                 ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Emacs interface for Git that aspires to be a complete Git porcelain";
+      license = gpl3Plus;
+    };
   };
   git-commit = melpaBuild rec {
     pname = "git-commit";
@@ -1119,7 +1212,19 @@ let self = _self // overrides;
     src = magit.src;
     packageRequires = [ dash with-editor ];
     fileSpecs = [ "lisp/git-commit.el" ];
-    meta = { license = gpl3Plus; };
+    meta = magit.meta // {
+      description = "Emacs mode for editig Git commit messages";
+    };
+  };
+  git-rebase = melpaBuild rec {
+    pname = "git-rebase";
+    version = magit.version;
+    src = magit.src;
+    packageRequires = [ dash with-editor magit ];
+    fileSpecs = [ "lisp/git-rebase.el" ];
+    meta = magit.meta // {
+      description = "Emacs major-mode which makes editing rebase scripts more fun";
+    };
   };
   magit-popup = melpaBuild rec {
     pname = "magit-popup";
@@ -1127,7 +1232,9 @@ let self = _self // overrides;
     src = magit.src;
     packageRequires = [ dash with-editor ];
     fileSpecs = [ "Documentation/magit-popup.texi" "lisp/magit-popup.el" ];
-    meta = { license = gpl3Plus; };
+    meta = magit.meta // {
+      description = "Infix arguments with feedback in a buffer library for Emacs";
+    };
   };
   with-editor = melpaBuild rec {
     pname = "with-editor";
@@ -1135,7 +1242,9 @@ let self = _self // overrides;
     src = magit.src;
     packageRequires = [ async dash ];
     fileSpecs = [ "Documentation/with-editor.texi" "lisp/with-editor.el" ];
-    meta = { license = gpl3Plus; };
+    meta = magit.meta // {
+      description = "Use the Emacsclient as EDITOR of child processes library for Emacs";
+    };
   };
 
   markdown-mode = melpaBuild rec {
@@ -1147,7 +1256,10 @@ let self = _self // overrides;
       rev    = "v${version}";
       sha256 = "1l2w0j9xl8pipz61426s79jq2yns42vjvysc6yjc29kbsnhalj29";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Major mode for editing markdown files in Emacs";
+      license = gpl3Plus;
+    };
   };
 
   markdown-toc = melpaBuild rec {
@@ -1166,7 +1278,6 @@ let self = _self // overrides;
       longDescription = ''
         A simple mode to create TOC in a markdown file.
       '';
-      homepage = https://github.com/ardumont/mardown-toc;
       license = gpl3Plus;
     };
   };
@@ -1180,7 +1291,10 @@ let self = _self // overrides;
       rev    = "39384a7a9e6886f3a3d79efac4009fcd800a4a14";
       sha256 = "0i7m15x9sij5wh0gwbijsis8a4jm8izywj7xprk21644ndskvfiz";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "A set of Emacs themes optimized for terminals with 256 colors";
+      license = gpl3Plus;
+    };
   };
 
   monokai-theme = melpaBuild rec {
@@ -1192,7 +1306,10 @@ let self = _self // overrides;
       rev    = "v${version}";
       sha256 = "02w7k4s4698p4adjy4a36na28sb1s2zw4xsjs7p2hv9iiw9kmyvz";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "An Emacs port of TextMate' Monokai theme inspired by Zenburn theme";
+      license = gpl3Plus;
+    };
   };
 
   multiple-cursors = melpaBuild rec {
@@ -1204,6 +1321,10 @@ let self = _self // overrides;
       rev    = "9b53e892e6167f930763a3c5aedf8773110a8ae9";
       sha256 = "0wcrdb137a9aq6dynlqbvypb6m2dj48m899xwy7ilnf2arrmipid";
     };
+    meta = {
+      description = "Edit text in many places simultaneously in Emacs";
+      license = gpl3Plus; # TODO
+    };
   };
 
   nyan-mode = callPackage ../applications/editors/emacs-modes/nyan-mode {
@@ -1237,7 +1358,10 @@ let self = _self // overrides;
     buildPhase = ''
       cp $src ${pname}-${version}.tar
     '';
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Notes, TODO lists, projects, and authoring in plain-text with Emacs";
+      license = gpl3Plus;
+    };
   };
 
   org-trello = melpaBuild rec {
@@ -1286,7 +1410,10 @@ let self = _self // overrides;
       rev    = version;
       sha256 = "12c2rrhysrcl2arc6hpzv6lxbb1r3bzlvdp23hnp9sci6yc10k3q";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Tagged workspaces like in most tiling window managers, but in Emacs";
+      license = gpl3Plus;
+    };
   };
 
   pkg-info = melpaBuild rec {
@@ -1299,7 +1426,10 @@ let self = _self // overrides;
       sha256 = "0x4nz54f2shgcw3gx66d265vxwdpdirn64gzii8dpxhsi7v86n0p";
     };
     packageRequires = [ epl ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Provide information about Emacs packages";
+      license = gpl3Plus;
+    };
   };
 
   popup = melpaBuild rec {
@@ -1311,7 +1441,10 @@ let self = _self // overrides;
       rev    = "v${version}";
       sha256 = "0aazkczrzpp75793bpi0pz0cs7vinhdrpxfdlzi0cr39njird2yj";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Popup tooltips and popup menus for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   projectile = melpaBuild rec {
@@ -1325,7 +1458,10 @@ let self = _self // overrides;
     };
     fileSpecs = [ "projectile.el" ];
     packageRequires = [ dash helm pkg-info ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "A project interaction library for Emacs";
+      license = gpl3Plus;
+    };
   };
   helm-projectile = melpaBuild rec {
     pname   = "helm-projectile";
@@ -1333,7 +1469,7 @@ let self = _self // overrides;
     src     = projectile.src;
     fileSpecs = [ "helm-projectile.el" ];
     packageRequires = [ helm projectile ];
-    meta = { license = gpl3Plus; };
+    meta = projectile.meta;
   };
   persp-projectile = melpaBuild rec {
     pname   = "persp-projectile";
@@ -1341,7 +1477,7 @@ let self = _self // overrides;
     src     = projectile.src;
     fileSpecs = [ "persp-projectile.el" ];
     packageRequires = [ perspective projectile ];
-    meta = { license = gpl3Plus; };
+    meta = projectile.meta;
   };
 
   prop-menu = melpaBuild rec {
@@ -1353,7 +1489,10 @@ let self = _self // overrides;
       rev    = version;
       sha256 = "18ap2liz5r5a8ja2zz9182fnfm47jnsbyblpq859zks356k37iwc";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Library for computing context menus based on text properties and overlays in Emacs";
+      license = gpl3Plus;
+    };
   };
 
   pyvenv = melpaBuild rec {
@@ -1451,7 +1590,10 @@ let self = _self // overrides;
       rev    = "1f85b5112f3f68169ddaa2911fcfa030f979eb4d";
       sha256 = "9d871ea84f98c51099528a03eddf47218cf70f1431d4c35c19c977d9e73d421f";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "String manipulation library for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   semi = melpaBuild rec {
@@ -1480,7 +1622,10 @@ let self = _self // overrides;
       sha256 = "08dsv1dzgb9jx076ia7xbpyjpaxn1w87h6rzlb349spaydq7ih24";
     };
     fileSpecs = [ "lisp/shorten*.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "String shortening to unique prefix library for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   smart-mode-line = melpaBuild rec {
@@ -1493,7 +1638,10 @@ let self = _self // overrides;
       sha256 = "17nav2jbvbd13xzgp29x396mc617n2dh6whjk4wnyvsyv7r0s9f6";
     };
     packageRequires = [ dash rich-minority ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Sexy mode-line for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   smartparens = melpaBuild rec {
@@ -1506,7 +1654,17 @@ let self = _self // overrides;
       sha256 = "16pzd740vd1r3qfmxia2ibiarinm6xpja0mjv3nni5dis5s4r9gc";
     };
     packageRequires = [ dash ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Minor mode for Emacs that deals with parens pairs";
+      longDescription = ''
+        It started as a unification effort to combine functionality of
+        several existing packages in a single, compatible and
+        extensible way to deal with parentheses, delimiters, tags and
+        the like. Some of these packages include autopair, textmate,
+        wrap-region, electric-pair-mode, paredit and others.
+      '';
+      license = gpl3Plus;
+    };
   };
 
   smex = melpaBuild rec {
@@ -1548,8 +1706,14 @@ let self = _self // overrides;
       sha256 = "18madh4hvrk8sxrll84ry13n1l3ad1gnp3prj828sszrbbdp20ly";
     };
     fileSpecs = [ "swiper.el" "ivy.el" "colir.el" "counsel.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Overview as you search for a regex in Emacs";
+      license = gpl3Plus;
+    };
   };
+  ivy = swiper;
+
+  #TODO: swiper-helm
 
   switch-window = melpaBuild rec {
     pname   = "switch-window";
@@ -1560,7 +1724,10 @@ let self = _self // overrides;
       rev    = "3ffbe68e584f811e891f96afa1de15e0d9c1ebb5";
       sha256 = "09221128a0f55a575ed9addb3a435cfe01ab6bdd0cca5d589ccd37de61ceccbd";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Visual replacement for C-x o in Emacs";
+      license = gpl3Plus;
+    };
   };
 
   tracking = melpaBuild rec {
@@ -1574,7 +1741,10 @@ let self = _self // overrides;
     };
     packageRequires = [ shorten ];
     fileSpecs = [ "lisp/tracking*.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Register buffers for user review library for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   tuareg = melpaBuild rec {
@@ -1587,7 +1757,10 @@ let self = _self // overrides;
       sha256 = "0jpcjy2a77mywba2vm61knj26pgylsmv5a21cdp80q40bac4i6bb";
     };
     packageRequires = [ caml ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Extension of OCaml mode for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   undo-tree = melpaBuild rec {
@@ -1598,7 +1771,10 @@ let self = _self // overrides;
       rev    = "a3e81b682053a81e082139300ef0a913a7a610a2";
       sha256 = "1qla7njkb7gx5aj87i8x6ni8jfk1k78ivwfiiws3gpbnyiydpx8y";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "A port of Vim's undo tree functionality to Emacs";
+      license = gpl3Plus;
+    };
   };
 
   use-package = melpaBuild rec {
@@ -1612,7 +1788,10 @@ let self = _self // overrides;
     };
     packageRequires = [ bind-key diminish ];
     files = [ "use-package.el" ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Isolate package configuration in your .emacs file";
+      license = gpl3Plus;
+    };
   };
 
   volatile-highlights = melpaBuild rec {
@@ -1624,7 +1803,10 @@ let self = _self // overrides;
       rev    = "fb2abc2d4d4051a9a6b7c8de2fe7564161f01f24";
       sha256 = "1v0chqj5jir4685jd8ahw86g9zdmi6xd05wmzhyw20rbk924fcqf";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Brings visual feedback to some operations in Emacs";
+      license = gpl3Plus;
+    };
   };
 
   wanderlust = melpaBuild rec {
@@ -1659,7 +1841,7 @@ let self = _self // overrides;
     };
 
     meta = {
-      description = "Web template editing mode for emacs";
+      description = "Web template editing mode for Emacs";
       license = gpl2;
     };
   };
@@ -1677,7 +1859,10 @@ let self = _self // overrides;
       rm weechat-sauron.el weechat-secrets.el
     '';
     packageRequires = [ s ];
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "A weechat IRC client frontend for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   wgrep = melpaBuild rec {
@@ -1689,7 +1874,10 @@ let self = _self // overrides;
       rev    = "7ef26c51feaef8a5ec0929737130ab8ba326983c";
       sha256 = "075z0glain0dp56d0cp468y5y88wn82ab26aapsrdzq8hmlshwn4";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "Writable grep buffer mode for Emacs";
+      license = gpl3Plus;
+    };
   };
 
   yasnippet = melpaBuild rec {
@@ -1724,7 +1912,10 @@ let self = _self // overrides;
       rev    = "v${version}";
       sha256 = "1zspqpwgyv3969irg8p7zj3g4hww4bmnlvx33bvjyvvv5c4mg5wv";
     };
-    meta = { license = gpl3Plus; };
+    meta = {
+      description = "An Emacs port of Vim's low contrast Zerburn theme";
+      license = gpl3Plus;
+    };
   };
 
 }; in self