1
1
mirror of https://github.com/divnix/digga.git synced 2024-12-23 16:11:51 +03:00
Commit Graph

1153 Commits

Author SHA1 Message Date
David Arnold
bbcca38932 fix: bump flake-utils-plus with a regression w.r.t exportModules reverted 2022-02-23 15:23:14 -08:00
David Arnold
285f879014 bump: downstream for tests 2022-02-23 15:23:14 -08:00
David Arnold
6edaccd19e imp/nixos: enable importable access to self & inputs's lib functions
`self` and `inputs` might have library functions or other features that
users want to use within the module system.

To avoid infinite recursion when used within the context of `imports`
statements, make them `sepcialArgs`.
2022-02-23 15:23:14 -08:00
David Arnold
64031cd1d5 imp: pass self & inputs to devshell module eval 2022-02-23 15:23:14 -08:00
David Arnold
cf6f2e1bd9 fix: don't git ignore the mdbook index 2022-02-23 15:23:14 -08:00
David Arnold
cb79b839c5 bump: downstream for tests 2022-02-23 15:23:14 -08:00
David Arnold
b089b036c2 fix: mkFlake options & functor 2022-02-23 15:23:14 -08:00
David Arnold
13d6f8590f fix: boostrap iso module 2022-02-23 15:23:14 -08:00
David Arnold
fee8829dd7 docs: add general docs (w/o library reference)
library reference expected to come as soon as flake-utils-plus has
the corresponding implementation.
2022-02-23 15:23:14 -08:00
David Arnold
736b50eeb0 fix: api-doc job 2022-02-23 15:23:14 -08:00
David Arnold
cd8a40c682 fix: remove deprecated accessors in examples 2022-02-23 15:23:14 -08:00
David Arnold
0c266bafdf ref: adapt to fup upstream refactoring 2022-02-23 15:23:14 -08:00
David Arnold
6562558a4b fix: infinite recursion
specialArgs (even though from submodules) cannot be obtained from 
within the module system
2022-02-23 15:23:14 -08:00
David Arnold
14e36e1133 fix: add inputs back to arguments
Accessing inputs via self seems to be illegal in certain cirumstances
and produces an infinite recursion.
2022-02-23 15:23:14 -08:00
teutat3s
2965633c1f Using extra-* in nix.extraOptions should append to existing entries in nix.conf 2022-02-23 15:23:14 -08:00
David Arnold
826620aabb ref: factor mkFlake into its components
this is intended to facilitate further debugging and organize the 
codebase
2022-02-23 15:23:14 -08:00
David Arnold
8ed47e8270 ref: don't mix access to configuration inputs and config values
use proper configuration values
2022-02-23 15:23:14 -08:00
David Arnold
2fc56f4dd6 imp: add e2e tests 2022-02-23 15:23:14 -08:00
David Arnold
0cea9fecfb bump: devos to tip of correspondence PR 2022-02-23 15:23:14 -08:00
David Arnold
7587f4700e fmt 2022-02-23 15:23:14 -08:00
David Arnold
a253fda655 ref: reorganise exported confenience modules & overlays 2022-02-23 15:23:14 -08:00
David Arnold
b90ad83d83 satisfy pre-commit hook (editorconfig / format) 2022-02-23 15:23:14 -08:00
David Arnold
ea183d97fd ref: overlays.patched -> overlays.patchedNix 2022-02-23 15:23:14 -08:00
David Arnold
4b892d6c11 nixConfig: provide a useful nixConfig module
users should decide wether they trust the caches and find those
options useful and hence explicitly activate them in their `devos`
2022-02-23 15:23:14 -08:00
David Arnold
5eb849f0f6 nixConfig: setup the nix configuration
Users may not have setup their nix correctly. This ensures they have the
proper features and caches setup when they use this repo.

We currently have not entire clarity wether all `nixConig` flake options
work. At some point in time `nix` support was limited.

Therefore, we implement an NIX_CONFIG fallback (at least) in the devshell

supersedes #69
2022-02-23 15:23:14 -08:00
David Arnold
4a4a6ee1c1 imp: add proper nix patching
It is very likely that some digga functionality requires patches to nix

Create a place for patches that mimicks the way how they could be
applied once `inputs.<name>.patches` of the
UFR (Unofficial Flakes Roadmap) is implemented.

Also showcase how `nixConfig` can add extra feature flags (without
overriding the patched-in ones).
2022-02-23 15:23:14 -08:00
David Arnold
78e198103a bump: devos for testing 2022-02-23 15:23:14 -08:00
David Arnold
a060db0a55 fix: do host-spaced home checks only on that hosts's architecture 2022-02-23 15:23:14 -08:00
David Arnold
b4a7330864 imp: hm user@host idiom should be aligned with host's deployment
When using the `user@host` idiom, we explicitly want to deploy that
users on that host. Therefore, don't alter the deployment
configuration between the method that uses `homeConfigurations` and
the method that changes the home configuration as part of the system
configuration change.

