76 lines
1.7 KiB
Nix
76 lines
1.7 KiB
Nix
{
|
|
description = "Epesooj webring and machine.";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
|
|
|
disko = {
|
|
url = "github:nix-community/disko";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
nil = {
|
|
url = "github:oxalica/nil";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = inputs@{ flake-parts, nil, ... }:
|
|
flake-parts.lib.mkFlake { inherit inputs; } ({ config, getSystem, ... }: {
|
|
systems = [ "x86_64-linux" ];
|
|
|
|
imports = [
|
|
./host_config
|
|
];
|
|
|
|
flake =
|
|
let
|
|
codeServerModules = [
|
|
config.flake.nixosModules.code-server
|
|
{
|
|
networking.hostName = "epesooj-code-0001";
|
|
}
|
|
];
|
|
in
|
|
{
|
|
nixosConfigurations = {
|
|
code = inputs.nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
modules = codeServerModules;
|
|
};
|
|
};
|
|
|
|
colmena = {
|
|
meta.nixpkgs = import inputs.nixpkgs {
|
|
system = "x86_64-linux";
|
|
};
|
|
|
|
code = {
|
|
deployment = {
|
|
targetHost = "epesooj-code-0001"; # Requires an SSH config with information for this host.
|
|
};
|
|
|
|
imports = codeServerModules;
|
|
};
|
|
};
|
|
};
|
|
|
|
perSystem = { system, pkgs, ... }: {
|
|
devShells = {
|
|
default = pkgs.mkShell {
|
|
packages = with pkgs; [
|
|
just
|
|
deno
|
|
|
|
colmena
|
|
|
|
# Both of these used with VSCode.
|
|
nixpkgs-fmt
|
|
nil.packages.${system}.default
|
|
];
|
|
};
|
|
};
|
|
};
|
|
});
|
|
}
|