2022-06-10 00:22:53 -03:00
|
|
|
{
|
|
|
|
description = "My system config";
|
|
|
|
inputs = {
|
2024-05-25 19:43:34 -03:00
|
|
|
nixpkgs.url = "nixpkgs/nixos-24.05";
|
|
|
|
home-manager.url = "github:nix-community/home-manager/release-24.05";
|
2022-06-10 00:22:53 -03:00
|
|
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
2022-08-05 11:20:13 -03:00
|
|
|
|
2023-01-19 09:20:27 -03:00
|
|
|
nix-index-database = {
|
|
|
|
url = "github:Mic92/nix-index-database";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
|
|
|
|
2022-10-24 23:04:34 -03:00
|
|
|
ranger-icons.url = "github:alexanderjeurissen/ranger_devicons";
|
|
|
|
ranger-icons.flake = false;
|
|
|
|
|
2022-12-14 01:05:27 -03:00
|
|
|
plymouth-themes.url = "github:adi1090x/plymouth-themes";
|
|
|
|
plymouth-themes.flake = false;
|
|
|
|
|
2023-06-02 22:42:56 -03:00
|
|
|
agenix = {
|
|
|
|
url = "github:ryantm/agenix";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
2024-06-11 11:55:14 -03:00
|
|
|
inputs.home-manager.follows = "home-manager";
|
2023-06-02 22:42:56 -03:00
|
|
|
};
|
2022-12-23 11:22:58 -03:00
|
|
|
|
2024-03-27 02:28:28 -03:00
|
|
|
nixos-mailserver = {
|
2024-06-06 01:42:13 -03:00
|
|
|
url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-24.05";
|
2024-03-27 02:28:28 -03:00
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
2024-06-11 11:55:14 -03:00
|
|
|
inputs.nixpkgs-24_05.follows = "nixpkgs";
|
2024-03-27 02:28:28 -03:00
|
|
|
};
|
|
|
|
|
2023-06-02 22:42:56 -03:00
|
|
|
dzgui-nix = {
|
2024-06-22 13:45:50 -03:00
|
|
|
url = "github:lelgenio/dzgui-nix/dzgui-4.1.0";
|
2024-06-11 11:55:14 -03:00
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
2023-06-02 22:42:56 -03:00
|
|
|
};
|
2023-01-19 19:52:34 -03:00
|
|
|
|
2023-06-02 22:42:56 -03:00
|
|
|
tlauncher = {
|
2024-04-09 00:53:22 -03:00
|
|
|
url = "git+https://git.lelgenio.xyz/lelgenio/tlauncher-nix";
|
2023-06-02 22:42:56 -03:00
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-05-19 17:53:08 -03:00
|
|
|
|
2023-02-24 11:59:17 -03:00
|
|
|
disko.url = "github:nix-community/disko";
|
|
|
|
disko.inputs.nixpkgs.follows = "nixpkgs";
|
2023-02-23 19:18:15 -03:00
|
|
|
|
2022-08-01 20:15:26 -03:00
|
|
|
# my stuff
|
2023-06-02 22:42:56 -03:00
|
|
|
dhist = {
|
|
|
|
url = "github:lelgenio/dhist";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
|
|
|
demoji = {
|
|
|
|
url = "github:lelgenio/demoji";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
|
|
|
wl-crosshair = {
|
|
|
|
url = "github:lelgenio/wl-crosshair";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2024-06-22 14:20:37 -03:00
|
|
|
warthunder-leak-counter = {
|
|
|
|
url = "git+https://git.lelgenio.com/lelgenio/warthunder-leak-counter";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2022-06-10 00:22:53 -03:00
|
|
|
};
|
2024-05-30 16:54:58 -03:00
|
|
|
outputs =
|
|
|
|
inputs:
|
2022-06-10 00:22:53 -03:00
|
|
|
let
|
2023-11-28 19:39:35 -03:00
|
|
|
nixpkgsConfig = {
|
2022-06-10 00:22:53 -03:00
|
|
|
inherit system;
|
2024-05-30 16:54:58 -03:00
|
|
|
config = {
|
|
|
|
allowUnfree = true;
|
|
|
|
};
|
2023-01-23 20:56:18 -03:00
|
|
|
overlays = old_overlays.all;
|
2022-06-10 00:22:53 -03:00
|
|
|
};
|
2023-11-28 19:39:35 -03:00
|
|
|
|
|
|
|
inherit (import ./user/variables.nix) desktop;
|
|
|
|
system = "x86_64-linux";
|
2023-12-22 22:46:34 -03:00
|
|
|
pkgs = import inputs.nixpkgs nixpkgsConfig;
|
2023-11-28 19:39:35 -03:00
|
|
|
lib = inputs.nixpkgs.lib;
|
2023-01-19 01:02:32 -03:00
|
|
|
|
2024-08-20 19:16:39 -03:00
|
|
|
old_overlays = (import ./overlays { inherit inputs; });
|
2023-01-19 01:02:32 -03:00
|
|
|
|
2024-05-30 16:54:58 -03:00
|
|
|
specialArgs = {
|
|
|
|
inherit inputs;
|
|
|
|
};
|
|
|
|
common_modules =
|
|
|
|
[
|
|
|
|
{ nixpkgs.pkgs = pkgs; }
|
|
|
|
./system/configuration.nix
|
|
|
|
./system/secrets.nix
|
|
|
|
|
|
|
|
inputs.agenix.nixosModules.default
|
|
|
|
inputs.dzgui-nix.nixosModules.default
|
|
|
|
inputs.home-manager.nixosModules.home-manager
|
2023-02-23 19:18:15 -03:00
|
|
|
inputs.disko.nixosModules.disko
|
2024-05-30 16:54:58 -03:00
|
|
|
{
|
|
|
|
home-manager.useGlobalPkgs = true;
|
|
|
|
home-manager.useUserPackages = true;
|
|
|
|
home-manager.users.lelgenio = import ./user/home.nix;
|
|
|
|
home-manager.backupFileExtension = "bkp";
|
|
|
|
# Optionally, use home-manager.extraSpecialArgs to pass
|
|
|
|
# arguments to home.nix
|
|
|
|
home-manager.extraSpecialArgs = {
|
|
|
|
inherit inputs;
|
|
|
|
};
|
|
|
|
}
|
|
|
|
]
|
|
|
|
++ lib.optional (desktop == "gnome") ./system/gnome.nix
|
|
|
|
++ lib.optional (desktop == "kde") ./system/kde.nix;
|
2023-01-22 18:12:04 -03:00
|
|
|
in
|
|
|
|
{
|
2023-02-24 11:59:17 -03:00
|
|
|
checks."${system}" = {
|
|
|
|
disko-format-i15 = pkgs.callPackage ./hosts/i15/partitions-test.nix { };
|
|
|
|
};
|
2022-06-10 00:22:53 -03:00
|
|
|
nixosConfigurations = {
|
|
|
|
i15 = lib.nixosSystem {
|
2022-11-17 15:12:27 -03:00
|
|
|
inherit system specialArgs;
|
2023-02-24 11:59:17 -03:00
|
|
|
modules = [ ./hosts/i15 ] ++ common_modules;
|
2022-07-16 02:12:18 -03:00
|
|
|
};
|
2022-07-11 21:34:04 -03:00
|
|
|
monolith = lib.nixosSystem {
|
2022-11-17 15:12:27 -03:00
|
|
|
inherit system specialArgs;
|
2022-12-01 23:13:00 -03:00
|
|
|
modules = [
|
2023-02-24 11:59:17 -03:00
|
|
|
./hosts/monolith
|
2023-01-12 15:10:10 -03:00
|
|
|
./system/monolith-gitlab-runner.nix
|
2024-04-06 20:51:48 -03:00
|
|
|
./system/monolith-forgejo-runner.nix
|
2023-02-23 14:22:41 -03:00
|
|
|
./system/steam.nix
|
2022-12-01 23:13:00 -03:00
|
|
|
] ++ common_modules;
|
2022-06-10 00:22:53 -03:00
|
|
|
};
|
2022-10-25 21:18:53 -03:00
|
|
|
rainbow = lib.nixosSystem {
|
2022-11-17 15:12:27 -03:00
|
|
|
inherit system specialArgs;
|
2023-01-12 15:10:10 -03:00
|
|
|
modules = [
|
2023-02-24 11:59:17 -03:00
|
|
|
./hosts/rainbow
|
2023-01-12 15:10:10 -03:00
|
|
|
./system/rainbow-gitlab-runner.nix
|
|
|
|
] ++ common_modules;
|
2022-10-25 21:18:53 -03:00
|
|
|
};
|
2023-10-26 15:11:21 -03:00
|
|
|
double-rainbow = lib.nixosSystem {
|
|
|
|
inherit system specialArgs;
|
|
|
|
modules = [
|
|
|
|
./hosts/double-rainbow.nix
|
2023-12-07 13:58:34 -03:00
|
|
|
./system/rainbow-gitlab-runner.nix
|
2023-10-26 15:11:21 -03:00
|
|
|
] ++ common_modules;
|
|
|
|
};
|
2022-10-22 00:03:28 -03:00
|
|
|
pixie = lib.nixosSystem {
|
2022-11-17 15:12:27 -03:00
|
|
|
inherit system specialArgs;
|
2024-05-30 16:54:58 -03:00
|
|
|
modules =
|
|
|
|
[ ./hosts/pixie.nix ]
|
|
|
|
++ common_modules
|
|
|
|
++ [
|
|
|
|
{
|
|
|
|
packages.media-packages.enable = lib.mkOverride 0 false;
|
|
|
|
programs.steam.enable = lib.mkOverride 0 false;
|
|
|
|
services.flatpak.enable = lib.mkOverride 0 false;
|
|
|
|
}
|
|
|
|
];
|
2022-10-22 00:03:28 -03:00
|
|
|
};
|
2024-03-28 21:56:52 -03:00
|
|
|
phantom = lib.nixosSystem {
|
|
|
|
inherit system specialArgs;
|
|
|
|
modules = [ ./hosts/phantom ];
|
|
|
|
};
|
2022-06-10 00:22:53 -03:00
|
|
|
};
|
2023-01-23 20:56:18 -03:00
|
|
|
|
2023-11-28 19:39:35 -03:00
|
|
|
homeConfigurations.lelgenio = inputs.home-manager.lib.homeManagerConfiguration {
|
2023-01-23 20:56:18 -03:00
|
|
|
inherit pkgs;
|
|
|
|
|
2023-06-02 11:14:27 -03:00
|
|
|
extraSpecialArgs = {
|
2023-06-02 17:55:54 -03:00
|
|
|
inherit inputs;
|
|
|
|
osConfig = { };
|
2023-06-02 11:14:27 -03:00
|
|
|
};
|
2023-01-23 20:56:18 -03:00
|
|
|
|
|
|
|
modules = [ ./user/home.nix ];
|
|
|
|
};
|
|
|
|
|
2024-08-20 19:16:39 -03:00
|
|
|
packages.${system} = pkgs;
|
2023-05-07 22:20:10 -03:00
|
|
|
|
2024-05-30 16:55:40 -03:00
|
|
|
formatter.${system} = pkgs.nixfmt-rfc-style;
|
2022-06-10 00:22:53 -03:00
|
|
|
};
|
2022-07-21 00:32:09 -03:00
|
|
|
}
|