nixos-config/flake.nix

73 lines
2 KiB
Nix
Raw Normal View History

2023-05-08 04:17:40 +05:30
{
description = "No, I don't understand how this works, so please don't ask";
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/master";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
2023-05-11 08:02:06 +05:30
nix-doom-emacs.url = "github:nix-community/nix-doom-emacs";
2023-05-13 17:56:54 +05:30
stylix.url = "github:danth/stylix";
2023-05-21 06:28:54 +05:30
rust-overlay.url = "github:oxalica/rust-overlay";
2023-05-20 06:55:57 +05:30
eaf = {
url = "github:emacs-eaf/emacs-application-framework";
flake = false;
};
eaf-browser = {
url = "github:emacs-eaf/eaf-browser";
flake = false;
};
2023-05-08 04:17:40 +05:30
};
2023-05-21 06:28:54 +05:30
outputs = { self, nixpkgs, home-manager, nix-doom-emacs, stylix, eaf, eaf-browser, rust-overlay, ... }@inputs:
2023-05-08 04:17:40 +05:30
let
system = "x86_64-linux";
name = "emmet";
email = "librephoenix@protonmail.com";
dotfilesDir = "~/dotfiles";
2023-05-17 06:33:58 +05:30
theme = "dracula";
2023-05-08 04:17:40 +05:30
pkgs = import nixpkgs {
inherit system;
config = { allowUnfree = true; };
2023-05-21 06:28:54 +05:30
overlays = [ rust-overlay.overlays.default ];
2023-05-08 04:17:40 +05:30
};
lib = nixpkgs.lib;
in {
homeConfigurations = {
emmet = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./user/home.nix
2023-05-11 08:02:06 +05:30
nix-doom-emacs.hmModule
2023-05-13 17:56:54 +05:30
stylix.homeManagerModules.stylix
];
extraSpecialArgs = {
myName = name;
2023-05-15 07:02:49 +05:30
myHomeDir = "/home/"+name;
myEmail = email;
myDotfilesDir = dotfilesDir;
myNixConfigurationFilePath = dotfilesDir+"/system/configuration.nix";
myHomeManagerFilePath = dotfilesDir+"/user/home.nix";
myTheme = theme;
2023-05-20 06:55:57 +05:30
inherit (inputs) eaf;
inherit (inputs) eaf-browser;
};
};
};
2023-05-08 04:17:40 +05:30
nixosConfigurations = {
snowfire = lib.nixosSystem {
inherit system;
modules = [
./system/configuration.nix
# stylix.nixosModules.stylix # complains that home-manager is not defined
2023-05-08 04:17:40 +05:30
];
# specialArgs = {
# myTheme = theme;
# };
2023-05-08 04:17:40 +05:30
};
};
};
}