From 893e09278bdacbc486866759987367316a3577ef Mon Sep 17 00:00:00 2001 From: Timothy DeHerrera Date: Mon, 28 Dec 2020 23:12:27 -0700 Subject: [PATCH] shell: switch to using mkDevShell --- flake.lock | 16 ++++++++++++++++ flake.nix | 8 ++++---- profiles/develop/zsh/default.nix | 1 + shell.nix | 30 ++++++++++++++++-------------- 4 files changed, 37 insertions(+), 18 deletions(-) diff --git a/flake.lock b/flake.lock index a456c69..609c2d3 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,20 @@ { "nodes": { + "devshell": { + "locked": { + "lastModified": 1607956014, + "narHash": "sha256-kcmh1ZO56GFYStDeM2VngJSvx/e8aKhFSYqLwfiq+Es=", + "owner": "numtide", + "repo": "devshell", + "rev": "17f46732ce299daa2977be2978f60d258c2d1b41", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, "flake-utils": { "locked": { "lastModified": 1605370193, @@ -93,6 +108,7 @@ }, "root": { "inputs": { + "devshell": "devshell", "flake-utils": "flake-utils", "home": "home", "master": "master", diff --git a/flake.nix b/flake.nix index e10ad29..91b990c 100644 --- a/flake.nix +++ b/flake.nix @@ -7,9 +7,10 @@ nixos.url = "nixpkgs/release-20.09"; home.url = "github:nix-community/home-manager/release-20.09"; flake-utils.url = "github:numtide/flake-utils"; + devshell.url = "github:numtide/devshell"; }; - outputs = inputs@{ self, home, nixos, master, flake-utils, nur }: + outputs = inputs@{ self, home, nixos, master, flake-utils, nur, devshell }: let inherit (builtins) attrNames attrValues readDir elem pathExists filter; inherit (flake-utils.lib) eachDefaultSystem mkApp; @@ -23,7 +24,7 @@ system = "x86_64-linux"; - externOverlays = [ nur.overlay ]; + externOverlays = [ nur.overlay devshell.overlay ]; externModules = [ home.nixosModules.home-manager ]; pkgset = @@ -57,7 +58,7 @@ pkgs' = pkgImport { pkgs = master; system = system'; - overlays = [ ]; + overlays = [ devshell.overlay ]; }; packages' = genPackages { @@ -79,7 +80,6 @@ { devShell = import ./shell.nix { pkgs = pkgs'; - nixpkgs = nixos; }; apps = diff --git a/profiles/develop/zsh/default.nix b/profiles/develop/zsh/default.nix index 4493b60..7491dcd 100644 --- a/profiles/develop/zsh/default.nix +++ b/profiles/develop/zsh/default.nix @@ -46,6 +46,7 @@ in systemPackages = with pkgs; [ bat bzip2 + devshell exa gitAndTools.hub gzip diff --git a/shell.nix b/shell.nix index dadb9e7..27bb920 100644 --- a/shell.nix +++ b/shell.nix @@ -1,7 +1,11 @@ let nixpkgs = import ./compat/nixpkgs.nix; + fetch = import ./compat/fetch.nix; + + devshell' = fetch "devshell"; + pkgs' = import devshell' { inherit nixpkgs; }; in -{ pkgs ? import nixpkgs { }, nixpkgs ? nixpkgs' }: +{ pkgs ? pkgs', ... }: let configs = "${toString ./.}#nixosConfigurations"; build = "config.system.build"; @@ -22,14 +26,20 @@ let sudo nixos-rebuild --flake ".#$1" $@ fi ''; + + nix = pkgs.writeShellScriptBin "nix" '' + ${pkgs.nixFlakes}/bin/nix --option experimental-features "nix-command flakes ca-references" "$@" + ''; in -pkgs.mkShell { +pkgs.mkDevShell { name = "nixflk"; - nativeBuildInputs = with pkgs; with installPkgs; [ + + packages = with pkgs; with installPkgs; [ git git-crypt flk - nix-zsh-completions + nix + nixpkgs-fmt python38Packages.grip nixos-install nixos-generate-config @@ -37,14 +47,6 @@ pkgs.mkShell { nixos-rebuild ]; - shellHook = '' - mkdir -p secrets - if ! nix flake show &> /dev/null; then - PATH=${ - pkgs.writeShellScriptBin "nix" '' - ${pkgs.nixFlakes}/bin/nix --option experimental-features "nix-command flakes ca-references" "$@" - '' - }/bin:$PATH - fi - ''; + env = { }; + }