summaryrefslogtreecommitdiffstats
path: root/tv/pkgs/lentil
diff options
context:
space:
mode:
Diffstat (limited to 'tv/pkgs/lentil')
-rw-r--r--tv/pkgs/lentil/1.patch39
-rw-r--r--tv/pkgs/lentil/default.nix17
-rw-r--r--tv/pkgs/lentil/syntaxes.patch11
3 files changed, 67 insertions, 0 deletions
diff --git a/tv/pkgs/lentil/1.patch b/tv/pkgs/lentil/1.patch
new file mode 100644
index 000000000..1ed9818c7
--- /dev/null
+++ b/tv/pkgs/lentil/1.patch
@@ -0,0 +1,39 @@
+diff -rN -u old-lentil/src/Lentil/File.hs new-lentil/src/Lentil/File.hs
+--- old-lentil/src/Lentil/File.hs 2015-07-20 22:43:23.177620724 +0200
++++ new-lentil/src/Lentil/File.hs 2015-07-20 22:43:23.177620724 +0200
+@@ -13,10 +13,13 @@
+ import Lentil.Types
+ import Lentil.Parse.Run
+
++import System.Directory
+ import System.FilePath
+ import System.FilePath.Find
++import Data.Either
+ import Data.Monoid
+ import Control.Applicative
++import Control.Exception.Base
+
+ import qualified Data.List as L
+
+@@ -36,7 +39,12 @@
+ --------------
+
+ findIssues :: [FilePath] -> [FilePath] -> IO [Issue]
+-findIssues is xs = find always (findClause is xs) "." >>= issueFinder
++findIssues is xs =
++ (mapM (try . canonicalizePath) is :: IO [Either SomeException FilePath]) >>=
++ return . rights >>=
++ mapM (\i -> find always (findClause [i] xs) i) >>=
++ return . concat >>=
++ issueFinder
+
+ -- fp to include, fp to exclude, clause
+ findClause :: [FilePath] -> [FilePath] -> FindClause Bool
+@@ -47,6 +55,6 @@
+ (not <$> fmap getAny xc)
+ where
+ fp2fc :: FilePath -> FindClause Any
+- fp2fc f = Any . L.isPrefixOf (combine "." f) <$> filePath
++ fp2fc f = Any . L.isPrefixOf f <$> filePath
+ -- TODO: combine funziona su windows? [feature:intermediate]
+
diff --git a/tv/pkgs/lentil/default.nix b/tv/pkgs/lentil/default.nix
new file mode 100644
index 000000000..1385cbd4d
--- /dev/null
+++ b/tv/pkgs/lentil/default.nix
@@ -0,0 +1,17 @@
+{ pkgs, ... }:
+
+(pkgs.haskellngPackages.override {
+ overrides = self: super: {
+ lentil = super.lentil.override {
+ mkDerivation = (attrs: self.mkDerivation (attrs // {
+ version = "0.1.2.7";
+ sha256 = "1g3if2y41li6wyg7ffvpybqvbywiq8bf5b5fb6pz499hinzahb9d";
+ patches = [
+ ./1.patch
+ ./syntaxes.patch
+ ];
+ doCheck = false;
+ }));
+ };
+ };
+}).lentil
diff --git a/tv/pkgs/lentil/syntaxes.patch b/tv/pkgs/lentil/syntaxes.patch
new file mode 100644
index 000000000..a9390ae51
--- /dev/null
+++ b/tv/pkgs/lentil/syntaxes.patch
@@ -0,0 +1,11 @@
+diff -rN -u old-lentil/src/Lentil/Parse/Syntaxes.hs new-lentil/src/Lentil/Parse/Syntaxes.hs
+--- old-lentil/src/Lentil/Parse/Syntaxes.hs 2015-07-20 23:15:38.600539779 +0200
++++ new-lentil/src/Lentil/Parse/Syntaxes.hs 2015-07-20 23:15:38.600539779 +0200
+@@ -30,6 +30,7 @@
+ | ext `elem` [".pas", ".pp", ".inc"] = Just pascal
+ | ext `elem` [".py"] = Just python
+ | ext `elem` [".rb"] = Just ruby
++ | ext `elem` [".nix"] = Just perl -- Nix
+ | ext `elem` [".pl", ".pm", ".t"] = Just perl
+ | ext `elem` [".sh"] = Just perl -- shell
+ | ext `elem` [".txt"] = Just text