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 fenix.url = "github:nix-community/fenix/monthly";
18 fenix.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 imperm.inputs.nixpkgs.follows = "nixpkgs";
25 imperm.inputs.home-manager.follows = "hm";
26 nu_plugin_dbus.url = "github:Bwc9876/nu_plugin_dbus";
27 nu_plugin_dbus.inputs.nixpkgs.follows = "nixpkgs";
28 gh-grader-preview.url = "github:Bwc9876/gh-grader-preview";
29 gh-grader-preview.inputs.nixpkgs.follows = "nixpkgs";
30 bingus.url = "github:Bwc9876/bingus-bot";
31 bingus.inputs.nixpkgs.follows = "nixpkgs";
32 niri.url = "github:sodiboo/niri-flake";
33 niri.inputs.nixpkgs.follows = "nixpkgs";
34 musnix.url = "github:musnix/musnix";
35 musnix.inputs.nixpkgs.follows = "nixpkgs";
36
37 spoon.url = "git+https://codeberg.org/spoonbaker/mono";
38 spoon.inputs = {
39 nixpkgs.follows = "nixpkgs";
40 flakelight.follows = "flakelight";
41 home-manager.follows = "hm";
42 impermanence.follows = "imperm";
43 };
44 };
45
46 outputs = inputs @ {
47 self,
48 nixpkgs,
49 flakelight,
50 nix-index-db,
51 hm,
52 nixos-hardware,
53 lanzaboote,
54 wayland-mpris-idle-inhibit,
55 fenix,
56 catppuccin,
57 nixvim,
58 imperm,
59 nu_plugin_dbus,
60 bingus,
61 spoon,
62 gh-grader-preview,
63 niri,
64 musnix,
65 }:
66 flakelight ./. {
67 imports = [
68 spoon.flakelightModules.repl
69 spoon.flakelightModules.ubercheck
70 ];
71 inherit inputs;
72 formatters = pkgs: {
73 "*.nix" = "alejandra .";
74 "*.sh" = "shfmt -w .";
75 };
76
77 nixDir = ./.;
78 legacyPackages = pkgs: pkgs;
79 nixpkgs.config = {
80 allowUnfree = true;
81 };
82 };
83}