Files
nixos-public/flake.nix
2026-04-09 18:34:41 -07:00

77 lines
1.8 KiB
Nix

{
# Inputs
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix.url = "github:Mic92/sops-nix";
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
vicinae.url = "github:vicinaehq/vicinae";
};
# Outputs
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, sops-nix, vicinae, spicetify-nix, ... } @ inputs:
let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
};
pkgsUnstable = import nixpkgs-unstable {
inherit system;
config.allowUnfree = true;
};
in {
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {
inherit pkgsUnstable inputs;
};
modules = [
# --- System Modules ---
./configuration.nix
./modules/auto-push.nix
./modules/jetbrains-unstable.nix
./modules/spotify.nix
# --- External Modules ---
home-manager.nixosModules.home-manager
sops-nix.nixosModules.sops
spicetify-nix.nixosModules.default
# --- Inline Configuration ---
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.system32.imports = [
./home.nix
vicinae.homeManagerModules.default
];
# JetBrains configuration
programs.jetbrainsUnstable = {
enable = true;
ides = [
"idea-ultimate"
"pycharm-professional"
"clion"
"datagrip"
"webstorm"
];
};
}
];
};
};
}