Files
panoptes-nix/flake.nix
John Lancaster 343c6a89db continuous reorg
2024-12-08 16:03:45 -06:00

77 lines
2.0 KiB
Nix

{
description = "Panoptes flake config";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.11";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
# vscode-server.url = "path:./nixos/vscode";
vscode-server.url = "github:nix-community/nixos-vscode-server";
};
outputs = {
self,
nixpkgs,
nixpkgs-stable,
home-manager,
...
} @ inputs:
let
stateVersion = "24.11";
inherit (self) outputs;
nixosSystem = inputs.nixpkgs.lib.nixosSystem;
userSettings = rec {
username = "panoptes";
gitUserName = "John Lancaster";
gitUserEmail = "32917998+jsl12@users.noreply.github.com";
};
systemSettings = rec {
hostname = "panoptes-nix";
system = "x86_64-linux";
timeZone = "America/Chicago";
locale = "en_US.UTF-8";
};
pkgs = inputs.nixpkgs.legacyPackages.${systemSettings.system};
in
{
nixosConfigurations = {
"${systemSettings.hostname}" = nixosSystem {
system = systemSettings.system;
specialArgs = {
inherit inputs;
inherit outputs;
inherit userSettings;
inherit systemSettings;
};
modules = [
./configuration.nix # > Our main nixos configuration file <
"${inputs.nixpkgs}/nixos/modules/virtualisation/proxmox-lxc.nix"
({ ... }: {
# nixpkgs.hostPlatform = "${system}";
system.stateVersion = "${stateVersion}";
# time.timeZone = "${systemSettings.timeZone}";
services.vscode-server.enable = true;
})
inputs.vscode-server.nixosModules.default
];
};
};
homeConfigurations = {
useGlobalPkgs = true;
user = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
extraSpecialArgs = {inherit inputs outputs pkgs;};
modules = [ ./homeManagerModules/home.nix ];
};
};
};
}