Commit graph

153 commits

Author SHA1 Message Date
Pacman99
f4cd79194a add in-tree local lib, ourlib 2021-05-05 13:44:39 -07:00
Pacman99
8dabd0f569 switch to devlib repo and remove in-tree lib 2021-05-05 13:24:08 -07:00
Pacman99
b8f7cdbe63 improve home-manager and deploy-rs integration
move both to be setup in template
only set home-manager options if they exist
2021-05-03 19:20:41 -05:00
Pacman99
7bf605d08c lib/modules: pull devlib module arg from pkgs
So any overlays affecting devlib also affect the module argument
2021-05-02 21:05:21 -07:00
Pacman99
deb47dbfae move otherArguments to right side of merge
for overlay list ordering, otherArguments should have priority
2021-05-02 11:15:44 -07:00
Pacman99
197d792946 update to new lib format 2021-05-02 10:13:48 -07:00
Pacman99
496348b8af lib: update namespaces and cleanup exports 2021-05-02 10:13:48 -07:00
Pacman99
e837aaa875 lib: remove devos section 2021-05-02 10:13:48 -07:00
Pacman99
c93e9fda0f lib: init importers section 2021-05-02 10:13:48 -07:00
Pacman99
e97e916521 lib: init generators section 2021-05-02 10:13:48 -07:00
Pacman99
e98e595704 pass builderArgs to config and extract builds
have mkHomeConfiguration create its own custom build within the function
create a externalModule for customBuilds so its easy to add more
2021-04-30 10:52:35 -07:00
Pacman99
23ee58d2d0 use __dontExport property for lib and overrides 2021-04-29 11:55:42 -07:00
Pacman99
5bc88ad2c2 don't use lockfile to get flake-compat
lock file format isn't very reliable with naming inputs
2021-04-27 16:36:07 -07:00
Pacman99
bb9bc02478 fix channels.*.input defaultText formatting 2021-04-27 12:52:16 -07:00
Pacman99
aa825b87a6 auto import hosts in flake.nix
this allows host-specific settings to be overriden with mkMerge
2021-04-27 10:26:45 -07:00
Pacman99
e67b49c280 auto-flatten coercedListOf and type fixes 2021-04-27 09:35:44 -07:00
Pacman99
f57840d723 mkFlake/default.nix: formatting 2021-04-27 09:32:12 -07:00
Pacman99
7f3116c1cc safeReadDir: conver path to string for reliability 2021-04-27 09:30:28 -07:00
Pacman99
466304c8cd improve passing host and channel arguments to fup
we need to filter out arguments that are added in the devos api
also anything thats null in either hostDefaults and hosts has to be
removed
2021-04-27 08:01:46 -07:00
Pacman99
064ba88cdf improve, build, and add mkFlake options doc 2021-04-26 21:38:27 -07:00
Pacman99
c41d3eed06 drop debugging related mkFlakeConfig output
was only meant for debugging, not meant to be commited
2021-04-26 21:32:57 -07:00
Pacman99
278ae0e108 set _module.check in evalArgs instead of mkFlake
this makes more sense since evalArgs is the module and it makes the code
cleaner
2021-04-26 21:32:26 -07:00
Pacman99
b6c00e74e7 set add self and hosts module arguments 2021-04-26 19:33:31 -07:00
Pacman99
a6344faa9a update fup to fix infinite recursion error 2021-04-26 19:30:55 -07:00
Pacman99
2a7d9e7109 fix suites test to match new mkSuites 2021-04-26 13:30:10 -07:00
Pacman99
37820fc214 explain overlay exporting inputs workaround 2021-04-26 12:29:18 -07:00
Pacman99
9f31d5d6d1 mkFlake: use inputs argument not self.inputs 2021-04-26 12:20:16 -07:00
Pacman99
dceac02b36 implement mkFlake for new api and rebase on fup 2021-04-26 11:51:10 -07:00
Pacman99
f8315a293c evalArgs: general api improvements
drop default channel, it is confusing and complicates api
don't take nixos input, using channels is better
manually pass names for outputs to improve documentation
2021-04-26 11:51:10 -07:00
Pacman99
3bb26330b4 switch to flake-utils-plus staging for rebase 2021-04-26 11:51:09 -07:00
Pacman99
377381de51 export pathsIn in lib and update devos input 2021-04-26 11:50:52 -07:00
Pacman99
ceef51425e init unifyOverlays: to pass channels to overlays
Only to those with three arguments
2021-04-26 11:27:00 -07:00
Pacman99
3986cc441b pkgs-lib: don't system space functions
have each function take pkgs as an argument, so a nixpkgs isn't created
just for pkgs-lib and they support more systems
2021-04-26 11:27:00 -07:00
Pacman99
ba01aa7db7 mkSuites: generalize for one profile/suite pair 2021-04-26 11:27:00 -07:00
Pacman99
59383e871f modules: drop any logic already done by fup
this includes creating multiPkgs, and dropping options already set by
fup
2021-04-26 11:27:00 -07:00
Pacman99
abd133c244 make devosSystem construct a proper nixos builder
Get `self` and `inputs` during construction, and rely on
specialArgs.channel for nixos flake
2021-04-26 11:27:00 -07:00
Pacman99
2cab5b5d2b add and use lib.collectProfiles
this function collects profiles recursively
2021-04-25 20:53:16 -07:00
Pacman99
58c7d04036 extract iso/hm config modules to lib.modules 2021-04-24 14:44:32 -07:00
Pacman99
4e28ec2d8e devosSystem: fix iso build - can't remove core 2021-04-24 14:44:17 -07:00
Pacman99
2d9ea0d27e lib: init modules and move mkHosts modules there
This helps to split up the code in mkHosts and creates a place where we
can store modules relevent to devos. It will also be easier to remove
unecessary parts of each module in the future when they are all
compartmentalized.
2021-04-24 14:44:16 -07:00
Pacman99
a53aa8b7eb lib: drop jobs output, prefer checks and packages
With mkFlakeDoc in packages there is no need for jobs. And I think
anything that could go in jobs really should go in checks or packages.
If something needs to be tested - checks, if something needs to be built
- packages. jobs is not multi-arch and is redundant to build/test
things with when official flake outputs exist
2021-04-24 13:08:33 -07:00
Pacman99
1cd4ed136a mkFlakeDoc: move to packages output
the packages output allows us to do `nix build .#nixosOptionsDoc`.
theres also already an instantiated nixpkgs available there.
2021-04-24 13:08:06 -07:00
Pacman99
eab0bf074c lib: one line for arguments, drop userFlake*
Also format all files and add a flake.lock for lib
for a folder thats meant to work on other flakes theres never a reason
it should need to refer to itself, only other flakes. So "self" and
"inputs" are better namings for these variables. The userFlake* is
redundant and confusing, when trying to call the functions its hard to
figure out how to use them when there are now two lines of arguments to
figure out.
2021-04-23 23:46:56 -07:00
Pacman99
fe9ba26561 evalArgs: cleanup module and type references
fix pathTo and coercedList types
add modulesModule to also include modules option under home
2021-04-23 17:59:01 -07:00
David Arnold
eea4e40d7e
ref: config -> hosts | nixos -> os
in devos, we differentiate clearly between home and os
configuration, reason for which we are more precise by not naming
after the (more generic) fup API.
2021-04-21 21:45:39 -05:00
Pacman99
f3defb486d used coercedTo for typing and improve options
allow lists, nested lists, and non-lists for list like options
drop config.<name>.externalModules
2021-04-21 18:38:58 -07:00
Pacman99
24dbb2b323
add mkFlakeDoc to pkgs-lib to build options doc 2021-04-19 00:41:20 -05:00
David Arnold
239386b5f8
Merge branch 'core' into api-next 2021-04-19 00:10:47 -05:00
David Arnold
a714cf466d
fix: various left-overs 2021-04-18 23:48:19 -05:00
David Arnold
8134350545
ref: simplify pkgs-lib deps injection 2021-04-18 22:40:53 -05:00