In the future a portable `user/arch` combination can be implemented.
Such `user/arch` is not host specific and can be deployed to any host
where nix is installed (e.g. at work). In this use case, we have to
make sure that the user's $HOME/.nix-profile is used as the profile, 
that is `home-manager.useUserPackages = mkForce false`.
2022-02-23 15:23:14 -08:00
David Arnold
dd1e822f7e ref: cleanup hm config generation
- uses c.config.home-manager.users directly (depends on https://github.com/divnix/devos/pull/338)
- fix: uses c.config.networking.hostName instead of reverseDNS names
- sets `useUserPackages` to `false` and removes mkForce false from https://github.com/divnix/devos/pull/338)
2022-02-23 15:23:14 -08:00
David Arnold
d64f95fb28 test: add hm only config 2022-02-23 15:23:14 -08:00
David Arnold
a3b2207f22 bump: devos for testing 2022-02-23 15:23:14 -08:00
David Arnold
70ba6e210e bump: fup (include dynamic output) 2022-02-23 15:23:14 -08:00
David Arnold
68b6f161ae imp: better hm user checks naming 2022-02-23 15:23:14 -08:00
David Arnold
e07825ca4e fix: checks for portableHomeConfigurations
Without this modification to the initial implementation, we this error:

```console
error: attribute 'activationPackage' missing

       at /nix/store/2ja93yb8276wk794zkgnaf0m5rghp5mw-source/src/mkFlake/default.nix:145:37:

          144|               ) then
          145|                 lib.mapAttrs (n: v: v.activationPackage) self.homeConfigurations
             |                                     ^
          146|               else { }
```
2022-02-23 15:23:14 -08:00
David Arnold
01c9e74a05 imp: add portable per aarch users 2022-02-23 15:23:14 -08:00
David Arnold
8bae91593c ref: aclaratory naming 2022-02-23 15:23:14 -08:00
David Arnold
0ea701705d fix: regression
`submoduleWith` does not have the `_module` options, so the only two
options left are passing via `specialArgs` or create a self option
to pass it as config. For better UX, let's use specialArgs, here.
2022-02-23 15:23:14 -08:00
David Arnold
905b26bcb8 zoink: surface regression
In this changeset, the `self` module argument is not actually passed.

Upstream nixpkgs, for unknown reasons does not fail with the usual
error message, presumably becuase this is sumoduleWith type, but instead
bails with an inifinite recursion.
2022-02-23 15:23:14 -08:00
David Arnold
c7224726ef bump: downstream for tests 2022-02-23 15:23:14 -08:00
David Arnold
ee21767f62 bump: deploy (with overlay) 2022-02-23 15:23:14 -08:00
David Arnold
b1b29239a8 imp: reduce flake inputs footprint and increase conciseness
also produce more cach hits using nixpkgs/release 21.05

fix: #78
2022-02-23 15:23:14 -08:00
David Arnold
667be56cf4 fix: work arround path:../../ & input.parent error
This error is introduced via https://github.com/NixOS/nix/pull/4641

Proper analysis / evlt. fix is pending.
2022-02-23 15:23:14 -08:00
David Arnold
4bb01ba900 fix: add the entirety of nix#4641 patch
Previously, a specific commit was references, while the patch has +-
evolved into its final shape, which we want to capture here.
2022-02-23 15:23:14 -08:00
David Arnold
6954bdde5f bump downstream to working tip for tests 2022-02-23 15:23:14 -08:00
David Arnold
a6fadb1288 ref: split digga shell into divnix/flk & divnix/devos/shell (devshell) 2022-02-23 15:23:14 -08:00
David Arnold
a2411ee0ec fix: make nixos.hostDefaults.channelName required
In several places `mkFlake` assumes an valid value is set, here.

fixes: #76
2022-02-23 15:23:14 -08:00
David Arnold
0a5325d362 Revert "use deploy's overlay to prevent nixpkgs dep"
This reverts commit 8ae19a33c1c34620ce843e286fa69852db791d5c.

fix: #75

see that issue also for an unresolvable situation induced by this
2022-02-23 15:23:14 -08:00
David Arnold
33474e6ffa imp: pass down self to grouped folder layout
pass `self` to top level imports in the style of
`./examples/groupByConfig`
2022-02-23 15:23:14 -08:00
David Arnold
02d8feb01d fix: add back digga lib checks
This would have catched 2a696ebeb8 (r53008224)
2022-02-23 15:23:14 -08:00