Flake for my NixOS devices
1{
2 description = "A very basic flake";
3
4 inputs = {
5 nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
6 flakelight.url = "github:nix-community/flakelight";
7 flakelight.inputs.nixpkgs.follows = "nixpkgs";
8 nix-index-db.url = "github:nix-community/nix-index-database";
9 nix-index-db.inputs.nixpkgs.follows = "nixpkgs";
10 hm.url = "github:nix-community/home-manager";
11 hm.inputs.nixpkgs.follows = "nixpkgs";
12 nixos-hardware.url = "github:NixOS/nixos-hardware";
13 lanzaboote.url = "github:nix-community/lanzaboote";
14 lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
15 gh-grader-preview.url = "github:Bwc9876/gh-grader-preview";
16 gh-grader-preview.inputs.nixpkgs.follows = "nixpkgs";
17 wayland-mpris-idle-inhibit.url = "github:Bwc9876/wayland-mpris-idle-inhibit";
18 wayland-mpris-idle-inhibit.inputs.nixpkgs.follows = "nixpkgs";
19 rust-overlay.url = "github:oxalica/rust-overlay";
20 rust-overlay.inputs.nixpkgs.follows = "nixpkgs";
21 catppuccin.url = "github:catppuccin/nix";
22 catppuccin.inputs.nixpkgs.follows = "nixpkgs";
23 nixvim.url = "github:nix-community/nixvim";
24 nixvim.inputs.nixpkgs.follows = "nixpkgs";
25 imperm.url = "github:nix-community/impermanence";
26 nu_plugin_dbus.url = "github:Bwc9876/nu_plugin_dbus";
27 nu_plugin_dbus.inputs.nixpkgs.follows = "nixpkgs";
28 bingus.url = "github:Bwc9876/bingus-bot";
29 bingus.inputs.nixpkgs.follows = "nixpkgs";
30 };
31
32 outputs = inputs @ {
33 self,
34 nixpkgs,
35 flakelight,
36 nix-index-db,
37 hm,
38 nixos-hardware,
39 lanzaboote,
40 gh-grader-preview,
41 wayland-mpris-idle-inhibit,
42 rust-overlay,
43 catppuccin,
44 nixvim,
45 imperm,
46 nu_plugin_dbus,
47 bingus,
48 }:
49 flakelight ./. {
50 inherit inputs;
51 formatters = pkgs: {
52 "*.nix" = "alejandra .";
53 "*.sh" = "shfmt -w .";
54 };
55 packages =
56 nixpkgs.lib.genAttrs ["gh-grader-preview" "wayland-mpris-idle-inhibit" "nu_plugin_dbus"]
57 (i: {pkgs}: inputs.${i}.packages.${pkgs.system}.default);
58 nixDir = ./.;
59 nixDirAliases = {
60 nixosConfigurations = ["systemConfigs"];
61 };
62 legacyPackages = pkgs: pkgs;
63 nixpkgs.config = {
64 allowUnfree = true;
65 };
66 };
67}