sisyphus/nixos/flake.nix

81 lines
2 KiB
Nix
Raw Normal View History

2023-03-06 21:00:44 +01:00
{
2023-03-22 22:12:39 +01:00
description = "System configuration of my machines using flakes";
2023-04-04 11:23:33 +02:00
2023-03-06 21:00:44 +01:00
inputs = {
2023-06-17 10:01:00 +02:00
nixpkgs.url = "nixpkgs/nixos-23.05";
2023-06-24 14:01:21 +02:00
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
2023-04-04 11:23:33 +02:00
2023-03-22 22:12:39 +01:00
devshell = {
url = "github:numtide/devshell";
2023-08-11 17:16:37 +02:00
inputs.nixpkgs.follows = "nixpkgs";
2023-03-06 21:00:44 +01:00
};
2023-03-22 22:12:39 +01:00
flake-utils.url = "github:numtide/flake-utils";
home-manager = {
2023-06-17 10:01:00 +02:00
url = "github:nix-community/home-manager/release-23.05";
2023-08-11 17:16:37 +02:00
inputs.nixpkgs.follows = "nixpkgs";
2023-03-06 21:00:44 +01:00
};
2023-04-11 18:00:21 +02:00
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-03-22 22:12:39 +01:00
utils = {
url = "github:gytis-ivaskevicius/flake-utils-plus";
inputs.flake-utils.follows = "flake-utils";
};
};
2023-03-06 21:00:44 +01:00
2023-03-22 22:12:39 +01:00
outputs = inputs@{
2023-06-24 14:01:21 +02:00
self, nixpkgs, nixpkgs-unstable,
2023-04-11 18:00:21 +02:00
devshell, flake-utils, home-manager, sops-nix, utils,
2023-03-22 22:12:39 +01:00
... }:
let
system = "x86_64-linux";
in
utils.lib.mkFlake {
inherit self inputs;
2023-04-04 11:23:33 +02:00
2023-10-20 22:28:37 +02:00
channelsConfig.allowUnfreePredicate = pkg: builtins.elem (nixpkgs.lib.getName pkg) [
"corefonts"
2023-10-24 21:00:53 +02:00
"nvidia-settings"
"nvidia-x11"
"Oracle_VM_VirtualBox_Extension_Pack"
2023-10-20 22:28:37 +02:00
"vista-fonts"
];
2023-04-04 11:23:33 +02:00
2023-10-11 22:39:54 +02:00
sharedOverlays = [
2023-10-19 22:24:04 +02:00
(import ./overlays/cmdtime)
(import ./overlays/icosystem)
(import ./overlays/letter)
(import ./overlays/openconnect-sso)
2023-10-08 22:13:53 +02:00
(import ./overlays/spotify)
];
2023-04-04 11:23:33 +02:00
hostDefaults = {
inherit system;
2023-06-24 14:01:21 +02:00
specialArgs = {
pkgs-unstable = import nixpkgs-unstable {
inherit system;
2023-10-20 22:28:37 +02:00
config.allowUnfreePredicate = pkg: builtins.elem (nixpkgs.lib.getName pkg) [
"obsidian"
"spotify"
];
2023-06-24 14:01:21 +02:00
};
};
2023-04-04 11:23:33 +02:00
modules = [
home-manager.nixosModule
2023-04-11 18:00:21 +02:00
sops-nix.nixosModules.sops
2023-10-17 23:09:40 +02:00
./modules
2023-10-20 20:29:11 +02:00
./users
2023-04-04 11:23:33 +02:00
];
};
hosts = {
2023-04-11 18:01:53 +02:00
Tibo-NixDesk.modules = [ ./hosts/Tibo-NixDesk ];
2023-04-04 11:23:33 +02:00
Tibo-NixFat.modules = [ ./hosts/Tibo-NixFat ];
Tibo-NixTest.modules = [ ./hosts/Tibo-NixTest ];
2023-03-24 11:15:51 +01:00
};
2023-03-06 21:00:44 +01:00
};
}