snowflake/flake.nix

96 lines
2.7 KiB
Nix
Raw Normal View History

2022-12-06 01:24:54 -05:00
{
2023-03-06 05:35:45 -05:00
description = "snowflake";
2023-04-23 17:45:37 -04:00
2022-12-06 01:24:54 -05:00
inputs = {
2024-01-17 13:34:21 -05:00
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
2023-10-29 05:31:21 -04:00
hyprland.url = "github:hyprwm/Hyprland";
2023-11-15 02:00:24 -05:00
ags.url = "github:Aylur/ags";
nix-gaming.url = "github:fufexan/nix-gaming";
2024-01-04 14:41:13 -05:00
attic.url = "github:zhaofengli/attic";
2024-01-07 17:51:00 -05:00
nur.url = "github:nix-community/NUR";
2024-01-17 13:34:21 -05:00
yazi.url = "github:sxyazi/yazi";
2024-01-22 19:15:34 -05:00
helix.url = "github:helix-editor/helix";
pre-commit-hooks.url = "github:cachix/pre-commit-hooks.nix";
2024-02-08 11:43:25 -05:00
wezterm.url = "github:notohh/wezterm?dir=nix&ref=nix-add-overlay";
2024-02-26 15:01:17 -05:00
hypridle.url = "github:hyprwm/hypridle";
2024-03-07 03:55:11 -05:00
hyprlock.url = "github:hyprwm/hyprlock";
2024-02-26 15:01:17 -05:00
hyprpicker.url = "github:hyprwm/hyprpicker";
2024-03-10 07:50:53 -04:00
hyprcursor.url = "github:hyprwm/hyprcursor";
2024-02-26 15:01:17 -05:00
xdg-portal-hyprland.url = "github:hyprwm/xdg-desktop-portal-hyprland";
2024-03-31 19:00:19 -04:00
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
2023-11-15 02:00:24 -05:00
hyprland-plugins = {
url = "github:hyprwm/hyprland-plugins";
inputs.hyprland.follows = "hyprland";
};
2023-04-26 19:42:28 -04:00
deploy-rs = {
url = "github:serokell/deploy-rs";
2023-05-16 21:10:57 -04:00
inputs.nixpkgs.follows = "nixpkgs";
2023-04-26 19:42:28 -04:00
};
sops-nix = {
url = "github:Mic92/sops-nix";
2023-05-16 21:10:57 -04:00
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-09-24 13:39:33 -04:00
nix-index-database = {
url = "github:Mic92/nix-index-database";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-09-24 17:17:33 -04:00
nh = {
url = "github:viperML/nh";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-11-15 02:00:24 -05:00
anyrun = {
url = "github:Kirottu/anyrun";
inputs.nixpkgs.follows = "nixpkgs";
};
2022-12-06 01:24:54 -05:00
};
outputs = {
self,
nixpkgs,
pre-commit-hooks,
...
} @ inputs: let
2023-04-23 17:45:37 -04:00
system = "x86_64-linux";
2023-04-23 22:22:16 -04:00
pkgs = import nixpkgs {
inherit system;
};
2023-04-23 17:45:37 -04:00
in {
checks = {
pre-commit-check = pre-commit-hooks.lib.${system}.run {
src = ./.;
hooks = {
stylua.enable = true;
eslint.enable = true;
statix.enable = true;
alejandra.enable = true;
deadnix = {
enable = true;
excludes = ["overlays.nix"];
};
2024-02-01 17:49:02 -05:00
prettier = {
enable = true;
files = "\\.(js|ts|md|json)$";
2024-02-01 17:49:02 -05:00
};
};
};
};
2023-04-23 22:22:16 -04:00
devShells.${system}.default = pkgs.mkShell {
name = "snowflake";
inherit (self.checks.pre-commit-check) shellHook;
2023-04-23 22:22:16 -04:00
packages = with pkgs; [
git
2023-05-15 00:14:30 -04:00
sops
alejandra
2023-06-14 06:10:12 -04:00
yaml-language-server
2023-11-15 02:00:24 -05:00
lua-language-server
2023-04-23 22:22:16 -04:00
];
};
formatter.${system} = pkgs.alejandra;
deploy = import ./hosts/deploy.nix inputs;
nixosConfigurations = import ./hosts inputs;
2023-04-23 17:45:37 -04:00
};
2022-12-06 01:24:54 -05:00
}