System/flake.nix

73 lines
2 KiB
Nix
Raw Normal View History

2024-11-26 08:01:03 +00:00
{
description = "Description for the project";
inputs = {
flake-parts.url = "github:hercules-ci/flake-parts";
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
2024-11-27 23:59:57 +00:00
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
2024-11-26 08:01:03 +00:00
nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
2024-11-26 09:30:55 +00:00
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-11-28 02:25:07 +00:00
home-manager = {
url = "github:nix-community/home-manager/release-24.11";
inputs.nixpkgs.follows = "nixpkgs";
};
devshell.url = "github:numtide/devshell";
2025-01-09 01:33:11 +00:00
nixos-hardware = {
url = "github:NixOS/nixos-hardware/master";
};
2024-11-26 08:01:03 +00:00
};
outputs =
2025-01-09 13:49:22 +00:00
inputs@{ flake-parts, self, ... }:
2024-11-26 08:01:03 +00:00
flake-parts.lib.mkFlake { inherit inputs; } {
imports = [
inputs.devshell.flakeModule
2024-11-26 08:01:03 +00:00
./nixos/machines/wsl/configuration.nix
2025-01-09 01:47:52 +00:00
./nixos/machines/installer/configuration.nix
2025-01-09 13:49:22 +00:00
./nixos/machines/crash/machine.nix
2024-11-28 02:25:07 +00:00
./home-manager/machines/wsl/home.nix
2025-01-09 13:49:22 +00:00
./home-manager/machines/crash/home.nix
./devshells/rust.nix
2024-11-30 09:39:53 +00:00
./devshells/idris2.nix
2024-12-18 07:10:43 +00:00
./devshells/raku.nix
2024-11-26 08:01:03 +00:00
];
2025-01-09 13:49:22 +00:00
config = {
systems = [
"x86_64-linux"
"aarch64-linux"
"aarch64-darwin"
"x86_64-darwin"
];
perSystem =
{
config,
self',
inputs',
pkgs,
system,
...
}:
{
# Per-system attributes can be defined here. The self' and inputs'
# module parameters provide easy access to attributes of the same
# system.
# Equivalent to inputs'.nixpkgs.legacyPackages.hello;
packages.default = pkgs.hello;
};
};
options = with inputs.nixpkgs.lib; {
flake = flake-parts.lib.mkSubmoduleOptions {
homeConfigurations = mkOption {
type = types.lazyAttrsOf types.raw;
default = { };
};
2024-11-26 08:01:03 +00:00
};
2025-01-09 13:49:22 +00:00
};
2024-11-26 08:01:03 +00:00
};
}