on master help sign in
Added some builtin types
commit72fbe14aa7a33994ac589df9c20f932ff13958b4 authoriko <ilyakooo0@gmail.com> dateSat 22 May 2021, 19:44 (5 years ago) parent544a036
39 files changed+508−642
src/Tix/Builtins.hs+68 src/Tix/Typechecker.hs+2 test/golden/importless/aliases.txt−214 test/golden/importless/atd.txt−59 test/golden/importless/attica.txt+14 test/golden/importless/b43.txt+13−15 test/golden/importless/bluez-qt.txt+16 test/golden/importless/extpack.txt−27 test/golden/importless/karchive.txt+18 test/golden/importless/kcodecs.txt+17 test/golden/importless/kconfig.txt+15 test/golden/importless/kcoreaddons.txt+16 test/golden/importless/kdbusaddons.txt+16 test/golden/importless/kdecoration.txt+15 test/golden/importless/kdnssd.txt+17 test/golden/importless/kguiaddons.txt+16 test/golden/importless/ki18n.txt+18 test/golden/importless/kidletime.txt+15 test/golden/importless/kirigami2.txt+15 test/golden/importless/kitemmodels.txt+14 test/golden/importless/kitemviews.txt+16 test/golden/importless/kplotting.txt+15 test/golden/importless/kwayland.txt+19 test/golden/importless/kwidgetsaddons.txt+16 test/golden/importless/linux-testing.txt−20 test/golden/importless/liquidsoap.txt−68 test/golden/importless/master.txt−56 test/golden/importless/minion.txt−53 test/golden/importless/modemmanager-qt.txt+15 test/golden/importless/networkmanager-qt.txt+15 test/golden/importless/nscd.txt−62 test/golden/importless/prison.txt+17 test/golden/importless/solid.txt+20 test/golden/importless/sonnet.txt+16 test/golden/importless/squeezelite.txt+12−14 test/golden/importless/syntax-highlighting.txt+16 test/golden/importless/threadweaver.txt+14 test/golden/importless/updateSettings.txt+12 test/golden/importless/xmpp-alerts.txt−54
src/Tix/Builtins.hsnew file+68
@@ -0,0 +1,68 @@
1+module Tix.Builtins (builtins) where
2+
3+import Data.Map (Map)
4+import qualified Data.Map as M
5+import Data.Text (Text)
6+import Tix.Types
7+
8+builtins :: Map Text Scheme
9+builtins =
10+ M.fromList
11+ [ ( "builtins",
12+ scheme $
13+ NAttrSet $
14+ M.fromList
15+ [ ("abort", scheme $ NAtomic String :-> deBruijn 0 0),
16+ ("add", [StringOrNumber $ deBruijn 2 0] :=> (deBruijn 3 0 :-> (deBruijn 4 0 :-> deBruijn 4 0))),
17+ ("all", [] :=> ((deBruijn 4 0 :-> NAtomic Bool) :-> (List (deBruijn 5 0) :-> NAtomic Bool))),
18+ ("any", [] :=> ((deBruijn 4 0 :-> NAtomic Bool) :-> (List (deBruijn 5 0) :-> NAtomic Bool))),
19+ ("attrNames", [] :=> (deBruijn 3 0 :-> List (NAtomic String))),
20+ ("attrValues", [] :=> (deBruijn 3 0 :-> List (deBruijn 0 0))),
21+ ("baseNameOf", [] :=> (NAtomic String :-> NAtomic String)),
22+ ("bitAnd", [] :=> (NAtomic Number :-> (NAtomic Number :-> NAtomic Number))),
23+ ("bitXor", [] :=> (NAtomic Number :-> (NAtomic Number :-> NAtomic Number))),
24+ ("bitOr", [] :=> (NAtomic Number :-> (NAtomic Number :-> NAtomic Number))),
25+ ("ceil", [] :=> (NAtomic Number :-> NAtomic Number)),
26+ ("compareVersions", [] :=> (NAtomic String :-> (NAtomic String :-> NAtomic Number))),
27+ ("concatLists", [] :=> (List (List (deBruijn 5 0)) :-> List (deBruijn 4 0))),
28+ ("concatMap", [] :=> ((deBruijn 4 0 :-> List (deBruijn 5 1)) :-> (List (deBruijn 5 0) :-> List (deBruijn 5 1)))),
29+ ("map", [] :=> ((deBruijn 4 0 :-> deBruijn 4 1) :-> (List (deBruijn 5 0) :-> List (deBruijn 5 1)))),
30+ ("catAttrs", [] :=> (NAtomic String :-> (List (deBruijn 0 0) :-> List (deBruijn 0 0))))
31+ ]
32+ ),
33+ ( "derivation",
34+ [ deBruijn 2 0
35+ // attrSet
36+ [ ("all", scheme $ List (deBruijn 5 1)),
37+ ("drvAttrs", scheme $ deBruijn 4 0),
38+ ("drvPath", string),
39+ ("out", scheme $ deBruijn 4 1),
40+ ("outPath", string),
41+ ("outputName", string),
42+ ("type", string)
43+ ]
44+ $ deBruijn 2 1,
45+ deBruijn 2 0 .! ("name", string),
46+ deBruijn 2 0 .! ("builder", string),
47+ deBruijn 2 0 .! ("system", string),
48+ deBruijn 2 0 .? ("args", scheme $ List (NAtomic String)),
49+ deBruijn 2 0 .? ("outputs", scheme $ List (NAtomic String))
50+ ]
51+ :=> (deBruijn 3 0 :-> deBruijn 3 1)
52+ )
53+ ]
54+
55+string :: Scheme
56+string = scheme $ NAtomic String
57+
58+deBruijn :: Int -> Int -> NType
59+deBruijn a b = NBruijn $ DeBruijn a b
60+
61+attrSet :: [(Text, Scheme)] -> NType
62+attrSet = NAttrSet . M.fromList
63+
64+(.!) :: NType -> (Text, Scheme) -> Pred
65+(.!) = HasField RequiredField
66+
67+(.?) :: NType -> (Text, Scheme) -> Pred
68+(.?) = HasField OptionalField
src/Tix/Typechecker.hs+2
@@ -52,6 +52,7 @@ import Data.Traversable
5252import Nix.Atoms
5353import Nix.Expr
5454import Nix.Pretty
55+import Tix.Builtins (builtins)
5556import Tix.Types
5657import Prelude as P
5758
@@ -63,6 +64,7 @@ getType r =
6364 . evalState @(MKM.Map Pred) mempty
6465 . interpret @(Writer Pred) (\(Tell x) -> modify (<> MKM.singleton x))
6566 . runVariableMapEff
67+ . localVariablesMap builtins
6668 . evalState @Substitution mempty
6769 . runState @[(TypeVariable, SrcSpan)] []
6870 . interpret @(Writer (TypeVariable, SrcSpan)) (\(Tell x) -> modify (x :))
test/golden/importless/aliases.txtdeleted−214
@@ -1,214 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω α1 β1 γ1 δ1 ε1 ζ1 η1 θ1 ι1 κ1
2−λ1 μ1 ν1 ξ1 ο1 π1 ρ1 σ1 τ1 υ1 φ1 χ1 ψ1 ω1 α2 β2 γ2 δ2 ε2 ζ2 η2 θ2 ι2 κ2 λ2 μ2 ν2
3−ξ2 ο2 π2 ρ2 σ2 τ2 υ2 φ2 χ2 ψ2 ω2 α3 β3 γ3 δ3 ε3 ζ3 η3 θ3 ι3 κ3 λ3 μ3 ν3 ξ3 ο3 π3
4−ρ3 σ3 τ3 υ3 φ3 χ3 ψ3 ω3 α4 β4 γ4 δ4 ε4 ζ4 η4 θ4 ι4 κ4 λ4 μ4 ν4 ξ4 ο4 π4 ρ4 σ4
5−τ4.
6−( { BufOnly = α;
7− CSApprox = β;
8− Colour_Sampler_Pack = γ;
9− Cosco = δ;
10− Gist = ε;
11− Gundo = ζ;
12− Hoogle = η;
13− Solarized = θ;
14− Supertab = ι;
15− Syntastic = κ;
16− SyntaxRange = λ;
17− Tabular = μ;
18− Tagbar = ν;
19− The_NERD_Commenter = ξ;
20− The_NERD_tree = ο;
21− UltiSnips = π;
22− WebAPI = ρ;
23− Yankring = σ;
24− airline = τ;
25− alternative = υ;
26− bats = φ;
27− calendar = χ;
28− caw = ψ;
29− coffee-script = ω;
30− coffeeScript = α1;
31− colors-solarized = β1;
32− colorsamplerpack = γ1;
33− command_T = δ1;
34− commentary = ε1;
35− committia = ζ1;
36− concealedyank = η1;
37− context-filetype = θ1;
38− css_color_5056 = ι1;
39− csv = κ1;
40− ctrlp = λ1;
41− cute-python = μ1;
42− denite = ν1;
43− easy-align = ξ1;
44− easygit = ο1;
45− easymotion = π1;
46− echodoc = ρ1;
47− eighties = σ1;
48− extradite = τ1;
49− fugitive = υ1;
50− ghc-mod-vim = φ1;
51− ghcmod = χ1;
52− gitgutter = ψ1;
53− goyo = ω1;
54− gundo = α2;
55− haskellConceal = β2;
56− haskellConcealPlus = γ2;
57− haskellconceal = δ2;
58− hier = ε2;
59− hlint-refactor = ζ2;
60− hoogle = η2;
61− ipython = θ2;
62− latex-live-preview = ι2;
63− maktaba = κ2;
64− multiple-cursors = λ2;
65− necoGhc = μ2;
66− neocomplete = ν2;
67− neoinclude = ξ2;
68− neomru = ο2;
69− neosnippet = π2;
70− open-browser = ρ2;
71− pathogen = σ2;
72− polyglot = τ2;
73− prettyprint = υ2;
74− quickrun = φ2;
75− rainbow_parentheses = χ2;
76− repeat = ψ2;
77− rhubarb = ω2;
78− riv = α3;
79− sensible = β3;
80− signature = γ3;
81− sleuth = δ3;
82− snipmate = ε3;
83− solarized = ζ3;
84− solidity = η3;
85− sourcemap = θ3;
86− sourcemap.vim = ι3;
87− stylish-haskell = κ3;
88− stylishHaskell = λ3;
89− surround = μ3;
90− table-mode = ν3;
91− tabpagebuffer = ξ3;
92− tabpagecd = ο3;
93− taglist = π3;
94− thumbnail = ρ3;
95− tlib = σ3;
96− tmux-navigator = τ3;
97− tmuxNavigator = υ3;
98− tslime = φ3;
99− unite = χ3;
100− vim-addon-vim2nix = ψ3;
101− vimproc = ω3;
102− vimshell = α4;
103− vinegar = β4;
104− watchdogs = γ4;
105− wombat256 = δ4;
106− xterm-color-table = ε4;
107− yankring = ζ4;
108− zeavim = η4;
109− } //
110− θ4 ~
111− ι4,
112− κ4.?recurseForDerivations = Bool,
113− λ4.mapAttrs = (μ4 -> κ4 -> κ4) -> ι4 -> ν4,
114− ξ4.BufOnly-vim = α,
115− ξ4.Colour-Sampler-Pack = γ,
116− ξ4.YankRing-vim = σ,
117− ξ4.a-vim = υ,
118− ξ4.bats-vim = φ,
119− ξ4.builtins = ο4,
120− ξ4.calendar-vim = χ,
121− ξ4.caw-vim = ψ,
122− ξ4.command-t = δ1,
123− ξ4.committia-vim = ζ1,
124− ξ4.concealedyank-vim = η1,
125− ξ4.context_filetype-vim = θ1,
126− ξ4.cosco-vim = δ,
127− ξ4.csapprox = β,
128− ξ4.csv-vim = κ1,
129− ξ4.ctrlp-vim = λ1,
130− ξ4.denite-nvim = ν1,
131− ξ4.dontDistribute = κ4 -> κ4,
132− ξ4.echodoc-vim = ρ1,
133− ξ4.ghcmod-vim = φ1,
134− ξ4.goyo-vim = ω1,
135− ξ4.gundo-vim = ζ,
136− ξ4.hlint-refactor-vim = ζ2,
137− ξ4.isDerivation = κ4 -> Bool,
138− ξ4.neco-ghc = μ2,
139− ξ4.neocomplete-vim = ν2,
140− ξ4.neoinclude-vim = ξ2,
141− ξ4.neomru-vim = ο2,
142− ξ4.neosnippet-vim = π2,
143− ξ4.nerdcommenter = ξ,
144− ξ4.nerdtree = ο,
145− ξ4.open-browser-vim = ρ2,
146− ξ4.rainbow_parentheses-vim = χ2,
147− ξ4.removeAttrs = κ4 -> [String] -> κ4,
148− ξ4.riv-vim = α3,
149− ξ4.sourcemap-vim = θ3,
150− ξ4.supertab = ι,
151− ξ4.syntastic = κ,
152− ξ4.tabpagebuffer-vim = ξ3,
153− ξ4.tabular = μ,
154− ξ4.tagbar = ν,
155− ξ4.taglist-vim = π3,
156− ξ4.throw = String -> κ4,
157− ξ4.thumbnail-vim = ρ3,
158− ξ4.tlib_vim = σ3,
159− ξ4.tslime-vim = φ3,
160− ξ4.ultisnips = π,
161− ξ4.unite-vim = χ3,
162− ξ4.vim-SyntaxRange = λ,
163− ξ4.vim-airline = τ,
164− ξ4.vim-coffee-script = ω,
165− ξ4.vim-colors-solarized = θ,
166− ξ4.vim-commentary = ε1,
167− ξ4.vim-css-color = ι1,
168− ξ4.vim-cute-python = μ1,
169− ξ4.vim-easy-align = ξ1,
170− ξ4.vim-easygit = ο1,
171− ξ4.vim-easymotion = π1,
172− ξ4.vim-eighties = σ1,
173− ξ4.vim-extradite = τ1,
174− ξ4.vim-fugitive = υ1,
175− ξ4.vim-gist = ε,
176− ξ4.vim-gitgutter = ψ1,
177− ξ4.vim-haskellConcealPlus = γ2,
178− ξ4.vim-haskellconceal = β2,
179− ξ4.vim-hier = ε2,
180− ξ4.vim-hoogle = η,
181− ξ4.vim-ipython = θ2,
182− ξ4.vim-latex-live-preview = ι2,
183− ξ4.vim-maktaba = κ2,
184− ξ4.vim-multiple-cursors = λ2,
185− ξ4.vim-pathogen = σ2,
186− ξ4.vim-polyglot = τ2,
187− ξ4.vim-prettyprint = υ2,
188− ξ4.vim-quickrun = φ2,
189− ξ4.vim-repeat = ψ2,
190− ξ4.vim-rhubarb = ω2,
191− ξ4.vim-sensible = β3,
192− ξ4.vim-signature = γ3,
193− ξ4.vim-sleuth = δ3,
194− ξ4.vim-snipmate = ε3,
195− ξ4.vim-solidity = η3,
196− ξ4.vim-stylish-haskell = κ3,
197− ξ4.vim-surround = μ3,
198− ξ4.vim-table-mode = ν3,
199− ξ4.vim-tabpagecd = ο3,
200− ξ4.vim-tmux-navigator = τ3,
201− ξ4.vim-vinegar = β4,
202− ξ4.vim-watchdogs = γ4,
203− ξ4.vim2nix = ψ3,
204− ξ4.vimproc-vim = ω3,
205− ξ4.vimshell-vim = α4,
206− ξ4.webapi-vim = ρ,
207− ξ4.wombat256-vim = δ4,
208− ξ4.xterm-color-table-vim = ε4,
209− ξ4.zeavim-vim = η4,
210− ο4.hasAttr = μ4 -> ξ4 -> Bool,
211− π4.fromJSON = ρ4 -> σ4,
212− τ4.readFile = String -> ρ4
213−) =>
214−λ4 -> ξ4 -> ν4
test/golden/importless/atd.txtdeleted−59
@@ -1,59 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω α1.
2−( α.config = β,
3− α.lib = γ,
4− α.pkgs = δ,
5− β.ids = ε,
6− β.services = ζ,
7− γ.builtins = η,
8− γ.map =
9− ( θ ->
10− { name = String;
11− value =
12− { group = String;
13− owner = String;
14− setgid = Bool;
15− setuid = Bool;
16− source = String;
17− };
18− }
19− ) ->
20− [String] -> ι,
21− γ.mkIf =
22− κ ->
23− { environment = {systemPackages = [λ];};
24− security = {pam = {services = {atd = {};};}; wrappers = μ;};
25− systemd =
26− { services =
27− { atd =
28− { description = String;
29− path = [λ];
30− preStart = String;
31− script = String;
32− serviceConfig = {Type = String;};
33− wantedBy = [String];
34− };
35− };
36− };
37− users =
38− { groups = {atd = {gid = ν;};};
39− users = {atd = {description = String; home = String; uid = ξ;};};
40− };
41− } ->
42− ο,
43− γ.mkOption = {default = Bool; description = String; type = π;} -> ρ,
44− γ.types = σ,
45− δ.at = λ,
46− ζ.atd = τ,
47− τ.enable = κ,
48− η.listToAttrs = ι -> μ,
49− ε.gids = υ,
50− υ.atd = ν,
51− φ.uids = χ,
52− χ.atd = ξ,
53− σ.bool = π,
54− ψ.bool = ω
55−) =>
56−α ->
57−{ config = ο;
58− options = {services = {atd = {allowEveryone = ρ; enable = α1;};};};
59−}
test/golden/importless/attica.txtnew file+14
@@ -0,0 +1,14 @@
1+∀ α β γ δ ε ζ η.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [γ];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ outputs = [String];
10+ } ->
11+ η;
12+ qtbase = γ;
13+} ->
14+η
test/golden/importless/b43.txt+13−15
@@ -1,21 +1,19 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ.
1+∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ.
22( α.config = β,
33 α.lib = γ,
44 α.pkgs = δ,
55 β.boot = ε,
66 β.networking = ζ,
7− γ.builtins = η,
8− γ.lessThan = Number -> θ -> ι,
9− γ.mkIf = κ -> {assertions = λ; hardware = {firmware = [μ];};} -> ν,
10− γ.mkOption = {default = Bool; description = String; type = ξ;} -> ο,
11− γ.singleton = {assertion = ι; message = String;} -> λ,
12− γ.types = π,
13− δ.b43Firmware_5_1_138 = μ,
14− ε.kernelPackages = ρ,
15− ρ.kernel = σ,
16− σ.version = τ,
17− ζ.enableB43Firmware = κ,
18− η.compareVersions = τ -> String -> θ,
19− π.bool = ξ
7+ γ.lessThan = Number -> η -> θ,
8+ γ.mkIf = ι -> {assertions = κ; hardware = {firmware = [λ];};} -> μ,
9+ γ.mkOption = {default = Bool; description = String; type = ν;} -> ξ,
10+ γ.singleton = {assertion = θ; message = String;} -> κ,
11+ γ.types = ο,
12+ δ.b43Firmware_5_1_138 = λ,
13+ ε.kernelPackages = π,
14+ π.kernel = ρ,
15+ ρ.version = σ,
16+ ζ.enableB43Firmware = ι,
17+ ο.bool = ν
2018) =>
21−α -> {config = ν; options = {networking = {enableB43Firmware = ο;};};}
19+α -> {config = μ; options = {networking = {enableB43Firmware = ξ;};};}
test/golden/importless/bluez-qt.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ preConfigure = String;
10+ propagatedBuildInputs = [γ];
11+ } ->
12+ θ;
13+ qtbase = γ;
14+ qtdeclarative = η;
15+} ->
16+θ
test/golden/importless/extpack.txtdeleted−27
@@ -1,27 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι.
2−( α.builtins = β,
3− α.cdepillabout = γ,
4− α.licenses = δ,
5− α.maintainers = ε,
6− α.sander = γ,
7− ζ.version = η,
8− β.stringLength = String -> Number,
9− δ.virtualbox-puel = θ
10−) =>
11−{ fetchurl =
12− { meta =
13− { description = String;
14− homepage = String;
15− license = θ;
16− maintainers = [γ];
17− platforms = [String];
18− };
19− name = String;
20− sha256 = String;
21− url = String;
22− } ->
23− ι;
24− lib = α;
25− virtualbox = ζ;
26−} ->
27−ι
test/golden/importless/karchive.txtnew file+18
@@ -0,0 +1,18 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { bzip2 = ζ;
3+ extra-cmake-modules = η;
4+ lib = α;
5+ lzma = ζ;
6+ mkDerivation =
7+ { buildInputs = [ζ];
8+ meta = {broken = Bool; maintainers = [ε];};
9+ name = String;
10+ nativeBuildInputs = [η];
11+ outputs = [String];
12+ propagatedBuildInputs = [γ];
13+ } ->
14+ θ;
15+ qtbase = γ;
16+ zlib = ζ;
17+} ->
18+θ
test/golden/importless/kcodecs.txtnew file+17
@@ -0,0 +1,17 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ gperf = η;
4+ lib = α;
5+ mkDerivation =
6+ { buildInputs = [η];
7+ meta = {broken = Bool; maintainers = [ε];};
8+ name = String;
9+ nativeBuildInputs = [ζ];
10+ outputs = [String];
11+ propagatedBuildInputs = [γ];
12+ } ->
13+ θ;
14+ qtbase = γ;
15+ qttools = η;
16+} ->
17+θ
test/golden/importless/kconfig.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ θ;
12+ qtbase = γ;
13+ qttools = η;
14+} ->
15+θ
test/golden/importless/kcoreaddons.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ θ;
12+ qtbase = γ;
13+ qttools = η;
14+ shared-mime-info = η;
15+} ->
16+θ
test/golden/importless/kdbusaddons.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ θ;
12+ qtbase = γ;
13+ qttools = η;
14+ qtx11extras = η;
15+} ->
16+θ
test/golden/importless/kdecoration.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ.
2+(α.version = β) => { extra-cmake-modules = γ;
3+ ki18n = α;
4+ mkDerivation =
5+ { broken = Bool;
6+ buildInputs = [α];
7+ meta = {broken = Bool;};
8+ name = String;
9+ nativeBuildInputs = [γ];
10+ outputs = [String];
11+ } ->
12+ δ;
13+ qtbase = α;
14+} ->
15+δ
test/golden/importless/kdnssd.txtnew file+17
@@ -0,0 +1,17 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { avahi = ζ;
3+ extra-cmake-modules = η;
4+ lib = α;
5+ mkDerivation =
6+ { buildInputs = [ζ];
7+ meta = {broken = Bool; maintainers = [ε];};
8+ name = String;
9+ nativeBuildInputs = [η];
10+ outputs = [String];
11+ propagatedBuildInputs = [γ];
12+ } ->
13+ θ;
14+ qtbase = γ;
15+ qttools = ζ;
16+} ->
17+θ
test/golden/importless/kguiaddons.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ outputs = [String];
10+ propagatedBuildInputs = [γ];
11+ } ->
12+ θ;
13+ qtbase = γ;
14+ qtx11extras = η;
15+} ->
16+θ
test/golden/importless/ki18n.txtnew file+18
@@ -0,0 +1,18 @@
1+∀ α β γ δ ε ζ η θ ι.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ gettext = η;
4+ lib = α;
5+ mkDerivation =
6+ { buildInputs = [θ];
7+ meta = {broken = Bool; maintainers = [ε];};
8+ name = String;
9+ nativeBuildInputs = [ζ];
10+ propagatedNativeBuildInputs = [η];
11+ } ->
12+ ι;
13+ python3 = η;
14+ qtbase = γ;
15+ qtdeclarative = θ;
16+ qtscript = θ;
17+} ->
18+ι
test/golden/importless/kidletime.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ θ;
12+ qtbase = γ;
13+ qtx11extras = η;
14+} ->
15+θ
test/golden/importless/kirigami2.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ.
2+(α.version = β) => { extra-cmake-modules = γ;
3+ mkDerivation =
4+ { buildInputs = [α];
5+ meta = {broken = Bool;};
6+ name = String;
7+ nativeBuildInputs = [γ];
8+ outputs = [String];
9+ } ->
10+ δ;
11+ qtbase = α;
12+ qtquickcontrols2 = α;
13+ qttranslations = α;
14+} ->
15+δ
test/golden/importless/kitemmodels.txtnew file+14
@@ -0,0 +1,14 @@
1+∀ α β γ δ ε ζ η.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { meta = {broken = Bool; maintainers = [ε];};
6+ name = String;
7+ nativeBuildInputs = [ζ];
8+ outputs = [String];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ η;
12+ qtbase = γ;
13+} ->
14+η
test/golden/importless/kitemviews.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ outputs = [String];
10+ propagatedBuildInputs = [γ];
11+ } ->
12+ θ;
13+ qtbase = γ;
14+ qttools = η;
15+} ->
16+θ
test/golden/importless/kplotting.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ ε ζ η.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { meta = {broken = Bool; maintainers = [ε];};
6+ name = String;
7+ nativeBuildInputs = [ζ];
8+ outputs = [String];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ η;
12+ qtbase = γ;
13+ qttools = γ;
14+} ->
15+η
test/golden/importless/kwayland.txtnew file+19
@@ -0,0 +1,19 @@
1+∀ α β γ δ ε ζ η θ ι.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ propagatedBuildInputs = [γ];
10+ setupHook = θ;
11+ } ->
12+ ι;
13+ plasma-wayland-protocols = η;
14+ propagateBin = θ;
15+ qtbase = γ;
16+ wayland = η;
17+ wayland-protocols = η;
18+} ->
19+ι
test/golden/importless/kwidgetsaddons.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ outputs = [String];
10+ propagatedBuildInputs = [γ];
11+ } ->
12+ θ;
13+ qtbase = γ;
14+ qttools = η;
15+} ->
16+θ
test/golden/importless/linux-testing.txtdeleted−20
@@ -1,20 +0,0 @@
1−∀ β γ δ ε ζ η θ ι κ.
2−( β //
3− { extraMeta = {branch = String; hydraPlatforms = ∀ α. [α];};
4− modDirVersion = Null;
5− src = γ;
6− version = String;
7− } ~
8− δ,
9− β.?argsOverride = {},
10− β.?modDirVersionArg = Null,
11− β.buildLinux = δ -> ε,
12− β.buildPackages = ζ,
13− β.fetchurl = {sha256 = String; url = String;} -> γ,
14− β.perl = η,
15− β.stdenv = θ,
16− θ.lib = ι,
17− ι.builtins = κ,
18− κ.replaceStrings = [String] -> [String] -> String -> Null
19−) =>
20−β -> ε
test/golden/importless/liquidsoap.txtdeleted−68
@@ -1,68 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω α1 β1 γ1 δ1 ε1 ζ1 η1 θ1 ι1 κ1
2−λ1 μ1 ν1 ξ1 ο1.
3−( α.config = β,
4− α.lib = γ,
5− α.pkgs = δ,
6− β.ids = ε,
7− β.services = ζ,
8− γ.builtins = η,
9− γ.literalExample = String -> θ,
10− γ.map =
11− ( ι ->
12− { name = ι;
13− value =
14− { after = [String];
15− description = String;
16− path = [κ];
17− serviceConfig =
18− {ExecStart = String; LogsDirectory = String; User = String;};
19− wantedBy = [String];
20− };
21− }
22− ) ->
23− λ -> μ,
24− γ.mkIf =
25− Bool ->
26− { systemd = {services = ν;};
27− users =
28− { groups = {liquidsoap = {gid = ξ;};};
29− users =
30− { liquidsoap =
31− { createHome = Bool;
32− description = String;
33− extraGroups = [String];
34− group = String;
35− home = String;
36− uid = ο;
37− };
38− };
39− };
40− } ->
41− π,
42− γ.mkOption =
43− { default = {};
44− description = String;
45− example = {myStream1 = θ; myStream2 = ρ; myStream3 = σ;};
46− type = τ;
47− } ->
48− υ,
49− γ.types = φ,
50− δ.wget = κ,
51− η.attrNames = χ -> λ,
52− ζ.liquidsoap = ψ,
53− ψ.streams = χ,
54− ω.getAttr = ι -> α1 -> β1,
55− γ1.liquidsoap = δ1,
56− δ1.streams = α1,
57− ε1.length = λ -> Number,
58− ζ1.listToAttrs = μ -> ν,
59− ε.gids = η1,
60− η1.liquidsoap = ξ,
61− θ1.uids = ι1,
62− ι1.liquidsoap = ο,
63− φ.attrsOf = κ1 -> τ,
64− λ1.either = μ1 -> ν1 -> κ1,
65− ξ1.path = μ1,
66− ο1.str = ν1
67−) =>
68−α -> {config = π; options = {services = {liquidsoap = {streams = υ;};};};}
test/golden/importless/master.txtdeleted−56
@@ -1,56 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω α1 β1 γ1.
2−( α.config = β,
3− α.lib = γ,
4− α.pkgs = δ,
5− β.environment = ε,
6− β.services = ζ,
7− δ.writeText = String -> η -> θ,
8− γ.aneeshusa = ι,
9− γ.builtins = κ,
10− γ.cfg = λ,
11− γ.maintainers = μ,
12− γ.mkEnableOption = String -> ν,
13− γ.mkIf =
14− ξ ->
15− { environment =
16− {etc = {salt/master = {source = θ;};}; systemPackages = [ο];};
17− systemd =
18− { services =
19− { salt-master =
20− { after = [String];
21− description = String;
22− path = [π];
23− restartTriggers = [ρ];
24− serviceConfig =
25− { ExecStart = String;
26− LimitNOFILE = Number;
27− NotifyAccess = String;
28− Type = String;
29− };
30− wantedBy = [String];
31− };
32− };
33− };
34− } ->
35− σ,
36− γ.mkOption = {default = {}; description = String; type = τ;} -> υ,
37− γ.recursiveUpdate = {default_include = String; pki_dir = String;} -> φ -> χ,
38− γ.salt = ο,
39− γ.types = ψ,
40− γ.utillinux = π,
41− λ.configuration = φ,
42− ζ.salt = ω,
43− ω.master = α1,
44− α1.enable = ξ,
45− κ.toJSON = χ -> η,
46− ε.etc = β1,
47− β1.salt/master = γ1,
48− γ1.source = ρ,
49− ψ.attrs = τ
50−) =>
51−α ->
52−{ config = σ;
53− meta = {maintainers = [ι];};
54− options =
55− {services = {salt = {master = {configuration = υ; enable = ν;};};};};
56−}
test/golden/importless/minion.txtdeleted−53
@@ -1,53 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω α1.
2−( α.config = β,
3− α.lib = γ,
4− α.pkgs = δ,
5− β.environment = ε,
6− β.services = ζ,
7− δ.writeText = String -> η -> θ,
8− γ.builtins = ι,
9− γ.cfg = κ,
10− γ.mkEnableOption = String -> λ,
11− γ.mkIf =
12− μ ->
13− { environment =
14− {etc = {salt/minion = {source = θ;};}; systemPackages = [ν];};
15− systemd =
16− { services =
17− { salt-minion =
18− { after = [String];
19− description = String;
20− path = [ξ];
21− restartTriggers = [ο];
22− serviceConfig =
23− { ExecStart = String;
24− LimitNOFILE = Number;
25− NotifyAccess = String;
26− Type = String;
27− };
28− wantedBy = [String];
29− };
30− };
31− };
32− } ->
33− π,
34− γ.mkOption = {default = {}; description = String; type = ρ;} -> σ,
35− γ.recursiveUpdate = {default_include = String; pki_dir = String;} -> τ -> υ,
36− γ.salt = ν,
37− γ.types = φ,
38− γ.utillinux = ξ,
39− κ.configuration = τ,
40− ζ.salt = χ,
41− χ.minion = ψ,
42− ψ.enable = μ,
43− ι.toJSON = υ -> η,
44− ε.etc = ω,
45− ω.salt/minion = α1,
46− α1.source = ο,
47− φ.attrs = ρ
48−) =>
49−α ->
50−{ config = π;
51− options =
52− {services = {salt = {minion = {configuration = σ; enable = λ;};};};};
53−}
test/golden/importless/modemmanager-qt.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ ε ζ η.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { meta = {broken = Bool; maintainers = [ε];};
6+ name = String;
7+ nativeBuildInputs = [ζ];
8+ outputs = [String];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ η;
12+ modemmanager = γ;
13+ qtbase = γ;
14+} ->
15+η
test/golden/importless/networkmanager-qt.txtnew file+15
@@ -0,0 +1,15 @@
1+∀ α β γ δ ε ζ η.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { meta = {broken = Bool; maintainers = [ε];};
6+ name = String;
7+ nativeBuildInputs = [ζ];
8+ outputs = [String];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ η;
12+ networkmanager = γ;
13+ qtbase = γ;
14+} ->
15+η
test/golden/importless/nscd.txtdeleted−62
@@ -1,62 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω α1 β1 γ1 δ1 ε1 ζ1 η1 θ1 ι1 κ1
2−λ1 μ1 ν1.
3−( α.config = β,
4− α.lib = γ,
5− α.pkgs = δ,
6− β.environment = ε,
7− β.services = ζ,
8− β.system = η,
9− γ.builtins = θ,
10− γ.mkIf =
11− ι ->
12− { environment = {etc = {nscd.conf = {text = κ;};};};
13− systemd =
14− { services =
15− { nscd =
16− { description = String;
17− environment = {LD_LIBRARY_PATH = λ;};
18− restartTriggers = [μ];
19− serviceConfig =
20− { DynamicUser = Bool;
21− ExecReload = [String];
22− ExecStart = String;
23− PIDFile = String;
24− Restart = String;
25− RuntimeDirectory = String;
26− Type = String;
27− };
28− wantedBy = [String];
29− };
30− };
31− };
32− } ->
33− ν,
34− γ.mkOption = {default = ξ; description = String; type = ο;} -> π,
35− γ.types = ρ,
36− δ.glibc = σ,
37− δ.stdenv = τ,
38− η.nssModules = υ,
39− υ.path = λ,
40− τ.hostPlatform = φ,
41− φ.libc = String,
42− χ.cc = ψ,
43− ψ.libc = ω,
44− ω.bin = α1,
45− σ.bin = α1,
46− ζ.nscd = β1,
47− β1.config = κ,
48− β1.enable = ι,
49− ε.etc = γ1,
50− γ1.hosts = δ1,
51− δ1.source = μ,
52− ε1.etc = ζ1,
53− ζ1.nsswitch.conf = η1,
54− η1.source = μ,
55− θ1.etc = ι1,
56− ι1.nscd.conf = κ1,
57− κ1.source = μ,
58− θ.readFile = String -> ξ,
59− ρ.lines = ο,
60− λ1.bool = μ1
61−) =>
62−α -> {config = ν; options = {services = {nscd = {config = π; enable = ν1;};};};}
test/golden/importless/prison.txtnew file+17
@@ -0,0 +1,17 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ libdmtx = η;
5+ mkDerivation =
6+ { buildInputs = [η];
7+ meta = {broken = Bool; maintainers = [ε];};
8+ name = String;
9+ nativeBuildInputs = [ζ];
10+ outputs = [String];
11+ propagatedBuildInputs = [γ];
12+ } ->
13+ θ;
14+ qrencode = η;
15+ qtbase = γ;
16+} ->
17+θ
test/golden/importless/solid.txtnew file+20
@@ -0,0 +1,20 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { bison = ζ;
3+ extra-cmake-modules = ζ;
4+ flex = ζ;
5+ lib = α;
6+ media-player-info = ζ;
7+ mkDerivation =
8+ { buildInputs = [η];
9+ meta = {broken = Bool; maintainers = [ε];};
10+ name = String;
11+ nativeBuildInputs = [ζ];
12+ propagatedBuildInputs = [γ];
13+ propagatedUserEnvPkgs = [ζ];
14+ } ->
15+ θ;
16+ qtbase = γ;
17+ qtdeclarative = η;
18+ qttools = η;
19+} ->
20+θ
test/golden/importless/sonnet.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ hunspell = η;
4+ lib = α;
5+ mkDerivation =
6+ { buildInputs = [η];
7+ meta = {broken = Bool; maintainers = [ε];};
8+ name = String;
9+ nativeBuildInputs = [ζ];
10+ propagatedBuildInputs = [γ];
11+ } ->
12+ θ;
13+ qtbase = γ;
14+ qttools = η;
15+} ->
16+θ
test/golden/importless/squeezelite.txt+12−14
@@ -1,12 +1,11 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ.
1+∀ α β γ δ ε ζ η θ ι κ λ μ.
22( α.config = β,
33 α.lib = γ,
44 α.pkgs = δ,
55 β.services = ε,
6− γ.builtins = ζ,
7− γ.mkEnableOption = String -> η,
6+ γ.mkEnableOption = String -> ζ,
87 γ.mkIf =
9− θ ->
8+ η ->
109 { systemd =
1110 { services =
1211 { squeezelite =
@@ -15,7 +14,7 @@
1514 serviceConfig =
1615 { DynamicUser = Bool;
1716 ExecStart = String;
18− StateDirectory = ι;
17+ StateDirectory = String;
1918 SupplementaryGroups = String;
2019 };
2120 wantedBy = [String];
@@ -23,15 +22,14 @@
2322 };
2423 };
2524 } ->
26− κ,
27− γ.mkOption = {default = String; description = String; type = λ;} -> μ,
28− γ.types = ν,
29− ε.squeezelite = ξ,
30− ξ.enable = θ,
31− ζ.baseNameOf = String -> ι,
32− ν.str = λ
25+ θ,
26+ γ.mkOption = {default = String; description = String; type = ι;} -> κ,
27+ γ.types = λ,
28+ ε.squeezelite = μ,
29+ μ.enable = η,
30+ λ.str = ι
3331) =>
3432α ->
35−{ config = κ;
36− options = {services = {squeezelite = {enable = η; extraArguments = μ;};};};
33+{ config = θ;
34+ options = {services = {squeezelite = {enable = ζ; extraArguments = κ;};};};
3735}
test/golden/importless/syntax-highlighting.txtnew file+16
@@ -0,0 +1,16 @@
1+∀ α β γ δ ε ζ η θ.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { buildInputs = [η];
6+ meta = {broken = Bool; maintainers = [ε];};
7+ name = String;
8+ nativeBuildInputs = [ζ];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ θ;
12+ perl = ζ;
13+ qtbase = γ;
14+ qttools = η;
15+} ->
16+θ
test/golden/importless/threadweaver.txtnew file+14
@@ -0,0 +1,14 @@
1+∀ α β γ δ ε ζ η.
2+(α.maintainers = β, γ.version = δ, β.ttuegel = ε) => { extra-cmake-modules = ζ;
3+ lib = α;
4+ mkDerivation =
5+ { meta = {broken = Bool; maintainers = [ε];};
6+ name = String;
7+ nativeBuildInputs = [ζ];
8+ outputs = [String];
9+ propagatedBuildInputs = [γ];
10+ } ->
11+ η;
12+ qtbase = γ;
13+} ->
14+η
test/golden/importless/updateSettings.txtnew file+12
@@ -0,0 +1,12 @@
1+∀ α β γ δ ε.
2+(α.optionalString = Bool -> String -> β) => { jq = γ;
3+ lib = α;
4+ writeShellScriptBin = String -> δ -> ε;
5+} ->
6+{ createIfDoesNotExists = Bool;
7+ settings = {};
8+ symlinkFromUserSetting = Bool;
9+ userSettingsFolder = String;
10+ vscodeSettingsFile = String;
11+} ->
12+ε
test/golden/importless/xmpp-alerts.txtdeleted−54
@@ -1,54 +0,0 @@
1−∀ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ.
2−( α.config = β,
3− α.lib = γ,
4− α.pkgs = δ,
5− β.services = ε,
6− γ.builtins = ζ,
7− γ.cfg = η,
8− γ.mkEnableOption = String -> θ,
9− γ.mkIf =
10− ι ->
11− { systemd =
12− { services =
13− { prometheus-xmpp-alerts =
14− { after = [String];
15− serviceConfig =
16− { DynamicUser = Bool;
17− ExecStart = String;
18− NoNewPrivileges = Bool;
19− PrivateDevices = Bool;
20− PrivateTmp = Bool;
21− ProtectControlGroups = Bool;
22− ProtectHome = Bool;
23− ProtectKernelModules = Bool;
24− ProtectKernelTunables = Bool;
25− ProtectSystem = String;
26− Restart = String;
27− RestrictAddressFamilies = [String];
28− SystemCallArchitectures = String;
29− SystemCallFilter = [String];
30− };
31− wantedBy = [String];
32− wants = [String];
33− };
34− };
35− };
36− } ->
37− κ,
38− γ.mkOption = {description = String; type = λ;} -> μ,
39− γ.types = ν,
40− δ.writeText = String -> ξ -> ο,
41− ζ.toJSON = π -> ξ,
42− η.configuration = π,
43− ε.prometheus = ρ,
44− ρ.xmpp-alerts = σ,
45− σ.enable = ι,
46− ν.attrs = λ
47−) =>
48−α ->
49−{ config = κ;
50− options =
51− { services =
52− {prometheus = {xmpp-alerts = {configuration = μ; enable = θ;};};};
53− };
54−}