enhace devshell

This commit is contained in:
GTrunSec 2022-04-02 15:31:14 -07:00
parent d1e09b972b
commit 91d1041e06
No known key found for this signature in database
GPG key ID: 2368FAFA4ABDD2A0
5 changed files with 27 additions and 19 deletions

4
.envrc
View file

@ -1,5 +1,7 @@
watch_file flake.nix flake.lock \ watch_file flake.nix flake.lock \
modules/* modules/* \
devshell/*
{ {
mkdir -p "$(direnv_layout_dir)" mkdir -p "$(direnv_layout_dir)"
eval "$(nix print-dev-env --no-update-lock-file --no-write-lock-file --profile $(direnv_layout_dir)/flake-profile)" eval "$(nix print-dev-env --no-update-lock-file --no-write-lock-file --profile $(direnv_layout_dir)/flake-profile)"

7
devshell/default.nix Normal file
View file

@ -0,0 +1,7 @@
{
pkgs,
inputs,
}:
pkgs.devshell.mkShell {
imports = [(pkgs.devshell.importTOML ./devshell.toml)];
}

View file

@ -10,8 +10,8 @@ eval = "$DEVSHELL_ROOT/kubeconfig.json"
name = "kubenix" name = "kubenix"
packages = [ packages = [
"fd", "fd",
"nixpkgs-fmt",
"dive", "dive",
"alejandra",
"kube3d", "kube3d",
"kubie", "kubie",
"k9s", "k9s",
@ -21,7 +21,7 @@ packages = [
name = "fmt" name = "fmt"
help = "Check Nix formatting" help = "Check Nix formatting"
category = "checks" category = "checks"
command = "nixpkgs-fmt ${@} ." command = "alejandra ${@} ."
[[commands]] [[commands]]
name = "evalnix" name = "evalnix"

View file

@ -62,9 +62,7 @@
jobs = import ./jobs {inherit pkgs;}; jobs = import ./jobs {inherit pkgs;};
devShells.default = with pkgs; devShells.default = import ./devshell {inherit pkgs inputs;};
devshell.mkShell
{imports = [(devshell.importTOML ./devshell.toml)];};
packages = inputs.flake-utils.lib.flattenTree { packages = inputs.flake-utils.lib.flattenTree {
inherit (pkgs) kubernetes kubectl; inherit (pkgs) kubernetes kubectl;

View file

@ -72,7 +72,8 @@ with lib; let
config = definitions."${ref}".config or {}; config = definitions."${ref}".config or {};
}); });
submoduleWithMergeOf = ref: mergeKey: types.submodule ({name, ...}: let submoduleWithMergeOf = ref: mergeKey:
types.submodule ({name, ...}: let
convertName = name: convertName = name:
if definitions."${ref}".options.${mergeKey}.type == types.int if definitions."${ref}".options.${mergeKey}.type == types.int
then toInt name then toInt name