David Arnold
39b39f1a4f
imp: conservative digga lib output
...
in order to avoid people accidentially depending on some internal API
which we don't explicitly want to support well into version 1.0, hide
those from the output.
Users who still want to use those need to copy them over, instead.
This reduces our API exposure and hopefully will help save maintainer
resources once `digga` completely takes over the world.
2022-02-23 15:23:14 -08:00
David Arnold
91a5764acf
ref: tests are becoming a pkgs-less library
2022-02-23 15:23:14 -08:00
David Arnold
7608f9585c
ref: we love the unofficial flakes roadmap
2022-02-23 15:23:14 -08:00
David Arnold
25bf8eefe2
ref: auxiliaries (checks, jobs, devshell)
...
Includes nix patch: https://github.com/NixOS/nix/pull/4641
2022-02-23 15:23:14 -08:00
David Arnold
e5ab98071d
add groupByConfig example
2022-02-23 15:23:14 -08:00
Pacman99
979b1bb723
flake: drop follows for nixos-generators input
2022-02-23 15:23:14 -08:00
David Arnold
2eb6f83262
fix: maybImport to also classic imports that peak for defualt.nix
...
such as `import ./pkgs`, actually loading `./pkgs/default.nix`
2022-02-23 15:23:14 -08:00
Pacman99
00d056f87e
modules: add builds for nixos-generators formats
2022-02-23 15:23:14 -08:00
Pacman99
52566f41d8
flake: use fup for non-lib outputs
2022-02-23 15:23:13 -08:00
David Arnold
c43d7641fa
imp: make importers truely recursive
...
- hostnames are construed from a reverse DNS notation of folder names
BREAKING CHANGE (without practical impact):
fup needs to be udpated to parse the reverse DNS notation back into
a hostname DNS label + a DNS domain (to set networking.domain).
However, since until now, no recursive hosts where allowed, this
can be safely done soonishly.
2022-02-23 15:23:13 -08:00
David Arnold
639863bebb
ref: drop safeReadDir
2022-02-23 15:23:13 -08:00
Pacman99
271cfd0c18
re-add mkProfileAttrs with a deprecation message
2022-02-23 15:23:13 -08:00
Pacman99
f100c6dcf4
flake: update devshell input for importTOML
2022-02-23 15:23:13 -08:00
Pacman99
237e0bce9b
rakeLeaves: create and use standard auto-importer
...
The function picks up `.nix` files and stops recursing when it hits
a folder with a `default.nix`
This allows it to be used to collect hosts, overlays, and profiles
2022-02-23 15:22:57 -08:00
Pacman99
0bbc1decfe
test mkFlake with a full flake similar to devos
2022-02-23 15:22:07 -08:00
Pacman99
8c7da5e5fe
flake: use nixpkgs.lib for lib output
2022-02-23 15:22:07 -08:00
Pacman99
a489a954fd
Move library code to src/ and cleanup folders
2022-02-23 15:22:07 -08:00
David Arnold
c4da36132c
imp: remove importer from top level lib exports
...
Importers are auxiliary functions of this library. It feels inconsistent when
they have the same visibility of primary (builder) functions.
2022-02-23 15:22:07 -08:00
Pacman99
14c811916c
shell: add packages from overlays to devshell
...
following same logic as exporting packages, but don't filter out inputs
2022-02-23 15:22:07 -08:00
Pacman99
9f0ecf6920
init with devos lib extraction
...
simple copy of devos library code
2022-02-23 15:22:07 -08:00
Parthiv Seetharaman
46fe74647e
tree: move everything into examples/devos
2022-02-23 15:21:28 -08:00
Parthiv Seetharaman
b0aadda88c
flake: switch back to serokell deploy input
...
There is a bug in the input-output-hk fork
2022-02-17 16:22:48 -08:00
Parthiv Seetharaman
87f1d7da18
bud: move to shell and use git clone for get
2021-12-29 15:41:58 -08:00
David Arnold
a319aed9f4
imp: move follows responsibility downstream
...
- also remove unimportant (small) depenencies from follows management
- so that it is less complex as errors occur, since:
- it seems there are still follows issues present upstream
2021-12-29 14:00:25 -08:00
David Arnold
6151d02b8d
rm: use of patched nix for nixos 21.11 enabled digga
...
- patched nix held the follows patch which is now upstreamed
2021-12-29 14:00:25 -08:00
GTrunSec
950199ef2c
update deploy-rs overlay
2021-09-29 11:45:46 -07:00
Parthiv Seetharaman
e0da74c87c
Update flake to use new moddules options
2021-09-27 16:23:06 -07:00
David Arnold
5657ddf3c1
fix: input ref / bump digga
...
the indirect reference started failing with
```
warning: Git tree '/home/blaggacao/ghq/github.com/divnix/devos' is dirty
error: NAR hash mismatch in input 'github:NixOS/nixpkgs/release-21.05' (/nix/store/0r0xrqj5l88071cama7hlha5ajya06c8-source), expected 'sha256-MhVtkVt1MFfaDY3ObJu54NBcsaPk19vOBZ8ouhjO4qs=', got 'sha256-jQgXeJ9NQQS0Eobb/qQOvS+RRULkqRikAeXkkFKOPDA='
```
2021-08-05 20:42:26 -05:00
David Arnold
2fcb3605ee
docs: soft update (fix the most obvious drift)
2021-08-01 16:38:52 -05:00
teutat3s
bf81ed29d1
Ensure pinning latest channel to nixpkgs nixos-unstable branch
2021-07-30 22:22:44 +02:00
Timothy DeHerrera
8b67cae20a
flake: remove ci-agent
2021-07-23 14:38:54 -06:00
David Arnold
a3ec0d2814
imp: use bud nixos-/devhsllModules and hide rebiding
...
both modules depend on `self`/`inputs` available as special args for
both, devshell & nixos modules, so bump to an improved `digga`, as well.
2021-07-20 23:36:41 -05:00
David Arnold
bf8620f8ba
ref: point digga
to main
(default) branch
2021-07-20 22:19:09 -05:00
David Arnold
31a8e76209
ref: adapt to using plain digga module for boostrap ISO
2021-07-20 21:45:41 -05:00
David Arnold
dcb425341d
update: digga/fup refactoring
2021-07-20 19:13:17 -05:00
David Arnold
a088edd77a
fmt
2021-07-16 16:57:57 -05:00
David Arnold
6c25e77f6f
add flake's nixConfig values that go well with this repo
2021-07-16 16:57:57 -05:00
David Arnold
aa45592c17
imp: add digga's nixConfig and patchedNix
2021-07-16 16:57:57 -05:00
David Arnold
4b9cab40cb
imp: add portable user definition
...
According to https://github.com/nix-community/home-manager/issues/2161
there might be a better formal distinction between host-spaced and
portable arch-spaced hm users in the future.
2021-07-16 11:22:10 -05:00
David Arnold
6ebdf3adb4
imp: reduce flake inputs footprint and increase conciseness
2021-07-15 19:26:27 -05:00
David Arnold
fe73d2a083
fix: hm pin to corresponding nixos version
2021-07-09 11:46:42 -05:00
David Arnold
bf59976063
work-around for https://github.com/NixOS/nix/pull/4641
2021-07-07 21:03:31 -05:00
David Arnold
33fb25e011
ref: move devshell module here to devos
again
2021-07-07 21:03:31 -05:00
GTrunSec
f1117f27ec
fix hasekllPackages overlay
2021-06-24 22:58:26 -07:00
GTrunSec
ee89bf3f2a
feature: Add pkgs fetch manager nvfetcher
...
Co-authored-by: David Arnold <dar@xoe.solutions>
2021-06-24 21:37:50 -05:00
David Arnold
3cc28b3adb
bump digga to latest develop
2021-06-24 18:11:24 -05:00
David Arnold
62683b24ac
ref: pass our lib as lib.our to the module system
...
At least we don't find ourselves with strange module signatures
and use something that looks like a dedicated namespace within
he module system: `config.lib`
2021-06-13 23:30:05 -05:00
Pacman99
5831adb061
flake: switch to digga master
...
To use the now released v0.2.0
2021-06-08 18:14:32 -07:00
Pacman99
8e250d5084
flake: add agenix to devShell
2021-06-01 11:32:20 -07:00
Pacman99
d9082066f7
flake: update to new digga api
2021-06-01 11:32:20 -07:00
Pacman99
768e3e7541
Merge branch 'core' into develop
2021-05-27 11:02:41 -07:00
bors[bot]
da9f14cab2
Merge #279
...
279: Agenix integration r=blaggacao a=Pacman99
AFAICT This is mostly a documentation thing. But with divnix/devlib#2 we can now add agenix to the devshell.
Co-authored-by: Pacman99 <pachum99@gmail.com>
2021-05-20 18:53:20 +00:00
Pacman99
18d4c78ea5
flake: un-comment defaultTemplate
...
This was accidentally commented.
fixes #288
2021-05-16 19:35:52 -07:00
Pacman99
2ab4df3f60
suites: re-add rec
to simplify suite definitions
2021-05-15 10:31:54 -07:00
Pacman99
64b7892f6e
Add agenix integration to secrets and flake
2021-05-14 18:38:55 -07:00
Pacman99
2f474e37f7
flake: update to latest digga api
...
allows overlays to also be used with `imports` and renames importHosts
2021-05-14 16:49:12 -07:00
Pacman99
dd6c481791
flake: format ourlib for consistency with digga
2021-05-14 11:01:44 -07:00
Pacman99
923ce7feff
tree: rename devlib -> digga
2021-05-14 10:20:02 -07:00
Pacman99
ccc0fc97fe
flake.nix: use imports
for auto-import of hosts
...
This makes the auto-importing of hosts obvious and explicitly indicates
how the options would end up getting merged.
2021-05-13 17:03:51 -07:00
Pacman99
c89dfed81c
don't import cachix in suites
...
its already imported in the core profile
2021-05-12 19:18:11 -07:00
Pacman99
67f545123c
flake: format and update to devlib api changes
2021-05-12 12:31:43 -07:00
Pacman99
3ee831f852
flake.nix: explicitly append overlays from path
...
Co-authored-by: David Arnold <dar@xoe.solutions>
2021-05-12 12:29:00 -07: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
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
a5dcb5fae9
fix flake by removing flake-compat follows
2021-04-27 18:41:51 -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
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
d5276195f7
move overrides.nix to overlays
...
also update overrides docs
it is a pure devos overlay now, it makes sense to go in overlays
2021-04-27 09:47:04 -07:00
Pacman99
e67b49c280
auto-flatten coercedListOf and type fixes
2021-04-27 09:35:44 -07:00
Pacman99
e9675330a7
add cachix to base suite
...
to follow the new api
2021-04-26 19:34:18 -07:00
Pacman99
b766c693ab
add pkgs overlay, pkgs.overlay is just for srcs
2021-04-26 13:21:40 -07:00
David Arnold
c3d8805ad6
update devos template to use new api
2021-04-26 11:51:39 -07: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
Timothy DeHerrera
e1e0f99af9
suites: move to profles/suites.nix
2021-04-18 21:13:12 -06:00
Timothy DeHerrera
e13a65b33c
overrides: move to extern
2021-04-18 21:06:47 -06:00
David Arnold
19c900e293
workarround for unkown problem
2021-04-18 19:11:26 -05:00
David Arnold
5f89d27428
ref: extract lib into subflake
2021-04-18 19:11:26 -05:00
Pacman99
ac4c26755b
init pkgs-lib, move tests and shell there
2021-04-10 13:36:54 -07:00
Timothy DeHerrera
be4b612b23
treewide: format with nixpkgs-fmt
2021-04-09 19:22:08 -06:00
Pacman99
d068d79bfd
flake: use mkFlake
...
this is where we create devos's template structure
2021-04-06 12:45:04 -07:00
Pacman99
92700888b7
flake: update to use mkSuites and mkHosts
2021-03-29 09:05:54 -07:00
bors[bot]
ef1ee6e6b8
Merge #217
...
217: lib/mkPkgs: don't import external files and get inputs as argument r=nrdxp a=Pacman99
Changes mkPkgs to take extern, overrides, and pkgs as an argument. This improves their ability to be used as lib functions.
Co-authored-by: Pacman99 <pachum99@gmail.com>
2021-03-27 17:31:26 +00:00
Pacman99
e10fd4b319
shell: get extern and overrides to pass to mkpkgs
2021-03-27 10:09:05 -07:00
Pacman99
562f476fb5
lib/mkPkgs: fix function arguments
...
take extern and overrides as arguments as to not import external files
get inputs as a function dependency from callLib
2021-03-27 10:09:05 -07:00
Pacman99
58814fe741
flake: use filterPackages instead of flattenTreeSystem
2021-03-26 17:03:23 -07:00
Pacman99
dc9d9877b8
export homeConfigurations for all user@host pairs and add better home-manager only defaults
2021-03-23 09:43:37 -07:00
Pacman99
416a52fcd3
users: add and export user modules and import them in hosts
2021-03-23 09:43:37 -07:00
Pacman99
0e5aa6568e
flake/home: release -> master
2021-03-23 09:43:37 -07:00
Timothy DeHerrera
44623b5979
nix: don't use nix flake
...
I originally wanted to use the nix flake to allow users to take
advantage of the latest changes. Just so happened that nixpkgs was
recently updated with a new version around the same time, and this
just adds complexity for no real gain.
2021-03-22 23:29:31 -06:00
Timothy DeHerrera
9537daee32
flake: nixos -> nixos-unstable
...
20.09 is getting stale as we move toward a new release so track
unstable for now.
2021-03-22 23:20:40 -06:00
Pacman99
3c8d22a528
flake/tests: improve multi arch support for flake checks
2021-03-19 12:23:23 -07:00
Pacman99
aec7c92cc7
hosts: set nixpkgs.pkgs based on nixpkgs.system
2021-03-19 12:23:23 -07:00
Pacman99
4034659350
lib: pass inputs
to ./lib
...
library functions now can access inputs (and their sources!)
directly, for example in order to copy their closure into
the iso registry so that evaluating the flake does not need
to fetch inputs again
2021-03-16 16:38:36 -05:00
David Arnold
3d324e7533
lib/devos: bake devos repo into live cd ( #168 )
...
fix #167
This worked for me to bootstrap another machine.
2021-03-16 19:50:38 +00:00
Timothy DeHerrera
d51cd34fb7
subflakes: make first class citizens
...
Subflakes should provide their wares as outputs, so wire up the pkgs
flake to reflect that.
Due to the unstable nature of flakes, updating the root flake doesn't
currently update the subflake lock file. Therefore, add additional
logic to flk update script in order to do this behind the scenes.
Nix is now pulled in from the "nix" registry flake in order for users
to take advantage of improvements to the UI since its last update in
nixpkgs.
2021-03-14 21:27:58 -06:00
Timothy DeHerrera
c012f2f4ed
treewide cleanups and refactoring for initial tests ( #157 )
...
- [x] refactor lib into separate files, similar to NixOS/nixpkgs/lib.
- [x] refactor ci to automatically generate derivations from flake outputs
- [x] remove cluttered indirection statements throughout the codebase
- [x] refactor hosts to allow for upcoming integration tests
- [x] improve ambiguity in the existing docs
- [x] add [BORS](https://bors.tech ) support
- [x] add initial integration test
- [x] write tests documentation
- [x] test lib
- [x] improve version string generation, and do so automatically for pkgs/flake.nix sources
Clean up the codebase as best we can in preparation for #152 and add tests. From now on, all PRs will be merged with BORS.
2021-03-14 07:10:51 +00:00
Timothy DeHerrera
5bd8876b74
Merge pull request #147 from blaggacao/da/lib-with-dep-on-pkgs
...
lib: can depend on pkgs (a la nixpkgs#pkgs/pkgs-lib)
2021-03-05 12:16:38 -07:00