rix101/flake.nix

201 lines
4.6 KiB
Nix
Raw Normal View History

{
description = "reo101's NixOS, nix-on-droid and nix-darwin configs";
outputs = inputs:
inputs.flake-parts.lib.mkFlake { inherit inputs; } ({ withSystem, flake-parts-lib, ... }: {
systems = [
"aarch64-linux"
"i686-linux"
"x86_64-linux"
"aarch64-darwin"
"x86_64-darwin"
];
imports = [
./modules/flake/lib.nix
./modules/flake/pkgs
./modules/flake/modules
./modules/flake/configurations
./modules/flake/agenix
./modules/flake/deploy
./modules/flake/topology
./modules/flake/packages
];
perSystem = { lib, pkgs, system, ... }: {
# Apps (`nix run`)
apps = import ./apps { inherit pkgs; };
# Dev Shells (`nix develop`)
devShells = import ./shells {
inherit inputs;
# NOTE: for `nixVersions.monitored`
pkgs = pkgs.extend inputs.self.overlays.modifications;
};
# Formatter (`nix fmt`)
formatter = pkgs.nixpkgs-fmt;
};
flake = {
inherit (inputs) self;
# Automatic modules, see `./modules/flake/modules.nix`
autoModules.enableAll = true;
# Automatic configurations, see `./modules/flake/configurations.nix`
autoConfigurations.enableAll = true;
# Automatic packages, see `./modules/flake/packages/default.nix`
autoPackages.enable = true;
# Templates
templates = import ./templates {
inherit inputs;
};
# Overlays
overlays = import ./overlays {
inherit inputs;
};
};
});
inputs = {
# Nixpkgs
nixpkgs = {
url = "github:nixos/nixpkgs/nixos-unstable";
};
flake-parts = {
url = "github:hercules-ci/flake-parts";
inputs.nixpkgs-lib.follows = "nixpkgs";
};
dream2nix = {
url = "github:nix-community/dream2nix";
inputs.nixpkgs.follows = "nixpkgs";
};
# Nix on Droid
nix-on-droid = {
url = "github:t184256/nix-on-droid";
# url = "github:t184256/nix-on-droid/master";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
# Nix Darwin
nix-darwin = {
url = "github:lnl7/nix-darwin/master";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-11-17 14:58:59 +01:00
mac-app-util = {
url = "github:hraban/mac-app-util";
};
# Home Manager
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
flake-compat = {
url = "github:inclyc/flake-compat";
flake = false;
};
impermanence = {
url = "github:nix-community/impermanence";
};
nix-topology = {
url = "github:oddlama/nix-topology";
inputs.nixpkgs.follows = "nixpkgs";
};
lib-net = {
url = "https://gist.github.com/duairc/5c9bb3c922e5d501a1edb9e7b3b845ba/archive/3885f7cd9ed0a746a9d675da6f265d41e9fd6704.tar.gz";
flake = false;
};
nix-monitored = {
url = "github:ners/nix-monitored";
inputs.nixpkgs.follows = "nixpkgs";
};
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
jovian-nixos = {
url = "github:Jovian-Experiments/Jovian-NixOS";
inputs.nixpkgs.follows = "nixpkgs";
};
deploy-rs = {
url = "github:serokell/deploy-rs";
inputs.nixpkgs.follows = "nixpkgs";
};
agenix = {
url = "github:ryantm/agenix";
inputs = {
nixpkgs.follows = "nixpkgs";
darwin.follows = "nix-darwin";
home-manager.follows = "home-manager";
};
};
2023-12-26 00:14:25 +01:00
ragenix = {
url = "github:yaxitech/ragenix";
inputs.agenix.follows = "agenix";
};
agenix-rekey = {
url = "github:oddlama/agenix-rekey";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-03-23 07:17:20 +01:00
# Nix User Repository
nur = {
url = "github:nix-community/NUR";
};
spicetify-nix = {
url = "github:the-argus/spicetify-nix";
};
hardware = {
url = "github:nixos/nixos-hardware";
};
nix-colors = {
url = "github:misterio77/nix-colors";
};
neovim-nightly-overlay = {
url = "github:nix-community/neovim-nightly-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
zig-overlay = {
url = "github:mitchellh/zig-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
2022-11-21 14:36:23 +01:00
zls-overlay = {
url = "github:zigtools/zls";
inputs.nixpkgs.follows = "nixpkgs";
2023-07-13 13:33:01 +02:00
inputs.zig-overlay.follows = "zig-overlay";
2022-11-21 14:36:23 +01:00
};
wired = {
url = "github:Toqozz/wired-notify";
inputs.nixpkgs.follows = "nixpkgs";
};
};
}