Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • tchoutri/horizon-platform
  • jonge/horizon-platform
  • raoulhc/horizon-platform
  • package-sets/horizon-platform
Show changes
{ mkDerivation
, Cabal
, HUnit
, attoparsec
, base
, blaze-html
, blaze-markup
, bytestring
, cabal-doctest
, conduit
, conduit-extra
, containers
, data-default-class
, deepseq
, doctest
, hspec
, lib
, resourcet
, text
, transformers
, xml-types
}:
mkDerivation {
pname = "xml-conduit";
version = "1.9.1.1";
sha256 = "bdb117606c0b56ca735564465b14b50f77f84c9e52e31d966ac8d4556d3ff0ff";
revision = "2";
editedCabalFile = "0m6sknp9xxz8a3dhvyfpyjvxp8ph511w19j4vj1qsd6hl2pazjy6";
isLibrary = true;
isExecutable = false;
enableSeparateDataOutput = false;
setupHaskellDepends = [ base Cabal cabal-doctest ];
libraryHaskellDepends = [
attoparsec
base
blaze-html
blaze-markup
bytestring
conduit
conduit-extra
containers
data-default-class
deepseq
resourcet
text
transformers
xml-types
];
testHaskellDepends = [
base
blaze-markup
bytestring
conduit
conduit-extra
containers
doctest
hspec
HUnit
resourcet
text
transformers
xml-types
];
enableLibraryProfiling = true;
enableExecutableProfiling = true;
doHaddock = false;
jailbreak = true;
doCheck = false;
doBenchmark = false;
hyperlinkSource = false;
homepage = "http://github.com/snoyberg/xml";
description = "Pure-Haskell utilities for dealing with XML with the conduit package";
license = lib.licenses.mit;
broken = false;
}
{ mkDerivation, base, deepseq, lib, text }:
mkDerivation {
pname = "xml-types";
version = "0.3.8";
sha256 = "dad5e4ce602b7d1f4be37c0cfd99a261a4573746bfd80d917dc955b72da84c80";
isLibrary = true;
isExecutable = false;
enableSeparateDataOutput = false;
libraryHaskellDepends = [ base deepseq text ];
enableLibraryProfiling = true;
enableExecutableProfiling = true;
doHaddock = false;
jailbreak = true;
doCheck = false;
doBenchmark = false;
hyperlinkSource = false;
homepage = "https://git.singpolyma.net/xml-types-haskell";
description = "Basic types for representing XML";
license = lib.licenses.mit;
broken = false;
}
{ mkDerivation
, QuickCheck
, X11
, X11-xft
, base
, bytestring
, containers
, deepseq
, directory
, filepath
, hspec
, lib
, mtl
, process
, random
, time
, unix
, utf8-string
, xmonad
}:
mkDerivation {
pname = "xmonad-contrib";
version = "0.17.1";
sha256 = "ab378337f48f8f359f6ff6425b1d7cfefccf336e527c3a7606d070e567479253";
revision = "1";
editedCabalFile = "0dc9nbn0kaw98rgpi1rq8np601zjhdr1y0ydg6yb82wwaqawql6z";
isLibrary = true;
isExecutable = false;
enableSeparateDataOutput = false;
libraryHaskellDepends = [
base
bytestring
containers
deepseq
directory
filepath
mtl
process
random
time
unix
utf8-string
X11
X11-xft
xmonad
];
testHaskellDepends = [
base
bytestring
containers
deepseq
directory
hspec
mtl
process
QuickCheck
random
time
unix
utf8-string
X11
xmonad
];
enableLibraryProfiling = true;
enableExecutableProfiling = true;
doHaddock = false;
jailbreak = true;
doCheck = false;
doBenchmark = false;
hyperlinkSource = false;
homepage = "https://xmonad.org/";
description = "Community-maintained extensions for xmonad";
license = lib.licenses.bsd3;
broken = false;
}
{ mkDerivation
, QuickCheck
, X11
, base
, containers
, data-default-class
, directory
, filepath
, lib
, mtl
, process
, quickcheck-classes
, setlocale
, time
, transformers
, unix
}:
mkDerivation {
pname = "xmonad";
version = "0.17.1";
sha256 = "884a32837e41410bab622b26a4b5dc38bd88f1b78a6efd5c552f1456b1e7f8aa";
revision = "2";
editedCabalFile = "1rgwrnyb7kijzl2mqm8ks2nydh37q5vkbg4400rg9n6x13w2r9b3";
isLibrary = true;
isExecutable = true;
enableSeparateDataOutput = false;
libraryHaskellDepends = [
base
containers
data-default-class
directory
filepath
mtl
process
setlocale
time
transformers
unix
X11
];
executableHaskellDepends = [ base ];
testHaskellDepends = [
base
containers
QuickCheck
quickcheck-classes
X11
];
enableLibraryProfiling = true;
enableExecutableProfiling = true;
doHaddock = false;
jailbreak = true;
doCheck = false;
doBenchmark = false;
hyperlinkSource = false;
postInstall = ''
install -D man/xmonad.1 ''${!outputDoc}/share/man/man1/xmonad.1
install -D man/xmonad.hs ''${!outputDoc}/share/doc/$name/sample-xmonad.hs
'';
homepage = "http://xmonad.org";
description = "A tiling window manager";
license = lib.licenses.bsd3;
broken = false;
}
{ mkDerivation
, HUnit
, aeson
, attoparsec
, base
, base-compat
, bytestring
, conduit
, containers
, directory
, filepath
, hspec
, lib
, libyaml
, mockery
, mtl
, raw-strings-qq
, resourcet
, scientific
, template-haskell
, temporary
, text
, transformers
, unordered-containers
, vector
}:
mkDerivation {
pname = "yaml";
version = "0.11.8.0";
sha256 = "f61a4e829bb75e17f5da39ea7b9d8d221a100a0f0cb1258bb9584a1829cd0ae8";
revision = "2";
editedCabalFile = "1dix5jm3d380vjr9l6wqz54zk883kilk8rijlvjp6b13mjxwcj1l";
configureFlags = [ "-fsystem-libyaml" ];
isLibrary = true;
isExecutable = true;
enableSeparateDataOutput = false;
libraryHaskellDepends = [
aeson
attoparsec
base
bytestring
conduit
containers
directory
filepath
libyaml
mtl
resourcet
scientific
template-haskell
text
transformers
unordered-containers
vector
];
testHaskellDepends = [
aeson
attoparsec
base
base-compat
bytestring
conduit
containers
directory
filepath
hspec
HUnit
libyaml
mockery
mtl
raw-strings-qq
resourcet
scientific
template-haskell
temporary
text
transformers
unordered-containers
vector
];
enableLibraryProfiling = true;
enableExecutableProfiling = true;
doHaddock = false;
jailbreak = true;
doCheck = false;
doBenchmark = false;
hyperlinkSource = false;
homepage = "https://github.com/snoyberg/yaml#readme";
description = "Support for parsing and rendering YAML documents";
license = lib.licenses.bsd3;
broken = false;
}
{ mkDerivation, QuickCheck, base, lib }:
{ mkDerivation, base, lib, tasty, tasty-hunit, tasty-quickcheck }:
mkDerivation {
pname = "PSQueue";
version = "1.1.1";
sha256 = "7191ef25e63df3658ad3eccde7d7a7e31fa8dd43c6705714672836dbf9c7ef0a";
revision = "1";
editedCabalFile = "02a5g59sc9jh3v4pibhjpijv8lsbiydznrpqyin7qhwsyc0p813a";
pname = "zigzag";
version = "0.1.0.0";
sha256 = "f538e7db692aa6c760f092473fa69b416207b9e58c8c640c192b98f6778eafb3";
isLibrary = true;
isExecutable = false;
enableSeparateDataOutput = false;
libraryHaskellDepends = [ base ];
testHaskellDepends = [ base QuickCheck ];
testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
enableLibraryProfiling = true;
enableExecutableProfiling = true;
doHaddock = false;
doHaddock = true;
jailbreak = true;
doCheck = false;
doBenchmark = false;
hyperlinkSource = false;
description = "Priority Search Queue";
homepage = "https://github.com/byteverse/zigzag";
description = "Zigzag encoding of integers into unsigned integers";
license = lib.licenses.bsd3;
broken = false;
}
}
\ No newline at end of file
{-# LANGUAGE NoMonomorphismRestriction #-}
{-# OPTIONS_GHC -Wno-missing-signatures #-}
{-# OPTIONS_GHC -Wno-unused-imports #-}
module ShellRC where
import qualified Control.Lens as L
import qualified Data.Aeson as A
import qualified Data.Aeson.Key as A
import qualified Data.Aeson.KeyMap as A
import qualified Data.Aeson.Lens as L
import qualified Data.ByteString.Lazy as B
import Data.ByteString.Lazy.UTF8 as BLU
import qualified Data.ByteString.Lazy.UTF8 as BU
import qualified Data.Map as Map
import Data.Text (Text)
import qualified Data.Text as T
import qualified Data.Text.Encoding as T
import qualified Data.Yaml as Y
import qualified Data.Yaml.Pretty as Y
import Horizon.Spec
import Network.HTTP.Simple
import Path
import Procex.Prelude
import Procex.Shell hiding (promptFunction)
import System.Directory
import System.Environment
promptFunction :: [String] -> Int -> IO String
promptFunction _modules _line = do
d <- getEnv "PWD"
setCurrentDirectory d
pure $ d <> ": "
_init :: IO ()
_init = do
initInteractive
getEnv "REALHOME" >>= setEnv "HOME" -- Set by the script that launches GHCi
hackagePkg :: Text -> IO A.Value
hackagePkg x = do
k <- parseRequest $ "http://hackage.haskell.org/package/" <> T.unpack x
getResponseBody <$> httpJSON k
hackagePkgLatest :: Text -> IO Text
hackagePkgLatest x = Prelude.last . Map.keys . A.toMapText . L.view L._Object <$> hackagePkg x
runAllFeedback :: IO ()
runAllFeedback = do
(x :: Either Y.ParseException A.Value) <- Y.decodeFileEither "feedback.yaml"
t <- getEnv "TERM"
let y = Map.keys . A.toMapText . L.view (L._Right . L._Object . L.ix "loops" . L._Object) $ x
mapM_ (captureLazyNoThrow . mq t "--command" "nix" "run" "github:NorfairKing/feedback" "--" . T.unpack) y
{ haskellPackages, writeShellScriptBin, runCommand }:
let
shellrcSrcPath = ./.;
shellrcModule = "ShellRC";
shellrcSrc = shellrcSrcPath;
shellrcModulePath = builtins.replaceStrings [ "." ] [ "/" ] shellrcModule + ".hs";
ghc = haskellPackages.ghcWithPackages (p: with p; [
bytestring
containers
dhall
http-conduit
horizon-gen-nix
horizon-spec
lens
lens-aeson
path
procex
text
yaml
]);
args = builtins.concatStringsSep " " [
"-XDataKinds"
"-XExtendedDefaultRules"
"-XGHC2021"
"-XOverloadedStrings"
"-XOverloadedLabels"
"-Wall"
"-Wno-type-defaults"
];
shellrc = runCommand "shellrc" { } ''
cp ${shellrcSrc} --no-preserve=all -rT $out
${ghc}/bin/ghc -c -dynamic --make -i"$out" ${args} $out/${shellrcModulePath}
'';
init = runCommand "ghci-init" { } ''
cat > $out <<END
:set +m -interactive-print Text.Pretty.Simple.pPrint
:l ${shellrcModule}
import Procex.Shell.Labels
:set prompt-function promptFunction
_init
END
grep -E '^import .*$' < ${shellrcSrc}/${shellrcModulePath} >> $out
'';
in
(writeShellScriptBin "procex-shell" ''
home="$HOME/.local/share/ghci-shell"
mkdir -p "$home"
exec env GHCRTS="-c" HOME="$home" REALHOME="$HOME" ${ghc}/bin/ghci ${args} -ignore-dot-ghci -i -i${shellrc} -ghci-script ${init} "$@"
'').overrideAttrs (old: old // { passthru = { shellPath = "/bin/procex-shell"; }; })