mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-22 13:29:00 +02:00
Merge staging-next into staging
This commit is contained in:
commit
0a1c5be4ef
|
@ -19,6 +19,8 @@ Because step 1) is quite expensive and takes roughly ~5 minutes the result is ca
|
||||||
{-# LANGUAGE DeriveGeneric #-}
|
{-# LANGUAGE DeriveGeneric #-}
|
||||||
{-# LANGUAGE DerivingStrategies #-}
|
{-# LANGUAGE DerivingStrategies #-}
|
||||||
{-# LANGUAGE DuplicateRecordFields #-}
|
{-# LANGUAGE DuplicateRecordFields #-}
|
||||||
|
{-# LANGUAGE FlexibleContexts #-}
|
||||||
|
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
|
||||||
{-# LANGUAGE LambdaCase #-}
|
{-# LANGUAGE LambdaCase #-}
|
||||||
{-# LANGUAGE NamedFieldPuns #-}
|
{-# LANGUAGE NamedFieldPuns #-}
|
||||||
{-# LANGUAGE OverloadedStrings #-}
|
{-# LANGUAGE OverloadedStrings #-}
|
||||||
|
@ -32,6 +34,7 @@ import Control.Monad (forM_, (<=<))
|
||||||
import Control.Monad.Trans (MonadIO (liftIO))
|
import Control.Monad.Trans (MonadIO (liftIO))
|
||||||
import Data.Aeson (
|
import Data.Aeson (
|
||||||
FromJSON,
|
FromJSON,
|
||||||
|
FromJSONKey,
|
||||||
ToJSON,
|
ToJSON,
|
||||||
decodeFileStrict',
|
decodeFileStrict',
|
||||||
eitherDecodeStrict',
|
eitherDecodeStrict',
|
||||||
|
@ -51,6 +54,7 @@ import qualified Data.Set as Set
|
||||||
import Data.Text (Text)
|
import Data.Text (Text)
|
||||||
import qualified Data.Text as Text
|
import qualified Data.Text as Text
|
||||||
import Data.Text.Encoding (encodeUtf8)
|
import Data.Text.Encoding (encodeUtf8)
|
||||||
|
import qualified Data.Text.IO as Text
|
||||||
import Data.Time (defaultTimeLocale, formatTime, getCurrentTime)
|
import Data.Time (defaultTimeLocale, formatTime, getCurrentTime)
|
||||||
import Data.Time.Clock (UTCTime)
|
import Data.Time.Clock (UTCTime)
|
||||||
import GHC.Generics (Generic)
|
import GHC.Generics (Generic)
|
||||||
|
@ -90,13 +94,16 @@ import Distribution.Simple.Utils (safeLast, fromUTF8BS)
|
||||||
newtype JobsetEvals = JobsetEvals
|
newtype JobsetEvals = JobsetEvals
|
||||||
{ evals :: Seq Eval
|
{ evals :: Seq Eval
|
||||||
}
|
}
|
||||||
deriving (Generic, ToJSON, FromJSON, Show)
|
deriving stock (Generic, Show)
|
||||||
|
deriving anyclass (ToJSON, FromJSON)
|
||||||
|
|
||||||
newtype Nixpkgs = Nixpkgs {revision :: Text}
|
newtype Nixpkgs = Nixpkgs {revision :: Text}
|
||||||
deriving (Generic, ToJSON, FromJSON, Show)
|
deriving stock (Generic, Show)
|
||||||
|
deriving anyclass (ToJSON, FromJSON)
|
||||||
|
|
||||||
newtype JobsetEvalInputs = JobsetEvalInputs {nixpkgs :: Nixpkgs}
|
newtype JobsetEvalInputs = JobsetEvalInputs {nixpkgs :: Nixpkgs}
|
||||||
deriving (Generic, ToJSON, FromJSON, Show)
|
deriving stock (Generic, Show)
|
||||||
|
deriving anyclass (ToJSON, FromJSON)
|
||||||
|
|
||||||
data Eval = Eval
|
data Eval = Eval
|
||||||
{ id :: Int
|
{ id :: Int
|
||||||
|
@ -104,13 +111,42 @@ data Eval = Eval
|
||||||
}
|
}
|
||||||
deriving (Generic, ToJSON, FromJSON, Show)
|
deriving (Generic, ToJSON, FromJSON, Show)
|
||||||
|
|
||||||
|
-- | Hydra job name.
|
||||||
|
--
|
||||||
|
-- Examples:
|
||||||
|
-- - @"haskellPackages.lens.x86_64-linux"@
|
||||||
|
-- - @"haskell.packages.ghc925.cabal-install.aarch64-darwin"@
|
||||||
|
-- - @"pkgsMusl.haskell.compiler.ghc90.x86_64-linux"@
|
||||||
|
-- - @"arion.aarch64-linux"@
|
||||||
|
newtype JobName = JobName { unJobName :: Text }
|
||||||
|
deriving stock (Generic, Show)
|
||||||
|
deriving newtype (Eq, FromJSONKey, FromJSON, Ord, ToJSON)
|
||||||
|
|
||||||
|
-- | Datatype representing the result of querying the build evals of the
|
||||||
|
-- haskell-updates Hydra jobset.
|
||||||
|
--
|
||||||
|
-- The URL <https://hydra.nixos.org/eval/EVAL_ID/builds> (where @EVAL_ID@ is a
|
||||||
|
-- value like 1792418) returns a list of 'Build'.
|
||||||
data Build = Build
|
data Build = Build
|
||||||
{ job :: Text
|
{ job :: JobName
|
||||||
, buildstatus :: Maybe Int
|
, buildstatus :: Maybe Int
|
||||||
|
-- ^ Status of the build. See 'getBuildState' for the meaning of each state.
|
||||||
, finished :: Int
|
, finished :: Int
|
||||||
|
-- ^ Whether or not the build is finished. @0@ if finished, non-zero otherwise.
|
||||||
, id :: Int
|
, id :: Int
|
||||||
, nixname :: Text
|
, nixname :: Text
|
||||||
|
-- ^ Nix name of the derivation.
|
||||||
|
--
|
||||||
|
-- Examples:
|
||||||
|
-- - @"lens-5.2.1"@
|
||||||
|
-- - @"cabal-install-3.8.0.1"@
|
||||||
|
-- - @"lens-static-x86_64-unknown-linux-musl-5.1.1"@
|
||||||
, system :: Text
|
, system :: Text
|
||||||
|
-- ^ System
|
||||||
|
--
|
||||||
|
-- Examples:
|
||||||
|
-- - @"x86_64-linux"@
|
||||||
|
-- - @"aarch64-darwin"@
|
||||||
, jobsetevals :: Seq Int
|
, jobsetevals :: Seq Int
|
||||||
}
|
}
|
||||||
deriving (Generic, ToJSON, FromJSON, Show)
|
deriving (Generic, ToJSON, FromJSON, Show)
|
||||||
|
@ -196,7 +232,7 @@ newtype Maintainers = Maintainers { maintainers :: Maybe Text }
|
||||||
--
|
--
|
||||||
-- Note that Hydra jobs without maintainers will have an empty string for the
|
-- Note that Hydra jobs without maintainers will have an empty string for the
|
||||||
-- maintainer list.
|
-- maintainer list.
|
||||||
type HydraJobs = Map Text Maintainers
|
type HydraJobs = Map JobName Maintainers
|
||||||
|
|
||||||
-- | Map of email addresses to GitHub handles.
|
-- | Map of email addresses to GitHub handles.
|
||||||
-- This is built from the file @../../maintainer-list.nix@.
|
-- This is built from the file @../../maintainer-list.nix@.
|
||||||
|
@ -221,12 +257,12 @@ type EmailToGitHubHandles = Map Text Text
|
||||||
-- , ("conduit.x86_64-darwin", ["snoyb", "webber"])
|
-- , ("conduit.x86_64-darwin", ["snoyb", "webber"])
|
||||||
-- ]
|
-- ]
|
||||||
-- @@
|
-- @@
|
||||||
type MaintainerMap = Map Text (NonEmpty Text)
|
type MaintainerMap = Map JobName (NonEmpty Text)
|
||||||
|
|
||||||
-- | Information about a package which lists its dependencies and whether the
|
-- | Information about a package which lists its dependencies and whether the
|
||||||
-- package is marked broken.
|
-- package is marked broken.
|
||||||
data DepInfo = DepInfo {
|
data DepInfo = DepInfo {
|
||||||
deps :: Set Text,
|
deps :: Set PkgName,
|
||||||
broken :: Bool
|
broken :: Bool
|
||||||
}
|
}
|
||||||
deriving stock (Generic, Show)
|
deriving stock (Generic, Show)
|
||||||
|
@ -234,23 +270,37 @@ data DepInfo = DepInfo {
|
||||||
|
|
||||||
-- | Map from package names to their DepInfo. This is the data we get out of a
|
-- | Map from package names to their DepInfo. This is the data we get out of a
|
||||||
-- nix call.
|
-- nix call.
|
||||||
type DependencyMap = Map Text DepInfo
|
type DependencyMap = Map PkgName DepInfo
|
||||||
|
|
||||||
-- | Map from package names to its broken state, number of reverse dependencies (fst) and
|
-- | Map from package names to its broken state, number of reverse dependencies (fst) and
|
||||||
-- unbroken reverse dependencies (snd).
|
-- unbroken reverse dependencies (snd).
|
||||||
type ReverseDependencyMap = Map Text (Int, Int)
|
type ReverseDependencyMap = Map PkgName (Int, Int)
|
||||||
|
|
||||||
-- | Calculate the (unbroken) reverse dependencies of a package by transitively
|
-- | Calculate the (unbroken) reverse dependencies of a package by transitively
|
||||||
-- going through all packages if it’s a dependency of them.
|
-- going through all packages if it’s a dependency of them.
|
||||||
calculateReverseDependencies :: DependencyMap -> ReverseDependencyMap
|
calculateReverseDependencies :: DependencyMap -> ReverseDependencyMap
|
||||||
calculateReverseDependencies depMap = Map.fromDistinctAscList $ zip keys (zip (rdepMap False) (rdepMap True))
|
calculateReverseDependencies depMap =
|
||||||
|
Map.fromDistinctAscList $ zip keys (zip (rdepMap False) (rdepMap True))
|
||||||
where
|
where
|
||||||
-- This code tries to efficiently invert the dependency map and calculate
|
-- This code tries to efficiently invert the dependency map and calculate
|
||||||
-- it’s transitive closure by internally identifying every pkg with it’s index
|
-- it’s transitive closure by internally identifying every pkg with it’s index
|
||||||
-- in the package list and then using memoization.
|
-- in the package list and then using memoization.
|
||||||
|
keys :: [PkgName]
|
||||||
keys = Map.keys depMap
|
keys = Map.keys depMap
|
||||||
|
|
||||||
|
pkgToIndexMap :: Map PkgName Int
|
||||||
pkgToIndexMap = Map.fromDistinctAscList (zip keys [0..])
|
pkgToIndexMap = Map.fromDistinctAscList (zip keys [0..])
|
||||||
intDeps = zip [0..] $ (\DepInfo{broken,deps} -> (broken,mapMaybe (`Map.lookup` pkgToIndexMap) $ Set.toList deps)) <$> Map.elems depMap
|
|
||||||
|
depInfos :: [DepInfo]
|
||||||
|
depInfos = Map.elems depMap
|
||||||
|
|
||||||
|
depInfoToIdx :: DepInfo -> (Bool, [Int])
|
||||||
|
depInfoToIdx DepInfo{broken,deps} =
|
||||||
|
(broken, mapMaybe (`Map.lookup` pkgToIndexMap) $ Set.toList deps)
|
||||||
|
|
||||||
|
intDeps :: [(Int, (Bool, [Int]))]
|
||||||
|
intDeps = zip [0..] (fmap depInfoToIdx depInfos)
|
||||||
|
|
||||||
rdepMap onlyUnbroken = IntSet.size <$> resultList
|
rdepMap onlyUnbroken = IntSet.size <$> resultList
|
||||||
where
|
where
|
||||||
resultList = go <$> [0..]
|
resultList = go <$> [0..]
|
||||||
|
@ -267,7 +317,7 @@ getMaintainerMap = do
|
||||||
handlesMap :: EmailToGitHubHandles <-
|
handlesMap :: EmailToGitHubHandles <-
|
||||||
readJSONProcess nixExprCommand ("maintainers/scripts/haskell/maintainer-handles.nix":nixExprParams) "Failed to decode nix output for lookup of github handles: "
|
readJSONProcess nixExprCommand ("maintainers/scripts/haskell/maintainer-handles.nix":nixExprParams) "Failed to decode nix output for lookup of github handles: "
|
||||||
pure $ Map.mapMaybe (splitMaintainersToGitHubHandles handlesMap) hydraJobs
|
pure $ Map.mapMaybe (splitMaintainersToGitHubHandles handlesMap) hydraJobs
|
||||||
where
|
where
|
||||||
-- Split a comma-spearated string of Maintainers into a NonEmpty list of
|
-- Split a comma-spearated string of Maintainers into a NonEmpty list of
|
||||||
-- GitHub handles.
|
-- GitHub handles.
|
||||||
splitMaintainersToGitHubHandles
|
splitMaintainersToGitHubHandles
|
||||||
|
@ -279,7 +329,10 @@ getMaintainerMap = do
|
||||||
-- script ./dependencies.nix.
|
-- script ./dependencies.nix.
|
||||||
getDependencyMap :: IO DependencyMap
|
getDependencyMap :: IO DependencyMap
|
||||||
getDependencyMap =
|
getDependencyMap =
|
||||||
readJSONProcess nixExprCommand ("maintainers/scripts/haskell/dependencies.nix":nixExprParams) "Failed to decode nix output for lookup of dependencies: "
|
readJSONProcess
|
||||||
|
nixExprCommand
|
||||||
|
("maintainers/scripts/haskell/dependencies.nix" : nixExprParams)
|
||||||
|
"Failed to decode nix output for lookup of dependencies: "
|
||||||
|
|
||||||
-- | Run a process that produces JSON on stdout and and decode the JSON to a
|
-- | Run a process that produces JSON on stdout and and decode the JSON to a
|
||||||
-- data type.
|
-- data type.
|
||||||
|
@ -331,16 +384,77 @@ platformIcon (Platform x) = case x of
|
||||||
"aarch64-darwin" -> ":green_apple:"
|
"aarch64-darwin" -> ":green_apple:"
|
||||||
_ -> x
|
_ -> x
|
||||||
|
|
||||||
|
platformIsOS :: OS -> Platform -> Bool
|
||||||
|
platformIsOS os (Platform x) = case (os, x) of
|
||||||
|
(Linux, "x86_64-linux") -> True
|
||||||
|
(Linux, "aarch64-linux") -> True
|
||||||
|
(Darwin, "x86_64-darwin") -> True
|
||||||
|
(Darwin, "aarch64-darwin") -> True
|
||||||
|
_ -> False
|
||||||
|
|
||||||
|
|
||||||
|
-- | A package name. This is parsed from a 'JobName'.
|
||||||
|
--
|
||||||
|
-- Examples:
|
||||||
|
--
|
||||||
|
-- - The 'JobName' @"haskellPackages.lens.x86_64-linux"@ produces the 'PkgName'
|
||||||
|
-- @"lens"@.
|
||||||
|
-- - The 'JobName' @"haskell.packages.ghc925.cabal-install.aarch64-darwin"@
|
||||||
|
-- produces the 'PkgName' @"cabal-install"@.
|
||||||
|
-- - The 'JobName' @"pkgsMusl.haskell.compiler.ghc90.x86_64-linux"@ produces
|
||||||
|
-- the 'PkgName' @"ghc90"@.
|
||||||
|
-- - The 'JobName' @"arion.aarch64-linux"@ produces the 'PkgName' @"arion"@.
|
||||||
|
--
|
||||||
|
-- 'PkgName' is also used as a key in 'DependencyMap' and 'ReverseDependencyMap'.
|
||||||
|
-- In this case, 'PkgName' originally comes from attribute names in @haskellPackages@
|
||||||
|
-- in Nixpkgs.
|
||||||
|
newtype PkgName = PkgName Text
|
||||||
|
deriving stock (Generic, Show)
|
||||||
|
deriving newtype (Eq, FromJSON, FromJSONKey, Ord, ToJSON)
|
||||||
|
|
||||||
|
-- | A package set name. This is parsed from a 'JobName'.
|
||||||
|
--
|
||||||
|
-- Examples:
|
||||||
|
--
|
||||||
|
-- - The 'JobName' @"haskellPackages.lens.x86_64-linux"@ produces the 'PkgSet'
|
||||||
|
-- @"haskellPackages"@.
|
||||||
|
-- - The 'JobName' @"haskell.packages.ghc925.cabal-install.aarch64-darwin"@
|
||||||
|
-- produces the 'PkgSet' @"haskell.packages.ghc925"@.
|
||||||
|
-- - The 'JobName' @"pkgsMusl.haskell.compiler.ghc90.x86_64-linux"@ produces
|
||||||
|
-- the 'PkgSet' @"pkgsMusl.haskell.compiler"@.
|
||||||
|
-- - The 'JobName' @"arion.aarch64-linux"@ produces the 'PkgSet' @""@.
|
||||||
|
--
|
||||||
|
-- As you can see from the last example, 'PkgSet' can be empty (@""@) for
|
||||||
|
-- top-level jobs.
|
||||||
|
newtype PkgSet = PkgSet Text
|
||||||
|
deriving stock (Generic, Show)
|
||||||
|
deriving newtype (Eq, FromJSON, FromJSONKey, Ord, ToJSON)
|
||||||
|
|
||||||
data BuildResult = BuildResult {state :: BuildState, id :: Int} deriving (Show, Eq, Ord)
|
data BuildResult = BuildResult {state :: BuildState, id :: Int} deriving (Show, Eq, Ord)
|
||||||
newtype Platform = Platform {platform :: Text} deriving (Show, Eq, Ord)
|
newtype Platform = Platform {platform :: Text} deriving (Show, Eq, Ord)
|
||||||
newtype Table row col a = Table (Map (row, col) a)
|
|
||||||
data SummaryEntry = SummaryEntry {
|
data SummaryEntry = SummaryEntry {
|
||||||
summaryBuilds :: Table Text Platform BuildResult,
|
summaryBuilds :: Table PkgSet Platform BuildResult,
|
||||||
summaryMaintainers :: Set Text,
|
summaryMaintainers :: Set Text,
|
||||||
summaryReverseDeps :: Int,
|
summaryReverseDeps :: Int,
|
||||||
summaryUnbrokenReverseDeps :: Int
|
summaryUnbrokenReverseDeps :: Int
|
||||||
}
|
}
|
||||||
type StatusSummary = Map Text SummaryEntry
|
type StatusSummary = Map PkgName SummaryEntry
|
||||||
|
|
||||||
|
data OS = Linux | Darwin
|
||||||
|
|
||||||
|
newtype Table row col a = Table (Map (row, col) a)
|
||||||
|
|
||||||
|
singletonTable :: row -> col -> a -> Table row col a
|
||||||
|
singletonTable row col a = Table $ Map.singleton (row, col) a
|
||||||
|
|
||||||
|
unionTable :: (Ord row, Ord col) => Table row col a -> Table row col a -> Table row col a
|
||||||
|
unionTable (Table l) (Table r) = Table $ Map.union l r
|
||||||
|
|
||||||
|
filterWithKeyTable :: (row -> col -> a -> Bool) -> Table row col a -> Table row col a
|
||||||
|
filterWithKeyTable f (Table t) = Table $ Map.filterWithKey (\(r,c) a -> f r c a) t
|
||||||
|
|
||||||
|
nullTable :: Table row col a -> Bool
|
||||||
|
nullTable (Table t) = Map.null t
|
||||||
|
|
||||||
instance (Ord row, Ord col, Semigroup a) => Semigroup (Table row col a) where
|
instance (Ord row, Ord col, Semigroup a) => Semigroup (Table row col a) where
|
||||||
Table l <> Table r = Table (Map.unionWith (<>) l r)
|
Table l <> Table r = Table (Map.unionWith (<>) l r)
|
||||||
|
@ -363,18 +477,45 @@ getBuildState Build{finished, buildstatus} = case (finished, buildstatus) of
|
||||||
(_, Just 11) -> OutputLimitExceeded
|
(_, Just 11) -> OutputLimitExceeded
|
||||||
(_, i) -> Unknown i
|
(_, i) -> Unknown i
|
||||||
|
|
||||||
buildSummary :: MaintainerMap -> ReverseDependencyMap -> Seq Build -> StatusSummary
|
combineStatusSummaries :: Seq StatusSummary -> StatusSummary
|
||||||
buildSummary maintainerMap reverseDependencyMap = foldl (Map.unionWith unionSummary) Map.empty . fmap toSummary
|
combineStatusSummaries = foldl (Map.unionWith unionSummary) Map.empty
|
||||||
where
|
where
|
||||||
unionSummary (SummaryEntry (Table lb) lm lr lu) (SummaryEntry (Table rb) rm rr ru) = SummaryEntry (Table $ Map.union lb rb) (lm <> rm) (max lr rr) (max lu ru)
|
unionSummary :: SummaryEntry -> SummaryEntry -> SummaryEntry
|
||||||
toSummary build@Build{job, id, system} = Map.singleton name (SummaryEntry (Table (Map.singleton (set, Platform system) (BuildResult (getBuildState build) id))) maintainers reverseDeps unbrokenReverseDeps)
|
unionSummary (SummaryEntry lb lm lr lu) (SummaryEntry rb rm rr ru) =
|
||||||
where
|
SummaryEntry (unionTable lb rb) (lm <> rm) (max lr rr) (max lu ru)
|
||||||
packageName = fromMaybe job (Text.stripSuffix ("." <> system) job)
|
|
||||||
splitted = nonEmpty $ Text.splitOn "." packageName
|
buildToPkgNameAndSet :: Build -> (PkgName, PkgSet)
|
||||||
name = maybe packageName NonEmpty.last splitted
|
buildToPkgNameAndSet Build{job = JobName jobName, system} = (name, set)
|
||||||
set = maybe "" (Text.intercalate "." . NonEmpty.init) splitted
|
where
|
||||||
maintainers = maybe mempty (Set.fromList . toList) (Map.lookup job maintainerMap)
|
packageName :: Text
|
||||||
(reverseDeps, unbrokenReverseDeps) = Map.findWithDefault (0,0) name reverseDependencyMap
|
packageName = fromMaybe jobName (Text.stripSuffix ("." <> system) jobName)
|
||||||
|
|
||||||
|
splitted :: Maybe (NonEmpty Text)
|
||||||
|
splitted = nonEmpty $ Text.splitOn "." packageName
|
||||||
|
|
||||||
|
name :: PkgName
|
||||||
|
name = PkgName $ maybe packageName NonEmpty.last splitted
|
||||||
|
|
||||||
|
set :: PkgSet
|
||||||
|
set = PkgSet $ maybe "" (Text.intercalate "." . NonEmpty.init) splitted
|
||||||
|
|
||||||
|
buildToStatusSummary :: MaintainerMap -> ReverseDependencyMap -> Build -> StatusSummary
|
||||||
|
buildToStatusSummary maintainerMap reverseDependencyMap build@Build{job, id, system} =
|
||||||
|
Map.singleton pkgName summaryEntry
|
||||||
|
where
|
||||||
|
(pkgName, pkgSet) = buildToPkgNameAndSet build
|
||||||
|
|
||||||
|
maintainers :: Set Text
|
||||||
|
maintainers = maybe mempty (Set.fromList . toList) (Map.lookup job maintainerMap)
|
||||||
|
|
||||||
|
(reverseDeps, unbrokenReverseDeps) =
|
||||||
|
Map.findWithDefault (0,0) pkgName reverseDependencyMap
|
||||||
|
|
||||||
|
buildTable :: Table PkgSet Platform BuildResult
|
||||||
|
buildTable =
|
||||||
|
singletonTable pkgSet (Platform system) (BuildResult (getBuildState build) id)
|
||||||
|
|
||||||
|
summaryEntry = SummaryEntry buildTable maintainers reverseDeps unbrokenReverseDeps
|
||||||
|
|
||||||
readBuildReports :: IO (Eval, UTCTime, Seq Build)
|
readBuildReports :: IO (Eval, UTCTime, Seq Build)
|
||||||
readBuildReports = do
|
readBuildReports = do
|
||||||
|
@ -396,19 +537,36 @@ printTable name showR showC showE (Table mapping) = joinTable <$> (name : map sh
|
||||||
rows = toList $ Set.fromList (fst <$> Map.keys mapping)
|
rows = toList $ Set.fromList (fst <$> Map.keys mapping)
|
||||||
cols = toList $ Set.fromList (snd <$> Map.keys mapping)
|
cols = toList $ Set.fromList (snd <$> Map.keys mapping)
|
||||||
|
|
||||||
printJob :: Int -> Text -> (Table Text Platform BuildResult, Text) -> [Text]
|
printJob :: Int -> PkgName -> (Table PkgSet Platform BuildResult, Text) -> [Text]
|
||||||
printJob evalId name (Table mapping, maintainers) =
|
printJob evalId (PkgName name) (Table mapping, maintainers) =
|
||||||
if length sets <= 1
|
if length sets <= 1
|
||||||
then map printSingleRow sets
|
then map printSingleRow sets
|
||||||
else ["- [ ] " <> makeJobSearchLink "" name <> " " <> maintainers] <> map printRow sets
|
else ["- [ ] " <> makeJobSearchLink (PkgSet "") name <> " " <> maintainers] <> map printRow sets
|
||||||
where
|
where
|
||||||
printRow set = " - " <> printState set <> " " <> makeJobSearchLink set (if Text.null set then "toplevel" else set)
|
printRow :: PkgSet -> Text
|
||||||
printSingleRow set = "- [ ] " <> printState set <> " " <> makeJobSearchLink set (makePkgName set) <> " " <> maintainers
|
printRow (PkgSet set) =
|
||||||
makePkgName set = (if Text.null set then "" else set <> ".") <> name
|
" - " <> printState (PkgSet set) <> " " <>
|
||||||
printState set = Text.intercalate " " $ map (\pf -> maybe "" (label pf) $ Map.lookup (set, pf) mapping) platforms
|
makeJobSearchLink (PkgSet set) (if Text.null set then "toplevel" else set)
|
||||||
makeJobSearchLink set linkLabel= makeSearchLink evalId linkLabel (makePkgName set)
|
|
||||||
|
printSingleRow set =
|
||||||
|
"- [ ] " <> printState set <> " " <>
|
||||||
|
makeJobSearchLink set (makePkgName set) <> " " <> maintainers
|
||||||
|
|
||||||
|
makePkgName :: PkgSet -> Text
|
||||||
|
makePkgName (PkgSet set) = (if Text.null set then "" else set <> ".") <> name
|
||||||
|
|
||||||
|
printState set =
|
||||||
|
Text.intercalate " " $ map (\pf -> maybe "" (label pf) $ Map.lookup (set, pf) mapping) platforms
|
||||||
|
|
||||||
|
makeJobSearchLink :: PkgSet -> Text -> Text
|
||||||
|
makeJobSearchLink set linkLabel = makeSearchLink evalId linkLabel (makePkgName set)
|
||||||
|
|
||||||
|
sets :: [PkgSet]
|
||||||
sets = toList $ Set.fromList (fst <$> Map.keys mapping)
|
sets = toList $ Set.fromList (fst <$> Map.keys mapping)
|
||||||
|
|
||||||
|
platforms :: [Platform]
|
||||||
platforms = toList $ Set.fromList (snd <$> Map.keys mapping)
|
platforms = toList $ Set.fromList (snd <$> Map.keys mapping)
|
||||||
|
|
||||||
label pf (BuildResult s i) = "[[" <> platformIcon pf <> icon s <> "]](https://hydra.nixos.org/build/" <> showT i <> ")"
|
label pf (BuildResult s i) = "[[" <> platformIcon pf <> icon s <> "]](https://hydra.nixos.org/build/" <> showT i <> ")"
|
||||||
|
|
||||||
makeSearchLink :: Int -> Text -> Text -> Text
|
makeSearchLink :: Int -> Text -> Text -> Text
|
||||||
|
@ -425,76 +583,177 @@ details summary content = ["<details><summary>" <> summary <> " </summary>", ""]
|
||||||
|
|
||||||
evalLine :: Eval -> UTCTime -> Text
|
evalLine :: Eval -> UTCTime -> Text
|
||||||
evalLine Eval{id, jobsetevalinputs = JobsetEvalInputs{nixpkgs = Nixpkgs{revision}}} fetchTime =
|
evalLine Eval{id, jobsetevalinputs = JobsetEvalInputs{nixpkgs = Nixpkgs{revision}}} fetchTime =
|
||||||
"*evaluation ["
|
"*evaluation ["
|
||||||
<> showT id
|
<> showT id
|
||||||
<> "](https://hydra.nixos.org/eval/"
|
<> "](https://hydra.nixos.org/eval/"
|
||||||
<> showT id
|
<> showT id
|
||||||
<> ") of nixpkgs commit ["
|
<> ") of nixpkgs commit ["
|
||||||
<> Text.take 7 revision
|
<> Text.take 7 revision
|
||||||
<> "](https://github.com/NixOS/nixpkgs/commits/"
|
<> "](https://github.com/NixOS/nixpkgs/commits/"
|
||||||
<> revision
|
<> revision
|
||||||
<> ") as of "
|
<> ") as of "
|
||||||
<> Text.pack (formatTime defaultTimeLocale "%Y-%m-%d %H:%M UTC" fetchTime)
|
<> Text.pack (formatTime defaultTimeLocale "%Y-%m-%d %H:%M UTC" fetchTime)
|
||||||
<> "*"
|
<> "*"
|
||||||
|
|
||||||
printBuildSummary :: Eval -> UTCTime -> StatusSummary -> [(Text, Int)] -> Text
|
printBuildSummary :: Eval -> UTCTime -> StatusSummary -> [(PkgName, Int)] -> Text
|
||||||
printBuildSummary eval@Eval{id} fetchTime summary topBrokenRdeps =
|
printBuildSummary eval@Eval{id} fetchTime summary topBrokenRdeps =
|
||||||
Text.unlines $
|
Text.unlines $
|
||||||
headline <> [""] <> tldr <> ((" * "<>) <$> (errors <> warnings)) <> [""]
|
headline <> [""] <> tldr <> ((" * "<>) <$> (errors <> warnings)) <> [""]
|
||||||
<> totals
|
<> totals
|
||||||
<> optionalList "#### Maintained packages with build failure" (maintainedList fails)
|
<> optionalList "#### Maintained Linux packages with build failure" (maintainedList (fails summaryLinux))
|
||||||
<> optionalList "#### Maintained packages with failed dependency" (maintainedList failedDeps)
|
<> optionalList "#### Maintained Linux packages with failed dependency" (maintainedList (failedDeps summaryLinux))
|
||||||
<> optionalList "#### Maintained packages with unknown error" (maintainedList unknownErr)
|
<> optionalList "#### Maintained Linux packages with unknown error" (maintainedList (unknownErr summaryLinux))
|
||||||
<> optionalHideableList "#### Unmaintained packages with build failure" (unmaintainedList fails)
|
<> optionalHideableList "#### Maintained Darwin packages with build failure" (maintainedList (fails summaryDarwin))
|
||||||
<> optionalHideableList "#### Unmaintained packages with failed dependency" (unmaintainedList failedDeps)
|
<> optionalHideableList "#### Maintained Darwin packages with failed dependency" (maintainedList (failedDeps summaryDarwin))
|
||||||
<> optionalHideableList "#### Unmaintained packages with unknown error" (unmaintainedList unknownErr)
|
<> optionalHideableList "#### Maintained Darwin packages with unknown error" (maintainedList (unknownErr summaryDarwin))
|
||||||
<> optionalHideableList "#### Top 50 broken packages, sorted by number of reverse dependencies" (brokenLine <$> topBrokenRdeps)
|
<> optionalHideableList "#### Unmaintained packages with build failure" (unmaintainedList (fails summary))
|
||||||
<> ["","*:arrow_heading_up:: The number of packages that depend (directly or indirectly) on this package (if any). If two numbers are shown the first (lower) number considers only packages which currently have enabled hydra jobs, i.e. are not marked broken. The second (higher) number considers all packages.*",""]
|
<> optionalHideableList "#### Unmaintained packages with failed dependency" (unmaintainedList (failedDeps summary))
|
||||||
<> footer
|
<> optionalHideableList "#### Unmaintained packages with unknown error" (unmaintainedList (unknownErr summary))
|
||||||
where
|
<> optionalHideableList "#### Top 50 broken packages, sorted by number of reverse dependencies" (brokenLine <$> topBrokenRdeps)
|
||||||
footer = ["*Report generated with [maintainers/scripts/haskell/hydra-report.hs](https://github.com/NixOS/nixpkgs/blob/haskell-updates/maintainers/scripts/haskell/hydra-report.hs)*"]
|
<> ["","*:arrow_heading_up:: The number of packages that depend (directly or indirectly) on this package (if any). If two numbers are shown the first (lower) number considers only packages which currently have enabled hydra jobs, i.e. are not marked broken. The second (higher) number considers all packages.*",""]
|
||||||
headline =
|
<> footer
|
||||||
[ "### [haskell-updates build report from hydra](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates)"
|
where
|
||||||
, evalLine eval fetchTime ]
|
footer = ["*Report generated with [maintainers/scripts/haskell/hydra-report.hs](https://github.com/NixOS/nixpkgs/blob/haskell-updates/maintainers/scripts/haskell/hydra-report.hs)*"]
|
||||||
totals =
|
|
||||||
[ "#### Build summary"
|
headline =
|
||||||
, ""
|
[ "### [haskell-updates build report from hydra](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates)"
|
||||||
]
|
, evalLine eval fetchTime
|
||||||
<> printTable "Platform" (\x -> makeSearchLink id (platform x <> " " <> platformIcon x) ("." <> platform x)) (\x -> showT x <> " " <> icon x) showT numSummary
|
]
|
||||||
brokenLine (name, rdeps) = "[" <> name <> "](https://packdeps.haskellers.com/reverse/" <> name <> ") :arrow_heading_up: " <> Text.pack (show rdeps) <> " "
|
|
||||||
numSummary = statusToNumSummary summary
|
totals :: [Text]
|
||||||
jobsByState predicate = Map.filter (predicate . worstState) summary
|
totals =
|
||||||
worstState = foldl' min Success . fmap state . summaryBuilds
|
[ "#### Build summary"
|
||||||
fails = jobsByState (== Failed)
|
, ""
|
||||||
failedDeps = jobsByState (== DependencyFailed)
|
] <>
|
||||||
unknownErr = jobsByState (\x -> x > DependencyFailed && x < TimedOut)
|
printTable
|
||||||
withMaintainer = Map.mapMaybe (\e -> (summaryBuilds e,) <$> nonEmpty (Set.toList (summaryMaintainers e)))
|
"Platform"
|
||||||
withoutMaintainer = Map.mapMaybe (\e -> if Set.null (summaryMaintainers e) then Just e else Nothing)
|
(\x -> makeSearchLink id (platform x <> " " <> platformIcon x) ("." <> platform x))
|
||||||
optionalList heading list = if null list then mempty else [heading] <> list
|
(\x -> showT x <> " " <> icon x)
|
||||||
optionalHideableList heading list = if null list then mempty else [heading] <> details (showT (length list) <> " job(s)") list
|
showT
|
||||||
maintainedList = showMaintainedBuild <=< Map.toList . withMaintainer
|
numSummary
|
||||||
unmaintainedList = showBuild <=< sortOn (\(snd -> x) -> (negate (summaryUnbrokenReverseDeps x), negate (summaryReverseDeps x))) . Map.toList . withoutMaintainer
|
|
||||||
showBuild (name, entry) = printJob id name (summaryBuilds entry, Text.pack (if summaryReverseDeps entry > 0 then " :arrow_heading_up: " <> show (summaryUnbrokenReverseDeps entry) <>" | "<> show (summaryReverseDeps entry) else ""))
|
brokenLine :: (PkgName, Int) -> Text
|
||||||
showMaintainedBuild (name, (table, maintainers)) = printJob id name (table, Text.intercalate " " (fmap ("@" <>) (toList maintainers)))
|
brokenLine (PkgName name, rdeps) =
|
||||||
tldr = case (errors, warnings) of
|
"[" <> name <> "](https://packdeps.haskellers.com/reverse/" <> name <>
|
||||||
([],[]) -> [":green_circle: **Ready to merge** (if there are no [evaluation errors](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates))"]
|
") :arrow_heading_up: " <> Text.pack (show rdeps) <> " "
|
||||||
([],_) -> [":yellow_circle: **Potential issues** (and possibly [evaluation errors](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates))"]
|
|
||||||
_ -> [":red_circle: **Branch not mergeable**"]
|
numSummary = statusToNumSummary summary
|
||||||
warnings =
|
|
||||||
if' (Unfinished > maybe Success worstState maintainedJob) "`maintained` jobset failed." <>
|
summaryLinux :: StatusSummary
|
||||||
if' (Unfinished == maybe Success worstState mergeableJob) "`mergeable` jobset is not finished." <>
|
summaryLinux = withOS Linux summary
|
||||||
if' (Unfinished == maybe Success worstState maintainedJob) "`maintained` jobset is not finished."
|
|
||||||
errors =
|
summaryDarwin :: StatusSummary
|
||||||
if' (isNothing mergeableJob) "No `mergeable` job found." <>
|
summaryDarwin = withOS Darwin summary
|
||||||
if' (isNothing maintainedJob) "No `maintained` job found." <>
|
|
||||||
if' (Unfinished > maybe Success worstState mergeableJob) "`mergeable` jobset failed." <>
|
-- Remove all BuildResult from the Table that have Platform that isn't for
|
||||||
if' (outstandingJobs (Platform "x86_64-linux") > 100) "Too many outstanding jobs on x86_64-linux." <>
|
-- the given OS.
|
||||||
if' (outstandingJobs (Platform "aarch64-linux") > 100) "Too many outstanding jobs on aarch64-linux." <>
|
tableForOS :: OS -> Table PkgSet Platform BuildResult -> Table PkgSet Platform BuildResult
|
||||||
if' (outstandingJobs (Platform "aarch64-darwin") > 100) "Too many outstanding jobs on aarch64-darwin."
|
tableForOS os = filterWithKeyTable (\_ platform _ -> platformIsOS os platform)
|
||||||
if' p e = if p then [e] else mempty
|
|
||||||
outstandingJobs platform | Table m <- numSummary = Map.findWithDefault 0 (platform, Unfinished) m
|
-- Remove all BuildResult from the StatusSummary that have a Platform that
|
||||||
maintainedJob = Map.lookup "maintained" summary
|
-- isn't for the given OS. Completely remove all PkgName from StatusSummary
|
||||||
mergeableJob = Map.lookup "mergeable" summary
|
-- that end up with no BuildResults.
|
||||||
|
withOS
|
||||||
|
:: OS
|
||||||
|
-> StatusSummary
|
||||||
|
-> StatusSummary
|
||||||
|
withOS os =
|
||||||
|
Map.mapMaybe
|
||||||
|
(\e@SummaryEntry{summaryBuilds} ->
|
||||||
|
let buildsForOS = tableForOS os summaryBuilds
|
||||||
|
in if nullTable buildsForOS then Nothing else Just e { summaryBuilds = buildsForOS }
|
||||||
|
)
|
||||||
|
|
||||||
|
jobsByState :: (BuildState -> Bool) -> StatusSummary -> StatusSummary
|
||||||
|
jobsByState predicate = Map.filter (predicate . worstState)
|
||||||
|
|
||||||
|
worstState :: SummaryEntry -> BuildState
|
||||||
|
worstState = foldl' min Success . fmap state . summaryBuilds
|
||||||
|
|
||||||
|
fails :: StatusSummary -> StatusSummary
|
||||||
|
fails = jobsByState (== Failed)
|
||||||
|
|
||||||
|
failedDeps :: StatusSummary -> StatusSummary
|
||||||
|
failedDeps = jobsByState (== DependencyFailed)
|
||||||
|
|
||||||
|
unknownErr :: StatusSummary -> StatusSummary
|
||||||
|
unknownErr = jobsByState (\x -> x > DependencyFailed && x < TimedOut)
|
||||||
|
|
||||||
|
withMaintainer :: StatusSummary -> Map PkgName (Table PkgSet Platform BuildResult, NonEmpty Text)
|
||||||
|
withMaintainer =
|
||||||
|
Map.mapMaybe
|
||||||
|
(\e -> (summaryBuilds e,) <$> nonEmpty (Set.toList (summaryMaintainers e)))
|
||||||
|
|
||||||
|
withoutMaintainer :: StatusSummary -> StatusSummary
|
||||||
|
withoutMaintainer = Map.mapMaybe (\e -> if Set.null (summaryMaintainers e) then Just e else Nothing)
|
||||||
|
|
||||||
|
optionalList :: Text -> [Text] -> [Text]
|
||||||
|
optionalList heading list = if null list then mempty else [heading] <> list
|
||||||
|
|
||||||
|
optionalHideableList :: Text -> [Text] -> [Text]
|
||||||
|
optionalHideableList heading list = if null list then mempty else [heading] <> details (showT (length list) <> " job(s)") list
|
||||||
|
|
||||||
|
maintainedList :: StatusSummary -> [Text]
|
||||||
|
maintainedList = showMaintainedBuild <=< Map.toList . withMaintainer
|
||||||
|
|
||||||
|
summaryEntryGetReverseDeps :: SummaryEntry -> (Int, Int)
|
||||||
|
summaryEntryGetReverseDeps sumEntry =
|
||||||
|
( negate $ summaryUnbrokenReverseDeps sumEntry
|
||||||
|
, negate $ summaryReverseDeps sumEntry
|
||||||
|
)
|
||||||
|
|
||||||
|
sortOnReverseDeps :: [(PkgName, SummaryEntry)] -> [(PkgName, SummaryEntry)]
|
||||||
|
sortOnReverseDeps = sortOn (\(_, sumEntry) -> summaryEntryGetReverseDeps sumEntry)
|
||||||
|
|
||||||
|
unmaintainedList :: StatusSummary -> [Text]
|
||||||
|
unmaintainedList = showBuild <=< sortOnReverseDeps . Map.toList . withoutMaintainer
|
||||||
|
|
||||||
|
showBuild :: (PkgName, SummaryEntry) -> [Text]
|
||||||
|
showBuild (name, entry) =
|
||||||
|
printJob
|
||||||
|
id
|
||||||
|
name
|
||||||
|
( summaryBuilds entry
|
||||||
|
, Text.pack
|
||||||
|
( if summaryReverseDeps entry > 0
|
||||||
|
then
|
||||||
|
" :arrow_heading_up: " <> show (summaryUnbrokenReverseDeps entry) <>
|
||||||
|
" | " <> show (summaryReverseDeps entry)
|
||||||
|
else ""
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
showMaintainedBuild
|
||||||
|
:: (PkgName, (Table PkgSet Platform BuildResult, NonEmpty Text)) -> [Text]
|
||||||
|
showMaintainedBuild (name, (table, maintainers)) =
|
||||||
|
printJob
|
||||||
|
id
|
||||||
|
name
|
||||||
|
( table
|
||||||
|
, Text.intercalate " " (fmap ("@" <>) (toList maintainers))
|
||||||
|
)
|
||||||
|
|
||||||
|
tldr = case (errors, warnings) of
|
||||||
|
([],[]) -> [":green_circle: **Ready to merge** (if there are no [evaluation errors](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates))"]
|
||||||
|
([],_) -> [":yellow_circle: **Potential issues** (and possibly [evaluation errors](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates))"]
|
||||||
|
_ -> [":red_circle: **Branch not mergeable**"]
|
||||||
|
warnings =
|
||||||
|
if' (Unfinished > maybe Success worstState maintainedJob) "`maintained` jobset failed." <>
|
||||||
|
if' (Unfinished == maybe Success worstState mergeableJob) "`mergeable` jobset is not finished." <>
|
||||||
|
if' (Unfinished == maybe Success worstState maintainedJob) "`maintained` jobset is not finished."
|
||||||
|
errors =
|
||||||
|
if' (isNothing mergeableJob) "No `mergeable` job found." <>
|
||||||
|
if' (isNothing maintainedJob) "No `maintained` job found." <>
|
||||||
|
if' (Unfinished > maybe Success worstState mergeableJob) "`mergeable` jobset failed." <>
|
||||||
|
if' (outstandingJobs (Platform "x86_64-linux") > 100) "Too many outstanding jobs on x86_64-linux." <>
|
||||||
|
if' (outstandingJobs (Platform "aarch64-linux") > 100) "Too many outstanding jobs on aarch64-linux."
|
||||||
|
|
||||||
|
if' p e = if p then [e] else mempty
|
||||||
|
|
||||||
|
outstandingJobs platform | Table m <- numSummary = Map.findWithDefault 0 (platform, Unfinished) m
|
||||||
|
|
||||||
|
maintainedJob = Map.lookup (PkgName "maintained") summary
|
||||||
|
mergeableJob = Map.lookup (PkgName "mergeable") summary
|
||||||
|
|
||||||
printEvalInfo :: IO ()
|
printEvalInfo :: IO ()
|
||||||
printEvalInfo = do
|
printEvalInfo = do
|
||||||
|
@ -509,13 +768,18 @@ printMaintainerPing = do
|
||||||
let tops = take 50 . sortOn (negate . snd) . fmap (second fst) . filter (\x -> maybe False broken $ Map.lookup (fst x) depMap) . Map.toList $ rdepMap
|
let tops = take 50 . sortOn (negate . snd) . fmap (second fst) . filter (\x -> maybe False broken $ Map.lookup (fst x) depMap) . Map.toList $ rdepMap
|
||||||
pure (rdepMap, tops)
|
pure (rdepMap, tops)
|
||||||
(eval, fetchTime, buildReport) <- readBuildReports
|
(eval, fetchTime, buildReport) <- readBuildReports
|
||||||
putStrLn (Text.unpack (printBuildSummary eval fetchTime (buildSummary maintainerMap reverseDependencyMap buildReport) topBrokenRdeps))
|
let statusSummaries =
|
||||||
|
fmap (buildToStatusSummary maintainerMap reverseDependencyMap) buildReport
|
||||||
|
buildSum :: StatusSummary
|
||||||
|
buildSum = combineStatusSummaries statusSummaries
|
||||||
|
textBuildSummary = printBuildSummary eval fetchTime buildSum topBrokenRdeps
|
||||||
|
Text.putStrLn textBuildSummary
|
||||||
|
|
||||||
printMarkBrokenList :: IO ()
|
printMarkBrokenList :: IO ()
|
||||||
printMarkBrokenList = do
|
printMarkBrokenList = do
|
||||||
(_, fetchTime, buildReport) <- readBuildReports
|
(_, fetchTime, buildReport) <- readBuildReports
|
||||||
runReq defaultHttpConfig $ forM_ buildReport \build@Build{job, id} ->
|
runReq defaultHttpConfig $ forM_ buildReport \build@Build{job, id} ->
|
||||||
case (getBuildState build, Text.splitOn "." job) of
|
case (getBuildState build, Text.splitOn "." $ unJobName job) of
|
||||||
(Failed, ["haskellPackages", name, "x86_64-linux"]) -> do
|
(Failed, ["haskellPackages", name, "x86_64-linux"]) -> do
|
||||||
-- Fetch build log from hydra to figure out the cause of the error.
|
-- Fetch build log from hydra to figure out the cause of the error.
|
||||||
build_log <- ByteString.lines <$> hydraPlainQuery ["build", showT id, "nixlog", "1", "raw"]
|
build_log <- ByteString.lines <$> hydraPlainQuery ["build", showT id, "nixlog", "1", "raw"]
|
||||||
|
|
69
pkgs/applications/graphics/identity/default.nix
Normal file
69
pkgs/applications/graphics/identity/default.nix
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
{ appstream-glib
|
||||||
|
, blueprint-compiler
|
||||||
|
, desktop-file-utils
|
||||||
|
, fetchFromGitLab
|
||||||
|
, gst_all_1
|
||||||
|
, gtk4
|
||||||
|
, lib
|
||||||
|
, libadwaita
|
||||||
|
, meson
|
||||||
|
, ninja
|
||||||
|
, nix-update-script
|
||||||
|
, pkg-config
|
||||||
|
, rustPlatform
|
||||||
|
, stdenv
|
||||||
|
, wrapGAppsHook4
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "identity";
|
||||||
|
version = "0.5.0";
|
||||||
|
|
||||||
|
src = fetchFromGitLab {
|
||||||
|
domain = "gitlab.gnome.org";
|
||||||
|
owner = "YaLTeR";
|
||||||
|
repo = "identity";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "sha256-ZBK2Vc2wnohABnWXRtmRdAAOnkTIHt4RriZitu8BW1A=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||||
|
inherit src;
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
hash = "sha256-5NUnrBHj3INhh9zbdwPink47cP6uJiRyzzdj+yiSVD8=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
appstream-glib
|
||||||
|
blueprint-compiler
|
||||||
|
desktop-file-utils
|
||||||
|
meson
|
||||||
|
ninja
|
||||||
|
pkg-config
|
||||||
|
wrapGAppsHook4
|
||||||
|
] ++ (with rustPlatform; [
|
||||||
|
cargoSetupHook
|
||||||
|
rust.cargo
|
||||||
|
rust.rustc
|
||||||
|
]);
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
gst_all_1.gst-libav
|
||||||
|
gst_all_1.gst-plugins-bad
|
||||||
|
gst_all_1.gst-plugins-base
|
||||||
|
gst_all_1.gst-plugins-good
|
||||||
|
gst_all_1.gstreamer
|
||||||
|
gtk4
|
||||||
|
libadwaita
|
||||||
|
];
|
||||||
|
|
||||||
|
passthru.updateScript = nix-update-script { };
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A program for comparing multiple versions of an image or video";
|
||||||
|
homepage = "https://gitlab.gnome.org/YaLTeR/identity";
|
||||||
|
maintainers = [ lib.maintainers.paveloom ];
|
||||||
|
license = lib.licenses.gpl3Plus;
|
||||||
|
platforms = lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -10,11 +10,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "logseq";
|
pname = "logseq";
|
||||||
version = "0.9.0";
|
version = "0.9.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
|
url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
|
||||||
hash = "sha256-5oX1LhqWvNiMF9ZI7BvpHe4bhB3vQp6dsjLYMQ9Jy+o=";
|
hash = "sha256-8jplCIylG1xbpp/VGnU06MwfqWe2E9iVQApZaWbhuVc=";
|
||||||
name = "${pname}-${version}.AppImage";
|
name = "${pname}-${version}.AppImage";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -13,16 +13,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "chart-testing";
|
pname = "chart-testing";
|
||||||
version = "3.7.1";
|
version = "3.8.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "helm";
|
owner = "helm";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-b8U7zVvzewSxqX7RG7+FMAVytW4s2apNxR3krNJuiro=";
|
hash = "sha256-ccP3t+Q4aZviYw8by2JDiuKHt7o6EKFxBxlhEntmV5A=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-z4hNGswxRMU40qkgwY3n516FiyaoeDaAE+CCla3TMkk=";
|
vendorHash = "sha256-4x/8uDCfrERC+ww+iyP+dHIQ820IOARXj60KnjqeDkM=";
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace pkg/config/config.go \
|
substituteInPlace pkg/config/config.go \
|
||||||
|
|
|
@ -28,13 +28,13 @@
|
||||||
"vendorHash": "sha256-jK7JuARpoxq7hvq5+vTtUwcYot0YqlOZdtDwq4IqKvk="
|
"vendorHash": "sha256-jK7JuARpoxq7hvq5+vTtUwcYot0YqlOZdtDwq4IqKvk="
|
||||||
},
|
},
|
||||||
"aiven": {
|
"aiven": {
|
||||||
"hash": "sha256-wVgfT/1o5Hz7xbX3OOfjF2P5bhV7kPxnXZOU/3erRpk=",
|
"hash": "sha256-dOdq/At0aUTaivvm557sgPwxC9EfRBexYrtpri8tzg4=",
|
||||||
"homepage": "https://registry.terraform.io/providers/aiven/aiven",
|
"homepage": "https://registry.terraform.io/providers/aiven/aiven",
|
||||||
"owner": "aiven",
|
"owner": "aiven",
|
||||||
"repo": "terraform-provider-aiven",
|
"repo": "terraform-provider-aiven",
|
||||||
"rev": "v4.1.3",
|
"rev": "v4.2.0",
|
||||||
"spdx": "MIT",
|
"spdx": "MIT",
|
||||||
"vendorHash": "sha256-wz1Wy/4GI8/Wlu828RX7OE+XJHzCS/X45tW3Jb7Tx3E="
|
"vendorHash": "sha256-QDO/xE9ZK7+UscjVBV06BMGavExD248PhLIrDB5oROU="
|
||||||
},
|
},
|
||||||
"akamai": {
|
"akamai": {
|
||||||
"hash": "sha256-j9KQWgcBjZiQrWjRdhQp82GawF/U6Y469MKN5V2R6xU=",
|
"hash": "sha256-j9KQWgcBjZiQrWjRdhQp82GawF/U6Y469MKN5V2R6xU=",
|
||||||
|
@ -228,13 +228,13 @@
|
||||||
"vendorHash": "sha256-9YmvaKPZVu+Fi0zlmJbKcU2iw2WUdzZJzgWPfkI1C24="
|
"vendorHash": "sha256-9YmvaKPZVu+Fi0zlmJbKcU2iw2WUdzZJzgWPfkI1C24="
|
||||||
},
|
},
|
||||||
"cloudfoundry": {
|
"cloudfoundry": {
|
||||||
"hash": "sha256-Js/UBblHkCkfaBVOpYFGyrleOjpNE1mo+Sf3OpXLkfM=",
|
"hash": "sha256-/2MUyn5+lpIp/UeT/7hfwLKF/mXTgtlJSs/B7lzXFys=",
|
||||||
"homepage": "https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry",
|
"homepage": "https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry",
|
||||||
"owner": "cloudfoundry-community",
|
"owner": "cloudfoundry-community",
|
||||||
"repo": "terraform-provider-cloudfoundry",
|
"repo": "terraform-provider-cloudfoundry",
|
||||||
"rev": "v0.50.5",
|
"rev": "v0.50.6",
|
||||||
"spdx": "MPL-2.0",
|
"spdx": "MPL-2.0",
|
||||||
"vendorHash": "sha256-2ulAzgDBdcYTqGRmEL9+h9MglZ9bt5WRXzNP099g2kk="
|
"vendorHash": "sha256-nBp/0HhflaoDzdHY6t42/gq3x6092ERIlNKv8ggahKE="
|
||||||
},
|
},
|
||||||
"cloudinit": {
|
"cloudinit": {
|
||||||
"hash": "sha256-fdtUKD8XC1Y72IzrsCfTZYVYZwLqY3gV2sajiw4Krzw=",
|
"hash": "sha256-fdtUKD8XC1Y72IzrsCfTZYVYZwLqY3gV2sajiw4Krzw=",
|
||||||
|
@ -382,11 +382,11 @@
|
||||||
"vendorHash": "sha256-E1gzdES/YVxQq2J47E2zosvud2C/ViBeQ8+RfNHMBAg="
|
"vendorHash": "sha256-E1gzdES/YVxQq2J47E2zosvud2C/ViBeQ8+RfNHMBAg="
|
||||||
},
|
},
|
||||||
"fastly": {
|
"fastly": {
|
||||||
"hash": "sha256-FO6SXpFk/DxOvDszwYiftB65JVNoN90JG6JFc8zid50=",
|
"hash": "sha256-hJHErQ8vDY9c1uaqiLYdxBns3U3XvAGKsobH8fit4HI=",
|
||||||
"homepage": "https://registry.terraform.io/providers/fastly/fastly",
|
"homepage": "https://registry.terraform.io/providers/fastly/fastly",
|
||||||
"owner": "fastly",
|
"owner": "fastly",
|
||||||
"repo": "terraform-provider-fastly",
|
"repo": "terraform-provider-fastly",
|
||||||
"rev": "v4.1.1",
|
"rev": "v4.1.2",
|
||||||
"spdx": "MPL-2.0",
|
"spdx": "MPL-2.0",
|
||||||
"vendorHash": null
|
"vendorHash": null
|
||||||
},
|
},
|
||||||
|
@ -820,13 +820,13 @@
|
||||||
"vendorHash": null
|
"vendorHash": null
|
||||||
},
|
},
|
||||||
"okta": {
|
"okta": {
|
||||||
"hash": "sha256-O4ZTGYM9r3XFzr2Nx/Tt2Fs7WOqQuQWfo+ZMmZyg+mo=",
|
"hash": "sha256-j4tOWcY3x4FpfCEdB7x5XP7Pqms97tYtEvGDn8Fjst8=",
|
||||||
"homepage": "https://registry.terraform.io/providers/okta/okta",
|
"homepage": "https://registry.terraform.io/providers/okta/okta",
|
||||||
"owner": "okta",
|
"owner": "okta",
|
||||||
"repo": "terraform-provider-okta",
|
"repo": "terraform-provider-okta",
|
||||||
"rev": "v3.44.0",
|
"rev": "v3.45.0",
|
||||||
"spdx": "MPL-2.0",
|
"spdx": "MPL-2.0",
|
||||||
"vendorHash": "sha256-KYOzbbBjE2C7+1St62rs9mlJFhpIlWQJ0reh5V5tQsk="
|
"vendorHash": "sha256-DkC4BmFfckBtT12lr3rgU9Mg4Nb+7sXjDT/EdfbSFQM="
|
||||||
},
|
},
|
||||||
"oktaasa": {
|
"oktaasa": {
|
||||||
"hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
|
"hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
|
||||||
|
@ -1099,11 +1099,11 @@
|
||||||
"vendorHash": "sha256-GkmUKSnqkabwGCl22/90529BWb0oJaIJHYHlS/h3KNY="
|
"vendorHash": "sha256-GkmUKSnqkabwGCl22/90529BWb0oJaIJHYHlS/h3KNY="
|
||||||
},
|
},
|
||||||
"tencentcloud": {
|
"tencentcloud": {
|
||||||
"hash": "sha256-N6x3CKpLL62lc+V038740EGBicjroc07KhkvyCYgn24=",
|
"hash": "sha256-Lf6IKNdl7eiFBdCSbuXaawMno7grlIQBwM99sg75sS0=",
|
||||||
"homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud",
|
"homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud",
|
||||||
"owner": "tencentcloudstack",
|
"owner": "tencentcloudstack",
|
||||||
"repo": "terraform-provider-tencentcloud",
|
"repo": "terraform-provider-tencentcloud",
|
||||||
"rev": "v1.79.18",
|
"rev": "v1.79.19",
|
||||||
"spdx": "MPL-2.0",
|
"spdx": "MPL-2.0",
|
||||||
"vendorHash": null
|
"vendorHash": null
|
||||||
},
|
},
|
||||||
|
|
|
@ -6,17 +6,18 @@
|
||||||
, installShellFiles
|
, installShellFiles
|
||||||
, util-linux
|
, util-linux
|
||||||
, nixosTests
|
, nixosTests
|
||||||
|
, kubernetes
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "containerd";
|
pname = "containerd";
|
||||||
version = "1.6.19";
|
version = "1.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "containerd";
|
owner = "containerd";
|
||||||
repo = "containerd";
|
repo = "containerd";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-Us7NEv2BngV1Q/Bkuv4XOjVjpqThL0LnIH+yciPG3L8=";
|
hash = "sha256-OHgakSNqIbXYDC7cTw2fy0HlElQMilDbSD5SSjbYJhc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = null;
|
vendorHash = null;
|
||||||
|
@ -42,7 +43,7 @@ buildGoModule rec {
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests = { inherit (nixosTests) docker; };
|
passthru.tests = { inherit (nixosTests) docker; } // kubernetes.tests;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
changelog = "https://github.com/containerd/containerd/releases/tag/${src.rev}";
|
changelog = "https://github.com/containerd/containerd/releases/tag/${src.rev}";
|
||||||
|
|
|
@ -71,12 +71,12 @@ let
|
||||||
let
|
let
|
||||||
name = last (builtins.split "/" nameOrPath);
|
name = last (builtins.split "/" nameOrPath);
|
||||||
in
|
in
|
||||||
pkgs.runCommand name (if (types.str.check content) then {
|
pkgs.runCommand name ((if (types.str.check content) then {
|
||||||
inherit content;
|
inherit content;
|
||||||
passAsFile = [ "content" ];
|
passAsFile = [ "content" ];
|
||||||
} else {
|
} else {
|
||||||
contentPath = content;
|
contentPath = content;
|
||||||
} // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) {
|
}) // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) {
|
||||||
# post-link-hook expects codesign_allocate to be in PATH
|
# post-link-hook expects codesign_allocate to be in PATH
|
||||||
# https://github.com/NixOS/nixpkgs/issues/154203
|
# https://github.com/NixOS/nixpkgs/issues/154203
|
||||||
# https://github.com/NixOS/nixpkgs/issues/148189
|
# https://github.com/NixOS/nixpkgs/issues/148189
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"commit": "083bd4855df26eb1db1c38c31fdf79ccf67c2f13",
|
"commit": "4a67d2eace63deeaec7dd3553d04e892b39b63a7",
|
||||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/083bd4855df26eb1db1c38c31fdf79ccf67c2f13.tar.gz",
|
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/4a67d2eace63deeaec7dd3553d04e892b39b63a7.tar.gz",
|
||||||
"sha256": "0m0d33xd1zfpcdbyhq7akq73dpgwggi39l1wp99vpfgpi220ad5a",
|
"sha256": "12y659k8qs0rnajcfdwwwwz5ywcnf3ygxi2kmv8b31x4znll1gfs",
|
||||||
"msg": "Update from Hackage at 2023-03-01T16:43:25Z"
|
"msg": "Update from Hackage at 2023-03-13T08:59:39Z"
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
|
|
||||||
rebar3Relx rec {
|
rebar3Relx rec {
|
||||||
pname = "erlfmt";
|
pname = "erlfmt";
|
||||||
version = "1.1.0";
|
version = "1.2.0";
|
||||||
releaseType = "escript";
|
releaseType = "escript";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "WhatsApp";
|
owner = "WhatsApp";
|
||||||
repo = "erlfmt";
|
repo = "erlfmt";
|
||||||
sha256 = "sha256-diZCyw4eR+h/Pc73HDfnFaXnNXwqu3XabTbeiWVPNPI=";
|
sha256 = "sha256-mma4QH6GlayTG5I9hW9wNZph/IJcCXjiY7Ft3hfxaPg=";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
};
|
};
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -20,21 +20,59 @@ with haskellLib;
|
||||||
|
|
||||||
self: super: {
|
self: super: {
|
||||||
|
|
||||||
|
# Make sure that Cabal 3.8.* can be built as-is
|
||||||
|
Cabal_3_8_1_0 = doDistribute (super.Cabal_3_8_1_0.override ({
|
||||||
|
Cabal-syntax = self.Cabal-syntax_3_8_1_0;
|
||||||
|
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.2.5") {
|
||||||
|
# Use process core package when possible
|
||||||
|
process = self.process_1_6_17_0;
|
||||||
|
}));
|
||||||
|
|
||||||
|
# Make sure that Cabal 3.10.* can be built as-is
|
||||||
|
Cabal_3_10_1_0 = doDistribute (super.Cabal_3_10_1_0.override ({
|
||||||
|
Cabal-syntax = self.Cabal-syntax_3_10_1_0;
|
||||||
|
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.2.5") {
|
||||||
|
# Use process core package when possible
|
||||||
|
process = self.process_1_6_17_0;
|
||||||
|
}));
|
||||||
|
|
||||||
# cabal-install needs most recent versions of Cabal and Cabal-syntax,
|
# cabal-install needs most recent versions of Cabal and Cabal-syntax,
|
||||||
# so we need to put some extra work for non-latest GHCs
|
# so we need to put some extra work for non-latest GHCs
|
||||||
inherit (
|
inherit (
|
||||||
let
|
let
|
||||||
# !!! Use cself/csuper inside for the actual overrides
|
# !!! Use cself/csuper inside for the actual overrides
|
||||||
cabalInstallOverlay = cself: csuper:
|
cabalInstallOverlay = cself: csuper:
|
||||||
lib.optionalAttrs (lib.versionOlder self.ghc.version "9.4") {
|
lib.optionalAttrs (lib.versionOlder self.ghc.version "9.6") {
|
||||||
Cabal = cself.Cabal_3_8_1_0;
|
Cabal = cself.Cabal_3_10_1_0;
|
||||||
Cabal-syntax = cself.Cabal-syntax_3_8_1_0;
|
Cabal-syntax = cself.Cabal-syntax_3_10_1_0;
|
||||||
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.2.5") {
|
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.4") {
|
||||||
# GHC 9.2.5 starts shipping 1.6.16.0
|
# We need at least directory >= 1.3.7.0. Using the latest version
|
||||||
|
# 1.3.8.* is not an option since it causes very annoying dependencies
|
||||||
|
# on newer versions of unix and filepath than GHC 9.2 ships
|
||||||
|
directory = cself.directory_1_3_7_1;
|
||||||
|
# GHC 9.2.5 starts shipping 1.6.16.0 which is required by
|
||||||
|
# cabal-install, but we need to recompile process even if the correct
|
||||||
|
# version is available to prevent inconsistent dependencies:
|
||||||
|
# process depends on directory.
|
||||||
process = cself.process_1_6_17_0;
|
process = cself.process_1_6_17_0;
|
||||||
} // lib.optionalAttrs (lib.versions.majorMinor self.ghc.version == "8.10") {
|
|
||||||
|
# hspec < 2.10 depends on ghc (the library) directly which in turn
|
||||||
|
# depends on directory, causing a dependency conflict which is practically
|
||||||
|
# not solvable short of recompiling GHC. Instead of adding
|
||||||
|
# allowInconsistentDependencies for all reverse dependencies of hspec-core,
|
||||||
|
# just upgrade to an hspec version without the offending dependency.
|
||||||
|
hspec-core = cself.hspec-core_2_10_10;
|
||||||
|
hspec-discover = cself.hspec-discover_2_10_10;
|
||||||
|
hspec = cself.hspec_2_10_10;
|
||||||
|
|
||||||
|
# hspec-discover and hspec-core depend on hspec-meta for testing which
|
||||||
|
# we need to avoid since it depends on ghc as well. Since hspec*_2_10*
|
||||||
|
# are overridden to take the versioned attributes as inputs, we need
|
||||||
|
# to make sure to override the versioned attribute with this fix.
|
||||||
|
hspec-discover_2_10_10 = dontCheck csuper.hspec-discover_2_10_10;
|
||||||
|
|
||||||
# Prevent dependency on doctest which causes an inconsistent dependency
|
# Prevent dependency on doctest which causes an inconsistent dependency
|
||||||
# due to depending on ghc-8.10.7 (with bundled process) vs. process 1.6.16.0
|
# due to depending on ghc which depends on directory etc.
|
||||||
vector = dontCheck csuper.vector;
|
vector = dontCheck csuper.vector;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
|
@ -62,6 +100,15 @@ self: super: {
|
||||||
guardian
|
guardian
|
||||||
;
|
;
|
||||||
|
|
||||||
|
vector = overrideCabal (old: {
|
||||||
|
# Too strict bounds on doctest which isn't used, but is part of the configuration
|
||||||
|
jailbreak = true;
|
||||||
|
# vector-doctest seems to be broken when executed via ./Setup test
|
||||||
|
testTarget = lib.concatStringsSep " " [
|
||||||
|
"vector-tests-O0"
|
||||||
|
"vector-tests-O2"
|
||||||
|
];
|
||||||
|
}) super.vector;
|
||||||
|
|
||||||
# There are numerical tests on random data, that may fail occasionally
|
# There are numerical tests on random data, that may fail occasionally
|
||||||
lapack = dontCheck super.lapack;
|
lapack = dontCheck super.lapack;
|
||||||
|
@ -192,10 +239,6 @@ self: super: {
|
||||||
|
|
||||||
pandoc-cli = throwIfNot (versionOlder super.pandoc.version "3.0.0") "pandoc-cli contains the pandoc executable starting with 3.0, this needs to be considered now." (markBroken (dontDistribute super.pandoc-cli));
|
pandoc-cli = throwIfNot (versionOlder super.pandoc.version "3.0.0") "pandoc-cli contains the pandoc executable starting with 3.0, this needs to be considered now." (markBroken (dontDistribute super.pandoc-cli));
|
||||||
|
|
||||||
# sse2 flag due to https://github.com/haskell/vector/issues/47.
|
|
||||||
# Jailbreak is necessary for QuickCheck dependency.
|
|
||||||
vector = doJailbreak (if pkgs.stdenv.isi686 then appendConfigureFlag "--ghc-options=-msse2" super.vector else super.vector);
|
|
||||||
|
|
||||||
inline-c-cpp = overrideCabal (drv: {
|
inline-c-cpp = overrideCabal (drv: {
|
||||||
patches = drv.patches or [] ++ [
|
patches = drv.patches or [] ++ [
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
|
@ -495,6 +538,10 @@ self: super: {
|
||||||
rematch = dontCheck super.rematch; # https://github.com/tcrayford/rematch/issues/5
|
rematch = dontCheck super.rematch; # https://github.com/tcrayford/rematch/issues/5
|
||||||
rematch-text = dontCheck super.rematch-text; # https://github.com/tcrayford/rematch/issues/6
|
rematch-text = dontCheck super.rematch-text; # https://github.com/tcrayford/rematch/issues/6
|
||||||
|
|
||||||
|
# Package exists only to be example of documentation, yet it has restrictive
|
||||||
|
# "base" dependency.
|
||||||
|
haddock-cheatsheet = doJailbreak super.haddock-cheatsheet;
|
||||||
|
|
||||||
# no haddock since this is an umbrella package.
|
# no haddock since this is an umbrella package.
|
||||||
cloud-haskell = dontHaddock super.cloud-haskell;
|
cloud-haskell = dontHaddock super.cloud-haskell;
|
||||||
|
|
||||||
|
@ -846,12 +893,12 @@ self: super: {
|
||||||
testHaskellDepends = drv.testHaskellDepends or [] ++ [ self.hspec-meta_2_10_5 ];
|
testHaskellDepends = drv.testHaskellDepends or [] ++ [ self.hspec-meta_2_10_5 ];
|
||||||
testToolDepends = drv.testToolDepends or [] ++ [ pkgs.git ];
|
testToolDepends = drv.testToolDepends or [] ++ [ pkgs.git ];
|
||||||
}) (super.sensei.override {
|
}) (super.sensei.override {
|
||||||
hspec = self.hspec_2_10_9;
|
hspec = self.hspec_2_10_10;
|
||||||
hspec-wai = self.hspec-wai.override {
|
hspec-wai = self.hspec-wai.override {
|
||||||
hspec = self.hspec_2_10_9;
|
hspec = self.hspec_2_10_10;
|
||||||
};
|
};
|
||||||
hspec-contrib = self.hspec-contrib.override {
|
hspec-contrib = self.hspec-contrib.override {
|
||||||
hspec-core = self.hspec-core_2_10_9;
|
hspec-core = self.hspec-core_2_10_10;
|
||||||
};
|
};
|
||||||
fsnotify = self.fsnotify_0_4_1_0;
|
fsnotify = self.fsnotify_0_4_1_0;
|
||||||
});
|
});
|
||||||
|
@ -1551,16 +1598,18 @@ self: super: {
|
||||||
servant-openapi3 = dontCheck super.servant-openapi3;
|
servant-openapi3 = dontCheck super.servant-openapi3;
|
||||||
|
|
||||||
# Give hspec 2.10.* correct dependency versions without overrideScope
|
# Give hspec 2.10.* correct dependency versions without overrideScope
|
||||||
hspec_2_10_9 = doDistribute (super.hspec_2_10_9.override {
|
hspec_2_10_10 = doDistribute (super.hspec_2_10_10.override {
|
||||||
hspec-discover = self.hspec-discover_2_10_9;
|
hspec-discover = self.hspec-discover_2_10_10;
|
||||||
hspec-core = self.hspec-core_2_10_9;
|
hspec-core = self.hspec-core_2_10_10;
|
||||||
});
|
});
|
||||||
hspec-discover_2_10_9 = super.hspec-discover_2_10_9.override {
|
hspec-discover_2_10_10 = doDistribute (super.hspec-discover_2_10_10.override {
|
||||||
hspec-meta = self.hspec-meta_2_10_5;
|
hspec-meta = self.hspec-meta_2_10_5;
|
||||||
};
|
});
|
||||||
hspec-core_2_10_9 = super.hspec-core_2_10_9.override {
|
# Need to disable tests to prevent an infinite recursion if hspec-core_2_10_10
|
||||||
|
# is overlayed to hspec-core.
|
||||||
|
hspec-core_2_10_10 = doDistribute (dontCheck (super.hspec-core_2_10_10.override {
|
||||||
hspec-meta = self.hspec-meta_2_10_5;
|
hspec-meta = self.hspec-meta_2_10_5;
|
||||||
};
|
}));
|
||||||
|
|
||||||
# Point hspec 2.7.10 to correct dependencies
|
# Point hspec 2.7.10 to correct dependencies
|
||||||
hspec_2_7_10 = super.hspec_2_7_10.override {
|
hspec_2_7_10 = super.hspec_2_7_10.override {
|
||||||
|
@ -1572,12 +1621,6 @@ self: super: {
|
||||||
servant-swagger-ui-core = doJailbreak super.servant-swagger-ui-core;
|
servant-swagger-ui-core = doJailbreak super.servant-swagger-ui-core;
|
||||||
|
|
||||||
hercules-ci-agent = lib.pipe super.hercules-ci-agent [
|
hercules-ci-agent = lib.pipe super.hercules-ci-agent [
|
||||||
(appendPatch (fetchpatch {
|
|
||||||
name = "hercules-ci-agent-support-cachix-1.3.patch";
|
|
||||||
url = "https://github.com/hercules-ci/hercules-ci-agent/pull/500.diff";
|
|
||||||
sha256 = "sha256-ErrFvzB1NiIJLpsP2wfx5CX8DnH1x5i/ijQZEeuOzeI=";
|
|
||||||
relative = "hercules-ci-agent";
|
|
||||||
}))
|
|
||||||
(self.generateOptparseApplicativeCompletions [ "hercules-ci-agent" ])
|
(self.generateOptparseApplicativeCompletions [ "hercules-ci-agent" ])
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -2248,11 +2291,6 @@ self: super: {
|
||||||
# Too strict bounds on chell: https://github.com/fpco/haskell-filesystem/issues/24
|
# Too strict bounds on chell: https://github.com/fpco/haskell-filesystem/issues/24
|
||||||
system-fileio = doJailbreak super.system-fileio;
|
system-fileio = doJailbreak super.system-fileio;
|
||||||
|
|
||||||
# Temporarily upgrade haskell-gi until stackage advances
|
|
||||||
# Fixes build of gi-harfbuzz with harfbuzz >= 7.0
|
|
||||||
# https://github.com/haskell-gi/haskell-gi/issues/396#issuecomment-1445181362
|
|
||||||
haskell-gi = doDistribute self.haskell-gi_0_26_3;
|
|
||||||
|
|
||||||
# Bounds too strict on base and ghc-prim: https://github.com/tibbe/ekg-core/pull/43 (merged); waiting on hackage release
|
# Bounds too strict on base and ghc-prim: https://github.com/tibbe/ekg-core/pull/43 (merged); waiting on hackage release
|
||||||
ekg-core = assert super.ekg-core.version == "0.1.1.7"; doJailbreak super.ekg-core;
|
ekg-core = assert super.ekg-core.version == "0.1.1.7"; doJailbreak super.ekg-core;
|
||||||
hasura-ekg-core = doJailbreak super.hasura-ekg-core;
|
hasura-ekg-core = doJailbreak super.hasura-ekg-core;
|
||||||
|
@ -2491,6 +2529,10 @@ self: super: {
|
||||||
editedCabalFile = null;
|
editedCabalFile = null;
|
||||||
}) super.true-name);
|
}) super.true-name);
|
||||||
|
|
||||||
|
# ffmpeg-light works against the ffmpeg-4 API, but the default ffmpeg in nixpkgs is ffmpeg-5.
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/220972#issuecomment-1484017192
|
||||||
|
ffmpeg-light = super.ffmpeg-light.override { ffmpeg = pkgs.ffmpeg_4; };
|
||||||
|
|
||||||
# posix-api has had broken tests since 2020 (until at least 2023-01-11)
|
# posix-api has had broken tests since 2020 (until at least 2023-01-11)
|
||||||
# raehik has a fix pending: https://github.com/andrewthad/posix-api/pull/14
|
# raehik has a fix pending: https://github.com/andrewthad/posix-api/pull/14
|
||||||
posix-api = dontCheck super.posix-api;
|
posix-api = dontCheck super.posix-api;
|
||||||
|
@ -2501,4 +2543,8 @@ self: super: {
|
||||||
|
|
||||||
# 2023-03-05: restrictive bounds on base https://github.com/diagrams/diagrams-gtk/issues/11
|
# 2023-03-05: restrictive bounds on base https://github.com/diagrams/diagrams-gtk/issues/11
|
||||||
diagrams-gtk = doJailbreak super.diagrams-gtk;
|
diagrams-gtk = doJailbreak super.diagrams-gtk;
|
||||||
|
|
||||||
|
# 2023-03-13: restrictive bounds on validation-selective (>=0.1.0 && <0.2).
|
||||||
|
# Get rid of this in the next release: https://github.com/kowainik/tomland/commit/37f16460a6dfe4606d48b8b86c13635d409442cd
|
||||||
|
tomland = doJailbreak super.tomland;
|
||||||
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
||||||
|
|
|
@ -118,9 +118,6 @@ self: super: {
|
||||||
|
|
||||||
ormolu = super.ormolu_0_2_0_0;
|
ormolu = super.ormolu_0_2_0_0;
|
||||||
|
|
||||||
# vector 0.12.2 indroduced doctest checks that don’t work on older compilers
|
|
||||||
vector = dontCheck super.vector;
|
|
||||||
|
|
||||||
ghc-api-compat = doDistribute (unmarkBroken super.ghc-api-compat_8_6);
|
ghc-api-compat = doDistribute (unmarkBroken super.ghc-api-compat_8_6);
|
||||||
|
|
||||||
mime-string = disableOptimization super.mime-string;
|
mime-string = disableOptimization super.mime-string;
|
||||||
|
|
|
@ -81,7 +81,6 @@ self: super: {
|
||||||
tar = doJailbreak super.tar;
|
tar = doJailbreak super.tar;
|
||||||
time-compat = doJailbreak super.time-compat;
|
time-compat = doJailbreak super.time-compat;
|
||||||
tuple = addBuildDepend self.base-orphans super.tuple;
|
tuple = addBuildDepend self.base-orphans super.tuple;
|
||||||
vector = doJailbreak (dontCheck super.vector);
|
|
||||||
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
||||||
vector-th-unbox = doJailbreak super.vector-th-unbox;
|
vector-th-unbox = doJailbreak super.vector-th-unbox;
|
||||||
zlib = doJailbreak super.zlib;
|
zlib = doJailbreak super.zlib;
|
||||||
|
|
|
@ -60,9 +60,6 @@ self: super: {
|
||||||
# https://mail.haskell.org/pipermail/haskell-cafe/2022-October/135613.html
|
# https://mail.haskell.org/pipermail/haskell-cafe/2022-October/135613.html
|
||||||
language-javascript_0_7_0_0 = dontCheck super.language-javascript_0_7_0_0;
|
language-javascript_0_7_0_0 = dontCheck super.language-javascript_0_7_0_0;
|
||||||
|
|
||||||
th-desugar = self.th-desugar_1_14;
|
|
||||||
vector = dontCheck super.vector;
|
|
||||||
|
|
||||||
# Apply patches from head.hackage.
|
# Apply patches from head.hackage.
|
||||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
|
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/language-haskell-extract-0.2.4.patch";
|
||||||
|
|
|
@ -71,9 +71,7 @@ in {
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
|
|
||||||
# Jailbreak to allow quickcheck-instances-0.3.28 (too strict lower bound)
|
aeson = doDistribute self.aeson_2_1_2_1;
|
||||||
aeson = doDistribute (doJailbreak self.aeson_2_1_2_1);
|
|
||||||
|
|
||||||
assoc = doJailbreak super.assoc;
|
assoc = doJailbreak super.assoc;
|
||||||
async = doJailbreak super.async;
|
async = doJailbreak super.async;
|
||||||
base64-bytestring = doJailbreak super.base64-bytestring;
|
base64-bytestring = doJailbreak super.base64-bytestring;
|
||||||
|
@ -92,8 +90,6 @@ in {
|
||||||
hashable-time = doJailbreak super.hashable-time;
|
hashable-time = doJailbreak super.hashable-time;
|
||||||
HTTP = overrideCabal (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; }) (doJailbreak super.HTTP);
|
HTTP = overrideCabal (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; }) (doJailbreak super.HTTP);
|
||||||
integer-logarithms = overrideCabal (drv: { postPatch = "sed -i -e 's, <1.1, <1.3,' integer-logarithms.cabal"; }) (doJailbreak super.integer-logarithms);
|
integer-logarithms = overrideCabal (drv: { postPatch = "sed -i -e 's, <1.1, <1.3,' integer-logarithms.cabal"; }) (doJailbreak super.integer-logarithms);
|
||||||
indexed-traversable = doJailbreak super.indexed-traversable;
|
|
||||||
indexed-traversable-instances = doJailbreak super.indexed-traversable-instances;
|
|
||||||
lifted-async = doJailbreak super.lifted-async;
|
lifted-async = doJailbreak super.lifted-async;
|
||||||
lukko = doJailbreak super.lukko;
|
lukko = doJailbreak super.lukko;
|
||||||
lzma-conduit = doJailbreak super.lzma-conduit;
|
lzma-conduit = doJailbreak super.lzma-conduit;
|
||||||
|
@ -107,15 +103,19 @@ in {
|
||||||
rope-utf16-splay = doDistribute self.rope-utf16-splay_0_4_0_0;
|
rope-utf16-splay = doDistribute self.rope-utf16-splay_0_4_0_0;
|
||||||
shake-cabal = doDistribute self.shake-cabal_0_2_2_3;
|
shake-cabal = doDistribute self.shake-cabal_0_2_2_3;
|
||||||
libmpd = doJailbreak super.libmpd;
|
libmpd = doJailbreak super.libmpd;
|
||||||
base-orphans = dontCheck super.base-orphans;
|
generics-sop = doJailbreak super.generics-sop;
|
||||||
|
microlens-th = doJailbreak super.microlens-th;
|
||||||
|
# generically needs base-orphans for 9.4 only
|
||||||
|
base-orphans = dontCheck (doDistribute super.base-orphans);
|
||||||
|
generically = addBuildDepend self.base-orphans super.generically;
|
||||||
|
|
||||||
# Note: Any compilation fixes need to be done on the versioned attributes,
|
# Note: Any compilation fixes need to be done on the versioned attributes,
|
||||||
# since those are used for the internal dependencies between the versioned
|
# since those are used for the internal dependencies between the versioned
|
||||||
# hspec packages in configuration-common.nix.
|
# hspec packages in configuration-common.nix.
|
||||||
hspec = self.hspec_2_10_9;
|
hspec = self.hspec_2_10_10;
|
||||||
hspec-core = self.hspec-core_2_10_9;
|
hspec-core = self.hspec-core_2_10_10;
|
||||||
hspec-meta = self.hspec-meta_2_10_5;
|
hspec-meta = self.hspec-meta_2_10_5;
|
||||||
hspec-discover = self.hspec-discover_2_10_9;
|
hspec-discover = self.hspec-discover_2_10_10;
|
||||||
|
|
||||||
# the dontHaddock is due to a GHC panic. might be this bug, not sure.
|
# the dontHaddock is due to a GHC panic. might be this bug, not sure.
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/21619
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/21619
|
||||||
|
@ -131,12 +131,12 @@ in {
|
||||||
syb = dontCheck super.syb;
|
syb = dontCheck super.syb;
|
||||||
|
|
||||||
splitmix = doJailbreak super.splitmix;
|
splitmix = doJailbreak super.splitmix;
|
||||||
th-desugar = self.th-desugar_1_14;
|
th-desugar = doDistribute self.th-desugar_1_15;
|
||||||
|
th-abstraction = doDistribute self.th-abstraction_0_5_0_0;
|
||||||
time-compat = doJailbreak super.time-compat;
|
time-compat = doJailbreak super.time-compat;
|
||||||
tomland = doJailbreak super.tomland;
|
tomland = doJailbreak super.tomland;
|
||||||
type-equality = doJailbreak super.type-equality;
|
type-equality = doJailbreak super.type-equality;
|
||||||
unordered-containers = doJailbreak super.unordered-containers;
|
unordered-containers = doJailbreak super.unordered-containers;
|
||||||
vector = dontCheck super.vector;
|
|
||||||
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
||||||
|
|
||||||
hpack = overrideCabal (drv: {
|
hpack = overrideCabal (drv: {
|
||||||
|
@ -209,6 +209,7 @@ in {
|
||||||
servant-client = doJailbreak super.servant-client;
|
servant-client = doJailbreak super.servant-client;
|
||||||
relude = doJailbreak super.relude;
|
relude = doJailbreak super.relude;
|
||||||
|
|
||||||
|
# Fixes compilation failure with GHC >= 9.4 on aarch64-* due to an API change
|
||||||
cborg = appendPatch (pkgs.fetchpatch {
|
cborg = appendPatch (pkgs.fetchpatch {
|
||||||
name = "cborg-support-ghc-9.4.patch";
|
name = "cborg-support-ghc-9.4.patch";
|
||||||
url = "https://github.com/well-typed/cborg/pull/304.diff";
|
url = "https://github.com/well-typed/cborg/pull/304.diff";
|
||||||
|
|
|
@ -1,10 +1,15 @@
|
||||||
{ pkgs, haskellLib }:
|
{ pkgs, haskellLib }:
|
||||||
|
|
||||||
|
with haskellLib;
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (pkgs) lib;
|
inherit (pkgs) lib;
|
||||||
in
|
|
||||||
|
|
||||||
with haskellLib;
|
jailbreakWhileRevision = rev:
|
||||||
|
overrideCabal (old: {
|
||||||
|
jailbreak = assert old.revision or "0" == toString rev; true;
|
||||||
|
});
|
||||||
|
in
|
||||||
|
|
||||||
self: super: {
|
self: super: {
|
||||||
llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
||||||
|
@ -47,4 +52,108 @@ self: super: {
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
xhtml = null;
|
xhtml = null;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Version deviations from Stackage LTS
|
||||||
|
#
|
||||||
|
|
||||||
|
th-desugar = doDistribute self.th-desugar_1_15;
|
||||||
|
th-abstraction = doDistribute self.th-abstraction_0_5_0_0;
|
||||||
|
tagged = doDistribute self.tagged_0_8_7; # allows template-haskell-2.20
|
||||||
|
primitive = doDistribute (dontCheck self.primitive_0_7_4_0); # allows base >= 4.18
|
||||||
|
indexed-traversable = doDistribute super.indexed-traversable_0_1_2_1; # allows base >= 4.18
|
||||||
|
OneTuple = doDistribute (dontCheck super.OneTuple_0_4_1_1); # allows base >= 4.18
|
||||||
|
inspection-testing = doDistribute self.inspection-testing_0_5_0_1; # allows base >= 4.18
|
||||||
|
tasty-inspection-testing = doDistribute self.tasty-inspection-testing_0_2;
|
||||||
|
# Too strict bounds on ghc-prim and template-haskell
|
||||||
|
aeson = doDistribute (doJailbreak self.aeson_2_1_2_1);
|
||||||
|
# Too strict bounds on ghc-prim
|
||||||
|
memory = doDistribute self.memory_0_18_0;
|
||||||
|
|
||||||
|
ghc-lib = doDistribute self.ghc-lib_9_6_1_20230312;
|
||||||
|
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_6_1_20230312;
|
||||||
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Too strict bounds without upstream fix
|
||||||
|
#
|
||||||
|
|
||||||
|
# Forbids transformers >= 0.6
|
||||||
|
quickcheck-classes-base = doJailbreak super.quickcheck-classes-base;
|
||||||
|
# Forbids base >= 4.18
|
||||||
|
singleton-bool = doJailbreak super.singleton-bool;
|
||||||
|
# Forbids base >= 4.18
|
||||||
|
unliftio-core = doJailbreak super.unliftio-core;
|
||||||
|
# Forbids mtl >= 2.3
|
||||||
|
ChasingBottoms = doJailbreak super.ChasingBottoms;
|
||||||
|
# Forbids base >= 4.18
|
||||||
|
cabal-install-solver = doJailbreak super.cabal-install-solver;
|
||||||
|
cabal-install = doJailbreak super.cabal-install;
|
||||||
|
# Forbids base >= 4.18
|
||||||
|
lukko = doJailbreak super.lukko;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Too strict bounds, waiting on Hackage release in nixpkgs
|
||||||
|
#
|
||||||
|
|
||||||
|
# base >= 4.18 is allowed in those newer versions
|
||||||
|
boring = assert !(self ? boring_0_2_1); doJailbreak super.boring;
|
||||||
|
some = assert !(self ? some_1_0_5); doJailbreak super.some;
|
||||||
|
assoc = assert !(self ? assoc_1_1); doJailbreak super.assoc;
|
||||||
|
these = assert !(self ? assoc_1_2); doJailbreak super.these;
|
||||||
|
# Temporarily upgrade manually until the attribute is available
|
||||||
|
doctest = doDistribute (overrideCabal {
|
||||||
|
version = "0.21.1";
|
||||||
|
sha256 = "0vgl89p6iaj2mwnd1gkpq86q1g18shdcws0p3can25algi2sldk3";
|
||||||
|
} super.doctest_0_21_0);
|
||||||
|
|
||||||
|
# XXX: We probably should be using semigroupoids 6.0.1 which is intended for 9.6
|
||||||
|
semigroupoids = doJailbreak super.semigroupoids;
|
||||||
|
# XXX: 1.3 supports 9.6 properly, but is intended for bifunctors >= 5.6
|
||||||
|
semialign = doJailbreak super.semialign;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Too strict bounds, waiting on Revision in nixpkgs
|
||||||
|
#
|
||||||
|
|
||||||
|
# Revision 7 lifts the offending bound on ghc-prim
|
||||||
|
ed25519 = jailbreakWhileRevision 6 super.ed25519;
|
||||||
|
# Revision 6 lifts the offending bound on base
|
||||||
|
tar = jailbreakWhileRevision 5 super.tar;
|
||||||
|
# Revision 2 lifts the offending bound on base
|
||||||
|
HTTP = jailbreakWhileRevision 1 super.HTTP;
|
||||||
|
# Revision 1 lifts the offending bound on base
|
||||||
|
dec = jailbreakWhileRevision 0 super.dec;
|
||||||
|
# Revision 2 lifts the offending bound on base
|
||||||
|
cryptohash-sha256 = jailbreakWhileRevision 1 super.cryptohash-sha256;
|
||||||
|
# Revision 4 lifts offending template-haskell bound
|
||||||
|
uuid-types = jailbreakWhileRevision 3 super.uuid-types;
|
||||||
|
# Revision 1 lifts offending base bound
|
||||||
|
quickcheck-instances = jailbreakWhileRevision 0 super.quickcheck-instances;
|
||||||
|
# Revision 1 lifts offending base bound
|
||||||
|
generically = jailbreakWhileRevision 0 super.generically;
|
||||||
|
# Revision 3 lifts offending template-haskell bound
|
||||||
|
hackage-security = jailbreakWhileRevision 2 super.hackage-security;
|
||||||
|
# Revision 6 lifts offending base bound
|
||||||
|
parallel = jailbreakWhileRevision 5 super.parallel;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Compilation failure workarounds
|
||||||
|
#
|
||||||
|
|
||||||
|
# Add missing Functor instance for Tuple2
|
||||||
|
# https://github.com/haskell-foundation/foundation/pull/572
|
||||||
|
foundation = appendPatches [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
name = "foundation-pr-572.patch";
|
||||||
|
url =
|
||||||
|
"https://github.com/haskell-foundation/foundation/commit/d3136f4bb8b69e273535352620e53f2196941b35.patch";
|
||||||
|
sha256 = "sha256-oPadhQdCPJHICdCPxn+GsSQUARIYODG8Ed6g2sK+eC4=";
|
||||||
|
stripLen = 1;
|
||||||
|
})
|
||||||
|
] (super.foundation);
|
||||||
|
|
||||||
|
# Test suite doesn't compile with base-4.18 / GHC 9.6
|
||||||
|
# https://github.com/dreixel/syb/issues/40
|
||||||
|
syb = dontCheck super.syb;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1914,6 +1914,7 @@ broken-packages:
|
||||||
- gtksourceview2
|
- gtksourceview2
|
||||||
- gtksourceview3
|
- gtksourceview3
|
||||||
- gtk-toy
|
- gtk-toy
|
||||||
|
- guardian # transitive dependency uses doctest, but doctest doesn't build with newer Cabal version
|
||||||
- guess-combinator
|
- guess-combinator
|
||||||
- gulcii
|
- gulcii
|
||||||
- gw
|
- gw
|
||||||
|
@ -1942,7 +1943,6 @@ broken-packages:
|
||||||
- hactor
|
- hactor
|
||||||
- hactors
|
- hactors
|
||||||
- haddock-api
|
- haddock-api
|
||||||
- haddock-cheatsheet
|
|
||||||
- haddock-leksah
|
- haddock-leksah
|
||||||
- haddock-test
|
- haddock-test
|
||||||
- hadoop-formats
|
- hadoop-formats
|
||||||
|
@ -1975,6 +1975,7 @@ broken-packages:
|
||||||
- HaLeX
|
- HaLeX
|
||||||
- halfs
|
- halfs
|
||||||
- half-space
|
- half-space
|
||||||
|
- halide-haskell # failure in compileBuildDriverPhase in job https://hydra.nixos.org/build/212823532 at 2023-03-22
|
||||||
- halipeto
|
- halipeto
|
||||||
- halive
|
- halive
|
||||||
- halma
|
- halma
|
||||||
|
@ -2246,6 +2247,7 @@ broken-packages:
|
||||||
- hfann
|
- hfann
|
||||||
- HFitUI
|
- HFitUI
|
||||||
- hfmt
|
- hfmt
|
||||||
|
- hfoil # failure building library in job https://hydra.nixos.org/build/213500290 at 2023-03-26
|
||||||
- hfov
|
- hfov
|
||||||
- HFrequencyQueue
|
- HFrequencyQueue
|
||||||
- hfusion
|
- hfusion
|
||||||
|
@ -2398,6 +2400,7 @@ broken-packages:
|
||||||
- hops
|
- hops
|
||||||
- hoq
|
- hoq
|
||||||
- horizon
|
- horizon
|
||||||
|
- horizon-spec # dependency missing in job https://hydra.nixos.org/build/213500294 at 2023-03-26
|
||||||
- horname
|
- horname
|
||||||
- hosc-json
|
- hosc-json
|
||||||
- hosts-server
|
- hosts-server
|
||||||
|
@ -3035,6 +3038,7 @@ broken-packages:
|
||||||
- leapseconds
|
- leapseconds
|
||||||
- learn
|
- learn
|
||||||
- Learning
|
- Learning
|
||||||
|
- learn-physics-examples # dependency missing in job https://hydra.nixos.org/build/213500293 at 2023-03-26
|
||||||
- leetify
|
- leetify
|
||||||
- lendingclub
|
- lendingclub
|
||||||
- lens-datetime
|
- lens-datetime
|
||||||
|
@ -3437,6 +3441,7 @@ broken-packages:
|
||||||
- money
|
- money
|
||||||
- mongodb-queue
|
- mongodb-queue
|
||||||
- monitor
|
- monitor
|
||||||
|
- monocypher # failure in compileBuildDriverPhase in job https://hydra.nixos.org/build/212811942 at 2023-03-22
|
||||||
- mono-foldable
|
- mono-foldable
|
||||||
- monoid
|
- monoid
|
||||||
- monoid-absorbing
|
- monoid-absorbing
|
||||||
|
@ -3455,6 +3460,7 @@ broken-packages:
|
||||||
- morphisms-objects
|
- morphisms-objects
|
||||||
- morte
|
- morte
|
||||||
- mortred
|
- mortred
|
||||||
|
- mosaico-lib # dependency missing in job https://hydra.nixos.org/build/212818174 at 2023-03-22
|
||||||
- motor-reflection
|
- motor-reflection
|
||||||
- mount
|
- mount
|
||||||
- movie-monad
|
- movie-monad
|
||||||
|
@ -4095,6 +4101,7 @@ broken-packages:
|
||||||
- pong-server
|
- pong-server
|
||||||
- pontarius-xpmn
|
- pontarius-xpmn
|
||||||
- pool
|
- pool
|
||||||
|
- poolboy # test failure in job https://hydra.nixos.org/build/212819440 at 2023-03-26
|
||||||
- pool-conduit
|
- pool-conduit
|
||||||
- pop3-client
|
- pop3-client
|
||||||
- poppler
|
- poppler
|
||||||
|
@ -5336,6 +5343,7 @@ broken-packages:
|
||||||
- th-pprint
|
- th-pprint
|
||||||
- threadmanager
|
- threadmanager
|
||||||
- threadscope
|
- threadscope
|
||||||
|
- thread-supervisor # test failure in job https://hydra.nixos.org/build/214156434 at 2023-03-29
|
||||||
- threepenny-editors
|
- threepenny-editors
|
||||||
- threepenny-gui-contextmenu
|
- threepenny-gui-contextmenu
|
||||||
- threepenny-gui-flexbox
|
- threepenny-gui-flexbox
|
||||||
|
@ -5929,6 +5937,7 @@ broken-packages:
|
||||||
- YamlReference
|
- YamlReference
|
||||||
- yaml-rpc
|
- yaml-rpc
|
||||||
- yaml-union
|
- yaml-union
|
||||||
|
- yaml-unscrambler # dependency missing in job https://hydra.nixos.org/build/212821989 at 2023-03-22
|
||||||
- yampa2048
|
- yampa2048
|
||||||
- yampa-glfw
|
- yampa-glfw
|
||||||
- yampa-gloss
|
- yampa-gloss
|
||||||
|
|
|
@ -44,13 +44,18 @@ default-package-overrides:
|
||||||
- shake-cabal < 0.2.2.3
|
- shake-cabal < 0.2.2.3
|
||||||
# needed as long as we have pandoc < 3.0, i.e. stackage lts 20
|
# needed as long as we have pandoc < 3.0, i.e. stackage lts 20
|
||||||
- pandoc-crossref < 0.3.15.0
|
- pandoc-crossref < 0.3.15.0
|
||||||
|
# Needs to match hspec which is tracked in stackage
|
||||||
|
- hspec-api < 2.10
|
||||||
|
|
||||||
extra-packages:
|
extra-packages:
|
||||||
- Cabal == 2.2.* # required for jailbreak-cabal etc.
|
- Cabal == 2.2.* # required for jailbreak-cabal etc.
|
||||||
- Cabal == 2.4.* # required for cabal-install etc.
|
- Cabal == 2.4.* # required for cabal-install etc.
|
||||||
- Cabal == 3.2.* # required for cabal-install etc.
|
- Cabal == 3.2.* # required for cabal2spec
|
||||||
- Cabal == 3.4.* # required for cabal-install etc.
|
- Cabal == 3.4.* # required for cabal-install etc.
|
||||||
- Cabal == 3.6.* # required for cabal-install-parsers etc.
|
- Cabal == 3.6.*
|
||||||
|
- Cabal-syntax == 3.8.* # required for cabal-install{,-parsers}
|
||||||
|
- Cabal == 3.8.* # required for cabal-install{,-parsers}
|
||||||
|
- directory == 1.3.7.* # required to build cabal-install 3.10.* with GHC 9.2
|
||||||
- Diff < 0.4 # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
|
- Diff < 0.4 # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
|
||||||
- aeson < 2 # required by pantry-0.5.2
|
- aeson < 2 # required by pantry-0.5.2
|
||||||
- apply-refact == 0.9.* # 2022-12-12: needed for GHC < 9.2
|
- apply-refact == 0.9.* # 2022-12-12: needed for GHC < 9.2
|
||||||
|
@ -76,15 +81,18 @@ extra-packages:
|
||||||
- ghc-exactprint == 0.6.* # 2022-12-12: needed for GHC < 9.2
|
- ghc-exactprint == 0.6.* # 2022-12-12: needed for GHC < 9.2
|
||||||
- ghc-lib == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
|
- ghc-lib == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- ghc-lib == 9.2.* # 2022-02-17: preserve for GHC 9.2
|
- ghc-lib == 9.2.* # 2022-02-17: preserve for GHC 9.2
|
||||||
|
- ghc-lib == 9.4.* # 2023-03-17: preserve for GHC 9.4
|
||||||
- ghc-lib-parser == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
|
- ghc-lib-parser == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- ghc-lib-parser == 9.2.* # 2022-02-17: preserve for GHC 9.2
|
- ghc-lib-parser == 9.2.* # 2022-02-17: preserve for GHC 9.2
|
||||||
|
- ghc-lib-parser == 9.4.* # 2023-03-17: preserve for GHC 9.4
|
||||||
- ghc-lib-parser-ex == 8.10.* # 2022-02-17: preserve for GHC 8.10.7
|
- ghc-lib-parser-ex == 8.10.* # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- ghc-lib-parser-ex == 9.2.* # 2022-07-13: preserve for GHC 9.2
|
- ghc-lib-parser-ex == 9.2.* # 2022-07-13: preserve for GHC 9.2
|
||||||
- ghc-lib-parser-ex >= 9.2.0.3 && < 9.2.1 # 2022-07-13: needed by hlint 3.4.1
|
- ghc-lib-parser-ex == 9.4.* # 2023-03-17: preserve for GHC 9.4
|
||||||
- haddock == 2.23.* # required on GHC < 8.10.x
|
- haddock == 2.23.* # required on GHC < 8.10.x
|
||||||
- haddock-api == 2.23.* # required on GHC < 8.10.x
|
- haddock-api == 2.23.* # required on GHC < 8.10.x
|
||||||
- haddock-library ==1.7.* # required by stylish-cabal-0.5.0.0
|
- haddock-library ==1.7.* # required by stylish-cabal-0.5.0.0
|
||||||
- happy == 1.19.12 # for ghcjs
|
- happy == 1.19.12 # for ghcjs
|
||||||
|
- hermes-json == 0.2.* # 2023-03-22: for nix-output-monitor-2.0.0.5
|
||||||
- hinotify == 0.3.9 # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
|
- hinotify == 0.3.9 # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
|
||||||
- hlint == 3.2.8 # 2022-09-21: needed for hls on ghc 8.8
|
- hlint == 3.2.8 # 2022-09-21: needed for hls on ghc 8.8
|
||||||
- hlint == 3.4.1 # 2022-09-21: needed for hls with ghc-lib-parser 9.2
|
- hlint == 3.4.1 # 2022-09-21: needed for hls with ghc-lib-parser 9.2
|
||||||
|
@ -553,6 +561,7 @@ supported-platforms:
|
||||||
hsignal: [ platforms.x86 ] # -msse2
|
hsignal: [ platforms.x86 ] # -msse2
|
||||||
HFuse: [ platforms.linux ]
|
HFuse: [ platforms.linux ]
|
||||||
HQu: [ platforms.x86 ] # vendored C++ library needs i686/x86_64
|
HQu: [ platforms.x86 ] # vendored C++ library needs i686/x86_64
|
||||||
|
hs-swisstable-hashtables-class: [ platforms.x86_64 ] # depends on swisstable, which Needs AVX2
|
||||||
hw-prim-bits: [ platforms.x86 ] # x86 assembler
|
hw-prim-bits: [ platforms.x86 ] # x86 assembler
|
||||||
inline-asm: [ platforms.x86 ] # x86 assembler
|
inline-asm: [ platforms.x86 ] # x86 assembler
|
||||||
keid-core: [ x86_64-linux ] # geomancy (only x86), vulkan (no i686, no darwin, …)
|
keid-core: [ x86_64-linux ] # geomancy (only x86), vulkan (no i686, no darwin, …)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Stackage LTS 20.12
|
# Stackage LTS 20.14
|
||||||
# This file is auto-generated by
|
# This file is auto-generated by
|
||||||
# maintainers/scripts/haskell/update-stackage.sh
|
# maintainers/scripts/haskell/update-stackage.sh
|
||||||
default-package-overrides:
|
default-package-overrides:
|
||||||
|
@ -134,7 +134,7 @@ default-package-overrides:
|
||||||
- aws-xray-client-persistent ==0.1.0.5
|
- aws-xray-client-persistent ==0.1.0.5
|
||||||
- aws-xray-client-wai ==0.1.0.2
|
- aws-xray-client-wai ==0.1.0.2
|
||||||
- backtracking ==0.1.0
|
- backtracking ==0.1.0
|
||||||
- bank-holidays-england ==0.2.0.8
|
- bank-holidays-england ==0.2.0.9
|
||||||
- barbies ==2.0.4.0
|
- barbies ==2.0.4.0
|
||||||
- base16 ==0.3.2.1
|
- base16 ==0.3.2.1
|
||||||
- base16-bytestring ==1.0.2.0
|
- base16-bytestring ==1.0.2.0
|
||||||
|
@ -149,7 +149,7 @@ default-package-overrides:
|
||||||
- base-compat ==0.12.2
|
- base-compat ==0.12.2
|
||||||
- base-compat-batteries ==0.12.2
|
- base-compat-batteries ==0.12.2
|
||||||
- basement ==0.0.15
|
- basement ==0.0.15
|
||||||
- base-orphans ==0.8.7
|
- base-orphans ==0.8.8.2
|
||||||
- base-prelude ==1.6.1
|
- base-prelude ==1.6.1
|
||||||
- base-unicode-symbols ==0.2.4.2
|
- base-unicode-symbols ==0.2.4.2
|
||||||
- basic-prelude ==0.7.0
|
- basic-prelude ==0.7.0
|
||||||
|
@ -174,7 +174,7 @@ default-package-overrides:
|
||||||
- between ==0.11.0.0
|
- between ==0.11.0.0
|
||||||
- bhoogle ==0.1.4.2
|
- bhoogle ==0.1.4.2
|
||||||
- bibtex ==0.1.0.6
|
- bibtex ==0.1.0.6
|
||||||
- bifunctors ==5.5.14
|
- bifunctors ==5.5.15
|
||||||
- bimap ==0.5.0
|
- bimap ==0.5.0
|
||||||
- bimaps ==0.1.0.2
|
- bimaps ==0.1.0.2
|
||||||
- bimap-server ==0.1.0.1
|
- bimap-server ==0.1.0.1
|
||||||
|
@ -184,9 +184,9 @@ default-package-overrides:
|
||||||
- binaryen ==0.0.6.0
|
- binaryen ==0.0.6.0
|
||||||
- binary-generic-combinators ==0.4.4.0
|
- binary-generic-combinators ==0.4.4.0
|
||||||
- binary-ieee754 ==0.1.0.0
|
- binary-ieee754 ==0.1.0.0
|
||||||
- binary-instances ==1.0.3
|
- binary-instances ==1.0.4
|
||||||
- binary-list ==1.1.1.2
|
- binary-list ==1.1.1.2
|
||||||
- binary-orphans ==1.0.3
|
- binary-orphans ==1.0.4.1
|
||||||
- binary-parser ==0.5.7.3
|
- binary-parser ==0.5.7.3
|
||||||
- binary-search ==2.0.0
|
- binary-search ==2.0.0
|
||||||
- binary-shared ==0.8.3
|
- binary-shared ==0.8.3
|
||||||
|
@ -215,7 +215,7 @@ default-package-overrides:
|
||||||
- blaze-html ==0.9.1.2
|
- blaze-html ==0.9.1.2
|
||||||
- blaze-markup ==0.8.2.8
|
- blaze-markup ==0.8.2.8
|
||||||
- blaze-svg ==0.3.6.1
|
- blaze-svg ==0.3.6.1
|
||||||
- blaze-textual ==0.2.2.1
|
- blaze-textual ==0.2.3.1
|
||||||
- bloodhound ==0.21.0.0
|
- bloodhound ==0.21.0.0
|
||||||
- bm ==0.1.0.2
|
- bm ==0.1.0.2
|
||||||
- bmp ==1.2.6.3
|
- bmp ==1.2.6.3
|
||||||
|
@ -297,7 +297,7 @@ default-package-overrides:
|
||||||
- cairo ==0.13.8.2
|
- cairo ==0.13.8.2
|
||||||
- calendar-recycling ==0.0.0.1
|
- calendar-recycling ==0.0.0.1
|
||||||
- call-alloy ==0.4.0.2
|
- call-alloy ==0.4.0.2
|
||||||
- calligraphy ==0.1.3
|
- calligraphy ==0.1.4
|
||||||
- call-plantuml ==0.0.1.1
|
- call-plantuml ==0.0.1.1
|
||||||
- call-stack ==0.4.0
|
- call-stack ==0.4.0
|
||||||
- can-i-haz ==0.3.1.1
|
- can-i-haz ==0.3.1.1
|
||||||
|
@ -332,7 +332,7 @@ default-package-overrides:
|
||||||
- Chart ==1.9.4
|
- Chart ==1.9.4
|
||||||
- Chart-cairo ==1.9.3
|
- Chart-cairo ==1.9.3
|
||||||
- Chart-diagrams ==1.9.4
|
- Chart-diagrams ==1.9.4
|
||||||
- chart-svg ==0.3.2
|
- chart-svg ==0.3.3
|
||||||
- ChasingBottoms ==1.3.1.12
|
- ChasingBottoms ==1.3.1.12
|
||||||
- cheapskate ==0.1.1.2
|
- cheapskate ==0.1.1.2
|
||||||
- cheapskate-highlight ==0.1.0.0
|
- cheapskate-highlight ==0.1.0.0
|
||||||
|
@ -383,7 +383,7 @@ default-package-overrides:
|
||||||
- comfort-fftw ==0.0
|
- comfort-fftw ==0.0
|
||||||
- comfort-graph ==0.0.3.2
|
- comfort-graph ==0.0.3.2
|
||||||
- commonmark ==0.2.2
|
- commonmark ==0.2.2
|
||||||
- commonmark-extensions ==0.2.3.3
|
- commonmark-extensions ==0.2.3.4
|
||||||
- commonmark-pandoc ==0.2.1.3
|
- commonmark-pandoc ==0.2.1.3
|
||||||
- commutative ==0.0.2
|
- commutative ==0.0.2
|
||||||
- comonad ==5.0.8
|
- comonad ==5.0.8
|
||||||
|
@ -449,7 +449,7 @@ default-package-overrides:
|
||||||
- core-data ==0.3.9.0
|
- core-data ==0.3.9.0
|
||||||
- core-program ==0.6.5.0
|
- core-program ==0.6.5.0
|
||||||
- core-telemetry ==0.2.8.0
|
- core-telemetry ==0.2.8.0
|
||||||
- core-text ==0.3.8.0
|
- core-text ==0.3.8.1
|
||||||
- countable ==1.2
|
- countable ==1.2
|
||||||
- country ==0.2.3
|
- country ==0.2.3
|
||||||
- covariance ==0.2.0.1
|
- covariance ==0.2.0.1
|
||||||
|
@ -574,7 +574,7 @@ default-package-overrides:
|
||||||
- deriveJsonNoPrefix ==0.1.0.1
|
- deriveJsonNoPrefix ==0.1.0.1
|
||||||
- derive-topdown ==0.0.3.0
|
- derive-topdown ==0.0.3.0
|
||||||
- deriving-aeson ==0.2.9
|
- deriving-aeson ==0.2.9
|
||||||
- deriving-compat ==0.6.2
|
- deriving-compat ==0.6.3
|
||||||
- detour-via-sci ==1.0.0
|
- detour-via-sci ==1.0.0
|
||||||
- df1 ==0.4.1
|
- df1 ==0.4.1
|
||||||
- dhall ==1.41.2
|
- dhall ==1.41.2
|
||||||
|
@ -589,7 +589,7 @@ default-package-overrides:
|
||||||
- diagrams-contrib ==1.4.5
|
- diagrams-contrib ==1.4.5
|
||||||
- diagrams-core ==1.5.0.1
|
- diagrams-core ==1.5.0.1
|
||||||
- diagrams-lib ==1.4.5.2
|
- diagrams-lib ==1.4.5.2
|
||||||
- diagrams-postscript ==1.5.1
|
- diagrams-postscript ==1.5.1.1
|
||||||
- diagrams-rasterific ==1.4.2.2
|
- diagrams-rasterific ==1.4.2.2
|
||||||
- diagrams-solve ==0.1.3
|
- diagrams-solve ==0.1.3
|
||||||
- diagrams-svg ==1.4.3.1
|
- diagrams-svg ==1.4.3.1
|
||||||
|
@ -597,7 +597,7 @@ default-package-overrides:
|
||||||
- dictionary-sharing ==0.1.0.0
|
- dictionary-sharing ==0.1.0.0
|
||||||
- di-df1 ==1.2.1
|
- di-df1 ==1.2.1
|
||||||
- Diff ==0.4.1
|
- Diff ==0.4.1
|
||||||
- digest ==0.0.1.5
|
- digest ==0.0.1.6
|
||||||
- digits ==0.3.1
|
- digits ==0.3.1
|
||||||
- di-handle ==1.0.1
|
- di-handle ==1.0.1
|
||||||
- dimensional ==1.5
|
- dimensional ==1.5
|
||||||
|
@ -713,7 +713,7 @@ default-package-overrides:
|
||||||
- errors ==2.3.0
|
- errors ==2.3.0
|
||||||
- errors-ext ==0.4.2
|
- errors-ext ==0.4.2
|
||||||
- ersatz ==0.4.13
|
- ersatz ==0.4.13
|
||||||
- esqueleto ==3.5.8.2
|
- esqueleto ==3.5.9.0
|
||||||
- essence-of-live-coding ==0.2.7
|
- essence-of-live-coding ==0.2.7
|
||||||
- essence-of-live-coding-gloss ==0.2.7
|
- essence-of-live-coding-gloss ==0.2.7
|
||||||
- essence-of-live-coding-pulse ==0.2.7
|
- essence-of-live-coding-pulse ==0.2.7
|
||||||
|
@ -817,7 +817,7 @@ default-package-overrides:
|
||||||
- ForestStructures ==0.0.1.0
|
- ForestStructures ==0.0.1.0
|
||||||
- forkable-monad ==0.2.0.3
|
- forkable-monad ==0.2.0.3
|
||||||
- forma ==1.2.0
|
- forma ==1.2.0
|
||||||
- formatn ==0.2.1
|
- formatn ==0.2.2
|
||||||
- format-numbers ==0.1.0.1
|
- format-numbers ==0.1.0.1
|
||||||
- formatting ==7.1.3
|
- formatting ==7.1.3
|
||||||
- fortran-src ==0.12.0
|
- fortran-src ==0.12.0
|
||||||
|
@ -858,7 +858,7 @@ default-package-overrides:
|
||||||
- generic-constraints ==1.1.1.1
|
- generic-constraints ==1.1.1.1
|
||||||
- generic-data ==1.0.0.1
|
- generic-data ==1.0.0.1
|
||||||
- generic-data-surgery ==0.3.0.0
|
- generic-data-surgery ==0.3.0.0
|
||||||
- generic-deriving ==1.14.2
|
- generic-deriving ==1.14.3
|
||||||
- generic-functor ==1.1.0.0
|
- generic-functor ==1.1.0.0
|
||||||
- generic-lens ==2.2.1.0
|
- generic-lens ==2.2.1.0
|
||||||
- generic-lens-core ==2.2.1.0
|
- generic-lens-core ==2.2.1.0
|
||||||
|
@ -914,8 +914,8 @@ default-package-overrides:
|
||||||
- ghci-hexcalc ==0.1.1.0
|
- ghci-hexcalc ==0.1.1.0
|
||||||
- ghcjs-codemirror ==0.0.0.2
|
- ghcjs-codemirror ==0.0.0.2
|
||||||
- ghcjs-perch ==0.3.3.3
|
- ghcjs-perch ==0.3.3.3
|
||||||
- ghc-lib ==9.2.6.20230211
|
- ghc-lib ==9.2.7.20230228
|
||||||
- ghc-lib-parser ==9.2.6.20230211
|
- ghc-lib-parser ==9.2.7.20230228
|
||||||
- ghc-lib-parser-ex ==9.2.0.4
|
- ghc-lib-parser-ex ==9.2.0.4
|
||||||
- ghc-parser ==0.2.4.0
|
- ghc-parser ==0.2.4.0
|
||||||
- ghc-paths ==0.1.0.12
|
- ghc-paths ==0.1.0.12
|
||||||
|
@ -978,7 +978,7 @@ default-package-overrides:
|
||||||
- GLUT ==2.7.0.16
|
- GLUT ==2.7.0.16
|
||||||
- gmail-simple ==0.1.0.4
|
- gmail-simple ==0.1.0.4
|
||||||
- gnuplot ==0.5.7
|
- gnuplot ==0.5.7
|
||||||
- goldplate ==0.2.0
|
- goldplate ==0.2.1.1
|
||||||
- google-isbn ==1.0.3
|
- google-isbn ==1.0.3
|
||||||
- gopher-proxy ==0.1.1.3
|
- gopher-proxy ==0.1.1.3
|
||||||
- gotyno-hs ==1.1.0
|
- gotyno-hs ==1.1.0
|
||||||
|
@ -1028,7 +1028,7 @@ default-package-overrides:
|
||||||
- hashmap ==1.3.3
|
- hashmap ==1.3.3
|
||||||
- hashtables ==1.3.1
|
- hashtables ==1.3.1
|
||||||
- haskeline ==0.8.2.1
|
- haskeline ==0.8.2.1
|
||||||
- haskell-gi ==0.26.2
|
- haskell-gi ==0.26.3
|
||||||
- haskell-gi-base ==0.26.3
|
- haskell-gi-base ==0.26.3
|
||||||
- haskell-gi-overloading ==1.0
|
- haskell-gi-overloading ==1.0
|
||||||
- haskell-lexer ==1.1.1
|
- haskell-lexer ==1.1.1
|
||||||
|
@ -1046,7 +1046,7 @@ default-package-overrides:
|
||||||
- hasktags ==0.72.0
|
- hasktags ==0.72.0
|
||||||
- hasql ==1.6.3
|
- hasql ==1.6.3
|
||||||
- hasql-dynamic-statements ==0.3.1.2
|
- hasql-dynamic-statements ==0.3.1.2
|
||||||
- hasql-implicits ==0.1.0.5
|
- hasql-implicits ==0.1.1
|
||||||
- hasql-migration ==0.3.0
|
- hasql-migration ==0.3.0
|
||||||
- hasql-notifications ==0.2.0.3
|
- hasql-notifications ==0.2.0.3
|
||||||
- hasql-optparse-applicative ==0.5
|
- hasql-optparse-applicative ==0.5
|
||||||
|
@ -1206,7 +1206,7 @@ default-package-overrides:
|
||||||
- HsYAML-aeson ==0.2.0.1
|
- HsYAML-aeson ==0.2.0.1
|
||||||
- hsyslog ==5.0.2
|
- hsyslog ==5.0.2
|
||||||
- htaglib ==1.2.0
|
- htaglib ==1.2.0
|
||||||
- HTF ==0.15.0.0
|
- HTF ==0.15.0.1
|
||||||
- html ==1.0.1.2
|
- html ==1.0.1.2
|
||||||
- html-conduit ==1.3.2.2
|
- html-conduit ==1.3.2.2
|
||||||
- html-email-validate ==0.2.0.0
|
- html-email-validate ==0.2.0.0
|
||||||
|
@ -1309,7 +1309,7 @@ default-package-overrides:
|
||||||
- indexed-list-literals ==0.2.1.3
|
- indexed-list-literals ==0.2.1.3
|
||||||
- indexed-profunctors ==0.1.1
|
- indexed-profunctors ==0.1.1
|
||||||
- indexed-traversable ==0.1.2
|
- indexed-traversable ==0.1.2
|
||||||
- indexed-traversable-instances ==0.1.1.1
|
- indexed-traversable-instances ==0.1.1.2
|
||||||
- infer-license ==0.2.0
|
- infer-license ==0.2.0
|
||||||
- inflections ==0.4.0.6
|
- inflections ==0.4.0.6
|
||||||
- influxdb ==1.9.2.2
|
- influxdb ==1.9.2.2
|
||||||
|
@ -1333,7 +1333,7 @@ default-package-overrides:
|
||||||
- IntervalMap ==0.6.2.0
|
- IntervalMap ==0.6.2.0
|
||||||
- intervals ==0.9.2
|
- intervals ==0.9.2
|
||||||
- intset-imperative ==0.1.0.0
|
- intset-imperative ==0.1.0.0
|
||||||
- invariant ==0.6
|
- invariant ==0.6.1
|
||||||
- invert ==1.0.0.2
|
- invert ==1.0.0.2
|
||||||
- invertible-grammar ==0.1.3.3
|
- invertible-grammar ==0.1.3.3
|
||||||
- io-machine ==0.2.0.0
|
- io-machine ==0.2.0.0
|
||||||
|
@ -1440,6 +1440,7 @@ default-package-overrides:
|
||||||
- leancheck ==0.9.12
|
- leancheck ==0.9.12
|
||||||
- leancheck-instances ==0.0.5
|
- leancheck-instances ==0.0.5
|
||||||
- leapseconds-announced ==2017.1.0.1
|
- leapseconds-announced ==2017.1.0.1
|
||||||
|
- learn-physics ==0.6.5
|
||||||
- leb128-cereal ==1.2
|
- leb128-cereal ==1.2
|
||||||
- lens ==5.1.1
|
- lens ==5.1.1
|
||||||
- lens-action ==0.2.6
|
- lens-action ==0.2.6
|
||||||
|
@ -1452,7 +1453,7 @@ default-package-overrides:
|
||||||
- lens-properties ==4.11.1
|
- lens-properties ==4.11.1
|
||||||
- lens-regex ==0.1.3
|
- lens-regex ==0.1.3
|
||||||
- lens-regex-pcre ==1.1.0.0
|
- lens-regex-pcre ==1.1.0.0
|
||||||
- lentil ==1.5.4.2
|
- lentil ==1.5.5.0
|
||||||
- LetsBeRational ==1.0.0.0
|
- LetsBeRational ==1.0.0.0
|
||||||
- leveldb-haskell ==0.6.5
|
- leveldb-haskell ==0.6.5
|
||||||
- lexer-applicative ==2.1.0.2
|
- lexer-applicative ==2.1.0.2
|
||||||
|
@ -1712,7 +1713,7 @@ default-package-overrides:
|
||||||
- netwire ==5.0.3
|
- netwire ==5.0.3
|
||||||
- netwire-input ==0.0.7
|
- netwire-input ==0.0.7
|
||||||
- netwire-input-glfw ==0.0.11
|
- netwire-input-glfw ==0.0.11
|
||||||
- network ==3.1.2.7
|
- network ==3.1.2.8
|
||||||
- network-bsd ==2.8.1.0
|
- network-bsd ==2.8.1.0
|
||||||
- network-byte-order ==0.1.6
|
- network-byte-order ==0.1.6
|
||||||
- network-conduit-tls ==1.3.2
|
- network-conduit-tls ==1.3.2
|
||||||
|
@ -1747,6 +1748,7 @@ default-package-overrides:
|
||||||
- non-negative ==0.1.2
|
- non-negative ==0.1.2
|
||||||
- normaldistribution ==1.1.0.3
|
- normaldistribution ==1.1.0.3
|
||||||
- normalization-insensitive ==2.0.2
|
- normalization-insensitive ==2.0.2
|
||||||
|
- not-gloss ==0.7.7.0
|
||||||
- no-value ==1.0.0.0
|
- no-value ==1.0.0.0
|
||||||
- nowdoc ==0.1.1.0
|
- nowdoc ==0.1.1.0
|
||||||
- nqe ==0.6.4
|
- nqe ==0.6.4
|
||||||
|
@ -1756,9 +1758,9 @@ default-package-overrides:
|
||||||
- numeric-limits ==0.1.0.0
|
- numeric-limits ==0.1.0.0
|
||||||
- numeric-prelude ==0.4.4
|
- numeric-prelude ==0.4.4
|
||||||
- numeric-quest ==0.2.0.2
|
- numeric-quest ==0.2.0.2
|
||||||
- numhask ==0.10.1.0
|
- numhask ==0.10.1.1
|
||||||
- numhask-array ==0.10.1
|
- numhask-array ==0.10.2
|
||||||
- numhask-space ==0.10.0.0
|
- numhask-space ==0.10.0.1
|
||||||
- NumInstances ==1.4
|
- NumInstances ==1.4
|
||||||
- numtype-dk ==0.5.0.3
|
- numtype-dk ==0.5.0.3
|
||||||
- nuxeo ==0.3.2
|
- nuxeo ==0.3.2
|
||||||
|
@ -1886,7 +1888,7 @@ default-package-overrides:
|
||||||
- persistent-mongoDB ==2.13.0.1
|
- persistent-mongoDB ==2.13.0.1
|
||||||
- persistent-mysql ==2.13.1.4
|
- persistent-mysql ==2.13.1.4
|
||||||
- persistent-pagination ==0.1.1.2
|
- persistent-pagination ==0.1.1.2
|
||||||
- persistent-postgresql ==2.13.5.1
|
- persistent-postgresql ==2.13.5.2
|
||||||
- persistent-qq ==2.12.0.2
|
- persistent-qq ==2.12.0.2
|
||||||
- persistent-redis ==2.13.0.1
|
- persistent-redis ==2.13.0.1
|
||||||
- persistent-refs ==0.4
|
- persistent-refs ==0.4
|
||||||
|
@ -2044,7 +2046,7 @@ default-package-overrides:
|
||||||
- quickcheck-classes ==0.6.5.0
|
- quickcheck-classes ==0.6.5.0
|
||||||
- quickcheck-classes-base ==0.6.2.0
|
- quickcheck-classes-base ==0.6.2.0
|
||||||
- quickcheck-higherorder ==0.1.0.1
|
- quickcheck-higherorder ==0.1.0.1
|
||||||
- quickcheck-instances ==0.3.28
|
- quickcheck-instances ==0.3.29.1
|
||||||
- quickcheck-io ==0.2.0
|
- quickcheck-io ==0.2.0
|
||||||
- quickcheck-simple ==0.1.1.1
|
- quickcheck-simple ==0.1.1.1
|
||||||
- quickcheck-special ==0.1.0.6
|
- quickcheck-special ==0.1.0.6
|
||||||
|
@ -2091,13 +2093,12 @@ default-package-overrides:
|
||||||
- reactive-banana ==1.3.2.0
|
- reactive-banana ==1.3.2.0
|
||||||
- read-editor ==0.1.0.2
|
- read-editor ==0.1.0.2
|
||||||
- read-env-var ==1.0.0.0
|
- read-env-var ==1.0.0.0
|
||||||
- reanimate-svg ==0.13.0.1
|
|
||||||
- rebase ==1.16.1
|
- rebase ==1.16.1
|
||||||
- rec-def ==0.2.1
|
- rec-def ==0.2.1
|
||||||
- record-dot-preprocessor ==0.2.15
|
- record-dot-preprocessor ==0.2.16
|
||||||
- record-hasfield ==1.0
|
- record-hasfield ==1.0
|
||||||
- rec-smallarray ==0.1.0.0
|
- rec-smallarray ==0.1.0.0
|
||||||
- recursion-schemes ==5.2.2.3
|
- recursion-schemes ==5.2.2.4
|
||||||
- recv ==0.0.0
|
- recv ==0.0.0
|
||||||
- redact ==0.4.0.0
|
- redact ==0.4.0.0
|
||||||
- reddit-scrape ==0.0.1
|
- reddit-scrape ==0.0.1
|
||||||
|
@ -2106,7 +2107,7 @@ default-package-overrides:
|
||||||
- refact ==0.3.0.2
|
- refact ==0.3.0.2
|
||||||
- ref-fd ==0.5
|
- ref-fd ==0.5
|
||||||
- refined ==0.8
|
- refined ==0.8
|
||||||
- reflection ==2.1.6
|
- reflection ==2.1.7
|
||||||
- reform ==0.2.7.5
|
- reform ==0.2.7.5
|
||||||
- reform-blaze ==0.2.4.4
|
- reform-blaze ==0.2.4.4
|
||||||
- reform-hamlet ==0.0.5.3
|
- reform-hamlet ==0.0.5.3
|
||||||
|
@ -2375,6 +2376,7 @@ default-package-overrides:
|
||||||
- sox ==0.2.3.2
|
- sox ==0.2.3.2
|
||||||
- spacecookie ==1.0.0.2
|
- spacecookie ==1.0.0.2
|
||||||
- sparse-linear-algebra ==0.3.1
|
- sparse-linear-algebra ==0.3.1
|
||||||
|
- spatial-math ==0.2.7.0
|
||||||
- spdx ==1.0.0.3
|
- spdx ==1.0.0.3
|
||||||
- special-values ==0.1.0.0
|
- special-values ==0.1.0.0
|
||||||
- speculate ==0.4.14
|
- speculate ==0.4.14
|
||||||
|
@ -2419,7 +2421,7 @@ default-package-overrides:
|
||||||
- stitch ==0.6.0.0
|
- stitch ==0.6.0.0
|
||||||
- stm-chans ==3.0.0.6
|
- stm-chans ==3.0.0.6
|
||||||
- stm-conduit ==4.0.1
|
- stm-conduit ==4.0.1
|
||||||
- stm-containers ==1.2
|
- stm-containers ==1.2.0.2
|
||||||
- stm-delay ==0.1.1.1
|
- stm-delay ==0.1.1.1
|
||||||
- stm-extras ==0.1.0.3
|
- stm-extras ==0.1.0.3
|
||||||
- stm-hamt ==1.2.0.9
|
- stm-hamt ==1.2.0.9
|
||||||
|
@ -2600,8 +2602,8 @@ default-package-overrides:
|
||||||
- text-regex-replace ==0.1.1.5
|
- text-regex-replace ==0.1.1.5
|
||||||
- text-rope ==0.2
|
- text-rope ==0.2
|
||||||
- text-short ==0.1.5
|
- text-short ==0.1.5
|
||||||
- text-show ==3.10
|
- text-show ==3.10.2
|
||||||
- text-show-instances ==3.9.4
|
- text-show-instances ==3.9.5
|
||||||
- text-zipper ==0.12
|
- text-zipper ==0.12
|
||||||
- tfp ==1.0.2
|
- tfp ==1.0.2
|
||||||
- tf-random ==0.5
|
- tf-random ==0.5
|
||||||
|
@ -2619,7 +2621,7 @@ default-package-overrides:
|
||||||
- th-expand-syns ==0.4.11.0
|
- th-expand-syns ==0.4.11.0
|
||||||
- th-extras ==0.0.0.6
|
- th-extras ==0.0.0.6
|
||||||
- th-lego ==0.3.0.2
|
- th-lego ==0.3.0.2
|
||||||
- th-lift ==0.8.2
|
- th-lift ==0.8.3
|
||||||
- th-lift-instances ==0.1.20
|
- th-lift-instances ==0.1.20
|
||||||
- th-nowq ==0.1.0.5
|
- th-nowq ==0.1.0.5
|
||||||
- th-orphans ==0.13.14
|
- th-orphans ==0.13.14
|
||||||
|
@ -2704,7 +2706,7 @@ default-package-overrides:
|
||||||
- twitter-types ==0.11.0
|
- twitter-types ==0.11.0
|
||||||
- twitter-types-lens ==0.11.0
|
- twitter-types-lens ==0.11.0
|
||||||
- typecheck-plugin-nat-simple ==0.1.0.7
|
- typecheck-plugin-nat-simple ==0.1.0.7
|
||||||
- typed-process ==0.2.10.1
|
- typed-process ==0.2.11.0
|
||||||
- typed-uuid ==0.2.0.0
|
- typed-uuid ==0.2.0.0
|
||||||
- type-equality ==1
|
- type-equality ==1
|
||||||
- type-errors ==0.2.0.1
|
- type-errors ==0.2.0.1
|
||||||
|
@ -2767,7 +2769,7 @@ default-package-overrides:
|
||||||
- unix-compat ==0.5.4
|
- unix-compat ==0.5.4
|
||||||
- unix-time ==0.4.8
|
- unix-time ==0.4.8
|
||||||
- unjson ==0.15.4
|
- unjson ==0.15.4
|
||||||
- unliftio ==0.2.23.0
|
- unliftio ==0.2.24.0
|
||||||
- unliftio-core ==0.2.1.0
|
- unliftio-core ==0.2.1.0
|
||||||
- unliftio-path ==0.0.2.0
|
- unliftio-path ==0.0.2.0
|
||||||
- unliftio-pool ==0.2.2.0
|
- unliftio-pool ==0.2.2.0
|
||||||
|
@ -2900,7 +2902,7 @@ default-package-overrides:
|
||||||
- Win32-notify ==0.3.0.3
|
- Win32-notify ==0.3.0.3
|
||||||
- windns ==0.1.0.1
|
- windns ==0.1.0.1
|
||||||
- witch ==1.1.6.1
|
- witch ==1.1.6.1
|
||||||
with-compiler: ghc-9.2.6
|
with-compiler: ghc-9.2.7
|
||||||
- withdependencies ==0.3.0
|
- withdependencies ==0.3.0
|
||||||
- witherable ==0.4.2
|
- witherable ==0.4.2
|
||||||
- within ==0.2.0.1
|
- within ==0.2.0.1
|
||||||
|
@ -2918,7 +2920,7 @@ with-compiler: ghc-9.2.6
|
||||||
- word-wrap ==0.5
|
- word-wrap ==0.5
|
||||||
- world-peace ==1.0.2.0
|
- world-peace ==1.0.2.0
|
||||||
- wrap ==0.0.0
|
- wrap ==0.0.0
|
||||||
- wreq ==0.5.3.3
|
- wreq ==0.5.4.0
|
||||||
- wreq-stringless ==0.5.9.1
|
- wreq-stringless ==0.5.9.1
|
||||||
- writer-cps-exceptions ==0.1.0.1
|
- writer-cps-exceptions ==0.1.0.1
|
||||||
- writer-cps-mtl ==0.1.1.6
|
- writer-cps-mtl ==0.1.1.6
|
||||||
|
@ -2970,12 +2972,12 @@ with-compiler: ghc-9.2.6
|
||||||
- yeshql-core ==4.2.0.0
|
- yeshql-core ==4.2.0.0
|
||||||
- yesod ==1.6.2.1
|
- yesod ==1.6.2.1
|
||||||
- yesod-alerts ==0.1.3.0
|
- yesod-alerts ==0.1.3.0
|
||||||
- yesod-auth ==1.6.11
|
- yesod-auth ==1.6.11.1
|
||||||
- yesod-auth-basic ==0.1.0.3
|
- yesod-auth-basic ==0.1.0.3
|
||||||
- yesod-auth-hashdb ==1.7.1.7
|
- yesod-auth-hashdb ==1.7.1.7
|
||||||
- yesod-auth-oauth2 ==0.7.0.3
|
- yesod-auth-oauth2 ==0.7.0.3
|
||||||
- yesod-bin ==1.6.2.2
|
- yesod-bin ==1.6.2.2
|
||||||
- yesod-core ==1.6.24.1
|
- yesod-core ==1.6.24.2
|
||||||
- yesod-eventsource ==1.6.0.1
|
- yesod-eventsource ==1.6.0.1
|
||||||
- yesod-fb ==0.6.1
|
- yesod-fb ==0.6.1
|
||||||
- yesod-form ==1.7.4
|
- yesod-form ==1.7.4
|
||||||
|
@ -3006,7 +3008,7 @@ with-compiler: ghc-9.2.6
|
||||||
- zim-parser ==0.2.1.0
|
- zim-parser ==0.2.1.0
|
||||||
- zio ==0.1.0.2
|
- zio ==0.1.0.2
|
||||||
- zip ==1.7.2
|
- zip ==1.7.2
|
||||||
- zip-archive ==0.4.2.2
|
- zip-archive ==0.4.3
|
||||||
- zipper-extra ==0.1.3.2
|
- zipper-extra ==0.1.3.2
|
||||||
- zippers ==0.3.2
|
- zippers ==0.3.2
|
||||||
- zip-stream ==0.2.2.0
|
- zip-stream ==0.2.2.0
|
||||||
|
|
|
@ -247,7 +247,6 @@ dont-distribute-packages:
|
||||||
- KiCS-debugger
|
- KiCS-debugger
|
||||||
- KiCS-prophecy
|
- KiCS-prophecy
|
||||||
- LDAPv3
|
- LDAPv3
|
||||||
- LPFP
|
|
||||||
- LPPaver
|
- LPPaver
|
||||||
- LambdaHack
|
- LambdaHack
|
||||||
- LambdaINet
|
- LambdaINet
|
||||||
|
@ -679,7 +678,7 @@ dont-distribute-packages:
|
||||||
- ascii-superset_1_3_0_0
|
- ascii-superset_1_3_0_0
|
||||||
- ascii-table
|
- ascii-table
|
||||||
- ascii-th_1_2_0_0
|
- ascii-th_1_2_0_0
|
||||||
- ascii_1_6_0_0
|
- ascii_1_7_0_0
|
||||||
- asic
|
- asic
|
||||||
- asil
|
- asil
|
||||||
- assert4hs-hspec
|
- assert4hs-hspec
|
||||||
|
@ -741,6 +740,7 @@ dont-distribute-packages:
|
||||||
- babylon
|
- babylon
|
||||||
- backblaze-b2-hs
|
- backblaze-b2-hs
|
||||||
- backdropper
|
- backdropper
|
||||||
|
- balkon
|
||||||
- ballast
|
- ballast
|
||||||
- bamboo
|
- bamboo
|
||||||
- bamboo-launcher
|
- bamboo-launcher
|
||||||
|
@ -1285,6 +1285,9 @@ dont-distribute-packages:
|
||||||
- dobutokO3
|
- dobutokO3
|
||||||
- dobutokO4
|
- dobutokO4
|
||||||
- doc-review
|
- doc-review
|
||||||
|
- domain
|
||||||
|
- domain-aeson
|
||||||
|
- domain-cereal
|
||||||
- domaindriven
|
- domaindriven
|
||||||
- dormouse-client
|
- dormouse-client
|
||||||
- dovetail
|
- dovetail
|
||||||
|
@ -2132,7 +2135,6 @@ dont-distribute-packages:
|
||||||
- hexpat-iteratee
|
- hexpat-iteratee
|
||||||
- hfd
|
- hfd
|
||||||
- hfiar
|
- hfiar
|
||||||
- hfoil
|
|
||||||
- hfractal
|
- hfractal
|
||||||
- hgalib
|
- hgalib
|
||||||
- hgen
|
- hgen
|
||||||
|
@ -2200,7 +2202,6 @@ dont-distribute-packages:
|
||||||
- hoppy-runtime
|
- hoppy-runtime
|
||||||
- hoppy-std
|
- hoppy-std
|
||||||
- horizon-gen-nix
|
- horizon-gen-nix
|
||||||
- horizon-spec
|
|
||||||
- horizon-spec-lens
|
- horizon-spec-lens
|
||||||
- horizon-spec-pretty
|
- horizon-spec-pretty
|
||||||
- hotswap
|
- hotswap
|
||||||
|
@ -2570,8 +2571,6 @@ dont-distribute-packages:
|
||||||
- ldapply
|
- ldapply
|
||||||
- leaky
|
- leaky
|
||||||
- lean
|
- lean
|
||||||
- learn-physics
|
|
||||||
- learn-physics-examples
|
|
||||||
- learning-hmm
|
- learning-hmm
|
||||||
- legion
|
- legion
|
||||||
- legion-discovery
|
- legion-discovery
|
||||||
|
@ -2937,8 +2936,6 @@ dont-distribute-packages:
|
||||||
- nomyx-library
|
- nomyx-library
|
||||||
- nomyx-server
|
- nomyx-server
|
||||||
- nonlinear-optimization-backprop
|
- nonlinear-optimization-backprop
|
||||||
- not-gloss
|
|
||||||
- not-gloss-examples
|
|
||||||
- notmuch-web
|
- notmuch-web
|
||||||
- now-haskell
|
- now-haskell
|
||||||
- nri-env-parser
|
- nri-env-parser
|
||||||
|
@ -3073,6 +3070,10 @@ dont-distribute-packages:
|
||||||
- peyotls
|
- peyotls
|
||||||
- peyotls-codec
|
- peyotls-codec
|
||||||
- pg-entity
|
- pg-entity
|
||||||
|
- phladiprelio-general-shared
|
||||||
|
- phladiprelio-general-simple
|
||||||
|
- phladiprelio-ukrainian-shared
|
||||||
|
- phladiprelio-ukrainian-simple
|
||||||
- phonetic-languages-common
|
- phonetic-languages-common
|
||||||
- phonetic-languages-constraints
|
- phonetic-languages-constraints
|
||||||
- phonetic-languages-examples
|
- phonetic-languages-examples
|
||||||
|
@ -3129,7 +3130,12 @@ dont-distribute-packages:
|
||||||
- polh-lexicon
|
- polh-lexicon
|
||||||
- polydata
|
- polydata
|
||||||
- polysemy-RandomFu
|
- polysemy-RandomFu
|
||||||
|
- polysemy-account
|
||||||
|
- polysemy-account-api
|
||||||
- polysemy-conc
|
- polysemy-conc
|
||||||
|
- polysemy-db
|
||||||
|
- polysemy-hasql
|
||||||
|
- polysemy-hasql-test
|
||||||
- polysemy-http
|
- polysemy-http
|
||||||
- polysemy-log
|
- polysemy-log
|
||||||
- polysemy-log-co
|
- polysemy-log-co
|
||||||
|
@ -3692,7 +3698,7 @@ dont-distribute-packages:
|
||||||
- sparser
|
- sparser
|
||||||
- spartacon
|
- spartacon
|
||||||
- spata
|
- spata
|
||||||
- spatial-math
|
- spatial-math_0_5_0_1
|
||||||
- specialize-th
|
- specialize-th
|
||||||
- spectral-clustering
|
- spectral-clustering
|
||||||
- speculation-transformers
|
- speculation-transformers
|
||||||
|
@ -3708,6 +3714,7 @@ dont-distribute-packages:
|
||||||
- sproxy
|
- sproxy
|
||||||
- sproxy-web
|
- sproxy-web
|
||||||
- sproxy2
|
- sproxy2
|
||||||
|
- sqel
|
||||||
- sql-simple-mysql
|
- sql-simple-mysql
|
||||||
- sql-simple-pool
|
- sql-simple-pool
|
||||||
- sql-simple-postgresql
|
- sql-simple-postgresql
|
||||||
|
@ -4287,6 +4294,7 @@ dont-distribute-packages:
|
||||||
- zerobin
|
- zerobin
|
||||||
- zeromq3-conduit
|
- zeromq3-conduit
|
||||||
- zeroth
|
- zeroth
|
||||||
|
- zeugma
|
||||||
- zifter-cabal
|
- zifter-cabal
|
||||||
- zifter-git
|
- zifter-git
|
||||||
- zifter-google-java-format
|
- zifter-google-java-format
|
||||||
|
|
|
@ -359,6 +359,13 @@ self: super: builtins.intersectAttrs super {
|
||||||
preCheck = ''export PATH="$PWD/dist/build/ghcide:$PATH"'';
|
preCheck = ''export PATH="$PWD/dist/build/ghcide:$PATH"'';
|
||||||
}) super.ghcide;
|
}) super.ghcide;
|
||||||
|
|
||||||
|
# Tests execute goldplate
|
||||||
|
goldplate = overrideCabal (drv: {
|
||||||
|
preCheck = drv.preCheck or "" + ''
|
||||||
|
export PATH="$PWD/dist/build/goldplate:$PATH"
|
||||||
|
'';
|
||||||
|
}) super.goldplate;
|
||||||
|
|
||||||
# At least on 1.3.4 version on 32-bit architectures tasty requires
|
# At least on 1.3.4 version on 32-bit architectures tasty requires
|
||||||
# unbounded-delays via .cabal file conditions.
|
# unbounded-delays via .cabal file conditions.
|
||||||
tasty = overrideCabal (drv: {
|
tasty = overrideCabal (drv: {
|
||||||
|
@ -910,7 +917,7 @@ self: super: builtins.intersectAttrs super {
|
||||||
hercules-ci-agent = super.hercules-ci-agent.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; };
|
hercules-ci-agent = super.hercules-ci-agent.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; };
|
||||||
hercules-ci-cnix-expr = addTestToolDepend pkgs.git (super.hercules-ci-cnix-expr.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; });
|
hercules-ci-cnix-expr = addTestToolDepend pkgs.git (super.hercules-ci-cnix-expr.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; });
|
||||||
hercules-ci-cnix-store = (super.hercules-ci-cnix-store.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; }).overrideAttrs (_: {
|
hercules-ci-cnix-store = (super.hercules-ci-cnix-store.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; }).overrideAttrs (_: {
|
||||||
passthru.nixPackage = pkgs.nixVersions.nix_2_12;
|
passthru.nixPackage = pkgs.nixVersions.nix_2_14;
|
||||||
});
|
});
|
||||||
|
|
||||||
# the testsuite fails because of not finding tsc without some help
|
# the testsuite fails because of not finding tsc without some help
|
||||||
|
@ -1075,14 +1082,6 @@ self: super: builtins.intersectAttrs super {
|
||||||
# Wants to execute cabal-install to (re-)build itself
|
# Wants to execute cabal-install to (re-)build itself
|
||||||
hint = dontCheck super.hint;
|
hint = dontCheck super.hint;
|
||||||
|
|
||||||
# Make sure that Cabal 3.8.* can be built as-is
|
|
||||||
Cabal_3_8_1_0 = doDistribute (super.Cabal_3_8_1_0.override ({
|
|
||||||
Cabal-syntax = self.Cabal-syntax_3_8_1_0;
|
|
||||||
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.2.5") {
|
|
||||||
# Use process core package when possible
|
|
||||||
process = self.process_1_6_17_0;
|
|
||||||
}));
|
|
||||||
|
|
||||||
# cabal-install switched to build type simple in 3.2.0.0
|
# cabal-install switched to build type simple in 3.2.0.0
|
||||||
# as a result, the cabal(1) man page is no longer installed
|
# as a result, the cabal(1) man page is no longer installed
|
||||||
# automatically. Instead we need to use the `cabal man`
|
# automatically. Instead we need to use the `cabal man`
|
||||||
|
|
2535
pkgs/development/haskell-modules/hackage-packages.nix
generated
2535
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -16,6 +16,14 @@ stdenv.mkDerivation rec {
|
||||||
hash = "sha256-9571d3k8RkzEpMWPuIejZ7njLmYstSwFUaSqT3sk6uQ=";
|
hash = "sha256-9571d3k8RkzEpMWPuIejZ7njLmYstSwFUaSqT3sk6uQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Don't search for non-existant gumbo cmake config
|
||||||
|
# This will mislead cmake that litehtml is not found
|
||||||
|
# Affects build of pkgs that depend on litehtml
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace cmake/litehtmlConfig.cmake \
|
||||||
|
--replace "find_dependency(gumbo)" ""
|
||||||
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
cmake
|
cmake
|
||||||
];
|
];
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "fastcore";
|
pname = "fastcore";
|
||||||
version = "1.5.28";
|
version = "1.5.29";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.8";
|
disabled = pythonOlder "3.8";
|
||||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||||
owner = "fastai";
|
owner = "fastai";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-PSqwpDTzEaBXH77c64yv1s2TvQyIiz6It9cgjnCmrhY=";
|
hash = "sha256-yCPOF150TdkPHfLl8Jo2oow+91IzRKgnXo3eQMn5wK0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
@ -34,6 +34,7 @@ buildPythonPackage rec {
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Python module for Fast AI";
|
description = "Python module for Fast AI";
|
||||||
homepage = "https://github.com/fastai/fastcore";
|
homepage = "https://github.com/fastai/fastcore";
|
||||||
|
changelog = "https://github.com/fastai/fastcore/blob/${version}/CHANGELOG.md";
|
||||||
license = with licenses; [ asl20 ];
|
license = with licenses; [ asl20 ];
|
||||||
maintainers = with maintainers; [ fab ];
|
maintainers = with maintainers; [ fab ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "yalexs-ble";
|
pname = "yalexs-ble";
|
||||||
version = "2.1.12";
|
version = "2.1.14";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.9";
|
disabled = pythonOlder "3.9";
|
||||||
|
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||||
owner = "bdraco";
|
owner = "bdraco";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-+Kae+mqx4ySXX8FlpVPdbXOJ3IsYfgdm7mM5V8f9JOI=";
|
hash = "sha256-aTtcp6u+/fPHRB/FShdzfCv5haja+Vyo/WLm7GLvadw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "goresym";
|
pname = "goresym";
|
||||||
version = "2.1.1";
|
version = "2.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mandiant";
|
owner = "mandiant";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Tf/oD0f8XLG2CuiQvduVberzWSetojVRBrSd83snK5Q=";
|
sha256 = "sha256-he71OrOIZ75Z4S3mf7AuQsupnLu/rsLGV2DRXyxRGS4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
subPackages = [ "." ];
|
subPackages = [ "." ];
|
||||||
|
|
|
@ -6,16 +6,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "oh-my-posh";
|
pname = "oh-my-posh";
|
||||||
version = "14.14.3";
|
version = "14.22.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jandedobbeleer";
|
owner = "jandedobbeleer";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-Rxsc77M30aDuDgOtXWF2sQkzv2Xv4sxZ5JlkaqO/AbI=";
|
hash = "sha256-kyASLWzjTFc10XWDLbc66+kaXjBaYmlgBc0Y8fF23Jk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-eMmp67B2udc8mhpVq2nHX+v1l1h3dXvjVXenZqCA6m4=";
|
vendorHash = "sha256-MM6WwEs2BMkfpTsDFIqwpIROMs8zbbT5OsP6FXwRvy8=";
|
||||||
|
|
||||||
sourceRoot = "source/src";
|
sourceRoot = "source/src";
|
||||||
|
|
||||||
|
|
|
@ -3,16 +3,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "railway";
|
pname = "railway";
|
||||||
version = "3.0.13";
|
version = "3.0.18";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "railwayapp";
|
owner = "railwayapp";
|
||||||
repo = "cli";
|
repo = "cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-ZLzIbA/eIu8cP9F6xSl8exFXDuyw7cYLAy0Zg+dJEzw=";
|
hash = "sha256-CL75WefdcBmGSoqReHM2eecsQPcciRfat7ULhc4TfV4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-1CqGs1pT/QaA+fFfuhP/O74wpFeVCHFsubIIo+UVLf8=";
|
cargoHash = "sha256-/uiz7dmuuByS99y7rXwyCtFGIR+DIenky4dusJCMFZg=";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,18 @@
|
||||||
{ lib, rustPlatform, fetchFromGitHub }:
|
{ lib
|
||||||
|
, rustPlatform
|
||||||
|
, fetchCrate
|
||||||
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "cargo-all-features";
|
pname = "cargo-all-features";
|
||||||
version = "1.7.0";
|
version = "1.9.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchCrate {
|
||||||
owner = "frewsxcv";
|
inherit pname version;
|
||||||
repo = pname;
|
hash = "sha256-OLnz1SmMLs/yats/lZugqNUlBQHSNR1bOuEmnHGdoN8=";
|
||||||
rev = version;
|
|
||||||
sha256 = "sha256-p9UQaqytqpD2u9X9zaTPIgVEloU2UbD/AxVERNs1Lt8=";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-krtuLFQlInqdv7j8v13/X3lL0JdaMsApb9Ga5muThgw=";
|
cargoHash = "sha256-Gg5tF8IvbtIoqR0AKRS7IbcCNOCJO8oxwX0KkUr+l/M=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A Cargo subcommand to build and test all feature flag combinations";
|
description = "A Cargo subcommand to build and test all feature flag combinations";
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "cargo-vet";
|
pname = "cargo-vet";
|
||||||
version = "0.5.2";
|
version = "0.6.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mozilla";
|
owner = "mozilla";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-+Qbq3EARedsaPtSTfR/UCC/1p0b/QmvriG2AIyx8coo=";
|
sha256 = "sha256-PAqpVixBdytHvSUu03OyoA1QGBxmmoeV78x6wCiCemQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-Vij4vq+04fLpbcDpYVMBVl3QNVZprUYcVLB28mrjUOg=";
|
cargoSha256 = "sha256-dsaDpDa/BNqnL3K4a1mg3uEyM094/UO73MzJD9YaAwE=";
|
||||||
|
|
||||||
buildInputs = lib.optional stdenv.isDarwin Security;
|
buildInputs = lib.optional stdenv.isDarwin Security;
|
||||||
|
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "notify_push";
|
pname = "notify_push";
|
||||||
version = "0.6.1";
|
version = "0.6.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nextcloud";
|
owner = "nextcloud";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-0quQmi+SFNVlDFUWJYM2WgOCi22KJ/eBLvxBl9+M3g4=";
|
hash = "sha256-YCIXpCNKqdCSvq7CSPSwoPc2gpCnnda8S7I4FzpezMc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-jZC71OCexTGVq/CguMiDHIbF7QaulIzUaZW2d0x98nw=";
|
cargoHash = "sha256-l6gMz/iJeLl+RLjOiR9U1m6V/rK+RWM84bQiz4jCFtY=";
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
test_client = rustPlatform.buildRustPackage {
|
test_client = rustPlatform.buildRustPackage {
|
||||||
|
@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
|
||||||
|
|
||||||
buildAndTestSubdir = "test_client";
|
buildAndTestSubdir = "test_client";
|
||||||
|
|
||||||
cargoHash = "sha256-a8KcWnHr1bCS255ChOC6piXfVo/nJy/yVHNLCuHXoq4=";
|
cargoHash = "sha256-4jQvlxU3S3twTpiLab8BXC6ZSPSWN6ftK3GzfKnjHSE=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -5,15 +5,15 @@
|
||||||
, git, nix, nixfmt, jq, coreutils, gnused, curl, cacert, bash }:
|
, git, nix, nixfmt, jq, coreutils, gnused, curl, cacert, bash }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "2023-03-12";
|
version = "2023-03-28";
|
||||||
pname = "oh-my-zsh";
|
pname = "oh-my-zsh";
|
||||||
rev = "72732a224e886933df6b64a49ec6f5e94c884612";
|
rev = "fcbdc330ff50617c8b84d39ce069cc75df41108f";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
inherit rev;
|
inherit rev;
|
||||||
owner = "ohmyzsh";
|
owner = "ohmyzsh";
|
||||||
repo = "ohmyzsh";
|
repo = "ohmyzsh";
|
||||||
sha256 = "L3cItc1DWNE3MRRlJC9mbOwqA1JuD6k8gqrJc7XpJkk=";
|
sha256 = "MadBDgV3a4jOB5vmUVT4WUDJavQEQVjSYTmGUOApQ/s=";
|
||||||
};
|
};
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
, snapshotPath
|
, snapshotPath
|
||||||
, autoPatchelfHook
|
, autoPatchelfHook
|
||||||
, python3
|
, python3
|
||||||
|
, libxcrypt-legacy
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -167,6 +168,9 @@ let
|
||||||
] ++ lib.optionals stdenv.isLinux [
|
] ++ lib.optionals stdenv.isLinux [
|
||||||
autoPatchelfHook
|
autoPatchelfHook
|
||||||
];
|
];
|
||||||
|
buildInputs = [
|
||||||
|
libxcrypt-legacy
|
||||||
|
];
|
||||||
passthru = {
|
passthru = {
|
||||||
dependencies = filterForSystem dependencies;
|
dependencies = filterForSystem dependencies;
|
||||||
};
|
};
|
||||||
|
|
|
@ -8,16 +8,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "qovery-cli";
|
pname = "qovery-cli";
|
||||||
version = "0.55.0";
|
version = "0.55.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Qovery";
|
owner = "Qovery";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-3MiKivewGl4J/yQJ+wLTwh8w6HO8XuX9/b6mwtbvW3o=";
|
hash = "sha256-/KWkU9IpUWhVOyiNkYg98PSltS97XNWXaz9haN11Dac=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-V7yPXSN+3H8NkD384MkvKbymNQ/O2Q9HoMO4M8mzVto=";
|
vendorHash = "sha256-1krHpwjs4kGhPMBF5j3iqUBo8TGKs1h+nDCmDmviPu4=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
expect,
|
expect,
|
||||||
haskellPackages,
|
haskellPackages,
|
||||||
installShellFiles,
|
installShellFiles,
|
||||||
|
lib
|
||||||
}: let
|
}: let
|
||||||
inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
|
inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
|
||||||
overrides = {
|
overrides = {
|
||||||
|
@ -17,7 +18,14 @@
|
||||||
'';
|
'';
|
||||||
mainProgram = "nom";
|
mainProgram = "nom";
|
||||||
};
|
};
|
||||||
|
nom-pkg = haskellPackages.callPackage ./generated-package.nix { };
|
||||||
|
nom-pkg-with-scope = nom-pkg.overrideScope (hfinal: hprev: {
|
||||||
|
hermes-json = hfinal.hermes-json_0_2_0_1;
|
||||||
|
});
|
||||||
in
|
in
|
||||||
justStaticExecutables
|
lib.pipe
|
||||||
(overrideCabal overrides
|
nom-pkg-with-scope
|
||||||
(haskellPackages.callPackage ./generated-package.nix {}))
|
[
|
||||||
|
(overrideCabal overrides)
|
||||||
|
justStaticExecutables
|
||||||
|
]
|
||||||
|
|
|
@ -30894,6 +30894,8 @@ with pkgs;
|
||||||
|
|
||||||
ideamaker = libsForQt5.callPackage ../applications/misc/ideamaker { };
|
ideamaker = libsForQt5.callPackage ../applications/misc/ideamaker { };
|
||||||
|
|
||||||
|
identity = callPackage ../applications/graphics/identity { };
|
||||||
|
|
||||||
ifenslave = callPackage ../os-specific/linux/ifenslave { };
|
ifenslave = callPackage ../os-specific/linux/ifenslave { };
|
||||||
|
|
||||||
ii = callPackage ../applications/networking/irc/ii {
|
ii = callPackage ../applications/networking/irc/ii {
|
||||||
|
@ -32627,7 +32629,9 @@ with pkgs;
|
||||||
enableDbusUi = false;
|
enableDbusUi = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
parsec-bin = callPackage ../applications/misc/parsec/bin.nix { };
|
parsec-bin = callPackage ../applications/misc/parsec/bin.nix {
|
||||||
|
ffmpeg = ffmpeg_4;
|
||||||
|
};
|
||||||
|
|
||||||
pavucontrol = callPackage ../applications/audio/pavucontrol { };
|
pavucontrol = callPackage ../applications/audio/pavucontrol { };
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,19 @@ let
|
||||||
) jobList;
|
) jobList;
|
||||||
|
|
||||||
# names of all subsets of `pkgs.haskell.packages`
|
# names of all subsets of `pkgs.haskell.packages`
|
||||||
|
#
|
||||||
|
# compilerNames looks like the following:
|
||||||
|
#
|
||||||
|
# ```
|
||||||
|
# {
|
||||||
|
# ghc810 = "ghc810";
|
||||||
|
# ghc8102Binary = "ghc8102Binary";
|
||||||
|
# ghc8102BinaryMinimal = "ghc8102BinaryMinimal";
|
||||||
|
# ghc8107 = "ghc8107";
|
||||||
|
# ghc924 = "ghc924";
|
||||||
|
# ...
|
||||||
|
# }
|
||||||
|
# ```
|
||||||
compilerNames = lib.mapAttrs (name: _: name) pkgs.haskell.packages;
|
compilerNames = lib.mapAttrs (name: _: name) pkgs.haskell.packages;
|
||||||
|
|
||||||
# list of all compilers to test specific packages on
|
# list of all compilers to test specific packages on
|
||||||
|
@ -55,9 +68,26 @@ let
|
||||||
ghc926
|
ghc926
|
||||||
ghc927
|
ghc927
|
||||||
ghc944
|
ghc944
|
||||||
|
ghc961
|
||||||
];
|
];
|
||||||
|
|
||||||
# packagePlatforms applied to `haskell.packages.*`
|
# packagePlatforms applied to `haskell.packages.*`
|
||||||
|
#
|
||||||
|
# This returns an attr set that looks like the following, where each Haskell
|
||||||
|
# package in the compiler attr set has its list of supported platforms as its
|
||||||
|
# value.
|
||||||
|
#
|
||||||
|
# ```
|
||||||
|
# {
|
||||||
|
# ghc810 = {
|
||||||
|
# conduit = [ ... ];
|
||||||
|
# lens = [ "i686-cygwin" "x86_64-cygwin" ... "x86_64-windows" "i686-windows" ]
|
||||||
|
# ...
|
||||||
|
# };
|
||||||
|
# ghc902 = { ... };
|
||||||
|
# ...
|
||||||
|
# }
|
||||||
|
# ```
|
||||||
compilerPlatforms = lib.mapAttrs
|
compilerPlatforms = lib.mapAttrs
|
||||||
(_: v: packagePlatforms v)
|
(_: v: packagePlatforms v)
|
||||||
pkgs.haskell.packages;
|
pkgs.haskell.packages;
|
||||||
|
@ -65,16 +95,86 @@ let
|
||||||
# This function lets you specify specific packages
|
# This function lets you specify specific packages
|
||||||
# which are to be tested on a list of specific GHC
|
# which are to be tested on a list of specific GHC
|
||||||
# versions and returns a job set for all specified
|
# versions and returns a job set for all specified
|
||||||
# combinations. See `jobs` below for an example.
|
# combinations.
|
||||||
|
#
|
||||||
|
# You can call versionedCompilerJobs like the following:
|
||||||
|
#
|
||||||
|
# ```
|
||||||
|
# versionedCompilerJobs {
|
||||||
|
# ghc-tags = ["ghc902" "ghc924"];
|
||||||
|
# }
|
||||||
|
# ```
|
||||||
|
#
|
||||||
|
# This would produce an output like the following:
|
||||||
|
#
|
||||||
|
# ```
|
||||||
|
# {
|
||||||
|
# haskell.packages = {
|
||||||
|
# ghc884 = {};
|
||||||
|
# ghc810 = {};
|
||||||
|
# ghc902 = {
|
||||||
|
# ghc-tags = {
|
||||||
|
# aarch64-darwin = <derivation...>;
|
||||||
|
# aarch64-linux = <derivation...>;
|
||||||
|
# ...
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
# ghc924 = {
|
||||||
|
# ghc-tags = { ... };
|
||||||
|
# };
|
||||||
|
# ...
|
||||||
|
# };
|
||||||
|
# }
|
||||||
|
# ```
|
||||||
versionedCompilerJobs = config: mapTestOn {
|
versionedCompilerJobs = config: mapTestOn {
|
||||||
haskell.packages =
|
haskell.packages =
|
||||||
(lib.mapAttrs (
|
let
|
||||||
ghc: jobs:
|
# Mapping function that takes an attrset of jobs, and
|
||||||
lib.filterAttrs (
|
# removes all jobs that are not specified in config.
|
||||||
jobName: platforms:
|
#
|
||||||
lib.elem ghc (config."${jobName}" or [])
|
# For example, imagine a call to onlyConfigJobs like:
|
||||||
) jobs
|
#
|
||||||
) compilerPlatforms);
|
# ```
|
||||||
|
# onlyConfigJobs
|
||||||
|
# "ghc902"
|
||||||
|
# {
|
||||||
|
# conduit = [ ... ];
|
||||||
|
# lens = [ "i686-cygwin" "x86_64-cygwin" ... "x86_64-windows" "i686-windows" ];
|
||||||
|
# }
|
||||||
|
# ```
|
||||||
|
#
|
||||||
|
# onlyConfigJobs pulls out only those jobs that are specified in config.
|
||||||
|
#
|
||||||
|
# For instance, if config is `{ lens = [ "ghc902" ]; }`, then the above
|
||||||
|
# example call to onlyConfigJobs will return:
|
||||||
|
#
|
||||||
|
# ```
|
||||||
|
# { lens = [ "i686-cygwin" "x86_64-cygwin" ... "x86_64-windows" "i686-windows" ]; }
|
||||||
|
# ```
|
||||||
|
#
|
||||||
|
# If config is `{ lens = [ "ghc8107" ]; }`, then the above example call
|
||||||
|
# to onlyConfigJobs returns `{}`.
|
||||||
|
#
|
||||||
|
# onlyConfigJobs will also remove all platforms from a job that are not
|
||||||
|
# supported by the GHC it is compiled with.
|
||||||
|
onlyConfigJobs = ghc: jobs:
|
||||||
|
let
|
||||||
|
configFilteredJobset =
|
||||||
|
lib.filterAttrs
|
||||||
|
(jobName: platforms: lib.elem ghc (config."${jobName}" or []))
|
||||||
|
jobs;
|
||||||
|
|
||||||
|
# Remove platforms from each job that are not supported by GHC.
|
||||||
|
# This is important so that we don't build jobs for platforms
|
||||||
|
# where GHC can't be compiled.
|
||||||
|
jobsetWithGHCPlatforms =
|
||||||
|
lib.mapAttrs
|
||||||
|
(_: platforms: lib.intersectLists jobs.ghc platforms)
|
||||||
|
configFilteredJobset;
|
||||||
|
in
|
||||||
|
jobsetWithGHCPlatforms;
|
||||||
|
in
|
||||||
|
lib.mapAttrs onlyConfigJobs compilerPlatforms;
|
||||||
};
|
};
|
||||||
|
|
||||||
# hydra jobs for `pkgs` of which we import a subset of
|
# hydra jobs for `pkgs` of which we import a subset of
|
||||||
|
@ -382,16 +482,38 @@ let
|
||||||
cabal-install = released;
|
cabal-install = released;
|
||||||
Cabal_3_6_3_0 = released;
|
Cabal_3_6_3_0 = released;
|
||||||
Cabal_3_8_1_0 = released;
|
Cabal_3_8_1_0 = released;
|
||||||
cabal2nix = released;
|
Cabal-syntax_3_8_1_0 = released;
|
||||||
cabal2nix-unstable = released;
|
Cabal_3_10_1_0 = released;
|
||||||
funcmp = released;
|
Cabal-syntax_3_10_1_0 = released;
|
||||||
haskell-language-server = builtins.filter (x: x != compilerNames.ghc884) released;
|
cabal2nix = lib.subtractLists [
|
||||||
hoogle = released;
|
compilerNames.ghc961
|
||||||
hlint = released;
|
] released;
|
||||||
hpack = released;
|
cabal2nix-unstable = lib.subtractLists [
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
|
funcmp = lib.subtractLists [
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
|
haskell-language-server = lib.subtractLists [
|
||||||
|
# Support ceased as of 1.9.0.0
|
||||||
|
compilerNames.ghc884
|
||||||
|
# https://github.com/haskell/haskell-language-server/issues/3502
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
|
hoogle = lib.subtractLists [
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
|
hlint = lib.subtractLists [
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
|
hpack = lib.subtractLists [
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
hsdns = released;
|
hsdns = released;
|
||||||
jailbreak-cabal = released;
|
jailbreak-cabal = released;
|
||||||
language-nix = released;
|
language-nix = lib.subtractLists [
|
||||||
|
compilerNames.ghc961
|
||||||
|
] released;
|
||||||
nix-paths = released;
|
nix-paths = released;
|
||||||
titlecase = released;
|
titlecase = released;
|
||||||
ghc-api-compat = [
|
ghc-api-compat = [
|
||||||
|
@ -422,6 +544,7 @@ let
|
||||||
compilerNames.ghc925
|
compilerNames.ghc925
|
||||||
compilerNames.ghc926
|
compilerNames.ghc926
|
||||||
compilerNames.ghc927
|
compilerNames.ghc927
|
||||||
|
compilerNames.ghc944
|
||||||
];
|
];
|
||||||
})
|
})
|
||||||
{
|
{
|
||||||
|
@ -434,34 +557,43 @@ let
|
||||||
'';
|
'';
|
||||||
maintainers = lib.teams.haskell.members;
|
maintainers = lib.teams.haskell.members;
|
||||||
};
|
};
|
||||||
constituents = accumulateDerivations [
|
constituents =
|
||||||
# haskell specific tests
|
let
|
||||||
jobs.tests.haskell
|
# Filter out all Darwin derivations. We don't want flakey Darwin
|
||||||
# important top-level packages
|
# derivations and flakey Hydra Darwin builders to block the
|
||||||
jobs.cabal-install
|
# mergeable job from successfully building.
|
||||||
jobs.cabal2nix
|
filterInLinux =
|
||||||
jobs.cachix
|
lib.filter (drv: drv.system == "x86_64-linux" || drv.system == "aarch64-linux");
|
||||||
jobs.darcs
|
in
|
||||||
jobs.haskell-language-server
|
filterInLinux
|
||||||
jobs.hledger
|
(accumulateDerivations [
|
||||||
jobs.hledger-ui
|
# haskell specific tests
|
||||||
jobs.hpack
|
jobs.tests.haskell
|
||||||
jobs.niv
|
# important top-level packages
|
||||||
jobs.pandoc
|
jobs.cabal-install
|
||||||
jobs.stack
|
jobs.cabal2nix
|
||||||
jobs.stylish-haskell
|
jobs.cachix
|
||||||
# important haskell (library) packages
|
jobs.darcs
|
||||||
jobs.haskellPackages.cabal-plan
|
jobs.haskell-language-server
|
||||||
jobs.haskellPackages.distribution-nixpkgs
|
jobs.hledger
|
||||||
jobs.haskellPackages.hackage-db
|
jobs.hledger-ui
|
||||||
jobs.haskellPackages.xmonad
|
jobs.hpack
|
||||||
jobs.haskellPackages.xmonad-contrib
|
jobs.niv
|
||||||
# haskell packages maintained by @peti
|
jobs.pandoc
|
||||||
# imported from the old hydra jobset
|
jobs.stack
|
||||||
jobs.haskellPackages.hopenssl
|
jobs.stylish-haskell
|
||||||
jobs.haskellPackages.hsemail
|
# important haskell (library) packages
|
||||||
jobs.haskellPackages.hsyslog
|
jobs.haskellPackages.cabal-plan
|
||||||
];
|
jobs.haskellPackages.distribution-nixpkgs
|
||||||
|
jobs.haskellPackages.hackage-db
|
||||||
|
jobs.haskellPackages.xmonad
|
||||||
|
jobs.haskellPackages.xmonad-contrib
|
||||||
|
# haskell packages maintained by @peti
|
||||||
|
# imported from the old hydra jobset
|
||||||
|
jobs.haskellPackages.hopenssl
|
||||||
|
jobs.haskellPackages.hsemail
|
||||||
|
jobs.haskellPackages.hsyslog
|
||||||
|
]);
|
||||||
};
|
};
|
||||||
maintained = pkgs.releaseTools.aggregate {
|
maintained = pkgs.releaseTools.aggregate {
|
||||||
name = "maintained-haskell-packages";
|
name = "maintained-haskell-packages";
|
||||||
|
|
Loading…
Reference in a new issue