uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
49
pkgs/development/tools/haskell/lambdabot/custom-config.patch
Normal file
49
pkgs/development/tools/haskell/lambdabot/custom-config.patch
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
diff --git a/src/Main.hs b/src/Main.hs
|
||||
index 61da2f3..39e5c9b 100644
|
||||
--- a/src/Main.hs
|
||||
+++ b/src/Main.hs
|
||||
@@ -73,11 +73,14 @@ main = do
|
||||
config' <- sequence config
|
||||
dir <- P.getDataDir
|
||||
exitWith <=< lambdabotMain modulesInfo $
|
||||
- [dataDir ==> dir, lbVersion ==> P.version] ++ config'
|
||||
+ [dataDir ==> dir, lbVersion ==> P.version] ++ configInfo ++ config'
|
||||
|
||||
-- special online target for ghci use
|
||||
online :: [String] -> IO ()
|
||||
online strs = do
|
||||
dir <- P.getDataDir
|
||||
- void $ lambdabotMain modulesInfo
|
||||
- [dataDir ==> dir, lbVersion ==> P.version, onStartupCmds ==> strs]
|
||||
+ void $ lambdabotMain modulesInfo $
|
||||
+ [dataDir ==> dir, lbVersion ==> P.version, onStartupCmds ==> strs] ++ configInfo
|
||||
+
|
||||
+configInfo :: [DSum Config Identity]
|
||||
+configInfo = @config@
|
||||
diff --git a/src/Modules.hs b/src/Modules.hs
|
||||
index 036ea1f..eaafa50 100644
|
||||
--- a/src/Modules.hs
|
||||
+++ b/src/Modules.hs
|
||||
@@ -14,10 +14,15 @@ import Lambdabot.Plugin.Reference
|
||||
import Lambdabot.Plugin.Social
|
||||
|
||||
modulesInfo :: Modules
|
||||
-modulesInfo = $(modules $ corePlugins
|
||||
- ++ haskellPlugins
|
||||
- ++ ["irc", "localtime", "topic"] -- ircPlugins
|
||||
- ++ ["dummy", "fresh", "todo"] -- miscPlugins
|
||||
- ++ ["bf", "dice", "elite", "filter", "quote", "slap", "unlambda", "vixen"] -- noveltyPlugins
|
||||
- ++ referencePlugins
|
||||
- ++ socialPlugins)
|
||||
+modulesInfo =
|
||||
+ $(modules $
|
||||
+ let oldDefaultModules =
|
||||
+ corePlugins
|
||||
+ ++ haskellPlugins
|
||||
+ ++ ["irc", "localtime", "topic"] -- ircPlugins
|
||||
+ ++ ["dummy", "fresh", "todo"] -- miscPlugins
|
||||
+ ++ ["bf", "dice", "elite", "filter", "quote", "slap", "unlambda", "vixen"] -- noveltyPlugins
|
||||
+ ++ referencePlugins
|
||||
+ ++ socialPlugins
|
||||
+ in @modules@
|
||||
+ )
|
||||
41
pkgs/development/tools/haskell/lambdabot/default.nix
Normal file
41
pkgs/development/tools/haskell/lambdabot/default.nix
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
{ lib, haskellLib, makeWrapper, haskellPackages
|
||||
, mueval
|
||||
, withDjinn ? true
|
||||
, aspell ? null
|
||||
, packages ? (pkgs: [])
|
||||
, modules ? "oldDefaultModules"
|
||||
, configuration ? "[]"
|
||||
}:
|
||||
|
||||
let allPkgs = pkgs: mueval.defaultPkgs pkgs ++ [ pkgs.lambdabot-trusted ] ++ packages pkgs;
|
||||
mueval' = mueval.override {
|
||||
inherit haskellPackages;
|
||||
packages = allPkgs;
|
||||
};
|
||||
bins = lib.makeBinPath ([ mueval'
|
||||
(haskellPackages.ghcWithHoogle allPkgs)
|
||||
haskellPackages.unlambda
|
||||
haskellPackages.brainfuck
|
||||
]
|
||||
++ lib.optional withDjinn haskellPackages.djinn
|
||||
++ lib.optional (aspell != null) aspell
|
||||
);
|
||||
modulesStr = lib.replaceChars ["\n"] [" "] modules;
|
||||
configStr = lib.replaceChars ["\n"] [" "] configuration;
|
||||
|
||||
in haskellLib.overrideCabal (self: {
|
||||
patches = (self.patches or []) ++ [ ./custom-config.patch ];
|
||||
postPatch = (self.postPatch or "") + ''
|
||||
substituteInPlace src/Main.hs \
|
||||
--replace '@config@' '${configStr}'
|
||||
substituteInPlace src/Modules.hs \
|
||||
--replace '@modules@' '${modulesStr}'
|
||||
'';
|
||||
|
||||
buildTools = (self.buildTools or []) ++ [ makeWrapper ];
|
||||
|
||||
postInstall = (self.postInstall or "") + ''
|
||||
wrapProgram $out/bin/lambdabot \
|
||||
--prefix PATH ":" '${bins}'
|
||||
'';
|
||||
}) haskellPackages.lambdabot
|
||||
Loading…
Add table
Add a link
Reference in a new issue