chore: add nix flake and image

This commit is contained in:
technofab 2024-04-24 17:09:10 +02:00
parent a584d787d2
commit 6bd319fbe9
5 changed files with 1090 additions and 0 deletions

77
flake.nix Normal file
View file

@ -0,0 +1,77 @@
{
description = "Coder Templates";
outputs = {
self,
nixpkgs,
flake-parts,
systems,
...
} @ inputs:
flake-parts.lib.mkFlake {inherit inputs;} {
imports = [
inputs.devenv.flakeModule
inputs.nix-gitlab-ci.flakeModule
];
systems = import systems;
flake = {
};
perSystem = {
config,
self',
inputs',
pkgs,
system,
...
}: {
_module.args.pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
};
formatter = pkgs.alejandra;
devenv.shells.default = {
imports = [
inputs.nix-devtools.devenvModule
];
packages = [
pkgs.opentofu
pkgs.coder
];
pre-commit.hooks = {
alejandra.enable = true;
};
task = {
enable = true;
alias = ",";
tasks = {};
};
};
packages = {
nix-coder-image = pkgs.callPackage ./image.nix {};
};
};
};
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
flake-parts.url = "github:hercules-ci/flake-parts";
systems.url = "github:nix-systems/default";
devenv.url = "github:cachix/devenv";
nix-gitlab-ci = {
url = "gitlab:TECHNOFAB/nix-gitlab-ci";
inputs.nixpkgs.follows = "nixpkgs";
inputs.devenv.follows = "devenv";
inputs.systems.follows = "systems";
};
nix-devtools = {
url = "gitlab:TECHNOFAB/nix-devtools";
inputs.nixpkgs.follows = "nixpkgs";
inputs.devenv.follows = "devenv";
inputs.systems.follows = "systems";
};
};
}