flake/flake.nix

76 lines
2.3 KiB
Nix

{
description = "System Configuration @ cswimr 2024";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
catppuccin.url = "github:catppuccin/nix";
compose2nix = {
url = "github:aksiksi/compose2nix";
inputs.nixpkgs.follows = "nixpkgs";
};
zen-browser.url = "github:0xc000022070/zen-browser-flake";
};
outputs = { nixpkgs, home-manager, catppuccin, ... }@inputs:
let system = "x86_64-linux";
in {
nixosConfigurations = {
eclipse = nixpkgs.lib.nixosSystem {
system = system;
modules = [
# imports
./hosts/eclipse.nix
./nixos/configuration.nix
./nixos/environment.nix
./nixos/git.nix
./nixos/gui-pkgs.nix
./nixos/nvidia.nix
./nixos/nvim.nix
./nixos/pkg.nix
./nixos/sudo.nix
./nixos/tailscale.nix
./nixos/zsh.nix
# flake packages
{
environment.systemPackages = with inputs;
[
compose2nix.packages.${system}.default
zen-browser.packages.${system}.specific
];
}
# Catppuccin theme
catppuccin.nixosModules.catppuccin
{
catppuccin.enable = true;
catppuccin.flavor = "mocha";
catppuccin.accent = "blue";
boot.loader.grub.catppuccin.enable = true;
services.displayManager.sddm.catppuccin.enable = false;
}
# Home Manager
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.cswimr = {
imports = [
./home-manager/home.nix
catppuccin.homeManagerModules.catppuccin
{
catppuccin.enable = true;
catppuccin.flavor = "mocha";
catppuccin.accent = "blue";
}
];
};
}
];
};
};
};
}