2023-03-25 09:20:16 +02:00
|
|
|
{
|
2023-04-30 15:04:06 +03:00
|
|
|
description = "My NixOS system configuration";
|
2023-03-25 09:20:16 +02:00
|
|
|
|
2023-04-30 15:04:06 +03:00
|
|
|
inputs = {
|
|
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
|
|
nix-software-center.url = "github:vlinkz/nix-software-center";
|
|
|
|
nix-doom-emacs.url = "github:nix-community/nix-doom-emacs";
|
|
|
|
home-manager = {
|
|
|
|
url = "github:nix-community/home-manager";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-05-20 19:30:54 +03:00
|
|
|
helix.url = "github:helix-editor/helix/master";
|
2023-05-13 12:09:24 +03:00
|
|
|
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
|
|
|
|
|
|
|
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
|
2023-06-05 15:02:59 +03:00
|
|
|
hypr-contrib.url = "github:hyprwm/contrib";
|
2023-06-24 00:16:37 +03:00
|
|
|
hyprland.url = "github:hyprwm/Hyprland";
|
|
|
|
eww.url = "github:elkowar/eww";
|
2023-06-21 14:14:11 +03:00
|
|
|
nix-but-gigachad.url = "github:viperML/nh";
|
2023-03-27 17:41:56 +03:00
|
|
|
};
|
2023-03-25 09:20:16 +02:00
|
|
|
|
2023-04-30 15:04:06 +03:00
|
|
|
outputs = { self, nixpkgs, home-manager, ... }@inputs: {
|
2023-05-06 22:00:07 +03:00
|
|
|
nixosConfigurations = {
|
|
|
|
ultrapc = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "x86_64-linux";
|
|
|
|
specialArgs = { inherit inputs; };
|
|
|
|
modules = [
|
|
|
|
./hosts/ultrapc/configuration.nix
|
|
|
|
{
|
|
|
|
environment.etc."nix/inputs/nixpkgs".source = nixpkgs.outPath;
|
2023-05-14 21:42:09 +03:00
|
|
|
nix.nixPath = [
|
|
|
|
"nixpkgs=/etc/nix/inputs/nixpkgs"
|
|
|
|
"nixos-config=/home/ultra/.nixdotfiles"
|
|
|
|
];
|
2023-05-06 22:00:07 +03:00
|
|
|
}
|
2023-06-05 15:02:59 +03:00
|
|
|
|
|
|
|
# Hyprland
|
|
|
|
# inputs.hyprland.nixosModules.default
|
|
|
|
# { programs.hyprland.enable = true; }
|
2023-05-06 22:00:07 +03:00
|
|
|
];
|
|
|
|
};
|
|
|
|
ultrapi = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "aarch64-linux";
|
|
|
|
specialArgs = { inherit inputs; };
|
|
|
|
modules = [
|
|
|
|
./hosts/ultrapi/configuration.nix
|
|
|
|
{
|
|
|
|
environment.etc."nix/inputs/nixpkgs".source = nixpkgs.outPath;
|
|
|
|
nix.nixPath = [ "nixpkgs=/etc/nix/inputs/nixpkgs" ];
|
|
|
|
}
|
|
|
|
];
|
2023-06-26 10:58:42 +03:00
|
|
|
};
|
|
|
|
iso = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "x86_64-linux";
|
|
|
|
modules = [
|
|
|
|
"${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5-new-kernel.nix"
|
|
|
|
];
|
2023-05-06 22:00:07 +03:00
|
|
|
};
|
2023-04-30 15:04:06 +03:00
|
|
|
};
|
|
|
|
defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux;
|
2023-05-06 21:04:27 +03:00
|
|
|
defaultPackage.aarch64-linux = home-manager.defaultPackage.aarch64-linux;
|
2023-04-30 15:04:06 +03:00
|
|
|
homeConfigurations = {
|
|
|
|
ultra = home-manager.lib.homeManagerConfiguration {
|
|
|
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
|
|
extraSpecialArgs = { inherit inputs; };
|
|
|
|
modules = [
|
2023-04-30 15:05:07 +03:00
|
|
|
./users/ultra/home.nix
|
2023-04-30 15:04:06 +03:00
|
|
|
(args: { # https://ayats.org/blog/channels-to-flakes
|
|
|
|
xdg.configFile."nix/inputs/nixpkgs".source = nixpkgs.outPath;
|
|
|
|
home.sessionVariables.NIX_PATH = "nixpkgs=${args.config.xdg.configHome}/nix/inputs/nixpkgs$\{NIX_PATH:+:$NIX_PATH}";
|
|
|
|
})
|
2023-06-05 15:02:59 +03:00
|
|
|
# Hyprland
|
|
|
|
# inputs.hyprland.homeManagerModules.default
|
|
|
|
# { wayland.windowManager.hyprland.enable = true; }
|
2023-04-30 15:04:06 +03:00
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
2023-03-25 09:20:16 +02:00
|
|
|
};
|
|
|
|
}
|