187 lines
5.6 KiB
Nix
187 lines
5.6 KiB
Nix
{
|
|
description = "Nixos config flake";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
|
|
|
|
nixpkgs-us.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/release-25.05";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
nix-on-droid = {
|
|
url = "github:nix-community/nix-on-droid";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.home-manager.follows = "home-manager";
|
|
};
|
|
|
|
disko = {
|
|
url = "github:nix-community/disko";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
sops-nix = {
|
|
url = "github:Mic92/sops-nix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
|
|
firefox-addons = {
|
|
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
nix-minecraft.url = "github:Infinidoge/nix-minecraft";
|
|
|
|
#simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-24.05";
|
|
|
|
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
|
|
|
nixvim.url = "git+https://gitea.blunkall.us/Blunkall-Technologies/Moirai";
|
|
|
|
};
|
|
|
|
outputs = { self, nixpkgs, home-manager, ... } @ inputs: {
|
|
|
|
|
|
nixosConfigurations = {
|
|
|
|
homebox = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
home-manager-config = import ./home-manager;
|
|
inherit self;
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/homebox
|
|
./system-config
|
|
];
|
|
};
|
|
|
|
laptop = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
home-manager-config = import ./home-manager;
|
|
inherit self;
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/laptop
|
|
./system-config
|
|
];
|
|
};
|
|
|
|
jesstop = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/jesstop
|
|
./system-config
|
|
];
|
|
};
|
|
|
|
pi4 = {
|
|
system = "aarch64-linux";
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/pi4
|
|
./system-config
|
|
];
|
|
};
|
|
|
|
live = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/live
|
|
./system-config
|
|
];
|
|
};
|
|
|
|
container = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/containers/nathan
|
|
./system-config
|
|
];
|
|
};
|
|
|
|
iso = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
specialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
home-manager-config = import ./home-manager;
|
|
};
|
|
};
|
|
modules = [
|
|
./system-config/configuration/iso
|
|
./system-config
|
|
];
|
|
};
|
|
};
|
|
|
|
nixOnDroidConfigurations.default = inputs.nix-on-droid.lib.nixOnDroidConfiguration {
|
|
pkgs = import nixpkgs {
|
|
system = "aarch64-linux";
|
|
overlays = [ inputs.nix-on-droid.overlays.default ];
|
|
};
|
|
|
|
modules = [
|
|
./system-config/configuration/android
|
|
];
|
|
|
|
extraSpecialArgs = {
|
|
inputs = inputs // {
|
|
nathan = import ./home-manager/users/nathan;
|
|
home-manager-config = import ./home-manager;
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
homeConfigurations = {
|
|
nathan = home-manager.lib.homeManagerConfiguration {
|
|
pkgs = import nixpkgs {
|
|
system = builtins.currentSystem;
|
|
};
|
|
|
|
modules = [
|
|
./home-manager
|
|
{
|
|
homeconfig = {
|
|
username = "nathan";
|
|
graphical = false;
|
|
minimal = false;
|
|
};
|
|
}
|
|
];
|
|
|
|
extraSpecialArgs = {
|
|
inherit inputs;
|
|
};
|
|
};
|
|
};
|
|
|
|
iso = self.nixosConfigurations.iso.config.system.build.isoImage;
|
|
};
|
|
}
|