dotfiles/flake.nix

52 lines
1.4 KiB
Nix
Raw Normal View History

2023-09-24 12:07:57 +00:00
{
description = "Home Manager configuration";
inputs = {
2023-10-28 12:17:40 +00:00
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
2023-10-28 11:25:31 +00:00
flake-utils.url = "github:numtide/flake-utils";
2024-11-02 07:34:45 +00:00
devbox.url = "github:jetify-com/devbox/latest";
2024-12-07 13:30:19 +00:00
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
2023-09-24 12:07:57 +00:00
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
};
2025-01-03 20:28:41 +00:00
outputs =
{
nixpkgs,
home-manager,
flake-utils,
...
}@inputs:
flake-utils.lib.eachDefaultSystem (
system:
2023-10-28 11:25:31 +00:00
let
user = "nikos"; # change your user here
dotfilesHome = "/home/${user}/.dotfiles"; # specify your dotfiles path
pkgs = nixpkgs.legacyPackages.${system};
2024-12-07 13:30:19 +00:00
overlays = [
(self: super: { devbox = inputs.devbox.packages.${system}.default; })
inputs.neovim-nightly-overlay.overlays.default
];
2023-10-28 11:25:31 +00:00
in
{
2025-01-03 20:28:41 +00:00
formatter = pkgs.nixfmt-rfc-style;
2023-10-28 11:25:31 +00:00
packages.homeConfigurations.${user} = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
2023-09-24 12:07:57 +00:00
2023-10-28 11:25:31 +00:00
# Specify your home configuration modules here, for example,
# the path to your home.nix.
modules = [
2024-12-07 13:30:19 +00:00
{ nixpkgs.overlays = overlays; }
2023-10-28 11:25:31 +00:00
./home.nix
];
2023-09-26 15:12:40 +00:00
2025-01-03 20:28:41 +00:00
extraSpecialArgs = {
extra = { inherit user dotfilesHome; };
};
2023-10-28 11:25:31 +00:00
};
2025-01-03 20:28:41 +00:00
}
);
2023-09-24 12:07:57 +00:00
}