nixconfig/flake.nix
2024-04-17 00:25:54 +02:00

118 lines
2.8 KiB
Nix
Executable File

{
description = "SoraFlake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
hardware.url = "github:nixos/nixos-hardware";
nur.url = "github:nix-community/nur";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
darwin = {
url = "github:lnl7/nix-darwin/master";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
inputs.nixpkgs-stable.follows = "nixpkgs";
};
nix-colors.url = "github:misterio77/nix-colors";
};
outputs = inputs:
let
gen = import ./generator.nix { inherit inputs; };
sys = builtins.attrNames
# (builtins.filterSource (path: type: type == "directory")
(builtins.readDir ./systems); # );
gensys = builtins.listToAttrs
(builtins.map (x: gen.generate { syspath = x; }) sys);
in {
devShells = import ./shells { inherit inputs; };
inherit gensys;
# nixosConfigurations = {
# valinor = gen.generate {
# type = "nixos";
# system = "";
# host = "valinor";
# };
# iriy = gen.generate {
# type = "nixos";
# system = "x86_64-linux";
# host = "iriy";
# };
# efir = gen.generate {
# type = "nixos";
# system = "x86_64-linux";
# host = "efir";
# };
# avalon = gen.generate {
# type = "nixos";
# system = "x86_64-linux";
# host = "avalon";
# };
# ci = gen.generate {
# type = "nixos";
# system = "x86_64-linux";
# host = "ci";
# };
# sandbox = gen.generate {
# type = "nixos";
# system = "x86_64-linux";
# host = "sandbox";
# };
# };
# darwinConfigurations = {
# asgard = gen.generate {
# type = "macos";
# system = "x86_64-darwin";
# host = "asgard";
# };
# };
# homeConfigurations = {
# yomi = gen.generate {
# type = "home";
# system = "arm-64";
# host = "example";
# };
# example = gen.generate {
# type = "home";
# system = "-"; # supports any
# host = "example";
# };
# };
};
# ===== Unsupported/NotImplemented ======
# menel - PI/ARM64
# ilduma - PI/ARM64
# daimoth - PI/ARM64
# gimle - ....
# ===== Unused ======
#
# naraka - ?
# diyu - ?
# tirnanog - ?
# valhalla - ?
# arcadia - ?
# elysium - ?
# empyrean - ?
# duat - ?
# sheol - ?
# adlivun - ?
# araf - ?
# aman/araman - ?
}