mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-01-31 16:57:55 +00:00
46 lines
1.4 KiB
Nix
46 lines
1.4 KiB
Nix
# All of the development-related shtick for this project is over here.
|
|
{ inputs, ... }: {
|
|
flake.lib = import ../../lib { lib = inputs.nixpkgs.lib; };
|
|
|
|
perSystem = { config, lib, pkgs, ... }: {
|
|
apps = {
|
|
run-workflow-with-vm =
|
|
let
|
|
inputsArgs = lib.mapAttrsToList
|
|
(name: source:
|
|
let
|
|
name' = if (name == "self") then "config" else name;
|
|
in
|
|
"'${name'}=${source}'")
|
|
inputs;
|
|
script = pkgs.callPackage ../../apps/run-workflow-with-vm {
|
|
inputs = inputsArgs;
|
|
};
|
|
in
|
|
{
|
|
type = "app";
|
|
program = "${script}/bin/run-workflow-with-vm";
|
|
};
|
|
};
|
|
|
|
# No amount of formatters will make this codebase nicer but it sure does
|
|
# feel like it does.
|
|
formatter = pkgs.treefmt;
|
|
|
|
# My several development shells for usual type of projects. This is much
|
|
# more preferable than installing all of the packages at the system
|
|
# configuration (or even home environment).
|
|
devShells = import ../../shells { inherit pkgs; } // {
|
|
default = import ../../shell.nix {
|
|
inherit pkgs;
|
|
extraPackages = with pkgs; [
|
|
# Mozilla addons-specific tooling. Unfortunately, only available with
|
|
# flakes-based setups.
|
|
nur.repos.rycee.mozilla-addons-to-nix
|
|
];
|
|
};
|
|
docs = import ../../docs/shell.nix { inherit pkgs; };
|
|
};
|
|
};
|
|
}
|