nixos-selfhost/flake.nix

61 lines
1.5 KiB
Nix
Raw Permalink Normal View History

2024-03-02 07:51:45 +01:00
{
2024-06-23 12:28:28 +02:00
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home = {
url = "git+https://git.sondell.org/glennwso/home.git";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-mailserver = {
url = "gitlab:simple-nixos-mailserver/nixos-mailserver";
inputs.nixpkgs.follows = "nixpkgs";
};
};
2024-03-02 07:51:45 +01:00
2024-06-23 12:28:28 +02:00
outputs = { self, nixpkgs, home, nixos-mailserver, home-manager}@attrs:
2024-03-27 13:08:02 +01:00
let
system = "x86_64-linux";
homepage = home.packages.${system}.default;
2024-04-04 15:05:25 +02:00
mailserver = nixos-mailserver.nixosModules.default;
2024-06-23 12:28:28 +02:00
homeSettings = {
2024-06-23 15:39:08 +02:00
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.sondell = import ./home/sondell.nix;
};
2024-06-23 12:28:28 +02:00
};
homeModules = [
home-manager.nixosModules.home-manager
homeSettings
];
2024-03-27 13:08:02 +01:00
in
{
2024-03-02 07:51:45 +01:00
# replace 'joes-desktop' with your hostname here.
2024-03-27 13:08:02 +01:00
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem
{
inherit system;
2024-03-02 07:51:45 +01:00
specialArgs = attrs;
2024-03-06 22:14:44 +01:00
modules = [
./configuration.nix
./audiobooks.nix
2024-03-24 22:37:16 +01:00
./tunnel.nix
2024-03-24 22:51:46 +01:00
./forgejo.nix
2024-04-02 19:25:00 +02:00
./nextcloud.nix
2024-03-24 22:51:46 +01:00
./jellyfin.nix
2024-06-23 15:55:00 +02:00
./filebrowser.nix
2024-03-25 00:18:55 +01:00
./tail.nix
2024-03-25 01:00:52 +01:00
./matrix.nix
2024-04-02 17:55:12 +02:00
./coturn.nix
2024-05-03 07:39:16 +02:00
./vaultwarden.nix
2024-04-04 15:05:25 +02:00
(import ./mail.nix {inherit mailserver;})
2024-04-04 13:40:20 +02:00
(import ./homepage.nix {inherit homepage;})
2024-06-23 12:28:28 +02:00
] ++ homeModules;
2024-03-02 07:51:45 +01:00
};
};
}