106 lines
3.4 KiB
Nix
106 lines
3.4 KiB
Nix
{
|
|
description = "NixOS flake";
|
|
|
|
nixConfig = {
|
|
extra-substituters = [
|
|
"https://claude-code.cachix.org"
|
|
"https://attic.xuyh0120.win/lantian"
|
|
];
|
|
extra-trusted-public-keys = [
|
|
"claude-code.cachix.org-1:YeXf2aNu7UTX8Vwrze0za1WEDS+4DuI2kVeWEE4fsRk="
|
|
"lantian:EeAUQ+W+6r7EtwnmYjeVwx5kOGEBpjlBfPlzGlTNvHc="
|
|
];
|
|
};
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
nixpkgs-linuxeol.url = "github:NixOS/nixpkgs/162f04bf3dd222187388bc990a8678170d594419";
|
|
nixos-hardware = {
|
|
url = "github:NixOS/nixos-hardware/master";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/master";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest";
|
|
plasma-manager = {
|
|
url = "github:nix-community/plasma-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.home-manager.follows = "home-manager";
|
|
};
|
|
lanzaboote = {
|
|
url = "github:nix-community/lanzaboote/v1.1.0";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
claude-code = {
|
|
url = "github:sadjow/claude-code-nix/main";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nix-sweep = {
|
|
url = "github:jzbor/nix-sweep/main";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
peerix = {
|
|
url = "git+ssh://git@gitea.lumpiasty.xyz/Lumpiasty/peerix.git"; # fork of github:sophronesis/peerix
|
|
};
|
|
acer-wmi-ext = {
|
|
url = "github:Lumpiasty/acer-wmi-ext/main";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nix-skills = {
|
|
url = "github:sudosubin/nix-skills";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel";
|
|
bun2nix = {
|
|
url = "github:nix-community/bun2nix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nix-darwin = {
|
|
url = "github:nix-darwin/nix-darwin/master";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
homebrew = {
|
|
url = "github:koalalorenzo/home-manager-brew";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = { self, nixos-hardware, nix-darwin, ... }@inputs:
|
|
{
|
|
nixosConfigurations =
|
|
let
|
|
mkNixosSystem = import lib/mkNixosSystem.nix inputs;
|
|
in
|
|
with nixos-hardware.nixosModules; {
|
|
x260 = mkNixosSystem lenovo-thinkpad-x260 hosts/x260.nix;
|
|
acer = mkNixosSystem {} hosts/acer.nix;
|
|
gaming-pc = mkNixosSystem {} hosts/gaming-pc.nix;
|
|
};
|
|
darwinConfigurations."MacBook-Pro-Macbook" = nix-darwin.lib.darwinSystem {
|
|
modules = [
|
|
((import ./hosts/macbook.nix) self)
|
|
inputs.home-manager.darwinModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.verbose = true;
|
|
home-manager.users.macbookpro = { ... }: {
|
|
imports = [
|
|
./home-modules
|
|
./users/user/home.nix
|
|
inputs.homebrew.homeManagerModules.default
|
|
];
|
|
lumpiastyHome.macos = true;
|
|
};
|
|
nixpkgs.overlays = [
|
|
inputs.claude-code.overlays.default
|
|
inputs.nix-skills.overlays.default
|
|
] ++ (import ./overlays/pkgs.nix { bun2nix = inputs.bun2nix; });
|
|
}
|
|
];
|
|
};
|
|
};
|
|
}
|