config/flake.nix

184 lines
4.9 KiB
Nix
Raw Normal View History

2024-02-29 22:20:26 -05:00
{
description = "Nixos config flake";
2024-10-19 14:42:26 -04:00
nixConfig = {
extra-substituters = [
"https://cache.zoeys.computer"
];
extra-trusted-public-keys = [
"cache.zoeys.computer:0Pvq2E8GWBX9qk1aTQ3RpZ01t4Nu5uWMQy90ippP9Ls="
];
};
2024-02-29 22:20:26 -05:00
inputs = {
2024-10-16 15:40:35 -04:00
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
2024-12-19 21:47:51 -05:00
nixpkgs-stable.url = "github:nixos/nixpkgs/release-24.11";
2024-02-29 22:20:26 -05:00
home-manager = {
2024-10-16 15:40:35 -04:00
url = "github:nix-community/home-manager/master";
2024-02-29 22:20:26 -05:00
inputs.nixpkgs.follows = "nixpkgs";
};
2025-01-07 18:42:17 +00:00
ghostty.url = "github:ghostty-org/ghostty";
2024-12-19 21:47:51 -05:00
2024-10-16 15:40:35 -04:00
emacs-overlay.url = "github:nix-community/emacs-overlay";
2024-12-19 21:47:51 -05:00
awsvpnclient = {
url = "github:ymatsiuk/awsvpnclient/56ca114e3f7fe4db9d745a0ab8ed70c6bd803a8f";
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
};
2024-08-07 10:44:50 -04:00
2024-11-23 18:12:57 -05:00
resume.url = "git+https://git.zoeys.cloud/zoey/resume";
2024-12-16 16:39:20 -05:00
anyrun.url = "github:anyrun-org/anyrun";
anyrun.inputs.nixpkgs.follows = "nixpkgs";
2024-11-23 18:12:57 -05:00
ags.url = "github:Aylur/ags/v1";
ags.inputs.nixpkgs.follows = "nixpkgs";
agenix.url = "github:ryantm/agenix";
agenix.inputs.nixpkgs.follows = "nixpkgs";
agenix.inputs.darwin.follows = "";
2024-11-13 20:35:13 -05:00
pnpm2nix.url = "github:nzbr/pnpm2nix-nzbr";
2024-10-14 22:28:31 -04:00
solaar = {
url = "github:Svenum/Solaar-Flake/main"; # Uncomment line for latest unstable version
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-generators = {
url = "github:nix-community/nixos-generators";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-11-23 18:12:57 -05:00
blog.url = "git+https://git.zoeys.cloud/zoey/web";
2024-05-05 16:40:12 -04:00
lanzaboote = {
2024-12-16 16:39:20 -05:00
url = "github:nix-community/lanzaboote/v0.4.1";
# Optional but recommended to limit the size of your system closure.
inputs.nixpkgs.follows = "nixpkgs";
};
hypridle = {
url = "github:hyprwm/hypridle";
inputs.nixpkgs.follows = "nixpkgs";
};
catppuccin.url = "github:catppuccin/nix";
2024-09-18 15:32:57 -04:00
hyprland = {
url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
# inputs.nixpkgs.follows = "nixpkgs";
};
kb-gui = {
url = "github:zackartz/kb-gui";
inputs.nixpkgs.follows = "nixpkgs";
};
waybar = {
url = "github:Alexays/Waybar";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-05-23 20:26:30 +00:00
snowfall-lib = {
url = "github:snowfallorg/lib";
inputs.nixpkgs.follows = "nixpkgs";
};
neovim-nightly-overlay = {
url = "github:nix-community/neovim-nightly-overlay";
2024-09-12 19:29:12 -04:00
# inputs.nixpkgs.follows = "nixpkgs";
};
rio-term = {
url = "github:raphamorim/rio";
inputs.nixpkgs.follows = "nixpkgs";
};
2025-01-07 18:42:17 +00:00
zen-browser.url = "github:0xc000022070/zen-browser-flake";
2024-09-17 19:56:58 -04:00
2024-10-22 15:15:39 -04:00
zoeycomputer = {
2024-11-23 18:12:57 -05:00
url = "git+https://git.zoeys.cloud/zoey/zoeys.computer";
2024-10-22 15:15:39 -04:00
# inputs.nixpkgs.follows = "nixpkgs";
};
2024-10-21 19:22:59 -04:00
2024-11-23 18:12:57 -05:00
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-1.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
systems.url = "github:nix-systems/default";
spicetify-nix = {
url = "github:Gerg-L/spicetify-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-10-17 02:05:02 -04:00
2025-01-07 18:42:17 +00:00
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
impermanence = {
url = "github:nix-community/impermanence";
};
2024-12-16 16:39:20 -05:00
g2claude.url = "git+https://git.zoeys.cloud/zoey/g2claude.git";
2024-10-17 02:05:02 -04:00
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-02-29 22:20:26 -05:00
};
2024-12-19 21:47:51 -05:00
outputs = inputs @ {self, ...}: let
2024-10-19 00:28:43 -04:00
snowfallConfig = inputs.snowfall-lib.mkFlake {
2024-05-23 20:26:30 +00:00
inherit inputs;
src = ./.;
2024-12-16 16:39:20 -05:00
overlays = [
inputs.rust-overlay.overlays.default
(final: prev: {
2024-12-19 21:47:51 -05:00
ghostty = inputs.ghostty.packages."x86_64-linux".default;
2024-12-16 16:39:20 -05:00
})
];
2024-05-23 21:24:09 +00:00
2024-05-23 20:26:30 +00:00
snowfall = {
namespace = "custom";
};
2024-05-03 13:33:06 -04:00
2024-05-23 20:26:30 +00:00
channels-config = {
allowUnfree = true;
};
homes.modules = with inputs; [
spicetify-nix.homeManagerModules.default
2024-05-23 20:26:30 +00:00
catppuccin.homeManagerModules.catppuccin
anyrun.homeManagerModules.default
ags.homeManagerModules.default
2025-01-07 18:42:17 +00:00
impermanence.nixosModules.home-manager.impermanence
2024-02-29 22:20:26 -05:00
];
2024-05-23 20:26:30 +00:00
systems.modules.nixos = with inputs; [
lanzaboote.nixosModules.lanzaboote
home-manager.nixosModules.home-manager
catppuccin.nixosModules.catppuccin
blog.nixosModule
agenix.nixosModules.default
2024-10-16 15:40:35 -04:00
solaar.nixosModules.default
2024-10-21 19:22:59 -04:00
zoeycomputer.nixosModules.default
2024-11-23 18:12:57 -05:00
lix-module.nixosModules.default
2025-01-07 18:42:17 +00:00
disko.nixosModules.default
impermanence.nixosModules.impermanence
];
2024-10-19 00:28:43 -04:00
};
in
snowfallConfig
// {
hydraJobs = {
x86_64-linux.earth = self.nixosConfigurations.earth.config.system.build.toplevel;
x86_64-linux.pluto = self.nixosConfigurations.pluto.config.system.build.toplevel;
2024-10-20 14:44:55 -04:00
zen-browser = self.packages."x86_64-linux".zen-browser;
2024-10-18 23:59:23 -04:00
};
};
2024-02-29 22:20:26 -05:00
}