Commit graph

155 commits

Author SHA1 Message Date
teutat3s 02c145697b
Pull in upstream commits from https://github.com/divnix/digga/pull/490
Improved flake-compat

Get the rev from the flake.lock file. Shouldn't be an issue for
first time users as the guide instructs users to generate a lock
file. `builtins.file` was used in accordance with nix.dev
reccommendations.

https://nix.dev/anti-patterns/language#reproducibility-referencing-top-level-directory-with

Rm tempfix
2022-11-07 11:24:59 +01:00
teutat3s 2588264d88
Make check work 2021-10-24 22:03:28 +02:00
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