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