-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathflake.nix
More file actions
142 lines (120 loc) · 4.8 KB
/
Copy pathflake.nix
File metadata and controls
142 lines (120 loc) · 4.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
{
description = "NixOS configuration of JohnRTitor (Hyprland, Secure-Boot)";
inputs = {
### CORE REPOSITORIES ###
nixpkgs.url = "https://channels.nixos.org/nixos-unstable/nixexprs.tar.zst"; # Unstable NixOS system (default)
nixpkgs-master.url = "github:NixOS/nixpkgs/master"; # Master branch of nixpkgs, to get the absolute latest packages
### NIX ECOSYSTEM & UTILS ###
flake-parts = {
url = "github:hercules-ci/flake-parts"; # Flake parts for easy flake management
inputs.nixpkgs-lib.follows = "nixpkgs";
};
chaotic = {
url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; # For cachyos kernel
inputs.home-manager.follows = "home-manager";
};
nur = {
url = "github:nix-community/NUR"; # Nix User Repository, for community packages
inputs.nixpkgs.follows = "nixpkgs";
inputs.flake-parts.follows = "flake-parts";
};
determinate-nix = {
url = "github:DeterminateSystems/nix-src";
# This can sometimes cause build failure due to using overlays internally
# inputs.nixpkgs.follows = "nixpkgs";
inputs.flake-parts.follows = "flake-parts";
};
nix-index-database = {
url = "github:nix-community/nix-index-database";
inputs.nixpkgs.follows = "nixpkgs";
};
### SYSTEM COMPONENTS & SERVICES ###
home-manager = {
url = "github:nix-community/home-manager/master"; # Home Manager, manage user configuration and home directories like a pro
inputs.nixpkgs.follows = "nixpkgs"; # Must follow nixpkgs, else will cause conflicts with the system
};
lanzaboote = {
# Lanzaboote module used for Secure-Boot implementation
url = "github:nix-community/lanzaboote/v0.4.2";
inputs.flake-parts.follows = "flake-parts";
# If follows nixpkgs cause issues with package versions and boot experience, remove this
inputs.nixpkgs.follows = "nixpkgs";
};
nix-flatpak.url = "github:gmodena/nix-flatpak/latest"; # Declarative Flatpak support for NixOS
### DESKTOP ENVIRONMENT & WINDOW MANAGER ###
hyprland = {
url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
dms-greeter = {
url = "github:AvengeMedia/dank-greeter";
inputs.nixpkgs.follows = "nixpkgs";
};
xdg-desktop-portal-gtk4 = {
url = "github:johnrtitor/xdg-desktop-portal-gtk4";
inputs.flake-parts.follows = "flake-parts";
inputs.nixpkgs.follows = "nixpkgs";
};
ananicy-rs = {
url = "github:johnrtitor/ananicy-rs";
inputs.flake-parts.follows = "flake-parts";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:nix-community/stylix";
inputs.flake-parts.follows = "flake-parts";
inputs.nixpkgs.follows = "nixpkgs";
inputs.nur.follows = "nur";
};
### USER PACKAGES & APPS ###
zen-browser = {
url = "github:youwen5/zen-browser-flake"; # Latest Zen Browser binary
inputs.nixpkgs.follows = "nixpkgs";
};
noctalia = {
url = "github:noctalia-dev/noctalia"; # Latest Noctalia
inputs.nixpkgs.follows = "nixpkgs";
};
nix-vscode-extensions = {
url = "github:nix-community/nix-vscode-extensions"; # Grab latest VScode extensions as a package;
inputs.nixpkgs.follows = "nixpkgs";
};
colibri = {
url = "github:JohnRTitor/colibri";
inputs.nixpkgs.follows = "nixpkgs";
};
odysseus = {
url = "github:JohnRTitor/odysseus/nix-model-parameter";
inputs.nixpkgs.follows = "nixpkgs";
};
### NON-FLAKE REPOSITORIES ###
platomav-microcode = {
url = "github:platomav/CPUMicrocodes"; # For getting latest AMD microcode updates
flake = false;
};
};
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { imports = [ ./flake ]; };
### Flake specific Nix configuration ###
nixConfig = {
# Allows the user to use these caches when using `nix run <thisFlake>`.
extra-substituters = [
"https://devenv.cachix.org"
"https://hyprland.cachix.org"
"https://nix-community.cachix.org"
"https://johnrtitor.cachix.org"
"https://cache.numtide.com"
"https://install.determinate.systems"
# "https://cache.flakehub.com" # requires login
"https://nyx-cache.chaotic.cx/"
];
extra-trusted-public-keys = [
"devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"johnrtitor.cachix.org-1:CCJikn7FNkt2G4h2k1CmAaRzmNN+efiv349u/Hf93to="
"cache.flakehub.com-3:hJuILl5sVK4iKm86JzgdXW12Y2Hwd5G07qKtHTOcDCM="
"niks3.numtide.com-1:DTx8wZduET09hRmMtKdQDxNNthLQETkc/yaX7M4qK0g="
"nyx-cache.chaotic.cx:dJxTrgMC3V3cFfyIiBQDQorG6k1LsqurH/srpMSq7qk="
];
};
}