my over complex system configurations
dotfiles.isabelroses.com/
nixos
nix
flake
dotfiles
linux
1{
2 description = "Isabel's dotfiles";
3
4 outputs =
5 inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { imports = [ ./modules/flake ]; };
6
7 inputs = {
8 # our main package supplier
9 #
10 # you may also notice that I don't use a `github:` url for nixpkgs this is
11 # beacuse we can save 15mb of data by using the channel tarball this is not
12 # a major saving but it is nice to have
13 # https://deer.social/profile/did:plc:mojgntlezho4qt7uvcfkdndg/post/3loogwsoqok2w
14 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz";
15
16 # improved support for darwin
17 darwin = {
18 type = "github";
19 owner = "isabelroses";
20 repo = "nix-darwin";
21 ref = "darwin-rebuild";
22 inputs.nixpkgs.follows = "nixpkgs";
23 };
24
25 # improved support for wsl
26 nixos-wsl = {
27 type = "github";
28 owner = "nix-community";
29 repo = "NixOS-WSL";
30
31 inputs = {
32 nixpkgs.follows = "nixpkgs";
33 flake-compat.follows = "";
34 };
35 };
36
37 # manage userspace with nix
38 home-manager = {
39 type = "github";
40 owner = "nix-community";
41 repo = "home-manager";
42 inputs.nixpkgs.follows = "nixpkgs";
43 };
44
45 ### Flake management
46 # bring all the mess together with flake-parts
47 flake-parts = {
48 type = "github";
49 owner = "hercules-ci";
50 repo = "flake-parts";
51 inputs.nixpkgs-lib.follows = "nixpkgs";
52 };
53
54 # easily manage our hosts
55 easy-hosts = {
56 type = "github";
57 owner = "tgirlcloud";
58 repo = "easy-hosts";
59
60 # url = "git+file:/Users/isabel/dev/easy-hosts";
61 };
62
63 ### Security stuff
64 # secure-boot on nixos
65 lanzaboote = {
66 type = "github";
67 owner = "nix-community";
68 repo = "lanzaboote";
69 inputs.nixpkgs.follows = "nixpkgs";
70 };
71
72 # Secrets, shhh
73 sops = {
74 type = "github";
75 owner = "Mic92";
76 repo = "sops-nix";
77 ref = "pull/779/merge";
78 inputs.nixpkgs.follows = "nixpkgs";
79 };
80
81 ### Additional packages
82 # a plain simple way to host a mail server
83 simple-nixos-mailserver = {
84 type = "gitlab";
85 owner = "simple-nixos-mailserver";
86 repo = "nixos-mailserver";
87
88 inputs = {
89 nixpkgs.follows = "nixpkgs";
90 git-hooks.follows = "";
91 flake-compat.follows = "";
92 blobs.follows = "";
93 };
94 };
95
96 homebrew = {
97 type = "github";
98 owner = "zhaofengli";
99 repo = "nix-homebrew";
100 inputs.brew-src.follows = "";
101 };
102
103 spicetify = {
104 type = "github";
105 owner = "Gerg-L";
106 repo = "spicetify-nix";
107 inputs.nixpkgs.follows = "nixpkgs";
108 };
109
110 tranquil = {
111 url = "git+https://tangled.org/tranquil.farm/tranquil-pds";
112 inputs.nixpkgs.follows = "nixpkgs";
113 };
114
115 ### misc
116 # declarative theme management
117 catppuccin = {
118 type = "github";
119 owner = "catppuccin";
120 repo = "nix";
121 inputs.nixpkgs.follows = "nixpkgs";
122 };
123
124 ### my programs
125 tgirlpkgs = {
126 type = "github";
127 owner = "tgirlcloud";
128 repo = "pkgs";
129 inputs.nixpkgs.follows = "nixpkgs";
130 };
131
132 izvim = {
133 type = "github";
134 owner = "isabelroses";
135 repo = "nvim";
136 inputs.nixpkgs.follows = "nixpkgs";
137 };
138 };
139}