nixos-dotfiles/flake.nix

151 lines
3.2 KiB
Nix
Raw Permalink Normal View History

2022-08-07 15:46:46 +01:00
{
description = "My personal dotfiles";
inputs = {
2024-01-21 18:43:45 +00:00
nixpkgs = {
url = "nixpkgs/nixpkgs-unstable";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
chaotic-nyx = {
url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-02-13 14:04:39 +00:00
eww-systray = {
url = "github:ralismark/eww/tray-3";
inputs.nixpkgs.follows = "nixpkgs";
};
grub2-themes = {
url = "github:vinceliuice/grub2-themes";
inputs.nixpkgs.follows = "nixpkgs";
};
helix = {
url = "github:helix-editor/helix";
2024-01-21 18:43:45 +00:00
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:hyprwm/hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-02-13 14:04:39 +00:00
nix-index-database = {
url = "github:Mic92/nix-index-database";
2024-01-21 18:43:45 +00:00
inputs.nixpkgs.follows = "nixpkgs";
};
2024-02-13 14:04:39 +00:00
nur = {
url = "github:nix-community/NUR";
2024-01-21 18:43:45 +00:00
};
wezterm = {
url = "github:happenslol/wezterm/add-nix-flake?dir=nix";
inputs.nixpkgs.follows = "nixpkgs";
};
#--- non-flakes
fish-plugin-bobthefish = {
url = "github:oh-my-fish/theme-bobthefish";
flake = false;
};
fish-plugin-gruvbox-theme = {
url = "github:Jomik/fish-gruvbox";
flake = false;
};
gruvbox-kvantum = {
url = "github:thefallnn/Gruvbox-Kvantum";
flake = false;
};
gruvbox-plus-icon-pack = {
url = "github:SylEleuth/gruvbox-plus-icon-pack";
flake = false;
};
mygui-git = {
url = "github:mygui/MyGUI/dae9ac4be5a09e672bec509b1a8552b107c40214";
flake = false;
};
openmw-git = {
url = "gitlab:OpenMW/openmw";
flake = false;
};
2022-08-21 01:18:19 +01:00
};
2022-08-14 21:20:39 +01:00
2023-10-08 10:51:15 +01:00
outputs = {
self,
nixpkgs,
home-manager,
...
} @ inputs: let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config = {
allowUnfree = true;
allowUnsupportedSystem = true;
2023-10-18 17:33:03 +01:00
permittedInsecurePackages = [
];
2023-10-08 10:51:15 +01:00
};
2023-10-08 10:51:15 +01:00
overlays = [
self.overlays.default
];
};
2024-01-30 17:51:06 +00:00
#edit as you see fit
hostName = "terra";
userName = "manuel";
2024-02-13 14:04:39 +00:00
emailAddress = "varris@posteo.net";
2024-01-30 17:51:06 +00:00
flakeDir = "/home/${userName}/.dotfiles";
2024-02-13 14:04:39 +00:00
#-------------------
2023-10-08 10:51:15 +01:00
in {
2023-10-09 16:12:39 +01:00
formatter.${system} = nixpkgs.legacyPackages.${system}.alejandra;
2023-10-08 10:51:15 +01:00
overlays = import ./overlay.nix {inherit inputs;};
2024-01-30 17:51:06 +00:00
nixosConfigurations.${hostName} = nixpkgs.lib.nixosSystem {
2024-01-11 03:47:13 +00:00
inherit system;
inherit pkgs;
2024-01-30 17:51:06 +00:00
specialArgs = {
inherit inputs;
inherit hostName;
inherit userName;
};
2024-01-11 03:47:13 +00:00
modules = [
./system/configuration.nix
inputs.chaotic-nyx.nixosModules.default
2024-02-13 14:04:39 +00:00
inputs.grub2-themes.nixosModules.default
2024-01-11 03:47:13 +00:00
inputs.nur.nixosModules.nur
];
};
2024-01-30 17:51:06 +00:00
homeConfigurations.${userName} = home-manager.lib.homeManagerConfiguration {
2024-01-11 03:47:13 +00:00
inherit pkgs;
2024-01-30 17:51:06 +00:00
extraSpecialArgs = {
inherit inputs;
inherit userName;
inherit flakeDir;
2024-02-13 14:04:39 +00:00
inherit emailAddress;
2024-01-30 17:51:06 +00:00
};
2024-01-11 03:47:13 +00:00
modules = [
./user/home.nix
inputs.nix-index-database.hmModules.nix-index
inputs.nur.hmModules.nur
];
};
2023-10-08 10:51:15 +01:00
};
2022-08-07 15:46:46 +01:00
}