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 wayland-mpris-idle-inhibit.url = "github:Bwc9876/wayland-mpris-idle-inhibit";
16 wayland-mpris-idle-inhibit.inputs.nixpkgs.follows = "nixpkgs";
17 rust-overlay.url = "github:oxalica/rust-overlay";
18 rust-overlay.inputs.nixpkgs.follows = "nixpkgs";
19 catppuccin.url = "github:catppuccin/nix";
20 catppuccin.inputs.nixpkgs.follows = "nixpkgs";
21 nixvim.url = "github:nix-community/nixvim";
22 nixvim.inputs.nixpkgs.follows = "nixpkgs";
23 imperm.url = "github:nix-community/impermanence";
24 nu_plugin_dbus.url = "github:Bwc9876/nu_plugin_dbus";
25 nu_plugin_dbus.inputs.nixpkgs.follows = "nixpkgs";
26 bingus.url = "github:Bwc9876/bingus-bot";
27 bingus.inputs.nixpkgs.follows = "nixpkgs";
28
29 spoon.url = "git+https://codeberg.org/spoonbaker/mono?dir=nixos-config";
30 spoon.inputs = {
31 nixpkgs.follows = "nixpkgs";
32 flakelight.follows = "flakelight";
33 home-manager.follows = "hm";
34 impermanence.follows = "imperm";
35 nix-index-database.follows = "nix-index-db";
36 };
37 };
38
39 outputs = inputs @ {
40 self,
41 nixpkgs,
42 flakelight,
43 nix-index-db,
44 hm,
45 nixos-hardware,
46 lanzaboote,
47 wayland-mpris-idle-inhibit,
48 rust-overlay,
49 catppuccin,
50 nixvim,
51 imperm,
52 nu_plugin_dbus,
53 bingus,
54 spoon,
55 }:
56 flakelight ./. {
57 imports = [
58 spoon.flakelightModules.repl
59 spoon.flakelightModules.ubercheck
60 ];
61 inherit inputs;
62 formatters = pkgs: {
63 "*.nix" = "alejandra .";
64 "*.sh" = "shfmt -w .";
65 };
66
67 packages = nixpkgs.lib.genAttrs ["wayland-mpris-idle-inhibit" "nu_plugin_dbus"] (
68 i: {pkgs}: inputs.${i}.packages.${pkgs.system}.default
69 );
70 nixDir = ./.;
71 nixDirAliases = {
72 nixosConfigurations = ["systemConfigs"];
73 };
74 legacyPackages = pkgs: pkgs;
75 nixpkgs.config = {
76 allowUnfree = true;
77 };
78 };
79}