home-manager/flake.nix

82 lines
2.2 KiB
Nix
Raw Normal View History

2023-07-23 03:04:32 +00:00
{
description = "Home Manager configuration of kristian";
inputs = {
2023-07-31 18:08:25 +00:00
nixpkgs.url = github:nixos/nixpkgs/nixos-23.05;
nixpkgs-unstable.url = github:nixos/nixpkgs/nixos-unstable;
nixpkgs-master.url = github:nixos/nixpkgs/master;
2023-07-23 03:04:32 +00:00
home-manager = {
2023-07-31 18:08:25 +00:00
url = github:nix-community/home-manager/release-23.05;
2023-07-23 03:04:32 +00:00
inputs.nixpkgs.follows = "nixpkgs";
};
# Hyprland Window Manager
2023-07-31 18:08:25 +00:00
hyprland.url = github:hyprwm/Hyprland;
2023-07-23 03:04:32 +00:00
# Nix User Repository
2023-07-31 18:08:25 +00:00
nur.url = github:nix-community/NUR;
2023-07-23 03:04:32 +00:00
# Zig
2023-07-31 18:08:25 +00:00
zig.url = github:mitchellh/zig-overlay;
2023-07-31 18:47:35 +00:00
# Wallpaper
wallpaper.url = github:lunik1/nix-wallpaper;
2023-07-23 03:04:32 +00:00
};
outputs = {
self,
nixpkgs,
2023-07-31 18:08:25 +00:00
nixpkgs-unstable,
nixpkgs-master,
2023-07-23 03:04:32 +00:00
home-manager,
hyprland,
nur,
zig,
2023-07-31 18:47:35 +00:00
wallpaper,
2023-07-23 03:04:32 +00:00
} @ inputs: let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in {
formatter.${system} = nixpkgs.legacyPackages.${system}.alejandra;
2023-07-31 18:08:25 +00:00
2023-07-23 03:04:32 +00:00
homeConfigurations = {
kristian = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
2023-07-31 18:08:25 +00:00
./home
2023-07-31 18:47:35 +00:00
{
_module.args.wallpaper = wallpaper.packages.${system}.default;
}
2023-07-31 18:08:25 +00:00
hyprland.homeManagerModules.default
nur.nixosModules.nur
2023-07-23 03:04:32 +00:00
{
nixpkgs.overlays = [
hyprland.overlays.default # Adds waybar-hyprland
2023-07-31 18:08:25 +00:00
zig.overlays.default # Adds zig
( # https://github.com/nix-community/home-manager/issues/1538#issuecomment-706627100
final: prev: {
unstable = import inputs.nixpkgs-unstable {
system = final.system;
config = {allowUnfreePredicate = _: true;};
};
#master = import inputs.nixpkgs-master {
# system = final.system;
# config = {allowUnfreePredicate = (_: true);};
#};
}
)
( # Overrides davinci-resolve with the unstable version because of https://github.com/NixOS/nixpkgs/pull/246074
final: prev: {davinci-resolve = final.unstable.davinci-resolve;}
)
2023-07-23 03:04:32 +00:00
];
}
];
};
};
};
}