1
0
Fork 0
mirror of https://github.com/Mic92/sops-nix.git synced 2025-03-05 08:07:16 +00:00
sops-nix/flake.nix

58 lines
2 KiB
Nix
Raw Normal View History

2020-07-06 08:44:11 +01:00
{
description = "Integrates sops into nixos";
2020-11-08 14:23:58 +01:00
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
2023-06-16 09:27:21 +02:00
inputs.nixpkgs-stable.url = "github:NixOS/nixpkgs/release-23.05";
2022-05-13 23:24:44 +02:00
nixConfig.extra-substituters = ["https://cache.garnix.io"];
nixConfig.extra-trusted-public-keys = ["cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="];
outputs = {
self,
nixpkgs,
2022-12-04 10:13:42 +01:00
nixpkgs-stable
2022-05-13 23:24:44 +02:00
}: let
2020-07-06 08:44:11 +01:00
systems = [
"x86_64-linux"
"x86_64-darwin"
"aarch64-darwin"
2020-07-06 08:44:11 +01:00
"aarch64-linux"
];
forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f system);
2022-05-25 08:40:52 +02:00
suffix-version = version: attrs: nixpkgs.lib.mapAttrs' (name: value: nixpkgs.lib.nameValuePair (name + version) value) attrs;
2023-06-16 09:27:21 +02:00
suffix-stable = suffix-version "-23_05";
2020-07-06 08:44:11 +01:00
in {
overlays.default = final: prev: let
2022-05-13 23:24:44 +02:00
localPkgs = import ./default.nix {pkgs = final;};
in {
inherit (localPkgs) sops-install-secrets sops-init-gpg-key sops-pgp-hook sops-import-keys-hook sops-ssh-to-age;
# backward compatibility
inherit (prev) ssh-to-pgp;
};
nixosModules = {
sops = import ./modules/sops;
default = self.nixosModules.sops;
};
2022-08-04 09:58:45 +02:00
homeManagerModules.sops = import ./modules/home-manager/sops.nix;
homeManagerModule = self.homeManagerModules.sops;
2022-05-13 23:24:44 +02:00
packages = forAllSystems (system:
import ./default.nix {
pkgs = import nixpkgs {inherit system;};
});
2022-05-15 08:09:09 +02:00
checks = nixpkgs.lib.genAttrs ["x86_64-linux" "aarch64-linux"]
(system: let
tests = self.packages.${system}.sops-install-secrets.tests;
2022-12-04 10:13:42 +01:00
packages-stable = import ./default.nix {
pkgs = import nixpkgs-stable {inherit system;};
2022-05-25 08:40:52 +02:00
};
2022-12-04 10:13:42 +01:00
tests-stable = packages-stable.sops-install-secrets.tests;
2022-05-25 08:40:52 +02:00
in tests //
2022-12-04 10:13:42 +01:00
(suffix-stable tests-stable) //
(suffix-stable packages-stable));
2022-05-15 08:09:09 +02:00
devShells = forAllSystems (system: let
pkgs = nixpkgs.legacyPackages.${system};
in {
unit-tests = pkgs.callPackage ./pkgs/unit-tests.nix {};
default = pkgs.callPackage ./shell.nix {};
2022-05-13 23:24:44 +02:00
});
2020-07-06 08:44:11 +01:00
};
}