Adds dev shell in flake and removes old shell.nix
Some checks are pending
Build NixOS ISOs (x86 only) / build-iso (x86, desktop) (push) Waiting to run
Build NixOS ISOs (x86 only) / build-iso (x86, server) (push) Waiting to run
Build NixOS ISOs (x86 only) / create-release (push) Blocked by required conditions

This commit is contained in:
Chris Toph 2025-06-16 23:52:40 -04:00
parent dc35d4335f
commit dc34a785f7
2 changed files with 66 additions and 84 deletions

View file

@ -166,5 +166,71 @@
in
customPackages
);
## SHELL ##
devShells = forAllSystems (
system:
let
pkgs = import nixpkgs {
inherit system;
overlays = [ self.overlays.default ];
};
in
{
default = pkgs.mkShell {
nativeBuildInputs =
with pkgs;
[
# Basic nix tools
nix
nixos-rebuild
home-manager
nh
# Git and git-crypt
git
git-crypt
gnupg
gpg-tui
# Shells
fish
bash
# Config tools
dconf2nix
# Network tools
curl
wget
# System tools
coreutils
findutils
gzip
zstd
# Text editors
micro
# microsoft-edit
# Diagnostics
inxi
pciutils
usbutils
lshw
]
++ [
inputs.yay.packages.${system}.default # My yay.nix tool
];
NIX_CONFIG = "experimental-features = nix-command flakes";
shellHook = ''
clear
echo "Development shell initialized"
echo -e "Run '\033[1;34myay rebuild\033[0m' to rebuild your system"
# Set FLAKE to the current working directory
export FLAKE="$PWD"
echo -e "FLAKE environment variable is set to: \033[1;34m$FLAKE\033[0m"
'';
};
}
);
};
}

View file

@ -1,84 +0,0 @@
# This is a Nix flake shell that provides a minimal environment for new install or system recovery
{
pkgs ?
# If pkgs is not defined, instantiate nixpkgs from locked commit
let
lock = (builtins.fromJSON (builtins.readFile ./flake.lock)).nodes.nixpkgs.locked;
nixpkgs = fetchTarball {
url = "https://github.com/nixos/nixpkgs/archive/${lock.rev}.tar.gz";
sha256 = lock.narHash;
};
# Import overlays from the flake's overlay structure
overlays = [
(import ./overlays { inputs = { }; }).default
];
in
import nixpkgs { inherit overlays; },
inputs ? null,
...
}:
let
# Import yay directly from its flake, incase overlay or config flake fucks up
yay = builtins.getFlake "git+https://git.ryot.foo/toph/yay.nix.git";
inherit (pkgs) lib;
in
{
default = pkgs.mkShell {
nativeBuildInputs =
builtins.attrValues {
inherit (pkgs)
# Basic nix tools
nix
nixos-rebuild
home-manager
nh
# Git and git-crypt
git
git-crypt
gnupg
gpg-tui
# Shells
fish
bash
# Config tools
dconf2nix
# Network tools
curl
wget
# System tools
coreutils
findutils
gzip
zstd
# Text editors
micro
nano
# Diagnostics
inxi
pciutils
usbutils
lshw
;
}
++ [
yay.packages.${pkgs.system}.default
];
# Overwrite FLAKE to current path, for yay and nh
FLAKE = toString ./.;
shellHook = ''
clear
echo "Minimal shell initialized with flake overlays"
echo -e "Run '\033[1;34myay rebuild\033[0m' to rebuild your system if needed"
echo -e "FLAKE environment variable is set to: \033[1;34m$FLAKE\033[0m"
'';
};
}