NOflake/flake.nix

163 lines
4.9 KiB
Nix
Raw Normal View History

{
description = "we say NO to shitty OSes";
inputs = {
2024-01-29 17:28:38 -08:00
nixpkgs.url = "nixpkgs/nixos-unstable";
2024-10-13 21:17:25 -07:00
nixos-facter-modules.url = "github:numtide/nixos-facter-modules";
2024-06-08 21:56:31 -07:00
nixos-hardware.url = "nixos-hardware/master";
2024-03-28 08:54:48 -07:00
agenix = {
url = "github:ryantm/agenix";
inputs.darwin.follows = "";
};
2024-06-12 14:32:40 -07:00
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-02-27 15:36:23 -08:00
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-03-20 13:53:13 -07:00
plasma-manager = {
url = "github:pjones/plasma-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-04-27 13:09:00 -07:00
# helix = {
# url = "github:the-mikedavis/helix";
# inputs.nixpkgs.follows = "nixpkgs";
# };
2024-03-11 22:10:35 -07:00
nixos-cosmic = {
url = "github:lilyinstarlight/nixos-cosmic";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-01-29 17:28:38 -08:00
# prescurve.url = "github:taotien/prescurve";
# prescurve.inputs.nixpkgs.follows = "nixpkgs";
2024-09-11 13:01:52 -07:00
zen-browser = {
url = "github:MarceColl/zen-browser-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-09-28 15:55:25 -07:00
determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/0.1";
2024-10-14 00:11:06 -07:00
nixos.url = "nixpkgs/nixos-24.05";
};
2024-02-01 10:30:02 -08:00
nixConfig = {
2024-04-09 10:06:48 -07:00
extra-substituters = [
"https://cosmic.cachix.org/"
2024-04-27 13:09:00 -07:00
# "https://helix.cachix.org/"
2024-04-09 10:06:48 -07:00
];
extra-trusted-public-keys = [
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
2024-04-27 13:09:00 -07:00
# "helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
2024-04-09 10:06:48 -07:00
];
2024-02-01 10:30:02 -08:00
};
2024-02-24 02:30:17 -08:00
outputs = {
self,
nixpkgs,
2024-10-13 21:17:25 -07:00
nixos-facter-modules,
2024-02-24 02:30:17 -08:00
nixos-hardware,
2024-03-28 08:54:48 -07:00
agenix,
2024-06-12 14:32:40 -07:00
disko,
2024-02-24 02:30:17 -08:00
home-manager,
2024-03-20 13:53:13 -07:00
plasma-manager,
2024-04-27 13:09:00 -07:00
# helix,
2024-03-11 22:10:35 -07:00
nixos-cosmic,
2024-09-04 19:58:01 -07:00
zen-browser,
2024-09-25 10:00:11 -07:00
determinate,
2024-10-14 00:11:06 -07:00
nixos,
2024-02-24 02:30:17 -08:00
...
} @ inputs: {
nixosConfigurations = {
NOcomputer = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
2024-10-13 21:17:25 -07:00
disko.nixosModules.disko
2024-02-24 02:30:17 -08:00
nixos-hardware.nixosModules.common-cpu-amd
2024-03-18 22:45:19 -07:00
nixos-hardware.nixosModules.common-cpu-amd-pstate
2024-10-28 23:10:46 -07:00
nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
2024-10-19 23:26:32 -07:00
# nixos-hardware.common.gpu.nvidia.ampere
2024-04-01 15:08:38 -07:00
agenix.nixosModules.default
2024-03-03 22:23:33 -08:00
home-manager.nixosModules.home-manager
2024-02-24 02:30:17 -08:00
./systems/BASED.nix
./systems/NOcomputer.nix
./users/tao.nix
./extras/uwuraid.nix
./extras/dev.nix
./extras/gaming.nix
2024-04-29 13:53:43 -07:00
./extras/folding.nix
2024-10-28 23:11:30 -07:00
nixos-cosmic.nixosModules.default
./extras/cosmic.nix
2024-02-24 02:30:17 -08:00
];
};
2024-02-24 02:30:17 -08:00
NOlaptop = nixpkgs.lib.nixosSystem {
2024-03-18 22:45:19 -07:00
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
2024-10-13 21:17:25 -07:00
disko.nixosModules.disko
./systems/disk-config.nix
2024-12-01 00:01:50 -08:00
nixos-hardware.nixosModules.framework-16-7040-amd
# nixos-facter-modules.nixosModules.facter
# {
# config.facter.reportPath =
# if builtins.pathExists ./systems/NOlaptop-facter.json
# then ./systems/NOlaptop-facter.json
# else throw "Have you forgotten to run nixos-anywhere with `--generate-hardware-config nixos-facter ./facter.json`?";
# }
2024-03-28 08:54:48 -07:00
agenix.nixosModules.default
2024-10-15 19:21:20 -07:00
determinate.nixosModules.default
2024-03-18 22:45:19 -07:00
home-manager.nixosModules.home-manager
./systems/BASED.nix
./systems/NOlaptop.nix
./users/tao.nix
./extras/uwuraid.nix
./extras/dev.nix
./extras/gaming.nix
2024-10-28 23:11:30 -07:00
nixos-cosmic.nixosModules.default
./extras/cosmic.nix
2024-03-18 22:45:19 -07:00
];
};
NOmom = nixpkgs.lib.nixosSystem {
2024-02-24 02:30:17 -08:00
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
nixos-hardware.nixosModules.common-cpu-intel
# inputs.nixos-hardware.nixosModules.framework-12th-gen-intel
2024-03-30 19:24:10 -07:00
agenix.nixosModules.default
2024-03-03 22:23:33 -08:00
home-manager.nixosModules.home-manager
2024-02-24 02:30:17 -08:00
./systems/BASED.nix
2024-03-18 22:45:19 -07:00
./systems/NOmom.nix
2024-02-24 02:30:17 -08:00
./users/tao.nix
2024-03-29 12:51:49 -07:00
./users/vy.nix
2024-02-24 02:30:17 -08:00
./extras/uwuraid.nix
];
};
2024-06-12 14:32:40 -07:00
NOserver-minecraft = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
agenix.nixosModules.default
disko.nixosModules.disko
{disko.devices.disk.disk1.device = "/dev/vda";}
./systems/NOserver.nix
2024-10-13 21:17:25 -07:00
./extras/NOserver-disk-config.nix
2024-06-12 14:32:40 -07:00
./extras/minecraft-server.nix
];
};
2024-10-14 00:11:06 -07:00
bcachefs-iso = nixos.lib.nixosSystem {
system = "x86_64-linux";
modules = [
"${nixos}/nixos/modules/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix"
({
lib,
pkgs,
...
}: {
boot.supportedFilesystems = ["bcachefs"];
boot.kernelPackages = lib.mkOverride 0 pkgs.linuxPackages_latest;
})
];
};
};
2024-02-24 02:30:17 -08:00
};
}