Commit Graph

768 Commits

Author SHA1 Message Date
sorki
3d774b8187 remote/server: add proxyNarSource 2023-12-10 18:05:53 +01:00
sorki
e2381c89d5 remote: less chatty server 2023-12-10 17:11:16 +01:00
sorki
3dc7ab6f06 remote: add postGreet so we setStoreDir in Server as well 2023-12-10 17:11:16 +01:00
sorki
4651980047 remote: NixDaemonSpec MITM 2023-12-10 17:11:16 +01:00
sorki
30baaf3db2 remote: NixDaemonSpec pass StoreConnection, StoreDir 2023-12-10 17:11:16 +01:00
sorki
8eb0059576 remote: neaten NixDaemonSpec, silence nix-store and daemon with grep -v 2023-12-10 17:11:16 +01:00
sorki
bb9bc1705a server: -funroll-gadt 2023-12-10 17:11:16 +01:00
sorki
960407b0a1 remote: add StoreConnection, reclaim runStoreSocket, now greetServer 2023-12-10 17:11:16 +01:00
sorki
1f1d437a40 remote: align record field naming 2023-12-10 17:11:16 +01:00
sorki
656d4dd72d remote: TestStoreConfig no longer needed 2023-12-10 17:11:16 +01:00
sorki
7b41967cc8 remote: monadic collapse 2023-12-10 17:11:16 +01:00
sorki
4562922d7e remote: neaten readme 2023-12-09 17:05:32 +01:00
sorki
5e909dbbd5 remote: fix verison/version typo 2023-12-09 12:35:12 +01:00
sorki
696f9e8421 remote: simplify buildDerivation 2023-12-08 13:26:49 +01:00
sorki
da9b46cdc3 core: add some haddocks to OutputSpec, DerivedPath 2023-12-08 13:16:34 +01:00
sorki
3576273c8a core,json: wrap (DerivationOutput OutputName, Realisation) tuple into newtype 2023-12-08 12:41:08 +01:00
sorki
2bdd171d22 wip/remote: add daemon runners, simplify server using StoreReply 2023-12-08 12:18:10 +01:00
sorki
8078f0f07f remote: drop common tests cabal stanza 2023-12-08 11:56:18 +01:00
Richard Marko
11da925989
Merge pull request #272 from haskell-nix/srk/daemon
Server side
2023-12-07 18:42:13 +01:00
sorki
e5c1492a64 remote: tests-io cleanup 2023-12-07 17:57:45 +01:00
sorki
b7a9f91fc0 remote: sort Serializer imports 2023-12-07 16:45:41 +01:00
sorki
4123d963b6 remote: delete obsolete serialization prims and instances 2023-12-07 16:35:16 +01:00
sorki
28d279b614 remote: delete obsolete funs from Socket 2023-12-07 16:35:16 +01:00
sorki
523e490137 remote: port all operations to GADT based ones 2023-12-07 16:35:16 +01:00
sorki
ddfdb893a6 remote: add GCRoot type, serializer, prop 2023-12-07 16:35:16 +01:00
sorki
774590eb6e remote: add StoreReply (HashSet StorePath) & StoreReply (HashSet StorePathName) 2023-12-07 16:35:16 +01:00
sorki
04a38e8c46 remote: add opSuccess serializer for StoreReply () 2023-12-07 16:35:16 +01:00
sorki
48697e1efe remote: add maybePathMetadata serializer 2023-12-07 16:35:16 +01:00
sorki
d18a014103 remote: add Query.Missing serializer 2023-12-07 16:35:16 +01:00
sorki
c841f93b69 remote: align GC(Options|Result) record field naming 2023-12-07 16:35:16 +01:00
sorki
77fe9f9acd remote: add gcResult serializer 2023-12-07 16:35:16 +01:00
sorki
5aa62fd8da remote: NarSource not in GADT pans out 2023-12-07 16:35:16 +01:00
sorki
a5dac6da5f remote: shuffle reply serializers, extend ReplySError 2023-12-07 16:35:16 +01:00
sorki
7bdbab9c53 remote: move enum tests to EnumSpec 2023-12-07 16:35:16 +01:00
sorki
428a61a538 remote: split runStoreSocket, doReq into Remote.Client.Core 2023-12-07 16:35:16 +01:00
sorki
7dc5c596aa tests: add/move Test.Hspec.Nix.forceRight from json 2023-12-07 16:35:16 +01:00
sorki
aa94d3c3da remote: separate (Client|Server)Handshake(Input|Output) types 2023-12-07 16:35:16 +01:00
sorki
bdce1a3035 tests: enable TypeFamilies for Realisation 2023-12-07 16:35:16 +01:00
sorki
c8d97899e7 overlay.nix: dependent-sum-template 0.2.0.1 2023-12-07 16:35:16 +01:00
sorki
0323bf06a5 drop dependent-sum-template source-repository-package, add >= 0.2.0.1 lower bound 2023-12-07 16:35:16 +01:00
sorki
69060eca76 docs/contributors: add andreabedini 2023-12-07 16:35:16 +01:00
sorki
496fb3284e make DerivationOutput explicitely generic
It is already parametrized, but `name` field is too specific
to accommodate i.e. `DerivationOutput StorePath` which is
used by `Derivation` type. So we call it `output` instead
and turn the type variable to just `a`.

So
* for `Realisation`s this is `DerivationOutput OutputName`
* for `Derivation`s this is `DerivatonOutput StorePath`
* for content addressed derivations this might be `DerivationOutput Void` as the path isn't known ahead of time.

So only its shape is important.

Related to https://github.com/Gabriella439/Haskell-Nix-Derivation-Library/pull/24
2023-12-07 16:35:16 +01:00
sorki
e6d21c15bc remote: deal with Realisation.id (required for the server side and qc prop) 2023-12-07 16:35:16 +01:00
sorki
f79effe092 remote: fix handling of BuildResult.builtOutputs 2023-12-07 16:35:16 +01:00
sorki
9c407cbf8a init hnix-store-json 2023-12-07 16:35:16 +01:00
sorki
1bda8fd1fe add derivationOutput(Parser|Builder), prop 2023-12-07 16:35:16 +01:00
sorki
e6ed8f8069 single BuildResult to rule them all 2023-12-07 16:35:16 +01:00
sorki
ee4ad7b07b add builtOutputs to BuildResult, more legwork 2023-12-07 16:35:16 +01:00
sorki
225b4d3f5a tests: limit the size of list for OutputName, StorePath name generators 2023-12-07 16:35:16 +01:00
sorki
72de93d260 core: improve haddocks for Build, use trailing haddocks for records 2023-12-07 16:35:16 +01:00